@accelerationguy/accel 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +19 -0
- package/LICENSE +33 -0
- package/README.md +275 -0
- package/bin/install.js +661 -0
- package/docs/getting-started.md +164 -0
- package/docs/module-guide.md +139 -0
- package/modules/drive/LICENSE +21 -0
- package/modules/drive/PAUL-VS-GSD.md +171 -0
- package/modules/drive/README.md +555 -0
- package/modules/drive/assets/terminal.svg +67 -0
- package/modules/drive/bin/install.js +210 -0
- package/modules/drive/integration.js +76 -0
- package/modules/drive/package.json +38 -0
- package/modules/drive/src/commands/add-phase.md +36 -0
- package/modules/drive/src/commands/apply.md +83 -0
- package/modules/drive/src/commands/assumptions.md +37 -0
- package/modules/drive/src/commands/audit.md +57 -0
- package/modules/drive/src/commands/complete-milestone.md +36 -0
- package/modules/drive/src/commands/config.md +175 -0
- package/modules/drive/src/commands/consider-issues.md +41 -0
- package/modules/drive/src/commands/discover.md +48 -0
- package/modules/drive/src/commands/discuss-milestone.md +33 -0
- package/modules/drive/src/commands/discuss.md +34 -0
- package/modules/drive/src/commands/flows.md +73 -0
- package/modules/drive/src/commands/handoff.md +201 -0
- package/modules/drive/src/commands/help.md +525 -0
- package/modules/drive/src/commands/init.md +54 -0
- package/modules/drive/src/commands/map-codebase.md +34 -0
- package/modules/drive/src/commands/milestone.md +34 -0
- package/modules/drive/src/commands/pause.md +44 -0
- package/modules/drive/src/commands/plan-fix.md +216 -0
- package/modules/drive/src/commands/plan.md +36 -0
- package/modules/drive/src/commands/progress.md +138 -0
- package/modules/drive/src/commands/register.md +29 -0
- package/modules/drive/src/commands/remove-phase.md +37 -0
- package/modules/drive/src/commands/research-phase.md +209 -0
- package/modules/drive/src/commands/research.md +47 -0
- package/modules/drive/src/commands/resume.md +49 -0
- package/modules/drive/src/commands/status.md +78 -0
- package/modules/drive/src/commands/unify.md +87 -0
- package/modules/drive/src/commands/verify.md +60 -0
- package/modules/drive/src/references/checkpoints.md +234 -0
- package/modules/drive/src/references/context-management.md +219 -0
- package/modules/drive/src/references/git-strategy.md +206 -0
- package/modules/drive/src/references/loop-phases.md +254 -0
- package/modules/drive/src/references/plan-format.md +263 -0
- package/modules/drive/src/references/quality-principles.md +152 -0
- package/modules/drive/src/references/research-quality-control.md +247 -0
- package/modules/drive/src/references/sonarqube-integration.md +244 -0
- package/modules/drive/src/references/specialized-workflow-integration.md +186 -0
- package/modules/drive/src/references/subagent-criteria.md +179 -0
- package/modules/drive/src/references/tdd.md +219 -0
- package/modules/drive/src/references/work-units.md +161 -0
- package/modules/drive/src/rules/commands.md +108 -0
- package/modules/drive/src/rules/references.md +107 -0
- package/modules/drive/src/rules/style.md +123 -0
- package/modules/drive/src/rules/templates.md +51 -0
- package/modules/drive/src/rules/workflows.md +133 -0
- package/modules/drive/src/templates/CONTEXT.md +88 -0
- package/modules/drive/src/templates/DEBUG.md +164 -0
- package/modules/drive/src/templates/DISCOVERY.md +148 -0
- package/modules/drive/src/templates/HANDOFF.md +77 -0
- package/modules/drive/src/templates/ISSUES.md +93 -0
- package/modules/drive/src/templates/MILESTONES.md +167 -0
- package/modules/drive/src/templates/PLAN.md +328 -0
- package/modules/drive/src/templates/PROJECT.md +219 -0
- package/modules/drive/src/templates/RESEARCH.md +130 -0
- package/modules/drive/src/templates/ROADMAP.md +328 -0
- package/modules/drive/src/templates/SPECIAL-FLOWS.md +70 -0
- package/modules/drive/src/templates/STATE.md +210 -0
- package/modules/drive/src/templates/SUMMARY.md +221 -0
- package/modules/drive/src/templates/UAT-ISSUES.md +139 -0
- package/modules/drive/src/templates/codebase/architecture.md +259 -0
- package/modules/drive/src/templates/codebase/concerns.md +329 -0
- package/modules/drive/src/templates/codebase/conventions.md +311 -0
- package/modules/drive/src/templates/codebase/integrations.md +284 -0
- package/modules/drive/src/templates/codebase/stack.md +190 -0
- package/modules/drive/src/templates/codebase/structure.md +287 -0
- package/modules/drive/src/templates/codebase/testing.md +484 -0
- package/modules/drive/src/templates/config.md +181 -0
- package/modules/drive/src/templates/milestone-archive.md +236 -0
- package/modules/drive/src/templates/milestone-context.md +190 -0
- package/modules/drive/src/templates/paul-json.md +147 -0
- package/modules/drive/src/vector-config/PAUL +26 -0
- package/modules/drive/src/vector-config/PAUL.manifest +11 -0
- package/modules/drive/src/workflows/apply-phase.md +393 -0
- package/modules/drive/src/workflows/audit-plan.md +344 -0
- package/modules/drive/src/workflows/complete-milestone.md +479 -0
- package/modules/drive/src/workflows/configure-special-flows.md +283 -0
- package/modules/drive/src/workflows/consider-issues.md +172 -0
- package/modules/drive/src/workflows/create-milestone.md +268 -0
- package/modules/drive/src/workflows/debug.md +292 -0
- package/modules/drive/src/workflows/discovery.md +187 -0
- package/modules/drive/src/workflows/discuss-milestone.md +245 -0
- package/modules/drive/src/workflows/discuss-phase.md +231 -0
- package/modules/drive/src/workflows/init-project.md +698 -0
- package/modules/drive/src/workflows/map-codebase.md +459 -0
- package/modules/drive/src/workflows/pause-work.md +259 -0
- package/modules/drive/src/workflows/phase-assumptions.md +181 -0
- package/modules/drive/src/workflows/plan-phase.md +385 -0
- package/modules/drive/src/workflows/quality-gate.md +263 -0
- package/modules/drive/src/workflows/register-manifest.md +107 -0
- package/modules/drive/src/workflows/research.md +241 -0
- package/modules/drive/src/workflows/resume-project.md +200 -0
- package/modules/drive/src/workflows/roadmap-management.md +334 -0
- package/modules/drive/src/workflows/transition-phase.md +368 -0
- package/modules/drive/src/workflows/unify-phase.md +290 -0
- package/modules/drive/src/workflows/verify-work.md +241 -0
- package/modules/forge/README.md +281 -0
- package/modules/forge/bin/install.js +200 -0
- package/modules/forge/package.json +32 -0
- package/modules/forge/skillsmith/rules/checklists-rules.md +42 -0
- package/modules/forge/skillsmith/rules/context-rules.md +43 -0
- package/modules/forge/skillsmith/rules/entry-point-rules.md +44 -0
- package/modules/forge/skillsmith/rules/frameworks-rules.md +43 -0
- package/modules/forge/skillsmith/rules/tasks-rules.md +52 -0
- package/modules/forge/skillsmith/rules/templates-rules.md +43 -0
- package/modules/forge/skillsmith/skillsmith.md +82 -0
- package/modules/forge/skillsmith/tasks/audit.md +277 -0
- package/modules/forge/skillsmith/tasks/discover.md +145 -0
- package/modules/forge/skillsmith/tasks/distill.md +276 -0
- package/modules/forge/skillsmith/tasks/scaffold.md +349 -0
- package/modules/forge/specs/checklists.md +193 -0
- package/modules/forge/specs/context.md +223 -0
- package/modules/forge/specs/entry-point.md +320 -0
- package/modules/forge/specs/frameworks.md +228 -0
- package/modules/forge/specs/rules.md +245 -0
- package/modules/forge/specs/tasks.md +344 -0
- package/modules/forge/specs/templates.md +335 -0
- package/modules/forge/terminal.svg +70 -0
- package/modules/ignition/README.md +245 -0
- package/modules/ignition/bin/install.js +184 -0
- package/modules/ignition/checklists/planning-quality.md +55 -0
- package/modules/ignition/data/application/config.md +21 -0
- package/modules/ignition/data/application/guide.md +51 -0
- package/modules/ignition/data/application/skill-loadout.md +11 -0
- package/modules/ignition/data/campaign/config.md +18 -0
- package/modules/ignition/data/campaign/guide.md +36 -0
- package/modules/ignition/data/campaign/skill-loadout.md +10 -0
- package/modules/ignition/data/client/config.md +18 -0
- package/modules/ignition/data/client/guide.md +36 -0
- package/modules/ignition/data/client/skill-loadout.md +11 -0
- package/modules/ignition/data/utility/config.md +18 -0
- package/modules/ignition/data/utility/guide.md +31 -0
- package/modules/ignition/data/utility/skill-loadout.md +8 -0
- package/modules/ignition/data/workflow/config.md +19 -0
- package/modules/ignition/data/workflow/guide.md +41 -0
- package/modules/ignition/data/workflow/skill-loadout.md +10 -0
- package/modules/ignition/integration.js +54 -0
- package/modules/ignition/package.json +35 -0
- package/modules/ignition/seed.md +81 -0
- package/modules/ignition/tasks/add-type.md +164 -0
- package/modules/ignition/tasks/graduate.md +182 -0
- package/modules/ignition/tasks/ideate.md +221 -0
- package/modules/ignition/tasks/launch.md +137 -0
- package/modules/ignition/tasks/status.md +71 -0
- package/modules/ignition/templates/planning-application.md +193 -0
- package/modules/ignition/templates/planning-campaign.md +138 -0
- package/modules/ignition/templates/planning-client.md +149 -0
- package/modules/ignition/templates/planning-utility.md +112 -0
- package/modules/ignition/templates/planning-workflow.md +125 -0
- package/modules/ignition/terminal.svg +74 -0
- package/modules/mission-control/CONTEXT-CONTINUITY-SPEC.md +293 -0
- package/modules/mission-control/CONTEXT-ENGINEERING-GUIDE.md +282 -0
- package/modules/mission-control/README.md +91 -0
- package/modules/mission-control/assets/terminal.svg +80 -0
- package/modules/mission-control/examples/entities.example.json +133 -0
- package/modules/mission-control/examples/projects.example.json +318 -0
- package/modules/mission-control/examples/state.example.json +183 -0
- package/modules/mission-control/examples/vector.example.json +245 -0
- package/modules/mission-control/mission-control/checklists/install-verification.md +46 -0
- package/modules/mission-control/mission-control/frameworks/framework-registry.md +83 -0
- package/modules/mission-control/mission-control/mission-control.md +83 -0
- package/modules/mission-control/mission-control/tasks/insights.md +73 -0
- package/modules/mission-control/mission-control/tasks/install.md +194 -0
- package/modules/mission-control/mission-control/tasks/status.md +125 -0
- package/modules/mission-control/schemas/entities.schema.json +89 -0
- package/modules/mission-control/schemas/projects.schema.json +221 -0
- package/modules/mission-control/schemas/state.schema.json +108 -0
- package/modules/mission-control/schemas/vector.schema.json +200 -0
- package/modules/momentum/README.md +678 -0
- package/modules/momentum/bin/install.js +563 -0
- package/modules/momentum/integration.js +131 -0
- package/modules/momentum/package.json +42 -0
- package/modules/momentum/schemas/entities.schema.json +89 -0
- package/modules/momentum/schemas/projects.schema.json +221 -0
- package/modules/momentum/schemas/state.schema.json +108 -0
- package/modules/momentum/src/commands/audit-claude-md.md +31 -0
- package/modules/momentum/src/commands/audit.md +33 -0
- package/modules/momentum/src/commands/groom.md +35 -0
- package/modules/momentum/src/commands/history.md +27 -0
- package/modules/momentum/src/commands/pulse.md +33 -0
- package/modules/momentum/src/commands/scaffold.md +33 -0
- package/modules/momentum/src/commands/status.md +28 -0
- package/modules/momentum/src/commands/surface-convert.md +35 -0
- package/modules/momentum/src/commands/surface-create.md +34 -0
- package/modules/momentum/src/commands/surface-list.md +27 -0
- package/modules/momentum/src/commands/vector-hygiene.md +33 -0
- package/modules/momentum/src/framework/context/momentum-principles.md +71 -0
- package/modules/momentum/src/framework/frameworks/audit-strategies.md +53 -0
- package/modules/momentum/src/framework/frameworks/satellite-registration.md +44 -0
- package/modules/momentum/src/framework/tasks/audit-claude-md.md +68 -0
- package/modules/momentum/src/framework/tasks/audit.md +64 -0
- package/modules/momentum/src/framework/tasks/groom.md +164 -0
- package/modules/momentum/src/framework/tasks/history.md +34 -0
- package/modules/momentum/src/framework/tasks/pulse.md +83 -0
- package/modules/momentum/src/framework/tasks/scaffold.md +202 -0
- package/modules/momentum/src/framework/tasks/status.md +35 -0
- package/modules/momentum/src/framework/tasks/surface-convert.md +143 -0
- package/modules/momentum/src/framework/tasks/surface-create.md +184 -0
- package/modules/momentum/src/framework/tasks/surface-list.md +42 -0
- package/modules/momentum/src/framework/tasks/vector-hygiene.md +160 -0
- package/modules/momentum/src/framework/templates/workspace-json.md +96 -0
- package/modules/momentum/src/hooks/_template.py +129 -0
- package/modules/momentum/src/hooks/active-hook.py +178 -0
- package/modules/momentum/src/hooks/backlog-hook.py +115 -0
- package/modules/momentum/src/hooks/mission-control-insights.py +169 -0
- package/modules/momentum/src/hooks/momentum-pulse-check.py +351 -0
- package/modules/momentum/src/hooks/operator.py +53 -0
- package/modules/momentum/src/hooks/psmm-injector.py +67 -0
- package/modules/momentum/src/hooks/satellite-detection.py +248 -0
- package/modules/momentum/src/packages/momentum-mcp/index.js +119 -0
- package/modules/momentum/src/packages/momentum-mcp/package.json +10 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/entities.js +226 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/operator.js +106 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/projects.js +322 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/psmm.js +206 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/state.js +199 -0
- package/modules/momentum/src/packages/momentum-mcp/tools/surfaces.js +404 -0
- package/modules/momentum/src/skill/momentum.md +111 -0
- package/modules/momentum/src/tasks/groom.md +164 -0
- package/modules/momentum/src/templates/operator.json +66 -0
- package/modules/momentum/src/templates/workspace.json +111 -0
- package/modules/momentum/terminal.svg +77 -0
- package/modules/radar/README.md +1552 -0
- package/modules/radar/commands/audit.md +233 -0
- package/modules/radar/commands/guardrails.md +194 -0
- package/modules/radar/commands/init.md +207 -0
- package/modules/radar/commands/playbook.md +176 -0
- package/modules/radar/commands/remediate.md +156 -0
- package/modules/radar/commands/report.md +172 -0
- package/modules/radar/commands/resume.md +176 -0
- package/modules/radar/commands/status.md +148 -0
- package/modules/radar/commands/transform.md +205 -0
- package/modules/radar/commands/validate.md +177 -0
- package/modules/radar/docs/ARCHITECTURE.md +336 -0
- package/modules/radar/docs/GETTING-STARTED.md +287 -0
- package/modules/radar/docs/standards/agents.md +197 -0
- package/modules/radar/docs/standards/commands.md +250 -0
- package/modules/radar/docs/standards/domains.md +191 -0
- package/modules/radar/docs/standards/personas.md +211 -0
- package/modules/radar/docs/standards/rules.md +218 -0
- package/modules/radar/docs/standards/runtime.md +445 -0
- package/modules/radar/docs/standards/schemas.md +269 -0
- package/modules/radar/docs/standards/tools.md +273 -0
- package/modules/radar/docs/standards/workflows.md +254 -0
- package/modules/radar/docs/terminal.svg +72 -0
- package/modules/radar/docs/validation/convention-compliance-report.md +183 -0
- package/modules/radar/docs/validation/cross-reference-report.md +195 -0
- package/modules/radar/docs/validation/validation-summary.md +118 -0
- package/modules/radar/docs/validation/version-manifest.yaml +363 -0
- package/modules/radar/install.sh +711 -0
- package/modules/radar/integration.js +53 -0
- package/modules/radar/src/core/agents/architect.md +25 -0
- package/modules/radar/src/core/agents/compliance-officer.md +25 -0
- package/modules/radar/src/core/agents/data-engineer.md +25 -0
- package/modules/radar/src/core/agents/devils-advocate.md +22 -0
- package/modules/radar/src/core/agents/performance-engineer.md +25 -0
- package/modules/radar/src/core/agents/principal-engineer.md +23 -0
- package/modules/radar/src/core/agents/reality-gap-analyst.md +22 -0
- package/modules/radar/src/core/agents/security-engineer.md +25 -0
- package/modules/radar/src/core/agents/senior-app-engineer.md +25 -0
- package/modules/radar/src/core/agents/sre.md +25 -0
- package/modules/radar/src/core/agents/staff-engineer.md +23 -0
- package/modules/radar/src/core/agents/test-engineer.md +25 -0
- package/modules/radar/src/core/personas/architect.md +111 -0
- package/modules/radar/src/core/personas/compliance-officer.md +104 -0
- package/modules/radar/src/core/personas/data-engineer.md +113 -0
- package/modules/radar/src/core/personas/devils-advocate.md +105 -0
- package/modules/radar/src/core/personas/performance-engineer.md +119 -0
- package/modules/radar/src/core/personas/principal-engineer.md +119 -0
- package/modules/radar/src/core/personas/reality-gap-analyst.md +111 -0
- package/modules/radar/src/core/personas/security-engineer.md +108 -0
- package/modules/radar/src/core/personas/senior-app-engineer.md +111 -0
- package/modules/radar/src/core/personas/sre.md +117 -0
- package/modules/radar/src/core/personas/staff-engineer.md +109 -0
- package/modules/radar/src/core/personas/test-engineer.md +109 -0
- package/modules/radar/src/core/workflows/disagreement-resolution.md +183 -0
- package/modules/radar/src/core/workflows/phase-0-context.md +148 -0
- package/modules/radar/src/core/workflows/phase-1-reconnaissance.md +169 -0
- package/modules/radar/src/core/workflows/phase-2-domain-audits.md +190 -0
- package/modules/radar/src/core/workflows/phase-3-cross-domain.md +177 -0
- package/modules/radar/src/core/workflows/phase-4-adversarial-review.md +165 -0
- package/modules/radar/src/core/workflows/phase-5-report.md +189 -0
- package/modules/radar/src/core/workflows/phase-checkpoint.md +222 -0
- package/modules/radar/src/core/workflows/session-handoff.md +152 -0
- package/modules/radar/src/domains/00-context.md +201 -0
- package/modules/radar/src/domains/01-architecture.md +248 -0
- package/modules/radar/src/domains/02-data.md +224 -0
- package/modules/radar/src/domains/03-correctness.md +230 -0
- package/modules/radar/src/domains/04-security.md +274 -0
- package/modules/radar/src/domains/05-compliance.md +228 -0
- package/modules/radar/src/domains/06-testing.md +228 -0
- package/modules/radar/src/domains/07-reliability.md +246 -0
- package/modules/radar/src/domains/08-performance.md +247 -0
- package/modules/radar/src/domains/09-maintainability.md +271 -0
- package/modules/radar/src/domains/10-operability.md +250 -0
- package/modules/radar/src/domains/11-change-risk.md +246 -0
- package/modules/radar/src/domains/12-team-risk.md +221 -0
- package/modules/radar/src/domains/13-risk-synthesis.md +202 -0
- package/modules/radar/src/rules/agent-boundaries.md +78 -0
- package/modules/radar/src/rules/disagreement-protocol.md +76 -0
- package/modules/radar/src/rules/epistemic-hygiene.md +78 -0
- package/modules/radar/src/schemas/confidence.md +185 -0
- package/modules/radar/src/schemas/disagreement.md +238 -0
- package/modules/radar/src/schemas/finding.md +287 -0
- package/modules/radar/src/schemas/report-section.md +150 -0
- package/modules/radar/src/schemas/signal.md +108 -0
- package/modules/radar/src/tools/checkov.md +463 -0
- package/modules/radar/src/tools/git-history.md +581 -0
- package/modules/radar/src/tools/gitleaks.md +447 -0
- package/modules/radar/src/tools/grype.md +611 -0
- package/modules/radar/src/tools/semgrep.md +378 -0
- package/modules/radar/src/tools/sonarqube.md +550 -0
- package/modules/radar/src/tools/syft.md +539 -0
- package/modules/radar/src/tools/trivy.md +439 -0
- package/modules/radar/src/transform/agents/change-risk-modeler.md +24 -0
- package/modules/radar/src/transform/agents/execution-validator.md +24 -0
- package/modules/radar/src/transform/agents/guardrail-generator.md +24 -0
- package/modules/radar/src/transform/agents/pedagogy-agent.md +24 -0
- package/modules/radar/src/transform/agents/remediation-architect.md +24 -0
- package/modules/radar/src/transform/personas/change-risk-modeler.md +95 -0
- package/modules/radar/src/transform/personas/execution-validator.md +95 -0
- package/modules/radar/src/transform/personas/guardrail-generator.md +103 -0
- package/modules/radar/src/transform/personas/pedagogy-agent.md +105 -0
- package/modules/radar/src/transform/personas/remediation-architect.md +95 -0
- package/modules/radar/src/transform/rules/change-risk-rules.md +87 -0
- package/modules/radar/src/transform/rules/safety-governance.md +87 -0
- package/modules/radar/src/transform/schemas/change-risk.md +139 -0
- package/modules/radar/src/transform/schemas/intervention-level.md +207 -0
- package/modules/radar/src/transform/schemas/playbook.md +205 -0
- package/modules/radar/src/transform/schemas/verification-plan.md +134 -0
- package/modules/radar/src/transform/workflows/phase-6-remediation.md +148 -0
- package/modules/radar/src/transform/workflows/phase-7-risk-validation.md +161 -0
- package/modules/radar/src/transform/workflows/phase-8-execution-planning.md +159 -0
- package/modules/radar/src/transform/workflows/transform-safety.md +158 -0
- package/modules/vector/.vector-template/sessions/.gitkeep +0 -0
- package/modules/vector/.vector-template/vector.json +72 -0
- package/modules/vector/AUDIT-CLAUDEMD.md +154 -0
- package/modules/vector/INSTALL.md +185 -0
- package/modules/vector/LICENSE +21 -0
- package/modules/vector/README.md +409 -0
- package/modules/vector/VECTOR-BLOCK.md +57 -0
- package/modules/vector/assets/terminal.svg +68 -0
- package/modules/vector/bin/install.js +455 -0
- package/modules/vector/bin/migrate-v1-to-v2.sh +492 -0
- package/modules/vector/commands/help.md +46 -0
- package/modules/vector/hooks/vector-hook.py +775 -0
- package/modules/vector/mcp/index.js +118 -0
- package/modules/vector/mcp/package.json +10 -0
- package/modules/vector/mcp/tools/decisions.js +269 -0
- package/modules/vector/mcp/tools/domains.js +361 -0
- package/modules/vector/mcp/tools/staging.js +252 -0
- package/modules/vector/mcp/tools/vector-json.js +647 -0
- package/modules/vector/package.json +38 -0
- package/modules/vector/schemas/vector.schema.json +237 -0
- package/package.json +39 -0
- package/shared/branding/branding.js +70 -0
- package/shared/config/defaults.json +59 -0
- package/shared/events/README.md +175 -0
- package/shared/events/event-bus.js +134 -0
- package/shared/events/event_bus.py +255 -0
- package/shared/events/integrations.js +161 -0
- package/shared/events/schemas/audit-complete.schema.json +21 -0
- package/shared/events/schemas/phase-progress.schema.json +23 -0
- package/shared/events/schemas/plan-created.schema.json +21 -0
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Executes the adversarial review by invoking the Devil's Advocate agent to challenge all prior findings — attacking confidence, exposing blind spots, and surfacing what was missed across the complete analytical record from Phases 2-3.
|
|
3
|
+
</purpose>
|
|
4
|
+
|
|
5
|
+
<phase_context>
|
|
6
|
+
Phase: 4 — Adversarial Review ("Fresh Eyes")
|
|
7
|
+
Prior phase output: Phase 2 domain findings (.radar/findings/ from 8 agents), Phase 3 synthesis findings (staff-engineer, reality-gap-analyst), all disagreement records (.radar/disagreements/*.md)
|
|
8
|
+
Agents invoked: devils-advocate (single agent, solo session)
|
|
9
|
+
Output: Devil's Advocate critique (.radar/findings/devils-advocate.md), new disagreement records (.radar/disagreements/*.md), updated .radar/STATE.md
|
|
10
|
+
</phase_context>
|
|
11
|
+
|
|
12
|
+
<required_input>
|
|
13
|
+
@.radar/STATE.md
|
|
14
|
+
@.radar/MANIFEST.md
|
|
15
|
+
@.radar/scope.md
|
|
16
|
+
@.radar/findings/*.md (ALL finding files from Phases 2-3)
|
|
17
|
+
@.radar/disagreements/*.md (ALL existing disagreement records)
|
|
18
|
+
@~/.claude/radar/core/agents/devils-advocate.md
|
|
19
|
+
@~/.claude/radar/core/personas/devils-advocate.md
|
|
20
|
+
@~/.claude/radar/schemas/finding.md
|
|
21
|
+
@~/.claude/radar/schemas/disagreement.md
|
|
22
|
+
@~/.claude/radar/schemas/confidence.md
|
|
23
|
+
@~/.claude/radar/rules/epistemic-hygiene.md
|
|
24
|
+
@~/.claude/radar/rules/disagreement-protocol.md
|
|
25
|
+
@~/.claude/radar/rules/agent-boundaries.md
|
|
26
|
+
@~/.claude/radar/core/workflows/session-handoff.md
|
|
27
|
+
@~/.claude/radar/core/workflows/disagreement-resolution.md
|
|
28
|
+
</required_input>
|
|
29
|
+
|
|
30
|
+
<process>
|
|
31
|
+
|
|
32
|
+
<step name="validate_prerequisites" priority="first">
|
|
33
|
+
1. Verify .radar/STATE.md shows Phase 3 complete:
|
|
34
|
+
a. Check phase_3_complete: true
|
|
35
|
+
b. Check .radar/findings/ contains Phase 2 AND Phase 3 agent finding files
|
|
36
|
+
2. If Phase 3 is not complete:
|
|
37
|
+
a. Halt with error: "Phase 3 (Cross-Domain Synthesis) not complete. Run phase-3-cross-domain workflow first."
|
|
38
|
+
b. Do not proceed.
|
|
39
|
+
3. Inventory the complete analytical record:
|
|
40
|
+
a. Count total findings across all agents
|
|
41
|
+
b. Count total disagreements (resolved and unresolved)
|
|
42
|
+
c. Identify which domains have coverage and which have gaps
|
|
43
|
+
4. Update .radar/STATE.md:
|
|
44
|
+
a. current_phase: 4
|
|
45
|
+
b. phase_status: in_progress
|
|
46
|
+
c. agents_remaining: [devils-advocate]
|
|
47
|
+
</step>
|
|
48
|
+
|
|
49
|
+
<step name="assemble_complete_record" priority="blocking">
|
|
50
|
+
1. Load ALL finding files from .radar/findings/:
|
|
51
|
+
a. Phase 2 agents: architect, data-engineer, security-engineer, compliance-officer, senior-app-engineer, sre, performance-engineer, test-engineer
|
|
52
|
+
b. Phase 3 agents: staff-engineer, reality-gap-analyst
|
|
53
|
+
c. Note any agents that failed (gaps in record)
|
|
54
|
+
2. Load ALL disagreement records from .radar/disagreements/:
|
|
55
|
+
a. Both resolved and unresolved disagreements
|
|
56
|
+
b. Include resolution rationale for resolved ones (the Devil's Advocate may challenge resolutions)
|
|
57
|
+
3. Load .radar/STATE.md with full phase metrics:
|
|
58
|
+
a. Finding counts per agent and domain
|
|
59
|
+
b. Severity distribution
|
|
60
|
+
c. Coverage gaps
|
|
61
|
+
d. Disagreement resolution status
|
|
62
|
+
4. Load .radar/scope.md for audit boundary awareness.
|
|
63
|
+
5. Estimate total context size — the Devil's Advocate receives the LARGEST context of any agent session.
|
|
64
|
+
</step>
|
|
65
|
+
|
|
66
|
+
<step name="prepare_devils_advocate_context" priority="blocking">
|
|
67
|
+
1. Load devils-advocate agent manifest from src/core/agents/devils-advocate.md.
|
|
68
|
+
2. Resolve component references:
|
|
69
|
+
a. Persona: src/core/personas/devils-advocate.md
|
|
70
|
+
b. Domains: none (empty — meta-reasoner operates on analytical record, not raw signals)
|
|
71
|
+
c. Tools: none (empty — no tool signals, only findings and disagreements)
|
|
72
|
+
d. Schemas: finding, disagreement, confidence
|
|
73
|
+
e. Rules: epistemic-hygiene, disagreement-protocol, agent-boundaries
|
|
74
|
+
3. Build context bundle:
|
|
75
|
+
a. Persona specification (first — adversarial identity is critical)
|
|
76
|
+
b. Rules (second — especially disagreement protocol)
|
|
77
|
+
c. Complete finding record (third — ALL findings from ALL agents)
|
|
78
|
+
d. All disagreement records (fourth — including resolved ones)
|
|
79
|
+
e. Audit state and metrics (fifth — coverage awareness)
|
|
80
|
+
f. Scope document (sixth — boundary awareness)
|
|
81
|
+
4. If context exceeds session budget:
|
|
82
|
+
a. Never trim persona or rules
|
|
83
|
+
b. Prioritize: high-severity findings > medium > low
|
|
84
|
+
c. Prioritize: unresolved disagreements > resolved ones
|
|
85
|
+
d. Prioritize: findings from domains with highest signal density
|
|
86
|
+
e. Log any trimmed content in .radar/STATE.md
|
|
87
|
+
</step>
|
|
88
|
+
|
|
89
|
+
<step name="invoke_devils_advocate" priority="blocking">
|
|
90
|
+
1. Invoke devils-advocate session with the complete analytical record:
|
|
91
|
+
a. Primary directive: INVALIDATE conclusions, not agree
|
|
92
|
+
b. Challenge high-confidence claims that lack diverse evidence
|
|
93
|
+
c. Attack clean narratives — look for suspiciously tidy conclusions
|
|
94
|
+
d. Surface areas with little disagreement — consensus may hide blind spots
|
|
95
|
+
e. Use inversion: "Under what conditions does this become unsafe?"
|
|
96
|
+
f. Seek asymmetric failure: "What failure would be disproportionately damaging?"
|
|
97
|
+
2. Session produces:
|
|
98
|
+
a. Critique findings — each challenges a specific prior finding or pattern
|
|
99
|
+
b. New disagreement records — structured challenges to existing conclusions
|
|
100
|
+
c. Blind spot identification — areas the audit may have missed entirely
|
|
101
|
+
d. Confidence attacks — findings where confidence is higher than evidence warrants
|
|
102
|
+
3. All output must conform to schemas:
|
|
103
|
+
a. Critiques as findings per src/schemas/finding.md
|
|
104
|
+
b. Challenges as disagreements per src/schemas/disagreement.md
|
|
105
|
+
c. Confidence assessments per src/schemas/confidence.md
|
|
106
|
+
4. On session completion:
|
|
107
|
+
a. Invoke session-handoff workflow (src/core/workflows/session-handoff.md)
|
|
108
|
+
b. Update .radar/STATE.md: agents_completed += [devils-advocate]
|
|
109
|
+
</step>
|
|
110
|
+
|
|
111
|
+
<step name="process_adversarial_output" priority="blocking">
|
|
112
|
+
1. For each new disagreement raised by the Devil's Advocate:
|
|
113
|
+
a. Validate against src/schemas/disagreement.md
|
|
114
|
+
b. Verify it references valid finding IDs from prior phases
|
|
115
|
+
c. Assign disagreement ID: D-{NNN} (continuing from previous sequence)
|
|
116
|
+
d. Set status: open
|
|
117
|
+
e. Set principal_response: pending (REQUIRED — will be filled in Phase 5)
|
|
118
|
+
f. Write to .radar/disagreements/{disagreement-id}.md
|
|
119
|
+
2. For each critique finding:
|
|
120
|
+
a. Validate against src/schemas/finding.md
|
|
121
|
+
b. Write to .radar/findings/devils-advocate.md
|
|
122
|
+
3. Queue disagreement-resolution workflow for ALL open disagreements:
|
|
123
|
+
a. This includes Phase 2 disagreements still unresolved
|
|
124
|
+
b. Plus all new Phase 4 disagreements
|
|
125
|
+
c. The Principal Engineer MUST respond to every disagreement before Phase 5 synthesis
|
|
126
|
+
</step>
|
|
127
|
+
|
|
128
|
+
<step name="update_state_phase_complete" priority="blocking">
|
|
129
|
+
1. Update .radar/STATE.md:
|
|
130
|
+
a. current_phase: 4
|
|
131
|
+
b. phase_status: complete
|
|
132
|
+
c. phase_4_complete: true
|
|
133
|
+
d. agents_completed: [devils-advocate]
|
|
134
|
+
e. devils_advocate_critiques: N (number of critique findings)
|
|
135
|
+
f. new_disagreements_phase_4: N
|
|
136
|
+
g. total_disagreements: updated cumulative count
|
|
137
|
+
h. unresolved_disagreements: count of status: open
|
|
138
|
+
i. next_phase: 5 (ONLY if all disagreements have principal_response, otherwise disagreement resolution first)
|
|
139
|
+
j. timestamp: completion time
|
|
140
|
+
2. Determine next action:
|
|
141
|
+
a. If unresolved disagreements exist: route to disagreement-resolution workflow BEFORE Phase 5
|
|
142
|
+
b. If all disagreements resolved: route to Phase 5
|
|
143
|
+
c. Record routing decision in STATE.md
|
|
144
|
+
</step>
|
|
145
|
+
|
|
146
|
+
</process>
|
|
147
|
+
|
|
148
|
+
<output>
|
|
149
|
+
Artifacts created:
|
|
150
|
+
- .radar/findings/devils-advocate.md — Adversarial critique findings
|
|
151
|
+
- .radar/disagreements/{disagreement-id}.md — New challenge records for each contested conclusion
|
|
152
|
+
- .radar/STATE.md — Updated with Phase 4 completion, critique counts, and disagreement status
|
|
153
|
+
|
|
154
|
+
All finding files conform to src/schemas/finding.md.
|
|
155
|
+
All disagreement records conform to src/schemas/disagreement.md.
|
|
156
|
+
</output>
|
|
157
|
+
|
|
158
|
+
<error_handling>
|
|
159
|
+
- **Phase 3 not complete:** Halt immediately. Display: "Phase 3 (Cross-Domain Synthesis) must complete before adversarial review. Run phase-3-cross-domain first." Do not proceed.
|
|
160
|
+
- **Devil's Advocate session failure:** This is a CRITICAL failure — Phase 4 is not optional. The adversarial review is a core epistemic safeguard. Record failure in STATE.md. Present to user with strong recommendation to retry. Do not auto-skip to Phase 5.
|
|
161
|
+
- **Context budget exceeded:** The Devil's Advocate session has the largest context need. If the complete analytical record doesn't fit: (a) summarize low-severity findings instead of including full text, (b) include full text only for high/critical severity, (c) always include ALL disagreement records in full, (d) log what was summarized.
|
|
162
|
+
- **Devil's Advocate produces no disagreements:** This is suspicious — a thorough adversarial review almost always finds something to challenge. Flag as potential issue: (a) Agent may not have received sufficient adversarial persona activation, (b) Agent may have been too deferential. Record concern in STATE.md. Do not block Phase 5 but note the anomaly.
|
|
163
|
+
- **Excessive disagreements (>30% of findings challenged):** Not an error — a high challenge rate may indicate genuine issues. Record the volume. Do not auto-filter. All challenges go to the Principal Engineer for response.
|
|
164
|
+
- **Disagreement references invalid finding ID:** Reject the specific disagreement record. Log the invalid reference. Accept other valid disagreements from the same session.
|
|
165
|
+
</error_handling>
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Executes the final synthesis and report generation by invoking the Principal Engineer to consume the complete analytical record — all findings, all disagreements, and the Devil's Advocate critique — producing the definitive Radar audit report with mandatory response to every disagreement.
|
|
3
|
+
</purpose>
|
|
4
|
+
|
|
5
|
+
<phase_context>
|
|
6
|
+
Phase: 5 — Synthesis & Report Generation
|
|
7
|
+
Prior phase output: Complete .radar/ analytical record — Phase 2 domain findings, Phase 3 synthesis findings, Phase 4 Devil's Advocate critique, all disagreement records with principal_response
|
|
8
|
+
Agents invoked: principal-engineer (Phase 5 role — synthesis and report generation, not scope establishment)
|
|
9
|
+
Output: Final Radar report sections in .radar/report/, completed .radar/STATE.md marking audit as complete
|
|
10
|
+
</phase_context>
|
|
11
|
+
|
|
12
|
+
<required_input>
|
|
13
|
+
@.radar/STATE.md
|
|
14
|
+
@.radar/MANIFEST.md
|
|
15
|
+
@.radar/scope.md
|
|
16
|
+
@.radar/threat-model.md
|
|
17
|
+
@.radar/findings/*.md (ALL finding files from ALL phases)
|
|
18
|
+
@.radar/disagreements/*.md (ALL disagreement records — must all have principal_response)
|
|
19
|
+
@~/.claude/radar/core/agents/principal-engineer.md
|
|
20
|
+
@~/.claude/radar/core/personas/principal-engineer.md
|
|
21
|
+
@~/.claude/radar/schemas/finding.md
|
|
22
|
+
@~/.claude/radar/schemas/disagreement.md
|
|
23
|
+
@~/.claude/radar/schemas/confidence.md
|
|
24
|
+
@~/.claude/radar/schemas/report-section.md
|
|
25
|
+
@~/.claude/radar/rules/epistemic-hygiene.md
|
|
26
|
+
@~/.claude/radar/rules/disagreement-protocol.md
|
|
27
|
+
@~/.claude/radar/rules/agent-boundaries.md
|
|
28
|
+
@~/.claude/radar/core/workflows/session-handoff.md
|
|
29
|
+
</required_input>
|
|
30
|
+
|
|
31
|
+
<process>
|
|
32
|
+
|
|
33
|
+
<step name="validate_prerequisites" priority="first">
|
|
34
|
+
1. Verify .radar/STATE.md shows Phase 4 complete:
|
|
35
|
+
a. Check phase_4_complete: true
|
|
36
|
+
b. Check .radar/findings/devils-advocate.md exists
|
|
37
|
+
2. CRITICAL CHECK — Verify ALL disagreements have principal_response:
|
|
38
|
+
a. Read every file in .radar/disagreements/
|
|
39
|
+
b. For each disagreement record:
|
|
40
|
+
- Verify principal_response field is present AND non-empty
|
|
41
|
+
- Verify status is not "open" (must be: mitigated, accepted_risk, deferred, or out_of_scope)
|
|
42
|
+
c. If ANY disagreement lacks principal_response:
|
|
43
|
+
- HALT. Do not proceed to Phase 5.
|
|
44
|
+
- Display: "Cannot synthesize report: N disagreements lack Principal Engineer response."
|
|
45
|
+
- List the unresolved disagreement IDs
|
|
46
|
+
- Route to disagreement-resolution workflow first
|
|
47
|
+
3. If all prerequisites met:
|
|
48
|
+
a. Update .radar/STATE.md: current_phase: 5, phase_status: in_progress
|
|
49
|
+
</step>
|
|
50
|
+
|
|
51
|
+
<step name="assemble_complete_record" priority="blocking">
|
|
52
|
+
1. Load the complete analytical record:
|
|
53
|
+
a. Phase 0: .radar/scope.md, .radar/threat-model.md
|
|
54
|
+
b. Phase 1: .radar/signals/SUMMARY.md (signal summary only — full signals not needed for synthesis)
|
|
55
|
+
c. Phase 2: .radar/findings/ from all 8 domain agents
|
|
56
|
+
d. Phase 3: .radar/findings/staff-engineer.md, .radar/findings/reality-gap-analyst.md
|
|
57
|
+
e. Phase 4: .radar/findings/devils-advocate.md
|
|
58
|
+
f. All disagreements: .radar/disagreements/*.md (with resolutions)
|
|
59
|
+
g. .radar/STATE.md with full cumulative metrics
|
|
60
|
+
2. Organize by synthesis priority:
|
|
61
|
+
a. Critical/high severity findings first
|
|
62
|
+
b. Findings with associated disagreements grouped together
|
|
63
|
+
c. Cross-domain patterns (findings referenced by multiple agents)
|
|
64
|
+
d. Devil's Advocate critiques paired with the findings they challenge
|
|
65
|
+
3. Estimate context size — Phase 5 has the SECOND largest context need (after Phase 4).
|
|
66
|
+
4. If context exceeds budget:
|
|
67
|
+
a. Include ALL high/critical findings in full
|
|
68
|
+
b. Summarize medium/low findings by domain
|
|
69
|
+
c. Include ALL disagreements in full (resolutions are critical for the report)
|
|
70
|
+
d. Include ALL Devil's Advocate critiques in full
|
|
71
|
+
e. Log trimming decisions
|
|
72
|
+
</step>
|
|
73
|
+
|
|
74
|
+
<step name="invoke_principal_engineer" priority="blocking">
|
|
75
|
+
1. Load principal-engineer agent manifest from src/core/agents/principal-engineer.md.
|
|
76
|
+
2. Resolve component references:
|
|
77
|
+
a. Persona: src/core/personas/principal-engineer.md
|
|
78
|
+
b. Domains: none (meta-reasoner — synthesizes across all domains)
|
|
79
|
+
c. Tools: none (operates on analytical record)
|
|
80
|
+
d. Schemas: finding, disagreement, report-section, confidence, signal
|
|
81
|
+
e. Rules: epistemic-hygiene, disagreement-protocol, agent-boundaries
|
|
82
|
+
3. Invoke principal-engineer session with Phase 5 instructions:
|
|
83
|
+
a. Synthesize the complete analytical record into the final Radar report
|
|
84
|
+
b. For every disagreement: verify the resolution is sound and the rationale holds under the full record
|
|
85
|
+
c. Identify cross-domain patterns that individual agents couldn't see
|
|
86
|
+
d. Calibrate severity across domains — ensure consistent severity scale
|
|
87
|
+
e. Produce a narrative that a technical leader can act on
|
|
88
|
+
4. Session produces the 7 report sections:
|
|
89
|
+
a. Executive Risk Summary — top-line risk assessment for leadership
|
|
90
|
+
b. Architecture Narrative — structural health story
|
|
91
|
+
c. Findings by Domain — severity-ranked findings per domain (all 14 domains)
|
|
92
|
+
d. Cross-Validation Notes — disagreements and their resolutions with rationale
|
|
93
|
+
e. Remediation Roadmap — prioritized action plan
|
|
94
|
+
f. Long-Term Structural Risks — risks that compound over time
|
|
95
|
+
g. "What Would Break First at 10x Scale" — growth stress analysis
|
|
96
|
+
5. Each report section must conform to src/schemas/report-section.md.
|
|
97
|
+
</step>
|
|
98
|
+
|
|
99
|
+
<step name="validate_report_output" priority="blocking">
|
|
100
|
+
1. Verify all 7 report sections were produced:
|
|
101
|
+
a. Check each section exists and is non-empty
|
|
102
|
+
b. Validate each against src/schemas/report-section.md
|
|
103
|
+
2. Verify disagreement coverage:
|
|
104
|
+
a. Every disagreement ID that exists in .radar/disagreements/ must appear in the Cross-Validation Notes section
|
|
105
|
+
b. No disagreement may be silently omitted — this is the core anti-pattern "hiding disagreements in footnotes"
|
|
106
|
+
3. Verify severity calibration:
|
|
107
|
+
a. No finding severity was silently changed without explanation
|
|
108
|
+
b. If the Principal Engineer adjusted severity, the rationale is documented
|
|
109
|
+
4. Verify cross-domain coherence:
|
|
110
|
+
a. The Architecture Narrative is consistent with the Findings by Domain section
|
|
111
|
+
b. The Remediation Roadmap addresses the highest-severity findings
|
|
112
|
+
c. The Executive Summary accurately reflects the detailed findings
|
|
113
|
+
5. If validation fails:
|
|
114
|
+
a. If session is still available: return with specific gaps
|
|
115
|
+
b. If session ended: flag incomplete sections in STATE.md
|
|
116
|
+
</step>
|
|
117
|
+
|
|
118
|
+
<step name="persist_report" priority="blocking">
|
|
119
|
+
1. Write report sections to .radar/report/:
|
|
120
|
+
a. .radar/report/01-executive-summary.md
|
|
121
|
+
b. .radar/report/02-architecture-narrative.md
|
|
122
|
+
c. .radar/report/03-findings-by-domain.md
|
|
123
|
+
d. .radar/report/04-cross-validation-notes.md
|
|
124
|
+
e. .radar/report/05-remediation-roadmap.md
|
|
125
|
+
f. .radar/report/06-long-term-risks.md
|
|
126
|
+
g. .radar/report/07-scale-analysis.md
|
|
127
|
+
2. Generate combined report:
|
|
128
|
+
a. Assemble all sections into .radar/report/Radar-REPORT.md
|
|
129
|
+
b. Include table of contents
|
|
130
|
+
c. Include audit metadata (scope, timeline, agent roster, tool versions)
|
|
131
|
+
3. Invoke session-handoff workflow for final time:
|
|
132
|
+
a. Capture Principal Engineer session output
|
|
133
|
+
b. Persist any final findings to .radar/findings/principal-engineer.md (append to Phase 0 findings)
|
|
134
|
+
c. Update STATE.md
|
|
135
|
+
4. Verify all report files written successfully.
|
|
136
|
+
</step>
|
|
137
|
+
|
|
138
|
+
<step name="finalize_audit" priority="blocking">
|
|
139
|
+
1. Update .radar/STATE.md:
|
|
140
|
+
a. current_phase: 5
|
|
141
|
+
b. phase_status: complete
|
|
142
|
+
c. audit_status: complete
|
|
143
|
+
d. phase_5_complete: true
|
|
144
|
+
e. report_sections: 7
|
|
145
|
+
f. total_findings_all_phases: N
|
|
146
|
+
g. total_disagreements: N
|
|
147
|
+
h. disagreements_resolved: N (should equal total)
|
|
148
|
+
i. completion_timestamp: time
|
|
149
|
+
2. Record final audit metrics:
|
|
150
|
+
a. Total duration (Phase 0 start to Phase 5 end)
|
|
151
|
+
b. Findings by severity: critical, high, medium, low, info
|
|
152
|
+
c. Domain coverage: which domains produced findings
|
|
153
|
+
d. Agent participation: which agents completed successfully
|
|
154
|
+
e. Disagreement resolution rate: 100% required
|
|
155
|
+
3. Mark .radar/MANIFEST.md as final:
|
|
156
|
+
a. Add report hash for integrity verification
|
|
157
|
+
b. Lock manifest — no further modifications to this audit
|
|
158
|
+
4. Present audit completion summary to user:
|
|
159
|
+
a. Report location: .radar/report/Radar-REPORT.md
|
|
160
|
+
b. Key statistics
|
|
161
|
+
c. If Transform pipeline is configured: note readiness for Layer B/C generation
|
|
162
|
+
</step>
|
|
163
|
+
|
|
164
|
+
</process>
|
|
165
|
+
|
|
166
|
+
<output>
|
|
167
|
+
Artifacts created:
|
|
168
|
+
- .radar/report/01-executive-summary.md — Executive Risk Summary
|
|
169
|
+
- .radar/report/02-architecture-narrative.md — Architecture health narrative
|
|
170
|
+
- .radar/report/03-findings-by-domain.md — Severity-ranked findings per domain
|
|
171
|
+
- .radar/report/04-cross-validation-notes.md — Disagreements and resolutions
|
|
172
|
+
- .radar/report/05-remediation-roadmap.md — Prioritized action plan
|
|
173
|
+
- .radar/report/06-long-term-risks.md — Compounding structural risks
|
|
174
|
+
- .radar/report/07-scale-analysis.md — "What breaks at 10x scale" analysis
|
|
175
|
+
- .radar/report/Radar-REPORT.md — Combined final report
|
|
176
|
+
- .radar/findings/principal-engineer.md — Updated with Phase 5 findings (appended)
|
|
177
|
+
- .radar/STATE.md — Finalized with audit_status: complete
|
|
178
|
+
|
|
179
|
+
All report sections conform to src/schemas/report-section.md.
|
|
180
|
+
</output>
|
|
181
|
+
|
|
182
|
+
<error_handling>
|
|
183
|
+
- **Phase 4 not complete:** Halt immediately. Display: "Phase 4 (Adversarial Review) must complete before synthesis. Run phase-4-adversarial-review first." Do not proceed.
|
|
184
|
+
- **Unresolved disagreements:** CRITICAL BLOCK. Phase 5 MUST NOT proceed if any disagreement lacks principal_response. Route to disagreement-resolution workflow. This is non-negotiable — silence on disagreements destroys audit trust.
|
|
185
|
+
- **Principal Engineer session failure:** This is a CRITICAL failure — the audit cannot produce a report without Phase 5. Record failure. Present to user with strong recommendation to retry. Do not produce a partial report automatically.
|
|
186
|
+
- **Incomplete report (missing sections):** If fewer than 7 sections produced, flag which sections are missing. If session is available, request completion. If not, mark audit as "partial" in STATE.md and note which sections are absent.
|
|
187
|
+
- **Context budget exceeded:** Phase 5 has large context needs. Trimming strategy: (a) keep ALL disagreements in full, (b) keep ALL critical/high findings in full, (c) summarize medium/low by domain, (d) keep Devil's Advocate critiques in full, (e) summarize signal summary. Never trim persona or rules.
|
|
188
|
+
- **Report inconsistency detected:** If validation finds the Executive Summary contradicts detailed findings, or the Remediation Roadmap doesn't address highest-severity issues: flag specific inconsistencies. If session available, return for correction. If not, annotate the report with consistency warnings.
|
|
189
|
+
</error_handling>
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
Provides a structured checkpoint between Radar audit phases — displaying phase completion summary, cumulative progress, and offering the user a clear continue/pause/abort decision point. Invoked by the audit command after each phase workflow completes.
|
|
3
|
+
</purpose>
|
|
4
|
+
|
|
5
|
+
<phase_context>
|
|
6
|
+
Phase: Utility — invoked between every phase transition during Core audit execution (0→1, 1→2, 2→3, 3→4, 4→5)
|
|
7
|
+
Prior phase output: Completed phase findings, signals, and updated .radar/STATE.md
|
|
8
|
+
Agents invoked: None — this workflow presents information and captures user intent
|
|
9
|
+
Output: Updated .radar/STATE.md with checkpoint record, user decision (continue/pause/abort)
|
|
10
|
+
</phase_context>
|
|
11
|
+
|
|
12
|
+
<required_input>
|
|
13
|
+
@.radar/STATE.md
|
|
14
|
+
@.radar/MANIFEST.md
|
|
15
|
+
</required_input>
|
|
16
|
+
|
|
17
|
+
<process>
|
|
18
|
+
|
|
19
|
+
<step name="capture_phase_completion" priority="first">
|
|
20
|
+
1. Read .radar/STATE.md to identify which phase just completed.
|
|
21
|
+
2. Extract from STATE.md:
|
|
22
|
+
- completed_phase: the phase number (0-5) that just finished
|
|
23
|
+
- phase_status: confirm it is "complete"
|
|
24
|
+
- agents_completed: list of agents that ran in this phase
|
|
25
|
+
- findings_produced: count of findings from this phase
|
|
26
|
+
- disagreements_produced: count of disagreements from this phase (if any)
|
|
27
|
+
3. Count actual finding files in .radar/findings/ for this phase:
|
|
28
|
+
- Cross-reference agent IDs from completed phase against finding files
|
|
29
|
+
- Tally by severity: critical, high, medium, low, info
|
|
30
|
+
4. Record phase completion timestamp in .radar/STATE.md if not already set.
|
|
31
|
+
5. Increment session tracking counters in .radar/STATE.md:
|
|
32
|
+
- Increment Sessions count
|
|
33
|
+
- Update Last session timestamp
|
|
34
|
+
- Set Started timestamp if this is the first checkpoint
|
|
35
|
+
</step>
|
|
36
|
+
|
|
37
|
+
<step name="display_phase_summary" priority="blocking">
|
|
38
|
+
Display the completed phase summary:
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
════════════════════════════════════════
|
|
42
|
+
PHASE [N] COMPLETE — [Phase Name]
|
|
43
|
+
════════════════════════════════════════
|
|
44
|
+
|
|
45
|
+
Agents completed: [count] ([agent-id list])
|
|
46
|
+
Findings produced: [count]
|
|
47
|
+
Critical: [N] High: [N] Medium: [N] Low: [N]
|
|
48
|
+
Disagreements: [N] detected
|
|
49
|
+
|
|
50
|
+
────────────────────────────────────────
|
|
51
|
+
CUMULATIVE PROGRESS
|
|
52
|
+
────────────────────────────────────────
|
|
53
|
+
|
|
54
|
+
[██████████░░░░░░░░░░] Phase [N] of 5 complete
|
|
55
|
+
|
|
56
|
+
| Phase | Name | Status | Findings |
|
|
57
|
+
|-------|----------------------------|----------|----------|
|
|
58
|
+
| 0 | Context & Threat Modeling | complete | - |
|
|
59
|
+
| 1 | Signal Gathering | complete | - |
|
|
60
|
+
| 2 | Deep Domain Audits | [status] | [count] |
|
|
61
|
+
| 3 | Cross-Domain Synthesis | [status] | [count] |
|
|
62
|
+
| 4 | Adversarial Review | [status] | [count] |
|
|
63
|
+
| 5 | Synthesis & Report | [status] | - |
|
|
64
|
+
|
|
65
|
+
Total findings so far: [N]
|
|
66
|
+
Total disagreements: [N] (resolved: [N])
|
|
67
|
+
Sessions used: [N]
|
|
68
|
+
════════════════════════════════════════
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Phase names reference:
|
|
72
|
+
- Phase 0: Context & Threat Modeling
|
|
73
|
+
- Phase 1: Automated Signal Gathering
|
|
74
|
+
- Phase 2: Deep Domain Audits
|
|
75
|
+
- Phase 3: Change Risk & Reality Gap
|
|
76
|
+
- Phase 4: Adversarial Review
|
|
77
|
+
- Phase 5: Synthesis & Report
|
|
78
|
+
</step>
|
|
79
|
+
|
|
80
|
+
<step name="preview_next_phase" priority="blocking">
|
|
81
|
+
If completed_phase < 5 (more phases remain):
|
|
82
|
+
|
|
83
|
+
1. Determine next phase number: completed_phase + 1
|
|
84
|
+
2. Look up next phase details:
|
|
85
|
+
|
|
86
|
+
| Phase | Agents | Estimated Sessions | Description |
|
|
87
|
+
|-------|--------|--------------------|-------------|
|
|
88
|
+
| 1 | (tools) | 1 session | Automated tool scanning — SonarQube, Semgrep, Trivy, etc. |
|
|
89
|
+
| 2 | 8 | 1-8 sessions | Domain specialist agents analyze findings in parallel |
|
|
90
|
+
| 3 | 2 | 1-2 sessions | Staff Engineer + Reality Gap Analyst (sequential) |
|
|
91
|
+
| 4 | 1 | 1 session | Devil's Advocate challenges all findings |
|
|
92
|
+
| 5 | 1 | 1 session | Principal Engineer synthesizes final report |
|
|
93
|
+
|
|
94
|
+
3. Display preview:
|
|
95
|
+
```
|
|
96
|
+
────────────────────────────────────────
|
|
97
|
+
NEXT: Phase [N] — [Name]
|
|
98
|
+
────────────────────────────────────────
|
|
99
|
+
|
|
100
|
+
[Description]
|
|
101
|
+
Agents: [count or "tools"]
|
|
102
|
+
Estimated sessions: [range]
|
|
103
|
+
Prerequisites: Phase [N-1] complete ✓
|
|
104
|
+
────────────────────────────────────────
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
If completed_phase == 5 (Core audit complete):
|
|
108
|
+
```
|
|
109
|
+
────────────────────────────────────────
|
|
110
|
+
CORE AUDIT COMPLETE
|
|
111
|
+
────────────────────────────────────────
|
|
112
|
+
|
|
113
|
+
All 6 diagnostic phases finished.
|
|
114
|
+
Total findings: [N]
|
|
115
|
+
Disagreements resolved: [N] of [N]
|
|
116
|
+
|
|
117
|
+
Next steps:
|
|
118
|
+
- /radar:report — generate the final audit report
|
|
119
|
+
- /radar:transform — start the remediation pipeline
|
|
120
|
+
────────────────────────────────────────
|
|
121
|
+
```
|
|
122
|
+
</step>
|
|
123
|
+
|
|
124
|
+
<step name="offer_checkpoint_options" priority="blocking">
|
|
125
|
+
If completed_phase < 5 (more phases remain):
|
|
126
|
+
|
|
127
|
+
Present exactly 3 options:
|
|
128
|
+
```
|
|
129
|
+
[1] Continue to Phase [N+1] (recommended)
|
|
130
|
+
[2] Pause here — safe to close this session
|
|
131
|
+
[3] Abort audit — preserves all work completed so far
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Handle each response:
|
|
135
|
+
|
|
136
|
+
**If [1] "continue":**
|
|
137
|
+
- Update .radar/STATE.md Resume Info:
|
|
138
|
+
- Last action: "Phase [N] checkpoint — user chose continue"
|
|
139
|
+
- Next action: "Phase [N+1] — [Name]"
|
|
140
|
+
- Return control to the audit command's phase loop to invoke the next phase workflow
|
|
141
|
+
|
|
142
|
+
**If [2] "pause":**
|
|
143
|
+
- Update .radar/STATE.md:
|
|
144
|
+
- Overall status: paused
|
|
145
|
+
- Resume Info:
|
|
146
|
+
- Last action: "Phase [N] checkpoint — user chose pause"
|
|
147
|
+
- Next action: "Resume with /radar:resume to start Phase [N+1]"
|
|
148
|
+
- Display:
|
|
149
|
+
```
|
|
150
|
+
════════════════════════════════════════
|
|
151
|
+
AUDIT PAUSED
|
|
152
|
+
════════════════════════════════════════
|
|
153
|
+
|
|
154
|
+
All progress saved to .radar/STATE.md.
|
|
155
|
+
[N] findings preserved across [N] phases.
|
|
156
|
+
|
|
157
|
+
To continue later:
|
|
158
|
+
/radar:resume
|
|
159
|
+
|
|
160
|
+
To check status anytime:
|
|
161
|
+
/radar:status
|
|
162
|
+
════════════════════════════════════════
|
|
163
|
+
```
|
|
164
|
+
- Stop execution (do not proceed to next phase)
|
|
165
|
+
|
|
166
|
+
**If [3] "abort":**
|
|
167
|
+
- Update .radar/STATE.md:
|
|
168
|
+
- Overall status: paused
|
|
169
|
+
- Resume Info:
|
|
170
|
+
- Last action: "Phase [N] checkpoint — user chose abort"
|
|
171
|
+
- Next action: "Resume with /radar:resume or start fresh with /radar:audit"
|
|
172
|
+
- Display:
|
|
173
|
+
```
|
|
174
|
+
════════════════════════════════════════
|
|
175
|
+
AUDIT STOPPED
|
|
176
|
+
════════════════════════════════════════
|
|
177
|
+
|
|
178
|
+
All findings preserved. Nothing was deleted.
|
|
179
|
+
Completed phases: 0 through [N]
|
|
180
|
+
Findings: [count] total
|
|
181
|
+
|
|
182
|
+
To resume later: /radar:resume
|
|
183
|
+
To start fresh: /radar:audit (will offer to archive existing state)
|
|
184
|
+
════════════════════════════════════════
|
|
185
|
+
```
|
|
186
|
+
- Stop execution
|
|
187
|
+
|
|
188
|
+
If completed_phase == 5 (Core audit complete):
|
|
189
|
+
- No continue/pause/abort — just display completion info and suggest next steps
|
|
190
|
+
- Update .radar/STATE.md: overall status to "complete"
|
|
191
|
+
</step>
|
|
192
|
+
|
|
193
|
+
<step name="update_state" priority="required">
|
|
194
|
+
Regardless of user choice, update .radar/STATE.md:
|
|
195
|
+
|
|
196
|
+
1. Add to Checkpoint History section:
|
|
197
|
+
```markdown
|
|
198
|
+
- Phase [N] ([Name]) — [timestamp] — [continue/pause/abort]
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
2. Update Session Tracking:
|
|
202
|
+
- Increment Sessions count
|
|
203
|
+
- Update Last session to current timestamp
|
|
204
|
+
|
|
205
|
+
3. Update phase completion timestamp in the Phases table if not already set.
|
|
206
|
+
</step>
|
|
207
|
+
|
|
208
|
+
</process>
|
|
209
|
+
|
|
210
|
+
<output>
|
|
211
|
+
- .radar/STATE.md updated with checkpoint record, session tracking, and user decision
|
|
212
|
+
- User informed of progress and given clear next-step guidance
|
|
213
|
+
- If "continue": control returns to audit command for next phase
|
|
214
|
+
- If "pause" or "abort": execution stops cleanly with resume instructions
|
|
215
|
+
</output>
|
|
216
|
+
|
|
217
|
+
<error_handling>
|
|
218
|
+
- **STATE.md missing or unreadable:** Display error "Cannot read .radar/STATE.md — audit state may be corrupted. Run /radar:status to diagnose." Do not proceed.
|
|
219
|
+
- **Phase not actually complete:** If STATE.md shows phase still active (agents remaining), do not display checkpoint. Warn: "Phase [N] has [X] agents remaining. Complete the phase before checkpointing."
|
|
220
|
+
- **Session Tracking section missing:** If STATE.md was created before Phase 12 updates (no Session Tracking section), add it now with Sessions: 1, Last session: current timestamp, Started: current timestamp.
|
|
221
|
+
- **Checkpoint History section missing:** If missing, create it with the current checkpoint as the first entry.
|
|
222
|
+
</error_handling>
|