edit | blame | history | raw

2026-06-29 M4C-FLSR-01

目标

完成 m4c 侧 Frame link consumer guard / sanitized Frame Context Package:mindraw://localhost?documentId=...&elementId=<frameId> 必须成为 frame-only 读取边界,不能把整份 drawing.excalidraw 原文或外部 Frame 文本交给 Codex / agent。

已完成

  • m4c-readonly-poc.mjs
  • 输出 readScope="frame-only"
  • 输出 scope.includedElementIdsscope.excludedOutsideCountscope.excludedOutsideTextCountscope.outsideTextIncluded=falsescope.fallbackToDocumentRead=false
  • 只把目标 Frame / Frame 内元素放入 promptable elements
  • Frame 外或边界不确定元素只进入不带文本的 diagnostics.excludedElements
  • 缺少 elementId 时返回 FRAME_SCOPE_UNAVAILABLE
  • generate-round01-fixtures.mjs
  • 新增 frame-scope-reverse.mindraw 反向 fixture。
  • 补充 Round01 契约草案、过程 QA、正式 QA 清单、CODEGRAPH.md、工具 README、项目管理 README、m4c INDEX.md
  • 刷新 codebase-memory 共享图谱。
  • 回写主项目统一台账 P-20260629-frame-link-scoped-read-contract

Mindraw 基线

  • MD-FLSR-01 已完成。
  • Mindraw commit:c1053f9963b5f174b1db1eb4d8def52c67e8adb1
  • Mindraw evidence:/Users/ar/Projects/ExcalidrawX/02-P/qa/mindraw-flsr-frame-scoped-read-check.md.json

验证

  • node --check /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/03-O/C3.tools/scripts/m4c-readonly-poc.mjs:PASS。
  • node --check /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/03-O/C3.tools/scripts/generate-round01-fixtures.mjs:PASS。
  • node --check /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/03-O/C3.tools/scripts/m4c-mcp-alpha.mjs:PASS。
  • node /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/03-O/C3.tools/scripts/m4c-readonly-poc.mjs smoke --report /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/02-P/FrameLinkScopedRead/qa/m4c-flsr-01-readonly-smoke.json:PASS。
  • direct context / MCP wrapper context 反向检查:目标 A 存在,外部 B 不存在。
  • missing elementId:返回 FRAME_SCOPE_UNAVAILABLE
  • git -C /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/03-O diff --check:PASS。
  • 敏感信息扫描:PASS。
  • codebase-memory-mcp cli index_repository:PASS。

Git

  • d78d910ef40290e7197febb3bc9c77d99064276bfeat: enforce frame link scoped read guard
  • 8452d9e6b9b8ceae8bf6c31e0ffa146fa65ba444docs: record FLSR Mindraw baseline

下一步

PM 收敛 PM-FLSR-GATE