prizmkit 1.1.106 → 1.1.108
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/bin/create-prizmkit.js +4 -0
- package/bundled/VERSION.json +3 -3
- package/bundled/dev-pipeline/prizmkit_runtime/config.py +81 -14
- package/bundled/dev-pipeline/prizmkit_runtime/heartbeat.py +19 -8
- package/bundled/dev-pipeline/prizmkit_runtime/interoperability.py +0 -1
- package/bundled/dev-pipeline/prizmkit_runtime/launch_profiles.py +18 -0
- package/bundled/dev-pipeline/prizmkit_runtime/runner_bookkeeping.py +22 -2
- package/bundled/dev-pipeline/prizmkit_runtime/runner_classification.py +56 -5
- package/bundled/dev-pipeline/prizmkit_runtime/runner_models.py +0 -8
- package/bundled/dev-pipeline/prizmkit_runtime/runner_recovery.py +11 -1
- package/bundled/dev-pipeline/prizmkit_runtime/runners.py +298 -63
- package/bundled/dev-pipeline/prizmkit_runtime/sessions.py +243 -37
- package/bundled/dev-pipeline/scripts/continuation.py +0 -5
- package/bundled/dev-pipeline/scripts/generate-bootstrap-prompt.py +10 -82
- package/bundled/dev-pipeline/scripts/generate-bugfix-prompt.py +7 -64
- package/bundled/dev-pipeline/scripts/generate-refactor-prompt.py +40 -63
- package/bundled/dev-pipeline/scripts/utils.py +123 -0
- package/bundled/dev-pipeline/templates/agent-prompts/critic-plan-challenge.md +4 -3
- package/bundled/dev-pipeline/templates/agent-prompts/reviewer-review.md +5 -6
- package/bundled/dev-pipeline/templates/bootstrap-prompt.md +1 -1
- package/bundled/dev-pipeline/templates/bootstrap-tier1.md +36 -35
- package/bundled/dev-pipeline/templates/bootstrap-tier2.md +53 -80
- package/bundled/dev-pipeline/templates/bootstrap-tier3.md +43 -78
- package/bundled/dev-pipeline/templates/bugfix-bootstrap-prompt.md +5 -17
- package/bundled/dev-pipeline/templates/refactor-bootstrap-prompt.md +6 -18
- package/bundled/dev-pipeline/templates/sections/checkpoint-system.md +14 -48
- package/bundled/dev-pipeline/templates/sections/context-budget-rules.md +7 -14
- package/bundled/dev-pipeline/templates/sections/feature-context.md +0 -4
- package/bundled/dev-pipeline/templates/sections/phase-browser-verification-auto.md +0 -7
- package/bundled/dev-pipeline/templates/sections/phase-browser-verification-opencli.md +0 -7
- package/bundled/dev-pipeline/templates/sections/phase-browser-verification.md +0 -7
- package/bundled/dev-pipeline/templates/sections/phase-commit-full.md +0 -14
- package/bundled/dev-pipeline/templates/sections/phase-commit.md +0 -14
- package/bundled/dev-pipeline/templates/sections/phase-context-snapshot-agent-suffix.md +0 -7
- package/bundled/dev-pipeline/templates/sections/phase-context-snapshot-base.md +0 -2
- package/bundled/dev-pipeline/templates/sections/phase-context-snapshot-lite-suffix.md +0 -7
- package/bundled/dev-pipeline/templates/sections/phase-critic-plan-full.md +6 -8
- package/bundled/dev-pipeline/templates/sections/phase-critic-plan.md +3 -7
- package/bundled/dev-pipeline/templates/sections/phase-implement-agent.md +4 -16
- package/bundled/dev-pipeline/templates/sections/phase-implement-full.md +4 -17
- package/bundled/dev-pipeline/templates/sections/phase-implement-lite.md +0 -7
- package/bundled/dev-pipeline/templates/sections/phase-plan-agent.md +2 -9
- package/bundled/dev-pipeline/templates/sections/phase-plan-lite.md +1 -8
- package/bundled/dev-pipeline/templates/sections/phase-prizmkit-test.md +15 -16
- package/bundled/dev-pipeline/templates/sections/phase-review-agent.md +3 -10
- package/bundled/dev-pipeline/templates/sections/phase-review-full.md +3 -10
- package/bundled/dev-pipeline/templates/sections/phase-specify-plan-full.md +2 -9
- package/bundled/dev-pipeline/templates/sections/phase0-init.md +0 -7
- package/bundled/dev-pipeline/templates/sections/phase0-test-baseline.md +2 -15
- package/bundled/dev-pipeline/tests/conftest.py +0 -1
- package/bundled/dev-pipeline/tests/test_generate_bootstrap_prompt.py +395 -21
- package/bundled/dev-pipeline/tests/test_generate_bugfix_prompt.py +50 -14
- package/bundled/dev-pipeline/tests/test_generate_refactor_prompt.py +154 -2
- package/bundled/dev-pipeline/tests/test_python_runner_parity.py +431 -3
- package/bundled/dev-pipeline/tests/test_unified_cli.py +857 -5
- package/bundled/skills/_metadata.json +4 -4
- package/bundled/skills/app-planner/SKILL.md +1 -1
- package/bundled/skills/app-planner/references/architecture-decisions.md +1 -1
- package/bundled/skills/bug-fix-workflow/SKILL.md +174 -128
- package/bundled/skills/bug-planner/SKILL.md +101 -15
- package/bundled/skills/bug-planner/references/severity-rules.md +20 -8
- package/bundled/skills/feature-planner/SKILL.md +87 -8
- package/bundled/skills/feature-planner/assets/planning-guide.md +34 -10
- package/bundled/skills/feature-workflow/SKILL.md +100 -81
- package/bundled/skills/{prizm-kit → prizmkit}/SKILL.md +1 -1
- package/bundled/skills/prizmkit-code-review/SKILL.md +12 -13
- package/bundled/skills/prizmkit-code-review/references/reviewer-agent-prompt.md +10 -10
- package/bundled/skills/refactor-planner/SKILL.md +88 -7
- package/bundled/skills/refactor-planner/references/fast-path.md +2 -1
- package/bundled/skills/refactor-planner/references/planning-phases.md +29 -11
- package/bundled/skills/refactor-workflow/SKILL.md +116 -57
- package/bundled/templates/project-memory-template.md +1 -1
- package/package.json +1 -1
- package/src/ai-cli-launch.js +194 -0
- package/src/config.js +26 -14
- package/src/index.js +11 -44
- package/src/platforms.js +10 -3
- package/src/prompts.js +60 -2
- package/src/scaffold.js +26 -14
- package/bundled/dev-pipeline/scripts/prizmkit-test-gate.py +0 -446
- package/bundled/dev-pipeline/templates/agent-prompts/dev-fix.md +0 -7
- package/bundled/dev-pipeline/templates/agent-prompts/dev-resume.md +0 -5
- package/bundled/dev-pipeline/templates/sections/log-size-awareness.md +0 -20
- package/bundled/dev-pipeline/tests/test_prizmkit_test_gate.py +0 -107
- package/bundled/skills/prizmkit-code-review/references/dev-agent-prompt.md +0 -30
|
@@ -61,9 +61,6 @@ You are the **refactor session orchestrator**. Execute Refactor {{REFACTOR_ID}}:
|
|
|
61
61
|
|
|
62
62
|
{{GLOBAL_CONTEXT}}
|
|
63
63
|
|
|
64
|
-
### Project Conventions
|
|
65
|
-
|
|
66
|
-
> Read {{PLATFORM_CONVENTIONS}} for project-level coding standards, architecture decisions, and development rules.
|
|
67
64
|
|
|
68
65
|
## Refactor Artifacts Directory
|
|
69
66
|
|
|
@@ -78,7 +75,6 @@ You are the **refactor session orchestrator**. Execute Refactor {{REFACTOR_ID}}:
|
|
|
78
75
|
|
|
79
76
|
## Execution Instructions
|
|
80
77
|
|
|
81
|
-
{{LOG_SIZE_AWARENESS}}
|
|
82
78
|
**YOU are the orchestrator. Execute each phase by spawning the appropriate team agent with run_in_background=false.**
|
|
83
79
|
|
|
84
80
|
**Agent spawn failure policy (all Agent tool calls)**:
|
|
@@ -88,15 +84,7 @@ You are the **refactor session orchestrator**. Execute Refactor {{REFACTOR_ID}}:
|
|
|
88
84
|
- Any recovery exception must be recorded in the required report or session status so downstream runs know the normal team path was unavailable.
|
|
89
85
|
- Apply the same cap to any re-spawn for report repair or resume prompts; do not burn multiple minutes on identical team/config/lock failures.
|
|
90
86
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
A checkpoint file tracks your progress through this workflow:
|
|
94
|
-
|
|
95
|
-
**Path**: `{{CHECKPOINT_PATH}}`
|
|
96
|
-
|
|
97
|
-
**How to use**:
|
|
98
|
-
1. **Before each step**: Read `workflow-checkpoint.json`, verify the previous step has `status: "completed"` or `status: "skipped"`. If not, complete it first.
|
|
99
|
-
2. **After completing a step**: Update the step's `status` to `"completed"` in `workflow-checkpoint.json`.
|
|
87
|
+
{{CHECKPOINT_SYSTEM}}
|
|
100
88
|
|
|
101
89
|
### Step 1: Initialize
|
|
102
90
|
|
|
@@ -129,7 +117,7 @@ Run `/prizmkit-plan` with `artifact_dir=.prizmkit/refactor/{{REFACTOR_ID}}/`:
|
|
|
129
117
|
- Every task ends with "run test suite to verify behavior preserved"
|
|
130
118
|
- Rollback strategy
|
|
131
119
|
|
|
132
|
-
Resolve
|
|
120
|
+
Resolve uncertain refactor details from the refactor description, existing code, and conservative existing-project patterns.
|
|
133
121
|
|
|
134
122
|
{{IF_BROWSER_INTERACTION}}
|
|
135
123
|
|
|
@@ -185,7 +173,7 @@ Evidence must cover affected UI render, primary user interactions, behavior-sens
|
|
|
185
173
|
|
|
186
174
|
{{END_IF_BROWSER_INTERACTION}}
|
|
187
175
|
|
|
188
|
-
7. If the refactor involves multiple files: update durable checkpoints/artifacts at the midpoint, minimize output, and rely on runner continuation if context overflow occurs.
|
|
176
|
+
7. If the refactor involves multiple files: update durable checkpoints/artifacts at the midpoint, minimize output, and rely on runner continuation if context overflow occurs.
|
|
189
177
|
8. After all tasks complete, run the full test suite one final time
|
|
190
178
|
"
|
|
191
179
|
- **Wait for Dev to return**
|
|
@@ -204,7 +192,7 @@ Evidence must cover affected UI render, primary user interactions, behavior-sens
|
|
|
204
192
|
Prompt: "Read {{REVIEWER_SUBAGENT_PATH}}. For refactor {{REFACTOR_ID}}:
|
|
205
193
|
1. Read `.prizmkit/refactor/{{REFACTOR_ID}}/spec.md` for goals and behavior preservation contracts
|
|
206
194
|
2. Read `.prizmkit/refactor/{{REFACTOR_ID}}/plan.md` for architecture decisions and completed tasks
|
|
207
|
-
3. Run `/prizmkit-code-review` with artifact_dir=.prizmkit/refactor/{{REFACTOR_ID}}/. The skill runs an internal review-fix loop (Reviewer → filter →
|
|
195
|
+
3. Run `/prizmkit-code-review` with artifact_dir=.prizmkit/refactor/{{REFACTOR_ID}}/. The skill runs an internal review-fix loop (Reviewer → filter → orchestrator fix, max 3 rounds) and writes review-report.md.
|
|
208
196
|
4. Run full test suite and verify ALL tests pass
|
|
209
197
|
|
|
210
198
|
{{IF_BROWSER_INTERACTION}}
|
|
@@ -224,8 +212,8 @@ Evidence must cover affected UI render, primary user interactions, behavior-sens
|
|
|
224
212
|
```
|
|
225
213
|
If GATE:MISSING:
|
|
226
214
|
- Do not enter an unbounded report-repair loop and do not repeatedly re-spawn Reviewer.
|
|
227
|
-
- Perform one bounded status check; retry at most once: inspect the Reviewer output, `review-report.md` path, and any internal Reviewer
|
|
228
|
-
- If the missing report is caused by team/config/lock errors from the Reviewer or internal Reviewer
|
|
215
|
+
- Perform one bounded status check; retry at most once: inspect the Reviewer output, `review-report.md` path, and any internal Reviewer agent spawn messages from `/prizmkit-code-review`.
|
|
216
|
+
- If the missing report is caused by team/config/lock errors from the Reviewer or internal Reviewer agent spawn, retry the Reviewer agent at most once only if it appears transient.
|
|
229
217
|
- If the report is still missing after that single check/retry, write `.prizmkit/refactor/{{REFACTOR_ID}}/failure-log.md` with the spawn/skill error and last observable state, then either perform a safe inline fallback review (spec/plan/diff/tests → write `review-report.md` with `## Verdict`) or stop with a clear recovery failure.
|
|
230
218
|
|
|
231
219
|
Read `review-report.md` and check the Verdict:
|
|
@@ -4,63 +4,29 @@ A checkpoint file tracks your progress through this workflow:
|
|
|
4
4
|
|
|
5
5
|
**Path**: `{{CHECKPOINT_PATH}}`
|
|
6
6
|
|
|
7
|
-
###
|
|
8
|
-
|
|
9
|
-
1. **Before each skill**: Read `workflow-checkpoint.json`, verify the previous step has `status: "completed"` or `status: "skipped"`. If it is still `"pending"` or `"in_progress"`, you MUST complete it first before moving on.
|
|
10
|
-
|
|
11
|
-
2. **Starting a skill**: Use the update script to set the current step to `status: "in_progress"`.
|
|
12
|
-
|
|
13
|
-
3. **After each skill completes**: Use the update script to set the current step to `status: "completed"`.
|
|
14
|
-
|
|
15
|
-
4. **On failure**: Use the update script to set the step to `status: "failed"` and continue to the next step if possible, or halt and write failure-log.md.
|
|
7
|
+
### Checkpoint Update Helper
|
|
16
8
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
### Checkpoint Update Pattern
|
|
20
|
-
|
|
21
|
-
**IMPORTANT: NEVER hand-write or edit `workflow-checkpoint.json` directly. Always use the update script.**
|
|
22
|
-
|
|
23
|
-
After completing each skill, run:
|
|
9
|
+
Use this helper to update checkpoint status. Do not hand-edit `workflow-checkpoint.json` directly.
|
|
24
10
|
|
|
25
11
|
```bash
|
|
26
|
-
python3
|
|
12
|
+
python3 .prizmkit/dev-pipeline/scripts/update-checkpoint.py \
|
|
27
13
|
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
28
|
-
--step <
|
|
29
|
-
--status completed
|
|
14
|
+
--step <step-id-or-skill-name> \
|
|
15
|
+
--status <in_progress|completed|failed|skipped> \
|
|
16
|
+
--note "<optional note>"
|
|
30
17
|
```
|
|
31
18
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
35
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
36
|
-
--step prizmkit-implement \
|
|
37
|
-
--status completed
|
|
38
|
-
```
|
|
19
|
+
- Use the step `skill` value such as `prizmkit-implement`, or the step id such as `S04`.
|
|
20
|
+
- Omit `--note` when there is no useful failure or handoff note.
|
|
39
21
|
|
|
40
|
-
|
|
41
|
-
```bash
|
|
42
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
43
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
44
|
-
--step <NEXT_SKILL_NAME> \
|
|
45
|
-
--status in_progress
|
|
46
|
-
```
|
|
22
|
+
### Rules
|
|
47
23
|
|
|
48
|
-
|
|
49
|
-
```bash
|
|
50
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
51
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
52
|
-
--step <SKILL_NAME> \
|
|
53
|
-
--status failed \
|
|
54
|
-
--note "brief failure reason"
|
|
55
|
-
```
|
|
24
|
+
1. **Before each skill**: Read `workflow-checkpoint.json`, verify the previous step has `status: "completed"` or `status: "skipped"`. If it is still `"pending"` or `"in_progress"`, complete it first before moving on.
|
|
56
25
|
|
|
57
|
-
|
|
26
|
+
2. **Starting a skill**: Use the checkpoint update helper to mark the current step as `status: "in_progress"`.
|
|
58
27
|
|
|
59
|
-
|
|
28
|
+
3. **After each skill completes**: Use the checkpoint update helper to mark the current step as `status: "completed"`.
|
|
60
29
|
|
|
61
|
-
**
|
|
30
|
+
4. **On failure**: Use the checkpoint update helper to mark the step as `status: "failed"`, write `failure-log.md` with the reason, and continue only when the workflow rules allow it.
|
|
62
31
|
|
|
63
|
-
|
|
64
|
-
2. Start from the first `"pending"` or `"in_progress"` step
|
|
65
|
-
3. If `failure-log.md` exists, read it for diagnostic context (why the previous session failed, what approach to try differently) — but do NOT use it to determine which step to resume from
|
|
66
|
-
4. If `workflow-checkpoint.json` is missing or corrupted, fall back to `failure-log.md` + the resume phase as the legacy mechanism
|
|
32
|
+
5. **On session exit**: The checkpoint file reflects your actual progress. Do NOT manually set future steps to `"completed"`.
|
|
@@ -6,18 +6,12 @@ You are running in **headless non-interactive mode** with a FINITE context windo
|
|
|
6
6
|
|
|
7
7
|
1. **context-snapshot.md is your single source of truth** — After it is built, ALWAYS read context-snapshot.md instead of re-reading individual source files
|
|
8
8
|
2. **Never re-read your own writes** — After you create/modify a file, do NOT read it back to verify. Trust your write was correct.
|
|
9
|
-
3. **
|
|
10
|
-
4. **
|
|
11
|
-
5. **
|
|
12
|
-
6. **
|
|
13
|
-
7. **
|
|
14
|
-
8. **
|
|
15
|
-
- Identify and mentally tag all files created by the tool as "scaffold files"
|
|
16
|
-
- Record the list of scaffold-generated files in context-snapshot.md under a `### Scaffold Files (do not re-read)` section
|
|
17
|
-
- **NEVER re-read scaffold files** after initial creation. Their content is standard boilerplate — you already know what they contain from the tool that generated them
|
|
18
|
-
- If you need to modify a scaffold file, make the edit directly without reading it first (you know the standard template content)
|
|
19
|
-
- This applies equally to `node_modules/`, `package-lock.json`, generated config files (`tsconfig.json`, `vite.config.ts`, `tailwind.config.js`, `.eslintrc`, etc.) produced by init commands
|
|
20
|
-
- When passing context to subagents, explicitly tell them which files are scaffold-generated so they skip reading them too
|
|
9
|
+
3. **Never re-read unmodified files** — Once you have read a file into context, do NOT read it again unless it was modified by an Edit/Write operation after your last read. Use `grep -n '<pattern>' <file>` or `sed -n '<start>,<end>p' <file>` for targeted line lookups instead of full-file Read. Before issuing a Read, ask yourself: "Have I read this file before, and has it changed since?" If the answer is "no, it hasn't changed" — do NOT read it. This applies to all files including those summarized in context-snapshot.md Section 4. Subagents (Critic, Reviewer) must receive context-snapshot.md and rely on it rather than independently re-reading the same files the orchestrator already read.
|
|
10
|
+
4. **Stay focused** — Do NOT explore code unrelated to this feature. No curiosity-driven reads.
|
|
11
|
+
5. **One task at a time** — Complete and test one task before starting the next.
|
|
12
|
+
6. **Minimize tool output** — Never load full command output into context. First capture to a temp file (`cmd 2>&1 | tee /tmp/out.txt | tail -20`), then scan the head/tail to identify relevant fields, and use targeted filtering (`grep`, `sed`, `awk`) to extract only the information needed for the current task. Only read the filtered result — never the raw full output.
|
|
13
|
+
7. **No intermediate commits** — Do NOT run `git add`/`git commit` during implementation phases. All changes are committed once at the end via `/prizmkit-committer`.
|
|
14
|
+
8. **Capture test output once** — When running test suites during the post-review gate, capture with `<test-command> 2>&1 | tee /tmp/test-out.txt | tail -20`. Then grep `/tmp/test-out.txt` for details. Never re-run the suite just to apply a different filter.
|
|
21
15
|
9. **Package version verification (HARD CONSTRAINT — BLOCKING)** — Before writing ANY dependency version in `package.json`, `requirements.txt`, `Cargo.toml`, `go.mod`, `Gemfile`, `pyproject.toml`, or any other dependency manifest:
|
|
22
16
|
- You MUST verify the real version exists by querying the package registry first:
|
|
23
17
|
- npm/Node.js: `npm view <package> dist-tags.latest 2>/dev/null`
|
|
@@ -32,5 +26,4 @@ You are running in **headless non-interactive mode** with a FINITE context windo
|
|
|
32
26
|
- **This is a BLOCKING gate**: do NOT run `npm install` / `pip install` / `cargo build` / `go mod tidy` until ALL versions in the manifest have been verified or use open constraints
|
|
33
27
|
- Batch version lookups: query multiple packages in parallel to save time (e.g., run multiple `npm view` commands concurrently)
|
|
34
28
|
10. **Build artifact hygiene** — After any build/compile command (`go build`, `npm run build`, `tsc`, etc.), ensure the output binary, build directory, generated bundle, or cache directory is ignored by git before the commit phase. Never commit compiled binaries, build output, or generated artifacts.
|
|
35
|
-
11. **
|
|
36
|
-
12. **Read offset safety (BLOCKING)** — If Read returns "shorter than offset"/"File is empty"/"Wasted call" — do NOT retry same offset. Run `wc -l <file>` to get real line count, then `sed -n` for exact range. 2 consecutive offset errors → STOP Reading that file. Never guess offsets — `grep -n '<anchor>'` first.
|
|
29
|
+
11. **Read offset safety (BLOCKING)** — If Read returns "shorter than offset"/"File is empty"/"Wasted call" — do NOT retry same offset. Run `wc -l <file>` to get real line count, then `sed -n '<start>,<end>p' <file>` for exact range. 2 consecutive offset errors → STOP Reading that file. Never guess offsets — `grep -n '<anchor>'` first.
|
|
@@ -141,10 +141,3 @@ Append results to `context-snapshot.md`:
|
|
|
141
141
|
If verification fails, log the failure details but continue to commit. Failures do NOT block the commit, but you MUST attempt verification and MUST clean up the dev server.
|
|
142
142
|
|
|
143
143
|
|
|
144
|
-
**Checkpoint update**: Run the update script to set step `browser-verification` to `"completed"`:
|
|
145
|
-
```bash
|
|
146
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
147
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
148
|
-
--step browser-verification \
|
|
149
|
-
--status completed
|
|
150
|
-
```
|
|
@@ -121,10 +121,3 @@ Append results to `context-snapshot.md`:
|
|
|
121
121
|
If verification fails, log the failure details but continue to commit. Failures do NOT block the commit, but you MUST attempt verification and MUST clean up the dev server.
|
|
122
122
|
|
|
123
123
|
|
|
124
|
-
**Checkpoint update**: Run the update script to set step `browser-verification` to `"completed"`:
|
|
125
|
-
```bash
|
|
126
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
127
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
128
|
-
--step browser-verification \
|
|
129
|
-
--status completed
|
|
130
|
-
```
|
|
@@ -143,10 +143,3 @@ Browser cleanup: confirmed
|
|
|
143
143
|
If verification fails, log the failure details but continue to commit. Failures do NOT block the commit, but you MUST attempt verification and MUST clean up the dev server.
|
|
144
144
|
|
|
145
145
|
|
|
146
|
-
**Checkpoint update**: Run the update script to set step `browser-verification` to `"completed"`:
|
|
147
|
-
```bash
|
|
148
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
149
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
150
|
-
--step browser-verification \
|
|
151
|
-
--status completed
|
|
152
|
-
```
|
|
@@ -55,20 +55,6 @@ Rules for writing completion notes:
|
|
|
55
55
|
- If this feature has no downstream dependents, still write the summary (it serves as documentation)
|
|
56
56
|
|
|
57
57
|
|
|
58
|
-
**Checkpoint update**: After `/prizmkit-retrospective` completes, run the update script to set step `prizmkit-retrospective` to `"completed"`:
|
|
59
|
-
```bash
|
|
60
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
61
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
62
|
-
--step prizmkit-retrospective \
|
|
63
|
-
--status completed
|
|
64
|
-
```
|
|
65
|
-
After `/prizmkit-committer` completes, set step `prizmkit-committer` to `"completed"`:
|
|
66
|
-
```bash
|
|
67
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
68
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
69
|
-
--step prizmkit-committer \
|
|
70
|
-
--status completed
|
|
71
|
-
```
|
|
72
58
|
|
|
73
59
|
### TERMINAL STOP — Commit Completed
|
|
74
60
|
|
|
@@ -48,20 +48,6 @@ Rules for writing completion notes:
|
|
|
48
48
|
- If this feature has no downstream dependents, still write the summary (it serves as documentation)
|
|
49
49
|
|
|
50
50
|
|
|
51
|
-
**Checkpoint update**: After `/prizmkit-retrospective` completes, run the update script to set step `prizmkit-retrospective` to `"completed"`:
|
|
52
|
-
```bash
|
|
53
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
54
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
55
|
-
--step prizmkit-retrospective \
|
|
56
|
-
--status completed
|
|
57
|
-
```
|
|
58
|
-
After `/prizmkit-committer` completes, set step `prizmkit-committer` to `"completed"`:
|
|
59
|
-
```bash
|
|
60
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
61
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
62
|
-
--step prizmkit-committer \
|
|
63
|
-
--status completed
|
|
64
|
-
```
|
|
65
51
|
|
|
66
52
|
### TERMINAL STOP — Commit Completed
|
|
67
53
|
|
|
@@ -22,10 +22,3 @@
|
|
|
22
22
|
- <trap entries extracted from L1/L2 docs>
|
|
23
23
|
|
|
24
24
|
|
|
25
|
-
**Checkpoint update**: Run the update script to set step `context-snapshot` to `"completed"`:
|
|
26
|
-
```bash
|
|
27
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
28
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
29
|
-
--step context-snapshot \
|
|
30
|
-
--status completed
|
|
31
|
-
```
|
|
@@ -10,5 +10,3 @@ If MISSING — build it now:
|
|
|
10
10
|
3. Write `.prizmkit/specs/{{FEATURE_SLUG}}/context-snapshot.md`:
|
|
11
11
|
- **Section 1 — Feature Brief**: 2-3 line feature description from Task Contract
|
|
12
12
|
- **Section 2 — Verification Gates**: gate checklist from Task Contract
|
|
13
|
-
- **Section 3 — Key TRAPS & RULES**: extract only relevant TRAPS/RULES from prizm-docs that apply to files in this scope. Do NOT copy full L0/L1/L2 content.
|
|
14
|
-
- **Section 4 — File Manifest**: file path, why needed, key interfaces. Format: Files to Modify | Files for Reference tables.
|
|
@@ -10,10 +10,3 @@
|
|
|
10
10
|
|------|-----------|----------------|
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
**Checkpoint update**: Run the update script to set step `context-snapshot` to `"completed"`:
|
|
14
|
-
```bash
|
|
15
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
16
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
17
|
-
--step context-snapshot \
|
|
18
|
-
--status completed
|
|
19
|
-
```
|
|
@@ -26,13 +26,18 @@ If CRITIC:MISSING — skip this phase entirely and proceed. Log: "Critic agent n
|
|
|
26
26
|
| subagent_type | prizm-dev-team-critic |
|
|
27
27
|
| mode | plan |
|
|
28
28
|
| run_in_background | false |
|
|
29
|
+
| isolation | default/no worktree; do not request worktree isolation |
|
|
30
|
+
|
|
31
|
+
No-worktree boundary: this prevents AI tool-created `.claude/worktrees/...` subagent worktrees. It does not disable PrizmKit pipeline-managed linked git worktrees under `.prizmkit/state/worktrees/...`, which are controlled separately by `USE_WORKTREE`.
|
|
29
32
|
|
|
30
33
|
**Prompt**:
|
|
31
34
|
> {{AGENT_PROMPT_CRITIC_PLAN_CHALLENGE}}
|
|
32
35
|
|
|
33
36
|
**If {{CRITIC_COUNT}} = 3 → Multi-Critic Voting** (skip Single Critic above):
|
|
34
37
|
|
|
35
|
-
Spawn 3 Critic agents in PARALLEL (issue all 3 Agent tool calls in the SAME message turn). Do NOT wait for one before spawning the next. Each with mode="plan", run_in_background=false
|
|
38
|
+
Spawn 3 Critic agents in PARALLEL (issue all 3 Agent tool calls in the SAME message turn). Do NOT wait for one before spawning the next. Each with mode="plan", run_in_background=false, and default/no worktree isolation; do not request worktree isolation.
|
|
39
|
+
|
|
40
|
+
No-worktree boundary: default/no worktree isolation prevents AI tool-created `.claude/worktrees/...` subagent worktrees. It does not disable PrizmKit pipeline-managed linked git worktrees under `.prizmkit/state/worktrees/...`, which are controlled separately by `USE_WORKTREE`.
|
|
36
41
|
|
|
37
42
|
Critic-A prompt (append to base prompt above):
|
|
38
43
|
> "**Focus Lens: Architecture & Scalability.** Prioritize: architectural pattern fit, scalability implications, over-engineering risks, component boundary design.
|
|
@@ -54,10 +59,3 @@ After all critics return, read all 3 reports:
|
|
|
54
59
|
**CP-2.5**: Plan challenges reviewed and resolved.
|
|
55
60
|
|
|
56
61
|
|
|
57
|
-
**Checkpoint update**: Run the update script to set step `critic-plan-review` to `"completed"`:
|
|
58
|
-
```bash
|
|
59
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
60
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
61
|
-
--step critic-plan-review \
|
|
62
|
-
--status completed
|
|
63
|
-
```
|
|
@@ -12,6 +12,9 @@ If CRITIC:MISSING — skip this phase entirely and proceed. Log: "Critic agent n
|
|
|
12
12
|
| subagent_type | prizm-dev-team-critic |
|
|
13
13
|
| mode | plan |
|
|
14
14
|
| run_in_background | false |
|
|
15
|
+
| isolation | default/no worktree; do not request worktree isolation |
|
|
16
|
+
|
|
17
|
+
No-worktree boundary: this prevents AI tool-created `.claude/worktrees/...` subagent worktrees. It does not disable PrizmKit pipeline-managed linked git worktrees under `.prizmkit/state/worktrees/...`, which are controlled separately by `USE_WORKTREE`.
|
|
15
18
|
|
|
16
19
|
**Prompt**:
|
|
17
20
|
> {{AGENT_PROMPT_CRITIC_PLAN_CHALLENGE}}
|
|
@@ -33,10 +36,3 @@ Wait for Critic to return.
|
|
|
33
36
|
**CP-2.5**: Plan challenges reviewed and resolved.
|
|
34
37
|
|
|
35
38
|
|
|
36
|
-
**Checkpoint update**: Run the update script to set step `critic-plan-review` to `"completed"`:
|
|
37
|
-
```bash
|
|
38
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
39
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
40
|
-
--step critic-plan-review \
|
|
41
|
-
--status completed
|
|
42
|
-
```
|
|
@@ -11,12 +11,7 @@ grep -c '^\- \[ \]' .prizmkit/specs/{{FEATURE_SLUG}}/plan.md 2>/dev/null || true
|
|
|
11
11
|
|
|
12
12
|
**Build artifacts rule**: After any build/compile command, ensure output is in `.gitignore`. Never commit binaries/build output.
|
|
13
13
|
|
|
14
|
-
**3a.**
|
|
15
|
-
```bash
|
|
16
|
-
($TEST_CMD) 2>&1 | tee /tmp/test-baseline.txt | tail -20
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
**3b.** Run `/prizmkit-implement` directly — you (the orchestrator) execute the full cycle:
|
|
14
|
+
**3a.** Run `/prizmkit-implement` directly — you (the orchestrator) execute the full cycle:
|
|
20
15
|
- Read plan.md Tasks from `.prizmkit/specs/{{FEATURE_SLUG}}/`
|
|
21
16
|
- Use context-snapshot.md Section 4 File Manifest for targeted reads — do NOT re-read files already summarized there
|
|
22
17
|
- Implements task-by-task, marking each `[x]` immediately
|
|
@@ -25,12 +20,12 @@ grep -c '^\- \[ \]' .prizmkit/specs/{{FEATURE_SLUG}}/plan.md 2>/dev/null || true
|
|
|
25
20
|
- Preserves Reviewer/Critic behavior; only the top-level implementation Dev handoff is removed
|
|
26
21
|
- If plan.md has >5 tasks: update checkpoints after every 3 tasks
|
|
27
22
|
|
|
28
|
-
**
|
|
23
|
+
**3b. Focused checks only (no test gate here)**:
|
|
29
24
|
- During implementation, do not run mandatory periodic or full-suite tests.
|
|
30
25
|
- If a tiny targeted check is needed to understand a local failure, run only the smallest relevant command and capture output to `/tmp/test-out.txt`.
|
|
31
26
|
- The scoped feature test gate runs after code review; do not declare implementation success based on an early full-suite run.
|
|
32
27
|
|
|
33
|
-
**
|
|
28
|
+
**3c. Verification Gate Self-Check (BLOCKING — before declaring implement done)**:
|
|
34
29
|
For each Verification Gate from the Task Contract, write one evidence line to Implementation Log:
|
|
35
30
|
```
|
|
36
31
|
### Gate Evidence
|
|
@@ -38,7 +33,7 @@ For each Verification Gate from the Task Contract, write one evidence line to Im
|
|
|
38
33
|
- [ ] G3: <gate text> — BLOCKED: <reason> ← no evidence = BLOCKED, not success
|
|
39
34
|
```
|
|
40
35
|
|
|
41
|
-
**
|
|
36
|
+
**3d.** Append `## Implementation Log` (with Gate Evidence) to `context-snapshot.md`:
|
|
42
37
|
- files changed/created
|
|
43
38
|
- key decisions
|
|
44
39
|
- deviations from plan
|
|
@@ -48,10 +43,3 @@ For each Verification Gate from the Task Contract, write one evidence line to Im
|
|
|
48
43
|
|
|
49
44
|
**CP-2**: All tasks `[x]`, Implementation Log written with Gate Evidence, and blocked gates documented in `failure-log.md`. Test execution is deferred until after code review.
|
|
50
45
|
|
|
51
|
-
**Checkpoint update**:
|
|
52
|
-
```bash
|
|
53
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
54
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
55
|
-
--step prizmkit-implement \
|
|
56
|
-
--status completed
|
|
57
|
-
```
|
|
@@ -11,13 +11,7 @@ grep -c '^\- \[ \]' .prizmkit/specs/{{FEATURE_SLUG}}/plan.md 2>/dev/null || true
|
|
|
11
11
|
|
|
12
12
|
**Build artifacts rule**: After any build/compile command, ensure output is in `.gitignore`. Never commit binaries/build output.
|
|
13
13
|
|
|
14
|
-
**3a.**
|
|
15
|
-
```bash
|
|
16
|
-
($TEST_CMD) 2>&1 | tee /tmp/test-baseline.txt | tail -20
|
|
17
|
-
```
|
|
18
|
-
Save pre-existing failing tests as `BASELINE_FAILURES`.
|
|
19
|
-
|
|
20
|
-
**3b.** Run `/prizmkit-implement` directly — you (the orchestrator) execute the full cycle:
|
|
14
|
+
**3a.** Run `/prizmkit-implement` directly — you (the orchestrator) execute the full cycle:
|
|
21
15
|
- Read plan.md Tasks from `.prizmkit/specs/{{FEATURE_SLUG}}/`
|
|
22
16
|
- Use context-snapshot.md Section 4 File Manifest for targeted reads — do NOT re-read files already summarized there
|
|
23
17
|
- Implements task-by-task, marking each `[x]` immediately
|
|
@@ -26,12 +20,12 @@ Save pre-existing failing tests as `BASELINE_FAILURES`.
|
|
|
26
20
|
- Preserves Reviewer/Critic behavior; only the top-level implementation Dev handoff is removed
|
|
27
21
|
- If plan.md has >5 tasks: update checkpoints after every 3 tasks
|
|
28
22
|
|
|
29
|
-
**
|
|
23
|
+
**3b. Focused checks only (no test gate here)**:
|
|
30
24
|
- During implementation, do not run mandatory periodic or full-suite tests.
|
|
31
25
|
- If a tiny targeted check is needed to understand a local failure, run only the smallest relevant command and capture output to `/tmp/test-out.txt`.
|
|
32
26
|
- The scoped feature test gate runs after code review; do not declare implementation success based on an early full-suite run.
|
|
33
27
|
|
|
34
|
-
**
|
|
28
|
+
**3c. Verification Gate Self-Check (BLOCKING — before declaring implement done)**:
|
|
35
29
|
For each Verification Gate from the Task Contract, write one evidence line to Implementation Log:
|
|
36
30
|
```
|
|
37
31
|
### Gate Evidence
|
|
@@ -39,7 +33,7 @@ For each Verification Gate from the Task Contract, write one evidence line to Im
|
|
|
39
33
|
- [ ] G3: <gate text> — BLOCKED: <reason> ← no evidence = BLOCKED, not success
|
|
40
34
|
```
|
|
41
35
|
|
|
42
|
-
**
|
|
36
|
+
**3d.** Append `## Implementation Log` (with Gate Evidence) to `context-snapshot.md`:
|
|
43
37
|
- files changed/created
|
|
44
38
|
- key decisions
|
|
45
39
|
- deviations from plan
|
|
@@ -49,10 +43,3 @@ For each Verification Gate from the Task Contract, write one evidence line to Im
|
|
|
49
43
|
|
|
50
44
|
**CP-2**: All tasks `[x]`, Implementation Log written with Gate Evidence, and blocked gates documented in `failure-log.md`. Test execution is deferred until after code review.
|
|
51
45
|
|
|
52
|
-
**Checkpoint update**:
|
|
53
|
-
```bash
|
|
54
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
55
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
56
|
-
--step prizmkit-implement \
|
|
57
|
-
--status completed
|
|
58
|
-
```
|
|
@@ -21,10 +21,3 @@
|
|
|
21
21
|
**CP-2**: Implementation may proceed only when all tasks are `[x]` and blocked gates are documented in `failure-log.md`. Test execution is deferred until after code review.
|
|
22
22
|
|
|
23
23
|
|
|
24
|
-
**Checkpoint update**: Run the update script to set step `prizmkit-implement` to `"completed"`:
|
|
25
|
-
```bash
|
|
26
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
27
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
28
|
-
--step prizmkit-implement \
|
|
29
|
-
--status completed
|
|
30
|
-
```
|
|
@@ -6,22 +6,15 @@ ls .prizmkit/specs/{{FEATURE_SLUG}}/plan.md 2>/dev/null
|
|
|
6
6
|
|
|
7
7
|
If missing, run `/prizmkit-plan` with `artifact_dir=.prizmkit/specs/{{FEATURE_SLUG}}/` to generate `plan.md`:
|
|
8
8
|
- The plan.md should include: architecture — components, interfaces, data flow, files to create/modify, testing approach, and a Tasks section with `[ ]` checkboxes ordered by dependency.
|
|
9
|
-
- Resolve
|
|
9
|
+
- Resolve uncertain requirements from the feature description, existing code, and conservative existing-project patterns.
|
|
10
10
|
|
|
11
11
|
**Database Design Gate** (if feature involves data persistence — new tables, schema changes, new entities):
|
|
12
12
|
Before proceeding past CP-1, verify:
|
|
13
13
|
1. Plan.md Data Model section references existing schema/model files (scan for `*.prisma`, `*.sql`, `migrations/`, `models/`, `*.entity.*` files; read them if not already in context-snapshot)
|
|
14
14
|
2. All new tables/fields follow existing naming conventions, ID strategy, timestamp patterns, and constraint style
|
|
15
|
-
3. No
|
|
15
|
+
3. No unresolved data model uncertainty remains in the Data Model section — resolve by reading existing code and making a conservative choice that matches existing patterns. Document the resolution in plan.md.
|
|
16
16
|
4. If a DB design decision genuinely cannot be resolved from existing code alone, document the assumption made and flag it in the Implementation Log for user review.
|
|
17
17
|
|
|
18
18
|
**CP-1**: plan.md exists with Tasks section.
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
**Checkpoint update**: Run the update script to set step `prizmkit-plan` to `"completed"`:
|
|
22
|
-
```bash
|
|
23
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
24
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
25
|
-
--step prizmkit-plan \
|
|
26
|
-
--status completed
|
|
27
|
-
```
|
|
@@ -7,7 +7,7 @@ ls .prizmkit/specs/{{FEATURE_SLUG}}/ 2>/dev/null
|
|
|
7
7
|
If plan.md missing, run `/prizmkit-plan` with `artifact_dir=.prizmkit/specs/{{FEATURE_SLUG}}/`:
|
|
8
8
|
- Pass the Objective and Verification Gates from the Task Contract as input
|
|
9
9
|
- The plan.md should include: key components, data flow, files to create/modify, and a Tasks section with `[ ]` checkboxes (each task = one implementable unit). Keep under 80 lines.
|
|
10
|
-
- Resolve
|
|
10
|
+
- Resolve uncertain requirements from the feature description, existing code, and conservative existing-project patterns.
|
|
11
11
|
|
|
12
12
|
**Database Design Gate** (if feature involves data persistence — new tables, schema changes, new entities):
|
|
13
13
|
Before proceeding past CP-1:
|
|
@@ -18,10 +18,3 @@ Before proceeding past CP-1:
|
|
|
18
18
|
**CP-1**: plan.md exists with Tasks section.
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
**Checkpoint update**: Run the update script to set step `prizmkit-plan` to `"completed"`:
|
|
22
|
-
```bash
|
|
23
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
24
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
25
|
-
--step prizmkit-plan \
|
|
26
|
-
--status completed
|
|
27
|
-
```
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
### Scoped Feature Test Gate — PrizmKit Test
|
|
2
2
|
|
|
3
|
-
**Goal**: After code review completes, generate and verify tests for this feature's changed scope
|
|
3
|
+
**Goal**: After code review completes, generate and verify tests for this feature's changed scope through the `/prizmkit-test` skill.
|
|
4
4
|
|
|
5
|
-
Create a
|
|
5
|
+
Create a current-run marker immediately before invoking the skill:
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
mkdir -p .prizmkit/specs/{{FEATURE_SLUG}}
|
|
9
|
+
touch .prizmkit/specs/{{FEATURE_SLUG}}/.prizmkit-test-started
|
|
10
10
|
```
|
|
11
11
|
|
|
12
12
|
Run `/prizmkit-test` with the feature artifact directory:
|
|
@@ -23,17 +23,16 @@ Rules:
|
|
|
23
23
|
- If failures are baseline or unrelated to this feature, document them in the report and continue only when no in-scope failure remains unexplained.
|
|
24
24
|
|
|
25
25
|
**Gate Check — Test Report**:
|
|
26
|
-
After `/prizmkit-test` returns,
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
```
|
|
26
|
+
After `/prizmkit-test` returns, read `.prizmkit/specs/{{FEATURE_SLUG}}/test-report-path.txt` if it exists; otherwise locate the newest `.prizmkit/test/*/test-report.md` created by the current test run. Accept the report only when it states:
|
|
27
|
+
- `Scope` mode is `this-change`
|
|
28
|
+
- `Artifact Dir` matches `.prizmkit/specs/{{FEATURE_SLUG}}/`
|
|
29
|
+
- `Verdict` is `PASS`
|
|
30
|
+
- `Boundary Matrix` is present
|
|
31
|
+
- `Boundary Completion Gate` is present and reports `Boundary-missing: 0`, `Happy-path-only: 0`, and `Completion gate passed: yes`
|
|
32
|
+
- `Boundary Validation` is present and reports `Validator result: passed`
|
|
34
33
|
|
|
35
34
|
Gate outcomes:
|
|
36
|
-
- `
|
|
37
|
-
- `
|
|
38
|
-
- `
|
|
39
|
-
-
|
|
35
|
+
- `PASS` → ensure `.prizmkit/specs/{{FEATURE_SLUG}}/test-report-path.txt` points to the accepted report, append the report path and a 3-5 bullet summary to `context-snapshot.md` under `## PrizmKit Test Gate`, then proceed.
|
|
36
|
+
- `NEEDS_FIXES` → read the report's `In-Scope Failures`, fix the feature implementation or generated tests within this feature scope, rerun `/prizmkit-test`, and repeat the gate check. Do not proceed to retrospective/commit while the verdict is not `PASS`.
|
|
37
|
+
- `BLOCKED`, wrong mode, wrong artifact dir, unreadable report, stale scope, or boundary failure → write `.prizmkit/specs/{{FEATURE_SLUG}}/failure-log.md` with the scoped test failure and stop for recovery.
|
|
38
|
+
- Missing report → perform one bounded status check: inspect `/prizmkit-test` output and `.prizmkit/test/` for a report directory. If no current-run report exists, write `failure-log.md` and stop for recovery.
|
|
@@ -4,7 +4,7 @@ Review the completed implementation before the scoped feature test gate runs. Us
|
|
|
4
4
|
|
|
5
5
|
Run `/prizmkit-code-review` with `artifact_dir=.prizmkit/specs/{{FEATURE_SLUG}}/`.
|
|
6
6
|
|
|
7
|
-
The skill runs an internal review-fix loop (Reviewer Agent → filter →
|
|
7
|
+
The skill runs an internal review-fix loop (Reviewer Agent → filter → orchestrator fix, max 3 rounds) and writes `review-report.md` to the artifact directory.
|
|
8
8
|
|
|
9
9
|
**Gate Check — Review Report**:
|
|
10
10
|
After `/prizmkit-code-review` returns, verify the review report:
|
|
@@ -13,8 +13,8 @@ grep -q "## Verdict" .prizmkit/specs/{{FEATURE_SLUG}}/review-report.md && echo "
|
|
|
13
13
|
```
|
|
14
14
|
If GATE:MISSING:
|
|
15
15
|
- Do not re-run `/prizmkit-code-review` in an unbounded report-repair loop.
|
|
16
|
-
- Perform one bounded status check; retry at most once: inspect the skill output, `review-report.md` path, and any Reviewer
|
|
17
|
-
- If the missing report is caused by team/config/lock errors from the
|
|
16
|
+
- Perform one bounded status check; retry at most once: inspect the skill output, `review-report.md` path, and any Reviewer agent spawn messages.
|
|
17
|
+
- If the missing report is caused by team/config/lock errors from the Reviewer agent spawn or review skill error, retry `/prizmkit-code-review` at most once only if it appears transient.
|
|
18
18
|
- If the report is still missing after that single check/retry, write `failure-log.md` with the spawn/skill error and last observable state, then either perform a safe inline fallback review (spec/plan/diff/tests → write `review-report.md` with `## Verdict`) or stop with a clear recovery failure.
|
|
19
19
|
|
|
20
20
|
Read `review-report.md` and check the Verdict:
|
|
@@ -24,10 +24,3 @@ Read `review-report.md` and check the Verdict:
|
|
|
24
24
|
**CP-3**: Review complete, report written.
|
|
25
25
|
|
|
26
26
|
|
|
27
|
-
**Checkpoint update**: Run the update script to set step `prizmkit-code-review` to `"completed"`:
|
|
28
|
-
```bash
|
|
29
|
-
python3 $PIPELINE_DIR/scripts/update-checkpoint.py \
|
|
30
|
-
--checkpoint-path {{CHECKPOINT_PATH}} \
|
|
31
|
-
--step prizmkit-code-review \
|
|
32
|
-
--status completed
|
|
33
|
-
```
|