## 低優先トラッキング 1. **id 衝突**: feedback id が `pl_${Date.now()}` で同ミリ秒衝突(複数レビュアー/タブ)。marker Map のキー衝突で孤児ノードも発生。`crypto.randomUUID()` 併用へ。receiver の screenshot ファイル名(`id-Date.now()`)も同根 2. **destroy() の後始末漏れ**: `pl-feedback-active` class(crosshair カーソル)と注入 `<style>` が残る 3. **Slack direct の false success**: no-cors の opaque response を `ok: true` 表示している。「unknown」表示が誠実。あわせて `slackEscape` を truncate 後に実行しているため、エスケープ膨張で Slack の 3000 字制限を超え得る(escape → truncate の順に) 4. **Safari 15**: `form.requestSubmit()` 未対応で Cmd+Enter が無反応(fallback: submit ボタン click) 5. **init() 2 回呼びで UI desync**(mode ON のまま再 init するとボタン表示と状態がずれる)/ `<head>` からの init で `document.body` 不在クラッシュ 6. **screenshots ディレクトリとメモリ上の feedback が無限蓄積**(feedback 削除 endpoint がない) 7. **テストの穴**: 413 上限・inbox HTML エスケープ・壊れた store 復旧(#47/#48 で一部カバー予定) まとめて 1 PR にせず、関連修正のついでに個別に潰していく想定。
低優先トラッキング
pl_${Date.now()}で同ミリ秒衝突(複数レビュアー/タブ)。marker Map のキー衝突で孤児ノードも発生。crypto.randomUUID()併用へ。receiver の screenshot ファイル名(id-Date.now())も同根pl-feedback-activeclass(crosshair カーソル)と注入<style>が残るok: true表示している。「unknown」表示が誠実。あわせてslackEscapeを truncate 後に実行しているため、エスケープ膨張で Slack の 3000 字制限を超え得る(escape → truncate の順に)form.requestSubmit()未対応で Cmd+Enter が無反応(fallback: submit ボタン click)<head>からの init でdocument.body不在クラッシュまとめて 1 PR にせず、関連修正のついでに個別に潰していく想定。