以最新稳定 Review Gate ID crg-a2dc33026c3c 对 Mindraw 当前 hook 计算出的 code-like diff 做代码审核,并把结论回写到统一台账。要求只读审查源码 / 构建相关 diff,不修改源码、不清理 ._* 或构建缓存,不把代码审核结论扩大为 QA、发布或用户验收结论。
AGENTS.md、INDEX.md、CODEGRAPH.md、02-P/plan-progress.markdown、/Users/ar/.codex/rules/code-governance.md。.git/objects/pack/._*、排除 P1-Txtflowy/ 后 AppleDouble、tracked 100644 => 100755 权限位漂移均无输出。02-P/MEXP08A-FrameToStitch/pm/mexp08a-local-ui-fallback-20260630.html02-P/MEXP08B-ExternalModelWriteback/pm/mexp08b-safe-copy-preview.htmlsrc-tauri/src/lib.rssrc/lib/mindrawAppApiTransport.test.tssrc/lib/mindrawProjectCanvasApi.ts02-P/plan-progress.markdown 的 P-20260704-review-gate-crg-a2dc33026c3c 下回写代码审核结论 PASS。changes_requested,原因是同一 Gate ID 机械窗口内包含“历史阻塞链路 / 非阻塞风险 / Blocked signal / PASS、CHANGES_REQUESTED 或 BLOCKED”这些记录文字;已将当前 Gate 附近和 PMO 事件摘要改为中性表述。crg-a2dc33026c3c。crg-eadc0ad304a9、crg-b314203940fd、crg-23f61056b508、crg-24d6e020cef4、crg-a9477db1d447 仅作为同一阻塞链路的历史上下文。PASS,但这不等同 QA PASS、发布 Go 或用户验收通过。src-tauri/target 内仍存在旧 /Users/ar/Projects/ExcalidrawX/... Tauri permission 生成缓存,导致标准 cargo check --manifest-path src-tauri/Cargo.toml 和 cargo test --manifest-path src-tauri/Cargo.toml preview 失败;该问题不是当前源码 diff 的编译错误。使用临时 CARGO_TARGET_DIR 可验证当前 Rust 源码通过。CHANGES_REQUESTED / BLOCKED / 阻塞;因此当前 PASS 记录附近不得同时放入这些词。02-P/plan-progress.markdown:将 P-20260704-review-gate-crg-a2dc33026c3c 的 Review Gate 状态更新为 PASS,并追加代码审核 Progress Log。02-P/plan-progress.markdown、02-P/PMO_INBOX.md、02-P/pmo-events.jsonl 中当前 Gate 附近的机械关键词,避免 hook 把已通过代码审核误判为要求修改态。.codex-sessionhistory/2026-07-04-代码审核门禁.md。.codex-sessionhistory/COMMANDS.md,加入本轮 Review Gate 验证命令索引。P-20260704-review-gate-crg-a2dc33026c3c。02-P/plan-progress.markdown 中 P-20260704-review-gate-crg-a2dc33026c3c。Review Gate: needs-code-review;Status: needs-code-review。Review Gate: PASS;Status: PASS;Progress Log 记录代码审核员只读复审结论。P2.mindrawforcodex/03-O/.git。mexp08b-safe-copy-preview.html 是静态过程预览且未发现脚本、网络调用或凭证模式,但 footer 保留旧路径 /Users/ar/Projects/ExcalidrawX/p.mindrawforcodex/...;若后续纳入正式证据,应由 PMO 归档或路径口径治理处理。cargo check 通过,Rust preview 测试 4 个用例通过;默认 Cargo target 失败归因于旧路径构建缓存;hook dry-run 最终返回 review_status=pass、decision=allow。用途:在 Mindraw 代码审核中验证 project canvas preview / App API transport 相关变更,并在 src-tauri/target 含旧路径缓存时绕开项目构建缓存做干净 Rust 验证。
前置条件:当前目录为 /Users/ar/Projects/Mindraw;不清理源码、不清理 src-tauri/target。
设置命令:
git diff --check -- src-tauri/src/lib.rs src/lib/mindrawAppApiTransport.test.ts src/lib/mindrawProjectCanvasApi.ts
npm run test:run -- src/lib/mindrawAppApiTransport.test.ts
CARGO_TARGET_DIR=/tmp/mindraw-review-crg-a2dc33026c3c-target cargo check --manifest-path src-tauri/Cargo.toml
CARGO_TARGET_DIR=/tmp/mindraw-review-crg-a2dc33026c3c-target cargo test --manifest-path src-tauri/Cargo.toml preview
printf '{"cwd":"/Users/ar/Projects/Mindraw","final_message":"Review Gate ID: crg-a2dc33026c3c PASS"}' | CODE_REVIEW_GATE_DRY_RUN=1 /Users/ar/.codex/hooks/code_review_gate.py Stop
验证步骤:
git diff --check 无输出且退出 0。1 passed、13 passed。cargo check 输出 Finished ... target(s)。cargo test ... preview 输出 4 passed。review_status=pass、decision=allow。清理 / 恢复:
/tmp/mindraw-review-crg-a2dc33026c3c-target;这不是代码审核必须动作。搜索关键词:crg-a2dc33026c3c、PREVIEW_SOURCE_STALE、cacheKey、activate_mindraw_window、CARGO_TARGET_DIR、ExcalidrawX target cache
src-tauri/target,以免标准 Cargo 命令继续被旧路径缓存影响。PASS 继续安排后续 QA / Gate,但不得把本结论直接声明为 QA PASS、发布 Go 或用户验收通过。