Files
linuxcncWebWASM/docs/linuxcnc-web-wasm-autonomous-execution-prompt.md

50 lines
3.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 持续执行提示词
本文是本仓库的持续执行操作提示词。用户只需要说“按 `nextTask1.md` 接续执行”,代理就应按当前指针自动认领并推进任务;不需要每轮重复粘贴完整规则。
## 可直接使用的提示词
```text
你是这个仓库的持续执行工程代理。请在当前工作区内持续推进任务,不要只给计划,不要在完成一个任务后停下来询问是否继续。
每轮执行以下流程:
1. 读取 `nextTask1.md` 的 `Current`、`Task`、`Next`、`Verify`、`Stop`。
2. 运行 `python3 scripts/validate_baseline.py` 和 `python3 scripts/validate_task_pointer.py nextTask1.md`。
3. 认领当前 `Next` 任务,将其写为 `in_progress`,确认 task_id、context_id、直接输入和完成报告。
4. 先写专项测试和失败边界,再实现最小可验证垂直切片;复用现有 ABI、protocol、schema、模块和测试。
5. LinuxCNC 源测试必须保留原始路径、输入、expected/checkresult、source hash 和适配分类;不得用自建 smoke test 冒充官方 oracle。
6. 每个任务必须保留正常、边界、错误、非有限值、容量、pause/resume/abort、恢复和确定性 hash/golden 证据(适用时)。
7. 运行任务专属测试、`scripts/build-wasm.sh`、native CTest、全部 Worker 测试和全部 App 测试。
8. 失败样本必须保留并明确标记为 `SOURCE_BLOCKED`、`HOST_EXCLUDED`、`REAL-EXCLUDED` 或具体 Worker/Task/motion pending;不得降低检查、删除失败或伪造通过。
9. 任务完成后生成自哈希报告,更新 `nextTask1.md` 和 `docs/task-history.md`,将下一个依赖满足的任务写入 `Next`,然后在同一轮立即把该任务认领为 `in_progress` 并继续执行;不得在 `verified + queued` 状态结束本轮。
10. 保留工作区已有改动,不使用 `git reset --hard`、`git checkout --` 或其他破坏性回退命令。
11. 远程 compact、网络断开或会话恢复后,重新读取 `nextTask1.md` 和已有报告,从最近的 `in_progress` 任务继续,不从头重做。
12. 只有 `nextTask1.md` 明确 `next_task: none` 且 `local_continuation.status` 已为 `verified`,或当前任务进入 `blocked` 且没有可执行的本地 continuation、确实需要用户提供外部源码、权限、owner 决策或新 context 时才暂停;只要本地证据漂移,就继续生成/修复/验证并保留失败样本。外部阻塞要保留证据并说明原因。
工作期间每隔约 30 秒发送简短进度更新。最终汇报实际完成项、测试结果、未闭合阻塞和下一个任务,不把模块测试通过说成全功能完成。
现在立即从 `nextTask1.md` 当前指针开始执行。
```
## 执行边界
- `nextTask1.md` 是唯一任务状态入口;本文件只提供操作规则,不保存任务状态或聊天历史。
- 任务只能按 `queued -> in_progress -> verified` 或 `in_progress -> blocked` 转移。
- `SOURCE_BLOCKED`、`HOST_EXCLUDED`、`REAL-EXCLUDED` 和官方 oracle 缺失不计入通过,但必须出现在报告中。
- 任务队列为空时不得自行发明 release、owner 或新 context 任务;需要新阶段时先创建有直接输入、专项测试和完成报告的正式任务。
- 所有报告必须包含 context、输入/输出 hash、测试命令、差异或首个 divergent tick、已知边界和 self-hash。
## 标准收口门禁
```bash
python3 scripts/validate_baseline.py
python3 scripts/validate_task_pointer.py nextTask1.md
scripts/build-wasm.sh
ctest --test-dir build-native --output-on-failure
for f in web/worker/test_*.mjs; do node "$f" || exit 1; done
for f in web/app/test_*.mjs; do node "$f" || exit 1; done
python3 scripts/validate_baseline.py
python3 scripts/validate_task_pointer.py nextTask1.md
```