edit | blame | history | raw

2026-06-29 Frame 链接读边界

用户目标

用户发现 AI agent 阅读 mindraw://localhost?documentId=mdoc_18bc9f3d08cd8958_1626b&elementId=tZ7mNn3V9Bl6mCd6gVOAw 时,读取了目标 0629-pro-ui Frame 之外另一个 Frame 的内容。用户要求先讨论清楚原因、是否是问题以及未来约定;随后同意立项并安排 Mindraw / m4c 两侧落实。

已完成事项

  • PM 只读复核 Taglauncher 线程 019f0f52-679c-7061-b464-c74672a5ed35 的证据,确认 agent 曾通过 Mindraw 本机 registry 定位整个 .mindraw 包并读取 drawing.excalidraw
  • 确认用户指出的“Mac 自带应用容器纵向特别细长”来自另一个 Frame,是 Frame 外内容误读证据。
  • 复核现有契约:
  • p.mindrawforcodex/02-P/Round01-ContractBaseline/02-deeplink-contract.md
  • p.mindrawforcodex/02-P/Round01-ContractBaseline/03-frame-context-package-draft.md
  • src/lib/mindrawAppReadApi.ts
  • 在统一台账新增 P-20260629-frame-link-scoped-read-contract
  • 同步更新跨项目联调咬合图,新增黄色进行中节点 FLSR
  • 已直接派发:
  • MD-FLSR-01coder2@mindraw 线程 019f0cb7-61d6-7b81-8f41-b3544b62e737
  • M4C-FLSR-01Coder@m4c 线程 019efd0e-ae6e-7331-9a51-82906bb2c5cd

关键决策

  • Frame link 在 AI 读取场景中必须默认表示 frame-only,不是 document-level。
  • 如果无法获得 frame-scoped context,agent / m4c 必须停止并报 blocker,不得静默读取整个 .mindraw 包。
  • Frame 外元素不得把文本、图片语义、prompt、说明内容进入 agent promptable context;如需诊断,只能保存低语义 metadata。
  • 本事项不是 H8 formal release 延伸,不重打 DMG,不做真实 AI provider 或正式 MCP server。

文件变更

  • 02-P/plan-progress.markdown
  • 更新最近日期为 2026-06-29。
  • 新增 P-20260629-frame-link-scoped-read-contract
  • 拆出 MD-FLSR-01M4C-FLSR-01PM-FLSR-GATE
  • 记录立项与派发 Progress Log。
  • 03-O/K2.项目管理/跨项目联调/Mindraw-m4c-跨项目握手联调咬合图.drawio
  • 更新 modified 日期。
  • subtitle 增加新计划项。
  • 新增 FLSR 节点与 frame context guard 连线。

验证

  • git diff --check -- 02-P/plan-progress.markdown 03-O/K2.项目管理/跨项目联调/Mindraw-m4c-跨项目握手联调咬合图.drawio 通过。
  • xmllint --noout 03-O/K2.项目管理/跨项目联调/Mindraw-m4c-跨项目握手联调咬合图.drawio 通过。

未决问题

  • MD-FLSR-01 尚未完成,Mindraw 侧是否需要代码 / DTO / tests 改动待 coder 复核。
  • M4C-FLSR-01 尚未完成,m4c 侧 consumer guard / sanitized package 方案待 coder 复核。
  • PM-FLSR-GATE 等双边证据齐备后再收敛 Go / No-Go。

后续建议

  • 下一次 PM 检查时先看两边最终回复是否包含 PM_NOTIFY_READY: yes/no
  • Gate 反向用例必须证明外部 Frame 文本不会进入 prompt / report / summary。

后续进展

  • coder2@mindraw 已回报 MD-FLSR-01 = Complete / PASS_FOR_MD_FLSR_01_FRAME_SCOPED_READ
  • Mindraw commit:c1053f9963b5f174b1db1eb4d8def52c67e8adb1
  • PM 已核对台账、QA、INDEX.mdCODEGRAPH.mdCHANGELOG.md 均有记录。
  • PM 已将 Mindraw 新基线同步给 Coder@m4c,要求 M4C-FLSR-01 直接基于 readScope="frame-only"outsideTextIncluded=false、scope audit 和 TARGET_NOT_FRAME / TARGET_NOT_FOUND 收口 consumer guard。
  • 当前下一步:等待 m4c 完成 M4C-FLSR-01,再由 PM 收敛 PM-FLSR-GATE