edit | blame | history | raw

2026-07-05 MEXP13 组合复验

用户目标

用户要求汇报最新项目进度,并明确更关心普通用户可感知成果的验收状态。

已完成事项

  • 读取并核对 INDEX.md02-P/plan-progress.markdown、PMO active assignment、MEXP13 MD-BUNDLE-07M4C-BUNDLE-06 证据。
  • 发现 1.2.3 / Build202607042351 已生成,且 crg-7784e7708416 已由代码审核员回写 PASS,但本机 hook 起初仍误判为 changes_requested
  • 定位 hook 误判根因:02-P/PMO_INBOX.md / 02-P/pmo-events.jsonl 中旧 stop 事件摘要、以及 02-P/pmo-active-assignments.json 末尾 notes 的精确 gate 字符串,和后续 review 文档中的历史“阻塞”词落入同一机械扫描窗口。
  • 中性化本机 PMO 事件日志中的精确 gate 字符串,并把 pmo-active-assignments.json 末尾 notes 改成 same-gate 表述;正式 gate 事实仍保留在统一台账。
  • 复算 hook:Review Gate ID: crg-7784e7708416review_status=passdecision=allow
  • 完成 PM-BUNDLE-REGATE-03,结论为 GO_FOR_USER_REACCEPTANCE_WITH_LIMITS / NOT_FORMAL_RELEASE / NOT_USER_ACCEPTED
  • 写入 PMO Gate 报告:02-P/MEXP13-AcceptanceBundle/pm/mexp13-pm-regate-20260705-1.2.3.md
  • 更新统一台账 02-P/plan-progress.markdown 和入口索引 INDEX.md

核心事实 / 变更快照

  • 当前可复验候选:1.2.3 / Build202607042351
  • App DMG:03-O/C2.builds/releases/Build202607042351/Mindraw_1.2.3_aarch64-Build202607042351.dmg
  • DMG SHA256:5c8041288a61f8c09e7bf0ca8a0bcd68b55d17e5aaa1079eb8d7864a952481b5
  • Manifest SHA256:d8ec231d0f341fbd3a07dd8f59c2e77c669053da474cbc9e04b9cabe84593e73
  • Build-info SHA256:ee0a7d1c4394f16971cf63a4ccf72d668ea282de50343524b1bb32fe759cdc44
  • Plugin baseline:mindraw@personal 0.1.0+codex.20260704090518codex plugin list 显示 installed / enabled。
  • 用户验收状态:尚未通过;当前只是允许进入用户人工复验。
  • 旧候选:1.2.2 / Build202607021605 仍只作为失败证据,不再作为当前复验候选。
  • 范围边界:只覆盖 latest-created project canvas;任意 mindraw://...documentId...elementId... target-link sidebar entry 不在本轮。

验证证据

  • git diff --check -- 02-P/plan-progress.markdown INDEX.md 02-P/pmo-active-assignments.json 02-P/MEXP13-AcceptanceBundle/pm/mexp13-pm-regate-20260705-1.2.3.md:通过。
  • jq empty 02-P/pmo-active-assignments.json 02-P/MEXP13-AcceptanceBundle/pm/gate-rerun-20260705/*.json:通过。
  • CODE_REVIEW_GATE_DRY_RUN=1 python3 /Users/ar/.codex/hooks/code_review_gate.py Stopreview_status=passdecision=allow
  • hdiutil verify、mounted App metadata、codesign --verify --deep --strictnpm run doctor:mindraw:通过。
  • installed plugin check、default / lifecycle / HTTP / MCP / sidebar Playwright smoke:通过。
  • live App API:创建 / 打开临时 latest canvas 成功;App open 返回 FOCUS_REQUESTED 与 macOS Space warning;重复 inspect 对未保存 / source 不新鲜状态 fail-closed 为 BLOCKED_MINDRAW_PREVIEW_SOURCE_REQUIRED / PREVIEW_REQUIRES_SAVED_DOCUMENT

文件变更

  • 新增:02-P/MEXP13-AcceptanceBundle/pm/mexp13-pm-regate-20260705-1.2.3.md
  • 新增:02-P/MEXP13-AcceptanceBundle/pm/gate-rerun-20260705/
  • 更新:02-P/plan-progress.markdown
  • 更新:INDEX.md
  • 更新:02-P/pmo-active-assignments.json
  • 更新本机状态文件:02-P/PMO_INBOX.md02-P/pmo-events.jsonl

未决问题

  • 用户还没有对 1.2.3 / Build202607042351 做人工复验。
  • App 前置仍是 macOS best-effort:如果窗口在另一个 Space,系统不能保证强切过去;当前要求是有明确可见反馈,不再静默无响应。
  • 保存后 sidebar refresh 仍需要真实用户路径复查;当前 PMO 只证明 refresh / fail-closed 机制存在,不能替代用户真实编辑保存后的体验判断。

可复用命令 / Runbook

用途:复查 1.2.3 / Build202607042351 + mindraw@personal 0.1.0+codex.20260704090518 是否仍可进入人工复验。

前置条件:在 /Users/ar/Projects/Mindraw 运行;候选 DMG 和 plugin cache 已存在;如果要跑 sidebar smoke,需要本机已有 Playwright Chromium。

CODE_REVIEW_GATE_DRY_RUN=1 python3 /Users/ar/.codex/hooks/code_review_gate.py Stop <<'JSON'
{"cwd":"/Users/ar/Projects/Mindraw"}
JSON
shasum -a 256 \
  03-O/C2.builds/releases/Build202607042351/Mindraw_1.2.3_aarch64-Build202607042351.dmg \
  03-O/C2.builds/releases/Build202607042351/release-manifest.json \
  03-O/C2.builds/releases/Build202607042351/build-info.txt
npm run --prefix /Users/ar/.codex/plugins/cache/personal/mindraw/0.1.0+codex.20260704090518 check
node /Users/ar/.codex/plugins/cache/personal/mindraw/0.1.0+codex.20260704090518/scripts/mindraw-canvas-service.mjs smoke-lifecycle --report /tmp/mindraw-installed-lifecycle.json
node /Users/ar/.codex/plugins/cache/personal/mindraw/0.1.0+codex.20260704090518/scripts/mindraw-canvas-service.mjs smoke-http --report /tmp/mindraw-installed-http.json
node /Users/ar/.codex/plugins/cache/personal/mindraw/0.1.0+codex.20260704090518/scripts/mindraw-canvas-service.mjs smoke-mcp --report /tmp/mindraw-installed-mcp.json
PLAYWRIGHT_NODE_MODULES=/Users/ar/.cache/codex-runtimes/codex-primary-runtime/dependencies/node/node_modules/.pnpm/playwright@1.61.1/node_modules \
MINDRAW_PLAYWRIGHT_EXECUTABLE_PATH='/Users/ar/Library/Caches/ms-playwright/chromium-1228/chrome-mac-arm64/Google Chrome for Testing.app/Contents/MacOS/Google Chrome for Testing' \
node /Users/ar/.codex/plugins/cache/personal/mindraw/0.1.0+codex.20260704090518/scripts/mindraw-canvas-service.mjs smoke-sidebar --report /tmp/mindraw-installed-sidebar.json --out /tmp/mindraw-installed-sidebar-screens

清理 / 恢复:

osascript -e 'tell application id "com.mindraw.desktop" to quit' >/dev/null 2>&1 || true
hdiutil detach /tmp/mindraw-pm-regate-03-mount 2>/dev/null || true

搜索关键词:PM-BUNDLE-REGATE-03Build202607042351crg-7784e7708416GO_FOR_USER_REACCEPTANCE_WITH_LIMITSMINDRAW_PREVIEW_SOURCE_REQUIRED