@sienklogic/plan-build-run 2.34.0 → 2.37.0
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/CHANGELOG.md +663 -0
- package/dashboard/public/css/command-center.css +152 -65
- package/dashboard/public/css/explorer.css +22 -41
- package/dashboard/public/css/layout.css +119 -1
- package/dashboard/public/css/tokens.css +13 -0
- package/dashboard/src/components/Layout.tsx +32 -6
- package/dashboard/src/components/explorer/tabs/PhasesTab.tsx +11 -1
- package/dashboard/src/components/explorer/tabs/TodosTab.tsx +18 -2
- package/dashboard/src/components/partials/AttentionPanel.tsx +7 -1
- package/dashboard/src/components/partials/CurrentPhaseCard.tsx +26 -24
- package/dashboard/src/components/partials/QuickActions.tsx +21 -11
- package/dashboard/src/components/partials/StatCardGrid.tsx +67 -0
- package/dashboard/src/components/partials/StatusHeader.tsx +1 -0
- package/dashboard/src/routes/command-center.routes.tsx +8 -7
- package/dashboard/src/routes/index.routes.tsx +32 -29
- package/package.json +2 -2
- package/plugins/copilot-pbr/agents/audit.agent.md +128 -16
- package/plugins/copilot-pbr/agents/codebase-mapper.agent.md +48 -1
- package/plugins/copilot-pbr/agents/debugger.agent.md +47 -1
- package/plugins/copilot-pbr/agents/executor.agent.md +152 -8
- package/plugins/copilot-pbr/agents/general.agent.md +46 -1
- package/plugins/copilot-pbr/agents/integration-checker.agent.md +52 -2
- package/plugins/copilot-pbr/agents/plan-checker.agent.md +50 -2
- package/plugins/copilot-pbr/agents/planner.agent.md +54 -1
- package/plugins/copilot-pbr/agents/researcher.agent.md +47 -2
- package/plugins/copilot-pbr/agents/synthesizer.agent.md +49 -1
- package/plugins/copilot-pbr/agents/verifier.agent.md +86 -2
- package/plugins/copilot-pbr/hooks/hooks.json +11 -0
- package/plugins/copilot-pbr/plugin.json +1 -1
- package/plugins/copilot-pbr/references/agent-contracts.md +27 -0
- package/plugins/copilot-pbr/references/checkpoints.md +32 -1
- package/plugins/copilot-pbr/references/context-quality-tiers.md +45 -0
- package/plugins/copilot-pbr/references/pbr-tools-cli.md +115 -0
- package/plugins/copilot-pbr/references/questioning.md +21 -1
- package/plugins/copilot-pbr/references/verification-patterns.md +52 -1
- package/plugins/copilot-pbr/skills/audit/SKILL.md +19 -3
- package/plugins/copilot-pbr/skills/begin/SKILL.md +57 -4
- package/plugins/copilot-pbr/skills/build/SKILL.md +39 -2
- package/plugins/copilot-pbr/skills/debug/SKILL.md +12 -1
- package/plugins/copilot-pbr/skills/explore/SKILL.md +13 -2
- package/plugins/copilot-pbr/skills/import/SKILL.md +26 -1
- package/plugins/copilot-pbr/skills/milestone/SKILL.md +15 -3
- package/plugins/copilot-pbr/skills/plan/SKILL.md +50 -0
- package/plugins/copilot-pbr/skills/quick/SKILL.md +21 -0
- package/plugins/copilot-pbr/skills/review/SKILL.md +45 -0
- package/plugins/copilot-pbr/skills/scan/SKILL.md +20 -0
- package/plugins/copilot-pbr/templates/SUMMARY-complex.md.tmpl +95 -0
- package/plugins/copilot-pbr/templates/SUMMARY-minimal.md.tmpl +48 -0
- package/plugins/cursor-pbr/.cursor-plugin/plugin.json +1 -1
- package/plugins/cursor-pbr/agents/audit.md +51 -5
- package/plugins/cursor-pbr/agents/codebase-mapper.md +48 -1
- package/plugins/cursor-pbr/agents/debugger.md +47 -1
- package/plugins/cursor-pbr/agents/executor.md +152 -8
- package/plugins/cursor-pbr/agents/general.md +46 -1
- package/plugins/cursor-pbr/agents/integration-checker.md +51 -1
- package/plugins/cursor-pbr/agents/plan-checker.md +49 -1
- package/plugins/cursor-pbr/agents/planner.md +54 -1
- package/plugins/cursor-pbr/agents/researcher.md +46 -1
- package/plugins/cursor-pbr/agents/synthesizer.md +49 -1
- package/plugins/cursor-pbr/agents/verifier.md +85 -1
- package/plugins/cursor-pbr/hooks/hooks.json +9 -0
- package/plugins/cursor-pbr/references/agent-contracts.md +27 -0
- package/plugins/cursor-pbr/references/checkpoints.md +32 -1
- package/plugins/cursor-pbr/references/context-quality-tiers.md +45 -0
- package/plugins/cursor-pbr/references/pbr-tools-cli.md +115 -0
- package/plugins/cursor-pbr/references/questioning.md +21 -1
- package/plugins/cursor-pbr/references/verification-patterns.md +52 -1
- package/plugins/cursor-pbr/skills/audit/SKILL.md +19 -3
- package/plugins/cursor-pbr/skills/begin/SKILL.md +57 -4
- package/plugins/cursor-pbr/skills/build/SKILL.md +37 -2
- package/plugins/cursor-pbr/skills/debug/SKILL.md +12 -1
- package/plugins/cursor-pbr/skills/explore/SKILL.md +13 -2
- package/plugins/cursor-pbr/skills/import/SKILL.md +26 -1
- package/plugins/cursor-pbr/skills/milestone/SKILL.md +15 -3
- package/plugins/cursor-pbr/skills/plan/SKILL.md +50 -0
- package/plugins/cursor-pbr/skills/quick/SKILL.md +21 -0
- package/plugins/cursor-pbr/skills/review/SKILL.md +45 -0
- package/plugins/cursor-pbr/skills/scan/SKILL.md +20 -0
- package/plugins/cursor-pbr/templates/SUMMARY-complex.md.tmpl +95 -0
- package/plugins/cursor-pbr/templates/SUMMARY-minimal.md.tmpl +48 -0
- package/plugins/pbr/.claude-plugin/plugin.json +1 -1
- package/plugins/pbr/agents/audit.md +44 -0
- package/plugins/pbr/agents/codebase-mapper.md +47 -0
- package/plugins/pbr/agents/debugger.md +46 -0
- package/plugins/pbr/agents/executor.md +150 -6
- package/plugins/pbr/agents/general.md +45 -0
- package/plugins/pbr/agents/integration-checker.md +50 -0
- package/plugins/pbr/agents/plan-checker.md +48 -0
- package/plugins/pbr/agents/planner.md +51 -0
- package/plugins/pbr/agents/researcher.md +45 -0
- package/plugins/pbr/agents/synthesizer.md +48 -0
- package/plugins/pbr/agents/verifier.md +84 -0
- package/plugins/pbr/hooks/hooks.json +9 -0
- package/plugins/pbr/references/agent-contracts.md +27 -0
- package/plugins/pbr/references/checkpoints.md +32 -0
- package/plugins/pbr/references/context-quality-tiers.md +45 -0
- package/plugins/pbr/references/pbr-tools-cli.md +115 -0
- package/plugins/pbr/references/questioning.md +21 -0
- package/plugins/pbr/references/verification-patterns.md +52 -0
- package/plugins/pbr/scripts/check-plan-format.js +13 -1
- package/plugins/pbr/scripts/check-state-sync.js +26 -7
- package/plugins/pbr/scripts/check-subagent-output.js +30 -2
- package/plugins/pbr/scripts/config-schema.json +11 -1
- package/plugins/pbr/scripts/context-bridge.js +259 -0
- package/plugins/pbr/scripts/lib/config.js +178 -0
- package/plugins/pbr/scripts/lib/core.js +578 -0
- package/plugins/pbr/scripts/lib/history.js +73 -0
- package/plugins/pbr/scripts/lib/init.js +166 -0
- package/plugins/pbr/scripts/lib/phase.js +364 -0
- package/plugins/pbr/scripts/lib/roadmap.js +175 -0
- package/plugins/pbr/scripts/lib/state.js +397 -0
- package/plugins/pbr/scripts/pbr-tools.js +346 -1310
- package/plugins/pbr/scripts/post-write-dispatch.js +5 -4
- package/plugins/pbr/scripts/pre-write-dispatch.js +1 -1
- package/plugins/pbr/scripts/progress-tracker.js +1 -1
- package/plugins/pbr/scripts/suggest-compact.js +1 -1
- package/plugins/pbr/scripts/track-context-budget.js +53 -2
- package/plugins/pbr/scripts/validate-task.js +20 -28
- package/plugins/pbr/skills/audit/SKILL.md +19 -3
- package/plugins/pbr/skills/begin/SKILL.md +48 -2
- package/plugins/pbr/skills/build/SKILL.md +39 -2
- package/plugins/pbr/skills/debug/SKILL.md +12 -1
- package/plugins/pbr/skills/debug/templates/continuation-prompt.md.tmpl +12 -1
- package/plugins/pbr/skills/debug/templates/initial-investigation-prompt.md.tmpl +12 -5
- package/plugins/pbr/skills/explore/SKILL.md +13 -2
- package/plugins/pbr/skills/import/SKILL.md +26 -1
- package/plugins/pbr/skills/milestone/SKILL.md +15 -3
- package/plugins/pbr/skills/plan/SKILL.md +52 -2
- package/plugins/pbr/skills/quick/SKILL.md +21 -0
- package/plugins/pbr/skills/review/SKILL.md +46 -0
- package/plugins/pbr/skills/scan/SKILL.md +20 -0
- package/plugins/pbr/templates/SUMMARY-complex.md.tmpl +95 -0
- package/plugins/pbr/templates/SUMMARY-minimal.md.tmpl +48 -0
|
@@ -226,6 +226,14 @@ For each researcher, construct the prompt by reading the template and filling in
|
|
|
226
226
|
|
|
227
227
|
Read `skills/begin/templates/researcher-prompt.md.tmpl` for the prompt structure.
|
|
228
228
|
|
|
229
|
+
**Prepend this block to the researcher prompt before sending:**
|
|
230
|
+
```
|
|
231
|
+
<files_to_read>
|
|
232
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
233
|
+
1. .planning/REQUIREMENTS.md — scoped requirements (if exists)
|
|
234
|
+
</files_to_read>
|
|
235
|
+
```
|
|
236
|
+
|
|
229
237
|
**Placeholders to fill:**
|
|
230
238
|
- `{project name from questioning}` — project name gathered in Step 2
|
|
231
239
|
- `{2-3 sentence description from questioning}` — project description from Step 2
|
|
@@ -268,6 +276,11 @@ Read `skills/begin/templates/researcher-prompt.md.tmpl` for the prompt structure
|
|
|
268
276
|
- When all complete: "All {N} researchers finished. Proceeding to synthesis."
|
|
269
277
|
- Wait for all to complete before proceeding
|
|
270
278
|
|
|
279
|
+
**After each researcher completes**, check the agent output for a completion marker:
|
|
280
|
+
- If `## RESEARCH COMPLETE` is present: researcher finished successfully, proceed
|
|
281
|
+
- If `## RESEARCH BLOCKED` is present: warn the user that research could not complete, ask if they want to proceed with limited context or stop
|
|
282
|
+
- If neither marker is present: warn that researcher may not have completed successfully, but proceed if output files exist on disk
|
|
283
|
+
|
|
271
284
|
---
|
|
272
285
|
|
|
273
286
|
### Step 6: Synthesis (delegated to agent)
|
|
@@ -284,12 +297,38 @@ Invoke the `@synthesizer` agent with the synthesis prompt.
|
|
|
284
297
|
|
|
285
298
|
Read `skills/begin/templates/synthesis-prompt.md.tmpl` for the prompt structure.
|
|
286
299
|
|
|
300
|
+
**Prepend this block to the synthesizer prompt before sending:**
|
|
301
|
+
```
|
|
302
|
+
<files_to_read>
|
|
303
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
304
|
+
1. .planning/research/*.md — all research output files from Step 5
|
|
305
|
+
</files_to_read>
|
|
306
|
+
```
|
|
307
|
+
|
|
287
308
|
**Placeholders to fill:**
|
|
288
309
|
- `{List all .planning/research/*.md files that were created}` — list the research files produced in Step 5
|
|
289
310
|
|
|
290
|
-
**After the synthesizer completes**,
|
|
311
|
+
**After the synthesizer completes**, check for completion markers in the Task() output:
|
|
312
|
+
|
|
313
|
+
- If `## SYNTHESIS COMPLETE` is present: proceed normally
|
|
314
|
+
- If `## SYNTHESIS BLOCKED` is present: warn the user and offer to proceed without synthesis:
|
|
315
|
+
```
|
|
316
|
+
⚠ Synthesizer reported BLOCKED: {reason from output}
|
|
317
|
+
Research files are still available individually in .planning/research/.
|
|
318
|
+
```
|
|
319
|
+
Use AskUserQuestion (pattern: yes-no from `skills/shared/gate-prompts.md`):
|
|
320
|
+
question: "Synthesis was blocked. Continue without synthesis?"
|
|
321
|
+
header: "Blocked"
|
|
322
|
+
options:
|
|
323
|
+
- label: "Yes" description: "Proceed to requirements — use individual research files"
|
|
324
|
+
- label: "No" description: "Stop and investigate"
|
|
325
|
+
- If "Yes": proceed to Step 7 without SUMMARY.md
|
|
326
|
+
- If "No": stop and suggest reviewing .planning/research/ files
|
|
327
|
+
- If neither marker is found: warn the user that the synthesizer may not have completed successfully, but proceed if SUMMARY.md exists on disk
|
|
328
|
+
|
|
329
|
+
If synthesis succeeded, display:
|
|
291
330
|
```
|
|
292
|
-
Research synthesis complete — see .planning/research/SUMMARY.md
|
|
331
|
+
✓ Research synthesis complete — see .planning/research/SUMMARY.md
|
|
293
332
|
```
|
|
294
333
|
|
|
295
334
|
---
|
|
@@ -353,12 +392,26 @@ Invoke the `@planner` agent in roadmap mode with the roadmap prompt.
|
|
|
353
392
|
|
|
354
393
|
Read `skills/begin/templates/roadmap-prompt.md.tmpl` for the prompt structure.
|
|
355
394
|
|
|
395
|
+
**Prepend this block to the roadmap planner prompt before sending:**
|
|
396
|
+
```
|
|
397
|
+
<files_to_read>
|
|
398
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
399
|
+
1. .planning/REQUIREMENTS.md — scoped requirements for phase planning
|
|
400
|
+
2. .planning/research/SUMMARY.md — research synthesis (if exists)
|
|
401
|
+
</files_to_read>
|
|
402
|
+
```
|
|
403
|
+
|
|
356
404
|
**Placeholders to fill:**
|
|
357
405
|
- `{project name}` — project name from Step 2
|
|
358
406
|
- `{description}` — project description from Step 2
|
|
359
407
|
- `{quick|standard|comprehensive}` — depth setting from Step 3
|
|
360
408
|
|
|
361
|
-
**After the planner completes
|
|
409
|
+
**After the planner completes**, check the agent output for a completion marker:
|
|
410
|
+
- If `## PLANNING COMPLETE` is present: planner finished successfully, proceed
|
|
411
|
+
- If `## PLANNING FAILED` is present: warn the user that planning could not complete, display the reason, and offer to retry or abort
|
|
412
|
+
- If neither marker is present: warn that planner may not have completed successfully, but proceed if ROADMAP.md exists on disk
|
|
413
|
+
|
|
414
|
+
- **Spot-check:** Verify `.planning/ROADMAP.md` exists on disk using Glob before attempting to read it. If missing, the planner may have failed silently — warn: `⚠ ROADMAP.md not found after planner completed. Re-spawning planner...` and retry once.
|
|
362
415
|
- Read `.planning/ROADMAP.md`
|
|
363
416
|
- Count the phases and milestones from the roadmap content
|
|
364
417
|
- Display:
|
|
@@ -505,7 +558,7 @@ Delete `.planning/.active-skill` if it exists. This must happen on all paths (su
|
|
|
505
558
|
|
|
506
559
|
After all steps complete, present the final summary using the stage banner format from Read `references/ui-formatting.md`:
|
|
507
560
|
|
|
508
|
-
Display the `PROJECT INITIALIZED
|
|
561
|
+
Display the `PROJECT INITIALIZED ✓` banner with project name, core value, phase list, and requirement counts. Then display the "Next Up" block (see § "Next Up Block" in ui-formatting.md) pointing to `/pbr:discuss 1` with alternatives: `/pbr:explore`, `/pbr:plan 1`, `/pbr:milestone new`, `/pbr:config`. Include `<sub>/clear first → fresh context window</sub>` inside the Next Up routing block.
|
|
509
562
|
|
|
510
563
|
---
|
|
511
564
|
|
|
@@ -132,6 +132,8 @@ Phase {N} depends on Phase {M}, which is not complete.
|
|
|
132
132
|
|
|
133
133
|
### Step 2: Load Config (inline)
|
|
134
134
|
|
|
135
|
+
**Init-first pattern**: When spawning agents, pass the output of `node plugins/pbr/scripts/pbr-tools.js init execute-phase {N}` as context rather than having the agent read multiple files separately. This reduces file reads and prevents context-loading failures.
|
|
136
|
+
|
|
135
137
|
Read configuration values needed for execution. See `skills/shared/config-loading.md` for the full field reference; build uses: `parallelization.*`, `features.goal_verification`, `features.inline_verify`, `features.atomic_commits`, `features.auto_continue`, `features.auto_advance`, `planning.commit_docs`, `git.commit_format`, `git.branching`.
|
|
136
138
|
|
|
137
139
|
---
|
|
@@ -301,6 +303,13 @@ Construct the executor prompt:
|
|
|
301
303
|
```
|
|
302
304
|
You are the executor agent. Execute the following plan.
|
|
303
305
|
|
|
306
|
+
<files_to_read>
|
|
307
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
308
|
+
1. .planning/phases/{NN}-{slug}/{plan_id}-PLAN.md — the full plan with task details
|
|
309
|
+
2. .planning/CONTEXT.md — locked decisions and constraints (if exists)
|
|
310
|
+
3. .planning/STATE.md — current project state and progress
|
|
311
|
+
</files_to_read>
|
|
312
|
+
|
|
304
313
|
<plan_summary>
|
|
305
314
|
[Inline only the ## Summary section from PLAN.md]
|
|
306
315
|
</plan_summary>
|
|
@@ -370,7 +379,9 @@ Task({
|
|
|
370
379
|
prompt: <executor prompt constructed above>
|
|
371
380
|
})
|
|
372
381
|
|
|
373
|
-
NOTE: The pbr:executor agent type auto-loads the agent definition.
|
|
382
|
+
NOTE: The pbr:executor agent type auto-loads the agent definition.
|
|
383
|
+
|
|
384
|
+
After executor completes, check for completion markers: `## PLAN COMPLETE`, `## PLAN FAILED`, or `## CHECKPOINT: {TYPE}`. Route accordingly — PLAN COMPLETE proceeds to next plan, PLAN FAILED triggers failure handling, CHECKPOINT triggers checkpoint flow. Do NOT inline it.
|
|
374
385
|
```
|
|
375
386
|
|
|
376
387
|
**Path resolution**: Before constructing the agent prompt, resolve `${PLUGIN_ROOT}` to its absolute path. Do not pass the variable literally in prompts — Task() contexts may not expand it. Use the resolved absolute path for any pbr-tools.js or template references included in the prompt.
|
|
@@ -406,6 +417,11 @@ After reading each SUMMARY, perform a lightweight verification:
|
|
|
406
417
|
- If ANY spot-check fails, warn the user before proceeding to the next wave:
|
|
407
418
|
"Spot-check failed for plan {id}: {detail}. Inspect before continuing?"
|
|
408
419
|
|
|
420
|
+
**Additional wave spot-checks:**
|
|
421
|
+
- Check for `## Self-Check: FAILED` in SUMMARY.md — if present, warn user before proceeding to next wave
|
|
422
|
+
- Between waves: verify no file conflicts from parallel executors (check `git status` for uncommitted changes)
|
|
423
|
+
- If ANY spot-check fails, present user with: **Retry this plan** / **Continue to next wave** / **Abort build**
|
|
424
|
+
|
|
409
425
|
**Read executor deviations:**
|
|
410
426
|
|
|
411
427
|
After all executors in the wave complete, read all SUMMARY frontmatter and:
|
|
@@ -448,7 +464,14 @@ For each plan that completed successfully in this wave:
|
|
|
448
464
|
Task({
|
|
449
465
|
agent_type: "pbr:verifier",
|
|
450
466
|
model: "haiku",
|
|
451
|
-
prompt: "
|
|
467
|
+
prompt: "<files_to_read>
|
|
468
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
469
|
+
1. .planning/phases/{NN}-{slug}/{plan_id}-PLAN.md — must-haves to verify against
|
|
470
|
+
2. .planning/phases/{NN}-{slug}/SUMMARY-{plan_id}.md — what the executor claims was built
|
|
471
|
+
3. .planning/phases/{NN}-{slug}/VERIFICATION.md — prior verification results (if exists)
|
|
472
|
+
</files_to_read>
|
|
473
|
+
|
|
474
|
+
Targeted inline verification for plan {plan_id}.
|
|
452
475
|
|
|
453
476
|
Verify ONLY these files: {comma-separated key_files list}
|
|
454
477
|
|
|
@@ -653,6 +676,8 @@ Task({
|
|
|
653
676
|
})
|
|
654
677
|
|
|
655
678
|
NOTE: The pbr:verifier agent type auto-loads the agent definition. Do NOT inline it.
|
|
679
|
+
|
|
680
|
+
After verifier completes, check for completion marker: `## VERIFICATION COMPLETE`. Read VERIFICATION.md frontmatter for status.
|
|
656
681
|
```
|
|
657
682
|
|
|
658
683
|
**Path resolution**: Before constructing the agent prompt, resolve `${PLUGIN_ROOT}` to its absolute path. Do not pass the variable literally in prompts — Task() contexts may not expand it. Use the resolved absolute path for any pbr-tools.js or template references included in the prompt.
|
|
@@ -661,6 +686,16 @@ NOTE: The pbr:verifier agent type auto-loads the agent definition. Do NOT inline
|
|
|
661
686
|
|
|
662
687
|
Use the same verifier prompt template as defined in `/pbr:review`: read `skills/review/templates/verifier-prompt.md.tmpl` and fill in its placeholders with the phase's PLAN.md must_haves and SUMMARY.md file paths. This avoids maintaining duplicate verifier prompts across skills.
|
|
663
688
|
|
|
689
|
+
**Prepend this block to the verifier prompt before sending:**
|
|
690
|
+
```
|
|
691
|
+
<files_to_read>
|
|
692
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
693
|
+
1. .planning/phases/{NN}-{slug}/PLAN-*.md — must-haves to verify against
|
|
694
|
+
2. .planning/phases/{NN}-{slug}/SUMMARY-*.md — executor build summaries
|
|
695
|
+
3. .planning/phases/{NN}-{slug}/VERIFICATION.md — prior verification results (if exists)
|
|
696
|
+
</files_to_read>
|
|
697
|
+
```
|
|
698
|
+
|
|
664
699
|
After the verifier returns, read the VERIFICATION.md frontmatter and display the results:
|
|
665
700
|
|
|
666
701
|
- If status is `passed`: display `✓ Verifier: {X}/{Y} must-haves verified` (where X = `must_haves_passed` and Y = `must_haves_checked`)
|
|
@@ -825,6 +860,8 @@ Then present the appropriate branded banner from Read `references/ui-formatting.
|
|
|
825
860
|
- **If `passed` + last phase:** Use the "Milestone Complete" template. Fill in phase count.
|
|
826
861
|
- **If `gaps_found`:** Use the "Gaps Found" template. Fill in phase number, name, score, and gap summaries from VERIFICATION.md.
|
|
827
862
|
|
|
863
|
+
Include `<sub>/clear first → fresh context window</sub>` inside the Next Up routing block of the completion template.
|
|
864
|
+
|
|
828
865
|
**8g. Display USER-SETUP.md (conditional):**
|
|
829
866
|
|
|
830
867
|
Check if `.planning/phases/{NN}-{slug}/USER-SETUP.md` exists. If it does:
|
|
@@ -209,7 +209,18 @@ Continuing investigation...
|
|
|
209
209
|
|
|
210
210
|
### Step 4: Handle Debugger Results
|
|
211
211
|
|
|
212
|
-
When the debugger agent completes,
|
|
212
|
+
When the debugger agent completes, first check for completion markers in the Task() output before routing:
|
|
213
|
+
|
|
214
|
+
| Marker in Task() Output | Route To |
|
|
215
|
+
|--------------------------|----------|
|
|
216
|
+
| `## DEBUG COMPLETE` | ROOT CAUSE FOUND + FIX path |
|
|
217
|
+
| `## ROOT CAUSE FOUND` | ROOT CAUSE FOUND (no fix) path |
|
|
218
|
+
| `## DEBUG SESSION PAUSED` | CHECKPOINT path |
|
|
219
|
+
| No marker found | INCONCLUSIVE path |
|
|
220
|
+
|
|
221
|
+
**Spot-check:** Before routing, verify `.planning/debug/{NNN}-{slug}.md` exists and was recently updated (modified timestamp is newer than the Task() spawn time). If the debug file was not updated, warn: `⚠ Debug file not updated by agent — results may be incomplete.`
|
|
222
|
+
|
|
223
|
+
Display: `✓ Debug session complete — {N} hypotheses tested` (read the hypothesis count from the debug file's Hypotheses table).
|
|
213
224
|
|
|
214
225
|
The debugger returns one of four outcomes:
|
|
215
226
|
|
|
@@ -118,7 +118,12 @@ Display to the user: `◐ Spawning researcher...`
|
|
|
118
118
|
```
|
|
119
119
|
Task({
|
|
120
120
|
subagent_type: "pbr:researcher",
|
|
121
|
-
prompt: "<
|
|
121
|
+
prompt: "<files_to_read>
|
|
122
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
123
|
+
1. .planning/CONTEXT.md — locked decisions and constraints (if exists)
|
|
124
|
+
2. .planning/STATE.md — current project state (if exists)
|
|
125
|
+
</files_to_read>
|
|
126
|
+
<research_assignment>
|
|
122
127
|
Topic: {specific research question}
|
|
123
128
|
Output file: .planning/research/{topic-slug}.md
|
|
124
129
|
Mode: project-research
|
|
@@ -130,7 +135,13 @@ Task({
|
|
|
130
135
|
})
|
|
131
136
|
```
|
|
132
137
|
|
|
133
|
-
After the researcher completes,
|
|
138
|
+
After the researcher completes, check for completion markers in the Task() output:
|
|
139
|
+
|
|
140
|
+
- If `## RESEARCH COMPLETE` is present: proceed normally
|
|
141
|
+
- If `## RESEARCH BLOCKED` is present: display the blocker reason and offer to retry:
|
|
142
|
+
`⚠ Research blocked: {reason}. Try a different angle or continue without research.`
|
|
143
|
+
|
|
144
|
+
Display: `✓ Research complete — results in .planning/research/{topic-slug}.md`
|
|
134
145
|
|
|
135
146
|
Then:
|
|
136
147
|
- Read ONLY the frontmatter and summary section of the research file (not the full document)
|
|
@@ -275,6 +275,13 @@ Task({
|
|
|
275
275
|
```
|
|
276
276
|
You are the plan-checker agent.
|
|
277
277
|
|
|
278
|
+
<files_to_read>
|
|
279
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
280
|
+
1. .planning/CONTEXT.md — locked decisions and constraints (if exists)
|
|
281
|
+
2. .planning/STATE.md — current project state and progress
|
|
282
|
+
3. .planning/ROADMAP.md — phase structure, goals, and dependencies
|
|
283
|
+
</files_to_read>
|
|
284
|
+
|
|
278
285
|
<plans_to_check>
|
|
279
286
|
{For each generated PLAN.md:}
|
|
280
287
|
--- Plan File: {filename} ---
|
|
@@ -305,7 +312,15 @@ Run all verification dimensions on these plans. Return your structured report.
|
|
|
305
312
|
Do NOT write any files. Return your findings as your response text.
|
|
306
313
|
```
|
|
307
314
|
|
|
308
|
-
**Process checker results —
|
|
315
|
+
**Process checker results — completion marker check:**
|
|
316
|
+
|
|
317
|
+
After the plan-checker completes, check for completion markers in the Task() output:
|
|
318
|
+
|
|
319
|
+
- If `## CHECK PASSED` is present: skip the revision loop entirely and proceed to Step 7.
|
|
320
|
+
- If `## ISSUES FOUND` is present: enter the revision loop below.
|
|
321
|
+
- If neither marker is found: treat as issues found and enter the revision loop.
|
|
322
|
+
|
|
323
|
+
**Revision loop:**
|
|
309
324
|
|
|
310
325
|
Reference: `skills/shared/revision-loop.md` for the full Check-Revise-Escalate pattern (max 3 iterations).
|
|
311
326
|
|
|
@@ -325,6 +340,16 @@ If existing plans are being replaced (user confirmed in Step 1):
|
|
|
325
340
|
|
|
326
341
|
---
|
|
327
342
|
|
|
343
|
+
**Step 7b — Spot-check artifacts:**
|
|
344
|
+
|
|
345
|
+
After writing plan files, verify they landed on disk:
|
|
346
|
+
|
|
347
|
+
1. Glob `.planning/phases/{NN}-{slug}/PLAN-*.md` to confirm files exist
|
|
348
|
+
2. Count matches — must equal the number of plans generated in Step 5
|
|
349
|
+
3. If any are missing: re-attempt the write. If still missing, display an error listing the missing files.
|
|
350
|
+
|
|
351
|
+
---
|
|
352
|
+
|
|
328
353
|
### Step 8: Update All State (inline)
|
|
329
354
|
|
|
330
355
|
Perform all state updates in this order:
|
|
@@ -486,6 +486,12 @@ Verify milestone completion with cross-phase integration checks.
|
|
|
486
486
|
```
|
|
487
487
|
You are integration-checker. Perform cross-phase integration verification.
|
|
488
488
|
|
|
489
|
+
<files_to_read>
|
|
490
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
491
|
+
1. .planning/ROADMAP.md — phase structure, goals, and dependencies
|
|
492
|
+
2. .planning/phases/{NN}-{slug}/SUMMARY.md — for each milestone phase (read all)
|
|
493
|
+
</files_to_read>
|
|
494
|
+
|
|
489
495
|
Milestone: {version or "current"}
|
|
490
496
|
Phases to check: {list of phase directories}
|
|
491
497
|
|
|
@@ -505,20 +511,26 @@ Verify milestone completion with cross-phase integration checks.
|
|
|
505
511
|
5. Return findings as a structured report
|
|
506
512
|
```
|
|
507
513
|
|
|
508
|
-
4. **Check
|
|
514
|
+
4. **Check integration-checker completion:**
|
|
515
|
+
|
|
516
|
+
After the integration-checker completes, check for `## INTEGRATION CHECK COMPLETE` in the Task() output. If the marker is absent, warn: `⚠ Integration checker did not return completion marker — results may be incomplete.` Proceed with whatever findings were returned but note the incomplete status in the audit report.
|
|
517
|
+
|
|
518
|
+
5. **Check requirements coverage:**
|
|
509
519
|
- Read REQUIREMENTS.md
|
|
510
520
|
- For each requirement tagged for this milestone:
|
|
511
521
|
- Search VERIFICATION.md files for coverage
|
|
512
522
|
- Search SUMMARY.md `provides` fields
|
|
513
523
|
- Flag uncovered requirements
|
|
514
524
|
|
|
515
|
-
|
|
525
|
+
6. **Write audit report:**
|
|
516
526
|
|
|
517
527
|
Create `.planning/{version}-MILESTONE-AUDIT.md` using the template:
|
|
518
528
|
|
|
519
529
|
Read `skills/milestone/templates/audit-report.md.tmpl` for the audit report format. Fill in all `{variable}` placeholders with actual data from the audit.
|
|
520
530
|
|
|
521
|
-
|
|
531
|
+
**Spot-check:** After writing, verify `.planning/{version}-MILESTONE-AUDIT.md` exists on disk using Glob. If missing, re-attempt the write. If still missing, display an error and include findings inline.
|
|
532
|
+
|
|
533
|
+
7. **Report to user** using branded banners:
|
|
522
534
|
|
|
523
535
|
**If PASSED:**
|
|
524
536
|
```
|
|
@@ -3,6 +3,8 @@ name: plan
|
|
|
3
3
|
description: "Create a detailed plan for a phase. Research, plan, and verify before building."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
+
**STOP — DO NOT READ THIS FILE. You are already reading it. This prompt was injected into your context by Claude Code's plugin system. Using the Read tool on this SKILL.md file wastes ~7,600 tokens. Begin executing Step 1 immediately.**
|
|
7
|
+
|
|
6
8
|
# /pbr:plan — Phase Planning
|
|
7
9
|
|
|
8
10
|
You are the orchestrator for `/pbr:plan`. This skill creates detailed, executable plans for a specific phase. Plans are the bridge between the roadmap and actual code — they must be specific enough for an executor agent to follow mechanically. Your job is to stay lean, delegate heavy work to agents, and keep the user's main context window clean.
|
|
@@ -135,6 +137,8 @@ Reference: `skills/shared/config-loading.md` for the tooling shortcut (`state lo
|
|
|
135
137
|
|
|
136
138
|
### Step 2: Load Context (inline)
|
|
137
139
|
|
|
140
|
+
**Init-first pattern**: When spawning agents, pass the output of `node plugins/pbr/scripts/pbr-tools.js init plan-phase {N}` as context rather than having the agent read multiple files separately. This reduces file reads and prevents context-loading failures.
|
|
141
|
+
|
|
138
142
|
Read context file PATHS and metadata. Build lean context bundles for agent prompts — include paths and one-line descriptions, NOT full file bodies. Agents have the Read tool and will pull file contents on-demand.
|
|
139
143
|
|
|
140
144
|
```
|
|
@@ -221,8 +225,22 @@ Read `skills/plan/templates/researcher-prompt.md.tmpl` and use it as the prompt
|
|
|
221
225
|
- `{dependencies from roadmap}` - dependency list
|
|
222
226
|
- Fill `<project_context>` and `<prior_work>` blocks per the shared partial (`templates/prompt-partials/phase-project-context.md.tmpl`): Decision Summary for context, manifest table for prior work
|
|
223
227
|
|
|
228
|
+
**Prepend this block to the researcher prompt before sending:**
|
|
229
|
+
```
|
|
230
|
+
<files_to_read>
|
|
231
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
232
|
+
1. .planning/ROADMAP.md — phase goals, dependencies, and structure
|
|
233
|
+
2. .planning/REQUIREMENTS.md — scoped requirements for this phase (if exists)
|
|
234
|
+
</files_to_read>
|
|
235
|
+
```
|
|
236
|
+
|
|
224
237
|
Wait for the researcher to complete before proceeding.
|
|
225
238
|
|
|
239
|
+
After the researcher completes, check the agent output for a completion marker:
|
|
240
|
+
- If `## RESEARCH COMPLETE` is present: proceed to planner
|
|
241
|
+
- If `## RESEARCH BLOCKED` is present: warn the user that research could not complete, ask if they want to proceed with limited context or stop
|
|
242
|
+
- If neither marker is present: warn that researcher may not have completed successfully, but proceed
|
|
243
|
+
|
|
226
244
|
---
|
|
227
245
|
|
|
228
246
|
### Step 4.5: Seed Scanning (inline, before planning)
|
|
@@ -336,6 +354,16 @@ Read `skills/plan/templates/planner-prompt.md.tmpl` and use it as the prompt tem
|
|
|
336
354
|
- `<config>` - max tasks, parallelization, TDD mode from config.json
|
|
337
355
|
- `<planning_instructions>` - phase-specific planning rules and output path
|
|
338
356
|
|
|
357
|
+
**Prepend this block to the planner prompt before sending:**
|
|
358
|
+
```
|
|
359
|
+
<files_to_read>
|
|
360
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
361
|
+
1. .planning/CONTEXT.md — locked decisions and constraints (if exists)
|
|
362
|
+
2. .planning/ROADMAP.md — phase goals, dependencies, and structure
|
|
363
|
+
3. .planning/phases/{NN}-{slug}/RESEARCH.md — research findings (if exists)
|
|
364
|
+
</files_to_read>
|
|
365
|
+
```
|
|
366
|
+
|
|
339
367
|
Wait for the planner to complete.
|
|
340
368
|
|
|
341
369
|
After the planner returns, read the plan files it created to extract counts. Display a completion summary:
|
|
@@ -346,6 +374,17 @@ Planner created {N} plan(s) across {M} wave(s)
|
|
|
346
374
|
|
|
347
375
|
Where `{N}` is the number of PLAN.md files written and `{M}` is the number of distinct wave values across those plans (from frontmatter).
|
|
348
376
|
|
|
377
|
+
### Step 5b: Spot-Check Planner Output
|
|
378
|
+
|
|
379
|
+
CRITICAL: Verify planner output before proceeding.
|
|
380
|
+
|
|
381
|
+
1. **PLAN files exist**: Check `.planning/phases/{NN}-{slug}/PLAN-*.md` files exist on disk
|
|
382
|
+
2. **Valid frontmatter**: Read first 20 lines of each PLAN file — verify `depends_on`, `files_modified`, `must_haves` fields present
|
|
383
|
+
3. **Task structure**: Verify at least one `<task>` block exists in each plan file
|
|
384
|
+
4. **Plan count matches**: Number of PLAN files matches what the planner reported
|
|
385
|
+
|
|
386
|
+
If ANY spot-check fails, present the user with options: **Retry** / **Continue anyway** / **Abort**
|
|
387
|
+
|
|
349
388
|
---
|
|
350
389
|
|
|
351
390
|
### Step 6: Plan Validation (delegated, conditional)
|
|
@@ -372,6 +411,15 @@ Read `skills/plan/templates/checker-prompt.md.tmpl` and use it as the prompt tem
|
|
|
372
411
|
- `<phase_context>` - phase goal and requirement IDs
|
|
373
412
|
- `<context>` - file paths to project-level and phase-level CONTEXT.md files (checker reads via Read tool)
|
|
374
413
|
|
|
414
|
+
**Prepend this block to the checker prompt before sending:**
|
|
415
|
+
```
|
|
416
|
+
<files_to_read>
|
|
417
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
418
|
+
1. .planning/phases/{NN}-{slug}/PLAN-*.md — plan files to validate
|
|
419
|
+
2. .planning/CONTEXT.md — locked decisions to check against (if exists)
|
|
420
|
+
</files_to_read>
|
|
421
|
+
```
|
|
422
|
+
|
|
375
423
|
**Process checker results:**
|
|
376
424
|
|
|
377
425
|
After the plan checker returns, display its result:
|
|
@@ -463,6 +511,8 @@ Use the approve-revise-abort pattern from `skills/shared/gate-prompts.md`:
|
|
|
463
511
|
5. Update the `Status` column to `planned`
|
|
464
512
|
6. Save the file — do NOT skip this step
|
|
465
513
|
- Update STATE.md **(CRITICAL — update BOTH frontmatter AND body)**: set `status: "planned"`, `plans_total`, `last_command` in frontmatter AND update `Status:`, `Plan:` lines in body `## Current Position`
|
|
514
|
+
|
|
515
|
+
**Tooling shortcut**: `node ${PLUGIN_ROOT}/scripts/pbr-tools.js state patch '{"status":"planned","last_command":"/pbr:plan {N}"}'`
|
|
466
516
|
- **If `features.auto_advance` is `true` AND `mode` is `autonomous`:** Chain directly to build. This continues the build->review->plan->build cycle automatically.
|
|
467
517
|
- **Otherwise:** Suggest next action: `/pbr:build {N}`
|
|
468
518
|
|
|
@@ -44,6 +44,8 @@ Additionally for this skill:
|
|
|
44
44
|
|
|
45
45
|
### Step 1: Check Project Context
|
|
46
46
|
|
|
47
|
+
**Init-first pattern**: When spawning agents, pass the output of `node plugins/pbr/scripts/pbr-tools.js init quick "{description}"` as context rather than having the agent read multiple files separately. This reduces file reads and prevents context-loading failures.
|
|
48
|
+
|
|
47
49
|
1. Check if `.planning/` directory exists
|
|
48
50
|
- If yes: read config.json for settings
|
|
49
51
|
- If no: create **both** `.planning/` and `.planning/quick/` directories, then warn "No Plan-Build-Run project found. This will create a standalone quick task. Consider running `/pbr:begin` first for full project tracking."
|
|
@@ -167,9 +169,17 @@ Display to the user: `◐ Spawning executor...`
|
|
|
167
169
|
|
|
168
170
|
Spawn a `Task(agent_type: "pbr:executor")` with the following prompt:
|
|
169
171
|
|
|
172
|
+
> **Completion markers**: After executor completes, check for `## PLAN COMPLETE` or `## PLAN FAILED`. Route accordingly.
|
|
173
|
+
|
|
170
174
|
```
|
|
171
175
|
You are executor. Execute the following quick task plan.
|
|
172
176
|
|
|
177
|
+
<files_to_read>
|
|
178
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
179
|
+
1. .planning/quick/{NNN}-{slug}/PLAN.md — the quick task plan with task details
|
|
180
|
+
2. .planning/STATE.md — current project state and progress (if exists)
|
|
181
|
+
</files_to_read>
|
|
182
|
+
|
|
173
183
|
Plan file: .planning/quick/{NNN}-{slug}/PLAN.md
|
|
174
184
|
Phase: quick
|
|
175
185
|
Plan ID: {NNN}
|
|
@@ -192,6 +202,17 @@ After the executor completes:
|
|
|
192
202
|
- `partial` — some tasks completed, others failed
|
|
193
203
|
- `failed` — task failed entirely
|
|
194
204
|
|
|
205
|
+
### Step 8b: Spot-Check Executor Output
|
|
206
|
+
|
|
207
|
+
CRITICAL: Verify executor output before proceeding.
|
|
208
|
+
|
|
209
|
+
1. **SUMMARY.md exists**: Check `.planning/quick/{NNN}-{slug}/SUMMARY.md` exists
|
|
210
|
+
2. **Key files exist**: Verify first 2 files from SUMMARY.md `key_files` frontmatter exist on disk
|
|
211
|
+
3. **Commits present**: Run `git log --oneline -5` and verify at least one commit matches the task scope
|
|
212
|
+
4. **Self-check status**: Look for `## Self-Check: FAILED` in SUMMARY.md — if present, warn the user
|
|
213
|
+
|
|
214
|
+
If ANY spot-check fails, present the user with options: **Retry** / **Continue anyway** / **Abort**
|
|
215
|
+
|
|
195
216
|
### Step 9: Update STATE.md
|
|
196
217
|
|
|
197
218
|
If STATE.md exists, update the Quick Tasks section.
|
|
@@ -60,6 +60,8 @@ Execute these steps in order.
|
|
|
60
60
|
|
|
61
61
|
### Step 1: Parse and Validate (inline)
|
|
62
62
|
|
|
63
|
+
**Init-first pattern**: When spawning agents, pass the output of `node plugins/pbr/scripts/pbr-tools.js init verify-work {N}` as context rather than having the agent read multiple files separately. This reduces file reads and prevents context-loading failures.
|
|
64
|
+
|
|
63
65
|
1. Parse `$ARGUMENTS` for phase number and `--auto-fix` flag
|
|
64
66
|
2. Read `.planning/config.json`
|
|
65
67
|
**CRITICAL: Write .active-skill NOW.** Write the text "review" to `.planning/.active-skill` using the Write tool.
|
|
@@ -154,6 +156,16 @@ Invoke the `@verifier` agent to run three-layer checks.
|
|
|
154
156
|
|
|
155
157
|
Read `skills/review/templates/verifier-prompt.md.tmpl` and use its content as the verifier prompt.
|
|
156
158
|
|
|
159
|
+
**Prepend this block to the verifier prompt before sending:**
|
|
160
|
+
```
|
|
161
|
+
<files_to_read>
|
|
162
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
163
|
+
1. .planning/phases/{NN}-{slug}/PLAN-*.md — must-haves to verify against
|
|
164
|
+
2. .planning/phases/{NN}-{slug}/SUMMARY-*.md — executor build summaries
|
|
165
|
+
3. .planning/phases/{NN}-{slug}/VERIFICATION.md — prior verification results (if exists)
|
|
166
|
+
</files_to_read>
|
|
167
|
+
```
|
|
168
|
+
|
|
157
169
|
**Placeholders to fill before sending:**
|
|
158
170
|
- `{For each PLAN.md file in the phase directory:}` — inline each plan's must_haves frontmatter block
|
|
159
171
|
- `{For each SUMMARY.md file in the phase directory:}` — provide manifest table with file paths and status from frontmatter. The verifier reads full content from disk via Read tool.
|
|
@@ -180,6 +192,17 @@ Then show a brief table of must-haves with pass/fail status:
|
|
|
180
192
|
|
|
181
193
|
Then display the overall verdict (`PASSED`, `GAPS FOUND`, or `HUMAN NEEDED`) before proceeding to the full results presentation.
|
|
182
194
|
|
|
195
|
+
### Step 3a: Spot-Check Verifier Output
|
|
196
|
+
|
|
197
|
+
CRITICAL: Verify verifier output before proceeding.
|
|
198
|
+
|
|
199
|
+
1. **VERIFICATION.md exists**: Check `.planning/phases/{NN}-{slug}/VERIFICATION.md` exists on disk
|
|
200
|
+
2. **Status field present**: Read VERIFICATION.md frontmatter — verify `status` field is present and is one of: pass, fail, partial
|
|
201
|
+
3. **Must-haves checked**: Verify `must_haves_checked` count > 0 in frontmatter
|
|
202
|
+
4. **Completion marker**: Look for `## VERIFICATION COMPLETE` in the Task() output
|
|
203
|
+
|
|
204
|
+
If ANY spot-check fails, present the user with options: **Retry** / **Continue anyway** / **Abort**
|
|
205
|
+
|
|
183
206
|
---
|
|
184
207
|
|
|
185
208
|
### Step 3b: Local LLM Verification Quality Check (optional, advisory)
|
|
@@ -367,6 +390,16 @@ Invoke the `@debugger` agent to analyze each failure.
|
|
|
367
390
|
|
|
368
391
|
Read `skills/review/templates/debugger-prompt.md.tmpl` and use its content as the debugger prompt.
|
|
369
392
|
|
|
393
|
+
**Prepend this block to the debugger prompt before sending:**
|
|
394
|
+
```
|
|
395
|
+
<files_to_read>
|
|
396
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
397
|
+
1. .planning/phases/{NN}-{slug}/VERIFICATION.md — gaps and failure details
|
|
398
|
+
2. .planning/phases/{NN}-{slug}/SUMMARY-*.md — what was built
|
|
399
|
+
3. .planning/phases/{NN}-{slug}/PLAN-*.md — original plan must-haves
|
|
400
|
+
</files_to_read>
|
|
401
|
+
```
|
|
402
|
+
|
|
370
403
|
**Placeholders to fill before sending:**
|
|
371
404
|
- `[Inline the VERIFICATION.md content]` — provide file path; debugger reads via Read tool
|
|
372
405
|
- `[Inline all SUMMARY.md files for the phase]` — provide manifest table of file paths
|
|
@@ -382,6 +415,16 @@ Invoke the `@planner` agent in gap-closure mode.
|
|
|
382
415
|
|
|
383
416
|
Read `skills/review/templates/gap-planner-prompt.md.tmpl` and use its content as the gap planner prompt.
|
|
384
417
|
|
|
418
|
+
**Prepend this block to the gap planner prompt before sending:**
|
|
419
|
+
```
|
|
420
|
+
<files_to_read>
|
|
421
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
422
|
+
1. .planning/phases/{NN}-{slug}/VERIFICATION.md — gaps to close
|
|
423
|
+
2. .planning/phases/{NN}-{slug}/PLAN-*.md — existing plans for context
|
|
424
|
+
3. .planning/CONTEXT.md — locked decisions and constraints (if exists)
|
|
425
|
+
</files_to_read>
|
|
426
|
+
```
|
|
427
|
+
|
|
385
428
|
**Placeholders to fill before sending:**
|
|
386
429
|
- `[Inline VERIFICATION.md]` — provide file path; planner reads via Read tool
|
|
387
430
|
- `[Inline the debugger's root cause analysis]` — keep inline (already in conversation context)
|
|
@@ -562,6 +605,8 @@ After review completes, always present a clear next action using the completion
|
|
|
562
605
|
- **If gaps remain:** Use the "Gaps Found" template. Fill in phase number, name, gap count, and gap summaries.
|
|
563
606
|
- **If final phase:** Use the "Milestone Complete" template. Fill in phase count.
|
|
564
607
|
|
|
608
|
+
Include `<sub>/clear first → fresh context window</sub>` inside the Next Up routing block of the completion template.
|
|
609
|
+
|
|
565
610
|
---
|
|
566
611
|
|
|
567
612
|
## Notes
|
|
@@ -123,6 +123,14 @@ For each agent, read `skills/scan/templates/mapper-prompt.md.tmpl` and fill in t
|
|
|
123
123
|
- `{scale}`: detected scale from Step 2
|
|
124
124
|
- `{output_path}`: `.planning/codebase/`
|
|
125
125
|
|
|
126
|
+
**Prepend this block to each mapper prompt before sending:**
|
|
127
|
+
```
|
|
128
|
+
<files_to_read>
|
|
129
|
+
CRITICAL: Read these files BEFORE any other action:
|
|
130
|
+
1. .planning/codebase/RECON.md — baseline reconnaissance data (if exists)
|
|
131
|
+
</files_to_read>
|
|
132
|
+
```
|
|
133
|
+
|
|
126
134
|
| Agent | Focus | Output Files | When |
|
|
127
135
|
|-------|-------|-------------|------|
|
|
128
136
|
| 1 | tech | STACK.md, INTEGRATIONS.md | Always |
|
|
@@ -142,6 +150,18 @@ All agents run in parallel. As each completes, display:
|
|
|
142
150
|
|
|
143
151
|
(Only display lines for the focus areas that were actually spawned.)
|
|
144
152
|
|
|
153
|
+
### Step 4b: Check Completion Markers
|
|
154
|
+
|
|
155
|
+
After each codebase-mapper Task() completes, check the Task() output for the `## MAPPING COMPLETE` marker:
|
|
156
|
+
|
|
157
|
+
- If `## MAPPING COMPLETE` is present: the mapper finished successfully, proceed normally
|
|
158
|
+
- If the marker is missing: warn the user that the mapper may not have completed successfully:
|
|
159
|
+
```
|
|
160
|
+
⚠ Codebase mapper ({focus_area}) did not report MAPPING COMPLETE.
|
|
161
|
+
Output may be incomplete — check .planning/codebase/ for partial results.
|
|
162
|
+
```
|
|
163
|
+
Continue to Step 5 verification regardless (the file existence checks will catch truly missing output).
|
|
164
|
+
|
|
145
165
|
### Step 5: Verify Output
|
|
146
166
|
|
|
147
167
|
After all agents complete, verify the expected files exist:
|