@wwkit/harness 1.0.15 → 1.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/agents/work.md +89 -696
- package/package.json +1 -1
- package/skills/work-dispatch/SKILL.md +78 -0
- package/skills/work-dispatch/references/dispatch-prompt.md +87 -0
- package/skills/work-dispatch/references/prepare.md +25 -0
- package/skills/work-dispatch/references/report-handling.md +38 -0
- package/skills/work-finalize/SKILL.md +83 -0
- package/skills/work-finalize/references/acceptance.md +19 -0
- package/skills/work-finalize/references/final-review.md +53 -0
- package/skills/work-finalize/references/handover.md +28 -0
- package/skills/work-ledger/SKILL.md +73 -0
- package/skills/work-ledger/references/bootstrap.md +28 -0
- package/skills/work-ledger/references/layout.md +25 -0
- package/skills/work-ledger/references/ledger-format.md +57 -0
- package/skills/work-plan/SKILL.md +81 -0
- package/skills/work-plan/references/plan-file.md +29 -0
- package/skills/work-plan/references/self-review.md +18 -0
- package/skills/work-plan/references/split-rules.md +23 -0
- package/skills/work-plan/references/task-fields.md +44 -0
- package/skills/work-recovery/SKILL.md +80 -0
- package/skills/work-recovery/references/budget.md +40 -0
- package/skills/work-recovery/references/replan.md +21 -0
- package/skills/work-recovery/references/rollback.md +20 -0
- package/skills/work-review/SKILL.md +95 -0
- package/skills/work-review/references/breaker.md +26 -0
- package/skills/work-review/references/fix-loop.md +118 -0
- package/skills/work-review/references/review-package.md +24 -0
- package/skills/work-review/references/reviewer-prompt.md +77 -0
- package/skills/work-review/references/verdict-handling.md +25 -0
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# 5.2 派发 task reviewer
|
|
2
|
+
|
|
3
|
+
使用 `task` 工具,`subagent_type` 取 `general`(reviewer 需写入 REVIEW_FILE,explore 无写工具)。**只读约束写在 prompt 里,不体现在工具权限**:唯一允许的写操作是写入 `<REVIEW_FILE>`,不得改源码、不得 add/commit。
|
|
4
|
+
|
|
5
|
+
## prompt 结构
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
你是一个任务审查者。审查 T<N> 的实现:先检查是否符合需求,再检查代码质量。
|
|
9
|
+
|
|
10
|
+
## 需求
|
|
11
|
+
|
|
12
|
+
读取任务 brief:<BRIEF_FILE>
|
|
13
|
+
它包含 goal、files、interfaces、accept(验收标准)、verify(验证命令)。
|
|
14
|
+
|
|
15
|
+
全局约束:
|
|
16
|
+
<GLOBAL_CONSTRAINTS — 从 constraints 原样复制;constraints 为空时写(无额外约束)>
|
|
17
|
+
|
|
18
|
+
## 实现者声称做了什么
|
|
19
|
+
|
|
20
|
+
读取实现者报告:<REPORT_FILE>
|
|
21
|
+
|
|
22
|
+
## 待审查的 Diff
|
|
23
|
+
|
|
24
|
+
Base: <BASE_SHA>
|
|
25
|
+
Head: <HEAD_SHA>
|
|
26
|
+
Diff 文件:<DIFF_FILE>
|
|
27
|
+
|
|
28
|
+
读取 diff 文件——它包含 commit 列表、统计摘要和完整 diff。
|
|
29
|
+
|
|
30
|
+
## 执行边界(硬约束)
|
|
31
|
+
|
|
32
|
+
- **最多 15 次工具调用**:到 15 次仍未完成审查必须停止并报告未完成。
|
|
33
|
+
- **禁止爬取代码库**:只在 diff 内审查,除非有具体命名风险需要检查(每次外部检查计 1 次工具调用)。
|
|
34
|
+
- **不重跑测试**:信任 Ledger 记录的测试结果,不运行测试。
|
|
35
|
+
- **写操作白名单 = 仅 `<REVIEW_FILE>`**:不修改源码、不 add、不 commit、不改工作树/index/HEAD/分支;唯一允许的写是写入 `<REVIEW_FILE>`。
|
|
36
|
+
|
|
37
|
+
## 审查原则
|
|
38
|
+
|
|
39
|
+
- **不信任实现者报告**:它是未验证的声明,对照 diff 验证
|
|
40
|
+
- diff 的上下文行就是被改的文件——不要单独 Read 已在 diff 中的文件,除非某段 hunk 被截断
|
|
41
|
+
|
|
42
|
+
## Part 1: Spec Compliance
|
|
43
|
+
|
|
44
|
+
对照 brief 的 accept 验收标准逐条检查:
|
|
45
|
+
- 每条 accept 是否满足?附 file:line 证据
|
|
46
|
+
- Missing:跳过/遗漏的要求
|
|
47
|
+
- Extra:未要求的过度工程
|
|
48
|
+
- Misunderstood:方向错误
|
|
49
|
+
|
|
50
|
+
## Part 2: Code Quality
|
|
51
|
+
|
|
52
|
+
- 关注分离是否清晰
|
|
53
|
+
- 错误处理是否恰当
|
|
54
|
+
- DRY 且无过度抽象
|
|
55
|
+
- 边界情况是否处理
|
|
56
|
+
- 测试是否验证真实行为
|
|
57
|
+
- interfaces 声明的签名是否与实现匹配
|
|
58
|
+
|
|
59
|
+
## 报告格式
|
|
60
|
+
|
|
61
|
+
将完整审查报告写入 <REVIEW_FILE>,然后用 ≤10 行回报:
|
|
62
|
+
- Spec Compliance: ✅ | ❌
|
|
63
|
+
- Task quality: Approved | Needs fixes
|
|
64
|
+
- Critical/Important 数量
|
|
65
|
+
- 工具调用次数(如 "used 8/15")
|
|
66
|
+
- Review 文件路径
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## reviewer 写入文件
|
|
70
|
+
|
|
71
|
+
`<doc_dir>/task-<N>-review.md`
|
|
72
|
+
|
|
73
|
+
## 约束
|
|
74
|
+
|
|
75
|
+
- 两阶段顺序固定:先 Spec Compliance,再 Code Quality。
|
|
76
|
+
- 工具调用上限 15 次;写白名单仅 `<REVIEW_FILE>`;不重跑测试。
|
|
77
|
+
- 不信任实现者报告,对照 diff 验证;diff 上下文行即被改文件,不单独 Read(除非 hunk 截断)。
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# 5.3 Review 结论处理
|
|
2
|
+
|
|
3
|
+
读取 `task-<N>-review.md`,按结论处理:
|
|
4
|
+
|
|
5
|
+
## 分支表
|
|
6
|
+
|
|
7
|
+
| 结论 | 动作 |
|
|
8
|
+
|------|------|
|
|
9
|
+
| **Spec ✅ + Approved** | 写 Ledger `T<N>: reviewed_head=<head7>`、`T<N>: complete (commits <base7>..<head7>, review clean)`,勾单,下一任务 |
|
|
10
|
+
| **Spec ❌ 或有 Critical/Important** | 先写 Ledger `T<N>: reviewed_head=<head7>`,再进入 fix loop(第六步) |
|
|
11
|
+
| **⚠️ Cannot verify from diff** | 你自己核查(你持有计划和跨任务上下文);若核查需读文件超过 3 次,改为派 `explore` 子任务核查,避免污染 context |
|
|
12
|
+
|
|
13
|
+
## Minor findings
|
|
14
|
+
|
|
15
|
+
记入 Ledger(`T<N>: minor (deferred): <one-liner>`),不进入 fix loop,留给 final review 处理。
|
|
16
|
+
|
|
17
|
+
## Plan-mandated findings
|
|
18
|
+
|
|
19
|
+
finding 与计划文本冲突时 → 你以 spec/`target` 为最高权威**自行裁决**(计划那句话 vs finding,谁更符合 spec),记 Ledger `T<N>: ruled — <finding> — <裁决与理由>`,不打断用户。仅当 finding 与用户给的 `constraints`(而非 AI 生成的 plan)冲突时,才升级用户。
|
|
20
|
+
|
|
21
|
+
## 约束
|
|
22
|
+
|
|
23
|
+
- `reviewed_head=` 必须在进入 fix loop 前先写,作为后续 scoped re-review 的 `FIX_BASE` 来源。
|
|
24
|
+
- Minor 不阻塞、不 fix,仅 deferred。
|
|
25
|
+
- Plan-mandated 裁决不打断用户:spec/`target` 是最高权威,AI 生成的 plan 不是。仅与用户 `constraints` 冲突才升级。
|