2.1 KiB
2.1 KiB
执行健康与恢复顺序
这份报告只记录当前可复验的执行阻塞,不替代 docs/EXECUTION_QUEUE.md、parent
manifest 或任务卡。先运行廉价预检,再运行 Blender/WASM 或浏览器命令:
node tools/web/check-execution-health.mjs
预检会一次性检查当前 queue、parent nextTask、task index、catalog 唯一 active
记录、紧凑任务卡,以及当前 gap 的 fixture/generator。它在发现阻塞时退出码为 2,
不会启动 Blender、加载 WASM 或写入任何证据。
当前基线(2026-08-24)
npm --prefix web run test:task-context:通过,约708 ms。npm --prefix web run test:context-governance:失败,约732 ms;index/catalog active 仍是M16-GAP-00281,queue 已指向M16-GAP-00282。node tools/web/check-generated-gap.mjs --task M16-GAP-00282:预检失败,约131 ms;任务仍是pending,fixture 和 generator 均不存在。npm --prefix web test:约13.5 s,398/417通过;19 个失败来自历史 manifest 的 artifact SHA-256 漂移,不能通过放宽校验解决。npm --prefix web run typecheck:约15.7 s,通过。npm --prefix web run lint:约12.8 s,通过。
恢复顺序
- 先修复 queue、plan、catalog、index 的单一指针来源,并重新生成 index;不得手工 修改 active 状态或 offset。
- 为当前任务生成非空紧凑卡:
node tools/web/generate-task-card.mjs --task M16-GAP-00282。 - 只有任务变为
active且 fixture/generator 真实存在后,才运行专项 gap 命令。 - 历史 manifest hash 漂移需要不可变的源快照或经审计的重签流程;禁止在 checker 中
忽略漂移,也不要把
CANCELLED、metadata-only 或 negative-only 证据计为功能完成。 - 专项任务通过后才运行浏览器验收;浏览器门永久限制为 Chromium。
tools/web/check-generated-gap.mjs 现在先执行同一套轻量预检,并把状态、缺失输入
和修复方向打印成单行诊断;只有预检通过才动态加载 WASM。这避免无效任务浪费启动时间,
也让失败停在真正的输入问题上。