fix(ai): render record links inside markdown headings in AI chat (#20074)
## Summary Adds `h1`–`h6` component overrides to `LazyMarkdownRenderer` so that `[[record:...]]` references placed inside markdown headings in the AI chat are parsed by `processChildrenForRecordLinks` and rendered as clickable `RecordLink` chips, matching the behavior already in place for `p`, `li`, `td`, `th`, and `a`. Fixes #20072 ## Test plan - [ ] In AI chat, ask a question whose answer places a record reference inside a markdown heading (e.g. `## Found [[person:uuid:John Doe]]`) and confirm a clickable `RecordLink` chip renders instead of the raw `[[...]]` text. - [ ] Verify heading styling (sizes, weights, margins) is unchanged. Generated with [Claude Code](https://claude.ai/code) --------- Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com> Co-authored-by: nitin <ehconitin@users.noreply.github.com>
This commit is contained in:
@@ -121,6 +121,24 @@ const MarkdownRenderer = lazy(async () => {
|
||||
li: ({ children }) => (
|
||||
<li>{processChildrenForRecordLinks(children)}</li>
|
||||
),
|
||||
h1: ({ children }) => (
|
||||
<h1>{processChildrenForRecordLinks(children)}</h1>
|
||||
),
|
||||
h2: ({ children }) => (
|
||||
<h2>{processChildrenForRecordLinks(children)}</h2>
|
||||
),
|
||||
h3: ({ children }) => (
|
||||
<h3>{processChildrenForRecordLinks(children)}</h3>
|
||||
),
|
||||
h4: ({ children }) => (
|
||||
<h4>{processChildrenForRecordLinks(children)}</h4>
|
||||
),
|
||||
h5: ({ children }) => (
|
||||
<h5>{processChildrenForRecordLinks(children)}</h5>
|
||||
),
|
||||
h6: ({ children }) => (
|
||||
<h6>{processChildrenForRecordLinks(children)}</h6>
|
||||
),
|
||||
a: ({ children, href, title, node: _node }) => (
|
||||
<a
|
||||
className="markdown-link"
|
||||
|
||||
+1
@@ -59,6 +59,7 @@ Record References - IMPORTANT:
|
||||
- Tool responses include a "recordReferences" array with clickable links
|
||||
- ONLY use record references that are returned by tools - NEVER make up IDs
|
||||
- Copy the exact format from the tool response: [[record:objectName:recordId:displayName]]
|
||||
- Use record references only in paragraphs, lists, or markdown tables (\`| ... |\`); never in headings, code, links, or raw HTML
|
||||
- The recordId MUST be a real UUID (like "abc12345-1234-5678-abcd-123456789012")
|
||||
- DO NOT create record references before calling the tool
|
||||
- DO NOT use placeholder IDs like "rec-snowflake" or "rec-person-1"
|
||||
|
||||
Reference in New Issue
Block a user