eai-cli 0.0.0-bootstrap.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/LICENSE +183 -0
- package/NOTICE +4 -0
- package/README.md +14 -0
- package/dist/commands/agent.d.ts +3 -0
- package/dist/commands/agent.d.ts.map +1 -0
- package/dist/commands/agent.js +69 -0
- package/dist/commands/agent.js.map +1 -0
- package/dist/commands/blocks.d.ts +3 -0
- package/dist/commands/blocks.d.ts.map +1 -0
- package/dist/commands/blocks.js +249 -0
- package/dist/commands/blocks.js.map +1 -0
- package/dist/commands/chat.d.ts +6 -0
- package/dist/commands/chat.d.ts.map +1 -0
- package/dist/commands/chat.js +105 -0
- package/dist/commands/chat.js.map +1 -0
- package/dist/commands/deploy.d.ts +36 -0
- package/dist/commands/deploy.d.ts.map +1 -0
- package/dist/commands/deploy.js +712 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/dev.d.ts +15 -0
- package/dist/commands/dev.d.ts.map +1 -0
- package/dist/commands/dev.js +133 -0
- package/dist/commands/dev.js.map +1 -0
- package/dist/commands/docs.d.ts +6 -0
- package/dist/commands/docs.d.ts.map +1 -0
- package/dist/commands/docs.js +118 -0
- package/dist/commands/docs.js.map +1 -0
- package/dist/commands/env.d.ts +10 -0
- package/dist/commands/env.d.ts.map +1 -0
- package/dist/commands/env.js +200 -0
- package/dist/commands/env.js.map +1 -0
- package/dist/commands/errors.d.ts +3 -0
- package/dist/commands/errors.d.ts.map +1 -0
- package/dist/commands/errors.js +72 -0
- package/dist/commands/errors.js.map +1 -0
- package/dist/commands/gofer.d.ts +3 -0
- package/dist/commands/gofer.d.ts.map +1 -0
- package/dist/commands/gofer.js +134 -0
- package/dist/commands/gofer.js.map +1 -0
- package/dist/commands/init.d.ts +14 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +1437 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/login.d.ts +7 -0
- package/dist/commands/login.d.ts.map +1 -0
- package/dist/commands/login.js +117 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/provision.d.ts +6 -0
- package/dist/commands/provision.d.ts.map +1 -0
- package/dist/commands/provision.js +855 -0
- package/dist/commands/provision.js.map +1 -0
- package/dist/commands/publicapi.d.ts +6 -0
- package/dist/commands/publicapi.d.ts.map +1 -0
- package/dist/commands/publicapi.js +184 -0
- package/dist/commands/publicapi.js.map +1 -0
- package/dist/commands/resources.d.ts +38 -0
- package/dist/commands/resources.d.ts.map +1 -0
- package/dist/commands/resources.js +1010 -0
- package/dist/commands/resources.js.map +1 -0
- package/dist/commands/runtime.d.ts +3 -0
- package/dist/commands/runtime.d.ts.map +1 -0
- package/dist/commands/runtime.js +78 -0
- package/dist/commands/runtime.js.map +1 -0
- package/dist/commands/template.d.ts +3 -0
- package/dist/commands/template.d.ts.map +1 -0
- package/dist/commands/template.js +365 -0
- package/dist/commands/template.js.map +1 -0
- package/dist/commands/tenant.d.ts +45 -0
- package/dist/commands/tenant.d.ts.map +1 -0
- package/dist/commands/tenant.js +1036 -0
- package/dist/commands/tenant.js.map +1 -0
- package/dist/commands/types.d.ts +130 -0
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/commands/types.js +1636 -0
- package/dist/commands/types.js.map +1 -0
- package/dist/commands/update.d.ts +13 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +163 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/commands/user.d.ts +6 -0
- package/dist/commands/user.d.ts.map +1 -0
- package/dist/commands/user.js +359 -0
- package/dist/commands/user.js.map +1 -0
- package/dist/commands/verify.d.ts +40 -0
- package/dist/commands/verify.d.ts.map +1 -0
- package/dist/commands/verify.js +1442 -0
- package/dist/commands/verify.js.map +1 -0
- package/dist/commands/vertical.d.ts +24 -0
- package/dist/commands/vertical.d.ts.map +1 -0
- package/dist/commands/vertical.js +301 -0
- package/dist/commands/vertical.js.map +1 -0
- package/dist/commands/whoami.d.ts +6 -0
- package/dist/commands/whoami.d.ts.map +1 -0
- package/dist/commands/whoami.js +73 -0
- package/dist/commands/whoami.js.map +1 -0
- package/dist/commands/workflow.d.ts +6 -0
- package/dist/commands/workflow.d.ts.map +1 -0
- package/dist/commands/workflow.js +400 -0
- package/dist/commands/workflow.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +272 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/agent-guide.d.ts +24 -0
- package/dist/lib/agent-guide.d.ts.map +1 -0
- package/dist/lib/agent-guide.js +155 -0
- package/dist/lib/agent-guide.js.map +1 -0
- package/dist/lib/api.d.ts +338 -0
- package/dist/lib/api.d.ts.map +1 -0
- package/dist/lib/api.js +991 -0
- package/dist/lib/api.js.map +1 -0
- package/dist/lib/auth.d.ts +65 -0
- package/dist/lib/auth.d.ts.map +1 -0
- package/dist/lib/auth.js +592 -0
- package/dist/lib/auth.js.map +1 -0
- package/dist/lib/azure-cli.d.ts +6 -0
- package/dist/lib/azure-cli.d.ts.map +1 -0
- package/dist/lib/azure-cli.js +13 -0
- package/dist/lib/azure-cli.js.map +1 -0
- package/dist/lib/block-catalog-normalize.d.ts +47 -0
- package/dist/lib/block-catalog-normalize.d.ts.map +1 -0
- package/dist/lib/block-catalog-normalize.js +355 -0
- package/dist/lib/block-catalog-normalize.js.map +1 -0
- package/dist/lib/block-catalog-types.d.ts +111 -0
- package/dist/lib/block-catalog-types.d.ts.map +1 -0
- package/dist/lib/block-catalog-types.js +41 -0
- package/dist/lib/block-catalog-types.js.map +1 -0
- package/dist/lib/block-catalog-utils.d.ts +7 -0
- package/dist/lib/block-catalog-utils.d.ts.map +1 -0
- package/dist/lib/block-catalog-utils.js +47 -0
- package/dist/lib/block-catalog-utils.js.map +1 -0
- package/dist/lib/block-catalog-validation.d.ts +5 -0
- package/dist/lib/block-catalog-validation.d.ts.map +1 -0
- package/dist/lib/block-catalog-validation.js +112 -0
- package/dist/lib/block-catalog-validation.js.map +1 -0
- package/dist/lib/block-catalog.d.ts +3 -0
- package/dist/lib/block-catalog.d.ts.map +1 -0
- package/dist/lib/block-catalog.js +284 -0
- package/dist/lib/block-catalog.js.map +1 -0
- package/dist/lib/cloud-env.d.ts +25 -0
- package/dist/lib/cloud-env.d.ts.map +1 -0
- package/dist/lib/cloud-env.js +79 -0
- package/dist/lib/cloud-env.js.map +1 -0
- package/dist/lib/config.d.ts +116 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/dist/lib/config.js +195 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/context.d.ts +43 -0
- package/dist/lib/context.d.ts.map +1 -0
- package/dist/lib/context.js +68 -0
- package/dist/lib/context.js.map +1 -0
- package/dist/lib/error-codes.d.ts +56 -0
- package/dist/lib/error-codes.d.ts.map +1 -0
- package/dist/lib/error-codes.js +211 -0
- package/dist/lib/error-codes.js.map +1 -0
- package/dist/lib/error-guidance/catalog.d.ts +648 -0
- package/dist/lib/error-guidance/catalog.d.ts.map +1 -0
- package/dist/lib/error-guidance/catalog.js +940 -0
- package/dist/lib/error-guidance/catalog.js.map +1 -0
- package/dist/lib/error-guidance/match.d.ts +3 -0
- package/dist/lib/error-guidance/match.d.ts.map +1 -0
- package/dist/lib/error-guidance/match.js +46 -0
- package/dist/lib/error-guidance/match.js.map +1 -0
- package/dist/lib/error-guidance/render.d.ts +5 -0
- package/dist/lib/error-guidance/render.d.ts.map +1 -0
- package/dist/lib/error-guidance/render.js +92 -0
- package/dist/lib/error-guidance/render.js.map +1 -0
- package/dist/lib/error-guidance/types.d.ts +76 -0
- package/dist/lib/error-guidance/types.d.ts.map +1 -0
- package/dist/lib/error-guidance/types.js +2 -0
- package/dist/lib/error-guidance/types.js.map +1 -0
- package/dist/lib/error-guidance/validate.d.ts +3 -0
- package/dist/lib/error-guidance/validate.d.ts.map +1 -0
- package/dist/lib/error-guidance/validate.js +59 -0
- package/dist/lib/error-guidance/validate.js.map +1 -0
- package/dist/lib/gofer-installer.d.ts +32 -0
- package/dist/lib/gofer-installer.d.ts.map +1 -0
- package/dist/lib/gofer-installer.js +589 -0
- package/dist/lib/gofer-installer.js.map +1 -0
- package/dist/lib/gofer-refresh.d.ts +46 -0
- package/dist/lib/gofer-refresh.d.ts.map +1 -0
- package/dist/lib/gofer-refresh.js +536 -0
- package/dist/lib/gofer-refresh.js.map +1 -0
- package/dist/lib/next-route-exports.d.ts +6 -0
- package/dist/lib/next-route-exports.d.ts.map +1 -0
- package/dist/lib/next-route-exports.js +127 -0
- package/dist/lib/next-route-exports.js.map +1 -0
- package/dist/lib/npm.d.ts +2 -0
- package/dist/lib/npm.d.ts.map +1 -0
- package/dist/lib/npm.js +4 -0
- package/dist/lib/npm.js.map +1 -0
- package/dist/lib/object-type-defaults.d.ts +4 -0
- package/dist/lib/object-type-defaults.d.ts.map +1 -0
- package/dist/lib/object-type-defaults.js +72 -0
- package/dist/lib/object-type-defaults.js.map +1 -0
- package/dist/lib/output.d.ts +35 -0
- package/dist/lib/output.d.ts.map +1 -0
- package/dist/lib/output.js +166 -0
- package/dist/lib/output.js.map +1 -0
- package/dist/lib/profile.d.ts +52 -0
- package/dist/lib/profile.d.ts.map +1 -0
- package/dist/lib/profile.js +116 -0
- package/dist/lib/profile.js.map +1 -0
- package/dist/lib/project-manifest.d.ts +42 -0
- package/dist/lib/project-manifest.d.ts.map +1 -0
- package/dist/lib/project-manifest.js +191 -0
- package/dist/lib/project-manifest.js.map +1 -0
- package/dist/lib/resourceapi-bundle.d.ts +33 -0
- package/dist/lib/resourceapi-bundle.d.ts.map +1 -0
- package/dist/lib/resourceapi-bundle.js +79 -0
- package/dist/lib/resourceapi-bundle.js.map +1 -0
- package/dist/lib/runtime-contract.d.ts +84 -0
- package/dist/lib/runtime-contract.d.ts.map +1 -0
- package/dist/lib/runtime-contract.js +318 -0
- package/dist/lib/runtime-contract.js.map +1 -0
- package/dist/lib/schema-builder.d.ts +28 -0
- package/dist/lib/schema-builder.d.ts.map +1 -0
- package/dist/lib/schema-builder.js +69 -0
- package/dist/lib/schema-builder.js.map +1 -0
- package/dist/lib/tenant-context.d.ts +127 -0
- package/dist/lib/tenant-context.d.ts.map +1 -0
- package/dist/lib/tenant-context.js +573 -0
- package/dist/lib/tenant-context.js.map +1 -0
- package/dist/lib/update-check.d.ts +52 -0
- package/dist/lib/update-check.d.ts.map +1 -0
- package/dist/lib/update-check.js +271 -0
- package/dist/lib/update-check.js.map +1 -0
- package/dist/lib/update-maintenance.d.ts +15 -0
- package/dist/lib/update-maintenance.d.ts.map +1 -0
- package/dist/lib/update-maintenance.js +187 -0
- package/dist/lib/update-maintenance.js.map +1 -0
- package/dist/lib/utils.d.ts +23 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +48 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/lib/workflow-provisioning.d.ts +54 -0
- package/dist/lib/workflow-provisioning.d.ts.map +1 -0
- package/dist/lib/workflow-provisioning.js +281 -0
- package/dist/lib/workflow-provisioning.js.map +1 -0
- package/package.json +51 -0
- package/resources/gofer/.gofer-version +7 -0
- package/resources/gofer/agents-skills/0_gofer_start/SKILL.md +1287 -0
- package/resources/gofer/agents-skills/0a_problem_validation/SKILL.md +429 -0
- package/resources/gofer/agents-skills/10_gofer_cloud/SKILL.md +635 -0
- package/resources/gofer/agents-skills/1_gofer_research/SKILL.md +1159 -0
- package/resources/gofer/agents-skills/2_gofer_specify/SKILL.md +860 -0
- package/resources/gofer/agents-skills/3_gofer_plan/SKILL.md +886 -0
- package/resources/gofer/agents-skills/4_gofer_tasks/SKILL.md +748 -0
- package/resources/gofer/agents-skills/5_gofer_implement/SKILL.md +924 -0
- package/resources/gofer/agents-skills/6_gofer_validate/SKILL.md +2269 -0
- package/resources/gofer/agents-skills/7_gofer_save/SKILL.md +423 -0
- package/resources/gofer/agents-skills/7a_stakeholder_comms/SKILL.md +508 -0
- package/resources/gofer/agents-skills/8_gofer_branding/SKILL.md +315 -0
- package/resources/gofer/agents-skills/9_gofer_tests/SKILL.md +558 -0
- package/resources/gofer/agents-skills/gofer_bootstrap_workspace/SKILL.md +148 -0
- package/resources/gofer/agents-skills/gofer_check_workspace/SKILL.md +119 -0
- package/resources/gofer/agents-skills/gofer_constitution/SKILL.md +612 -0
- package/resources/gofer/agents-skills/gofer_diagnose/SKILL.md +114 -0
- package/resources/gofer/agents-skills/gofer_eai_first_run/SKILL.md +397 -0
- package/resources/gofer/agents-skills/gofer_hydrate/SKILL.md +561 -0
- package/resources/gofer/agents-skills/gofer_personality/SKILL.md +44 -0
- package/resources/gofer/agents-skills/gofer_plan/SKILL.md +40 -0
- package/resources/gofer/agents-skills/gofer_side/SKILL.md +45 -0
- package/resources/gofer/agents-skills/gofer_spec_summary/SKILL.md +112 -0
- package/resources/gofer/agents-skills/gofer_tdd/SKILL.md +112 -0
- package/resources/gofer/agents-skills/gofer_vocabulary/SKILL.md +112 -0
- package/resources/gofer/agents-skills/gofer_zoom_out/SKILL.md +112 -0
- package/resources/gofer/bash-scripts/check-context-health.sh +365 -0
- package/resources/gofer/bash-scripts/check-persona-pack.sh +81 -0
- package/resources/gofer/bash-scripts/check-prerequisites.sh +168 -0
- package/resources/gofer/bash-scripts/common.sh +192 -0
- package/resources/gofer/bash-scripts/create-new-feature.sh +260 -0
- package/resources/gofer/bash-scripts/install-optional-tools.sh +270 -0
- package/resources/gofer/bash-scripts/log-stage.sh +224 -0
- package/resources/gofer/bash-scripts/mark-task-complete.sh +74 -0
- package/resources/gofer/bash-scripts/pipeline-state.sh +306 -0
- package/resources/gofer/bash-scripts/read-failed-approaches.sh +114 -0
- package/resources/gofer/bash-scripts/read-session-memories.sh +96 -0
- package/resources/gofer/bash-scripts/save-checkpoint.sh +407 -0
- package/resources/gofer/bash-scripts/setup-plan.sh +62 -0
- package/resources/gofer/bash-scripts/sync-implementation-status.sh +47 -0
- package/resources/gofer/bash-scripts/update-agent-context.sh +772 -0
- package/resources/gofer/bash-scripts/validate-artifact.sh +335 -0
- package/resources/gofer/bash-scripts/verify-task.sh +384 -0
- package/resources/gofer/bash-scripts/write-failed-approach.sh +110 -0
- package/resources/gofer/bash-scripts/write-periodic-checkpoint.sh +128 -0
- package/resources/gofer/bash-scripts/write-session-memory.sh +118 -0
- package/resources/gofer/claude-agents/assumption-tracker.md +168 -0
- package/resources/gofer/claude-agents/business-metrics-analyzer.md +169 -0
- package/resources/gofer/claude-agents/business-problem-validator.md +168 -0
- package/resources/gofer/claude-agents/codebase-analyzer.md +124 -0
- package/resources/gofer/claude-agents/codebase-locator.md +95 -0
- package/resources/gofer/claude-agents/codebase-pattern-finder.md +180 -0
- package/resources/gofer/claude-agents/comms-writer.md +158 -0
- package/resources/gofer/claude-agents/engineer-review.md +169 -0
- package/resources/gofer/claude-agents/implement-bug-triangulator.md +94 -0
- package/resources/gofer/claude-agents/implement-code-review-council.md +89 -0
- package/resources/gofer/claude-agents/implement-doc-writer.md +89 -0
- package/resources/gofer/claude-agents/implement-error-hardener.md +84 -0
- package/resources/gofer/claude-agents/implement-performance-explorer.md +95 -0
- package/resources/gofer/claude-agents/implement-test-diversifier.md +82 -0
- package/resources/gofer/claude-agents/implement-variant-generator.md +80 -0
- package/resources/gofer/claude-agents/multi-perspective-judge.md +114 -0
- package/resources/gofer/claude-agents/plan-api-comparator.md +90 -0
- package/resources/gofer/claude-agents/plan-architecture-diverger.md +100 -0
- package/resources/gofer/claude-agents/plan-data-model-stress-tester.md +95 -0
- package/resources/gofer/claude-agents/plan-migration-path-finder.md +95 -0
- package/resources/gofer/claude-agents/plan-refactor-rewrite-advisor.md +97 -0
- package/resources/gofer/claude-agents/research-dependency-evaluator.md +106 -0
- package/resources/gofer/claude-agents/research-horizon-scanner.md +100 -0
- package/resources/gofer/claude-agents/research-market-scanner.md +137 -0
- package/resources/gofer/claude-agents/research-perspective-multiplier.md +102 -0
- package/resources/gofer/claude-agents/scope-creep-detector.md +152 -0
- package/resources/gofer/claude-agents/specify-ambiguity-detector.md +95 -0
- package/resources/gofer/claude-agents/specify-journey-stress-tester.md +92 -0
- package/resources/gofer/claude-agents/tasks-cross-cutting-scanner.md +91 -0
- package/resources/gofer/claude-agents/tasks-rollback-planner.md +89 -0
- package/resources/gofer/claude-agents/validate-security-red-team.md +102 -0
- package/resources/gofer/claude-agents/validation-correctness.md +103 -0
- package/resources/gofer/claude-agents/validation-integration.md +129 -0
- package/resources/gofer/claude-agents/validation-performance.md +120 -0
- package/resources/gofer/claude-agents/validation-security.md +115 -0
- package/resources/gofer/claude-agents/validation-standards.md +151 -0
- package/resources/gofer/claude-agents/validation-test-quality.md +146 -0
- package/resources/gofer/claude-agents/visual-bounded-context-writer.md +40 -0
- package/resources/gofer/claude-agents/visual-c4-writer.md +45 -0
- package/resources/gofer/claude-agents/visual-erd-writer.md +34 -0
- package/resources/gofer/claude-agents/visual-heatmap-writer.md +63 -0
- package/resources/gofer/claude-agents/visual-risk-writer.md +64 -0
- package/resources/gofer/claude-commands/0_gofer_start.md +1282 -0
- package/resources/gofer/claude-commands/0a_problem_validation.md +424 -0
- package/resources/gofer/claude-commands/10_gofer_cloud.md +630 -0
- package/resources/gofer/claude-commands/1_gofer_research.md +1154 -0
- package/resources/gofer/claude-commands/2_gofer_specify.md +855 -0
- package/resources/gofer/claude-commands/3_gofer_plan.md +881 -0
- package/resources/gofer/claude-commands/4_gofer_tasks.md +743 -0
- package/resources/gofer/claude-commands/5_gofer_implement.md +919 -0
- package/resources/gofer/claude-commands/6_gofer_validate.md +2264 -0
- package/resources/gofer/claude-commands/7_gofer_save.md +418 -0
- package/resources/gofer/claude-commands/7a_stakeholder_comms.md +503 -0
- package/resources/gofer/claude-commands/8_gofer_branding.md +310 -0
- package/resources/gofer/claude-commands/9_gofer_tests.md +553 -0
- package/resources/gofer/claude-commands/gofer_bootstrap_workspace.md +143 -0
- package/resources/gofer/claude-commands/gofer_check_workspace.md +114 -0
- package/resources/gofer/claude-commands/gofer_constitution.md +607 -0
- package/resources/gofer/claude-commands/gofer_diagnose.md +109 -0
- package/resources/gofer/claude-commands/gofer_eai_first_run.md +392 -0
- package/resources/gofer/claude-commands/gofer_hydrate.md +556 -0
- package/resources/gofer/claude-commands/gofer_personality.md +39 -0
- package/resources/gofer/claude-commands/gofer_plan.md +35 -0
- package/resources/gofer/claude-commands/gofer_side.md +40 -0
- package/resources/gofer/claude-commands/gofer_spec_summary.md +107 -0
- package/resources/gofer/claude-commands/gofer_tdd.md +107 -0
- package/resources/gofer/claude-commands/gofer_vocabulary.md +107 -0
- package/resources/gofer/claude-commands/gofer_zoom_out.md +107 -0
- package/resources/gofer/claude-skills/eai-gofer/SKILL.md +56 -0
- package/resources/gofer/commands/.gitkeep +0 -0
- package/resources/gofer/commands/0_gofer_start.md +1299 -0
- package/resources/gofer/commands/0a_problem_validation.md +405 -0
- package/resources/gofer/commands/10_gofer_cloud.md +611 -0
- package/resources/gofer/commands/1_gofer_research.md +1135 -0
- package/resources/gofer/commands/2_gofer_specify.md +836 -0
- package/resources/gofer/commands/3_gofer_plan.md +862 -0
- package/resources/gofer/commands/4_gofer_tasks.md +724 -0
- package/resources/gofer/commands/5_gofer_implement.md +900 -0
- package/resources/gofer/commands/6_gofer_validate.md +2245 -0
- package/resources/gofer/commands/7_gofer_save.md +399 -0
- package/resources/gofer/commands/7a_stakeholder_comms.md +484 -0
- package/resources/gofer/commands/8_gofer_branding.md +291 -0
- package/resources/gofer/commands/9_gofer_tests.md +534 -0
- package/resources/gofer/commands/gofer_bootstrap_workspace.md +159 -0
- package/resources/gofer/commands/gofer_check_workspace.md +130 -0
- package/resources/gofer/commands/gofer_constitution.md +588 -0
- package/resources/gofer/commands/gofer_diagnose.md +89 -0
- package/resources/gofer/commands/gofer_eai_first_run.md +392 -0
- package/resources/gofer/commands/gofer_hydrate.md +537 -0
- package/resources/gofer/commands/gofer_personality.md +61 -0
- package/resources/gofer/commands/gofer_plan.md +51 -0
- package/resources/gofer/commands/gofer_side.md +56 -0
- package/resources/gofer/commands/gofer_spec_summary.md +87 -0
- package/resources/gofer/commands/gofer_tdd.md +87 -0
- package/resources/gofer/commands/gofer_vocabulary.md +87 -0
- package/resources/gofer/commands/gofer_zoom_out.md +87 -0
- package/resources/gofer/copilot-instructions/gofer-cost.instructions.md +13 -0
- package/resources/gofer/copilot-instructions/language-server.instructions.md +49 -0
- package/resources/gofer/copilot-instructions/typescript.instructions.md +47 -0
- package/resources/gofer/copilot-instructions/vscode-extension.instructions.md +46 -0
- package/resources/gofer/copilot-prompts/0_gofer_start.prompt.md +1308 -0
- package/resources/gofer/copilot-prompts/0a_problem_validation.prompt.md +429 -0
- package/resources/gofer/copilot-prompts/10_gofer_cloud.prompt.md +644 -0
- package/resources/gofer/copilot-prompts/1_gofer_research.prompt.md +1177 -0
- package/resources/gofer/copilot-prompts/2_gofer_specify.prompt.md +878 -0
- package/resources/gofer/copilot-prompts/3_gofer_plan.prompt.md +904 -0
- package/resources/gofer/copilot-prompts/4_gofer_tasks.prompt.md +766 -0
- package/resources/gofer/copilot-prompts/5_gofer_implement.prompt.md +942 -0
- package/resources/gofer/copilot-prompts/6_gofer_validate.prompt.md +2277 -0
- package/resources/gofer/copilot-prompts/7_gofer_save.prompt.md +433 -0
- package/resources/gofer/copilot-prompts/7a_stakeholder_comms.prompt.md +516 -0
- package/resources/gofer/copilot-prompts/8_gofer_branding.prompt.md +323 -0
- package/resources/gofer/copilot-prompts/9_gofer_tests.prompt.md +566 -0
- package/resources/gofer/copilot-prompts/gofer_bootstrap_workspace.prompt.md +161 -0
- package/resources/gofer/copilot-prompts/gofer_check_workspace.prompt.md +132 -0
- package/resources/gofer/copilot-prompts/gofer_constitution.prompt.md +621 -0
- package/resources/gofer/copilot-prompts/gofer_diagnose.prompt.md +127 -0
- package/resources/gofer/copilot-prompts/gofer_eai_first_run.prompt.md +410 -0
- package/resources/gofer/copilot-prompts/gofer_hydrate.prompt.md +571 -0
- package/resources/gofer/copilot-prompts/gofer_personality.prompt.md +57 -0
- package/resources/gofer/copilot-prompts/gofer_plan.prompt.md +53 -0
- package/resources/gofer/copilot-prompts/gofer_side.prompt.md +58 -0
- package/resources/gofer/copilot-prompts/gofer_spec_summary.prompt.md +125 -0
- package/resources/gofer/copilot-prompts/gofer_tdd.prompt.md +125 -0
- package/resources/gofer/copilot-prompts/gofer_vocabulary.prompt.md +125 -0
- package/resources/gofer/copilot-prompts/gofer_zoom_out.prompt.md +125 -0
- package/resources/gofer/gemini/agents/assumption-tracker.md +171 -0
- package/resources/gofer/gemini/agents/business-metrics-analyzer.md +172 -0
- package/resources/gofer/gemini/agents/business-problem-validator.md +171 -0
- package/resources/gofer/gemini/agents/codebase-analyzer.md +127 -0
- package/resources/gofer/gemini/agents/codebase-locator.md +98 -0
- package/resources/gofer/gemini/agents/codebase-pattern-finder.md +183 -0
- package/resources/gofer/gemini/agents/comms-writer.md +161 -0
- package/resources/gofer/gemini/agents/engineer-review.md +172 -0
- package/resources/gofer/gemini/agents/implement-bug-triangulator.md +97 -0
- package/resources/gofer/gemini/agents/implement-code-review-council.md +92 -0
- package/resources/gofer/gemini/agents/implement-doc-writer.md +92 -0
- package/resources/gofer/gemini/agents/implement-error-hardener.md +87 -0
- package/resources/gofer/gemini/agents/implement-performance-explorer.md +98 -0
- package/resources/gofer/gemini/agents/implement-test-diversifier.md +85 -0
- package/resources/gofer/gemini/agents/implement-variant-generator.md +83 -0
- package/resources/gofer/gemini/agents/multi-perspective-judge.md +117 -0
- package/resources/gofer/gemini/agents/plan-api-comparator.md +93 -0
- package/resources/gofer/gemini/agents/plan-architecture-diverger.md +103 -0
- package/resources/gofer/gemini/agents/plan-data-model-stress-tester.md +98 -0
- package/resources/gofer/gemini/agents/plan-migration-path-finder.md +98 -0
- package/resources/gofer/gemini/agents/plan-refactor-rewrite-advisor.md +100 -0
- package/resources/gofer/gemini/agents/research-dependency-evaluator.md +109 -0
- package/resources/gofer/gemini/agents/research-horizon-scanner.md +103 -0
- package/resources/gofer/gemini/agents/research-market-scanner.md +140 -0
- package/resources/gofer/gemini/agents/research-perspective-multiplier.md +105 -0
- package/resources/gofer/gemini/agents/scope-creep-detector.md +155 -0
- package/resources/gofer/gemini/agents/specify-ambiguity-detector.md +98 -0
- package/resources/gofer/gemini/agents/specify-journey-stress-tester.md +95 -0
- package/resources/gofer/gemini/agents/tasks-cross-cutting-scanner.md +94 -0
- package/resources/gofer/gemini/agents/tasks-rollback-planner.md +92 -0
- package/resources/gofer/gemini/agents/validate-security-red-team.md +105 -0
- package/resources/gofer/gemini/agents/validation-correctness.md +106 -0
- package/resources/gofer/gemini/agents/validation-integration.md +132 -0
- package/resources/gofer/gemini/agents/validation-performance.md +123 -0
- package/resources/gofer/gemini/agents/validation-security.md +118 -0
- package/resources/gofer/gemini/agents/validation-standards.md +154 -0
- package/resources/gofer/gemini/agents/validation-test-quality.md +149 -0
- package/resources/gofer/gemini/agents/visual-bounded-context-writer.md +40 -0
- package/resources/gofer/gemini/agents/visual-c4-writer.md +44 -0
- package/resources/gofer/gemini/agents/visual-erd-writer.md +36 -0
- package/resources/gofer/gemini/agents/visual-heatmap-writer.md +63 -0
- package/resources/gofer/gemini/agents/visual-risk-writer.md +64 -0
- package/resources/gofer/gemini/commands/gofer/.gitkeep +0 -0
- package/resources/gofer/gemini/commands/gofer/0_gofer_start.md +1282 -0
- package/resources/gofer/gemini/commands/gofer/0_gofer_start.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/0a_problem_validation.md +424 -0
- package/resources/gofer/gemini/commands/gofer/0a_problem_validation.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/10_gofer_cloud.md +630 -0
- package/resources/gofer/gemini/commands/gofer/10_gofer_cloud.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/1_gofer_research.md +1154 -0
- package/resources/gofer/gemini/commands/gofer/1_gofer_research.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/2_gofer_specify.md +855 -0
- package/resources/gofer/gemini/commands/gofer/2_gofer_specify.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/3_gofer_plan.md +881 -0
- package/resources/gofer/gemini/commands/gofer/3_gofer_plan.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/4_gofer_tasks.md +743 -0
- package/resources/gofer/gemini/commands/gofer/4_gofer_tasks.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/5_gofer_implement.md +919 -0
- package/resources/gofer/gemini/commands/gofer/5_gofer_implement.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/6_gofer_validate.md +2264 -0
- package/resources/gofer/gemini/commands/gofer/6_gofer_validate.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/7_gofer_save.md +418 -0
- package/resources/gofer/gemini/commands/gofer/7_gofer_save.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/7a_stakeholder_comms.md +503 -0
- package/resources/gofer/gemini/commands/gofer/7a_stakeholder_comms.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/8_gofer_branding.md +310 -0
- package/resources/gofer/gemini/commands/gofer/8_gofer_branding.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/9_gofer_tests.md +553 -0
- package/resources/gofer/gemini/commands/gofer/9_gofer_tests.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_bootstrap_workspace.md +143 -0
- package/resources/gofer/gemini/commands/gofer/gofer_bootstrap_workspace.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_check_workspace.md +114 -0
- package/resources/gofer/gemini/commands/gofer/gofer_check_workspace.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_constitution.md +607 -0
- package/resources/gofer/gemini/commands/gofer/gofer_constitution.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_diagnose.md +109 -0
- package/resources/gofer/gemini/commands/gofer/gofer_diagnose.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_eai_first_run.md +392 -0
- package/resources/gofer/gemini/commands/gofer/gofer_eai_first_run.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_hydrate.md +556 -0
- package/resources/gofer/gemini/commands/gofer/gofer_hydrate.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_personality.md +39 -0
- package/resources/gofer/gemini/commands/gofer/gofer_personality.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_plan.md +35 -0
- package/resources/gofer/gemini/commands/gofer/gofer_plan.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_side.md +40 -0
- package/resources/gofer/gemini/commands/gofer/gofer_side.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_spec_summary.md +107 -0
- package/resources/gofer/gemini/commands/gofer/gofer_spec_summary.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_tdd.md +107 -0
- package/resources/gofer/gemini/commands/gofer/gofer_tdd.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_vocabulary.md +107 -0
- package/resources/gofer/gemini/commands/gofer/gofer_vocabulary.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/gofer_zoom_out.md +107 -0
- package/resources/gofer/gemini/commands/gofer/gofer_zoom_out.toml +2 -0
- package/resources/gofer/gemini/commands/gofer/manifest.json +32 -0
- package/resources/gofer/gemini/extension.json +16 -0
- package/resources/gofer/github-agents/gofer-business.agent.md +20 -0
- package/resources/gofer/github-agents/gofer-implement.agent.md +15 -0
- package/resources/gofer/github-agents/gofer-plan.agent.md +15 -0
- package/resources/gofer/github-agents/gofer-research.agent.md +15 -0
- package/resources/gofer/github-agents/gofer-validate.agent.md +10 -0
- package/resources/gofer/github-skills/eai-gofer/SKILL.md +56 -0
- package/resources/gofer/hook-scripts/agent-stop.mjs +655 -0
- package/resources/gofer/hook-scripts/log-stage-launch-time.mjs +77 -0
- package/resources/gofer/hook-scripts/post-tool-use.mjs +333 -0
- package/resources/gofer/hook-scripts/queued-input.mjs +188 -0
- package/resources/gofer/hook-scripts/session-lifecycle.mjs +93 -0
- package/resources/gofer/hook-scripts/user-prompt-submit.mjs +228 -0
- package/resources/gofer/instruction-templates/base/agents-base.md +37 -0
- package/resources/gofer/instruction-templates/base/claude-base.md +7 -0
- package/resources/gofer/instruction-templates/base/copilot-base.md +26 -0
- package/resources/gofer/instruction-templates/gofer/gofer-claude.md +5 -0
- package/resources/gofer/instruction-templates/gofer/gofer-copilot.md +9 -0
- package/resources/gofer/instruction-templates/languages/generic.md +7 -0
- package/resources/gofer/instruction-templates/languages/go.md +8 -0
- package/resources/gofer/instruction-templates/languages/java.md +8 -0
- package/resources/gofer/instruction-templates/languages/python.md +9 -0
- package/resources/gofer/instruction-templates/languages/rust.md +9 -0
- package/resources/gofer/instruction-templates/languages/typescript.md +19 -0
- package/resources/gofer/instruction-templates/workflow/principles.md +52 -0
- package/resources/gofer/memory/constitution.md +391 -0
- package/resources/gofer/memory/context-profiles.yaml +74 -0
- package/resources/gofer/memory/decisions/000-use-adr-for-decisions.md +67 -0
- package/resources/gofer/memory/decisions/001-di-framework.md +190 -0
- package/resources/gofer/memory/decisions/002-module-extraction.md +305 -0
- package/resources/gofer/memory/decisions/003-error-handling.md +368 -0
- package/resources/gofer/memory/decisions/004-cache-eviction.md +436 -0
- package/resources/gofer/memory/decisions/005-constants-management.md +520 -0
- package/resources/gofer/memory/decisions/README.md +129 -0
- package/resources/gofer/memory/diagrams/di-container.mmd +321 -0
- package/resources/gofer/memory/diagrams/extension-activation.mmd +184 -0
- package/resources/gofer/memory/diagrams/module-dependencies.mmd +264 -0
- package/resources/gofer/memory/gofer-model-policy.yaml +97 -0
- package/resources/gofer/memory/lessons.md +46 -0
- package/resources/gofer/node-scripts/canonical-descriptions.mjs +86 -0
- package/resources/gofer/node-scripts/check-version-alignment.mjs +131 -0
- package/resources/gofer/node-scripts/codex-doctor.mjs +425 -0
- package/resources/gofer/node-scripts/generate-commands.mjs +1366 -0
- package/resources/gofer/node-scripts/generate-issues.js +563 -0
- package/resources/gofer/node-scripts/gofer-closed-loop-audit.mjs +893 -0
- package/resources/gofer/node-scripts/gofer-loop-audit.mjs +541 -0
- package/resources/gofer/node-scripts/gofer-performance-report.mjs +306 -0
- package/resources/gofer/node-scripts/gofer-workspace-bootstrap.mjs +56 -0
- package/resources/gofer/node-scripts/gofer-workspace-check.mjs +56 -0
- package/resources/gofer/node-scripts/lib/ai-leverage-tagger.mjs +103 -0
- package/resources/gofer/node-scripts/lib/assemble-stakeholder-pack.mjs +114 -0
- package/resources/gofer/node-scripts/lib/marp-deck.mjs +87 -0
- package/resources/gofer/node-scripts/lib/mermaid-tabular-fallback.mjs +264 -0
- package/resources/gofer/node-scripts/lib/render-visual.mjs +54 -0
- package/resources/gofer/node-scripts/lib/validate-aliases.mjs +85 -0
- package/resources/gofer/node-scripts/lib/visual-counts.mjs +44 -0
- package/resources/gofer/node-scripts/lib/visual-pass-pipeline.mjs +134 -0
- package/resources/gofer/node-scripts/mermaid-export.mjs +72 -0
- package/resources/gofer/node-scripts/package-agent-plugin.mjs +940 -0
- package/resources/gofer/node-scripts/parse-stage-command.mjs +211 -0
- package/resources/gofer/node-scripts/schemas/.gitkeep +0 -0
- package/resources/gofer/node-scripts/schemas/stage-command.schema.json +72 -0
- package/resources/gofer/node-scripts/sync-extension-resources.mjs +110 -0
- package/resources/gofer/node-scripts/workspace-bootstrap-lib.mjs +1166 -0
- package/resources/gofer/powershell-scripts/install-optional-tools.ps1 +214 -0
- package/resources/gofer/references/platform/README.md +17 -0
- package/resources/gofer/references/platform/deployment-repo.md +9 -0
- package/resources/gofer/references/platform/eai-app-template.md +45 -0
- package/resources/gofer/references/platform/eai-config-driven-ui.md +156 -0
- package/resources/gofer/references/platform/eai-error-catalog.yaml +197 -0
- package/resources/gofer/references/platform/eai-repo-contract.md +134 -0
- package/resources/gofer/references/platform/eai-service-patterns.md +56 -0
- package/resources/gofer/references/platform/eai.md +85 -0
- package/resources/gofer/references/platform/vertical-template.md +49 -0
- package/resources/gofer/specify-commands/.gitkeep +0 -0
- package/resources/gofer/specify-commands/0_gofer_start.md +1299 -0
- package/resources/gofer/specify-commands/0a_problem_validation.md +405 -0
- package/resources/gofer/specify-commands/10_gofer_cloud.md +611 -0
- package/resources/gofer/specify-commands/1_gofer_research.md +1135 -0
- package/resources/gofer/specify-commands/2_gofer_specify.md +836 -0
- package/resources/gofer/specify-commands/3_gofer_plan.md +862 -0
- package/resources/gofer/specify-commands/4_gofer_tasks.md +724 -0
- package/resources/gofer/specify-commands/5_gofer_implement.md +900 -0
- package/resources/gofer/specify-commands/6_gofer_validate.md +2245 -0
- package/resources/gofer/specify-commands/7_gofer_save.md +399 -0
- package/resources/gofer/specify-commands/7a_stakeholder_comms.md +484 -0
- package/resources/gofer/specify-commands/8_gofer_branding.md +291 -0
- package/resources/gofer/specify-commands/9_gofer_tests.md +534 -0
- package/resources/gofer/specify-commands/gofer_bootstrap_workspace.md +159 -0
- package/resources/gofer/specify-commands/gofer_check_workspace.md +130 -0
- package/resources/gofer/specify-commands/gofer_constitution.md +588 -0
- package/resources/gofer/specify-commands/gofer_diagnose.md +89 -0
- package/resources/gofer/specify-commands/gofer_eai_first_run.md +392 -0
- package/resources/gofer/specify-commands/gofer_hydrate.md +537 -0
- package/resources/gofer/specify-commands/gofer_personality.md +61 -0
- package/resources/gofer/specify-commands/gofer_plan.md +51 -0
- package/resources/gofer/specify-commands/gofer_side.md +56 -0
- package/resources/gofer/specify-commands/gofer_spec_summary.md +87 -0
- package/resources/gofer/specify-commands/gofer_tdd.md +87 -0
- package/resources/gofer/specify-commands/gofer_vocabulary.md +87 -0
- package/resources/gofer/specify-commands/gofer_zoom_out.md +87 -0
- package/resources/gofer/system-skills/0_gofer_start/SKILL.md +1287 -0
- package/resources/gofer/system-skills/0a_problem_validation/SKILL.md +429 -0
- package/resources/gofer/system-skills/10_gofer_cloud/SKILL.md +635 -0
- package/resources/gofer/system-skills/1_gofer_research/SKILL.md +1159 -0
- package/resources/gofer/system-skills/2_gofer_specify/SKILL.md +860 -0
- package/resources/gofer/system-skills/3_gofer_plan/SKILL.md +886 -0
- package/resources/gofer/system-skills/4_gofer_tasks/SKILL.md +748 -0
- package/resources/gofer/system-skills/5_gofer_implement/SKILL.md +924 -0
- package/resources/gofer/system-skills/6_gofer_validate/SKILL.md +2269 -0
- package/resources/gofer/system-skills/7_gofer_save/SKILL.md +423 -0
- package/resources/gofer/system-skills/7a_stakeholder_comms/SKILL.md +508 -0
- package/resources/gofer/system-skills/8_gofer_branding/SKILL.md +315 -0
- package/resources/gofer/system-skills/9_gofer_tests/SKILL.md +558 -0
- package/resources/gofer/system-skills/gofer_bootstrap_workspace/SKILL.md +148 -0
- package/resources/gofer/system-skills/gofer_check_workspace/SKILL.md +119 -0
- package/resources/gofer/system-skills/gofer_constitution/SKILL.md +612 -0
- package/resources/gofer/system-skills/gofer_diagnose/SKILL.md +114 -0
- package/resources/gofer/system-skills/gofer_eai_first_run/SKILL.md +397 -0
- package/resources/gofer/system-skills/gofer_hydrate/SKILL.md +561 -0
- package/resources/gofer/system-skills/gofer_personality/SKILL.md +44 -0
- package/resources/gofer/system-skills/gofer_plan/SKILL.md +40 -0
- package/resources/gofer/system-skills/gofer_side/SKILL.md +45 -0
- package/resources/gofer/system-skills/gofer_spec_summary/SKILL.md +112 -0
- package/resources/gofer/system-skills/gofer_tdd/SKILL.md +112 -0
- package/resources/gofer/system-skills/gofer_vocabulary/SKILL.md +112 -0
- package/resources/gofer/system-skills/gofer_zoom_out/SKILL.md +112 -0
- package/resources/gofer/templates/agent-file-template.md +28 -0
- package/resources/gofer/templates/assumptions-template.md +94 -0
- package/resources/gofer/templates/audit-history-template.md +35 -0
- package/resources/gofer/templates/brand/brand-profile-template.json +45 -0
- package/resources/gofer/templates/brand/document-style-template.md +50 -0
- package/resources/gofer/templates/brand/marp-theme-template.css +58 -0
- package/resources/gofer/templates/brownfield-analysis.md +44 -0
- package/resources/gofer/templates/business-metrics-template.md +120 -0
- package/resources/gofer/templates/business-owner-summary-template.md +83 -0
- package/resources/gofer/templates/checklist-template.md +40 -0
- package/resources/gofer/templates/ciso-security-summary-template.md +70 -0
- package/resources/gofer/templates/context-bundle-template.md +76 -0
- package/resources/gofer/templates/contract-pack-template.md +109 -0
- package/resources/gofer/templates/cto-architecture-summary-template.md +83 -0
- package/resources/gofer/templates/discovery-template.md +92 -0
- package/resources/gofer/templates/eai-preflight-template.md +144 -0
- package/resources/gofer/templates/goal-ledger-template.json +69 -0
- package/resources/gofer/templates/gofer-model-policy.yaml +97 -0
- package/resources/gofer/templates/issues-template.md +106 -0
- package/resources/gofer/templates/journey/base-journey.md +95 -0
- package/resources/gofer/templates/journey/industry-variants.yaml +277 -0
- package/resources/gofer/templates/loop-contract-template.json +68 -0
- package/resources/gofer/templates/plan-template.md +215 -0
- package/resources/gofer/templates/problem-brief-template.md +85 -0
- package/resources/gofer/templates/proposal-review-template.md +79 -0
- package/resources/gofer/templates/research-template.md +222 -0
- package/resources/gofer/templates/reuse-scan-template.md +43 -0
- package/resources/gofer/templates/sequence-diagrams/option-spectrum.yaml +178 -0
- package/resources/gofer/templates/service-fit-matrix-template.md +29 -0
- package/resources/gofer/templates/session-handoff-template.md +172 -0
- package/resources/gofer/templates/spec-summary-template.md +118 -0
- package/resources/gofer/templates/spec-template.md +196 -0
- package/resources/gofer/templates/stakeholder-comms-template.md +330 -0
- package/resources/gofer/templates/stakeholder-review-index-template.md +54 -0
- package/resources/gofer/templates/tasks-template.md +323 -0
- package/resources/gofer/templates/ui-approval-template.md +32 -0
- package/resources/gofer/templates/ui-preview-brief-template.md +65 -0
- package/resources/gofer/templates/ui-review-log-template.md +11 -0
- package/resources/gofer/templates/visuals/.gitkeep +0 -0
- package/resources/gofer/templates/visuals/bounded-context-map.md +19 -0
- package/resources/gofer/templates/visuals/bounded-context-template.md +47 -0
- package/resources/gofer/templates/visuals/c4-container-template.md +38 -0
- package/resources/gofer/templates/visuals/c4-container.md +20 -0
- package/resources/gofer/templates/visuals/c4-context-template.md +46 -0
- package/resources/gofer/templates/visuals/capability-heatmap-template.md +54 -0
- package/resources/gofer/templates/visuals/data-model-erd-template.md +41 -0
- package/resources/gofer/templates/visuals/erd.md +19 -0
- package/resources/gofer/templates/visuals/impact-canvas.md +40 -0
- package/resources/gofer/templates/visuals/risk-heatmap-template.md +51 -0
- package/resources/gofer/templates/visuals/roi-projection.md +17 -0
- package/resources/gofer/templates/visuals/value-stream-asis.md +16 -0
- package/resources/gofer/templates/visuals/value-stream-tobe.md +18 -0
- package/resources/gofer/templates/working-backwards-prfaq-template.md +165 -0
- package/resources/linked-sources.json +25 -0
|
@@ -0,0 +1,904 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: 3_gofer_plan
|
|
3
|
+
description: Create a detailed technical implementation plan with architecture, data model, and contracts.
|
|
4
|
+
agent: copilot-workspace
|
|
5
|
+
tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Grep
|
|
8
|
+
- Glob
|
|
9
|
+
- Bash
|
|
10
|
+
- WebSearch
|
|
11
|
+
argument-hint: feature-name-or-description
|
|
12
|
+
gofer:
|
|
13
|
+
workflowProfile: standard
|
|
14
|
+
canonicalSource: .specify/commands/3_gofer_plan.md
|
|
15
|
+
canonicalChecksum: 509ac99f326d64be668588439436215d80808244661c2096db75068eb1fc372f
|
|
16
|
+
metadataSource: scripts/generate-commands.ts
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Workspace Preflight
|
|
20
|
+
|
|
21
|
+
Before doing stage/helper work:
|
|
22
|
+
|
|
23
|
+
1. Resolve the repository root.
|
|
24
|
+
2. Check the core Gofer sentinels:
|
|
25
|
+
- `.specify/.gofer-version`
|
|
26
|
+
- `.specify/commands/0_gofer_start.md`
|
|
27
|
+
- `.specify/templates/spec-template.md`
|
|
28
|
+
- `.specify/templates/loop-contract-template.json`
|
|
29
|
+
- `.specify/templates/working-backwards-prfaq-template.md`
|
|
30
|
+
- `.specify/templates/business-owner-summary-template.md`
|
|
31
|
+
- `.specify/templates/cto-architecture-summary-template.md`
|
|
32
|
+
- `.specify/templates/ciso-security-summary-template.md`
|
|
33
|
+
- `.specify/templates/stakeholder-review-index-template.md`
|
|
34
|
+
- `.specify/scripts/bash/create-new-feature.sh`
|
|
35
|
+
- `.specify/scripts/node/parse-stage-command.mjs`
|
|
36
|
+
- `.specify/scripts/node/gofer-loop-audit.mjs`
|
|
37
|
+
- `.specify/scripts/hooks/post-tool-use.mjs`
|
|
38
|
+
- `.specify/scripts/powershell/install-optional-tools.ps1`
|
|
39
|
+
- `.specify/templates/gofer-model-policy.yaml`
|
|
40
|
+
- `.specify/memory/gofer-model-policy.yaml`
|
|
41
|
+
- `.specify/specs/`
|
|
42
|
+
- `.specify/memory/`
|
|
43
|
+
3. Check host-specific repo-owned files when relevant:
|
|
44
|
+
- Claude: `AGENTS.md`, `CLAUDE.md`, `.claude/settings.json`
|
|
45
|
+
- Codex: `AGENTS.md`
|
|
46
|
+
- Copilot: `.github/copilot-instructions.md`
|
|
47
|
+
- VS Code extension mirrors Claude/Copilot/Gemini resources itself and should still keep the core scaffold healthy
|
|
48
|
+
4. If the repo already has the workspace checker script, prefer running:
|
|
49
|
+
- `node .specify/scripts/node/gofer-workspace-check.mjs --host copilot --json`
|
|
50
|
+
5. If the workspace is missing or stale, ask exactly:
|
|
51
|
+
- **"This repo is missing or stale for Gofer. Initialize/update it now?"**
|
|
52
|
+
6. If the user says yes, run the Gofer workspace bootstrap helper and then resume this command from the top.
|
|
53
|
+
7. If the user says no, stop and explain that Gofer stage/helper work depends on the repo-owned scaffold.
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
# Gofer Plan
|
|
57
|
+
|
|
58
|
+
## EAI Platform Session Preflight
|
|
59
|
+
|
|
60
|
+
Before any Gofer stage/helper command does pipeline work:
|
|
61
|
+
|
|
62
|
+
1. Treat durable delivery as EAI Platform delivery by default, with Azure second
|
|
63
|
+
and every other stack only by explicit exception.
|
|
64
|
+
2. Run `eai whoami` and confirm the EAI CLI is installed, the user is logged in,
|
|
65
|
+
and an active tenant is visible.
|
|
66
|
+
3. If `eai` is missing, `eai whoami` fails, the token is expired, or no active
|
|
67
|
+
tenant is available, stop and run `/gofer:eai-first-run` or ask the user to
|
|
68
|
+
approve login/setup before continuing.
|
|
69
|
+
4. For EAI app delivery, do not continue into research, specification, planning,
|
|
70
|
+
tasks, implementation, or validation until
|
|
71
|
+
`.specify/specs/{feature}/eai-preflight.md` records login, tenant, template,
|
|
72
|
+
app-readiness, and next-action evidence.
|
|
73
|
+
5. Do not write tokens, secrets, private tenant IDs, or local `.env` values into
|
|
74
|
+
Gofer artifacts; record only product-safe readiness status and evidence.
|
|
75
|
+
|
|
76
|
+
## Token And Cost Policy
|
|
77
|
+
<!-- gofer:token-cost-policy:start -->
|
|
78
|
+
|
|
79
|
+
Before spawning agents, calling tools, or loading large files:
|
|
80
|
+
|
|
81
|
+
1. Treat `.specify/memory/gofer-model-policy.yaml` as the repo-owned source of truth for simple, medium, hard, and arbiter model routing. If it is missing, run `/gofer:bootstrap-workspace` before continuing.
|
|
82
|
+
2. Use the cheapest capable model first.
|
|
83
|
+
- Claude: Haiku for scouting/extraction; Sonnet for normal implementation, synthesis, validation, and security; Opus for high-risk arbitration or release-critical failures.
|
|
84
|
+
- Codex/OpenAI: GPT mini for simple coding; GPT nano only for locate/classify/summarize/mechanical work; GPT-5.3-Codex or flagship GPT for tool-heavy coding, architecture, and release-critical validation.
|
|
85
|
+
- Gemini: Flash-Lite for cheap large-context scan/summarize; Flash for default research synthesis; Pro for large-context architecture or high-risk arbitration.
|
|
86
|
+
- Copilot: prefer Auto for simple and default work; ask the user before choosing a paid/high-tier picker model for hard security, architecture, or release gates.
|
|
87
|
+
3. Keep raw tool output out of the main conversation context. Save stable findings to `.specify/specs/{feature}/context-bundle.md`, then work from summaries.
|
|
88
|
+
4. Use provider prompt/context caching only for stable, non-secret prefixes: Gofer scaffold, AGENTS/CLAUDE/Copilot instructions, constitution, repo map, stage contracts, and validation rubric.
|
|
89
|
+
5. Before continuing after large research, planning, implementation, or validation bursts, checkpoint the durable artifacts and compact/clear/resume context when the host supports it.
|
|
90
|
+
6. Escalate model tier only when a cheaper pass is low-confidence, contradictory, security-sensitive, or blocking release quality.
|
|
91
|
+
<!-- gofer:token-cost-policy:end -->
|
|
92
|
+
|
|
93
|
+
## User Input
|
|
94
|
+
|
|
95
|
+
```text
|
|
96
|
+
$ARGUMENTS
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
You **MUST** consider the user input before proceeding (if not empty).
|
|
100
|
+
|
|
101
|
+
## Execution Profile And Planning Surface
|
|
102
|
+
|
|
103
|
+
Use the research/spec risk classification to choose planning depth:
|
|
104
|
+
|
|
105
|
+
- **fast**: produce the smallest viable plan, only for docs-only or very small
|
|
106
|
+
low-risk work.
|
|
107
|
+
- **standard**: produce the normal plan, data/contracts only when relevant, and
|
|
108
|
+
a concrete test strategy. Standard is the catch-all for work that is not fast,
|
|
109
|
+
full, or dynamic.
|
|
110
|
+
- **full**: include contract compatibility, auth/security, data migration,
|
|
111
|
+
infra/config, rollback, and release sequencing where the generic risk labels
|
|
112
|
+
require them.
|
|
113
|
+
- **dynamic**: produce a workflow DAG, shard plan, reducer plan,
|
|
114
|
+
verifier/refuter pass, resumable progress ledger, budget limits, and stop
|
|
115
|
+
conditions before implementation starts.
|
|
116
|
+
|
|
117
|
+
Avoid artifact churn. Optional diagrams, extended architecture councils,
|
|
118
|
+
generated issue packs, and broad release plans are only warranted when risk is
|
|
119
|
+
full/dynamic-depth or the user asks for them.
|
|
120
|
+
|
|
121
|
+
## Prerequisites
|
|
122
|
+
|
|
123
|
+
This command expects in `.specify/specs/{feature}/`:
|
|
124
|
+
|
|
125
|
+
- `research.md` - Codebase analysis (from #1_gofer_research)
|
|
126
|
+
- `spec.md` - Feature specification (from #2_gofer_specify)
|
|
127
|
+
- `goal-ledger.json` - Objective ledger and re-loop triggers (from /1 and /2)
|
|
128
|
+
- `loop-contract.json` - Bounded check-repair contract (from /1 and /2)
|
|
129
|
+
|
|
130
|
+
If missing, prompt user to run the prerequisite stage.
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Spec Artifact Guard
|
|
135
|
+
|
|
136
|
+
`spec.md` is the source of truth for scope, acceptance criteria, protected
|
|
137
|
+
boundaries, and downstream traceability. Before planning, the setup script must
|
|
138
|
+
confirm `{FEATURE_DIR}/spec.md` exists, is non-empty, and is not the raw
|
|
139
|
+
`spec-template.md` placeholder seeded by feature bootstrap. If
|
|
140
|
+
`.specify/scripts/bash/setup-plan.sh --json` reports that `spec.md` is missing,
|
|
141
|
+
empty, or `template`, stop and run `#2_gofer_specify`; do not create or refresh
|
|
142
|
+
`plan.md` from research alone.
|
|
143
|
+
|
|
144
|
+
## Outline
|
|
145
|
+
|
|
146
|
+
1. Context health check
|
|
147
|
+
2. Load context (lightweight)
|
|
148
|
+
3. Dispatch parallel planning agents (sub-agents handle heavy generation)
|
|
149
|
+
4. Review agent outputs
|
|
150
|
+
5. Optional multi-perspective review
|
|
151
|
+
6. Spec coverage validation
|
|
152
|
+
7. Output: `plan.md`, `data-model.md`, `contracts/`, `quickstart.md`
|
|
153
|
+
8. Stakeholder PR/FAQ output: `working-backwards-prfaq.md`,
|
|
154
|
+
`prfaq-history/03-plan.md`, `cto-architecture-summary.md`, and
|
|
155
|
+
`stakeholder-review-index.md`
|
|
156
|
+
9. EnterpriseAI profile output: task-ready references to `context-bundle.md`,
|
|
157
|
+
`contract-pack.md`, `reuse-scan.md`, `audit-history.md`, and for app
|
|
158
|
+
delivery `ui-review-log.md`, `ui-approval.md`, and
|
|
159
|
+
`service-fit-matrix.md`, including public-readiness, block-porting, source platform
|
|
160
|
+
decoupling, Storybook, theme override, and package-profile decisions
|
|
161
|
+
10. Dynamic-only output: `workflow-dag.md` with shards, inputs, outputs,
|
|
162
|
+
reducer expectations, verifier/refuter evidence, budget limits, stop
|
|
163
|
+
conditions, and resumable progress location
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
## Step 0: Context Health Check
|
|
168
|
+
|
|
169
|
+
Before starting planning, assess context window health:
|
|
170
|
+
|
|
171
|
+
```bash
|
|
172
|
+
.specify/scripts/bash/check-context-health.sh
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
- If **< 50%**: Proceed normally
|
|
176
|
+
- If **50-70%**: Consider `/compact` - planning loads multiple documents
|
|
177
|
+
- If **> 70%**: Start new session with handoff summary
|
|
178
|
+
|
|
179
|
+
Planning dispatches multiple agents — keep main context lightweight.
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## Step 1: Load Context (Lightweight)
|
|
184
|
+
|
|
185
|
+
1. **Run setup script**:
|
|
186
|
+
|
|
187
|
+
```bash
|
|
188
|
+
.specify/scripts/bash/setup-plan.sh --json
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
Parse JSON for FEATURE_DIR, FEATURE_SPEC, BRANCH
|
|
192
|
+
|
|
193
|
+
2. **Scan existing documents** (do NOT load full content — agents read
|
|
194
|
+
directly):
|
|
195
|
+
- Note feature name from FEATURE_DIR
|
|
196
|
+
- Note whether `discovery.md`, `.specify/memory/constitution.md` exist
|
|
197
|
+
- Note whether `ui-preview-brief.md`, `ui-review-log.md`,
|
|
198
|
+
`ui-approval.md`, and `service-fit-matrix.md` exist
|
|
199
|
+
- Note external/internal/hybrid profile choice, package lane, coupling
|
|
200
|
+
status, Storybook story IDs, theme override points, custom-block
|
|
201
|
+
exceptions, and public-readiness status when app delivery applies
|
|
202
|
+
- Note whether `goal-ledger.json` exists and which goals, delivery states,
|
|
203
|
+
and re-loop triggers must remain valid through planning
|
|
204
|
+
- Note whether `loop-contract.json` exists and which evaluation commands,
|
|
205
|
+
maximum iterations, stop conditions, and escalation triggers must be
|
|
206
|
+
reflected in implementation phases
|
|
207
|
+
- If loop-contract.json is missing, initialize it with
|
|
208
|
+
`node .specify/scripts/node/gofer-loop-audit.mjs --feature-dir {FEATURE_DIR} --stage 3_plan --init --json`
|
|
209
|
+
- Note whether `{FEATURE_DIR}/sequence-diagrams/selected-option.md` exists
|
|
210
|
+
|
|
211
|
+
3. **Note template path**: `.specify/templates/plan-template.md`
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
## Step 2: Dispatch Planning Agents
|
|
216
|
+
|
|
217
|
+
**CRITICAL**: You **MUST** launch these agents using the Task tool. Do NOT
|
|
218
|
+
perform this work inline in the main context. The main context should only
|
|
219
|
+
orchestrate and review agent outputs. Each agent reads source documents
|
|
220
|
+
independently and writes its output artifact.
|
|
221
|
+
|
|
222
|
+
### Agent 1: Implementation Plan Writer
|
|
223
|
+
|
|
224
|
+
```
|
|
225
|
+
Task: subagent_type="general-purpose", model="sonnet"
|
|
226
|
+
Prompt: "Generate a complete technical implementation plan for [FEATURE_NAME].
|
|
227
|
+
|
|
228
|
+
Feature directory: {FEATURE_DIR}
|
|
229
|
+
|
|
230
|
+
Read these files for full context:
|
|
231
|
+
- {FEATURE_DIR}/research.md — Technology decisions, integration points, patterns, constraints
|
|
232
|
+
- {FEATURE_DIR}/spec.md — User stories, requirements, success criteria
|
|
233
|
+
- {FEATURE_DIR}/goal-ledger.json — business goals, metrics, delivery states, and re-loop triggers
|
|
234
|
+
- {FEATURE_DIR}/loop-contract.json — bounded loop objective, evaluation commands, max iterations, stop conditions, and escalation rules
|
|
235
|
+
- {FEATURE_DIR}/ui-preview-brief.md — app-delivery preview brief (read if exists, skip if not)
|
|
236
|
+
- {FEATURE_DIR}/ui-review-log.md — app-delivery preview iteration history (read if exists, skip if not)
|
|
237
|
+
- {FEATURE_DIR}/ui-approval.md — app-delivery approval state (read if exists, skip if not)
|
|
238
|
+
- {FEATURE_DIR}/service-fit-matrix.md — app-delivery capability selections (read if exists, skip if not)
|
|
239
|
+
- .specify/templates/plan-template.md — Plan template structure
|
|
240
|
+
- .specify/memory/constitution.md — Project principles (read if exists)
|
|
241
|
+
- {FEATURE_DIR}/sequence-diagrams/selected-option.md — Selected approach (read if exists)
|
|
242
|
+
|
|
243
|
+
Generate the COMPLETE plan.md with these sections:
|
|
244
|
+
|
|
245
|
+
1. YAML frontmatter: feature, spec, research, status: ready, created (ISO date)
|
|
246
|
+
2. Technical Context:
|
|
247
|
+
- Tech Stack (language, framework, database, testing — from research)
|
|
248
|
+
- Architecture (how components fit together, with diagram description)
|
|
249
|
+
- Integration Points table (Component | File | Integration Type)
|
|
250
|
+
- Key Dependencies (existing modules, libraries)
|
|
251
|
+
3. Selected Implementation Approach (if selected-option.md exists):
|
|
252
|
+
- Option number, scores, Gen AI touchpoints
|
|
253
|
+
4. Constitution Check (if constitution.md exists):
|
|
254
|
+
- Verify alignment with each project principle
|
|
255
|
+
5. Implementation Phases (5 phases):
|
|
256
|
+
- Phase 1: Setup & Foundation (directory structure, config, deps, base types)
|
|
257
|
+
- Phase 2: Data Layer (entities, persistence, validation)
|
|
258
|
+
- Phase 3: Business Logic (services per user story, business rules, integrations)
|
|
259
|
+
- Phase 4: API/Interface Layer (endpoints per contracts, validation, auth)
|
|
260
|
+
- Phase 5: Polish & Integration (logging, docs, performance, final testing)
|
|
261
|
+
Each phase must have: Goal, Tasks (checkboxed), Verification criteria
|
|
262
|
+
6. File Structure (tree diagram of all new/modified files)
|
|
263
|
+
7. Risk Assessment table (Risk | Impact | Mitigation)
|
|
264
|
+
8. Spec Traceability:
|
|
265
|
+
- User Story Coverage (Story | Status | Plan References)
|
|
266
|
+
- Requirement Coverage (FR-ID | Status | Plan Reference)
|
|
267
|
+
Verify 100% coverage of all user stories and functional requirements.
|
|
268
|
+
9. Goal Reconciliation And Dual-State Delivery:
|
|
269
|
+
- Goal IDs, outcome metrics, target thresholds, and where they are delivered
|
|
270
|
+
- Delivery states (`mock`, `hybrid`, `live`) plus promotion criteria
|
|
271
|
+
- Re-loop triggers that should send the feature back to specify, plan, tasks,
|
|
272
|
+
or validate when contracts, UX scope, assumptions, or implementation drift
|
|
273
|
+
10. Loop Engineering Plan:
|
|
274
|
+
- Evaluation commands from loop-contract.json and where they run
|
|
275
|
+
- Maximum check-repair iteration count per implementation/validation loop
|
|
276
|
+
- Stop conditions and human escalation triggers
|
|
277
|
+
- Required ledger evidence to append after each focused loop
|
|
278
|
+
11. AI-Readable Blocks Bridge:
|
|
279
|
+
- Package profile choice: external, internal, or hybrid
|
|
280
|
+
- Package lane for each UI block or package surface
|
|
281
|
+
- Coupling status, including source-platform decoupling boundary or approved
|
|
282
|
+
restricted-source exception
|
|
283
|
+
- Block porting plan with stable block IDs, Storybook story IDs, theme
|
|
284
|
+
override points, and custom-block exceptions
|
|
285
|
+
- Public-readiness tasks required before an external or hybrid package is
|
|
286
|
+
considered complete
|
|
287
|
+
|
|
288
|
+
Rules:
|
|
289
|
+
- Every user story from spec.md MUST have plan coverage
|
|
290
|
+
- Every acceptance criterion MUST map to a plan component
|
|
291
|
+
- Every functional requirement MUST be addressed
|
|
292
|
+
- Reference specific file paths for all components
|
|
293
|
+
- Plan must be specific enough for task generation
|
|
294
|
+
- Resolve all unknowns — no NEEDS CLARIFICATION in the plan
|
|
295
|
+
- App-delivery plans MUST make public-readiness, block porting, source platform
|
|
296
|
+
decoupling, Storybook coverage, theme overrides, and package-profile work
|
|
297
|
+
visible enough for `#4_gofer_tasks` to emit first-class runnable tasks
|
|
298
|
+
- Keep `goal-ledger.json` aligned with any planning-level changes to goals,
|
|
299
|
+
delivery states, or re-loop triggers
|
|
300
|
+
- Keep `loop-contract.json` aligned with plan-level verification commands, stop
|
|
301
|
+
conditions, and release-critical escalation paths
|
|
302
|
+
|
|
303
|
+
Write the complete plan to {FEATURE_DIR}/plan.md.
|
|
304
|
+
|
|
305
|
+
Return a structured summary:
|
|
306
|
+
- Phase count and task count per phase
|
|
307
|
+
- User story coverage: N/N covered
|
|
308
|
+
- FR coverage: N/N covered
|
|
309
|
+
- Key architecture decisions made
|
|
310
|
+
- Any risks flagged as HIGH"
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
### Agent 2: Data Model Designer
|
|
314
|
+
|
|
315
|
+
```
|
|
316
|
+
Task: subagent_type="general-purpose", model="sonnet"
|
|
317
|
+
Prompt: "Design the data model for feature [FEATURE_NAME].
|
|
318
|
+
|
|
319
|
+
Feature directory: {FEATURE_DIR}
|
|
320
|
+
|
|
321
|
+
Read these files:
|
|
322
|
+
- {FEATURE_DIR}/spec.md — User stories, requirements, key entities
|
|
323
|
+
- {FEATURE_DIR}/research.md — Existing data patterns, database context
|
|
324
|
+
|
|
325
|
+
If spec.md defines Key Entities or the feature involves data:
|
|
326
|
+
|
|
327
|
+
Generate {FEATURE_DIR}/data-model.md with:
|
|
328
|
+
1. Entity definitions with field tables (Field | Type | Required | Description)
|
|
329
|
+
2. Validation rules for each entity
|
|
330
|
+
3. Relationships between entities
|
|
331
|
+
4. State transition diagrams (Mermaid stateDiagram-v2) where applicable
|
|
332
|
+
5. Database considerations (indexing, migration approach)
|
|
333
|
+
6. Entity-to-UserStory mapping (which stories need which entities)
|
|
334
|
+
|
|
335
|
+
If the feature does NOT involve data entities:
|
|
336
|
+
Write a minimal data-model.md noting 'No data entities required for this feature.'
|
|
337
|
+
|
|
338
|
+
Return: entity count, relationship count, entities with state machines"
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
### Agent 3: API Contract Designer
|
|
342
|
+
|
|
343
|
+
```
|
|
344
|
+
Task: subagent_type="general-purpose", model="sonnet"
|
|
345
|
+
Prompt: "Design API contracts for feature [FEATURE_NAME].
|
|
346
|
+
|
|
347
|
+
Feature directory: {FEATURE_DIR}
|
|
348
|
+
|
|
349
|
+
Read these files:
|
|
350
|
+
- {FEATURE_DIR}/spec.md — Functional requirements implying API endpoints
|
|
351
|
+
- {FEATURE_DIR}/research.md — Existing API patterns, conventions
|
|
352
|
+
|
|
353
|
+
If spec.md implies API endpoints (REST, internal, events):
|
|
354
|
+
|
|
355
|
+
Create contract files in {FEATURE_DIR}/contracts/:
|
|
356
|
+
- api.md — For REST/HTTP endpoints
|
|
357
|
+
- internal-api.md — For service-to-service contracts
|
|
358
|
+
- events.md — For event-based contracts
|
|
359
|
+
|
|
360
|
+
Each endpoint must include:
|
|
361
|
+
- Method and path
|
|
362
|
+
- Description
|
|
363
|
+
- Request schema (JSON example)
|
|
364
|
+
- Response schema (JSON example with status code)
|
|
365
|
+
- Error codes table (Code | Description)
|
|
366
|
+
- Which user story/FR it serves
|
|
367
|
+
|
|
368
|
+
If the feature has NO APIs:
|
|
369
|
+
Create {FEATURE_DIR}/contracts/api.md noting 'No API endpoints required.'
|
|
370
|
+
|
|
371
|
+
Return: endpoint count, contract files created, user stories served"
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
### Agent 4: Quickstart Guide Writer
|
|
375
|
+
|
|
376
|
+
```
|
|
377
|
+
Task: subagent_type="general-purpose", model="haiku"
|
|
378
|
+
Prompt: "Generate a quickstart testing guide for feature [FEATURE_NAME].
|
|
379
|
+
|
|
380
|
+
Feature directory: {FEATURE_DIR}
|
|
381
|
+
|
|
382
|
+
Read these files:
|
|
383
|
+
- {FEATURE_DIR}/spec.md — What to test (acceptance criteria)
|
|
384
|
+
- {FEATURE_DIR}/research.md — Tech stack and testing framework info
|
|
385
|
+
|
|
386
|
+
Write {FEATURE_DIR}/quickstart.md with:
|
|
387
|
+
1. Prerequisites (what needs to be installed/configured)
|
|
388
|
+
2. Setup steps (how to get the feature running)
|
|
389
|
+
3. Manual Testing section (step-by-step test scenarios from acceptance criteria)
|
|
390
|
+
4. Automated Tests section (test commands)
|
|
391
|
+
5. Key Files table (File | Purpose)
|
|
392
|
+
6. Common Issues section (anticipated problems and solutions)
|
|
393
|
+
|
|
394
|
+
Return: scenario count, prerequisite count"
|
|
395
|
+
```
|
|
396
|
+
|
|
397
|
+
**Run all 4 agents in parallel.** Agents 2-4 read spec.md independently while
|
|
398
|
+
Agent 1 generates the plan.
|
|
399
|
+
|
|
400
|
+
### Agent 5-7: Visual Writers (Persona-Pack)
|
|
401
|
+
|
|
402
|
+
After the planning agents complete and write plan.md, data-model.md, and
|
|
403
|
+
contracts, dispatch three visual-writer sub-agents in parallel to produce the
|
|
404
|
+
developer-persona-pack visuals:
|
|
405
|
+
|
|
406
|
+
```
|
|
407
|
+
Task: subagent_type="visual-c4-writer", model="haiku"
|
|
408
|
+
Prompt: "Generate C4 Context and Container diagrams for {FEATURE_NAME}.
|
|
409
|
+
Feature dir: {FEATURE_DIR}. Read spec.md, research.md, plan.md.
|
|
410
|
+
Output to {FEATURE_DIR}/visuals/c4-context.md and c4-container.md."
|
|
411
|
+
|
|
412
|
+
Task: subagent_type="visual-bounded-context-writer", model="haiku"
|
|
413
|
+
Prompt: "Generate bounded-context map for {FEATURE_NAME}.
|
|
414
|
+
Feature dir: {FEATURE_DIR}. Read plan.md, data-model.md, contracts/.
|
|
415
|
+
Output to {FEATURE_DIR}/visuals/bounded-context.md."
|
|
416
|
+
|
|
417
|
+
Task: subagent_type="visual-erd-writer", model="haiku"
|
|
418
|
+
Prompt: "Generate data-model ERD for {FEATURE_NAME}.
|
|
419
|
+
Feature dir: {FEATURE_DIR}. Read data-model.md.
|
|
420
|
+
Output to {FEATURE_DIR}/visuals/data-model-erd.md."
|
|
421
|
+
```
|
|
422
|
+
|
|
423
|
+
These three artifacts (c4-container.md, bounded-context.md, data-model-erd.md)
|
|
424
|
+
are required for the developer persona pack. The persona-pack completeness gate
|
|
425
|
+
at #4_gofer_tasks start will warn if any are missing.
|
|
426
|
+
|
|
427
|
+
Visual quality requirements for all planning visuals:
|
|
428
|
+
|
|
429
|
+
- Answer one review question per visual; split rather than crowding when a
|
|
430
|
+
diagram has more than about seven primary nodes or steps.
|
|
431
|
+
- Include a plain-language preamble, audience, source inputs, and how to read
|
|
432
|
+
the visual.
|
|
433
|
+
- Use C4 context/container for boundaries and runtime units, ERD for data,
|
|
434
|
+
sequence/state for flows, heatmaps for risk/capability priority, and
|
|
435
|
+
screenshots/storyboards for UI behavior.
|
|
436
|
+
- Keep visuals source-controlled and renderable via Mermaid/D2/Structurizr-style
|
|
437
|
+
text where practical; otherwise include a markdown-table/text fallback.
|
|
438
|
+
- Generate Marp slide output when stakeholder review needs a simple presentation
|
|
439
|
+
story; skip it only for small docs-only or mechanical changes where Markdown is
|
|
440
|
+
clearer.
|
|
441
|
+
- Ensure every human-facing document produced by planning starts with a
|
|
442
|
+
three-to-five-bullet executive summary in plain language.
|
|
443
|
+
- Link each visual to the requirement, plan decision, contract, code/test path,
|
|
444
|
+
EAI service/template asset, or validation evidence it summarizes.
|
|
445
|
+
- Do not include tenant-private data, secrets, customer identifiers, or
|
|
446
|
+
screenshots containing private content.
|
|
447
|
+
|
|
448
|
+
### Dynamic-Only: Workflow DAG Writer
|
|
449
|
+
|
|
450
|
+
When `effectiveProfile=dynamic`, write `{FEATURE_DIR}/workflow-dag.md` before
|
|
451
|
+
task generation. It must define:
|
|
452
|
+
|
|
453
|
+
- independent shards and why they can run separately
|
|
454
|
+
- input artifacts each shard may read
|
|
455
|
+
- output artifacts each shard must produce
|
|
456
|
+
- reducer synthesis expectations
|
|
457
|
+
- verifier/refuter checks for contradictions or overreach
|
|
458
|
+
- budget limits, stop conditions, and confirmation gates
|
|
459
|
+
- resumable progress location outside the chat transcript
|
|
460
|
+
|
|
461
|
+
---
|
|
462
|
+
|
|
463
|
+
## Step 3: Review Agent Outputs
|
|
464
|
+
|
|
465
|
+
After all agents complete:
|
|
466
|
+
|
|
467
|
+
1. **Review plan.md** — Verify from Agent 1:
|
|
468
|
+
- All user stories have plan coverage (check Spec Traceability section)
|
|
469
|
+
- All functional requirements are addressed
|
|
470
|
+
- Implementation phases are specific enough for task generation
|
|
471
|
+
- File structure is consistent with existing codebase patterns
|
|
472
|
+
|
|
473
|
+
2. **Review data-model.md** — Verify from Agent 2:
|
|
474
|
+
- All spec entities are covered
|
|
475
|
+
- Relationships make sense
|
|
476
|
+
- Validation rules are complete
|
|
477
|
+
|
|
478
|
+
3. **Review contracts** — Verify from Agent 3:
|
|
479
|
+
- All implied API endpoints are defined
|
|
480
|
+
- Request/response schemas are realistic
|
|
481
|
+
- Error codes are appropriate
|
|
482
|
+
|
|
483
|
+
4. **Review quickstart.md** — Verify from Agent 4:
|
|
484
|
+
- Test scenarios cover key acceptance criteria
|
|
485
|
+
- Setup steps are realistic
|
|
486
|
+
|
|
487
|
+
5. **Fix any gaps** — Make targeted edits to any artifact with missing coverage
|
|
488
|
+
|
|
489
|
+
---
|
|
490
|
+
|
|
491
|
+
## Step 4: Spec Coverage Validation (GAP-01)
|
|
492
|
+
|
|
493
|
+
Dispatch a validator agent to cross-check plan against spec:
|
|
494
|
+
|
|
495
|
+
```
|
|
496
|
+
Task: subagent_type="general-purpose", model="haiku"
|
|
497
|
+
Prompt: "Validate plan coverage of specification for feature at {FEATURE_DIR}.
|
|
498
|
+
|
|
499
|
+
Read:
|
|
500
|
+
- {FEATURE_DIR}/spec.md — Source of truth for requirements
|
|
501
|
+
- {FEATURE_DIR}/plan.md — Implementation plan to validate
|
|
502
|
+
- {FEATURE_DIR}/data-model.md — Data model to validate
|
|
503
|
+
- {FEATURE_DIR}/contracts/ — API contracts to validate (read all .md files)
|
|
504
|
+
|
|
505
|
+
Check these coverage dimensions:
|
|
506
|
+
|
|
507
|
+
1. USER STORY COVERAGE: Every user story in spec.md has at least one plan phase
|
|
508
|
+
2. ACCEPTANCE CRITERIA MAPPING: Every AC maps to a plan component
|
|
509
|
+
3. FUNCTIONAL REQUIREMENT COVERAGE: Every FR-XXX is addressed in plan
|
|
510
|
+
4. DATA MODEL COMPLETENESS: All Key Entities from spec appear in data-model.md
|
|
511
|
+
5. API CONTRACT COMPLETENESS: All implied APIs from spec have contracts
|
|
512
|
+
|
|
513
|
+
For each dimension, report:
|
|
514
|
+
- COVERED items with references
|
|
515
|
+
- MISSING items (ERROR — must be fixed)
|
|
516
|
+
|
|
517
|
+
Return:
|
|
518
|
+
- Coverage percentage per dimension
|
|
519
|
+
- List of MISSING items
|
|
520
|
+
- Overall PASS/FAIL status"
|
|
521
|
+
```
|
|
522
|
+
|
|
523
|
+
If validator reports MISSING items:
|
|
524
|
+
|
|
525
|
+
- Add missing components to the appropriate artifact
|
|
526
|
+
- Re-validate (max 3 iterations)
|
|
527
|
+
- **Proceed only when ALL spec items are traced to plan components**
|
|
528
|
+
|
|
529
|
+
---
|
|
530
|
+
|
|
531
|
+
## Step 5: Multi-Perspective Plan Review (Optional)
|
|
532
|
+
|
|
533
|
+
After generating the initial plan, optionally run multi-perspective strategies
|
|
534
|
+
to stress-test architectural decisions. **Skip this step if the plan is
|
|
535
|
+
straightforward or time-constrained.**
|
|
536
|
+
|
|
537
|
+
### Strategy #2: Solution Architecture Diverger
|
|
538
|
+
|
|
539
|
+
For features with significant architectural decisions, spawn 5 agents each using
|
|
540
|
+
a different pattern:
|
|
541
|
+
|
|
542
|
+
```
|
|
543
|
+
Task: subagent_type="plan-architecture-diverger", model="sonnet"
|
|
544
|
+
Prompt: "Design architecture for [FEATURE] using Pattern [1-5].
|
|
545
|
+
Pattern 1: Microservices/modular 2: Monolithic/cohesive 3: Event-sourced
|
|
546
|
+
4: CQRS 5: Plugin-based
|
|
547
|
+
Spec: [FEATURE_DIR]/spec.md Plan context: [summary of current plan]"
|
|
548
|
+
```
|
|
549
|
+
|
|
550
|
+
Run all 5 in parallel, then judge:
|
|
551
|
+
|
|
552
|
+
```
|
|
553
|
+
Task: subagent_type="multi-perspective-judge", model="opus"
|
|
554
|
+
Prompt: "Judge verdict type: architecture selection.
|
|
555
|
+
Select the best architecture for this feature considering codebase fit, complexity, and testability.
|
|
556
|
+
[paste all 5 agent outputs]"
|
|
557
|
+
```
|
|
558
|
+
|
|
559
|
+
### Strategy #5: API Design Comparator
|
|
560
|
+
|
|
561
|
+
For features with API surfaces, compare paradigms:
|
|
562
|
+
|
|
563
|
+
```
|
|
564
|
+
Task: subagent_type="plan-api-comparator", model="sonnet"
|
|
565
|
+
Prompt: "Design API for [FEATURE] using Paradigm [1-4].
|
|
566
|
+
Paradigm 1: REST 2: GraphQL 3: RPC 4: Event-based
|
|
567
|
+
Requirements: [API requirements from spec]"
|
|
568
|
+
```
|
|
569
|
+
|
|
570
|
+
Run 3-4 in parallel, then judge:
|
|
571
|
+
|
|
572
|
+
```
|
|
573
|
+
Task: subagent_type="multi-perspective-judge", model="opus"
|
|
574
|
+
Prompt: "Judge verdict type: API paradigm selection.
|
|
575
|
+
[paste all agent outputs]"
|
|
576
|
+
```
|
|
577
|
+
|
|
578
|
+
### Strategy #7: Refactor vs Rewrite Advisor
|
|
579
|
+
|
|
580
|
+
For features that modify existing code significantly:
|
|
581
|
+
|
|
582
|
+
```
|
|
583
|
+
Task: subagent_type="plan-refactor-rewrite-advisor", model="sonnet"
|
|
584
|
+
Prompt: "Perspective [1/2] for changing [CODE AREA].
|
|
585
|
+
Perspective 1: Plan minimal incremental refactor
|
|
586
|
+
Perspective 2: Plan clean rewrite
|
|
587
|
+
Current code: [file paths and summary]"
|
|
588
|
+
```
|
|
589
|
+
|
|
590
|
+
Run both in parallel, then judge:
|
|
591
|
+
|
|
592
|
+
```
|
|
593
|
+
Task: subagent_type="multi-perspective-judge", model="opus"
|
|
594
|
+
Prompt: "Judge verdict type: refactor vs rewrite decision.
|
|
595
|
+
[paste both agent outputs]"
|
|
596
|
+
```
|
|
597
|
+
|
|
598
|
+
### Strategy #12: Migration Path Finder
|
|
599
|
+
|
|
600
|
+
When the feature requires migrating existing code or data:
|
|
601
|
+
|
|
602
|
+
```
|
|
603
|
+
Task: subagent_type="plan-migration-path-finder", model="sonnet"
|
|
604
|
+
Prompt: "Design migration for [CHANGE] using Strategy [1-4].
|
|
605
|
+
Strategy 1: Big bang 2: Strangler fig 3: Feature-flagged 4: Adapter/facade
|
|
606
|
+
Migration scope: [what needs changing]"
|
|
607
|
+
```
|
|
608
|
+
|
|
609
|
+
Run all 4 in parallel, then judge:
|
|
610
|
+
|
|
611
|
+
```
|
|
612
|
+
Task: subagent_type="multi-perspective-judge", model="opus"
|
|
613
|
+
Prompt: "Judge verdict type: migration strategy selection.
|
|
614
|
+
[paste all 4 agent outputs]"
|
|
615
|
+
```
|
|
616
|
+
|
|
617
|
+
### Strategy #16: Data Model Stress Tester
|
|
618
|
+
|
|
619
|
+
For features with data models, stress-test before finalizing:
|
|
620
|
+
|
|
621
|
+
```
|
|
622
|
+
Task: subagent_type="plan-data-model-stress-tester", model="haiku"
|
|
623
|
+
Prompt: "Stress-test data model from Perspective [1-4].
|
|
624
|
+
Perspective 1: 10x scale 2: Concurrent access 3: Schema evolution 4: Edge-case shapes
|
|
625
|
+
Data model: [entities and relationships from plan]"
|
|
626
|
+
```
|
|
627
|
+
|
|
628
|
+
Run all 4 in parallel, then judge:
|
|
629
|
+
|
|
630
|
+
```
|
|
631
|
+
Task: subagent_type="multi-perspective-judge", model="opus"
|
|
632
|
+
Prompt: "Judge verdict type: data model robustness assessment.
|
|
633
|
+
[paste all 4 agent outputs]"
|
|
634
|
+
```
|
|
635
|
+
|
|
636
|
+
Incorporate judge recommendations into the plan before proceeding to validation.
|
|
637
|
+
|
|
638
|
+
---
|
|
639
|
+
|
|
640
|
+
## Step 6: Update Agent Context
|
|
641
|
+
|
|
642
|
+
Run the agent context update script:
|
|
643
|
+
|
|
644
|
+
```bash
|
|
645
|
+
.specify/scripts/bash/update-agent-context.sh claude
|
|
646
|
+
```
|
|
647
|
+
|
|
648
|
+
This updates AI agent context files with new technology from this plan.
|
|
649
|
+
|
|
650
|
+
---
|
|
651
|
+
|
|
652
|
+
## Step 7: Engineering Review Gate (Up to 5 cycles)
|
|
653
|
+
|
|
654
|
+
Before proceeding to the next stage, run an iterative engineering review to
|
|
655
|
+
catch misalignment early.
|
|
656
|
+
|
|
657
|
+
### Review Cycle (repeat up to 5 times)
|
|
658
|
+
|
|
659
|
+
**You MUST dispatch 3 review agents in parallel** using the Task tool:
|
|
660
|
+
|
|
661
|
+
**Agent 1**: engineer-review (sonnet) — cross-check spec↔plan alignment
|
|
662
|
+
|
|
663
|
+
```
|
|
664
|
+
Task: subagent_type="engineer-review", model="sonnet"
|
|
665
|
+
Prompt: "Review alignment between spec.md and plan.md in {FEATURE_DIR}.
|
|
666
|
+
Find every gap, inconsistency, and misalignment between the specification
|
|
667
|
+
and the implementation plan. Report Red/Yellow/Gray findings."
|
|
668
|
+
```
|
|
669
|
+
|
|
670
|
+
**Agent 2**: codebase-analyzer (sonnet) — verify file paths and code patterns
|
|
671
|
+
|
|
672
|
+
```
|
|
673
|
+
Task: subagent_type="codebase-analyzer", model="sonnet"
|
|
674
|
+
Prompt: "Verify that the plan at {FEATURE_DIR}/plan.md references correct
|
|
675
|
+
file paths and follows existing codebase patterns from {FEATURE_DIR}/research.md.
|
|
676
|
+
Report Red/Yellow/Gray findings."
|
|
677
|
+
```
|
|
678
|
+
|
|
679
|
+
**Agent 3**: validation-correctness (sonnet) — verify acceptance criteria
|
|
680
|
+
coverage
|
|
681
|
+
|
|
682
|
+
```
|
|
683
|
+
Task: subagent_type="validation-correctness", model="sonnet"
|
|
684
|
+
Prompt: "Verify that every acceptance criterion in {FEATURE_DIR}/spec.md
|
|
685
|
+
is addressed by the plan at {FEATURE_DIR}/plan.md.
|
|
686
|
+
Report Red/Yellow/Gray findings with coverage gaps."
|
|
687
|
+
```
|
|
688
|
+
|
|
689
|
+
**After agents return:**
|
|
690
|
+
|
|
691
|
+
1. Classify findings: Red (blocking) / Yellow (should fix) / Gray
|
|
692
|
+
(informational)
|
|
693
|
+
2. If NO Red or Yellow findings → PASS → proceed to auto-chain
|
|
694
|
+
3. If Red or Yellow findings exist: a. Fix findings directly in plan artifacts
|
|
695
|
+
(Red first, then Yellow) b. Increment cycle counter c. If cycle <= 5 → re-run
|
|
696
|
+
review agents d. If cycle > 5 → log remaining findings, proceed with warnings
|
|
697
|
+
|
|
698
|
+
---
|
|
699
|
+
|
|
700
|
+
## Step 8: Report and Continue
|
|
701
|
+
|
|
702
|
+
Before reporting completion, update the stakeholder-facing architecture pack:
|
|
703
|
+
|
|
704
|
+
1. Update `{FEATURE_DIR}/working-backwards-prfaq.md`.
|
|
705
|
+
- Add the current architecture story to Internal FAQ CTO / Architecture.
|
|
706
|
+
- Explain how the solution uses EAI Platform first, the EAI App Template
|
|
707
|
+
when app delivery applies, Azure as the preferred supporting substrate,
|
|
708
|
+
and any approved exception.
|
|
709
|
+
- Summarize auth, authorization, tenant boundary, data model, integration,
|
|
710
|
+
contract, and deployment assumptions in plain language.
|
|
711
|
+
2. Write `{FEATURE_DIR}/prfaq-history/03-plan.md` as an immutable snapshot.
|
|
712
|
+
3. Create or update `{FEATURE_DIR}/cto-architecture-summary.md` from
|
|
713
|
+
`.specify/templates/cto-architecture-summary-template.md` using
|
|
714
|
+
`plan.md`, `contract-pack.md`, `data-model.md`, C4 diagrams,
|
|
715
|
+
`service-fit-matrix.md`, and `eai-preflight.md` when present.
|
|
716
|
+
4. Update `{FEATURE_DIR}/stakeholder-review-index.md` and explicitly ask
|
|
717
|
+
CTO / Architecture to approve, revise, or defer the architecture,
|
|
718
|
+
EAI/Azure fit, auth/tenant model, data model, and integration contracts.
|
|
719
|
+
5. Preserve the existing loop contract: if planning changed eval commands,
|
|
720
|
+
stop conditions, or escalation rules, update `loop-contract.json` and keep
|
|
721
|
+
those changes visible in the stakeholder index rather than replacing loop
|
|
722
|
+
audit behavior.
|
|
723
|
+
|
|
724
|
+
After all artifacts are created and review gate passes:
|
|
725
|
+
|
|
726
|
+
```
|
|
727
|
+
✓ Plan complete: {FEATURE_DIR}/plan.md
|
|
728
|
+
|
|
729
|
+
Artifacts created:
|
|
730
|
+
- plan.md: Implementation phases and architecture
|
|
731
|
+
- loop-contract.json: Bounded evaluation commands and stop rules
|
|
732
|
+
- data-model.md: Entity definitions
|
|
733
|
+
- contracts/: API specifications
|
|
734
|
+
- quickstart.md: Testing guide
|
|
735
|
+
- working-backwards-prfaq.md: Updated product release PR/FAQ
|
|
736
|
+
- prfaq-history/03-plan.md: Architecture-stage PR/FAQ snapshot
|
|
737
|
+
- cto-architecture-summary.md: CTO/EAI Platform architecture review summary
|
|
738
|
+
- stakeholder-review-index.md: Review status and approval asks
|
|
739
|
+
- workflow-dag.md: Dynamic shard/reducer plan (only when effectiveProfile=dynamic)
|
|
740
|
+
|
|
741
|
+
Engineering Review: PASSED (cycle [N] of 5)
|
|
742
|
+
```
|
|
743
|
+
|
|
744
|
+
|
|
745
|
+
---
|
|
746
|
+
|
|
747
|
+
## EnterpriseAI Deployment Convention and EAI CLI Pinning Requirements
|
|
748
|
+
|
|
749
|
+
> When `gofer.workflowProfile=enterpriseai`, the following conventions apply.
|
|
750
|
+
> standard profile outputs remain unchanged.
|
|
751
|
+
|
|
752
|
+
When the workflow profile is `enterpriseai`, `plan.md` MUST capture:
|
|
753
|
+
|
|
754
|
+
1. **EAI CLI version pin** — record the installed `eai` version as a
|
|
755
|
+
`major.minor` pin (for example `2.0`). The plan stage resolves the local
|
|
756
|
+
version via `eai --version`, strips the patch component, and writes the
|
|
757
|
+
pin to the `EnterpriseAI Profile Metadata` block of `plan-template.md` so
|
|
758
|
+
every downstream task is reproducible. Plans MUST apply
|
|
759
|
+
`pin guidance to `major.minor`` and never to a specific patch release.
|
|
760
|
+
If `{FEATURE_DIR}/eai-preflight.md` exists, use its CLI version/install
|
|
761
|
+
evidence as the primary source and re-run `eai --version` only to confirm
|
|
762
|
+
local drift.
|
|
763
|
+
2. **EAI app-readiness handoff** — for EAI app delivery, reference
|
|
764
|
+
`{FEATURE_DIR}/eai-preflight.md` before making platform or template
|
|
765
|
+
assumptions. The plan MUST preserve:
|
|
766
|
+
- whether the user is logged in or still needs an EAI Platform account
|
|
767
|
+
- the selected tenant role/readiness and whether app enrollment is allowed
|
|
768
|
+
- whether the repo already has EAI template markers or still needs
|
|
769
|
+
`eai init <app-name>`
|
|
770
|
+
- whether app creation/selection is confirmed, deferred, or blocked
|
|
771
|
+
- block-catalog readiness and package-profile compatibility evidence
|
|
772
|
+
- the last completed gate, blocked gate, and next recovery command from the
|
|
773
|
+
EAI preflight artifact
|
|
774
|
+
If EAI readiness is blocked, plan only the smallest unblock task group and
|
|
775
|
+
do not invent object types, tenant IDs, app keys, or platform capabilities.
|
|
776
|
+
3. **EAI app lifecycle ordering handoff** — keep the platform lifecycle
|
|
777
|
+
explicit inside the plan. Resource provisioning, object-type publish,
|
|
778
|
+
schema/storage health, workflow readiness, and preview readiness must remain
|
|
779
|
+
distinct gates with the recovery path carried forward from
|
|
780
|
+
`{FEATURE_DIR}/eai-preflight.md`.
|
|
781
|
+
4. **EAI Platform/Azure app stack decision** — for app delivery, the plan MUST
|
|
782
|
+
use EAI Platform, including the EAI app template, as the primary app
|
|
783
|
+
substrate and Azure as the preferred cloud/supporting substrate. The plan MUST
|
|
784
|
+
NOT select Firebase, Supabase, Vercel as the primary runtime, AWS, GCP,
|
|
785
|
+
bespoke backends, unmanaged databases, or unrelated SaaS platforms as the
|
|
786
|
+
default app stack. Any non-EAI technology must be recorded as an integration
|
|
787
|
+
target, migration reference, or approved exception with rationale, owner,
|
|
788
|
+
expiry, and validation evidence.
|
|
789
|
+
Capabilities unavailable in EAI Platform/Azure must be recorded in
|
|
790
|
+
`{FEATURE_DIR}/service-fit-matrix.md` as platform work, operator-required, or
|
|
791
|
+
upgrade-required rather than substituted silently.
|
|
792
|
+
5. **Deployment convention** — reference the configured deployment
|
|
793
|
+
documentation for the target project and note which environment
|
|
794
|
+
(dev/staging/prod) each deliverable targets.
|
|
795
|
+
6. **Integration map handoff** — restate the App → EAI Services →
|
|
796
|
+
Deployment Target chain from `spec.md` and bind each link to a task
|
|
797
|
+
identifier in `tasks.md`.
|
|
798
|
+
7. **Contract pack handoff** — reference `{FEATURE_DIR}/contract-pack.md` and
|
|
799
|
+
bind each actor, object type, workflow/journey, permission boundary,
|
|
800
|
+
API/event, runtime assumption, and acceptance test to plan sections and
|
|
801
|
+
downstream tasks.
|
|
802
|
+
8. **AI-augmented journey handoff** — for app delivery, reference
|
|
803
|
+
`{FEATURE_DIR}/journeys/base-journey.md` and plan the four-step-or-fewer
|
|
804
|
+
user-facing process as the default scope spine. Each step must include the
|
|
805
|
+
business goal, generative AI assistance mode, screen/user/data context used,
|
|
806
|
+
completion signal, user controls, audit trail, and fallback/escalation path.
|
|
807
|
+
If the plan expands beyond four user-facing steps, document why those steps
|
|
808
|
+
cannot be combined, automated, or handled by the AI assistant.
|
|
809
|
+
9. **UI-first approval gate handoff** — for app delivery, reference
|
|
810
|
+
`{FEATURE_DIR}/ui-preview-brief.md` and require the planning stage to lock
|
|
811
|
+
the preview loop before plan/tasks are considered complete. The plan MUST:
|
|
812
|
+
- keep the first preview constrained to EAI App Template blocks unless an
|
|
813
|
+
approved extension is recorded
|
|
814
|
+
- cite `eai blocks describe <id>` evidence for every selected block ID,
|
|
815
|
+
plus the ResourceAPI/Object Type fields from `eai resources schema` that
|
|
816
|
+
feed each block
|
|
817
|
+
- record override points for theme tokens, `presentationConfig`, copy,
|
|
818
|
+
data/action bindings, and client extension blocks
|
|
819
|
+
- capture whether client branding/logos are in scope
|
|
820
|
+
- require screenshot, local render proof, or Playwright-style self-review
|
|
821
|
+
evidence before stakeholder presentation
|
|
822
|
+
- update `{FEATURE_DIR}/ui-review-log.md` for each iteration and require
|
|
823
|
+
explicit stakeholder approval in `{FEATURE_DIR}/ui-approval.md`
|
|
824
|
+
10. **EnterpriseAI service-fit handoff** — for app delivery, the plan MUST
|
|
825
|
+
produce or update `{FEATURE_DIR}/service-fit-matrix.md` after UI approval and
|
|
826
|
+
before tasks are treated as complete. The matrix must distinguish:
|
|
827
|
+
- accessible now
|
|
828
|
+
- purchasable but unavailable now
|
|
829
|
+
- unavailable without new platform work
|
|
830
|
+
The plan must source this evidence from `eai --describe`, `eai whoami`,
|
|
831
|
+
`eai tenant select`, `eai resources schema --format json`,
|
|
832
|
+
`eai verify calls --format json`, `eai workflow readiness [workflow-key]
|
|
833
|
+
--format json`, `eai workflow status <workflow-key>`, `eai workflow request
|
|
834
|
+
<workflow-key>`, `eai provision entra --rotate-secret`, or documented
|
|
835
|
+
equivalent public platform evidence.
|
|
836
|
+
11. **Reuse-before-create decision log** — reference `{FEATURE_DIR}/reuse-scan.md`
|
|
837
|
+
for every new or extended EnterpriseAI object type, API/event, workflow, or
|
|
838
|
+
module.
|
|
839
|
+
12. **Audit history seed** — create or update `{FEATURE_DIR}/audit-history.md`
|
|
840
|
+
with stable finding IDs, decision exceptions, owner, expiry, and review
|
|
841
|
+
cadence so validation can track recurring issues.
|
|
842
|
+
13. **Public/private knowledge split** — identify which implementation facts
|
|
843
|
+
are safe for public docs, Gofer guidance, EAI CLI help, or EAI App Template
|
|
844
|
+
comments, and which facts are restricted-source. Plans must express blocked
|
|
845
|
+
states as public-safe actions (`operator_required`, `upgrade_required`, or
|
|
846
|
+
documented support URL) rather than exposing private service topology.
|
|
847
|
+
|
|
848
|
+
### EnterpriseAI Flow and Journey Separation
|
|
849
|
+
|
|
850
|
+
Plan both:
|
|
851
|
+
|
|
852
|
+
- **External user journeys**: the business/user-facing path, decision points,
|
|
853
|
+
adoption impact, and measurable value.
|
|
854
|
+
- **AI-augmented app process**: for application delivery, the four-step-or-fewer
|
|
855
|
+
journey with AI assistance, contextual prefill, conversational support,
|
|
856
|
+
completion checks, and human controls at each step.
|
|
857
|
+
- **App-delivery preview and approval loop**: for application delivery, the
|
|
858
|
+
local preview creation, self-review, stakeholder feedback, branding updates,
|
|
859
|
+
and approval-gate behavior that must occur before plan/tasks are finalized.
|
|
860
|
+
- **EnterpriseAI service-fit gate**: for application delivery, the post-approval
|
|
861
|
+
capability-selection discussion that binds chosen platform services to the
|
|
862
|
+
approved UI and distinguishes accessible now vs purchasable vs unavailable.
|
|
863
|
+
- **Internal orchestration flows**: platform services, ResourceAPI calls,
|
|
864
|
+
events, data movement, tenant boundaries, deployment steps, and observability.
|
|
865
|
+
|
|
866
|
+
### Competitive / market analysis reference
|
|
867
|
+
|
|
868
|
+
When `includeCompetitiveAnalysis=true`, `plan.md` MUST link to
|
|
869
|
+
`market-analysis.md`. When disabled, the competitive-analysis section is omitted
|
|
870
|
+
and standard profile outputs remain unchanged.
|
|
871
|
+
|
|
872
|
+
---
|
|
873
|
+
|
|
874
|
+
## Observability Logging
|
|
875
|
+
|
|
876
|
+
At stage completion, log metrics:
|
|
877
|
+
|
|
878
|
+
```bash
|
|
879
|
+
.specify/scripts/bash/log-stage.sh 3_plan --complete --tokens [N] --compactions [N]
|
|
880
|
+
```
|
|
881
|
+
|
|
882
|
+
Logs to: `.specify/logs/pipeline.jsonl`
|
|
883
|
+
|
|
884
|
+
---
|
|
885
|
+
|
|
886
|
+
|
|
887
|
+
|
|
888
|
+
## Pipeline Continuation
|
|
889
|
+
|
|
890
|
+
This completes the 3_gofer_plan stage. To continue the Gofer pipeline:
|
|
891
|
+
|
|
892
|
+
**Next Command:** `#4_gofer_tasks`
|
|
893
|
+
|
|
894
|
+
The next stage will read the artifacts from this stage and continue the workflow automatically.
|
|
895
|
+
|
|
896
|
+
**Note:** Copilot Chat supports context preservation. Your conversation history will be maintained as you progress through pipeline stages.
|
|
897
|
+
|
|
898
|
+
## Key Rules
|
|
899
|
+
|
|
900
|
+
- Use absolute paths for all file references
|
|
901
|
+
- ERROR if constitution gates fail without justification
|
|
902
|
+
- All NEEDS CLARIFICATION must be resolved before completing
|
|
903
|
+
- Plan must be specific enough for task generation
|
|
904
|
+
- Log stage completion for observability tracking
|