🗑️ remove(progress): drop workflow state tracking
Use plan-status as the only machine state source for plan queueing, claiming, and finishing. Route record-plan through queue insertion and update templates/prompts to match the single-state model. BREAKING CHANGE: playbook.py -record-spec and main_loop.py record are removed.
This commit is contained in:
@@ -62,12 +62,11 @@
|
||||
> `using-superpowers` 是会话启动时判断并加载适用 skill 的入口 skill。
|
||||
|
||||
- 规划阶段必须走 `using-superpowers -> brainstorming -> writing-plans`
|
||||
- `$brainstorming` 产出 `docs/superpowers/specs/*-design.md`;写出 spec 后
|
||||
立即用 `playbook.py -record-spec` 记录 `phase=planning` 与 `spec=<path>`
|
||||
- `$brainstorming` 产出 `docs/superpowers/specs/*-design.md`;spec 文件本身即为设计留痕
|
||||
- `$writing-plans` 产出 `docs/superpowers/plans/*.md`;写出 plan 后立即用
|
||||
`playbook.py -record-plan` 记录 `plan=<path>`、`executor=executing-plans`、
|
||||
`constraints=karpathy-guidelines,.agents,AGENT_RULES`
|
||||
- spec/plan 产出阶段不单独提交或归档,只做文件落地与状态留痕;如外部 skill
|
||||
`playbook.py -record-plan` 追加到 `memory-bank/progress.md` 的
|
||||
`plan-status` 队列,初始状态为 `pending`
|
||||
- spec/plan 产出阶段不单独提交或归档,只做文件落地与 Plan 入队;如外部 skill
|
||||
要求写完后立即提交,以本文件为准,推迟到 Plan 完成后统一处理
|
||||
- Plan 生命周期由 `main_loop.py` 协调,通过 `memory-bank/progress.md` 留痕
|
||||
- Plan 执行入口只能是主循环:领取前不得进入 `$executing-plans`,领取后默认用
|
||||
@@ -118,8 +117,7 @@
|
||||
- `in-progress`:执行中,用于恢复中断任务
|
||||
- `done`:已完成
|
||||
- `blocked`:阻塞,需人工介入或切换环境
|
||||
- `skipped`:永久跳过,不再执行,`workflow-state.phase` 也写为
|
||||
`skipped`
|
||||
- `skipped`:永久跳过,不再执行
|
||||
|
||||
`skipped` 如需恢复,必须手动改回 `pending`。
|
||||
|
||||
@@ -140,7 +138,7 @@ python {{PLAYBOOK_SCRIPTS}}/main_loop.py claim \
|
||||
-owner "<当前session或agent标识>"
|
||||
```
|
||||
|
||||
该命令在锁保护下完成:自动识别当前环境(windows/linux/darwin)、校验 Plan Meta、优先恢复 `in-progress`、选择第一个可执行 Plan、写入 `claimed_by`/`claimed_at` 并清理上一轮 `verification`。
|
||||
该命令在锁保护下完成:自动识别当前环境(windows/linux/darwin)、校验 Plan Meta、优先恢复 `in-progress`、按 `plan-status` 行顺序选择第一个可执行 Plan,并在对应 Plan 行写入 `claimed_by`/`claimed_at`。
|
||||
|
||||
stdout 必须包含 `PLAN=<path>`;如为环境恢复,还会附带 `NOTE=env:<环境>:<Task列表>`。
|
||||
|
||||
@@ -177,11 +175,6 @@ python {{PLAYBOOK_SCRIPTS}}/main_loop.py status \
|
||||
**规划留痕**:
|
||||
|
||||
```bash
|
||||
# brainstorming 完成后
|
||||
python {{PLAYBOOK_SCRIPTS}}/playbook.py \
|
||||
-record-spec docs/superpowers/specs/<topic>-design.md \
|
||||
-progress memory-bank/progress.md
|
||||
|
||||
# writing-plans 完成后
|
||||
python {{PLAYBOOK_SCRIPTS}}/playbook.py \
|
||||
-record-plan docs/superpowers/plans/<topic>.md \
|
||||
@@ -235,7 +228,7 @@ python {{PLAYBOOK_SCRIPTS}}/playbook.py \
|
||||
|
||||
- 本轮代码、配置、测试、模板改动
|
||||
- 当前 Plan 文件(创建、补充、勾选 Task、记录结果等)
|
||||
- `memory-bank/progress.md` 中本轮 `workflow-state`、`plan-status` 与摘要更新
|
||||
- `memory-bank/progress.md` 中本轮 `plan-status` 与摘要更新
|
||||
- 必要 memory 更新(如 `active-context.md`、`decisions.md`)
|
||||
|
||||
**归档约束**:
|
||||
@@ -251,8 +244,9 @@ python {{PLAYBOOK_SCRIPTS}}/playbook.py \
|
||||
|
||||
- 重要决策记录到 `memory-bank/decisions.md`
|
||||
- 待确认事项在回复中显式列出
|
||||
- `workflow-state` 和 `plan-status` 只能通过
|
||||
`{{PLAYBOOK_SCRIPTS}}/main_loop.py` 维护
|
||||
- `plan-status` 是唯一机器状态源,只能通过
|
||||
`{{PLAYBOOK_SCRIPTS}}/main_loop.py` 或
|
||||
`{{PLAYBOOK_SCRIPTS}}/playbook.py -record-plan` 维护
|
||||
- `progress.md` 上半部分是短期状态快照,不是 changelog;
|
||||
阶段变化或执行结束后整理/替换摘要,不做无限追加
|
||||
- `active-context.md` 是短期上下文快照,不是长期日志;
|
||||
|
||||
+1
-1
@@ -109,7 +109,7 @@ templates/
|
||||
|
||||
执行规则模板,定义 AI 的工作循环和约束。如需项目私有规则,建议维护 `AGENT_RULES.local.md`;该文件通常由 `[sync_rules]` 首次自动创建,其优先级高于 `AGENT_RULES.md`,且后续不会被 playbook 覆盖。
|
||||
|
||||
计划编排与执行细节统一指向 `docs/superpowers/`、`playbook.py -record-spec/-record-plan` 与 `main_loop.py claim/finish`。
|
||||
计划编排与执行细节统一指向 `docs/superpowers/`、`playbook.py -record-plan` 与 `main_loop.py claim/finish`。
|
||||
|
||||
### AGENTS.template.md
|
||||
|
||||
|
||||
@@ -6,8 +6,7 @@
|
||||
- 上半部分是短期状态快照,不是 changelog
|
||||
- `Recent Changes` 只保留最近 3-5 条对恢复上下文有价值的变化
|
||||
- 更新摘要时整理/替换旧摘要,不做无限追加
|
||||
- 中间的 workflow-state 块记录当前阶段、spec、plan 与执行约束
|
||||
- 下半部分的 plan-status 块由 main_loop.py 维护,是唯一权威状态源
|
||||
- 下半部分的 plan-status 块由 main_loop.py 维护,是唯一机器状态源
|
||||
-->
|
||||
|
||||
## Current Focus
|
||||
@@ -31,26 +30,14 @@
|
||||
以下示例仅用于说明结构,真实状态由 `main_loop.py` 维护:
|
||||
|
||||
```text
|
||||
## Workflow State
|
||||
<!-- workflow-state:start -->
|
||||
phase: planning
|
||||
spec: docs/superpowers/specs/2026-05-18-demo-design.md
|
||||
plan: docs/superpowers/plans/2026-05-18-demo.md
|
||||
executor: executing-plans
|
||||
constraints: karpathy-guidelines,.agents,AGENT_RULES
|
||||
<!-- workflow-state:end -->
|
||||
|
||||
## Plan Status
|
||||
<!-- plan-status:start -->
|
||||
- [ ] `2026-05-18-demo.md` pending
|
||||
- [ ] `2026-05-19-next.md` in-progress: claimed_by: codex; claimed_at: 2026-05-19T08:00:00Z
|
||||
- [x] `2026-05-20-done.md` done: verified: python -m unittest
|
||||
<!-- plan-status:end -->
|
||||
```
|
||||
|
||||
## Workflow State
|
||||
|
||||
<!-- workflow-state:start -->
|
||||
<!-- workflow-state:end -->
|
||||
|
||||
## Plan Status
|
||||
|
||||
<!-- plan-status:start -->
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
完成当前 Plan 变更归档/提交;未归档不得声明 Plan 完成
|
||||
- 未验证内容必须显式说明
|
||||
- 只写对下一轮仍重要的信息
|
||||
- 不手工改写 `workflow-state` 或 `plan-status` 状态块
|
||||
- 不手工改写 `plan-status` 状态块
|
||||
|
||||
## 执行步骤
|
||||
|
||||
@@ -31,23 +31,18 @@
|
||||
2. 核对已运行验证与未运行验证
|
||||
3. 如本轮来自 `main_loop.py claim`,核对 `main_loop.py finish`
|
||||
是否已经写回 `plan-status`
|
||||
4. 如本轮来自 `main_loop.py claim`,核对 `workflow-state.phase`
|
||||
是否与当前结果一致
|
||||
5. 如需回写上下文,更新 `active-context`、`progress` 上半部分和 `decisions`
|
||||
6. 如本轮来自 `main_loop.py claim` 且结果为 `done`,按项目归档机制只归档
|
||||
4. 如需回写上下文,更新 `active-context`、`progress` 上半部分和 `decisions`
|
||||
5. 如本轮来自 `main_loop.py claim` 且结果为 `done`,按项目归档机制只归档
|
||||
当前 Plan 相关差异
|
||||
7. 复核剩余差异是否属于其他 session / 其他 Plan,且未混入本轮交付单元
|
||||
8. 输出本轮摘要与下一步
|
||||
6. 复核剩余差异是否属于其他 session / 其他 Plan,且未混入本轮交付单元
|
||||
7. 输出本轮摘要与下一步
|
||||
|
||||
## 状态留痕复核
|
||||
|
||||
- 如本轮来自 `main_loop.py claim`,`main_loop.py finish` 是否已经写回
|
||||
`plan-status`
|
||||
- 如本轮来自 `main_loop.py claim`,`workflow-state.phase` 是否与当前结果一致
|
||||
- 如本轮来自 `main_loop.py claim` 且结果为 `done`,当前 Plan 相关差异
|
||||
是否已经归档/提交,或是否已说明无当前 Plan 差异
|
||||
- 如为代码类执行,`workflow-state` 中是否保留了
|
||||
`executor=executing-plans` 与既定 `constraints`
|
||||
|
||||
## 输出协议
|
||||
|
||||
|
||||
@@ -35,8 +35,7 @@
|
||||
|
||||
### `memory-bank/progress.md`
|
||||
|
||||
- 先读取 `workflow-state`:当前阶段、spec、plan、executor、constraints
|
||||
- 再读取 `plan-status`:当前 Plan 的机器状态
|
||||
- 读取 `plan-status`:Plan 队列与机器状态
|
||||
- 只更新上半部分的人类摘要,不修改状态块
|
||||
- 上半部分是短期状态快照,不是长期日志
|
||||
- `Recent Changes` 只保留最近 3-5 条对恢复上下文有价值的变化
|
||||
@@ -61,14 +60,14 @@
|
||||
- 临时聊天内容不要写进去
|
||||
- 高变化信息放 `active-context`,稳定技术模式放 `system-patterns`
|
||||
- 流程规则或项目私有约束变更写入 `AGENT_RULES.local.md`
|
||||
- `progress.md` 的状态块只由 `main_loop.py` 维护
|
||||
- 摘要应与 `workflow-state` / `plan-status` 保持一致
|
||||
- `progress.md` 的 `plan-status` 状态块只由 `main_loop.py` 或
|
||||
`playbook.py -record-plan` 维护
|
||||
- 摘要应与 `plan-status` 保持一致
|
||||
- 摘要区保持短期状态快照;长期历史依赖项目归档记录、Plan 文件和
|
||||
`decisions.md`
|
||||
|
||||
## 禁止事项
|
||||
|
||||
- 手工改写 `<!-- workflow-state:start/end -->`
|
||||
- 手工改写 `<!-- plan-status:start/end -->`
|
||||
- 把临时聊天内容、未验证猜测写进摘要
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
- 验证命令必须 fresh run
|
||||
- 局部修改优先局部验证
|
||||
- 不能运行的验证必须写明原因
|
||||
- 不手工改写 `workflow-state` 或 `plan-status` 状态块
|
||||
- 不手工改写 `plan-status` 状态块
|
||||
- 如本轮来自 `main_loop.py claim`,验证通过不等于 Plan 完成;Plan
|
||||
`done` 还必须完成当前 Plan 变更归档/提交
|
||||
|
||||
@@ -33,8 +33,7 @@
|
||||
2. 运行与本次改动直接相关的验证命令
|
||||
3. 记录命令、结果和关键输出
|
||||
4. 复核 diff 是否只包含预期修改
|
||||
5. 如本轮来自 `main_loop.py claim`,复核 `workflow-state.phase`、
|
||||
`plan-status` 与当前声明一致
|
||||
5. 如本轮来自 `main_loop.py claim`,复核 `plan-status` 与当前声明一致
|
||||
6. 如本轮来自 `main_loop.py claim` 且结果为 `done`,复核当前 Plan
|
||||
相关差异是否已经归档/提交;未归档时只能声明“验证完成”,
|
||||
不能声明“Plan 完成”
|
||||
@@ -58,14 +57,10 @@
|
||||
|
||||
## 状态留痕复核
|
||||
|
||||
- 如本轮来自 `main_loop.py claim`,`workflow-state.phase` 是否与当前声明一致
|
||||
- 如本轮来自 `main_loop.py claim`,`plan-status` 是否已经通过
|
||||
`main_loop.py finish` 写回
|
||||
- 如本轮来自 `main_loop.py claim` 且结果为 `done`,当前 Plan 相关差异
|
||||
是否已经归档/提交,或是否已说明无当前 Plan 差异
|
||||
- 如为代码类任务,`workflow-state` 中是否保留:
|
||||
`executor=executing-plans`
|
||||
`constraints=karpathy-guidelines,.agents,AGENT_RULES`
|
||||
|
||||
## 停止条件
|
||||
|
||||
|
||||
Reference in New Issue
Block a user