# 2026-06-27 MD-H5-06 Canonical Readiness ## 用户目标 从 `02-P/plan-progress.markdown` 的 `P-20260626-m4c-handshake-coordination` 领取 Mindraw 侧 `MD-H5-06`,为 H5 canonical 轻量联合复核准备 Mindraw live 运行态与证据。范围限定为 live readiness / capability / 安全副本 / read-context-lease 证据,不领取 `PM-*` 或 `H*`,不改 m4c `03-O`,不做 Phase 4 / H8 / 发布,不绕过 App 直接写包。 ## 已完成事项 - 重新读取并遵守全局 / 项目规则、`INDEX.md`、`CODEGRAPH.md` 和统一计划台账。 - 确认当前 Mindraw QA debug App live capability: - PID:`79278` - endpoint:`http://127.0.0.1:56546/rpc` - contract:`h5-md-h5-05-canonical-v1` - `documentLease=write` - `createAiResultFrame=write` - `arbitraryJsonPatch=false` - 准备并打开安全副本: - `packagePath=/private/tmp/mindraw-md-h5-06-canonical-recheck/MD-H5-06-canonical-copy.mindraw` - `documentId=mdoc_m4c_annotated_frame_20260626` - `sourceFrameId=frame_ai_annotation_001` - `workingRevision=sha256:2de64b846119125e31e5c2a4e6bd4829d2a8fc97391f12638c17a3009229c5fd` - 用外部 Node 进程完成 `/health`、`/capabilities`、JSON-RPC `mindraw.app.get_capabilities`、`get_open_document_state`、`get_live_frame_context`、lease acquire-release 与 unsupported arbitrary patch 检查,结论 PASS。 - 运行 doctor / 单元测试 / Rust transport 测试,全部通过。 - 回写统一台账,把 `MD-H5-06` 标记为完成,并记录下一步归属为 PM。 ## 文件变更 - 新增 `02-P/qa/mindraw-h5-canonical-recheck-readiness.md` - 新增 `02-P/qa/mindraw-h5-canonical-recheck-readiness.json` - 更新 `INDEX.md` - 更新 `CODEGRAPH.md` - 更新 `02-P/plan-progress.markdown` - 新增本会话记录 `.codex-sessionhistory/2026-06-27-MDH506就绪.md` ## 验证命令 - `node --input-type=module > 02-P/qa/mindraw-h5-canonical-recheck-readiness.json` - `npm run doctor:mindraw -- --app /Users/ar/Projects/ExcalidrawX/src-tauri/target/debug/bundle/macos/Mindraw.app --app-api-capability "$HOME/Library/Application Support/com.mindraw.desktop/runtime/write-api.json" --pretty` - `npm run test:run -- src/lib/mindrawAppReadApi.test.ts src/lib/mindrawAppApiTransport.test.ts` - `npm run doctor:mindraw:test` - `cargo test --manifest-path src-tauri/Cargo.toml app_api_transport` - `git diff --check` ## 关键决策 - 本轮不执行 controlled commit,避免在 readiness 阶段提前写入;受控 `commit_write_result(createAiResultFrame)` 仍归 `M4C-H5-09` 复核。 - `M4C-H5-09` 已因 `MD-H5-06` 当时未完成而提前 blocker,本轮只补齐 Mindraw readiness,不改 m4c 结论,不收敛 PM gate。 - 下一步由 PM 判断是否重派 m4c 复跑 `M4C-H5-09`,Mindraw 窗口不领取 `PM-H5-CANONICAL-RECHECK-GATE`。 ## 未决问题 - endpoint、token、PID 均为运行态临时值;App 退出后 consumer 必须重新读取 capability,并以 `/health` 判断 stale。 - `PM-H5-CANONICAL-RECHECK-GATE` 仍等待 PM 收敛双方证据。 - Phase 4 `.assets` 权威化、H8 formal release 仍未进入。 ## 后续建议 - PM 可基于本轮 `MD-H5-06` readiness 证据决定是否重派 m4c 复跑 `M4C-H5-09`。 - m4c 复跑时应读取当前 capability 文件,不复用历史 PID / endpoint / token,并使用本轮安全副本路径、`documentId`、`sourceFrameId` 和最新 `workingRevision`。