dev-playbooks 1.2.4 → 1.2.5
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/package.json +1 -1
- package/skills/devbooks-code-review/SKILL.md +9 -0
- package/skills/devbooks-coder/SKILL.md +1 -0
- package/skills/devbooks-delivery-workflow/scripts/change-check.sh +19 -0
- package/skills/devbooks-delivery-workflow/scripts/change-scaffold.sh +7 -1
- package/skills/devbooks-test-owner/SKILL.md +11 -0
package/package.json
CHANGED
|
@@ -148,6 +148,15 @@ After completing code-review, the next step depends on the situation:
|
|
|
148
148
|
| No spec deltas | Archive complete | No further skills needed |
|
|
149
149
|
| Major issues found | Hand back to `devbooks-coder` | Fix issues before archive |
|
|
150
150
|
|
|
151
|
+
### Reviewer Exclusive Permission: Set verification.md Status
|
|
152
|
+
|
|
153
|
+
**Only Reviewer can set `verification.md` Status to `Done`**.
|
|
154
|
+
|
|
155
|
+
After review passes, Reviewer must:
|
|
156
|
+
1. Open `<change-root>/<change-id>/verification.md`
|
|
157
|
+
2. Change `- Status: Ready` to `- Status: Done`
|
|
158
|
+
3. This is a prerequisite for archive (`change-check.sh --mode archive` will verify)
|
|
159
|
+
|
|
151
160
|
### Output Template
|
|
152
161
|
|
|
153
162
|
After completing code-review, output:
|
|
@@ -141,6 +141,7 @@ devbooks change-evidence <change-id> --label green-final -- npm test
|
|
|
141
141
|
### Role Boundary Constraints
|
|
142
142
|
- **Modifying `tests/**` is prohibited** (changes to tests must be handed back to Test Owner)
|
|
143
143
|
- **Modifying `verification.md` is prohibited** (maintained by Test Owner)
|
|
144
|
+
- **Modifying `verification.md` Status field is prohibited** (only Reviewer can set it to Done)
|
|
144
145
|
- **Modifying `.devbooks/`, `build/`, or engineering configuration files is prohibited** (unless explicitly stated in proposal.md)
|
|
145
146
|
|
|
146
147
|
### Code Quality Constraints
|
|
@@ -411,6 +411,25 @@ check_verification() {
|
|
|
411
411
|
return 0
|
|
412
412
|
fi
|
|
413
413
|
|
|
414
|
+
# ==========================================================================
|
|
415
|
+
# AC-010: Verification Status Check
|
|
416
|
+
# Status field controls change package lifecycle: Draft → Ready → Done → Archived
|
|
417
|
+
# Only Reviewer can set Status to "Done" (Coder/Test Owner prohibited)
|
|
418
|
+
# ==========================================================================
|
|
419
|
+
if [[ "$mode" == "archive" || "$mode" == "strict" ]]; then
|
|
420
|
+
local status_line
|
|
421
|
+
status_line=$(rg -n "^- Status[::] *(Draft|Ready|Done|Archived)\b" "$verification_file" -m 1 || true)
|
|
422
|
+
if [[ -z "$status_line" ]]; then
|
|
423
|
+
err "verification missing Status line (e.g., '- Status: Done'): ${verification_file}"
|
|
424
|
+
else
|
|
425
|
+
local status_value
|
|
426
|
+
status_value="$(echo "$status_line" | sed -E 's/^[0-9]+:- Status[::] *//')"
|
|
427
|
+
if [[ "$status_value" != "Done" && "$status_value" != "Archived" ]]; then
|
|
428
|
+
err "verification Status must be 'Done' or 'Archived' for ${mode} (current: '${status_value}'). Only Reviewer can set Status to Done: ${verification_file}"
|
|
429
|
+
fi
|
|
430
|
+
fi
|
|
431
|
+
fi
|
|
432
|
+
|
|
414
433
|
for h in "A\\) Test Plan Instructions" "B\\) Traceability Matrix" "C\\) Deterministic Anchors" "D\\) MANUAL-\\* Checklist"; do
|
|
415
434
|
if ! rg -n "${h}" "$verification_file" >/dev/null; then
|
|
416
435
|
err "verification missing section '${h}': ${verification_file}"
|
|
@@ -288,7 +288,13 @@ cat <<'EOF' | render_template | write_file "${change_dir}/verification.md"
|
|
|
288
288
|
## Metadata
|
|
289
289
|
|
|
290
290
|
- Change ID: `__CHANGE_ID__`
|
|
291
|
-
- Status: Draft
|
|
291
|
+
- Status: Draft
|
|
292
|
+
> Status lifecycle: Draft → Ready → Done → Archived
|
|
293
|
+
> - Draft: Initial state
|
|
294
|
+
> - Ready: Test plan ready (set by Test Owner)
|
|
295
|
+
> - Done: All tests passed + Review approved (set by **Reviewer only**)
|
|
296
|
+
> - Archived: Archived (set by Spec Gardener)
|
|
297
|
+
> **Constraint: Coder is prohibited from modifying Status field**
|
|
292
298
|
- Links:
|
|
293
299
|
- Proposal: `__CHANGE_ROOT__/__CHANGE_ID__/proposal.md`
|
|
294
300
|
- Design: `__CHANGE_ROOT__/__CHANGE_ID__/design.md`
|
|
@@ -40,6 +40,17 @@ Before execution, **must** search for configuration in the following order (stop
|
|
|
40
40
|
|
|
41
41
|
Test Owner must produce a structured `verification.md` that serves as both test plan and traceability document.
|
|
42
42
|
|
|
43
|
+
### Status Field Permissions
|
|
44
|
+
|
|
45
|
+
| Status | Meaning | Who Can Set |
|
|
46
|
+
|--------|---------|-------------|
|
|
47
|
+
| `Draft` | Initial state | Auto-generated |
|
|
48
|
+
| `Ready` | Test plan ready | **Test Owner** |
|
|
49
|
+
| `Done` | Review passed | Reviewer (Test Owner/Coder prohibited) |
|
|
50
|
+
| `Archived` | Archived | Spec Gardener |
|
|
51
|
+
|
|
52
|
+
**Constraint**: After completing the test plan, Test Owner should set Status to `Ready`.
|
|
53
|
+
|
|
43
54
|
```markdown
|
|
44
55
|
# Verification Plan: <change-id>
|
|
45
56
|
|