[Bug] Inbox: heading-anchor links in Markdown attachments do not scroll to existing targets
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 68/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- markdown, typescript
- Domain
- frontend
Research direction
Start by locating the Inbox Markdown attachment preview and compare how it handles same-document heading links with standalone Annotate, where the supplied fixture scrolls correctly. Reproduce with the synthetic guide.md and click “Jump to target”; done when the existing target heading scrolls into view inside the attachment’s scroll container.
Written by the indexing model from the issue text.
Description
What happened?
Clicking a same-document heading link in the Inbox Markdown attachment preview does not scroll, even though its target heading and DOM id exist. The same fixture scrolls in standalone Annotate.
Reproduction
In an empty directory, run this Python fixture generator (all content is synthetic):
from pathlib import Path
import base64
Path('assets').mkdir(exist_ok=True)
Path('assets/sample.png').write_bytes(base64.b64decode('iVBORw0KGgoAAAANSUhEUgAAAEAAAAAgCAIAAAAt/+nTAAAATklEQVR4nO3PUQkAIBTAwBfHYMY2jCH8OITBAtxm7fN1wwUNaEEDWtCAFjSgBQ1oQQNa0IAWNKAFDWhBA1rQgBY0oAUNaEEDWtCAFjx2AWvKQKaxk0G4AAAAAElFTkSuQmCC'))
Path('guide.md').write_text(
'# Attachment preview repro\n\n'
'[Jump to target](#target-section)\n\n'
'[Open linked document](peer.md)\n\n'
'\n\n'
+ ''.join(f'Public filler paragraph {i+1}. This is sample text to put the destination below the fold.\n\n' for i in range(65))
+ '## Target section\n\nTarget marker.\n'
)
Path('peer.md').write_text('# Linked document\n\nPublic sample destination.\n')
-
Start
plannotator inbox --no-open. -
Use the Inbox MCP
send_messagetool withproject_pathset to this directory andattachmentscontaining the absolute path toguide.md. -
Open that thread and click the
guide.mdattachment. -
Click Jump to target near the top of the attachment.
-
Compare with
plannotator annotate guide.md(dismiss first-run announcements if shown).
Actual vs expected
Measured at a 1400×900 viewport, with exactly one id="target-section" in each document:
| Surface | Target heading top before click | Target heading top after click |
|---|---|---|
| Standalone Annotate | 3017px | 740px — visible inside the viewport |
| Inbox Markdown attachment | 2990px | 2990px — still below the viewport |
Expected: clicking the heading link brings the existing target into view within the attachment's scroll container. The standalone destination is near the document end, so it need not align to the top edge.
This concerns clicking a local #target-section link, not Back-button scroll restoration in #2082 / #2128.
Environment
- Plannotator: official 0.28.32, Darwin ARM64 binary.
- OS: macOS 27.0.1, Apple silicon.
- Browser: fresh Chromium 155.0.8059.12, headless, 1400×900 viewport.
- Agent: standalone CLI/MCP reproduction; original workflow uses Pi.
- Surface: Inbox web UI → Markdown attachment preview.
- Isolated temporary HOME/data directory; no existing browser profile or private document needed.
- Dominant language
- TypeScript
- Stars
- 8.7k
- Forks
- 649
- Avg merge
- 6h
- Merged PRs (30d)
- 514
Getting set up
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from backnotprop/plannotator
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
backnotprop/plannotator#2290 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
backnotprop/plannotator#2243 · 1 comment · 1 reaction ·
Maintainers usually reply within 1 day
-
submit_plan with missing edits aborts with "Tool execution interrupted" instead of returning a recoverable errorPossibly taken @utpalsinghdev claimed this today. Openbug triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
backnotprop/plannotator#2227 ·
Maintainers usually reply within 1 day
-
Annotate documentation omits per-file version history and privacy controlsMay be free again A pull request for this issue was closed without being merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
backnotprop/plannotator#1086 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
backnotprop/plannotator#2295 ·
Maintainers usually reply within 1 day
All issues in backnotprop/plannotator
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
scaleway/ultraviolet#7089 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
tencent-connect/dsh-qqbot#81 ·
Maintainers usually reply within 1 day
-
[Bug]: Pen taps on sidebar rows start a drag and lose their clickPossibly taken @makhnatkin claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
clangd/vscode-clangd#1009 ·