@sienklogic/plan-build-run 2.18.1 → 2.19.1
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 +1265 -296
- package/CLAUDE.md +56 -34
- package/LICENSE +2 -1
- package/README.md +412 -177
- package/bin/install.js +2752 -0
- package/dashboard/bin/cli.cjs +96 -0
- package/dashboard/bin/stop.cjs +129 -0
- package/dashboard/eslint.config.js +37 -0
- package/dashboard/index.html +20 -0
- package/dashboard/package.json +27 -25
- package/dashboard/server/index.js +142 -0
- package/dashboard/server/lib/frontmatter.js +92 -0
- package/dashboard/server/middleware/static.js +35 -0
- package/dashboard/server/package.json +16 -0
- package/dashboard/server/routes/agents.js +213 -0
- package/dashboard/server/routes/config.js +64 -0
- package/dashboard/server/routes/health.js +95 -0
- package/dashboard/server/routes/incidents.js +78 -0
- package/dashboard/server/routes/intel.js +69 -0
- package/dashboard/server/routes/memory.js +107 -0
- package/dashboard/server/routes/planning.js +234 -0
- package/dashboard/server/routes/progress.js +77 -0
- package/dashboard/server/routes/projects.js +36 -0
- package/dashboard/server/routes/requirements.js +40 -0
- package/dashboard/server/routes/roadmap.js +69 -0
- package/dashboard/server/routes/sessions.js +70 -0
- package/dashboard/server/routes/status.js +25 -0
- package/dashboard/server/routes/telemetry.js +214 -0
- package/dashboard/server/services/file-watcher.js +105 -0
- package/dashboard/server/services/planning-reader.js +741 -0
- package/dashboard/server/test/cli.test.js +34 -0
- package/dashboard/server/test/frontmatter.test.js +104 -0
- package/dashboard/server/test/isolation.test.js +32 -0
- package/dashboard/server/test/planning-reader.test.js +151 -0
- package/dashboard/server/test/routes.test.js +91 -0
- package/dashboard/server/test/ws.test.js +81 -0
- package/dashboard/server/ws.js +96 -0
- package/dashboard/src/App.jsx +165 -0
- package/dashboard/src/components/charts/BudgetBars.jsx +42 -0
- package/dashboard/src/components/charts/ContextRadar.jsx +34 -0
- package/dashboard/src/components/charts/PhaseDonut.jsx +66 -0
- package/dashboard/src/components/charts/SuccessTrend.jsx +45 -0
- package/dashboard/src/components/charts/TokenChart.jsx +55 -0
- package/dashboard/src/components/charts/index.js +5 -0
- package/dashboard/src/components/config/CfgSection.jsx +93 -0
- package/dashboard/src/components/layout/Header.jsx +89 -0
- package/dashboard/src/components/layout/ProjectSwitcher.jsx +160 -0
- package/dashboard/src/components/layout/Sidebar.jsx +161 -0
- package/dashboard/src/components/ui/AutoModeBanner.jsx +138 -0
- package/dashboard/src/components/ui/BackButton.jsx +27 -0
- package/dashboard/src/components/ui/Badge.jsx +27 -0
- package/dashboard/src/components/ui/Card.jsx +23 -0
- package/dashboard/src/components/ui/ChartTooltip.jsx +48 -0
- package/dashboard/src/components/ui/CheckpointBox.jsx +110 -0
- package/dashboard/src/components/ui/CodeBlock.jsx +27 -0
- package/dashboard/src/components/ui/ConfidenceBadge.jsx +20 -0
- package/dashboard/src/components/ui/ConfirmModal.jsx +161 -0
- package/dashboard/src/components/ui/ConnectionBanner.jsx +60 -0
- package/dashboard/src/components/ui/ErrorBoundary.jsx +106 -0
- package/dashboard/src/components/ui/ErrorBox.jsx +107 -0
- package/dashboard/src/components/ui/KeyValue.jsx +33 -0
- package/dashboard/src/components/ui/LoadingSkeleton.jsx +84 -0
- package/dashboard/src/components/ui/MetricCard.jsx +58 -0
- package/dashboard/src/components/ui/NextUpBlock.jsx +92 -0
- package/dashboard/src/components/ui/NumberInput.jsx +44 -0
- package/dashboard/src/components/ui/PBRBanner.jsx +47 -0
- package/dashboard/src/components/ui/PipelineView.jsx +130 -0
- package/dashboard/src/components/ui/ProgressBar.jsx +28 -0
- package/dashboard/src/components/ui/ProgressDisplay.jsx +47 -0
- package/dashboard/src/components/ui/QualityGateBadge.jsx +15 -0
- package/dashboard/src/components/ui/SectionTitle.jsx +35 -0
- package/dashboard/src/components/ui/SelectInput.jsx +45 -0
- package/dashboard/src/components/ui/StatusDot.jsx +51 -0
- package/dashboard/src/components/ui/StatusSymbol.jsx +49 -0
- package/dashboard/src/components/ui/TabBar.jsx +41 -0
- package/dashboard/src/components/ui/TextInput.jsx +42 -0
- package/dashboard/src/components/ui/Toast.jsx +117 -0
- package/dashboard/src/components/ui/Toggle.jsx +70 -0
- package/dashboard/src/components/ui/index.js +29 -0
- package/dashboard/src/hooks/useDocumentTitle.js +16 -0
- package/dashboard/src/hooks/useFetch.js +50 -0
- package/dashboard/src/hooks/useToast.jsx +43 -0
- package/dashboard/src/hooks/useWebSocket.js +103 -0
- package/dashboard/src/lib/api.js +112 -0
- package/dashboard/src/lib/configSchema.js +189 -0
- package/dashboard/src/lib/constants.js +22 -0
- package/dashboard/src/main.jsx +15 -0
- package/dashboard/src/pages/AgentsPage.jsx +191 -0
- package/dashboard/src/pages/ConfigPage.jsx +298 -0
- package/dashboard/src/pages/HooksPage.jsx +412 -0
- package/dashboard/src/pages/IncidentsPage.jsx +135 -0
- package/dashboard/src/pages/IntelPage.jsx +193 -0
- package/dashboard/src/pages/LiveFeed.jsx +274 -0
- package/dashboard/src/pages/MemoryPage.jsx +107 -0
- package/dashboard/src/pages/OnboardingPage.jsx +117 -0
- package/dashboard/src/pages/Overview.jsx +360 -0
- package/dashboard/src/pages/PhaseDetailView.jsx +216 -0
- package/dashboard/src/pages/PlanningPage.jsx +181 -0
- package/dashboard/src/pages/ProgressPage.jsx +249 -0
- package/dashboard/src/pages/ResearchPage.jsx +129 -0
- package/dashboard/src/pages/RoadmapPage.jsx +251 -0
- package/dashboard/src/pages/SessionsPage.jsx +117 -0
- package/dashboard/src/pages/Telemetry.jsx +166 -0
- package/dashboard/src/pages/planning/DecisionsTab.jsx +153 -0
- package/dashboard/src/pages/planning/FilesTab.jsx +420 -0
- package/dashboard/src/pages/planning/MilestoneDetail.jsx +319 -0
- package/dashboard/src/pages/planning/MilestonesTab.jsx +151 -0
- package/dashboard/src/pages/planning/NotesTab.jsx +251 -0
- package/dashboard/src/pages/planning/PhasesTab.jsx +218 -0
- package/dashboard/src/pages/planning/QuickTab.jsx +50 -0
- package/dashboard/src/pages/planning/ResearchTab.jsx +103 -0
- package/dashboard/src/pages/planning/TodosTab.jsx +297 -0
- package/dashboard/src/theme/ThemeProvider.jsx +38 -0
- package/dashboard/src/theme/tokens.js +17 -0
- package/dashboard/tests/components/ConfirmModal.test.jsx +179 -0
- package/dashboard/tests/components/ConnectionBanner.test.jsx +37 -0
- package/dashboard/tests/components/ErrorBoundary.test.jsx +59 -0
- package/dashboard/tests/components/LoadingSkeleton.test.jsx +46 -0
- package/dashboard/tests/components/ToastContainer.test.jsx +47 -0
- package/dashboard/tests/components/Toggle.test.jsx +61 -0
- package/dashboard/tests/hooks/useFetch.test.jsx +77 -0
- package/dashboard/tests/hooks/useToast.test.jsx +78 -0
- package/dashboard/tests/hooks/useWebSocket.test.jsx +128 -0
- package/dashboard/tests/pages/ConfigPage.test.jsx +199 -0
- package/dashboard/tests/pages/PlanningPage.test.jsx +119 -0
- package/dashboard/tests/pages/planning/FilesTab.test.jsx +198 -0
- package/dashboard/tests/pages/planning/NotesTab.test.jsx +178 -0
- package/dashboard/tests/pages/planning/TodosTab.test.jsx +188 -0
- package/dashboard/tests/performance.test.jsx +46 -0
- package/dashboard/tests/routes/config.test.js +98 -0
- package/dashboard/tests/routes/health.test.js +40 -0
- package/dashboard/tests/routes/planning.test.js +112 -0
- package/dashboard/tests/routes/roadmap.test.js +91 -0
- package/dashboard/tests/routes/status.test.js +131 -0
- package/dashboard/tests/server/planning-reader.test.js +153 -0
- package/dashboard/tests/setup.js +7 -0
- package/dashboard/vite.config.js +41 -0
- package/package.json +55 -40
- package/plan-build-run/bin/config-schema.json +1420 -0
- package/plugins/pbr/.claude-plugin/plugin.json +1 -1
- package/plugins/pbr/CLAUDE.md +19 -0
- package/plugins/pbr/UI-CONSISTENCY-GAPS.md +1 -1
- package/plugins/pbr/agents/advisor-researcher.md +100 -0
- package/plugins/pbr/agents/audit.md +205 -89
- package/plugins/pbr/agents/codebase-mapper.md +158 -23
- package/plugins/pbr/agents/debugger.md +222 -30
- package/plugins/pbr/agents/dev-sync.md +206 -0
- package/plugins/pbr/agents/executor.md +717 -39
- package/plugins/pbr/agents/general.md +71 -6
- package/plugins/pbr/agents/integration-checker.md +146 -30
- package/plugins/pbr/agents/intel-updater.md +332 -0
- package/plugins/pbr/agents/nyquist-auditor.md +253 -0
- package/plugins/pbr/agents/plan-checker.md +270 -61
- package/plugins/pbr/agents/planner.md +440 -42
- package/plugins/pbr/agents/researcher.md +223 -36
- package/plugins/pbr/agents/roadmapper.md +397 -0
- package/plugins/pbr/agents/synthesizer.md +170 -26
- package/plugins/pbr/agents/ui-checker.md +203 -0
- package/plugins/pbr/agents/ui-researcher.md +224 -0
- package/plugins/pbr/agents/verifier.md +495 -47
- package/plugins/pbr/commands/add-phase.md +75 -0
- package/plugins/pbr/commands/add-todo.md +8 -0
- package/plugins/pbr/commands/audit-fix.md +5 -0
- package/plugins/pbr/commands/audit-milestone.md +8 -0
- package/plugins/pbr/commands/autonomous.md +5 -0
- package/plugins/pbr/commands/backlog.md +6 -0
- package/plugins/pbr/commands/check-todos.md +8 -0
- package/plugins/pbr/commands/complete-milestone.md +8 -0
- package/plugins/pbr/commands/config.md +1 -1
- package/plugins/pbr/commands/discuss-phase.md +6 -0
- package/plugins/pbr/commands/do.md +5 -0
- package/plugins/pbr/commands/execute-phase.md +6 -0
- package/plugins/pbr/commands/fast.md +6 -0
- package/plugins/pbr/commands/forensics.md +6 -0
- package/plugins/pbr/commands/import.md +1 -1
- package/plugins/pbr/commands/insert-phase.md +65 -0
- package/plugins/pbr/commands/intel.md +5 -0
- package/plugins/pbr/commands/join-discord.md +11 -0
- package/plugins/pbr/commands/list-phase-assumptions.md +5 -0
- package/plugins/pbr/commands/map-codebase.md +6 -0
- package/plugins/pbr/commands/milestone-summary.md +6 -0
- package/plugins/pbr/commands/new-milestone.md +8 -0
- package/plugins/pbr/commands/new-project.md +6 -0
- package/plugins/pbr/commands/pause-work.md +5 -0
- package/plugins/pbr/commands/plan-milestone-gaps.md +7 -0
- package/plugins/pbr/commands/plan-phase.md +6 -0
- package/plugins/pbr/commands/plant-seed.md +6 -0
- package/plugins/pbr/commands/profile-user.md +5 -0
- package/plugins/pbr/commands/profile.md +5 -0
- package/plugins/pbr/commands/progress.md +6 -0
- package/plugins/pbr/commands/quick.md +1 -1
- package/plugins/pbr/commands/reapply-patches.md +47 -0
- package/plugins/pbr/commands/release.md +6 -0
- package/plugins/pbr/commands/remove-phase.md +66 -0
- package/plugins/pbr/commands/research-phase.md +59 -0
- package/plugins/pbr/commands/resume-work.md +5 -0
- package/plugins/pbr/commands/seed.md +6 -0
- package/plugins/pbr/commands/session-report.md +5 -0
- package/plugins/pbr/commands/set-profile.md +6 -0
- package/plugins/pbr/commands/settings.md +5 -0
- package/plugins/pbr/commands/setup.md +1 -1
- package/plugins/pbr/commands/ship.md +5 -0
- package/plugins/pbr/commands/stats.md +6 -0
- package/plugins/pbr/commands/test.md +5 -0
- package/plugins/pbr/commands/thread.md +6 -0
- package/plugins/pbr/commands/todo.md +1 -1
- package/plugins/pbr/commands/ui-phase.md +5 -0
- package/plugins/pbr/commands/ui-review.md +5 -0
- package/plugins/pbr/commands/undo.md +5 -0
- package/plugins/pbr/commands/update.md +37 -0
- package/plugins/pbr/commands/validate-phase.md +5 -0
- package/plugins/pbr/commands/verify-work.md +6 -0
- package/plugins/pbr/dashboard/package-lock.json +6 -0
- package/plugins/pbr/dist/architecture-guard.js +59 -0
- package/plugins/pbr/dist/audit-dimensions.js +556 -0
- package/plugins/pbr/dist/auto-continue.js +277 -0
- package/plugins/pbr/dist/block-skill-self-read.js +124 -0
- package/plugins/pbr/dist/check-agent-state-write.js +63 -0
- package/plugins/pbr/dist/check-config-change.js +162 -0
- package/plugins/pbr/dist/check-cross-plugin-sync.js +93 -0
- package/plugins/pbr/dist/check-dangerous-commands.js +193 -0
- package/plugins/pbr/dist/check-direct-state-write.js +37 -0
- package/plugins/pbr/dist/check-doc-sprawl.js +102 -0
- package/plugins/pbr/dist/check-phase-boundary.js +191 -0
- package/plugins/pbr/dist/check-plan-format.js +241 -0
- package/plugins/pbr/dist/check-read-first.js +345 -0
- package/plugins/pbr/dist/check-roadmap-sync.js +503 -0
- package/plugins/pbr/dist/check-skill-workflow.js +354 -0
- package/plugins/pbr/dist/check-state-sync.js +658 -0
- package/plugins/pbr/dist/check-subagent-output.js +452 -0
- package/plugins/pbr/dist/check-summary-gate.js +199 -0
- package/plugins/pbr/dist/context-bridge.js +425 -0
- package/plugins/pbr/dist/context-budget-check.js +442 -0
- package/plugins/pbr/dist/context-quality.js +271 -0
- package/plugins/pbr/dist/enforce-context-budget.js +138 -0
- package/plugins/pbr/dist/enforce-pbr-workflow.js +277 -0
- package/plugins/pbr/dist/event-handler.js +202 -0
- package/plugins/pbr/dist/event-logger.js +125 -0
- package/plugins/pbr/dist/feedback-loop.js +172 -0
- package/plugins/pbr/dist/graph-update.js +422 -0
- package/plugins/pbr/dist/hook-logger.js +114 -0
- package/plugins/pbr/dist/hook-server-client.js +361 -0
- package/plugins/pbr/dist/hook-server.js +606 -0
- package/plugins/pbr/dist/hooks-schema.json +87 -0
- package/plugins/pbr/dist/instructions-loaded.js +173 -0
- package/plugins/pbr/dist/intercept-plan-mode.js +81 -0
- package/plugins/pbr/dist/log-notification.js +131 -0
- package/plugins/pbr/dist/log-subagent.js +349 -0
- package/plugins/pbr/dist/log-tool-failure.js +140 -0
- package/plugins/pbr/dist/milestone-learnings.js +569 -0
- package/plugins/pbr/dist/pbr-tools.js +2044 -0
- package/plugins/pbr/dist/post-bash-triage.js +154 -0
- package/plugins/pbr/dist/post-compact.js +135 -0
- package/plugins/pbr/dist/post-hoc.js +286 -0
- package/plugins/pbr/dist/post-write-dispatch.js +279 -0
- package/plugins/pbr/dist/post-write-quality.js +208 -0
- package/plugins/pbr/dist/pre-bash-dispatch.js +218 -0
- package/plugins/pbr/dist/pre-skill-dispatch.js +114 -0
- package/plugins/pbr/dist/pre-task-dispatch.js +297 -0
- package/plugins/pbr/dist/pre-write-dispatch.js +234 -0
- package/plugins/pbr/dist/progress-tracker.js +198 -0
- package/plugins/pbr/dist/prompt-guard.js +114 -0
- package/plugins/pbr/dist/prompt-routing.js +209 -0
- package/plugins/pbr/dist/quick-status.js +179 -0
- package/plugins/pbr/dist/record-incident.js +37 -0
- package/plugins/pbr/dist/run-hook.js +144 -0
- package/plugins/pbr/dist/session-cleanup.js +683 -0
- package/plugins/pbr/dist/session-tracker.js +124 -0
- package/plugins/pbr/dist/status-line.js +847 -0
- package/plugins/pbr/dist/suggest-compact.js +315 -0
- package/plugins/pbr/dist/sync-context-to-claude.js +100 -0
- package/plugins/pbr/dist/task-completed.js +206 -0
- package/plugins/pbr/dist/track-context-budget.js +432 -0
- package/plugins/pbr/dist/track-user-gates.js +88 -0
- package/plugins/pbr/dist/trust-tracker.js +193 -0
- package/plugins/pbr/dist/validate-commit.js +271 -0
- package/plugins/pbr/dist/validate-skill-args.js +222 -0
- package/plugins/pbr/dist/validate-task.js +301 -0
- package/plugins/pbr/dist/worktree-create.js +144 -0
- package/plugins/pbr/dist/worktree-remove.js +147 -0
- package/plugins/pbr/hooks/hooks.json +143 -60
- package/plugins/pbr/references/agent-contracts.md +40 -9
- package/plugins/pbr/references/agent-teams.md +3 -3
- package/plugins/pbr/references/archive/checkpoints.md +189 -0
- package/plugins/pbr/references/archive/context-quality-tiers.md +45 -0
- package/plugins/pbr/references/archive/hook-ordering.md +89 -0
- package/plugins/pbr/references/archive/limitations.md +106 -0
- package/plugins/pbr/references/archive/pbr-rules.md +194 -0
- package/plugins/pbr/references/archive/pbr-tools-cli.md +415 -0
- package/plugins/pbr/references/archive/pretooluse-jsonl-behavior.md +58 -0
- package/plugins/pbr/references/archive/signal-files.md +41 -0
- package/plugins/pbr/references/archive/tmux-setup.md +288 -0
- package/plugins/pbr/references/archive/verification-matrix.md +34 -0
- package/plugins/pbr/references/archive/verification-patterns.md +277 -0
- package/plugins/pbr/references/archive/worktree-sparse-checkout.md +86 -0
- package/plugins/pbr/references/behavioral-contexts.md +53 -0
- package/plugins/pbr/references/checkpoints.md +723 -104
- package/plugins/pbr/references/config-reference.md +472 -10
- package/plugins/pbr/references/continuation-format.md +1 -0
- package/plugins/pbr/references/decimal-phase-calculation.md +65 -0
- package/plugins/pbr/references/deviation-rules.md +12 -0
- package/plugins/pbr/references/git-integration.md +110 -27
- package/plugins/pbr/references/git-planning-commit.md +35 -0
- package/plugins/pbr/references/model-profile-resolution.md +34 -0
- package/plugins/pbr/references/model-profiles.md +90 -7
- package/plugins/pbr/references/model-selection.md +1 -1
- package/plugins/pbr/references/node-repair.md +48 -0
- package/plugins/pbr/references/plan-authoring.md +65 -0
- package/plugins/pbr/references/plan-format.md +161 -10
- package/plugins/pbr/references/questioning.md +138 -49
- package/plugins/pbr/references/reading-verification.md +4 -4
- package/plugins/pbr/references/tdd.md +263 -0
- package/plugins/pbr/references/ui-brand.md +449 -0
- package/plugins/pbr/references/verification-overrides.md +39 -0
- package/plugins/pbr/references/verification-patterns.md +529 -113
- package/plugins/pbr/scripts/architecture-guard.js +59 -0
- package/plugins/pbr/scripts/audit-checks/behavioral-compliance.js +2098 -0
- package/plugins/pbr/scripts/audit-checks/error-analysis.js +989 -0
- package/plugins/pbr/scripts/audit-checks/feature-verification.js +723 -0
- package/plugins/pbr/scripts/audit-checks/index.js +433 -0
- package/plugins/pbr/scripts/audit-checks/infrastructure.js +816 -0
- package/plugins/pbr/scripts/audit-checks/quality-metrics.js +452 -0
- package/plugins/pbr/scripts/audit-checks/session-quality.js +980 -0
- package/plugins/pbr/scripts/audit-checks/si-agent-hook-config-checks.js +466 -0
- package/plugins/pbr/scripts/audit-checks/si-cross-cutting-checks.js +272 -0
- package/plugins/pbr/scripts/audit-checks/si-skill-checks.js +424 -0
- package/plugins/pbr/scripts/audit-checks/workflow-compliance.js +1211 -0
- package/plugins/pbr/scripts/audit-dimensions.js +556 -0
- package/plugins/pbr/scripts/auto-continue.js +198 -31
- package/plugins/pbr/scripts/block-skill-self-read.js +124 -0
- package/plugins/pbr/scripts/check-agent-state-write.js +63 -0
- package/plugins/pbr/scripts/check-config-change.js +162 -0
- package/plugins/pbr/scripts/check-cross-plugin-sync.js +93 -0
- package/plugins/pbr/scripts/check-dangerous-commands.js +18 -5
- package/plugins/pbr/scripts/check-direct-state-write.js +37 -0
- package/plugins/pbr/scripts/check-phase-boundary.js +3 -8
- package/plugins/pbr/scripts/check-plan-format.js +166 -277
- package/plugins/pbr/scripts/check-read-first.js +345 -0
- package/plugins/pbr/scripts/check-roadmap-sync.js +167 -10
- package/plugins/pbr/scripts/check-skill-workflow.js +24 -27
- package/plugins/pbr/scripts/check-state-sync.js +339 -215
- package/plugins/pbr/scripts/check-subagent-output.js +338 -276
- package/plugins/pbr/scripts/check-summary-gate.js +2 -1
- package/plugins/pbr/scripts/config-schema.json +1247 -95
- package/plugins/pbr/scripts/context-bridge.js +425 -0
- package/plugins/pbr/scripts/context-budget-check.js +169 -14
- package/plugins/pbr/scripts/context-quality.js +271 -0
- package/plugins/pbr/scripts/enforce-context-budget.js +138 -0
- package/plugins/pbr/scripts/enforce-pbr-workflow.js +277 -0
- package/plugins/pbr/scripts/event-handler.js +128 -77
- package/plugins/pbr/scripts/event-logger.js +58 -25
- package/plugins/pbr/scripts/feedback-loop.js +172 -0
- package/plugins/pbr/scripts/graph-update.js +422 -0
- package/plugins/pbr/scripts/hook-logger.js +69 -35
- package/plugins/pbr/scripts/hook-server-client.js +361 -0
- package/plugins/pbr/scripts/hook-server.js +606 -0
- package/plugins/pbr/scripts/hooks-schema.json +13 -5
- package/plugins/pbr/scripts/instructions-loaded.js +173 -0
- package/plugins/pbr/scripts/intent-router.cjs +147 -0
- package/plugins/pbr/scripts/intercept-plan-mode.js +52 -18
- package/plugins/pbr/scripts/lib/alternatives.js +203 -0
- package/plugins/pbr/scripts/lib/audit.js +65 -0
- package/plugins/pbr/scripts/lib/auto-cleanup.js +221 -0
- package/plugins/pbr/scripts/lib/auto-verify.js +103 -0
- package/plugins/pbr/scripts/lib/autonomy.js +91 -0
- package/plugins/pbr/scripts/lib/build.js +719 -0
- package/plugins/pbr/scripts/lib/ci-fix-loop.js +228 -0
- package/plugins/pbr/scripts/lib/circuit-state.js +133 -0
- package/plugins/pbr/scripts/lib/commands.js +483 -0
- package/plugins/pbr/scripts/lib/completion.js +377 -0
- package/plugins/pbr/scripts/lib/compound.js +216 -0
- package/plugins/pbr/scripts/lib/config.js +1315 -0
- package/plugins/pbr/scripts/lib/context.js +254 -0
- package/plugins/pbr/scripts/lib/contextual-help.js +207 -0
- package/plugins/pbr/scripts/lib/convention-detector.js +413 -0
- package/plugins/pbr/scripts/lib/core.js +1569 -0
- package/plugins/pbr/scripts/lib/dashboard-launch.js +364 -0
- package/plugins/pbr/scripts/lib/data-hygiene.js +179 -0
- package/plugins/pbr/scripts/lib/decision-extraction.js +183 -0
- package/plugins/pbr/scripts/lib/decisions.js +194 -0
- package/plugins/pbr/scripts/lib/dependency-break.js +147 -0
- package/plugins/pbr/scripts/lib/format-validators.js +1050 -0
- package/plugins/pbr/scripts/lib/frontmatter.js +302 -0
- package/plugins/pbr/scripts/lib/gates/advisories.js +129 -0
- package/plugins/pbr/scripts/lib/gates/build-dependency.js +115 -0
- package/plugins/pbr/scripts/lib/gates/build-executor.js +104 -0
- package/plugins/pbr/scripts/lib/gates/doc-existence.js +46 -0
- package/plugins/pbr/scripts/lib/gates/helpers.js +93 -0
- package/plugins/pbr/scripts/lib/gates/inline-execution.js +185 -0
- package/plugins/pbr/scripts/lib/gates/milestone-complete.js +136 -0
- package/plugins/pbr/scripts/lib/gates/milestone-summary.js +119 -0
- package/plugins/pbr/scripts/lib/gates/multi-phase-loader.js +147 -0
- package/plugins/pbr/scripts/lib/gates/plan-executor.js +36 -0
- package/plugins/pbr/scripts/lib/gates/plan-validation.js +114 -0
- package/plugins/pbr/scripts/lib/gates/quick-executor.js +76 -0
- package/plugins/pbr/scripts/lib/gates/review-planner.js +61 -0
- package/plugins/pbr/scripts/lib/gates/review-verifier.js +69 -0
- package/plugins/pbr/scripts/lib/gates/rich-agent-context.js +143 -0
- package/plugins/pbr/scripts/lib/gates/user-confirmation.js +93 -0
- package/plugins/pbr/scripts/lib/graph-cli.js +89 -0
- package/plugins/pbr/scripts/lib/graph.js +553 -0
- package/plugins/pbr/scripts/lib/health-checks.js +107 -0
- package/plugins/pbr/scripts/lib/health-phase06.js +120 -0
- package/plugins/pbr/scripts/lib/health.js +133 -0
- package/plugins/pbr/scripts/lib/help.js +151 -0
- package/plugins/pbr/scripts/lib/history.js +150 -0
- package/plugins/pbr/scripts/lib/hypothesis-runner.js +127 -0
- package/plugins/pbr/scripts/lib/impact-analysis.js +319 -0
- package/plugins/pbr/scripts/lib/incidents.js +190 -0
- package/plugins/pbr/scripts/lib/init.js +643 -0
- package/plugins/pbr/scripts/lib/insights-parser.js +320 -0
- package/plugins/pbr/scripts/lib/intel.js +653 -0
- package/plugins/pbr/scripts/lib/learnings.js +511 -0
- package/plugins/pbr/scripts/lib/local-llm/client.js +237 -0
- package/plugins/pbr/scripts/lib/local-llm/health.js +12 -0
- package/plugins/pbr/scripts/lib/local-llm/index.js +89 -0
- package/plugins/pbr/scripts/lib/local-llm/metrics.js +20 -0
- package/plugins/pbr/scripts/lib/local-llm/operations/classify-artifact.js +4 -0
- package/plugins/pbr/scripts/lib/local-llm/operations/classify-commit.js +4 -0
- package/plugins/pbr/scripts/lib/local-llm/operations/classify-error.js +4 -0
- package/plugins/pbr/scripts/lib/local-llm/operations/classify-file-intent.js +4 -0
- package/plugins/pbr/scripts/lib/local-llm/operations/score-source.js +72 -0
- package/plugins/pbr/scripts/lib/local-llm/operations/summarize-context.js +62 -0
- package/plugins/pbr/scripts/lib/local-llm/operations/triage-test-output.js +12 -0
- package/plugins/pbr/scripts/lib/local-llm/operations/validate-task.js +4 -0
- package/plugins/pbr/scripts/lib/local-llm/router.js +101 -0
- package/plugins/pbr/scripts/lib/local-llm/shadow.js +60 -0
- package/plugins/pbr/scripts/lib/local-llm/threshold-tuner.js +118 -0
- package/plugins/pbr/scripts/lib/migrate.js +298 -0
- package/plugins/pbr/scripts/lib/milestone.js +306 -0
- package/plugins/pbr/scripts/lib/negative-knowledge.js +194 -0
- package/plugins/pbr/scripts/lib/notification-throttle.js +141 -0
- package/plugins/pbr/scripts/lib/onboarding-generator.js +288 -0
- package/plugins/pbr/scripts/lib/parse-args.js +134 -0
- package/plugins/pbr/scripts/lib/pattern-routing.js +55 -0
- package/plugins/pbr/scripts/lib/patterns.js +272 -0
- package/plugins/pbr/scripts/lib/perf.js +190 -0
- package/plugins/pbr/scripts/lib/phase.js +1027 -0
- package/plugins/pbr/scripts/lib/pid-lock.js +154 -0
- package/plugins/pbr/scripts/lib/post-hoc.js +160 -0
- package/plugins/pbr/scripts/lib/pre-commit-checks.js +220 -0
- package/plugins/pbr/scripts/lib/pre-research.js +133 -0
- package/plugins/pbr/scripts/lib/preview.js +174 -0
- package/plugins/pbr/scripts/lib/progress-visualization.js +296 -0
- package/plugins/pbr/scripts/lib/quick-init.js +131 -0
- package/plugins/pbr/scripts/lib/reference.js +236 -0
- package/plugins/pbr/scripts/lib/requirements.js +153 -0
- package/plugins/pbr/scripts/lib/resolve-root.js +66 -0
- package/plugins/pbr/scripts/lib/reverse-spec.js +259 -0
- package/plugins/pbr/scripts/lib/roadmap.js +1113 -0
- package/plugins/pbr/scripts/lib/security-scan.js +200 -0
- package/plugins/pbr/scripts/lib/session-briefing.js +895 -0
- package/plugins/pbr/scripts/lib/skill-section.js +99 -0
- package/plugins/pbr/scripts/lib/smart-next-task.js +207 -0
- package/plugins/pbr/scripts/lib/snapshot-manager.js +232 -0
- package/plugins/pbr/scripts/lib/spec-diff.js +209 -0
- package/plugins/pbr/scripts/lib/spec-engine.js +189 -0
- package/plugins/pbr/scripts/lib/spot-check.js +642 -0
- package/plugins/pbr/scripts/lib/state-queue.js +171 -0
- package/plugins/pbr/scripts/lib/state.js +1187 -0
- package/plugins/pbr/scripts/lib/status-render.js +511 -0
- package/plugins/pbr/scripts/lib/step-verify.js +149 -0
- package/plugins/pbr/scripts/lib/subagent-validators.js +1059 -0
- package/plugins/pbr/scripts/lib/suggest-next.js +435 -0
- package/plugins/pbr/scripts/lib/team-composer.js +87 -0
- package/plugins/pbr/scripts/lib/team-coordinator.js +153 -0
- package/plugins/pbr/scripts/lib/tech-debt-scanner.js +116 -0
- package/plugins/pbr/scripts/lib/template.js +222 -0
- package/plugins/pbr/scripts/lib/templates.js +362 -0
- package/plugins/pbr/scripts/lib/test-cache.js +54 -0
- package/plugins/pbr/scripts/lib/test-selection.js +163 -0
- package/plugins/pbr/scripts/lib/todo.js +300 -0
- package/plugins/pbr/scripts/lib/trust-gate.js +84 -0
- package/plugins/pbr/scripts/lib/verify.js +1473 -0
- package/plugins/pbr/scripts/lib/wiring-check.js +196 -0
- package/plugins/pbr/scripts/log-notification.js +131 -0
- package/plugins/pbr/scripts/log-subagent.js +203 -18
- package/plugins/pbr/scripts/log-tool-failure.js +60 -8
- package/plugins/pbr/scripts/milestone-learnings.js +569 -0
- package/plugins/pbr/scripts/package.json +1 -0
- package/plugins/pbr/scripts/pbr-tools.js +1833 -1167
- package/plugins/pbr/scripts/post-bash-triage.js +154 -0
- package/plugins/pbr/scripts/post-compact.js +135 -0
- package/plugins/pbr/scripts/post-hoc.js +286 -0
- package/plugins/pbr/scripts/post-write-dispatch.js +237 -31
- package/plugins/pbr/scripts/post-write-quality.js +4 -3
- package/plugins/pbr/scripts/pre-bash-dispatch.js +155 -23
- package/plugins/pbr/scripts/pre-skill-dispatch.js +114 -0
- package/plugins/pbr/scripts/pre-task-dispatch.js +297 -0
- package/plugins/pbr/scripts/pre-write-dispatch.js +171 -47
- package/plugins/pbr/scripts/progress-tracker.js +144 -307
- package/plugins/pbr/scripts/prompt-guard.js +114 -0
- package/plugins/pbr/scripts/prompt-routing.js +209 -0
- package/plugins/pbr/scripts/quick-status.js +179 -0
- package/plugins/pbr/scripts/record-incident.js +37 -0
- package/plugins/pbr/scripts/risk-classifier.cjs +123 -0
- package/plugins/pbr/scripts/run-hook.js +62 -10
- package/plugins/pbr/scripts/session-cleanup.js +458 -29
- package/plugins/pbr/scripts/session-tracker.js +124 -0
- package/plugins/pbr/scripts/status-line.js +591 -32
- package/plugins/pbr/scripts/suggest-compact.js +203 -7
- package/plugins/pbr/scripts/sync-context-to-claude.js +100 -0
- package/plugins/pbr/scripts/task-completed.js +165 -4
- package/plugins/pbr/scripts/test/config.test.js +126 -0
- package/plugins/pbr/scripts/test/cross-platform.test.js +131 -0
- package/plugins/pbr/scripts/test/fixtures/config.json +20 -0
- package/plugins/pbr/scripts/test/fixtures/plan.md +54 -0
- package/plugins/pbr/scripts/test/fixtures/project.md +30 -0
- package/plugins/pbr/scripts/test/fixtures/roadmap.md +55 -0
- package/plugins/pbr/scripts/test/fixtures/state.md +60 -0
- package/plugins/pbr/scripts/test/fixtures/summary.md +35 -0
- package/plugins/pbr/scripts/test/fixtures.test.js +184 -0
- package/plugins/pbr/scripts/test/phase.test.js +142 -0
- package/plugins/pbr/scripts/test/roadmap.test.js +96 -0
- package/plugins/pbr/scripts/test/state.test.js +163 -0
- package/plugins/pbr/scripts/track-context-budget.js +368 -99
- package/plugins/pbr/scripts/track-user-gates.js +88 -0
- package/plugins/pbr/scripts/trust-tracker.js +193 -0
- package/plugins/pbr/scripts/validate-commit.js +97 -26
- package/plugins/pbr/scripts/validate-skill-args.js +87 -15
- package/plugins/pbr/scripts/validate-task.js +112 -626
- package/plugins/pbr/scripts/worktree-create.js +144 -0
- package/plugins/pbr/scripts/worktree-remove.js +147 -0
- package/plugins/pbr/skills/audit/SKILL.md +195 -24
- package/plugins/pbr/skills/audit-fix/SKILL.md +326 -0
- package/plugins/pbr/skills/autonomous/SKILL.md +545 -0
- package/plugins/pbr/skills/backlog/SKILL.md +56 -0
- package/plugins/pbr/skills/begin/SKILL.md +507 -153
- package/plugins/pbr/skills/begin/templates/STATE.md.tmpl +1 -2
- package/plugins/pbr/skills/begin/templates/config.json.tmpl +415 -36
- package/plugins/pbr/skills/begin/templates/researcher-prompt.md.tmpl +28 -0
- package/plugins/pbr/skills/begin/templates/roadmap-prompt.md.tmpl +28 -3
- package/plugins/pbr/skills/begin/templates/synthesis-prompt.md.tmpl +33 -5
- package/plugins/pbr/skills/build/SKILL.md +1040 -354
- package/plugins/pbr/skills/build/templates/continuation-prompt.md.tmpl +26 -0
- package/plugins/pbr/skills/build/templates/executor-prompt.md.tmpl +77 -0
- package/plugins/pbr/skills/build/templates/inline-verifier-prompt.md.tmpl +33 -0
- package/plugins/pbr/skills/config/SKILL.md +111 -9
- package/plugins/pbr/skills/continue/SKILL.md +113 -33
- package/plugins/pbr/skills/dashboard/SKILL.md +21 -9
- package/plugins/pbr/skills/debug/SKILL.md +70 -12
- 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/discuss/SKILL.md +206 -25
- package/plugins/pbr/skills/discuss/templates/CONTEXT.md.tmpl +21 -1
- package/plugins/pbr/skills/do/SKILL.md +119 -24
- package/plugins/pbr/skills/explore/SKILL.md +95 -20
- package/plugins/pbr/skills/fast/SKILL.md +94 -0
- package/plugins/pbr/skills/forensics/SKILL.md +144 -0
- package/plugins/pbr/skills/health/SKILL.md +44 -117
- package/plugins/pbr/skills/help/SKILL.md +83 -101
- package/plugins/pbr/skills/import/SKILL.md +332 -13
- package/plugins/pbr/skills/intel/SKILL.md +131 -0
- package/plugins/pbr/skills/list-phase-assumptions/SKILL.md +231 -0
- package/plugins/pbr/skills/milestone/SKILL.md +421 -263
- package/plugins/pbr/skills/milestone/templates/audit-output.md.tmpl +76 -0
- package/plugins/pbr/skills/milestone/templates/complete-output.md.tmpl +32 -0
- package/plugins/pbr/skills/milestone/templates/edge-cases.md +54 -0
- package/plugins/pbr/skills/milestone/templates/gaps-output.md.tmpl +25 -0
- package/plugins/pbr/skills/milestone/templates/integration-checker-prompt.md.tmpl +25 -0
- package/plugins/pbr/skills/milestone/templates/new-output.md.tmpl +29 -0
- package/plugins/pbr/skills/milestone-summary/SKILL.md +86 -0
- package/plugins/pbr/skills/note/SKILL.md +20 -4
- package/plugins/pbr/skills/pause/SKILL.md +53 -14
- package/plugins/pbr/skills/pause/templates/continue-here.md.tmpl +33 -52
- package/plugins/pbr/skills/plan/SKILL.md +526 -280
- package/plugins/pbr/skills/plan/templates/checker-prompt.md.tmpl +5 -2
- package/plugins/pbr/skills/plan/templates/completion-output.md.tmpl +27 -0
- package/plugins/pbr/skills/plan/templates/planner-prompt.md.tmpl +27 -1
- package/plugins/pbr/skills/plan/templates/revision-prompt.md.tmpl +21 -5
- package/plugins/pbr/skills/profile/SKILL.md +185 -0
- package/plugins/pbr/skills/profile-user/SKILL.md +226 -0
- package/plugins/pbr/skills/quick/SKILL.md +434 -100
- package/plugins/pbr/skills/release/SKILL.md +206 -0
- package/plugins/pbr/skills/resume/SKILL.md +169 -46
- package/plugins/pbr/skills/review/SKILL.md +217 -164
- package/plugins/pbr/skills/review/templates/verifier-prompt.md.tmpl +7 -0
- package/plugins/pbr/skills/scan/SKILL.md +151 -106
- package/plugins/pbr/skills/scan/templates/mapper-prompt.md.tmpl +5 -56
- package/plugins/pbr/skills/seed/SKILL.md +87 -0
- package/plugins/pbr/skills/session-report/SKILL.md +130 -0
- package/plugins/pbr/skills/setup/SKILL.md +149 -202
- package/plugins/pbr/skills/shared/agent-context-enrichment.md +21 -0
- package/plugins/pbr/skills/shared/agent-type-resolution.md +32 -0
- package/plugins/pbr/skills/shared/commit-planning-docs.md +8 -0
- package/plugins/pbr/skills/shared/context-budget.md +66 -1
- package/plugins/pbr/skills/shared/context-loader-task.md +18 -11
- package/plugins/pbr/skills/shared/digest-select.md +2 -2
- package/plugins/pbr/skills/shared/domain-probes.md +1 -1
- package/plugins/pbr/skills/shared/error-reporting.md +38 -60
- package/plugins/pbr/skills/shared/gate-prompts.md +4 -2
- package/plugins/pbr/skills/shared/memory-capture.md +48 -0
- package/plugins/pbr/skills/shared/phase-argument-parsing.md +4 -4
- package/plugins/pbr/skills/shared/revision-loop.md +24 -6
- package/plugins/pbr/skills/shared/state-update.md +47 -54
- package/plugins/pbr/skills/shared/universal-anti-patterns.md +27 -4
- package/plugins/pbr/skills/ship/SKILL.md +155 -0
- package/plugins/pbr/skills/stats/SKILL.md +80 -0
- package/plugins/pbr/skills/status/SKILL.md +184 -119
- package/plugins/pbr/skills/test/SKILL.md +254 -0
- package/plugins/pbr/skills/thread/SKILL.md +73 -0
- package/plugins/pbr/skills/todo/SKILL.md +28 -72
- package/plugins/pbr/skills/ui-phase/SKILL.md +180 -0
- package/plugins/pbr/skills/ui-review/SKILL.md +206 -0
- package/plugins/pbr/skills/undo/SKILL.md +221 -0
- package/plugins/pbr/skills/validate-phase/SKILL.md +362 -0
- package/plugins/pbr/templates/CONTEXT.md.tmpl +45 -20
- package/plugins/pbr/templates/DISCOVERY.md.tmpl +29 -0
- package/plugins/pbr/templates/DISCUSSION-LOG.md.tmpl +49 -0
- package/plugins/pbr/templates/HANDOFF.json.tmpl +30 -0
- package/plugins/pbr/templates/INTEGRATION-REPORT.md.tmpl +18 -2
- package/plugins/pbr/templates/MILESTONE-AUDIT.md.tmpl +44 -0
- package/plugins/pbr/templates/PROJECT.md.tmpl +126 -0
- package/plugins/pbr/templates/REQUIREMENTS.md.tmpl +96 -0
- package/plugins/pbr/templates/RETROSPECTIVE.md.tmpl +43 -0
- package/plugins/pbr/templates/ROADMAP.md.tmpl +108 -14
- package/plugins/pbr/templates/SUMMARY-complex.md.tmpl +133 -0
- package/plugins/pbr/templates/SUMMARY-minimal.md.tmpl +55 -0
- package/plugins/pbr/templates/SUMMARY.md.tmpl +21 -0
- package/plugins/pbr/templates/UAT.md.tmpl +94 -0
- package/plugins/pbr/templates/UI-SPEC.md.tmpl +144 -0
- package/plugins/pbr/templates/VALIDATION.md.tmpl +94 -0
- package/plugins/pbr/templates/VERIFICATION-DETAIL.md.tmpl +49 -13
- package/plugins/pbr/templates/project-CONTEXT.md.tmpl +59 -0
- package/plugins/pbr/templates/research-outputs/ARCHITECTURE.md.tmpl +91 -0
- package/plugins/pbr/templates/research-outputs/FEATURES.md.tmpl +64 -0
- package/plugins/pbr/templates/research-outputs/PITFALLS.md.tmpl +50 -0
- package/plugins/pbr/templates/research-outputs/STACK.md.tmpl +63 -0
- package/plugins/pbr/templates/research-outputs/SUMMARY.md.tmpl +98 -0
- package/scripts/build-hooks.js +61 -0
- package/scripts/check-ci.js +100 -0
- package/scripts/clean-changelog.js +364 -0
- package/scripts/generate-derivatives.js +581 -0
- package/scripts/posttest.js +93 -0
- package/scripts/release.js +262 -0
- package/scripts/run-tests.cjs +29 -0
- package/scripts/test-wrapper.js +43 -0
- package/dashboard/bin/cli.js +0 -25
- package/dashboard/public/css/layout.css +0 -636
- package/dashboard/public/css/status-colors.css +0 -98
- package/dashboard/public/css/tokens.css +0 -59
- package/dashboard/public/js/htmx-title.js +0 -5
- package/dashboard/public/js/sidebar-toggle.js +0 -34
- package/dashboard/public/js/sse-client.js +0 -100
- package/dashboard/public/js/theme-toggle.js +0 -46
- package/dashboard/src/app.js +0 -91
- package/dashboard/src/middleware/current-phase.js +0 -24
- package/dashboard/src/middleware/errorHandler.js +0 -52
- package/dashboard/src/middleware/notFoundHandler.js +0 -9
- package/dashboard/src/repositories/planning.repository.js +0 -130
- package/dashboard/src/routes/events.routes.js +0 -45
- package/dashboard/src/routes/index.routes.js +0 -35
- package/dashboard/src/routes/pages.routes.js +0 -426
- package/dashboard/src/server.js +0 -42
- package/dashboard/src/services/analytics.service.js +0 -141
- package/dashboard/src/services/dashboard.service.js +0 -309
- package/dashboard/src/services/milestone.service.js +0 -222
- package/dashboard/src/services/notes.service.js +0 -50
- package/dashboard/src/services/phase.service.js +0 -232
- package/dashboard/src/services/project.service.js +0 -57
- package/dashboard/src/services/roadmap.service.js +0 -244
- package/dashboard/src/services/sse.service.js +0 -58
- package/dashboard/src/services/todo.service.js +0 -263
- package/dashboard/src/services/watcher.service.js +0 -48
- package/dashboard/src/utils/cache.js +0 -55
- package/dashboard/src/views/analytics.ejs +0 -5
- package/dashboard/src/views/coming-soon.ejs +0 -11
- package/dashboard/src/views/dependencies.ejs +0 -5
- package/dashboard/src/views/error.ejs +0 -20
- package/dashboard/src/views/index.ejs +0 -5
- package/dashboard/src/views/milestone-detail.ejs +0 -5
- package/dashboard/src/views/milestones.ejs +0 -5
- package/dashboard/src/views/notes.ejs +0 -5
- package/dashboard/src/views/partials/analytics-content.ejs +0 -90
- package/dashboard/src/views/partials/breadcrumbs.ejs +0 -14
- package/dashboard/src/views/partials/dashboard-content.ejs +0 -84
- package/dashboard/src/views/partials/dependencies-content.ejs +0 -48
- package/dashboard/src/views/partials/empty-state.ejs +0 -7
- package/dashboard/src/views/partials/footer.ejs +0 -3
- package/dashboard/src/views/partials/head.ejs +0 -30
- package/dashboard/src/views/partials/header.ejs +0 -21
- package/dashboard/src/views/partials/layout-bottom.ejs +0 -6
- package/dashboard/src/views/partials/layout-top.ejs +0 -15
- package/dashboard/src/views/partials/milestone-detail-content.ejs +0 -20
- package/dashboard/src/views/partials/milestones-content.ejs +0 -88
- package/dashboard/src/views/partials/notes-content.ejs +0 -23
- package/dashboard/src/views/partials/phase-content.ejs +0 -193
- package/dashboard/src/views/partials/phase-doc-content.ejs +0 -38
- package/dashboard/src/views/partials/phases-content.ejs +0 -124
- package/dashboard/src/views/partials/roadmap-content.ejs +0 -155
- package/dashboard/src/views/partials/sidebar.ejs +0 -99
- package/dashboard/src/views/partials/todo-create-content.ejs +0 -54
- package/dashboard/src/views/partials/todo-detail-content.ejs +0 -42
- package/dashboard/src/views/partials/todos-content.ejs +0 -94
- package/dashboard/src/views/phase-detail.ejs +0 -5
- package/dashboard/src/views/phase-doc.ejs +0 -5
- package/dashboard/src/views/phases.ejs +0 -5
- package/dashboard/src/views/roadmap.ejs +0 -5
- package/dashboard/src/views/todo-create.ejs +0 -5
- package/dashboard/src/views/todo-detail.ejs +0 -5
- package/dashboard/src/views/todos.ejs +0 -5
- package/plugins/copilot-pbr/CHANGELOG.md +0 -19
- package/plugins/copilot-pbr/README.md +0 -139
- package/plugins/copilot-pbr/agents/audit.agent.md +0 -113
- package/plugins/copilot-pbr/agents/codebase-mapper.agent.md +0 -151
- package/plugins/copilot-pbr/agents/debugger.agent.md +0 -172
- package/plugins/copilot-pbr/agents/executor.agent.md +0 -267
- package/plugins/copilot-pbr/agents/general.agent.md +0 -88
- package/plugins/copilot-pbr/agents/integration-checker.agent.md +0 -119
- package/plugins/copilot-pbr/agents/plan-checker.agent.md +0 -199
- package/plugins/copilot-pbr/agents/planner.agent.md +0 -238
- package/plugins/copilot-pbr/agents/researcher.agent.md +0 -186
- package/plugins/copilot-pbr/agents/synthesizer.agent.md +0 -126
- package/plugins/copilot-pbr/agents/verifier.agent.md +0 -228
- package/plugins/copilot-pbr/hooks/hooks.json +0 -156
- package/plugins/copilot-pbr/plugin.json +0 -30
- package/plugins/copilot-pbr/references/agent-anti-patterns.md +0 -25
- package/plugins/copilot-pbr/references/agent-contracts.md +0 -297
- package/plugins/copilot-pbr/references/agent-interactions.md +0 -135
- package/plugins/copilot-pbr/references/agent-teams.md +0 -55
- package/plugins/copilot-pbr/references/checkpoints.md +0 -158
- package/plugins/copilot-pbr/references/common-bug-patterns.md +0 -14
- package/plugins/copilot-pbr/references/config-reference.md +0 -442
- package/plugins/copilot-pbr/references/continuation-format.md +0 -213
- package/plugins/copilot-pbr/references/deviation-rules.md +0 -113
- package/plugins/copilot-pbr/references/git-integration.md +0 -227
- package/plugins/copilot-pbr/references/integration-patterns.md +0 -118
- package/plugins/copilot-pbr/references/model-profiles.md +0 -100
- package/plugins/copilot-pbr/references/model-selection.md +0 -32
- package/plugins/copilot-pbr/references/pbr-rules.md +0 -195
- package/plugins/copilot-pbr/references/pbr-tools-cli.md +0 -285
- package/plugins/copilot-pbr/references/plan-authoring.md +0 -182
- package/plugins/copilot-pbr/references/plan-format.md +0 -288
- package/plugins/copilot-pbr/references/planning-config.md +0 -214
- package/plugins/copilot-pbr/references/questioning.md +0 -215
- package/plugins/copilot-pbr/references/reading-verification.md +0 -128
- package/plugins/copilot-pbr/references/stub-patterns.md +0 -161
- package/plugins/copilot-pbr/references/subagent-coordination.md +0 -120
- package/plugins/copilot-pbr/references/ui-formatting.md +0 -444
- package/plugins/copilot-pbr/references/verification-patterns.md +0 -199
- package/plugins/copilot-pbr/references/wave-execution.md +0 -96
- package/plugins/copilot-pbr/rules/pbr-workflow.mdc +0 -48
- package/plugins/copilot-pbr/setup.ps1 +0 -93
- package/plugins/copilot-pbr/setup.sh +0 -93
- package/plugins/copilot-pbr/skills/audit/SKILL.md +0 -330
- package/plugins/copilot-pbr/skills/begin/SKILL.md +0 -589
- package/plugins/copilot-pbr/skills/begin/templates/PROJECT.md.tmpl +0 -34
- package/plugins/copilot-pbr/skills/begin/templates/REQUIREMENTS.md.tmpl +0 -19
- package/plugins/copilot-pbr/skills/begin/templates/STATE.md.tmpl +0 -50
- package/plugins/copilot-pbr/skills/begin/templates/config.json.tmpl +0 -64
- package/plugins/copilot-pbr/skills/begin/templates/researcher-prompt.md.tmpl +0 -20
- package/plugins/copilot-pbr/skills/begin/templates/roadmap-prompt.md.tmpl +0 -31
- package/plugins/copilot-pbr/skills/begin/templates/synthesis-prompt.md.tmpl +0 -17
- package/plugins/copilot-pbr/skills/build/SKILL.md +0 -960
- package/plugins/copilot-pbr/skills/config/SKILL.md +0 -250
- package/plugins/copilot-pbr/skills/continue/SKILL.md +0 -159
- package/plugins/copilot-pbr/skills/dashboard/SKILL.md +0 -43
- package/plugins/copilot-pbr/skills/debug/SKILL.md +0 -508
- package/plugins/copilot-pbr/skills/debug/templates/continuation-prompt.md.tmpl +0 -17
- package/plugins/copilot-pbr/skills/debug/templates/initial-investigation-prompt.md.tmpl +0 -28
- package/plugins/copilot-pbr/skills/discuss/SKILL.md +0 -353
- package/plugins/copilot-pbr/skills/discuss/templates/CONTEXT.md.tmpl +0 -62
- package/plugins/copilot-pbr/skills/discuss/templates/decision-categories.md +0 -10
- package/plugins/copilot-pbr/skills/do/SKILL.md +0 -66
- package/plugins/copilot-pbr/skills/explore/SKILL.md +0 -373
- package/plugins/copilot-pbr/skills/health/SKILL.md +0 -274
- package/plugins/copilot-pbr/skills/health/templates/check-pattern.md.tmpl +0 -31
- package/plugins/copilot-pbr/skills/health/templates/output-format.md.tmpl +0 -64
- package/plugins/copilot-pbr/skills/help/SKILL.md +0 -170
- package/plugins/copilot-pbr/skills/import/SKILL.md +0 -502
- package/plugins/copilot-pbr/skills/milestone/SKILL.md +0 -745
- package/plugins/copilot-pbr/skills/milestone/templates/audit-report.md.tmpl +0 -49
- package/plugins/copilot-pbr/skills/milestone/templates/stats-file.md.tmpl +0 -31
- package/plugins/copilot-pbr/skills/note/SKILL.md +0 -213
- package/plugins/copilot-pbr/skills/pause/SKILL.md +0 -247
- package/plugins/copilot-pbr/skills/pause/templates/continue-here.md.tmpl +0 -72
- package/plugins/copilot-pbr/skills/plan/SKILL.md +0 -662
- package/plugins/copilot-pbr/skills/plan/templates/checker-prompt.md.tmpl +0 -22
- package/plugins/copilot-pbr/skills/plan/templates/gap-closure-prompt.md.tmpl +0 -33
- package/plugins/copilot-pbr/skills/plan/templates/planner-prompt.md.tmpl +0 -39
- package/plugins/copilot-pbr/skills/plan/templates/researcher-prompt.md.tmpl +0 -20
- package/plugins/copilot-pbr/skills/plan/templates/revision-prompt.md.tmpl +0 -24
- package/plugins/copilot-pbr/skills/quick/SKILL.md +0 -376
- package/plugins/copilot-pbr/skills/resume/SKILL.md +0 -399
- package/plugins/copilot-pbr/skills/review/SKILL.md +0 -653
- package/plugins/copilot-pbr/skills/review/templates/debugger-prompt.md.tmpl +0 -61
- package/plugins/copilot-pbr/skills/review/templates/gap-planner-prompt.md.tmpl +0 -41
- package/plugins/copilot-pbr/skills/review/templates/verifier-prompt.md.tmpl +0 -116
- package/plugins/copilot-pbr/skills/scan/SKILL.md +0 -299
- package/plugins/copilot-pbr/skills/scan/templates/mapper-prompt.md.tmpl +0 -202
- package/plugins/copilot-pbr/skills/setup/SKILL.md +0 -296
- package/plugins/copilot-pbr/skills/shared/commit-planning-docs.md +0 -36
- package/plugins/copilot-pbr/skills/shared/config-loading.md +0 -103
- package/plugins/copilot-pbr/skills/shared/context-budget.md +0 -41
- package/plugins/copilot-pbr/skills/shared/context-loader-task.md +0 -87
- package/plugins/copilot-pbr/skills/shared/digest-select.md +0 -80
- package/plugins/copilot-pbr/skills/shared/domain-probes.md +0 -126
- package/plugins/copilot-pbr/skills/shared/error-reporting.md +0 -81
- package/plugins/copilot-pbr/skills/shared/gate-prompts.md +0 -389
- package/plugins/copilot-pbr/skills/shared/phase-argument-parsing.md +0 -46
- package/plugins/copilot-pbr/skills/shared/progress-display.md +0 -53
- package/plugins/copilot-pbr/skills/shared/revision-loop.md +0 -82
- package/plugins/copilot-pbr/skills/shared/state-loading.md +0 -63
- package/plugins/copilot-pbr/skills/shared/state-update.md +0 -162
- package/plugins/copilot-pbr/skills/shared/universal-anti-patterns.md +0 -38
- package/plugins/copilot-pbr/skills/status/SKILL.md +0 -362
- package/plugins/copilot-pbr/skills/statusline/SKILL.md +0 -149
- package/plugins/copilot-pbr/skills/todo/SKILL.md +0 -279
- package/plugins/copilot-pbr/templates/CONTEXT.md.tmpl +0 -53
- package/plugins/copilot-pbr/templates/INTEGRATION-REPORT.md.tmpl +0 -152
- package/plugins/copilot-pbr/templates/RESEARCH-SUMMARY.md.tmpl +0 -98
- package/plugins/copilot-pbr/templates/ROADMAP.md.tmpl +0 -41
- package/plugins/copilot-pbr/templates/SUMMARY.md.tmpl +0 -82
- package/plugins/copilot-pbr/templates/VERIFICATION-DETAIL.md.tmpl +0 -117
- package/plugins/copilot-pbr/templates/codebase/ARCHITECTURE.md.tmpl +0 -98
- package/plugins/copilot-pbr/templates/codebase/CONCERNS.md.tmpl +0 -93
- package/plugins/copilot-pbr/templates/codebase/CONVENTIONS.md.tmpl +0 -104
- package/plugins/copilot-pbr/templates/codebase/INTEGRATIONS.md.tmpl +0 -78
- package/plugins/copilot-pbr/templates/codebase/STACK.md.tmpl +0 -78
- package/plugins/copilot-pbr/templates/codebase/STRUCTURE.md.tmpl +0 -80
- package/plugins/copilot-pbr/templates/codebase/TESTING.md.tmpl +0 -107
- package/plugins/copilot-pbr/templates/continue-here.md.tmpl +0 -74
- package/plugins/copilot-pbr/templates/prompt-partials/phase-project-context.md.tmpl +0 -38
- package/plugins/copilot-pbr/templates/research/ARCHITECTURE.md.tmpl +0 -124
- package/plugins/copilot-pbr/templates/research/STACK.md.tmpl +0 -71
- package/plugins/copilot-pbr/templates/research/SUMMARY.md.tmpl +0 -112
- package/plugins/copilot-pbr/templates/research-outputs/phase-research.md.tmpl +0 -81
- package/plugins/copilot-pbr/templates/research-outputs/project-research.md.tmpl +0 -99
- package/plugins/copilot-pbr/templates/research-outputs/synthesis.md.tmpl +0 -36
- package/plugins/cursor-pbr/.cursor-plugin/plugin.json +0 -32
- package/plugins/cursor-pbr/CHANGELOG.md +0 -15
- package/plugins/cursor-pbr/README.md +0 -123
- package/plugins/cursor-pbr/agents/audit.md +0 -178
- package/plugins/cursor-pbr/agents/codebase-mapper.md +0 -150
- package/plugins/cursor-pbr/agents/debugger.md +0 -171
- package/plugins/cursor-pbr/agents/executor.md +0 -266
- package/plugins/cursor-pbr/agents/general.md +0 -87
- package/plugins/cursor-pbr/agents/integration-checker.md +0 -118
- package/plugins/cursor-pbr/agents/plan-checker.md +0 -198
- package/plugins/cursor-pbr/agents/planner.md +0 -237
- package/plugins/cursor-pbr/agents/researcher.md +0 -185
- package/plugins/cursor-pbr/agents/synthesizer.md +0 -125
- package/plugins/cursor-pbr/agents/verifier.md +0 -227
- package/plugins/cursor-pbr/assets/.gitkeep +0 -0
- package/plugins/cursor-pbr/assets/logo.svg +0 -21
- package/plugins/cursor-pbr/hooks/hooks.json +0 -213
- package/plugins/cursor-pbr/references/agent-anti-patterns.md +0 -25
- package/plugins/cursor-pbr/references/agent-contracts.md +0 -297
- package/plugins/cursor-pbr/references/agent-interactions.md +0 -135
- package/plugins/cursor-pbr/references/agent-teams.md +0 -55
- package/plugins/cursor-pbr/references/checkpoints.md +0 -158
- package/plugins/cursor-pbr/references/common-bug-patterns.md +0 -14
- package/plugins/cursor-pbr/references/config-reference.md +0 -442
- package/plugins/cursor-pbr/references/continuation-format.md +0 -213
- package/plugins/cursor-pbr/references/deviation-rules.md +0 -113
- package/plugins/cursor-pbr/references/git-integration.md +0 -227
- package/plugins/cursor-pbr/references/integration-patterns.md +0 -118
- package/plugins/cursor-pbr/references/model-profiles.md +0 -100
- package/plugins/cursor-pbr/references/model-selection.md +0 -32
- package/plugins/cursor-pbr/references/pbr-rules.md +0 -195
- package/plugins/cursor-pbr/references/pbr-tools-cli.md +0 -285
- package/plugins/cursor-pbr/references/plan-authoring.md +0 -182
- package/plugins/cursor-pbr/references/plan-format.md +0 -288
- package/plugins/cursor-pbr/references/planning-config.md +0 -214
- package/plugins/cursor-pbr/references/questioning.md +0 -215
- package/plugins/cursor-pbr/references/reading-verification.md +0 -128
- package/plugins/cursor-pbr/references/stub-patterns.md +0 -161
- package/plugins/cursor-pbr/references/subagent-coordination.md +0 -120
- package/plugins/cursor-pbr/references/ui-formatting.md +0 -444
- package/plugins/cursor-pbr/references/verification-patterns.md +0 -199
- package/plugins/cursor-pbr/references/wave-execution.md +0 -96
- package/plugins/cursor-pbr/rules/pbr-workflow.mdc +0 -48
- package/plugins/cursor-pbr/setup.ps1 +0 -78
- package/plugins/cursor-pbr/setup.sh +0 -83
- package/plugins/cursor-pbr/skills/audit/SKILL.md +0 -331
- package/plugins/cursor-pbr/skills/begin/SKILL.md +0 -589
- package/plugins/cursor-pbr/skills/begin/templates/PROJECT.md.tmpl +0 -34
- package/plugins/cursor-pbr/skills/begin/templates/REQUIREMENTS.md.tmpl +0 -19
- package/plugins/cursor-pbr/skills/begin/templates/STATE.md.tmpl +0 -50
- package/plugins/cursor-pbr/skills/begin/templates/config.json.tmpl +0 -64
- package/plugins/cursor-pbr/skills/begin/templates/researcher-prompt.md.tmpl +0 -20
- package/plugins/cursor-pbr/skills/begin/templates/roadmap-prompt.md.tmpl +0 -31
- package/plugins/cursor-pbr/skills/begin/templates/synthesis-prompt.md.tmpl +0 -17
- package/plugins/cursor-pbr/skills/build/SKILL.md +0 -961
- package/plugins/cursor-pbr/skills/config/SKILL.md +0 -252
- package/plugins/cursor-pbr/skills/continue/SKILL.md +0 -159
- package/plugins/cursor-pbr/skills/dashboard/SKILL.md +0 -44
- package/plugins/cursor-pbr/skills/debug/SKILL.md +0 -512
- package/plugins/cursor-pbr/skills/debug/templates/continuation-prompt.md.tmpl +0 -17
- package/plugins/cursor-pbr/skills/debug/templates/initial-investigation-prompt.md.tmpl +0 -28
- package/plugins/cursor-pbr/skills/discuss/SKILL.md +0 -354
- package/plugins/cursor-pbr/skills/discuss/templates/CONTEXT.md.tmpl +0 -62
- package/plugins/cursor-pbr/skills/discuss/templates/decision-categories.md +0 -10
- package/plugins/cursor-pbr/skills/do/SKILL.md +0 -67
- package/plugins/cursor-pbr/skills/explore/SKILL.md +0 -376
- package/plugins/cursor-pbr/skills/health/SKILL.md +0 -274
- package/plugins/cursor-pbr/skills/health/templates/check-pattern.md.tmpl +0 -31
- package/plugins/cursor-pbr/skills/health/templates/output-format.md.tmpl +0 -64
- package/plugins/cursor-pbr/skills/help/SKILL.md +0 -170
- package/plugins/cursor-pbr/skills/import/SKILL.md +0 -505
- package/plugins/cursor-pbr/skills/milestone/SKILL.md +0 -746
- package/plugins/cursor-pbr/skills/milestone/templates/audit-report.md.tmpl +0 -49
- package/plugins/cursor-pbr/skills/milestone/templates/stats-file.md.tmpl +0 -31
- package/plugins/cursor-pbr/skills/note/SKILL.md +0 -214
- package/plugins/cursor-pbr/skills/pause/SKILL.md +0 -248
- package/plugins/cursor-pbr/skills/pause/templates/continue-here.md.tmpl +0 -72
- package/plugins/cursor-pbr/skills/plan/SKILL.md +0 -663
- package/plugins/cursor-pbr/skills/plan/templates/checker-prompt.md.tmpl +0 -22
- package/plugins/cursor-pbr/skills/plan/templates/gap-closure-prompt.md.tmpl +0 -33
- package/plugins/cursor-pbr/skills/plan/templates/planner-prompt.md.tmpl +0 -39
- package/plugins/cursor-pbr/skills/plan/templates/researcher-prompt.md.tmpl +0 -20
- package/plugins/cursor-pbr/skills/plan/templates/revision-prompt.md.tmpl +0 -24
- package/plugins/cursor-pbr/skills/quick/SKILL.md +0 -376
- package/plugins/cursor-pbr/skills/resume/SKILL.md +0 -399
- package/plugins/cursor-pbr/skills/review/SKILL.md +0 -654
- package/plugins/cursor-pbr/skills/review/templates/debugger-prompt.md.tmpl +0 -61
- package/plugins/cursor-pbr/skills/review/templates/gap-planner-prompt.md.tmpl +0 -41
- package/plugins/cursor-pbr/skills/review/templates/verifier-prompt.md.tmpl +0 -116
- package/plugins/cursor-pbr/skills/scan/SKILL.md +0 -300
- package/plugins/cursor-pbr/skills/scan/templates/mapper-prompt.md.tmpl +0 -202
- package/plugins/cursor-pbr/skills/setup/SKILL.md +0 -296
- package/plugins/cursor-pbr/skills/shared/commit-planning-docs.md +0 -36
- package/plugins/cursor-pbr/skills/shared/config-loading.md +0 -103
- package/plugins/cursor-pbr/skills/shared/context-budget.md +0 -41
- package/plugins/cursor-pbr/skills/shared/context-loader-task.md +0 -87
- package/plugins/cursor-pbr/skills/shared/digest-select.md +0 -80
- package/plugins/cursor-pbr/skills/shared/domain-probes.md +0 -126
- package/plugins/cursor-pbr/skills/shared/error-reporting.md +0 -81
- package/plugins/cursor-pbr/skills/shared/gate-prompts.md +0 -389
- package/plugins/cursor-pbr/skills/shared/phase-argument-parsing.md +0 -46
- package/plugins/cursor-pbr/skills/shared/progress-display.md +0 -53
- package/plugins/cursor-pbr/skills/shared/revision-loop.md +0 -82
- package/plugins/cursor-pbr/skills/shared/state-loading.md +0 -63
- package/plugins/cursor-pbr/skills/shared/state-update.md +0 -162
- package/plugins/cursor-pbr/skills/shared/universal-anti-patterns.md +0 -38
- package/plugins/cursor-pbr/skills/status/SKILL.md +0 -362
- package/plugins/cursor-pbr/skills/statusline/SKILL.md +0 -150
- package/plugins/cursor-pbr/skills/todo/SKILL.md +0 -280
- package/plugins/cursor-pbr/templates/CONTEXT.md.tmpl +0 -53
- package/plugins/cursor-pbr/templates/INTEGRATION-REPORT.md.tmpl +0 -152
- package/plugins/cursor-pbr/templates/RESEARCH-SUMMARY.md.tmpl +0 -98
- package/plugins/cursor-pbr/templates/ROADMAP.md.tmpl +0 -41
- package/plugins/cursor-pbr/templates/SUMMARY.md.tmpl +0 -82
- package/plugins/cursor-pbr/templates/VERIFICATION-DETAIL.md.tmpl +0 -117
- package/plugins/cursor-pbr/templates/codebase/ARCHITECTURE.md.tmpl +0 -98
- package/plugins/cursor-pbr/templates/codebase/CONCERNS.md.tmpl +0 -93
- package/plugins/cursor-pbr/templates/codebase/CONVENTIONS.md.tmpl +0 -104
- package/plugins/cursor-pbr/templates/codebase/INTEGRATIONS.md.tmpl +0 -78
- package/plugins/cursor-pbr/templates/codebase/STACK.md.tmpl +0 -78
- package/plugins/cursor-pbr/templates/codebase/STRUCTURE.md.tmpl +0 -80
- package/plugins/cursor-pbr/templates/codebase/TESTING.md.tmpl +0 -107
- package/plugins/cursor-pbr/templates/continue-here.md.tmpl +0 -74
- package/plugins/cursor-pbr/templates/prompt-partials/phase-project-context.md.tmpl +0 -38
- package/plugins/cursor-pbr/templates/research/ARCHITECTURE.md.tmpl +0 -124
- package/plugins/cursor-pbr/templates/research/STACK.md.tmpl +0 -71
- package/plugins/cursor-pbr/templates/research/SUMMARY.md.tmpl +0 -112
- package/plugins/cursor-pbr/templates/research-outputs/phase-research.md.tmpl +0 -81
- package/plugins/cursor-pbr/templates/research-outputs/project-research.md.tmpl +0 -99
- package/plugins/cursor-pbr/templates/research-outputs/synthesis.md.tmpl +0 -36
- package/plugins/pbr/references/agent-interactions.md +0 -134
- package/plugins/pbr/references/pbr-rules.md +0 -194
- package/plugins/pbr/references/pbr-tools-cli.md +0 -285
- package/plugins/pbr/references/planning-config.md +0 -213
- package/plugins/pbr/references/subagent-coordination.md +0 -119
- package/plugins/pbr/references/ui-formatting.md +0 -444
- package/plugins/pbr/scripts/validate-plugin-structure.js +0 -183
- package/plugins/pbr/skills/milestone/templates/audit-report.md.tmpl +0 -48
- package/plugins/pbr/skills/shared/progress-display.md +0 -53
- package/plugins/pbr/skills/shared/state-loading.md +0 -62
- package/plugins/pbr/templates/RESEARCH-SUMMARY.md.tmpl +0 -97
- package/plugins/pbr/templates/research/ARCHITECTURE.md.tmpl +0 -124
- package/plugins/pbr/templates/research/STACK.md.tmpl +0 -71
- package/plugins/pbr/templates/research/SUMMARY.md.tmpl +0 -112
- package/plugins/pbr/templates/research-outputs/phase-research.md.tmpl +0 -81
- package/plugins/pbr/templates/research-outputs/project-research.md.tmpl +0 -99
- package/plugins/pbr/templates/research-outputs/synthesis.md.tmpl +0 -36
- /package/plugins/pbr/references/{agent-anti-patterns.md → archive/agent-anti-patterns.md} +0 -0
|
@@ -2,21 +2,26 @@
|
|
|
2
2
|
name: review
|
|
3
3
|
description: "Verify the build matched the plan. Automated checks + walkthrough with you."
|
|
4
4
|
allowed-tools: Read, Write, Bash, Glob, Grep, Task, AskUserQuestion, Skill
|
|
5
|
-
argument-hint: "<phase-number> [--auto-fix] [--teams]"
|
|
5
|
+
argument-hint: "<phase-number> [--auto-fix] [--teams] [--model <model>] [--auto]"
|
|
6
6
|
---
|
|
7
7
|
|
|
8
8
|
**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.**
|
|
9
9
|
|
|
10
|
-
# /pbr:
|
|
10
|
+
# /pbr:verify-work — Phase Review and Verification
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
Reference: `@references/verification-overrides.md` for verification override handling and gap acceptance.
|
|
13
|
+
|
|
14
|
+
**References:** `@references/questioning.md`, `@references/ui-brand.md`
|
|
15
|
+
|
|
16
|
+
You are the orchestrator for `/pbr:verify-work`. This skill verifies that what was built matches what was planned. It runs automated three-layer checks against must-haves, then walks the user through a conversational UAT (user acceptance testing) for each deliverable. Your job is to present findings clearly and help the user decide what's good enough versus what needs fixes.
|
|
13
17
|
|
|
14
18
|
## Context Budget
|
|
15
19
|
|
|
16
20
|
Reference: `skills/shared/context-budget.md` for the universal orchestrator rules.
|
|
21
|
+
Reference: `skills/shared/agent-type-resolution.md` for agent type fallback when spawning Task() subagents.
|
|
17
22
|
|
|
18
23
|
Additionally for this skill:
|
|
19
|
-
- **Minimize** reading subagent output — read only VERIFICATION.md frontmatter for summaries
|
|
24
|
+
- **Minimize** reading subagent output — read only VERIFICATION.md frontmatter for summaries. Exception: if `context_window_tokens` in `.planning/config.json` is >= 500000, reading full VERIFICATION.md bodies is permitted when gap details are needed for inline presentation.
|
|
20
25
|
|
|
21
26
|
## Step 0 — Immediate Output
|
|
22
27
|
|
|
@@ -30,6 +35,22 @@ Additionally for this skill:
|
|
|
30
35
|
|
|
31
36
|
Where `{N}` is the phase number from `$ARGUMENTS`. Then proceed to Step 1.
|
|
32
37
|
|
|
38
|
+
## Multi-Session Sync
|
|
39
|
+
|
|
40
|
+
Before any phase-modifying operations (writing VERIFICATION.md, updating STATE.md/ROADMAP.md), acquire a claim:
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
acquireClaim(phaseDir, sessionId)
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
If the claim fails (another session owns this phase), display: "Another session owns this phase. Use `/pbr:progress` to see active claims."
|
|
47
|
+
|
|
48
|
+
On completion or error (including all exit paths), release the claim:
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
releaseClaim(phaseDir, sessionId)
|
|
52
|
+
```
|
|
53
|
+
|
|
33
54
|
## Prerequisites
|
|
34
55
|
|
|
35
56
|
- `.planning/config.json` exists
|
|
@@ -39,7 +60,7 @@ Where `{N}` is the phase number from `$ARGUMENTS`. Then proceed to Step 1.
|
|
|
39
60
|
|
|
40
61
|
When `features.goal_verification` is enabled and depth is "standard" or "comprehensive", the `event-handler.js` hook automatically queues verification after executor completion. The hook writes `.planning/.auto-verify` as a signal file. The build skill's orchestrator detects this signal and spawns the verifier agent.
|
|
41
62
|
|
|
42
|
-
**This is additive**: `/pbr:
|
|
63
|
+
**This is additive**: `/pbr:verify-work` can always be invoked manually regardless of auto-verification settings. If auto-verification already ran, `/pbr:verify-work` re-runs verification (useful for re-checking after fixes).
|
|
43
64
|
|
|
44
65
|
---
|
|
45
66
|
|
|
@@ -52,6 +73,8 @@ Parse `$ARGUMENTS` according to `skills/shared/phase-argument-parsing.md`.
|
|
|
52
73
|
| `3` | Review phase 3 |
|
|
53
74
|
| `3 --auto-fix` | Review phase 3, automatically diagnose and create gap-closure plans for failures |
|
|
54
75
|
| `3 --teams` | Review phase 3 with parallel specialist verifiers (functional + security + performance) |
|
|
76
|
+
| `3 --model opus` | Use opus for all verifier spawns in phase 3 (overrides config verifier_model) |
|
|
77
|
+
| `3 --auto` | Review phase 3 with auto mode — skip interactive UAT, auto-accept if verification passes |
|
|
55
78
|
| (no number) | Use current phase from STATE.md |
|
|
56
79
|
|
|
57
80
|
---
|
|
@@ -65,17 +88,41 @@ Execute these steps in order.
|
|
|
65
88
|
### Step 1: Parse and Validate (inline)
|
|
66
89
|
|
|
67
90
|
1. Parse `$ARGUMENTS` for phase number and `--auto-fix` flag
|
|
68
|
-
|
|
69
|
-
|
|
91
|
+
- If `--model <value>` is present in `$ARGUMENTS`, extract the value (sonnet, opus, haiku, inherit). Store as `override_model`. When spawning verifier Task() agents, use `override_model` instead of the config-derived `blob.verifier_model`. If an invalid value is provided, display an error and list valid values.
|
|
92
|
+
- If `--auto` is present in `$ARGUMENTS`: set `auto_mode = true`. Log: "Auto mode enabled — skipping interactive UAT walkthrough"
|
|
93
|
+
2. **CRITICAL — Init first.** Run the init CLI call as the FIRST action after argument parsing:
|
|
94
|
+
```bash
|
|
95
|
+
node plugins/pbr/scripts/pbr-tools.js init verify-work {N}
|
|
96
|
+
```
|
|
97
|
+
Store the JSON result as `blob`. All downstream steps MUST reference `blob` fields instead of re-reading files. Key fields: `blob.phase.dir`, `blob.phase.name`, `blob.phase.goal`, `blob.phase.plan_count`, `blob.phase.completed`, `blob.verifier_model`, `blob.has_verification`, `blob.prior_attempts`, `blob.prior_status`, `blob.summaries`.
|
|
98
|
+
**CRITICAL (hook-enforced): Write .active-skill NOW.** Write the text "review" to `.planning/.active-skill` using the Write tool.
|
|
70
99
|
3. Resolve depth profile: run `node ${CLAUDE_PLUGIN_ROOT}/scripts/pbr-tools.js config resolve-depth` to get the effective feature/gate settings for the current depth. Store the result for use in later gating decisions.
|
|
71
|
-
4. Validate:
|
|
72
|
-
-
|
|
73
|
-
-
|
|
74
|
-
-
|
|
75
|
-
5. If no phase number given,
|
|
100
|
+
4. Validate using blob fields:
|
|
101
|
+
- If `blob.error`: display error and stop
|
|
102
|
+
- If `blob.summaries` is empty: display "Phase hasn't been built yet" error (see error box below)
|
|
103
|
+
- If `blob.phase.plan_count === 0`: display "Phase has no plans" error (see error box below)
|
|
104
|
+
5. If no phase number given, use `blob.phase.number` (already resolved from STATE.md by init)
|
|
76
105
|
6. If `.planning/.auto-verify` signal file exists, read it and note the auto-verification was already queued. Delete the signal file after reading (one-shot, same pattern as auto-continue.js).
|
|
77
|
-
|
|
78
|
-
|
|
106
|
+
7. Resolve verification depth:
|
|
107
|
+
- Run: `node ${CLAUDE_PLUGIN_ROOT}/scripts/pbr-tools.js trust-gate {N}`
|
|
108
|
+
- Parse the JSON response to get `depth` (light/standard/thorough)
|
|
109
|
+
- Log: "Verification depth: {depth} (trust-based)"
|
|
110
|
+
- Store as `verification_depth` for use in Step 3
|
|
111
|
+
- If the command fails or graduated_verification is disabled, default to "standard"
|
|
112
|
+
|
|
113
|
+
**Validation errors:**
|
|
114
|
+
|
|
115
|
+
If phase directory not found, use conversational recovery:
|
|
116
|
+
|
|
117
|
+
1. Run: `node ${CLAUDE_PLUGIN_ROOT}/scripts/pbr-tools.js suggest-alternatives phase-not-found {slug}`
|
|
118
|
+
2. Parse the JSON response to get `available` phases and `suggestions` (closest matches).
|
|
119
|
+
3. Display: "Phase '{slug}' not found. Did you mean one of these?"
|
|
120
|
+
- List `suggestions` (if any) as numbered options.
|
|
121
|
+
- Offer "Show all phases" to list `available`.
|
|
122
|
+
4. **CRITICAL -- DO NOT SKIP**: Present the following choice to the user via AskUserQuestion before proceeding:
|
|
123
|
+
Use AskUserQuestion (pattern: yes-no-pick from `skills/shared/gate-prompts.md`) to let the user pick a phase or abort.
|
|
124
|
+
- If user picks a valid phase slug: re-run with that slug.
|
|
125
|
+
- If user chooses to abort: stop cleanly with a friendly message.
|
|
79
126
|
|
|
80
127
|
If no SUMMARY.md files:
|
|
81
128
|
```
|
|
@@ -85,7 +132,7 @@ If no SUMMARY.md files:
|
|
|
85
132
|
|
|
86
133
|
Phase {N} hasn't been built yet.
|
|
87
134
|
|
|
88
|
-
**To fix:** Run `/pbr:
|
|
135
|
+
**To fix:** Run `/pbr:execute-phase {N}` first.
|
|
89
136
|
```
|
|
90
137
|
|
|
91
138
|
If no PLAN.md files:
|
|
@@ -96,22 +143,22 @@ If no PLAN.md files:
|
|
|
96
143
|
|
|
97
144
|
Phase {N} has no plans.
|
|
98
145
|
|
|
99
|
-
**To fix:** Run `/pbr:plan {N}` first.
|
|
146
|
+
**To fix:** Run `/pbr:plan-phase {N}` first.
|
|
100
147
|
```
|
|
101
148
|
|
|
102
149
|
---
|
|
103
150
|
|
|
104
151
|
### Step 2: Check Existing Verification (inline)
|
|
105
152
|
|
|
106
|
-
|
|
153
|
+
Check if a VERIFICATION.md already exists using `blob.has_verification` and `blob.prior_status` from the init blob:
|
|
107
154
|
|
|
108
|
-
Check if a VERIFICATION.md
|
|
109
|
-
|
|
110
|
-
1. Look for `.planning/phases/{NN}-{slug}/VERIFICATION.md`
|
|
111
|
-
2. If it exists:
|
|
155
|
+
1. Check `blob.has_verification` — if `true`, a VERIFICATION.md exists at `.planning/phases/{blob.phase.dir}/VERIFICATION.md`
|
|
156
|
+
2. If it exists (use `blob.prior_status` and `blob.prior_attempts` for status checks):
|
|
112
157
|
- Read it and check the status
|
|
113
158
|
- If `status: passed` and no `--auto-fix` flag: skip to Step 4 (conversational UAT)
|
|
114
159
|
- If `status: gaps_found`: present gaps and proceed to Step 4
|
|
160
|
+
- Check for `fix_plans:` in frontmatter. If present, summarize each fix plan (gap, effort, tasks) before presenting gaps.
|
|
161
|
+
- Classify gaps by severity: Critical (blocks functionality) vs Non-Critical (cosmetic, optional). Display severity counts: "Critical: {N}, Non-Critical: {N}"
|
|
115
162
|
- If `status: human_needed`: proceed to Step 4
|
|
116
163
|
|
|
117
164
|
3. If it does NOT exist: proceed to Step 3 (automated verification)
|
|
@@ -124,10 +171,12 @@ Check if a VERIFICATION.md already exists from `/pbr:build`'s auto-verification
|
|
|
124
171
|
|
|
125
172
|
#### Team Review Mode
|
|
126
173
|
|
|
127
|
-
If `--teams` flag is present OR `config.parallelization.use_teams` is true
|
|
174
|
+
If `--teams` flag is present OR `config.parallelization.use_teams` is true OR `features.extended_context` is `true` in `.planning/config.json`:
|
|
175
|
+
|
|
176
|
+
When triggered by `extended_context`, log: "Extended context: auto-enabling team review (3 parallel verifiers)"
|
|
128
177
|
|
|
129
178
|
1. Create team output directory: `.planning/phases/{NN}-{slug}/team/` (if not exists)
|
|
130
|
-
2. Display to the user:
|
|
179
|
+
2. Display to the user: `◆ Spawning 3 verifiers in parallel (functional, security, performance)...`
|
|
131
180
|
|
|
132
181
|
Spawn THREE verifier agents in parallel using Task():
|
|
133
182
|
|
|
@@ -144,7 +193,7 @@ If `--teams` flag is present OR `config.parallelization.use_teams` is true:
|
|
|
144
193
|
- Prompt includes: "You are the PERFORMANCE ANALYST in a review team. Focus on: N+1 queries, memory leaks, unnecessary allocations, bundle size impact, blocking operations. Write output to `.planning/phases/{NN}-{slug}/team/performance-VERIFY.md`."
|
|
145
194
|
|
|
146
195
|
3. Wait for all three to complete
|
|
147
|
-
4. Display to the user:
|
|
196
|
+
4. Display to the user: `◆ Spawning synthesizer...`
|
|
148
197
|
|
|
149
198
|
Spawn synthesizer:
|
|
150
199
|
- subagent_type: "pbr:synthesizer"
|
|
@@ -157,13 +206,14 @@ Reference: `references/agent-teams.md`
|
|
|
157
206
|
|
|
158
207
|
#### Single-Verifier Flow (default)
|
|
159
208
|
|
|
160
|
-
Display to the user:
|
|
209
|
+
Display to the user: `◆ Spawning verifier...`
|
|
161
210
|
|
|
162
211
|
Spawn a verifier Task() to run three-layer checks:
|
|
163
212
|
|
|
164
213
|
```
|
|
165
214
|
Task({
|
|
166
215
|
subagent_type: "pbr:verifier",
|
|
216
|
+
// After verifier completes, check for: ## VERIFICATION COMPLETE
|
|
167
217
|
prompt: <verifier prompt>
|
|
168
218
|
})
|
|
169
219
|
```
|
|
@@ -172,7 +222,18 @@ Task({
|
|
|
172
222
|
|
|
173
223
|
#### Verifier Prompt Template
|
|
174
224
|
|
|
175
|
-
Read
|
|
225
|
+
Read `${CLAUDE_SKILL_DIR}/templates/verifier-prompt.md.tmpl` and use its content as the verifier prompt.
|
|
226
|
+
|
|
227
|
+
**Prepend this block to the verifier prompt before sending:**
|
|
228
|
+
```
|
|
229
|
+
<files_to_read>
|
|
230
|
+
CRITICAL (no hook): Read these files BEFORE any other action:
|
|
231
|
+
1. .planning/phases/{NN}-{slug}/PLAN-*.md — must-haves to verify against
|
|
232
|
+
2. .planning/phases/{NN}-{slug}/SUMMARY-*.md — executor build summaries
|
|
233
|
+
3. .planning/phases/{NN}-{slug}/VERIFICATION.md — prior verification results (if exists)
|
|
234
|
+
4. .planning/phases/{NN}-{slug}/CONTEXT.md — locked decisions and phase constraints (if exists)
|
|
235
|
+
</files_to_read>
|
|
236
|
+
```
|
|
176
237
|
|
|
177
238
|
**Placeholders to fill before sending:**
|
|
178
239
|
- `{For each PLAN.md file in the phase directory:}` — inline each plan's must_haves frontmatter block
|
|
@@ -180,6 +241,16 @@ Read `skills/review/templates/verifier-prompt.md.tmpl` and use its content as th
|
|
|
180
241
|
- `{NN}-{slug}` — the phase directory name
|
|
181
242
|
- `{N}` — the phase number
|
|
182
243
|
- `{date}`, `{count}`, `{phase name}` — fill from context
|
|
244
|
+
- `{verification_depth}` — the depth resolved in Step 1.7 (light/standard/thorough)
|
|
245
|
+
|
|
246
|
+
**Append this block to the verifier prompt after the placeholders:**
|
|
247
|
+
|
|
248
|
+
```
|
|
249
|
+
**Verification depth:** {verification_depth}
|
|
250
|
+
- light: Check L1 (existence) and basic frontmatter only. Skip L2/L3/L4 and anti-pattern scan. Budget: <=400 tokens output.
|
|
251
|
+
- standard: Full 3-layer verification (L1-L3). Current default behavior.
|
|
252
|
+
- thorough: Full 4-layer verification (L1-L4) + cross-phase regression check (even if context_window_tokens < 500000) + full anti-pattern scan.
|
|
253
|
+
```
|
|
183
254
|
|
|
184
255
|
Wait for the verifier to complete.
|
|
185
256
|
|
|
@@ -200,6 +271,17 @@ Then show a brief table of must-haves with pass/fail status:
|
|
|
200
271
|
|
|
201
272
|
Then display the overall verdict (`PASSED`, `GAPS FOUND`, or `HUMAN NEEDED`) before proceeding to the full results presentation.
|
|
202
273
|
|
|
274
|
+
### Step 3a: Spot-Check Verifier Output
|
|
275
|
+
|
|
276
|
+
CRITICAL (no hook): Verify verifier output before proceeding.
|
|
277
|
+
|
|
278
|
+
1. **VERIFICATION.md exists**: Check `.planning/phases/{NN}-{slug}/VERIFICATION.md` exists on disk
|
|
279
|
+
2. **Status field present**: Read VERIFICATION.md frontmatter — verify `status` field is present and is one of: pass, fail, partial
|
|
280
|
+
3. **Must-haves checked**: Verify `must_haves_checked` count > 0 in frontmatter
|
|
281
|
+
4. **Completion marker**: Look for `## VERIFICATION COMPLETE` in the Task() output
|
|
282
|
+
|
|
283
|
+
If ANY spot-check fails, present the user with options: **Retry** / **Continue anyway** / **Abort**
|
|
284
|
+
|
|
203
285
|
---
|
|
204
286
|
|
|
205
287
|
### Step 4: Present Verification Results (inline)
|
|
@@ -220,7 +302,7 @@ Use AskUserQuestion (pattern: multi-option-escalation from `skills/shared/gate-p
|
|
|
220
302
|
header: "Escalate"
|
|
221
303
|
options:
|
|
222
304
|
- label: "Accept gaps" description: "Mark as complete-with-gaps and move on"
|
|
223
|
-
- label: "Re-plan" description: "Go back to /pbr:plan {N} with gap context"
|
|
305
|
+
- label: "Re-plan" description: "Go back to /pbr:plan-phase {N} with gap context"
|
|
224
306
|
- label: "Debug" description: "Spawn /pbr:debug to investigate root causes"
|
|
225
307
|
- label: "Retry" description: "Try one more verification cycle"
|
|
226
308
|
|
|
@@ -232,16 +314,20 @@ Use AskUserQuestion (pattern: multi-option-escalation from `skills/shared/gate-p
|
|
|
232
314
|
- label: "Pick specific" description: "Choose which gaps to mark as false positives"
|
|
233
315
|
- If "Accept all": Update STATE.md status to `complete-with-gaps`, update ROADMAP.md to `verified*`, add a note in VERIFICATION.md about accepted gaps. Proceed to next phase.
|
|
234
316
|
- If "Pick specific": Use the override flow from Step 6 "Gaps Found" section (present each gap for selection).
|
|
235
|
-
- **If user selects "Re-plan":** Suggest `/pbr:plan {N} --gaps` to create targeted fix plans.
|
|
317
|
+
- **If user selects "Re-plan":** Suggest `/pbr:plan-phase {N} --gaps` to create targeted fix plans.
|
|
236
318
|
- **If user selects "Debug":** Suggest `/pbr:debug` with the gap details as starting context.
|
|
237
319
|
- **If user selects "Retry":** Continue with normal Step 5 flow.
|
|
238
320
|
|
|
239
|
-
**Otherwise**, present results normally:
|
|
321
|
+
**Otherwise**, present results normally using standardized status symbols (`✓` pass, `✗` fail, `⚠` warning — see `@references/ui-brand.md`):
|
|
240
322
|
|
|
241
323
|
```
|
|
324
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
325
|
+
║ PLAN-BUILD-RUN ► VERIFYING ║
|
|
326
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
327
|
+
|
|
242
328
|
Phase {N}: {name} — Verification Results
|
|
243
329
|
|
|
244
|
-
Status: {PASSED | GAPS FOUND | HUMAN NEEDED}
|
|
330
|
+
Status: {✓ PASSED | ✗ GAPS FOUND | ⚠ HUMAN NEEDED}
|
|
245
331
|
Attempt: {attempt}
|
|
246
332
|
|
|
247
333
|
Must-have truths: {passed}/{total}
|
|
@@ -249,27 +335,63 @@ Must-have artifacts: {passed}/{total}
|
|
|
249
335
|
Must-have key links: {passed}/{total}
|
|
250
336
|
|
|
251
337
|
{If all passed:}
|
|
252
|
-
All automated checks passed.
|
|
338
|
+
✓ All automated checks passed.
|
|
253
339
|
|
|
254
340
|
{If gaps found:}
|
|
255
|
-
Gaps found:
|
|
341
|
+
✗ Gaps found:
|
|
256
342
|
1. {gap description} — {failed layer}
|
|
257
343
|
2. {gap description} — {failed layer}
|
|
258
344
|
|
|
259
345
|
{If human needed:}
|
|
260
|
-
Items requiring your verification:
|
|
346
|
+
⚠ Items requiring your verification:
|
|
261
347
|
1. {item} — {why automated check couldn't verify}
|
|
262
348
|
```
|
|
263
349
|
|
|
350
|
+
#### Cross-Phase Findings (conditional)
|
|
351
|
+
|
|
352
|
+
**Condition:** Only display if ALL of the following are true:
|
|
353
|
+
- `context_window_tokens` in `.planning/config.json` is >= 500000
|
|
354
|
+
- VERIFICATION.md frontmatter contains a `cross_phase_regressions` key with at least one entry
|
|
355
|
+
|
|
356
|
+
**How to check:** The `cross_phase_regressions` array was already read from VERIFICATION.md frontmatter in Step 2 or Step 4. If the array is empty or absent, skip this block entirely.
|
|
357
|
+
|
|
358
|
+
If the condition is met, append a cross-phase findings section to the Step 4 output:
|
|
359
|
+
|
|
360
|
+
```
|
|
361
|
+
Cross-Phase Regressions: {count} found
|
|
362
|
+
|
|
363
|
+
| Prior Phase | Must-Have | Status | Evidence |
|
|
364
|
+
|-------------|-----------|--------|----------|
|
|
365
|
+
| {phase} | {must_have} | ✗ REGRESSION | {evidence} |
|
|
366
|
+
| {phase} | {must_have} | ✓ INTACT | — |
|
|
367
|
+
|
|
368
|
+
{If regressions found:}
|
|
369
|
+
⚠ These must-haves passed in prior phases but may be broken by current phase changes.
|
|
370
|
+
Treat them as additional gaps — select "Auto-fix" to create repair plans.
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
Cross-phase regressions are displayed AFTER the single-phase verification results and BEFORE the UAT walkthrough (Step 5). They are additive — they do not replace single-phase results.
|
|
374
|
+
|
|
375
|
+
If regressions exist, include them in the gap count for the "Gaps Found" flow in Step 6. When presenting gap options to the user, regressions appear in the gap list labeled `[cross-phase]` to distinguish them from current-phase gaps.
|
|
376
|
+
|
|
264
377
|
---
|
|
265
378
|
|
|
266
379
|
### Step 5: Conversational UAT (inline)
|
|
267
380
|
|
|
381
|
+
**Skip if:** `auto_mode` is true — skip the interactive UAT walkthrough entirely. Still run automated verification (Step 3). If automated verification passed, auto-accept and proceed to Step 6 "All Items Pass" path. If automated verification found gaps, proceed to Step 6 "Gaps Found" path.
|
|
382
|
+
|
|
383
|
+
**Autonomy gate:** Read `autonomy.level` from config.
|
|
384
|
+
- If level is "guided", "collaborative", or "adaptive" AND automated verification passed (status: passed):
|
|
385
|
+
Skip interactive UAT. Log: "UAT skipped (autonomy: {level}, verification: passed)."
|
|
386
|
+
Proceed directly to Step 6 "All Items Pass" path.
|
|
387
|
+
- If level is "supervised" OR verification has gaps:
|
|
388
|
+
Run full interactive UAT as currently defined.
|
|
389
|
+
|
|
268
390
|
Walk the user through each deliverable one by one. This is an interactive conversation, not an automated check.
|
|
269
391
|
|
|
270
392
|
**For each plan in the phase:**
|
|
271
393
|
|
|
272
|
-
0. **Filter out ineligible plans**: Read each plan's SUMMARY.md `status` field. Skip plans with `status: failed`, `status: incomplete`, or `status: partial` that have zero committed tasks (check `commits` frontmatter field). Only walk through plans that completed successfully (`status: complete`) or partially with at least one committed task. For each skipped plan, note it to the user: "Skipping plan {plan_id} ({status}) — not eligible for UAT." If ALL plans in the phase are skipped, display: "No plans eligible for UAT walkthrough. All plans in Phase {N} are incomplete or failed. Run `/pbr:
|
|
394
|
+
0. **Filter out ineligible plans**: Read each plan's SUMMARY.md `status` field. Skip plans with `status: failed`, `status: incomplete`, or `status: partial` that have zero committed tasks (check `commits` frontmatter field). Only walk through plans that completed successfully (`status: complete`) or partially with at least one committed task. For each skipped plan, note it to the user: "Skipping plan {plan_id} ({status}) — not eligible for UAT." If ALL plans in the phase are skipped, display: "No plans eligible for UAT walkthrough. All plans in Phase {N} are incomplete or failed. Run `/pbr:execute-phase {N}` to retry." and stop.
|
|
273
395
|
1. Read the plan's must-haves and SUMMARY.md
|
|
274
396
|
2. Present what was built:
|
|
275
397
|
|
|
@@ -318,31 +440,29 @@ If all automated checks and UAT items passed:
|
|
|
318
440
|
|
|
319
441
|
1. **Update `.planning/ROADMAP.md` Progress table** (REQUIRED — do this BEFORE updating STATE.md):
|
|
320
442
|
|
|
321
|
-
|
|
443
|
+
> Note: Use CLI for atomic writes — direct Write bypasses file locking.
|
|
444
|
+
|
|
322
445
|
```bash
|
|
323
446
|
node ${CLAUDE_PLUGIN_ROOT}/scripts/pbr-tools.js roadmap update-status {phase} verified
|
|
324
|
-
node ${CLAUDE_PLUGIN_ROOT}/scripts/pbr-tools.js state
|
|
325
|
-
node ${CLAUDE_PLUGIN_ROOT}/scripts/pbr-tools.js state update last_activity now
|
|
447
|
+
node ${CLAUDE_PLUGIN_ROOT}/scripts/pbr-tools.js state patch '{"status":"verified","last_activity":"now"}'
|
|
326
448
|
```
|
|
327
449
|
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
- Progress updated
|
|
337
|
-
- Last activity timestamp
|
|
450
|
+
2. Update `.planning/STATE.md` via CLI **(CRITICAL (no hook) — update BOTH frontmatter AND body):**
|
|
451
|
+
|
|
452
|
+
> Note: Use CLI for atomic writes — direct Write bypasses file locking.
|
|
453
|
+
|
|
454
|
+
```bash
|
|
455
|
+
node ${CLAUDE_PLUGIN_ROOT}/scripts/pbr-tools.js state patch '{"status":"verified","last_activity":"now","last_command":"/pbr:verify-work {N}"}'
|
|
456
|
+
```
|
|
457
|
+
These update both frontmatter (`status`, `progress_percent`, `last_activity`, `last_command`) and body `## Current Position` (`Status:`, `Last activity:`, `Progress:` bar) atomically — they MUST stay in sync. See `skills/shared/state-update.md`.
|
|
338
458
|
- **STATE.md size limit:** Follow size limit enforcement rules in `skills/shared/state-update.md` (150 lines max).
|
|
339
459
|
3. Update VERIFICATION.md with UAT results (append UAT section)
|
|
340
460
|
3. Present completion:
|
|
341
461
|
|
|
342
|
-
Use the branded output from `references/ui-
|
|
462
|
+
Use the branded output from `references/ui-brand.md`:
|
|
343
463
|
- If more phases remain: use the "Phase Complete" banner template
|
|
344
464
|
- If this was the last phase in the current milestone: use the "Milestone Complete" banner template
|
|
345
|
-
- **Milestone boundary detection:** Read ROADMAP.md and find the `## Milestone:` section containing the current phase. Check
|
|
465
|
+
- **Milestone boundary detection:** Read ROADMAP.md and find the `## Milestone:` section containing the current phase. Active milestones use `## Milestone:` headings directly; completed milestones are wrapped in `<details><summary>## Milestone:` blocks or use the legacy `-- COMPLETED` suffix. Check the active milestone's `**Phases:** start - end` range. If the current phase equals `end`, this is the last phase in the milestone.
|
|
346
466
|
- Always include the "Next Up" routing block
|
|
347
467
|
|
|
348
468
|
4. If `gates.confirm_transition` is true in config AND `features.auto_advance` is NOT true:
|
|
@@ -352,10 +472,12 @@ Use the branded output from `references/ui-formatting.md`:
|
|
|
352
472
|
options:
|
|
353
473
|
- label: "Yes" description: "Proceed to plan Phase {N+1}"
|
|
354
474
|
- label: "No" description: "Stay on Phase {N} for now"
|
|
355
|
-
- If "Yes": suggest `/pbr:plan {N+1}`
|
|
475
|
+
- If "Yes": suggest `/pbr:plan-phase {N+1}`
|
|
356
476
|
- If "No" or "Other": stop
|
|
357
477
|
|
|
358
|
-
5. **If `
|
|
478
|
+
5. **If `auto_mode` is `true` AND more phases remain:** Set `features.auto_advance = true` and `mode = autonomous` behavior for the remainder of this invocation. Chain directly to plan: `Skill({ skill: "pbr:plan", args: "{N+1} --auto" })`. This continues the review→plan→build cycle automatically. **If this is the last phase in the current milestone:** HARD STOP — do NOT auto-advance past milestone boundaries. Display: "auto_advance pauses at milestone boundaries — your sign-off is required."
|
|
479
|
+
|
|
480
|
+
**Else if `features.auto_advance` is `true` AND `mode` is `autonomous` AND more phases remain:**
|
|
359
481
|
- Chain directly to plan: `Skill({ skill: "pbr:plan", args: "{N+1}" })`
|
|
360
482
|
- This continues the build→review→plan cycle automatically
|
|
361
483
|
- **If this is the last phase in the current milestone:** HARD STOP — do NOT auto-advance past milestone boundaries. Display: "auto_advance pauses at milestone boundaries — your sign-off is required."
|
|
@@ -366,7 +488,7 @@ If gaps were found and `--auto-fix` was specified:
|
|
|
366
488
|
|
|
367
489
|
**Step 6a: Diagnose**
|
|
368
490
|
|
|
369
|
-
Display to the user:
|
|
491
|
+
Display to the user: `◆ Spawning debugger...`
|
|
370
492
|
|
|
371
493
|
Spawn a debugger Task() to analyze each failure:
|
|
372
494
|
|
|
@@ -379,7 +501,17 @@ Task({
|
|
|
379
501
|
|
|
380
502
|
##### Debugger Prompt Template
|
|
381
503
|
|
|
382
|
-
Read
|
|
504
|
+
Read `${CLAUDE_SKILL_DIR}/templates/debugger-prompt.md.tmpl` and use its content as the debugger prompt.
|
|
505
|
+
|
|
506
|
+
**Prepend this block to the debugger prompt before sending:**
|
|
507
|
+
```
|
|
508
|
+
<files_to_read>
|
|
509
|
+
CRITICAL (no hook): Read these files BEFORE any other action:
|
|
510
|
+
1. .planning/phases/{NN}-{slug}/VERIFICATION.md — gaps and failure details
|
|
511
|
+
2. .planning/phases/{NN}-{slug}/SUMMARY-*.md — what was built
|
|
512
|
+
3. .planning/phases/{NN}-{slug}/PLAN-*.md — original plan must-haves
|
|
513
|
+
</files_to_read>
|
|
514
|
+
```
|
|
383
515
|
|
|
384
516
|
**Placeholders to fill before sending:**
|
|
385
517
|
- `[Inline the VERIFICATION.md content]` — provide file path; debugger reads via Read tool
|
|
@@ -388,7 +520,7 @@ Read `skills/review/templates/debugger-prompt.md.tmpl` and use its content as th
|
|
|
388
520
|
|
|
389
521
|
**Step 6b: Create Gap-Closure Plans**
|
|
390
522
|
|
|
391
|
-
After receiving the root cause analysis, display to the user:
|
|
523
|
+
After receiving the root cause analysis, display to the user: `◆ Spawning planner (gap closure)...`
|
|
392
524
|
|
|
393
525
|
Spawn the planner in gap-closure mode:
|
|
394
526
|
|
|
@@ -401,7 +533,17 @@ Task({
|
|
|
401
533
|
|
|
402
534
|
##### Gap Planner Prompt Template
|
|
403
535
|
|
|
404
|
-
Read
|
|
536
|
+
Read `${CLAUDE_SKILL_DIR}/templates/gap-planner-prompt.md.tmpl` and use its content as the gap planner prompt.
|
|
537
|
+
|
|
538
|
+
**Prepend this block to the gap planner prompt before sending:**
|
|
539
|
+
```
|
|
540
|
+
<files_to_read>
|
|
541
|
+
CRITICAL (no hook): Read these files BEFORE any other action:
|
|
542
|
+
1. .planning/phases/{NN}-{slug}/VERIFICATION.md — gaps to close
|
|
543
|
+
2. .planning/phases/{NN}-{slug}/PLAN-*.md — existing plans for context
|
|
544
|
+
3. .planning/CONTEXT.md — locked decisions and constraints (if exists)
|
|
545
|
+
</files_to_read>
|
|
546
|
+
```
|
|
405
547
|
|
|
406
548
|
**Placeholders to fill before sending:**
|
|
407
549
|
- `[Inline VERIFICATION.md]` — provide file path; planner reads via Read tool
|
|
@@ -413,9 +555,9 @@ Read `skills/review/templates/gap-planner-prompt.md.tmpl` and use its content as
|
|
|
413
555
|
**Step 6c: Validate gap-closure plans (conditional)**
|
|
414
556
|
|
|
415
557
|
If `features.plan_checking` is true in config:
|
|
416
|
-
- Display to the user:
|
|
558
|
+
- Display to the user: `◆ Spawning plan checker...`
|
|
417
559
|
- Spawn plan checker Task() on the new gap-closure plans
|
|
418
|
-
- Same process as `/pbr:plan` Step 6
|
|
560
|
+
- Same process as `/pbr:plan-phase` Step 6
|
|
419
561
|
|
|
420
562
|
**Step 6d: Present gap-closure plans to user**
|
|
421
563
|
|
|
@@ -438,7 +580,7 @@ Use AskUserQuestion (pattern: approve-revise-abort from `skills/shared/gate-prom
|
|
|
438
580
|
- label: "Review first" description: "Let me review the plans before approving"
|
|
439
581
|
- label: "Fix manually" description: "I'll fix these gaps myself"
|
|
440
582
|
|
|
441
|
-
- If "Approve": suggest `/pbr:
|
|
583
|
+
- If "Approve": suggest `/pbr:execute-phase {N} --gaps-only`
|
|
442
584
|
- If "Review first" or "Other": present the full plan files for inspection
|
|
443
585
|
- If "Fix manually": suggest relevant files to inspect based on gap details
|
|
444
586
|
|
|
@@ -446,8 +588,11 @@ Use AskUserQuestion (pattern: approve-revise-abort from `skills/shared/gate-prom
|
|
|
446
588
|
|
|
447
589
|
If gaps were found and `--auto-fix` was NOT specified:
|
|
448
590
|
|
|
449
|
-
1. List all gaps clearly
|
|
450
|
-
2.
|
|
591
|
+
1. List all gaps clearly, grouped by severity (Critical first, then Non-Critical)
|
|
592
|
+
2. If VERIFICATION.md frontmatter contains `fix_plans:`, present existing fix plans:
|
|
593
|
+
- For each fix plan: show gap, estimated effort, and planned tasks
|
|
594
|
+
- Offer to create these as follow-up plans directly
|
|
595
|
+
3. **Default to auto-fix** — offer it as the recommended action, not a hidden flag
|
|
451
596
|
|
|
452
597
|
```
|
|
453
598
|
Phase {N}: {name} — Gaps Found
|
|
@@ -490,6 +635,8 @@ After adding overrides, re-evaluate: if all remaining gaps are now overridden, m
|
|
|
490
635
|
|
|
491
636
|
## UAT Result Recording
|
|
492
637
|
|
|
638
|
+
**Template reference:** Read `${CLAUDE_PLUGIN_ROOT}/templates/UAT.md.tmpl` for the persistent UAT session format. Use this template when creating standalone UAT tracking files for complex phases. For simpler phases, append UAT results directly to VERIFICATION.md as shown below.
|
|
639
|
+
|
|
493
640
|
After conversational UAT, append UAT results to VERIFICATION.md:
|
|
494
641
|
|
|
495
642
|
```markdown
|
|
@@ -564,15 +711,17 @@ Ask user: "Would you like to proceed with gap-closure plans without root cause a
|
|
|
564
711
|
|
|
565
712
|
---
|
|
566
713
|
|
|
567
|
-
## Files Created/Modified by /pbr:
|
|
714
|
+
## Files Created/Modified by /pbr:verify-work
|
|
568
715
|
|
|
569
716
|
| File | Purpose | When |
|
|
570
717
|
|------|---------|------|
|
|
571
|
-
| `.planning/phases/{NN}-{slug}/VERIFICATION.md` | Verification report | Step 3 (created or updated with UAT) |
|
|
718
|
+
| `.planning/phases/{NN}-{slug}/VERIFICATION.md` | Verification report (depth-aware) | Step 3 (created or updated with UAT) |
|
|
572
719
|
| `.planning/phases/{NN}-{slug}/*-PLAN.md` | Gap-closure plans | Step 6b (--auto-fix only) |
|
|
573
720
|
| `.planning/ROADMAP.md` | Status → `verified` + Completed date | Step 6 |
|
|
574
721
|
| `.planning/STATE.md` | Updated with review status | Step 6 |
|
|
575
722
|
|
|
723
|
+
**Graduated depth behavior:** Step 1.7 resolves verification depth via trust-gate. Step 3 passes depth to verifier. Step 5 checks autonomy.level to gate UAT.
|
|
724
|
+
|
|
576
725
|
---
|
|
577
726
|
|
|
578
727
|
## Cleanup
|
|
@@ -581,109 +730,13 @@ Delete `.planning/.active-skill` if it exists. This must happen on all paths (su
|
|
|
581
730
|
|
|
582
731
|
## Completion
|
|
583
732
|
|
|
584
|
-
After review completes, always present a clear next action:
|
|
585
|
-
|
|
586
|
-
**If verified (not final phase):**
|
|
587
|
-
|
|
588
|
-
Display the "Phase Complete" banner inline:
|
|
589
|
-
```
|
|
590
|
-
╔══════════════════════════════════════════════════════════════╗
|
|
591
|
-
║ PLAN-BUILD-RUN ► PHASE {N} COMPLETE ✓ ║
|
|
592
|
-
╚══════════════════════════════════════════════════════════════╝
|
|
593
|
-
|
|
594
|
-
**Phase {N}: {Name}**
|
|
595
|
-
|
|
596
|
-
{X} plans executed
|
|
597
|
-
Goal verified ✓
|
|
598
|
-
```
|
|
599
|
-
|
|
600
|
-
Then the branded "Next Up" block:
|
|
601
|
-
```
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
╔══════════════════════════════════════════════════════════════╗
|
|
605
|
-
║ ▶ NEXT UP ║
|
|
606
|
-
╚══════════════════════════════════════════════════════════════╝
|
|
607
|
-
|
|
608
|
-
**Phase {N+1}: {Name}** — {Goal from ROADMAP.md}
|
|
609
|
-
|
|
610
|
-
`/pbr:plan {N+1}`
|
|
611
|
-
|
|
612
|
-
<sub>`/clear` first → fresh context window</sub>
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
**Also available:**
|
|
617
|
-
- `/pbr:discuss {N+1}` — talk through details before planning
|
|
618
|
-
- `/pbr:status` — see full project status
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
```
|
|
622
|
-
|
|
623
|
-
**If gaps remain:**
|
|
624
|
-
```
|
|
625
|
-
╔══════════════════════════════════════════════════════════════╗
|
|
626
|
-
║ PLAN-BUILD-RUN ► PHASE {N} GAPS FOUND ⚠ ║
|
|
627
|
-
╚══════════════════════════════════════════════════════════════╝
|
|
628
|
-
|
|
629
|
-
**Phase {N}: {name}** — {count} gaps remaining
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
╔══════════════════════════════════════════════════════════════╗
|
|
634
|
-
║ ▶ NEXT UP ║
|
|
635
|
-
╚══════════════════════════════════════════════════════════════╝
|
|
636
|
-
|
|
637
|
-
**Fix gaps** — diagnose and create fix plans
|
|
638
|
-
|
|
639
|
-
`/pbr:review {N} --auto-fix`
|
|
640
|
-
|
|
641
|
-
<sub>`/clear` first → fresh context window</sub>
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
**Also available:**
|
|
646
|
-
- `/pbr:plan {N} --gaps` — create fix plans manually
|
|
647
|
-
- Fix manually, then `/pbr:review {N}`
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
```
|
|
651
|
-
|
|
652
|
-
**If final phase:**
|
|
653
|
-
|
|
654
|
-
Display the "Milestone Complete" banner inline:
|
|
655
|
-
```
|
|
656
|
-
╔══════════════════════════════════════════════════════════════╗
|
|
657
|
-
║ PLAN-BUILD-RUN ► MILESTONE COMPLETE 🎉 ║
|
|
658
|
-
╚══════════════════════════════════════════════════════════════╝
|
|
733
|
+
After review completes, always present a clear next action using the completion banners from Read `references/ui-brand.md` § "Completion Summary Templates":
|
|
659
734
|
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
Then:
|
|
665
|
-
```
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
╔══════════════════════════════════════════════════════════════╗
|
|
669
|
-
║ ▶ NEXT UP ║
|
|
670
|
-
╚══════════════════════════════════════════════════════════════╝
|
|
671
|
-
|
|
672
|
-
**Audit milestone** — verify cross-phase integration
|
|
735
|
+
- **If verified (not final phase):** Use the "Phase Complete" template. Fill in phase number, name, plan count, and next phase details.
|
|
736
|
+
- **If gaps remain:** Use the "Gaps Found" template. Fill in phase number, name, gap count, and gap summaries.
|
|
737
|
+
- **If final phase:** Use the "Milestone Complete" template. Fill in phase count.
|
|
673
738
|
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
<sub>`/clear` first → fresh context window</sub>
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
**Also available:**
|
|
681
|
-
- `/pbr:milestone complete` — archive milestone after audit passes
|
|
682
|
-
- `/pbr:milestone new` — start planning next features
|
|
683
|
-
- `/pbr:status` — see final project status
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
```
|
|
739
|
+
Include `<sub>/clear first → fresh context window</sub>` inside the Next Up routing block of the completion template.
|
|
687
740
|
|
|
688
741
|
---
|
|
689
742
|
|
|
@@ -692,7 +745,7 @@ Then:
|
|
|
692
745
|
For user-friendly interpretation of verification results, see `references/reading-verification.md`.
|
|
693
746
|
|
|
694
747
|
- The verifier agent has NO Write/Edit tools for project source code — it can only read, check, and write VERIFICATION.md
|
|
695
|
-
- Re-running `/pbr:
|
|
748
|
+
- Re-running `/pbr:verify-work` after gap closure triggers fresh verification
|
|
696
749
|
- UAT results are conversational — user responses are captured inline
|
|
697
750
|
- VERIFICATION.md is persistent and serves as the ground truth for gap closure
|
|
698
751
|
- The three-layer check (existence -> substantiveness -> wiring) catches progressively deeper issues
|