Skip to content

fix: resolve broken TOC sidebar links for headings containing Markdown links#5530

Open
hasithasandunlakshan wants to merge 10 commits into
asyncapi:masterfrom
hasithasandunlakshan:fix/scrolling-issue-in-right-sidebar
Open

fix: resolve broken TOC sidebar links for headings containing Markdown links#5530
hasithasandunlakshan wants to merge 10 commits into
asyncapi:masterfrom
hasithasandunlakshan:fix/scrolling-issue-in-right-sidebar

Conversation

@hasithasandunlakshan

@hasithasandunlakshan hasithasandunlakshan commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

Description

  • Fixed the right-side “On this page” sidebar links for docs headings that contain Markdown links.
  • Normalized TOC content before generating fallback heading slugs, so sidebar anchors now match the rendered heading IDs.
  • This fixes the broken sidebar navigation on the AsyncAPI Mentorship 2024 Project Ideas page.

Related issue(s)

#5465 (comment)

Issue 17

  • Before
Screen.Recording.2026-06-02.at.22.30.43.mov
  • After
Screen.Recording.2026-06-01.at.17.05.34.mov

Reprodcue

Summary by CodeRabbit

  • Chores

    • Improved table of contents generation with enhanced heading normalization during the build process, ensuring more consistent and reliable documentation formatting.
  • Tests

    • Expanded test coverage for table of contents functionality to validate heading normalization and slug generation logic.

@netlify

netlify Bot commented Jun 1, 2026

Copy link
Copy Markdown

Deploy Preview for asyncapi-website ready!

Built without sensitive environment variables

Name Link
🔨 Latest commit d947bc5
🔍 Latest deploy log https://app.netlify.com/projects/asyncapi-website/deploys/6a3b09031fb0500008a1740b
😎 Deploy Preview https://deploy-preview-5530--asyncapi-website.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@coderabbitai

coderabbitai Bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

This PR introduces heading-content normalization utilities and slug generation refinements for table-of-contents processing. A new normalizeTocContent function cleans markdown and HTML artifacts from headings, slugifyToC is updated to respect explicit heading IDs when present, and generated TOC entries are normalized during metadata extraction. Comprehensive tests validate slug generation and content normalization across multiple input patterns.

Changes

TOC Heading Normalization and Slug Generation

Layer / File(s) Summary
Heading normalization utilities
scripts/build-post-list.ts
Core pipeline stripping trailing {#...} IDs, replacing markdown link/image URLs with labels, removing inline HTML tags, and exporting normalizeTocContent function.
slugifyToC fallback logic
scripts/build-post-list.ts
Updated slug generation to prefer extracted explicit-ID slugs; returns empty string when ID marker exists but extraction is empty; falls back to heading-text slug only when no marker is detected.
TOC metadata normalization
scripts/build-post-list.ts
Applies normalizeTocContent to each markdown-toc item's content field during post metadata extraction.
Tests for normalization and slug generation
tests/build-post-list.test.ts
Extended slugifyToC test cases for raw heading text and markdown links; new parameterized suite validating content normalization: ID stripping, markdown/HTML removal, incomplete-markup preservation, and reference-link handling.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • asyncapi/website#5480: Adjusts TOC slug/id generation and normalizes markdown-toc item content, directly affecting slug/slugWithATag values consumed by TOC component.

Suggested labels

ready-to-merge

Suggested reviewers

  • derberg
  • akshatnema
  • sambhavgupta0705
  • anshgoyalevil
  • Mayaleeeee
  • asyncapi-bot-eve
  • princerajpoot20

Poem

🐰 A heading once tangled in markdown's embrace,
Now cleaned up and slugified into place,
With IDs extracted and HTML swept clean,
The TOC's more lovely than ever we've seen!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: normalizing TOC content for headings with Markdown links to fix broken sidebar navigation.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@hasithasandunlakshan hasithasandunlakshan changed the title fix: Fixed the right-side “On this page” fix: resolve broken TOC sidebar links for headings containing Markdown links Jun 1, 2026
@asyncapi-bot

asyncapi-bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

⚡️ Lighthouse report for the changes in this PR:

Category Score
🔴 Performance 43
🟢 Accessibility 98
🟢 Best practices 92
🟢 SEO 100
🔴 PWA 33

Lighthouse ran on https://deploy-preview-5530--asyncapi-website.netlify.app/

@codecov

codecov Bot commented Jun 1, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (19d9bfe) to head (d947bc5).
⚠️ Report is 13 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff            @@
##            master     #5530   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           23        23           
  Lines          931       976   +45     
  Branches       180       192   +12     
=========================================
+ Hits           931       976   +45     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
components/TOC.tsx (1)

116-127: 🛠️ Refactor suggestion | 🟠 Major | ⚡ Quick win

Redundant character removal due to layered processing.

Line 118's character removal .replace(/[<>?!:'."\/=@#$%^&*()[]{}+,;]/gi, '')` creates inconsistency:

  • When getSlugContent normalizes content (has markdown links): it already applies /[^\w\s-]/g which removes most of these characters → line 118 is redundant
  • When getSlugContent doesn't normalize (no links): line 118 removes delimiters like <> but doesn't strip the HTML tag names → insufficient normalization

This dual-layer processing pattern suggests the code handles two cases but does so inconsistently. Fixing the asymmetric behavior in getSlugContent (previous comment) would make this processing more predictable.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@components/TOC.tsx` around lines 116 - 127, The slug creation in slugWithATag
is compensating for inconsistent behavior in getSlugContent: update
getSlugContent to always perform full normalization (strip HTML tags, remove all
non-word/space/hyphen characters using /[^\w\s-]/g, collapse whitespace to
single hyphens, and toLowerCase) so it produces a canonical slug for both linked
and plain content, then remove the redundant character-removal
.replace(/[<>?!:`'."\\/=@#$%^&*()[\]{}+,;]/gi, '') usage inside slugWithATag
(leaving only the whitespace-to-hyphen and seen suffix logic) to avoid asymmetry
and duplication between getSlugContent and slugWithATag.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In `@components/TOC.tsx`:
- Around line 116-127: The slug creation in slugWithATag is compensating for
inconsistent behavior in getSlugContent: update getSlugContent to always perform
full normalization (strip HTML tags, remove all non-word/space/hyphen characters
using /[^\w\s-]/g, collapse whitespace to single hyphens, and toLowerCase) so it
produces a canonical slug for both linked and plain content, then remove the
redundant character-removal .replace(/[<>?!:`'."\\/=@#$%^&*()[\]{}+,;]/gi, '')
usage inside slugWithATag (leaving only the whitespace-to-hyphen and seen suffix
logic) to avoid asymmetry and duplication between getSlugContent and
slugWithATag.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 70a8ca0d-e872-4c59-a6fc-e9d8e66dfbaa

📥 Commits

Reviewing files that changed from the base of the PR and between 0d06352 and ac8956a.

📒 Files selected for processing (1)
  • components/TOC.tsx

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
components/TOC.tsx (1)

24-24: ⚡ Quick win

Simplify redundant character class in trailing heading-ID regex.

Line 24 can be simplified: \w already covers digits and _, so [\w\d\-_] is redundant and harder to read.

Proposed cleanup
-    .replace(/\s?\{#[\w\d\-_]+\}$/, '')
+    .replace(/\s?\{#[\w-]+\}$/, '')
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@components/TOC.tsx` at line 24, The trailing heading-ID regex in the replace
call is overly verbose; update the pattern used in the .replace call (the
expression that currently reads .replace(/\s?\{#[\w\d\-_]+\}$/, '')) to use a
simplified character class like [-\w] (e.g., /\s?\{#[-\w]+\}$/) so it still
matches digits, letters, and underscores plus the hyphen but is clearer and less
redundant.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@components/TOC.tsx`:
- Line 24: The trailing heading-ID regex in the replace call is overly verbose;
update the pattern used in the .replace call (the expression that currently
reads .replace(/\s?\{#[\w\d\-_]+\}$/, '')) to use a simplified character class
like [-\w] (e.g., /\s?\{#[-\w]+\}$/) so it still matches digits, letters, and
underscores plus the hyphen but is clearer and less redundant.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 0fa8770a-f753-47b3-b1a0-08bf7ade6118

📥 Commits

Reviewing files that changed from the base of the PR and between ac8956a and 3b24af8.

📒 Files selected for processing (1)
  • components/TOC.tsx

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
scripts/build-post-list.ts (1)

52-84: 💤 Low value

Cognitive complexity is acceptable for this parser.

SonarCloud flags this function's cognitive complexity (18 vs. 15 allowed). The manual character-by-character parsing is complex but correct and handles edge cases (incomplete patterns, images vs. links) appropriately. Refactoring to reduce complexity would require significant restructuring for minimal benefit, as the function logic is clear and self-contained.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@scripts/build-post-list.ts` around lines 52 - 84, SonarCloud flags
stripMarkdownLinks for high cognitive complexity; replace the manual
character-by-character parser with a simple regex-based approach to reduce
complexity: in the stripMarkdownLinks function, first run a replace for image
syntax (match /!\[([^\]]*)\]\((?:[^)]*)\)/) and substitute with group 1, then
run a replace for regular links (match /\[([^\]]*)\]\((?:[^)]*)\)/) and
substitute with group 1, and return the resulting string; keep the function name
stripMarkdownLinks and ensure the regexes tolerate empty alt/text or missing URL
characters to preserve behavior for incomplete patterns.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@scripts/build-post-list.ts`:
- Around line 52-84: SonarCloud flags stripMarkdownLinks for high cognitive
complexity; replace the manual character-by-character parser with a simple
regex-based approach to reduce complexity: in the stripMarkdownLinks function,
first run a replace for image syntax (match /!\[([^\]]*)\]\((?:[^)]*)\)/) and
substitute with group 1, then run a replace for regular links (match
/\[([^\]]*)\]\((?:[^)]*)\)/) and substitute with group 1, and return the
resulting string; keep the function name stripMarkdownLinks and ensure the
regexes tolerate empty alt/text or missing URL characters to preserve behavior
for incomplete patterns.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: c0cf5b48-3522-45dc-a878-de5b7c07aead

📥 Commits

Reviewing files that changed from the base of the PR and between 3b24af8 and 9d1f7bf.

📒 Files selected for processing (3)
  • components/TOC.tsx
  • scripts/build-post-list.ts
  • tests/build-post-list.test.ts

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
scripts/build-post-list.ts (1)

90-100: 💤 Low value

Consider flipping the negated condition for readability.

SonarCloud flags the if (!markdownLink) as an unexpected negated condition. Inverting the check puts the "action" case first, which is a common idiom.

♻️ Proposed refactor
   while (index < content.length) {
     const markdownLink = getMarkdownLinkAt(content, index);

-    if (!markdownLink) {
-      result += content[index];
-      index += 1;
-    } else {
+    if (markdownLink) {
       result += markdownLink.label;
       index = markdownLink.nextIndex;
+    } else {
+      result += content[index];
+      index += 1;
     }
   }
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@scripts/build-post-list.ts` around lines 90 - 100, The loop currently checks
a negated condition if (!markdownLink) making the fallback branch first; invert
the condition to check if (markdownLink) first so the primary action (appending
markdownLink.label and advancing index to markdownLink.nextIndex) is handled in
the if branch, and the fallback (appending content[index] and incrementing index
by 1) goes in the else branch; update the block around getMarkdownLinkAt,
markdownLink, result, index, and content accordingly for clarity.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@scripts/build-post-list.ts`:
- Around line 90-100: The loop currently checks a negated condition if
(!markdownLink) making the fallback branch first; invert the condition to check
if (markdownLink) first so the primary action (appending markdownLink.label and
advancing index to markdownLink.nextIndex) is handled in the if branch, and the
fallback (appending content[index] and incrementing index by 1) goes in the else
branch; update the block around getMarkdownLinkAt, markdownLink, result, index,
and content accordingly for clarity.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 98c0aadf-474a-42a3-98d9-61b2c04d074d

📥 Commits

Reviewing files that changed from the base of the PR and between 9d1f7bf and 7aaa6ec.

📒 Files selected for processing (1)
  • scripts/build-post-list.ts

@hasithasandunlakshan

Copy link
Copy Markdown
Contributor Author

@CodeRabbit give me a review.

@coderabbitai

coderabbitai Bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor
🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
echo "=== components/TOC.tsx ==="
cat components/TOC.tsx

echo ""
echo "=== scripts/build-post-list.ts ==="
cat scripts/build-post-list.ts

echo ""
echo "=== tests/build-post-list.test.ts (slugifyToC section) ==="
cat tests/build-post-list.test.ts

Length of output: 35129


🏁 Script executed:

#!/bin/bash
# Check the remark/rehype/markdown configuration for slug generation
rg -n "rehype-slug\|remark-slug\|github-slugger\|slugify" --type ts --type js --type json -g '!**/node_modules/**' -g '!**/.next/**' | head -60

echo "---"
# Check next.config.js/ts for remark plugins
fd "next.config" --type f | xargs cat 2>/dev/null

echo "---"
# Check for any MDX/remark configuration
fd "mdx\|remark\|rehype" --type f -g '*.{ts,js,mjs,cjs}' -g '!node_modules' | xargs cat 2>/dev/null | head -100

Length of output: 2135



@hasithasandunlakshan: Here is my review of PR #5530.


Summary

The approach is sound: moving TOC content normalization to build time (in build-post-list.ts) and adding a slugifyHeading fallback in slugifyToC is the right way to fix the broken sidebar links. The site uses remark-slug (which in turn uses github-slugger) together with remark-heading-id for {#id} syntax, so the new logic correctly mirrors both cases.


Issues Found

1. 🐛 Indentation inconsistency in stripMarkdownLinks

The if/else block inside the while loop has mismatched indentation — the body is at 2 spaces while the surrounding code uses 4 spaces:

// scripts/build-post-list.ts
while (index < content.length) {
    const markdownLink = getMarkdownLinkAt(content, index);

    if (markdownLink) {
  result += markdownLink.label;       // ← 2-space indent (wrong)
  index = markdownLink.nextIndex;
} else {
  result += content[index];           // ← 2-space indent (wrong)
  index += 1;
}
  }

Should be:

while (index < content.length) {
  const markdownLink = getMarkdownLinkAt(content, index);

  if (markdownLink) {
    result += markdownLink.label;
    index = markdownLink.nextIndex;
  } else {
    result += content[index];
    index += 1;
  }
}

2. ⚠️ Whitespace handling diverges from github-slugger

github-slugger (used by remark-slug) replaces each individual whitespace character separately:

// github-slugger
.replace(/[\s]/g, '-')    // single chars — "foo  bar" → "foo--bar"

slugifyHeading collapses sequences:

// slugifyHeading
.replaceAll(/\s+/g, '-')  // sequences — "foo  bar" → "foo-bar"

For a heading like ## Foo (double-space) Bar, the rendered ID would be foo--bar but the TOC slug would be foo-bar, causing a broken link. Consider aligning with the github-slugger behavior:

function slugifyHeading(content: string) {
  return normalizeTocContent(content)
    .toLowerCase()
    .trim()
    .replaceAll(/\s/g, '-')        // ← match github-slugger: single chars
    .replaceAll(/[^\w-]+/g, '');   // ← use + quantifier to match github-slugger
}

3. ⚠️ Reference-style links are not handled by getMarkdownLinkAt

getMarkdownLinkAt only handles inline links ([label](url)) and images (![alt](url)). Reference-style links like [label][ref] or [label][] are silently passed through unchanged. If a heading ever uses reference-style links, stripMarkdownLinks will leave the [label][ref] syntax in the slug source, producing an incorrect slug.

Consider adding a fallback for reference-style links, or at minimum adding a test to document the known limitation.


4. ⚠️ stripHtmlTags can drop non-tag content

For a heading like ## Foo < Bar > Baz, the implementation treats Bar as the "inside" of an HTML tag and removes it, leaving FooBaz. While this is unlikely in practice, it could silently mangle legitimate heading text. A simple guard (e.g., checking the tag content matches [a-zA-Z/!] at the start) would make it safer:

if (content[index] === '<') {
  const tagEnd = content.indexOf('>', index + 1);
  const tagContent = tagEnd !== -1 ? content.slice(index + 1, tagEnd) : '';
  // Only skip if it looks like an HTML tag
  if (tagEnd !== -1 && /^[a-zA-Z/!]/.test(tagContent)) {
    index = tagEnd + 1;
  } else {
    result += content[index];
    index += 1;
  }
}

5. ℹ️ Test expectation note — trailing hyphen is correct

The test for headings with markdown links:

it('generates slugs for headings with markdown links', () => {
  const input = '1) [Enhancing Developer Experience in CLI](https://github.com/asyncapi/cli/issues/1508) ✅';
  expect(slugifyToC(input)).toBe('1-enhancing-developer-experience-in-cli-');
});

The trailing - is intentional and correctgithub-slugger also does not trim trailing hyphens, so the actual rendered heading ID on the page would also have a trailing hyphen. ✓


6. 💡 Suggestion — add integration-level tests for normalizeTocContent

The helper functions (removeTrailingHeadingId, getMarkdownLinkAt, stripMarkdownLinks, stripHtmlTags, normalizeTocContent) are only tested indirectly through slugifyToC. Exporting and testing normalizeTocContent directly would make it easier to catch regressions in edge cases (e.g., images in headings ![alt](url), reference-style links, headings with both a link and a {#id} suffix).


Overall

The core fix is correct and addresses the root cause. The main actionable items are the indentation bug (#1) and aligning the whitespace handling with github-slugger (#2) to prevent potential future mismatches.

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@hasithasandunlakshan

Copy link
Copy Markdown
Contributor Author

@CodeRabbit give me a review.

@coderabbitai

coderabbitai Bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

@hasithasandunlakshan: I already posted a detailed review just above this comment — please scroll up to see the full analysis covering 6 issues (indentation inconsistency, whitespace handling vs github-slugger, reference-style links, stripHtmlTags false positives, the trailing-hyphen note, and a suggestion to add direct tests for normalizeTocContent).

If you've pushed new commits since then and want a fresh incremental review, I'll trigger one now:

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@hasithasandunlakshan

hasithasandunlakshan commented Jun 1, 2026

Copy link
Copy Markdown
Contributor Author

@hasithasandunlakshan: I already posted a detailed review just above this comment — please scroll up to see the full analysis covering 6 issues (indentation inconsistency, whitespace handling vs github-slugger, reference-style links, stripHtmlTags false positives, the trailing-hyphen note, and a suggestion to add direct tests for normalizeTocContent).

If you've pushed new commits since then and want a fresh incremental review, I'll trigger one now:

✅ Actions performed
Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@CodeRabbit I have fixed them.Take a look

@coderabbitai

coderabbitai Bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

@hasithasandunlakshan: Great, I'll trigger a fresh incremental review to verify all the fixes now!

(ノ◕ヮ◕)ノ*:・゚✧

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@princerajpoot20

Copy link
Copy Markdown
Member

@hasithasandunlakshan sorry..from your testing evidence, i did not get what's the issue and what's the fix that you have done. can you please try again explaining that

@hasithasandunlakshan

hasithasandunlakshan commented Jun 2, 2026

Copy link
Copy Markdown
Contributor Author

@princerajpoot20

Copy link
Copy Markdown
Member

@hasithasandunlakshan oh okay. got it.

Since these changes also affect the "On this page" section across all our docs, can you do a sanity check on the other docs as well to ensure everything is working as expected there? Please attach evidence of that as part of this effort.

This is to make sure we don't introduce any new regressions.

@hasithasandunlakshan hasithasandunlakshan force-pushed the fix/scrolling-issue-in-right-sidebar branch from 6a1463b to d947bc5 Compare June 23, 2026 22:30
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: To Be Triaged

Development

Successfully merging this pull request may close these issues.

3 participants