Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[Bug] Inbox: relative .md links in attachments navigate to the server root instead of opening the document

オープン
#2,230 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
68/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
markdown, typescript
領域
frontend, web-dev

調査の方向性

Trace how the Inbox Markdown attachment viewer handles links, then compare it with standalone Annotate’s sibling document handling. Reproduce with the provided guide.md and peer.md fixture; check that clicking “Open linked document” opens the sibling within the allowed document scope and shows its heading in the viewer.

索引モデルが issue の本文から書いたものです。

説明

What happened?

A relative link to an existing sibling Markdown file is resolved against the Inbox web origin, not the attached document's directory. It leaves the thread URL without displaying the linked document. Standalone Annotate opens the same sibling document inline.

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'
    '![Sample image](assets/sample.png)\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')
  1. Start plannotator inbox --no-open.

  2. Use the Inbox MCP send_message tool with project_path set to this directory and attachments containing the absolute path to guide.md.

  3. Open that thread and click the guide.md attachment.

  4. Click Open linked document ([Open linked document](peer.md)). Both files already exist in the same directory.

  5. Compare with plannotator annotate guide.md (dismiss first-run announcements if shown).

Actual vs expected
Surface Result after clicking peer.md Linked document heading visible
Standalone Annotate Opens the sibling document inline; URL path remains / Yes: “Linked document”
Inbox Markdown attachment Browser navigates to origin-root /peer.md No

Expected: resolve the sibling relative to guide.md, within the allowed document/project scope, and open it in the attachment/document viewer rather than treating it as a root-level web route. Merely rendering the browser's root-relative URL does not open the existing local document.

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.
主要言語
TypeScript
スター
8.7k
フォーク
649
平均マージ
6時間
マージ済み PR(30日)
514

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

backnotprop/plannotator のほかの issue

backnotprop/plannotator の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。