edit | blame | history | raw

2026-06-29 FLSR m4c 收口

用户目标

Coder@m4c 身份领取并完成统一台账 P-20260629-frame-link-scoped-read-contract 下的 M4C-FLSR-01,确保 m4c 处理 mindraw://localhost?documentId=...&elementId=<frameId> 时只给 Codex / agent 暴露目标 Frame 内上下文,不把同一 .mindraw 的其他 Frame 文本、草稿或备注交给 agent。

已完成事项

  • m4c 侧 get-frame-context 输出已补强为 readScope="frame-only" sanitized context。
  • 缺少目标 elementId 时返回 FRAME_SCOPE_UNAVAILABLE,不 fallback 到整文档读取。
  • 新增反向 fixture frame-scope-reverse.mindraw:目标 Frame A 文本可进入 context,外部 Frame B 等价 sentinel 不进入 context、MCP wrapper context、smoke report 或 summary。
  • 同步 m4c 03-O 正式 QA 清单、CODEGRAPH.md、工具 README、项目管理 README 和 codebase-memory 图谱。
  • 回写统一台账:M4C-FLSR-01 标记完成,状态更新为等待 PM-FLSR-GATE

关键决策

  • m4c 直接包解析路径也必须先过滤目标 Frame;不能把 drawing.excalidraw 整份原文作为 promptable context。
  • Frame 外元素只允许以低语义 diagnostics 进入审计,不带文本内容。
  • 本轮不做 H8 release、正式 MCP server、direct package write 或 .assets 权威写入。

文件变更

  • /Users/ar/Projects/ExcalidrawX/02-P/plan-progress.markdown
  • /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/03-O/C3.tools/scripts/m4c-readonly-poc.mjs
  • /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/03-O/C3.tools/scripts/generate-round01-fixtures.mjs
  • /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/03-O/C1.source/CODEGRAPH.md
  • /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/03-O/C3.tools/README.md
  • /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/03-O/K2.项目管理/联调QA/2026-06-29-M4C-FLSR-01FrameLinkScopedRead.md
  • /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/02-P/FrameLinkScopedRead/qa/m4c-flsr-01-frame-link-scoped-read-check.md
  • /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/02-P/FrameLinkScopedRead/qa/m4c-flsr-01-readonly-smoke.json

验证

  • node --check 三个 m4c 脚本:PASS。
  • m4c-readonly-poc.mjs smoke --report .../m4c-flsr-01-readonly-smoke.json:PASS。
  • direct context / MCP wrapper context 反向检查:目标 A 存在,外部 B 不存在。
  • missing elementId:返回 FRAME_SCOPE_UNAVAILABLE
  • git -C p.mindrawforcodex/03-O diff --check:PASS。
  • 敏感信息扫描:PASS。
  • codebase-memory-mcp cli index_repository:PASS。

Git

  • m4c 03-O commit:d78d910ef40290e7197febb3bc9c77d99064276b
  • m4c 03-O commit:8452d9e6b9b8ceae8bf6c31e0ffa146fa65ba444

未决问题

  • PM-FLSR-GATE 由 PM 合并 Mindraw 与 m4c 两侧证据后收敛。