56 lines
4.0 KiB
Markdown
56 lines
4.0 KiB
Markdown
# FreeCAD Web 持续执行提示词
|
||
|
||
将下面代码块完整复制给 Codex,用于从当前检查点持续推进任务。
|
||
|
||
```text
|
||
接续当前工作区中的任务并持续执行,直到所有可执行任务完成或明确阻断。
|
||
|
||
执行规则:
|
||
|
||
1. 从当前任务账本和最小上下文检查点继续,不重复已完成工作。
|
||
2. 每完成一个任务,立即验证产物和测试结果,更新任务卡、task-state.json、交接页和上下文摘要,然后自动领取下一个 pending 任务继续执行。
|
||
3. 不要等待确认,不要询问是否继续,不要在任务之间停顿。
|
||
4. 同时只能有一个 in_progress 任务,严禁并行领取多个任务。
|
||
4a. 每次使用 `sync_web_task_state.py --active NEXT_LEAF_TASK` 后,立即校验 `task-state.json`、`FREECAD_WEB_HANDOFF.md`、`FREECAD_WEB_CONTEXT_MIN.md` 和 `nextTask.md`;若存在旧父任务投影,先由账本工具清理后再执行。
|
||
4b. 绝不领取模块包父任务;`--active` 只能指向模块目录中的叶子任务。blocked 卡必须先有恢复动作,不能直接重新激活。
|
||
4c. 每张任务卡使用独立上下文空间。完成卡后先运行 `python3 FreeCAD/tools/rotate_web_task_context.py --reason completed --next-task NEXT_LEAF` 清理旧生成 manifest,再同步账本并生成下一卡 manifest。
|
||
5. 开始任务前先运行:
|
||
python3 FreeCAD/tools/validate_web_context.py
|
||
python3 FreeCAD/tools/prepare_web_task_context.py
|
||
然后只读取 manifest 中 mode=read 的文件。
|
||
6. 所有后台、内核、计算、文档和持久化能力必须由真实 FreeCAD/WASM 源码执行;不得用纯 JavaScript、静态数据或假结果替代。
|
||
7. 按任务卡完成源码边界、WASM/runtime、内核动作、错误恢复、Facade/Worker、Chrome 回放和持久化/不适用边界。
|
||
8. 浏览器测试只使用 Google Chrome,固定 headless-new、1440x900、DPR 1;记录版本、网络请求、异常和截图 hash。
|
||
9. 每张卡必须保留可复现命令、输入 hash、结果 hash、产物路径和边界说明。
|
||
10. 失败时只记录首个可复现错误、命令、输入 hash 和恢复尝试;新增 R1 恢复卡,不覆盖已有成功证据。
|
||
11. 不得把未实现、未验证或不适用的能力写成 pass;不适用必须写明原因。
|
||
12. 构建或测试失败时先自行排查和修复,再继续执行;不要跳过失败步骤。
|
||
12a. 命令、浏览器、代理或上下文超时后,立即保存首个错误,运行 `rotate_web_task_context.py --reason timeout --next-task CURRENT_OR_RECOVERY` 压缩上下文,然后只重试一次;不能把超时写成 pass。
|
||
13. 如果遇到远程 compact、代理或网络流中断,保留本地进度,从当前检查点继续,不要重做无关任务。
|
||
14. 如果一个外部依赖阻断当前卡,记录为 blocked,并继续领取不依赖该阻断的其他任务;不要伪造结果。
|
||
15. 只有在所有可执行任务完成、同一外部阻断连续三次无法解决,或确实需要用户提供本地无法发现的凭据/决策时才暂停并报告。
|
||
16. 模块状态只能由对应 Y gate 改变,不能按已完成卡数量推断;完成模块后立即领取下一个 pending 模块。
|
||
|
||
最终报告当前完成任务、阻断任务、测试结果、证据路径和下一个活动任务。
|
||
```
|
||
|
||
## 推荐续接方式
|
||
|
||
通常只需发送:
|
||
|
||
```text
|
||
接续执行任务,每当完成一个任务后,直接领取后续任务,不停歇持续领取并且执行任务。
|
||
```
|
||
|
||
若需要提交源码仓库,可追加:
|
||
|
||
```text
|
||
每完成一个逻辑模块后,检查 Git 差异,创建清晰提交并推送到当前已配置的远端;不要提交密码、token、临时文件或构建产物。
|
||
```
|
||
|
||
## 安全边界
|
||
|
||
- “持续执行”不等于绕过权限、伪造证据或忽略恢复卡。
|
||
- 密码、API key 和 token 不写入配置、提交、远端 URL 或日志。
|
||
- 当前任务、状态和前置关系以 `docs/current/task-state.json`、交接页和机器生成上下文为准。
|