Skip to content

fix: add noopener to external chat markdown links#1315

Merged
juliusmarminge merged 3 commits intopingdotgg:mainfrom
sabraman:fix/chat-markdown-noopener
Mar 28, 2026
Merged

fix: add noopener to external chat markdown links#1315
juliusmarminge merged 3 commits intopingdotgg:mainfrom
sabraman:fix/chat-markdown-noopener

Conversation

@sabraman
Copy link
Copy Markdown
Contributor

@sabraman sabraman commented Mar 22, 2026

Summary

  • add noopener alongside noreferrer for external links rendered by ChatMarkdown

Why

Markdown links that do not resolve to local file targets open in a new tab from ChatMarkdown, but they were the only new-tab links in the repo still using rel="noreferrer" alone. The rest of the app and marketing site consistently use rel="noopener noreferrer" for that pattern.

Verification

  • bun fmt
  • bun lint
  • bun typecheck

Note

Add noopener to external links in chat markdown renderer

Updates the a renderer in ChatMarkdown.tsx to include rel="noopener noreferrer" (previously only noreferrer) on external links opened in a new tab. This prevents the new page from accessing window.opener on the source tab.

Macroscope summarized b0676a2.


Note

Low Risk
Low risk: a one-line security hardening change to anchor rel attributes for external links; no functional logic changes beyond link metadata.

Overview
External links rendered by ChatMarkdown that open in a new tab now use rel="noopener noreferrer" instead of rel="noreferrer", preventing the opened page from accessing window.opener.

Written by Cursor Bugbot for commit d5891f5. This will update automatically on new commits. Configure here.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 22, 2026

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 8e52af05-ca36-4656-a1a8-31afe5bcbe6e

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ 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 and usage tips.

@github-actions github-actions bot added vouch:unvouched PR author is not yet trusted in the VOUCHED list. size:XS 0-9 changed lines (additions + deletions). labels Mar 22, 2026
@juliusmarminge juliusmarminge merged commit 73b2f25 into pingdotgg:main Mar 28, 2026
10 checks passed
@sabraman sabraman deleted the fix/chat-markdown-noopener branch March 28, 2026 21:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants