agentic-orchestrator 0.1.28 โ 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +46 -1
- package/.cortexrc +28 -0
- package/.github/agents/copilot-instructions.md +29 -0
- package/.github/copilot-instructions.md +93 -0
- package/.vscode/settings.json +13 -0
- package/.vscode/tms.code-snippets +223 -0
- package/AGENTS.md +72 -1
- package/Agentic-Orchestrator.iml +12 -11
- package/CLAUDE.md +72 -1
- package/CONSTITUTION.md +504 -0
- package/FUTURE-ENHANCEMENTS.md +85 -0
- package/NEXT-TASKS.md +25 -0
- package/PROMPTS.md +161 -0
- package/README.md +126 -29
- package/agentic/orchestrator/agents.yaml +4 -3
- package/agentic/orchestrator/defaults/policy.defaults.yaml +39 -3
- package/agentic/orchestrator/gates.yaml +15 -3
- package/agentic/orchestrator/policy.yaml +47 -3
- package/agentic/orchestrator/prompts/builder.system.md +69 -20
- package/agentic/orchestrator/prompts/planner-intake.system.md +149 -0
- package/agentic/orchestrator/prompts/planner.system.md +113 -40
- package/agentic/orchestrator/prompts/qa.system.md +73 -18
- package/agentic/orchestrator/prompts/reconciler.system.md +119 -0
- package/agentic/orchestrator/schemas/agents.schema.json +89 -1
- package/agentic/orchestrator/schemas/execution-control.schema.json +242 -0
- package/agentic/orchestrator/schemas/index.schema.json +234 -0
- package/agentic/orchestrator/schemas/intake.review.schema.json +82 -0
- package/agentic/orchestrator/schemas/organizer-ordering-artifact.schema.json +75 -0
- package/agentic/orchestrator/schemas/plan.schema.json +44 -0
- package/agentic/orchestrator/schemas/policy.schema.json +238 -9
- package/agentic/orchestrator/schemas/policy.user.schema.json +129 -1
- package/agentic/orchestrator/schemas/spec.manifest.bootstrap.schema.json +101 -0
- package/agentic/orchestrator/schemas/spec.manifest.verified.schema.json +80 -0
- package/agentic/orchestrator/schemas/state.schema.json +298 -3
- package/agentic/orchestrator/tools/catalog.json +145 -15
- package/agentic/orchestrator/tools/schemas/input/doctor.run.input.schema.json +18 -0
- package/agentic/orchestrator/tools/schemas/input/evidence.latest.input.schema.json +4 -0
- package/agentic/orchestrator/tools/schemas/input/evidence.verify_chain.input.schema.json +13 -0
- package/agentic/orchestrator/tools/schemas/input/feature.intake_submit.input.schema.json +11 -0
- package/agentic/orchestrator/tools/schemas/input/feature.question_answer.input.schema.json +15 -0
- package/agentic/orchestrator/tools/schemas/input/feature.question_create.input.schema.json +21 -0
- package/agentic/orchestrator/tools/schemas/input/feature.question_list.input.schema.json +13 -0
- package/agentic/orchestrator/tools/schemas/input/feature.ready_to_merge.input.schema.json +5 -0
- package/agentic/orchestrator/tools/schemas/input/feature.send_message.input.schema.json +1 -1
- package/agentic/orchestrator/tools/schemas/input/replay.timeline_get.input.schema.json +32 -0
- package/agentic/orchestrator/tools/schemas/input/repo.conflict_abort.input.schema.json +16 -0
- package/agentic/orchestrator/tools/schemas/input/repo.conflict_files.input.schema.json +16 -0
- package/agentic/orchestrator/tools/schemas/input/repo.reconcile_mainline.input.schema.json +37 -0
- package/agentic/orchestrator/tools/schemas/input/repo.resolve_conflict.input.schema.json +40 -0
- package/agentic/orchestrator/tools/schemas/input/runtime.execution_request_list.input.schema.json +7 -0
- package/agentic/orchestrator/tools/schemas/input/runtime.execution_request_submit.input.schema.json +25 -0
- package/agentic/orchestrator/tools/schemas/output/doctor.run.output.schema.json +34 -0
- package/agentic/orchestrator/tools/schemas/output/evidence.verify_chain.output.schema.json +23 -0
- package/agentic/orchestrator/tools/schemas/output/feature.get_context.output.schema.json +62 -2
- package/agentic/orchestrator/tools/schemas/output/feature.intake_submit.output.schema.json +24 -0
- package/agentic/orchestrator/tools/schemas/output/feature.question_answer.output.schema.json +21 -0
- package/agentic/orchestrator/tools/schemas/output/feature.question_create.output.schema.json +12 -0
- package/agentic/orchestrator/tools/schemas/output/feature.question_list.output.schema.json +14 -0
- package/agentic/orchestrator/tools/schemas/output/feature.ready_to_merge.output.schema.json +31 -0
- package/agentic/orchestrator/tools/schemas/output/feature.send_message.output.schema.json +8 -18
- package/agentic/orchestrator/tools/schemas/output/replay.timeline_get.output.schema.json +64 -0
- package/agentic/orchestrator/tools/schemas/output/repo.conflict_abort.output.schema.json +16 -0
- package/agentic/orchestrator/tools/schemas/output/repo.conflict_files.output.schema.json +22 -0
- package/agentic/orchestrator/tools/schemas/output/repo.reconcile_mainline.output.schema.json +61 -0
- package/agentic/orchestrator/tools/schemas/output/repo.resolve_conflict.output.schema.json +19 -0
- package/agentic/orchestrator/tools/schemas/output/report.dashboard.output.schema.json +26 -0
- package/agentic/orchestrator/tools/schemas/output/runtime.execution_request_list.output.schema.json +17 -0
- package/agentic/orchestrator/tools/schemas/output/runtime.execution_request_submit.output.schema.json +24 -0
- package/agentic/orchestrator/tools.md +13 -0
- package/apps/control-plane/scripts/validate-mcp-contracts.ts +1 -1
- package/apps/control-plane/src/application/kernel-tool-wiring.ts +140 -2
- package/apps/control-plane/src/application/services/activity-monitor-service.ts +44 -1
- package/apps/control-plane/src/application/services/bootstrap-manifest-generator-service.ts +251 -0
- package/apps/control-plane/src/application/services/checkpoint-service.ts +87 -27
- package/apps/control-plane/src/application/services/collision-override-service.ts +906 -0
- package/apps/control-plane/src/application/services/collision-queue-service.ts +129 -38
- package/apps/control-plane/src/application/services/cost-tracking-service.ts +94 -0
- package/apps/control-plane/src/application/services/execution-control-service.ts +599 -0
- package/apps/control-plane/src/application/services/feature-deletion-service.ts +37 -1
- package/apps/control-plane/src/application/services/feature-lifecycle-service.ts +182 -4
- package/apps/control-plane/src/application/services/feature-send-message-service.ts +17 -8
- package/apps/control-plane/src/application/services/feature-state-service.ts +191 -6
- package/apps/control-plane/src/application/services/gate-service.ts +121 -2
- package/apps/control-plane/src/application/services/git-reconciliation-service.ts +1591 -0
- package/apps/control-plane/src/application/services/intake-service.ts +1468 -0
- package/apps/control-plane/src/application/services/merge-service.ts +308 -17
- package/apps/control-plane/src/application/services/notifier-service.ts +3 -1
- package/apps/control-plane/src/application/services/performance-analytics-service.ts +75 -0
- package/apps/control-plane/src/application/services/plan-service.ts +336 -20
- package/apps/control-plane/src/application/services/question-service.ts +693 -0
- package/apps/control-plane/src/application/services/reactions-service.ts +73 -17
- package/apps/control-plane/src/application/services/replay-timeline-service.ts +295 -0
- package/apps/control-plane/src/application/services/reporting-service.ts +194 -10
- package/apps/control-plane/src/application/services/run-lease-service.ts +121 -5
- package/apps/control-plane/src/application/services/worktree-watchdog-service.ts +95 -8
- package/apps/control-plane/src/application/tools/tool-metadata.ts +7 -0
- package/apps/control-plane/src/application/usage-types.ts +138 -0
- package/apps/control-plane/src/cli/add-command-handler.ts +162 -0
- package/apps/control-plane/src/cli/answer-command-handler.ts +113 -0
- package/apps/control-plane/src/cli/attach-command-handler.ts +12 -3
- package/apps/control-plane/src/cli/cli-argument-parser.ts +133 -11
- package/apps/control-plane/src/cli/collision-command-handler.ts +113 -0
- package/apps/control-plane/src/cli/command-catalog.ts +479 -0
- package/apps/control-plane/src/cli/complete-command-handler.ts +23 -0
- package/apps/control-plane/src/cli/completion-command-handler.ts +25 -0
- package/apps/control-plane/src/cli/completion-resolver.ts +319 -0
- package/apps/control-plane/src/cli/completion-shell-renderer.ts +58 -0
- package/apps/control-plane/src/cli/dashboard-command-handler.ts +111 -1
- package/apps/control-plane/src/cli/dashboard-runtime-runner.ts +1036 -0
- package/apps/control-plane/src/cli/dashboard-runtime.ts +31 -0
- package/apps/control-plane/src/cli/help-command-handler.ts +17 -185
- package/apps/control-plane/src/cli/init-command-handler.ts +51 -6
- package/apps/control-plane/src/cli/merge-command-handler.ts +200 -0
- package/apps/control-plane/src/cli/questions-command-handler.ts +70 -0
- package/apps/control-plane/src/cli/replay-command-handler.ts +98 -0
- package/apps/control-plane/src/cli/resume-command-handler.ts +231 -16
- package/apps/control-plane/src/cli/retry-command-handler.ts +229 -17
- package/apps/control-plane/src/cli/retry-resume-decision.ts +75 -0
- package/apps/control-plane/src/cli/rollback-command-handler.ts +4 -2
- package/apps/control-plane/src/cli/run-command-handler.ts +35 -1
- package/apps/control-plane/src/cli/spec-ingestion-service.ts +45 -55
- package/apps/control-plane/src/cli/spec-preparation.ts +114 -0
- package/apps/control-plane/src/cli/spec-utils.ts +90 -11
- package/apps/control-plane/src/cli/status-command-handler.ts +122 -0
- package/apps/control-plane/src/cli/types.ts +41 -3
- package/apps/control-plane/src/core/collisions.ts +150 -31
- package/apps/control-plane/src/core/constants.ts +18 -1
- package/apps/control-plane/src/core/error-codes.ts +39 -0
- package/apps/control-plane/src/core/execution-control.ts +56 -0
- package/apps/control-plane/src/core/feature-resume-phase.ts +118 -0
- package/apps/control-plane/src/core/gate-freshness.ts +359 -0
- package/apps/control-plane/src/core/gate-log-extractor.ts +97 -0
- package/apps/control-plane/src/core/gates.ts +90 -1
- package/apps/control-plane/src/core/intake-artifacts.ts +295 -0
- package/apps/control-plane/src/core/kernel-types.ts +11 -0
- package/apps/control-plane/src/core/kernel.ts +604 -16
- package/apps/control-plane/src/core/mainline-conflict.ts +22 -0
- package/apps/control-plane/src/core/merge-repair.ts +149 -0
- package/apps/control-plane/src/core/path-layout.ts +46 -2
- package/apps/control-plane/src/core/path-rules.ts +11 -3
- package/apps/control-plane/src/core/plan-submit-recovery.ts +130 -0
- package/apps/control-plane/src/core/questions.ts +49 -0
- package/apps/control-plane/src/core/runtime-sessions.ts +4 -0
- package/apps/control-plane/src/core/schemas.ts +40 -1
- package/apps/control-plane/src/core/tool-caller.ts +25 -1
- package/apps/control-plane/src/core/utils/index-normalizer.ts +25 -4
- package/apps/control-plane/src/core/worktree-diff.ts +66 -0
- package/apps/control-plane/src/index.ts +29 -1
- package/apps/control-plane/src/interfaces/cli/bootstrap.ts +300 -6
- package/apps/control-plane/src/mcp/kernel-tool-executor.ts +17 -0
- package/apps/control-plane/src/mcp/tool-runtime.ts +63 -4
- package/apps/control-plane/src/providers/api-worker-provider.ts +62 -15
- package/apps/control-plane/src/providers/cli-worker-provider.ts +1037 -61
- package/apps/control-plane/src/providers/output-parsers/generic-output-parser.ts +99 -1
- package/apps/control-plane/src/providers/output-parsers/types.ts +2 -0
- package/apps/control-plane/src/providers/provider-defaults.ts +116 -7
- package/apps/control-plane/src/providers/providers.ts +225 -21
- package/apps/control-plane/src/providers/worker-provider-factory.ts +26 -2
- package/apps/control-plane/src/supervisor/artifact-stager.ts +52 -0
- package/apps/control-plane/src/supervisor/build-wave-executor.ts +477 -166
- package/apps/control-plane/src/supervisor/execution-enrollment-service.ts +408 -0
- package/apps/control-plane/src/supervisor/organizer-enrollment-scheduler.ts +117 -0
- package/apps/control-plane/src/supervisor/organizer-sidecar-service.ts +394 -0
- package/apps/control-plane/src/supervisor/plan-conformance-scorer.ts +2 -5
- package/apps/control-plane/src/supervisor/planner-phase.ts +85 -0
- package/apps/control-plane/src/supervisor/planning-wave-executor.ts +993 -64
- package/apps/control-plane/src/supervisor/prompt-bundle-loader.ts +20 -1
- package/apps/control-plane/src/supervisor/qa-wave-executor.ts +384 -177
- package/apps/control-plane/src/supervisor/run-coordinator.ts +723 -20
- package/apps/control-plane/src/supervisor/runtime.ts +485 -9
- package/apps/control-plane/src/supervisor/session-orchestrator.ts +220 -1
- package/apps/control-plane/src/supervisor/types.ts +152 -1
- package/apps/control-plane/src/supervisor/worker-decision-loop.ts +1030 -92
- package/apps/control-plane/test/activity-monitor.spec.ts +76 -0
- package/apps/control-plane/test/add-command-handler.spec.ts +189 -0
- package/apps/control-plane/test/application/services/feature-state-service.spec.ts +208 -0
- package/apps/control-plane/test/artifact-stager.spec.ts +93 -0
- package/apps/control-plane/test/batch-operations.spec.ts +58 -0
- package/apps/control-plane/test/bootstrap-edge-cases.spec.ts +50 -2
- package/apps/control-plane/test/bootstrap-manifest-generator-service.spec.ts +99 -0
- package/apps/control-plane/test/bootstrap.spec.ts +177 -4
- package/apps/control-plane/test/checkpoint-service.spec.ts +977 -29
- package/apps/control-plane/test/cli-argument-parser.spec.ts +119 -0
- package/apps/control-plane/test/cli-helpers.spec.ts +1202 -12
- package/apps/control-plane/test/cli.unit.spec.ts +797 -16
- package/apps/control-plane/test/collision-command-handler.spec.ts +182 -0
- package/apps/control-plane/test/collision-override-service.spec.ts +878 -0
- package/apps/control-plane/test/collision-queue.spec.ts +430 -2
- package/apps/control-plane/test/collisions.spec.ts +209 -1
- package/apps/control-plane/test/core-utils.spec.ts +61 -0
- package/apps/control-plane/test/cost-tracking.spec.ts +224 -0
- package/apps/control-plane/test/dashboard-api.integration.spec.ts +185 -5
- package/apps/control-plane/test/dashboard-client.spec.ts +948 -0
- package/apps/control-plane/test/dashboard-command.spec.ts +138 -6
- package/apps/control-plane/test/dashboard-runtime-runner.spec.ts +1550 -0
- package/apps/control-plane/test/dashboard-runtime.spec.ts +138 -0
- package/apps/control-plane/test/dashboard-ui-utils.spec.ts +56 -12
- package/apps/control-plane/test/dependency-scheduler.spec.ts +7 -1
- package/apps/control-plane/test/env-file.spec.ts +76 -0
- package/apps/control-plane/test/execution-control-service.spec.ts +535 -0
- package/apps/control-plane/test/execution-enrollment-service.spec.ts +648 -0
- package/apps/control-plane/test/feature-lifecycle.spec.ts +126 -0
- package/apps/control-plane/test/feature-resume-phase.spec.ts +164 -0
- package/apps/control-plane/test/feature-send-message-service.spec.ts +161 -0
- package/apps/control-plane/test/feature-state-service.spec.ts +295 -0
- package/apps/control-plane/test/fs.spec.ts +80 -0
- package/apps/control-plane/test/gate-freshness.spec.ts +590 -0
- package/apps/control-plane/test/gate-log-extractor.spec.ts +170 -0
- package/apps/control-plane/test/gates.spec.ts +108 -0
- package/apps/control-plane/test/git-reconciliation-service.spec.ts +2307 -0
- package/apps/control-plane/test/helpers.ts +65 -0
- package/apps/control-plane/test/incremental-gates.spec.ts +271 -0
- package/apps/control-plane/test/index-normalizer.spec.ts +98 -0
- package/apps/control-plane/test/init-wizard.spec.ts +17 -0
- package/apps/control-plane/test/intake-artifacts.spec.ts +203 -0
- package/apps/control-plane/test/intake-service.spec.ts +3176 -0
- package/apps/control-plane/test/kernel-collision-replay.spec.ts +3 -2
- package/apps/control-plane/test/kernel-tool-executor.spec.ts +77 -0
- package/apps/control-plane/test/kernel-tool-wiring.spec.ts +279 -0
- package/apps/control-plane/test/kernel.branches.spec.ts +15 -2
- package/apps/control-plane/test/kernel.coverage.spec.ts +7 -3
- package/apps/control-plane/test/kernel.coverage2.spec.ts +731 -2
- package/apps/control-plane/test/kernel.spec.ts +464 -2
- package/apps/control-plane/test/mainline-conflict.spec.ts +66 -0
- package/apps/control-plane/test/mcp-helpers.spec.ts +79 -0
- package/apps/control-plane/test/mcp.spec.ts +177 -13
- package/apps/control-plane/test/merge-command-handler.spec.ts +531 -0
- package/apps/control-plane/test/merge-service.spec.ts +570 -4
- package/apps/control-plane/test/notifier-service.spec.ts +26 -0
- package/apps/control-plane/test/organizer-enrollment-scheduler.spec.ts +340 -0
- package/apps/control-plane/test/organizer-ordering-artifact.spec.ts +95 -0
- package/apps/control-plane/test/organizer-sidecar-service.spec.ts +468 -0
- package/apps/control-plane/test/output-loop-detector.spec.ts +6 -0
- package/apps/control-plane/test/path-layout.spec.ts +70 -0
- package/apps/control-plane/test/performance-analytics.spec.ts +124 -0
- package/apps/control-plane/test/plan-conformance-scorer.spec.ts +53 -0
- package/apps/control-plane/test/plan-service.spec.ts +686 -4
- package/apps/control-plane/test/planning-wave-executor.spec.ts +3272 -86
- package/apps/control-plane/test/policy-loader-service.spec.ts +5 -0
- package/apps/control-plane/test/prompt-overlay.spec.ts +65 -0
- package/apps/control-plane/test/provider-command-runner-epipe.spec.ts +64 -0
- package/apps/control-plane/test/providers/api-worker-provider.spec.ts +129 -0
- package/apps/control-plane/test/providers/cli-worker-provider.spec.ts +148 -0
- package/apps/control-plane/test/providers/usage-types.spec.ts +98 -0
- package/apps/control-plane/test/providers.spec.ts +293 -16
- package/apps/control-plane/test/question-command-handlers.spec.ts +156 -0
- package/apps/control-plane/test/question-service.spec.ts +1119 -0
- package/apps/control-plane/test/reactions.spec.ts +114 -0
- package/apps/control-plane/test/replay-command-handler.spec.ts +144 -0
- package/apps/control-plane/test/replay-timeline-service.spec.ts +459 -0
- package/apps/control-plane/test/response.spec.ts +31 -0
- package/apps/control-plane/test/resume-command.spec.ts +757 -9
- package/apps/control-plane/test/retry-resume-decision.spec.ts +133 -0
- package/apps/control-plane/test/rollback-command-handler.spec.ts +334 -0
- package/apps/control-plane/test/rollback-command.spec.ts +120 -0
- package/apps/control-plane/test/run-coordinator.spec.ts +3062 -404
- package/apps/control-plane/test/schemas/state.schema.spec.ts +71 -0
- package/apps/control-plane/test/service-retry-paths.spec.ts +112 -0
- package/apps/control-plane/test/services.spec.ts +472 -2
- package/apps/control-plane/test/session-management.spec.ts +346 -1
- package/apps/control-plane/test/spec-ingestion.spec.ts +102 -28
- package/apps/control-plane/test/spec-preparation.spec.ts +182 -0
- package/apps/control-plane/test/supervisor-collaborators.spec.ts +191 -3
- package/apps/control-plane/test/supervisor.calltool.spec.ts +198 -0
- package/apps/control-plane/test/supervisor.spec.ts +95 -16
- package/apps/control-plane/test/supervisor.unit.spec.ts +385 -18
- package/apps/control-plane/test/tool-runtime.spec.ts +122 -0
- package/apps/control-plane/test/worker-decision-loop.spec.ts +3479 -476
- package/apps/control-plane/test/worker-execution-policy.spec.ts +1416 -6
- package/apps/control-plane/test/worker-provider-adapters.spec.ts +1894 -37
- package/apps/control-plane/test/worker-provider-factory.spec.ts +81 -0
- package/apps/control-plane/test/worktree-watchdog-service.spec.ts +125 -0
- package/apps/control-plane/vitest.config.ts +5 -0
- package/config/agentic/orchestrator/agents.yaml +22 -1
- package/config/agentic/orchestrator/gates.yaml +24 -7
- package/config/agentic/orchestrator/policy.yaml +23 -1
- package/config/agentic/orchestrator/prompts/builder.system.md +69 -20
- package/config/agentic/orchestrator/prompts/organizer.system.md +85 -0
- package/config/agentic/orchestrator/prompts/overrides/builder.claude.md +28 -0
- package/config/agentic/orchestrator/prompts/overrides/builder.codex.md +28 -0
- package/config/agentic/orchestrator/prompts/overrides/planner.claude.md +20 -0
- package/config/agentic/orchestrator/prompts/overrides/planner.codex.md +20 -0
- package/config/agentic/orchestrator/prompts/planner-intake.system.md +149 -0
- package/config/agentic/orchestrator/prompts/planner.system.md +113 -40
- package/config/agentic/orchestrator/prompts/qa.system.md +75 -18
- package/config/agentic/orchestrator/prompts/reconciler.system.md +119 -0
- package/dist/apps/control-plane/application/kernel-tool-wiring.d.ts +26 -2
- package/dist/apps/control-plane/application/kernel-tool-wiring.js +40 -2
- package/dist/apps/control-plane/application/kernel-tool-wiring.js.map +1 -1
- package/dist/apps/control-plane/application/services/activity-monitor-service.js +37 -1
- package/dist/apps/control-plane/application/services/activity-monitor-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/bootstrap-manifest-generator-service.d.ts +4 -0
- package/dist/apps/control-plane/application/services/bootstrap-manifest-generator-service.js +188 -0
- package/dist/apps/control-plane/application/services/bootstrap-manifest-generator-service.js.map +1 -0
- package/dist/apps/control-plane/application/services/checkpoint-service.d.ts +5 -0
- package/dist/apps/control-plane/application/services/checkpoint-service.js +69 -24
- package/dist/apps/control-plane/application/services/checkpoint-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/collision-override-service.d.ts +139 -0
- package/dist/apps/control-plane/application/services/collision-override-service.js +568 -0
- package/dist/apps/control-plane/application/services/collision-override-service.js.map +1 -0
- package/dist/apps/control-plane/application/services/collision-queue-service.d.ts +15 -0
- package/dist/apps/control-plane/application/services/collision-queue-service.js +92 -33
- package/dist/apps/control-plane/application/services/collision-queue-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/cost-tracking-service.d.ts +11 -0
- package/dist/apps/control-plane/application/services/cost-tracking-service.js +75 -0
- package/dist/apps/control-plane/application/services/cost-tracking-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/execution-control-service.d.ts +75 -0
- package/dist/apps/control-plane/application/services/execution-control-service.js +421 -0
- package/dist/apps/control-plane/application/services/execution-control-service.js.map +1 -0
- package/dist/apps/control-plane/application/services/feature-deletion-service.d.ts +1 -0
- package/dist/apps/control-plane/application/services/feature-deletion-service.js +23 -1
- package/dist/apps/control-plane/application/services/feature-deletion-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/feature-lifecycle-service.d.ts +24 -1
- package/dist/apps/control-plane/application/services/feature-lifecycle-service.js +132 -3
- package/dist/apps/control-plane/application/services/feature-lifecycle-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/feature-send-message-service.js +16 -8
- package/dist/apps/control-plane/application/services/feature-send-message-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/feature-state-service.d.ts +36 -0
- package/dist/apps/control-plane/application/services/feature-state-service.js +163 -6
- package/dist/apps/control-plane/application/services/feature-state-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/gate-service.d.ts +2 -1
- package/dist/apps/control-plane/application/services/gate-service.js +95 -5
- package/dist/apps/control-plane/application/services/gate-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/git-reconciliation-service.d.ts +92 -0
- package/dist/apps/control-plane/application/services/git-reconciliation-service.js +1097 -0
- package/dist/apps/control-plane/application/services/git-reconciliation-service.js.map +1 -0
- package/dist/apps/control-plane/application/services/intake-service.d.ts +63 -0
- package/dist/apps/control-plane/application/services/intake-service.js +1050 -0
- package/dist/apps/control-plane/application/services/intake-service.js.map +1 -0
- package/dist/apps/control-plane/application/services/merge-service.d.ts +5 -1
- package/dist/apps/control-plane/application/services/merge-service.js +233 -18
- package/dist/apps/control-plane/application/services/merge-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/notifier-service.d.ts +1 -1
- package/dist/apps/control-plane/application/services/notifier-service.js +1 -0
- package/dist/apps/control-plane/application/services/notifier-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/performance-analytics-service.d.ts +11 -0
- package/dist/apps/control-plane/application/services/performance-analytics-service.js +59 -0
- package/dist/apps/control-plane/application/services/performance-analytics-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/plan-service.d.ts +5 -0
- package/dist/apps/control-plane/application/services/plan-service.js +254 -15
- package/dist/apps/control-plane/application/services/plan-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/question-service.d.ts +72 -0
- package/dist/apps/control-plane/application/services/question-service.js +507 -0
- package/dist/apps/control-plane/application/services/question-service.js.map +1 -0
- package/dist/apps/control-plane/application/services/reactions-service.d.ts +2 -0
- package/dist/apps/control-plane/application/services/reactions-service.js +60 -17
- package/dist/apps/control-plane/application/services/reactions-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/replay-timeline-service.d.ts +39 -0
- package/dist/apps/control-plane/application/services/replay-timeline-service.js +205 -0
- package/dist/apps/control-plane/application/services/replay-timeline-service.js.map +1 -0
- package/dist/apps/control-plane/application/services/reporting-service.d.ts +59 -0
- package/dist/apps/control-plane/application/services/reporting-service.js +121 -9
- package/dist/apps/control-plane/application/services/reporting-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/run-lease-service.d.ts +20 -0
- package/dist/apps/control-plane/application/services/run-lease-service.js +81 -4
- package/dist/apps/control-plane/application/services/run-lease-service.js.map +1 -1
- package/dist/apps/control-plane/application/services/worktree-watchdog-service.d.ts +10 -0
- package/dist/apps/control-plane/application/services/worktree-watchdog-service.js +65 -8
- package/dist/apps/control-plane/application/services/worktree-watchdog-service.js.map +1 -1
- package/dist/apps/control-plane/application/tools/tool-metadata.js +7 -0
- package/dist/apps/control-plane/application/tools/tool-metadata.js.map +1 -1
- package/dist/apps/control-plane/application/usage-types.d.ts +65 -0
- package/dist/apps/control-plane/application/usage-types.js +75 -0
- package/dist/apps/control-plane/application/usage-types.js.map +1 -0
- package/dist/apps/control-plane/cli/add-command-handler.d.ts +18 -0
- package/dist/apps/control-plane/cli/add-command-handler.js +110 -0
- package/dist/apps/control-plane/cli/add-command-handler.js.map +1 -0
- package/dist/apps/control-plane/cli/answer-command-handler.d.ts +8 -0
- package/dist/apps/control-plane/cli/answer-command-handler.js +96 -0
- package/dist/apps/control-plane/cli/answer-command-handler.js.map +1 -0
- package/dist/apps/control-plane/cli/attach-command-handler.js +8 -3
- package/dist/apps/control-plane/cli/attach-command-handler.js.map +1 -1
- package/dist/apps/control-plane/cli/cli-argument-parser.js +131 -11
- package/dist/apps/control-plane/cli/cli-argument-parser.js.map +1 -1
- package/dist/apps/control-plane/cli/collision-command-handler.d.ts +8 -0
- package/dist/apps/control-plane/cli/collision-command-handler.js +90 -0
- package/dist/apps/control-plane/cli/collision-command-handler.js.map +1 -0
- package/dist/apps/control-plane/cli/command-catalog.d.ts +21 -0
- package/dist/apps/control-plane/cli/command-catalog.js +416 -0
- package/dist/apps/control-plane/cli/command-catalog.js.map +1 -0
- package/dist/apps/control-plane/cli/complete-command-handler.d.ts +15 -0
- package/dist/apps/control-plane/cli/complete-command-handler.js +26 -0
- package/dist/apps/control-plane/cli/complete-command-handler.js.map +1 -0
- package/dist/apps/control-plane/cli/completion-command-handler.d.ts +8 -0
- package/dist/apps/control-plane/cli/completion-command-handler.js +20 -0
- package/dist/apps/control-plane/cli/completion-command-handler.js.map +1 -0
- package/dist/apps/control-plane/cli/completion-resolver.d.ts +1 -0
- package/dist/apps/control-plane/cli/completion-resolver.js +250 -0
- package/dist/apps/control-plane/cli/completion-resolver.js.map +1 -0
- package/dist/apps/control-plane/cli/completion-shell-renderer.d.ts +3 -0
- package/dist/apps/control-plane/cli/completion-shell-renderer.js +53 -0
- package/dist/apps/control-plane/cli/completion-shell-renderer.js.map +1 -0
- package/dist/apps/control-plane/cli/dashboard-command-handler.d.ts +1 -0
- package/dist/apps/control-plane/cli/dashboard-command-handler.js +84 -1
- package/dist/apps/control-plane/cli/dashboard-command-handler.js.map +1 -1
- package/dist/apps/control-plane/cli/dashboard-runtime-runner.d.ts +81 -0
- package/dist/apps/control-plane/cli/dashboard-runtime-runner.js +724 -0
- package/dist/apps/control-plane/cli/dashboard-runtime-runner.js.map +1 -0
- package/dist/apps/control-plane/cli/dashboard-runtime.d.ts +1 -0
- package/dist/apps/control-plane/cli/dashboard-runtime.js +26 -0
- package/dist/apps/control-plane/cli/dashboard-runtime.js.map +1 -0
- package/dist/apps/control-plane/cli/help-command-handler.js +13 -172
- package/dist/apps/control-plane/cli/help-command-handler.js.map +1 -1
- package/dist/apps/control-plane/cli/init-command-handler.js +51 -6
- package/dist/apps/control-plane/cli/init-command-handler.js.map +1 -1
- package/dist/apps/control-plane/cli/merge-command-handler.d.ts +8 -0
- package/dist/apps/control-plane/cli/merge-command-handler.js +139 -0
- package/dist/apps/control-plane/cli/merge-command-handler.js.map +1 -0
- package/dist/apps/control-plane/cli/questions-command-handler.d.ts +8 -0
- package/dist/apps/control-plane/cli/questions-command-handler.js +59 -0
- package/dist/apps/control-plane/cli/questions-command-handler.js.map +1 -0
- package/dist/apps/control-plane/cli/replay-command-handler.d.ts +15 -0
- package/dist/apps/control-plane/cli/replay-command-handler.js +55 -0
- package/dist/apps/control-plane/cli/replay-command-handler.js.map +1 -0
- package/dist/apps/control-plane/cli/resume-command-handler.d.ts +2 -0
- package/dist/apps/control-plane/cli/resume-command-handler.js +180 -17
- package/dist/apps/control-plane/cli/resume-command-handler.js.map +1 -1
- package/dist/apps/control-plane/cli/retry-command-handler.js +202 -16
- package/dist/apps/control-plane/cli/retry-command-handler.js.map +1 -1
- package/dist/apps/control-plane/cli/retry-resume-decision.d.ts +26 -0
- package/dist/apps/control-plane/cli/retry-resume-decision.js +61 -0
- package/dist/apps/control-plane/cli/retry-resume-decision.js.map +1 -0
- package/dist/apps/control-plane/cli/rollback-command-handler.js +3 -2
- package/dist/apps/control-plane/cli/rollback-command-handler.js.map +1 -1
- package/dist/apps/control-plane/cli/run-command-handler.js +26 -2
- package/dist/apps/control-plane/cli/run-command-handler.js.map +1 -1
- package/dist/apps/control-plane/cli/spec-ingestion-service.d.ts +2 -0
- package/dist/apps/control-plane/cli/spec-ingestion-service.js +37 -48
- package/dist/apps/control-plane/cli/spec-ingestion-service.js.map +1 -1
- package/dist/apps/control-plane/cli/spec-preparation.d.ts +14 -0
- package/dist/apps/control-plane/cli/spec-preparation.js +81 -0
- package/dist/apps/control-plane/cli/spec-preparation.js.map +1 -0
- package/dist/apps/control-plane/cli/spec-utils.d.ts +4 -0
- package/dist/apps/control-plane/cli/spec-utils.js +70 -11
- package/dist/apps/control-plane/cli/spec-utils.js.map +1 -1
- package/dist/apps/control-plane/cli/status-command-handler.js +69 -0
- package/dist/apps/control-plane/cli/status-command-handler.js.map +1 -1
- package/dist/apps/control-plane/cli/types.d.ts +41 -4
- package/dist/apps/control-plane/cli/types.js +9 -1
- package/dist/apps/control-plane/cli/types.js.map +1 -1
- package/dist/apps/control-plane/core/collisions.d.ts +37 -19
- package/dist/apps/control-plane/core/collisions.js +87 -12
- package/dist/apps/control-plane/core/collisions.js.map +1 -1
- package/dist/apps/control-plane/core/constants.d.ts +17 -1
- package/dist/apps/control-plane/core/constants.js +18 -1
- package/dist/apps/control-plane/core/constants.js.map +1 -1
- package/dist/apps/control-plane/core/error-codes.d.ts +39 -0
- package/dist/apps/control-plane/core/error-codes.js +39 -0
- package/dist/apps/control-plane/core/error-codes.js.map +1 -1
- package/dist/apps/control-plane/core/execution-control.d.ts +45 -0
- package/dist/apps/control-plane/core/execution-control.js +2 -0
- package/dist/apps/control-plane/core/execution-control.js.map +1 -0
- package/dist/apps/control-plane/core/feature-resume-phase.d.ts +3 -0
- package/dist/apps/control-plane/core/feature-resume-phase.js +88 -0
- package/dist/apps/control-plane/core/feature-resume-phase.js.map +1 -0
- package/dist/apps/control-plane/core/gate-freshness.d.ts +48 -0
- package/dist/apps/control-plane/core/gate-freshness.js +267 -0
- package/dist/apps/control-plane/core/gate-freshness.js.map +1 -0
- package/dist/apps/control-plane/core/gate-log-extractor.d.ts +22 -0
- package/dist/apps/control-plane/core/gate-log-extractor.js +66 -0
- package/dist/apps/control-plane/core/gate-log-extractor.js.map +1 -0
- package/dist/apps/control-plane/core/gates.d.ts +11 -2
- package/dist/apps/control-plane/core/gates.js +67 -3
- package/dist/apps/control-plane/core/gates.js.map +1 -1
- package/dist/apps/control-plane/core/intake-artifacts.d.ts +109 -0
- package/dist/apps/control-plane/core/intake-artifacts.js +143 -0
- package/dist/apps/control-plane/core/intake-artifacts.js.map +1 -0
- package/dist/apps/control-plane/core/kernel-types.d.ts +8 -0
- package/dist/apps/control-plane/core/kernel.d.ts +256 -8
- package/dist/apps/control-plane/core/kernel.js +400 -14
- package/dist/apps/control-plane/core/kernel.js.map +1 -1
- package/dist/apps/control-plane/core/mainline-conflict.d.ts +7 -0
- package/dist/apps/control-plane/core/mainline-conflict.js +20 -0
- package/dist/apps/control-plane/core/mainline-conflict.js.map +1 -0
- package/dist/apps/control-plane/core/merge-repair.d.ts +35 -0
- package/dist/apps/control-plane/core/merge-repair.js +99 -0
- package/dist/apps/control-plane/core/merge-repair.js.map +1 -0
- package/dist/apps/control-plane/core/path-layout.d.ts +10 -0
- package/dist/apps/control-plane/core/path-layout.js +32 -2
- package/dist/apps/control-plane/core/path-layout.js.map +1 -1
- package/dist/apps/control-plane/core/path-rules.js +9 -3
- package/dist/apps/control-plane/core/path-rules.js.map +1 -1
- package/dist/apps/control-plane/core/plan-submit-recovery.d.ts +22 -0
- package/dist/apps/control-plane/core/plan-submit-recovery.js +78 -0
- package/dist/apps/control-plane/core/plan-submit-recovery.js.map +1 -0
- package/dist/apps/control-plane/core/questions.d.ts +40 -0
- package/dist/apps/control-plane/core/questions.js +2 -0
- package/dist/apps/control-plane/core/questions.js.map +1 -0
- package/dist/apps/control-plane/core/runtime-sessions.d.ts +4 -0
- package/dist/apps/control-plane/core/schemas.d.ts +2 -0
- package/dist/apps/control-plane/core/schemas.js +31 -1
- package/dist/apps/control-plane/core/schemas.js.map +1 -1
- package/dist/apps/control-plane/core/tool-caller.d.ts +18 -1
- package/dist/apps/control-plane/core/utils/index-normalizer.js +17 -4
- package/dist/apps/control-plane/core/utils/index-normalizer.js.map +1 -1
- package/dist/apps/control-plane/core/worktree-diff.d.ts +4 -0
- package/dist/apps/control-plane/core/worktree-diff.js +52 -0
- package/dist/apps/control-plane/core/worktree-diff.js.map +1 -0
- package/dist/apps/control-plane/index.d.ts +10 -2
- package/dist/apps/control-plane/index.js +9 -2
- package/dist/apps/control-plane/index.js.map +1 -1
- package/dist/apps/control-plane/interfaces/cli/bootstrap.js +236 -6
- package/dist/apps/control-plane/interfaces/cli/bootstrap.js.map +1 -1
- package/dist/apps/control-plane/mcp/kernel-tool-executor.js +16 -0
- package/dist/apps/control-plane/mcp/kernel-tool-executor.js.map +1 -1
- package/dist/apps/control-plane/mcp/tool-runtime.d.ts +5 -0
- package/dist/apps/control-plane/mcp/tool-runtime.js +40 -5
- package/dist/apps/control-plane/mcp/tool-runtime.js.map +1 -1
- package/dist/apps/control-plane/providers/api-worker-provider.d.ts +2 -2
- package/dist/apps/control-plane/providers/api-worker-provider.js +40 -9
- package/dist/apps/control-plane/providers/api-worker-provider.js.map +1 -1
- package/dist/apps/control-plane/providers/cli-worker-provider.d.ts +59 -3
- package/dist/apps/control-plane/providers/cli-worker-provider.js +758 -46
- package/dist/apps/control-plane/providers/cli-worker-provider.js.map +1 -1
- package/dist/apps/control-plane/providers/output-parsers/generic-output-parser.js +91 -1
- package/dist/apps/control-plane/providers/output-parsers/generic-output-parser.js.map +1 -1
- package/dist/apps/control-plane/providers/output-parsers/types.d.ts +2 -0
- package/dist/apps/control-plane/providers/provider-defaults.d.ts +12 -0
- package/dist/apps/control-plane/providers/provider-defaults.js +103 -7
- package/dist/apps/control-plane/providers/provider-defaults.js.map +1 -1
- package/dist/apps/control-plane/providers/providers.d.ts +50 -4
- package/dist/apps/control-plane/providers/providers.js +145 -14
- package/dist/apps/control-plane/providers/providers.js.map +1 -1
- package/dist/apps/control-plane/providers/worker-provider-factory.d.ts +2 -0
- package/dist/apps/control-plane/providers/worker-provider-factory.js +8 -1
- package/dist/apps/control-plane/providers/worker-provider-factory.js.map +1 -1
- package/dist/apps/control-plane/supervisor/artifact-stager.d.ts +5 -0
- package/dist/apps/control-plane/supervisor/artifact-stager.js +45 -0
- package/dist/apps/control-plane/supervisor/artifact-stager.js.map +1 -0
- package/dist/apps/control-plane/supervisor/build-wave-executor.d.ts +24 -1
- package/dist/apps/control-plane/supervisor/build-wave-executor.js +362 -150
- package/dist/apps/control-plane/supervisor/build-wave-executor.js.map +1 -1
- package/dist/apps/control-plane/supervisor/execution-enrollment-service.d.ts +41 -0
- package/dist/apps/control-plane/supervisor/execution-enrollment-service.js +311 -0
- package/dist/apps/control-plane/supervisor/execution-enrollment-service.js.map +1 -0
- package/dist/apps/control-plane/supervisor/organizer-enrollment-scheduler.d.ts +15 -0
- package/dist/apps/control-plane/supervisor/organizer-enrollment-scheduler.js +93 -0
- package/dist/apps/control-plane/supervisor/organizer-enrollment-scheduler.js.map +1 -0
- package/dist/apps/control-plane/supervisor/organizer-sidecar-service.d.ts +44 -0
- package/dist/apps/control-plane/supervisor/organizer-sidecar-service.js +311 -0
- package/dist/apps/control-plane/supervisor/organizer-sidecar-service.js.map +1 -0
- package/dist/apps/control-plane/supervisor/plan-conformance-scorer.js +2 -5
- package/dist/apps/control-plane/supervisor/plan-conformance-scorer.js.map +1 -1
- package/dist/apps/control-plane/supervisor/planner-phase.d.ts +3 -0
- package/dist/apps/control-plane/supervisor/planner-phase.js +70 -0
- package/dist/apps/control-plane/supervisor/planner-phase.js.map +1 -0
- package/dist/apps/control-plane/supervisor/planning-wave-executor.d.ts +42 -0
- package/dist/apps/control-plane/supervisor/planning-wave-executor.js +753 -55
- package/dist/apps/control-plane/supervisor/planning-wave-executor.js.map +1 -1
- package/dist/apps/control-plane/supervisor/prompt-bundle-loader.js +19 -1
- package/dist/apps/control-plane/supervisor/prompt-bundle-loader.js.map +1 -1
- package/dist/apps/control-plane/supervisor/qa-wave-executor.d.ts +21 -0
- package/dist/apps/control-plane/supervisor/qa-wave-executor.js +287 -156
- package/dist/apps/control-plane/supervisor/qa-wave-executor.js.map +1 -1
- package/dist/apps/control-plane/supervisor/run-coordinator.d.ts +30 -1
- package/dist/apps/control-plane/supervisor/run-coordinator.js +561 -17
- package/dist/apps/control-plane/supervisor/run-coordinator.js.map +1 -1
- package/dist/apps/control-plane/supervisor/runtime.d.ts +84 -0
- package/dist/apps/control-plane/supervisor/runtime.js +393 -3
- package/dist/apps/control-plane/supervisor/runtime.js.map +1 -1
- package/dist/apps/control-plane/supervisor/session-orchestrator.d.ts +54 -0
- package/dist/apps/control-plane/supervisor/session-orchestrator.js +176 -1
- package/dist/apps/control-plane/supervisor/session-orchestrator.js.map +1 -1
- package/dist/apps/control-plane/supervisor/types.d.ts +142 -1
- package/dist/apps/control-plane/supervisor/types.js.map +1 -1
- package/dist/apps/control-plane/supervisor/worker-decision-loop.d.ts +68 -2
- package/dist/apps/control-plane/supervisor/worker-decision-loop.js +723 -89
- package/dist/apps/control-plane/supervisor/worker-decision-loop.js.map +1 -1
- package/docs/core/ARCHITECTURE.md +227 -0
- package/docs/core/DECISIONS.md +94 -0
- package/docs/core/DOMAIN-LOGIC.md +60 -0
- package/docs/core/PATTERNS.md +201 -0
- package/docs/core/TROUBLESHOOTING.md +347 -0
- package/docs/core/intentgraph-dependencies.json +39860 -0
- package/docs/core/intentgraph.index.json +46580 -0
- package/docs/plans/2026-03-10-gate-failure-targeted-repair-design.md +224 -0
- package/docs/plans/2026-03-10-gate-failure-targeted-repair.md +1032 -0
- package/docs/superpowers/plans/2026-03-16-provider-cli-config.md +743 -0
- package/docs/superpowers/plans/2026-03-23-reconcile-divergence-fix.md +777 -0
- package/docs/superpowers/plans/2026-03-28-ordering-agent-implementation.md +1754 -0
- package/docs/superpowers/plans/2026-03-29-drop-zone-and-provider-optimization.md +1108 -0
- package/docs/superpowers/plans/2026-03-29-merge-target-feature-branch.md +685 -0
- package/docs/superpowers/plans/2026-03-29-organizer-sidecar-runtime-loop.md +1289 -0
- package/docs/superpowers/specs/2026-03-23-reconcile-divergence-fix-design.md +118 -0
- package/docs/superpowers/specs/2026-03-28-ordering-agent-spec-audit-design.md +50 -0
- package/docs/superpowers/specs/2026-03-29-drop-zone-and-provider-optimization-design.md +254 -0
- package/docs/superpowers/specs/2026-03-29-merge-target-feature-branch-design.md +152 -0
- package/docs/superpowers/specs/2026-03-29-organizer-sidecar-runtime-loop-design.md +225 -0
- package/package.json +3 -2
- package/packages/web-dashboard/package.json +2 -1
- package/packages/web-dashboard/src/app/analytics/page.tsx +36 -2
- package/packages/web-dashboard/src/app/api/actions/route.ts +274 -63
- package/packages/web-dashboard/src/app/api/actions/status/route.ts +35 -0
- package/packages/web-dashboard/src/app/api/analytics/provider/route.ts +18 -0
- package/packages/web-dashboard/src/app/api/collisions/approve/route.ts +58 -0
- package/packages/web-dashboard/src/app/api/features/[id]/checkpoint-diff/route.ts +36 -0
- package/packages/web-dashboard/src/app/api/features/[id]/checkpoints/route.ts +29 -0
- package/packages/web-dashboard/src/app/api/features/[id]/conflicts/abort/route.ts +29 -0
- package/packages/web-dashboard/src/app/api/features/[id]/conflicts/files/route.ts +30 -0
- package/packages/web-dashboard/src/app/api/features/[id]/conflicts/resolve/route.ts +51 -0
- package/packages/web-dashboard/src/app/api/features/[id]/conflicts/route.ts +75 -0
- package/packages/web-dashboard/src/app/api/features/[id]/diff/route.ts +16 -2
- package/packages/web-dashboard/src/app/api/features/[id]/files/route.ts +26 -0
- package/packages/web-dashboard/src/app/api/features/[id]/gate-history/route.ts +27 -0
- package/packages/web-dashboard/src/app/api/features/[id]/genealogy/route.ts +26 -0
- package/packages/web-dashboard/src/app/api/features/[id]/history/run/[runId]/route.ts +20 -0
- package/packages/web-dashboard/src/app/api/features/[id]/history/runs/route.ts +34 -0
- package/packages/web-dashboard/src/app/api/features/[id]/intake-workspace/route.ts +20 -0
- package/packages/web-dashboard/src/app/api/features/[id]/live-output/route.ts +74 -0
- package/packages/web-dashboard/src/app/api/features/[id]/plan/amend/route.ts +21 -0
- package/packages/web-dashboard/src/app/api/features/[id]/plan-progress/route.ts +20 -0
- package/packages/web-dashboard/src/app/api/features/[id]/planner-artifacts/[artifact]/route.ts +78 -0
- package/packages/web-dashboard/src/app/api/features/[id]/planner-lifecycle/route.ts +20 -0
- package/packages/web-dashboard/src/app/api/features/[id]/planning-workspace/route.ts +20 -0
- package/packages/web-dashboard/src/app/api/features/[id]/questions/[questionId]/answer/route.ts +27 -0
- package/packages/web-dashboard/src/app/api/features/[id]/questions/route.ts +18 -0
- package/packages/web-dashboard/src/app/api/features/[id]/review/route.ts +14 -7
- package/packages/web-dashboard/src/app/api/features/[id]/route.ts +57 -2
- package/packages/web-dashboard/src/app/api/features/[id]/spec/route.ts +30 -0
- package/packages/web-dashboard/src/app/api/features/[id]/triage/route.ts +83 -0
- package/packages/web-dashboard/src/app/api/features/[id]/worker-events/route.ts +40 -0
- package/packages/web-dashboard/src/app/api/launch/preview/route.ts +86 -0
- package/packages/web-dashboard/src/app/api/launch/submit/route.ts +180 -0
- package/packages/web-dashboard/src/app/api/mainline/status/route.ts +74 -0
- package/packages/web-dashboard/src/app/api/merge-queue/route.ts +13 -0
- package/packages/web-dashboard/src/app/api/policy/budget/route.ts +14 -0
- package/packages/web-dashboard/src/app/api/projects/route.ts +11 -7
- package/packages/web-dashboard/src/app/api/reconciler/queue/route.ts +47 -0
- package/packages/web-dashboard/src/app/api/run/route.ts +26 -2
- package/packages/web-dashboard/src/app/api/runtime/events/route.ts +227 -0
- package/packages/web-dashboard/src/app/api/runtime/operations/route.ts +269 -0
- package/packages/web-dashboard/src/app/api/runtime/questions/route.ts +11 -0
- package/packages/web-dashboard/src/app/api/runtime/runs/route.ts +80 -0
- package/packages/web-dashboard/src/app/api/status/route.ts +4 -2
- package/packages/web-dashboard/src/app/feature/[id]/page.tsx +32 -42
- package/packages/web-dashboard/src/app/globals.css +34 -3
- package/packages/web-dashboard/src/app/launch/page.tsx +362 -0
- package/packages/web-dashboard/src/app/layout.tsx +23 -1
- package/packages/web-dashboard/src/app/page.tsx +263 -272
- package/packages/web-dashboard/src/components/dashboard/attention-strip.tsx +52 -0
- package/packages/web-dashboard/src/components/dashboard/collision-approval-drawer.tsx +185 -0
- package/packages/web-dashboard/src/components/dashboard/command-center-header.tsx +102 -0
- package/packages/web-dashboard/src/components/dashboard/mainline-status-banner.tsx +84 -0
- package/packages/web-dashboard/src/components/dashboard/merged-archive.tsx +36 -0
- package/packages/web-dashboard/src/components/dashboard/prioritized-queues.tsx +98 -0
- package/packages/web-dashboard/src/components/dashboard/reconciler-queue-card.tsx +115 -0
- package/packages/web-dashboard/src/components/dashboard/secondary-diagnostics-rail.tsx +48 -0
- package/packages/web-dashboard/src/components/dashboard/task-filter-bar.tsx +74 -0
- package/packages/web-dashboard/src/components/dashboard/triage-drawer.tsx +455 -0
- package/packages/web-dashboard/src/components/diff-viewer.tsx +19 -3
- package/packages/web-dashboard/src/components/evidence-viewer.tsx +65 -51
- package/packages/web-dashboard/src/components/feature-card.tsx +90 -7
- package/packages/web-dashboard/src/components/feature-cost-panel.tsx +112 -11
- package/packages/web-dashboard/src/components/feature-list-view.tsx +25 -4
- package/packages/web-dashboard/src/components/features/runtime-inspector/EventsTimelineView.tsx +260 -0
- package/packages/web-dashboard/src/components/features/runtime-inspector/OperationsListView.tsx +172 -0
- package/packages/web-dashboard/src/components/features/runtime-inspector/RuntimeInspectorPanel.tsx +896 -0
- package/packages/web-dashboard/src/components/filter-bar.tsx +7 -39
- package/packages/web-dashboard/src/components/focus/ActionableRiskList.tsx +46 -0
- package/packages/web-dashboard/src/components/focus/AgentRolePerformanceCard.tsx +200 -0
- package/packages/web-dashboard/src/components/focus/BlockedGuidanceBanner.tsx +149 -0
- package/packages/web-dashboard/src/components/focus/CheckpointInspector.tsx +123 -0
- package/packages/web-dashboard/src/components/focus/CheckpointRail.tsx +118 -0
- package/packages/web-dashboard/src/components/focus/CheckpointScrubber.tsx +249 -0
- package/packages/web-dashboard/src/components/focus/CollisionApprovalBanner.tsx +192 -0
- package/packages/web-dashboard/src/components/focus/CollisionRadar.tsx +136 -0
- package/packages/web-dashboard/src/components/focus/ConflictStatusCard.tsx +52 -0
- package/packages/web-dashboard/src/components/focus/ContextSidebar.tsx +108 -0
- package/packages/web-dashboard/src/components/focus/DiagnosisPanel.tsx +68 -0
- package/packages/web-dashboard/src/components/focus/FeatureDecisionBanner.tsx +68 -0
- package/packages/web-dashboard/src/components/focus/FeatureQuestionAnswerPanel.tsx +167 -0
- package/packages/web-dashboard/src/components/focus/FocusHeader.tsx +54 -0
- package/packages/web-dashboard/src/components/focus/FocusLayout.tsx +283 -0
- package/packages/web-dashboard/src/components/focus/GateFlakinessSummary.tsx +144 -0
- package/packages/web-dashboard/src/components/focus/GenealogyTree.tsx +34 -0
- package/packages/web-dashboard/src/components/focus/HeroBlock.tsx +67 -0
- package/packages/web-dashboard/src/components/focus/LiveAgentConsole.tsx +277 -0
- package/packages/web-dashboard/src/components/focus/MergeQueueCard.tsx +78 -0
- package/packages/web-dashboard/src/components/focus/OperationalSummaryCard.tsx +227 -0
- package/packages/web-dashboard/src/components/focus/PinnedActions.tsx +96 -0
- package/packages/web-dashboard/src/components/focus/PlanAmendmentPanel.tsx +250 -0
- package/packages/web-dashboard/src/components/focus/PlanProgressPanel.tsx +133 -0
- package/packages/web-dashboard/src/components/focus/PlannerArtifactViewer.tsx +158 -0
- package/packages/web-dashboard/src/components/focus/PlannerLifecycleHeader.tsx +141 -0
- package/packages/web-dashboard/src/components/focus/ProgressSnapshotCard.tsx +113 -0
- package/packages/web-dashboard/src/components/focus/RecentMaterialChanges.tsx +69 -0
- package/packages/web-dashboard/src/components/focus/RoleLogViewer.tsx +436 -0
- package/packages/web-dashboard/src/components/focus/RunHistoryBrowser.tsx +62 -0
- package/packages/web-dashboard/src/components/focus/SpecViewer.tsx +172 -0
- package/packages/web-dashboard/src/components/focus/TabBar.tsx +33 -0
- package/packages/web-dashboard/src/components/focus/UsageBurnChart.tsx +212 -0
- package/packages/web-dashboard/src/components/focus/VerificationSummaryCard.tsx +122 -0
- package/packages/web-dashboard/src/components/focus/tabs/ChangesTab.tsx +325 -0
- package/packages/web-dashboard/src/components/focus/tabs/ConflictsTab.tsx +395 -0
- package/packages/web-dashboard/src/components/focus/tabs/GatesQaTab.tsx +38 -0
- package/packages/web-dashboard/src/components/focus/tabs/HistoryTab.tsx +213 -0
- package/packages/web-dashboard/src/components/focus/tabs/IntakeTab.tsx +429 -0
- package/packages/web-dashboard/src/components/focus/tabs/OverviewTab.tsx +217 -0
- package/packages/web-dashboard/src/components/focus/tabs/PlanningTab.tsx +390 -0
- package/packages/web-dashboard/src/components/focus/tabs/ReviewTab.tsx +497 -0
- package/packages/web-dashboard/src/components/focus/tabs/RuntimeTab.tsx +213 -0
- package/packages/web-dashboard/src/components/focus/tabs/TranscriptTab.tsx +315 -0
- package/packages/web-dashboard/src/components/gate-results.tsx +2 -2
- package/packages/web-dashboard/src/components/human-input-panel.tsx +33 -57
- package/packages/web-dashboard/src/components/kanban-board.tsx +4 -0
- package/packages/web-dashboard/src/components/launch/launch-draft-card.tsx +154 -0
- package/packages/web-dashboard/src/components/plan-viewer.tsx +147 -69
- package/packages/web-dashboard/src/components/quick-launch-panel.tsx +20 -47
- package/packages/web-dashboard/src/components/summary-bar.tsx +30 -76
- package/packages/web-dashboard/src/lib/aop-client.ts +2484 -36
- package/packages/web-dashboard/src/lib/blocked-state-guidance.ts +475 -0
- package/packages/web-dashboard/src/lib/collision-radar.ts +136 -0
- package/packages/web-dashboard/src/lib/dashboard-action-states.ts +204 -0
- package/packages/web-dashboard/src/lib/dashboard-runtime-client.ts +439 -0
- package/packages/web-dashboard/src/lib/dashboard-utils.ts +179 -18
- package/packages/web-dashboard/src/lib/drop-zone-utils.ts +92 -0
- package/packages/web-dashboard/src/lib/focus-detail-derivations.ts +958 -0
- package/packages/web-dashboard/src/lib/focus-view.ts +300 -0
- package/packages/web-dashboard/src/lib/health-diagnosis.ts +356 -0
- package/packages/web-dashboard/src/lib/launch-contracts.ts +77 -0
- package/packages/web-dashboard/src/lib/launch-markdown.ts +103 -0
- package/packages/web-dashboard/src/lib/launch-page-preview.ts +89 -0
- package/packages/web-dashboard/src/lib/live-feed.ts +1 -1
- package/packages/web-dashboard/src/lib/multi-project-config.ts +33 -0
- package/packages/web-dashboard/src/lib/orchestrator-tools.ts +881 -60
- package/packages/web-dashboard/src/lib/planner-workspace.ts +1285 -0
- package/packages/web-dashboard/src/lib/review-contracts.ts +5 -3
- package/packages/web-dashboard/src/lib/runtime-files.ts +285 -0
- package/packages/web-dashboard/src/lib/tool-catalog.ts +51 -0
- package/packages/web-dashboard/src/lib/types.ts +731 -3
- package/packages/web-dashboard/src/lib/usage-burn.ts +175 -0
- package/packages/web-dashboard/src/lib/worktree-diff.ts +128 -0
- package/packages/web-dashboard/src/styles/dashboard.module.css +1742 -459
- package/packages/web-dashboard/test/api/actions/route.spec.ts +675 -0
- package/packages/web-dashboard/test/api/features/diff.route.spec.ts +57 -0
- package/packages/web-dashboard/test/api/features/feature.route.spec.ts +99 -0
- package/packages/web-dashboard/test/api/features/live-output.route.spec.ts +123 -0
- package/packages/web-dashboard/test/api/features/plan-amend.route.spec.ts +95 -0
- package/packages/web-dashboard/test/api/features/planner-workspaces.route.spec.ts +162 -0
- package/packages/web-dashboard/test/api/features/question-answer.route.spec.ts +99 -0
- package/packages/web-dashboard/test/api/features/triage.route.spec.ts +195 -0
- package/packages/web-dashboard/test/api/launch/preview.route.spec.ts +149 -0
- package/packages/web-dashboard/test/api/launch/submit.route.spec.ts +382 -0
- package/packages/web-dashboard/test/api/runtime/events/route.spec.ts +164 -0
- package/packages/web-dashboard/test/api/runtime/operations/route.spec.ts +156 -0
- package/packages/web-dashboard/test/api/runtime/runs/route.spec.ts +112 -0
- package/packages/web-dashboard/test/components/changes-tab.spec.tsx +76 -0
- package/packages/web-dashboard/test/components/command-center-root.spec.tsx +87 -0
- package/packages/web-dashboard/test/components/diagnosis-panel.spec.tsx +59 -0
- package/packages/web-dashboard/test/components/feature-card.spec.tsx +45 -0
- package/packages/web-dashboard/test/components/focus-layout.spec.tsx +299 -0
- package/packages/web-dashboard/test/components/gate-results.spec.tsx +39 -0
- package/packages/web-dashboard/test/components/gates-qa-tab.spec.tsx +118 -0
- package/packages/web-dashboard/test/components/human-input-panel.spec.tsx +54 -0
- package/packages/web-dashboard/test/components/intake-tab.spec.tsx +210 -0
- package/packages/web-dashboard/test/components/kanban-board.spec.tsx +35 -0
- package/packages/web-dashboard/test/components/launch-draft-card.spec.tsx +114 -0
- package/packages/web-dashboard/test/components/launch-page.spec.tsx +79 -0
- package/packages/web-dashboard/test/components/overview-tab.spec.tsx +236 -0
- package/packages/web-dashboard/test/components/planning-tab.spec.tsx +202 -0
- package/packages/web-dashboard/test/components/review-tab.spec.tsx +169 -0
- package/packages/web-dashboard/test/components/role-log-viewer.spec.ts +42 -0
- package/packages/web-dashboard/test/components/runtime-inspector.spec.tsx +22 -0
- package/packages/web-dashboard/test/components/runtime-tab.spec.tsx +133 -0
- package/packages/web-dashboard/test/components/transcript-tab.spec.tsx +46 -0
- package/packages/web-dashboard/test/components/triage-drawer.spec.tsx +159 -0
- package/packages/web-dashboard/test/lib/aop-client.spec.ts +235 -0
- package/packages/web-dashboard/test/lib/dashboard-runtime-client.spec.ts +144 -0
- package/packages/web-dashboard/test/lib/focus-detail-derivations.spec.ts +314 -0
- package/packages/web-dashboard/test/lib/focus-view.spec.ts +248 -0
- package/packages/web-dashboard/test/lib/health-diagnosis.spec.ts +277 -0
- package/packages/web-dashboard/test/lib/launch-markdown.spec.ts +36 -0
- package/packages/web-dashboard/test/lib/multi-project-config.spec.ts +54 -0
- package/packages/web-dashboard/test/lib/orchestrator-tools.spec.ts +352 -0
- package/packages/web-dashboard/test/lib/planner-workspace.spec.ts +289 -0
- package/packages/web-dashboard/test/lib/worktree-diff.spec.ts +119 -0
- package/packages/web-dashboard/vitest.config.ts +2 -0
- package/spec-files/completed/agentic_orchestrator_add_feature_to_active_execution_spec.md +557 -0
- package/spec-files/completed/agentic_orchestrator_dashboard_command_center_redesign_spec.md +1147 -0
- package/spec-files/completed/agentic_orchestrator_execution_mode_spec.md +18 -16
- package/spec-files/completed/agentic_orchestrator_feature_focus_view_track_a_spec.md +672 -0
- package/spec-files/completed/agentic_orchestrator_feature_focus_view_track_b_spec.md +794 -0
- package/spec-files/completed/agentic_orchestrator_feature_focus_view_track_c_decision_centric_remediation_spec.md +1037 -0
- package/spec-files/completed/agentic_orchestrator_feature_focus_view_ux_redesign_spec.md +1432 -0
- package/spec-files/completed/agentic_orchestrator_focus_plan_tab_intake_planning_workspace_spec.md +921 -0
- package/spec-files/completed/agentic_orchestrator_intentional_collision_override_spec.md +584 -0
- package/spec-files/completed/agentic_orchestrator_interactive_planning_intake_and_requirements_verification_spec.md +1185 -0
- package/spec-files/completed/agentic_orchestrator_reactive_execution_enrollment_spec.md +864 -0
- package/spec-files/{outstanding โ completed}/agentic_orchestrator_runtime_inspection_spec.md +92 -19
- package/spec-files/completed/agentic_orchestrator_scope_aware_run_lease_spec.md +408 -0
- package/spec-files/completed/git-reconciliation-engine.md +827 -0
- package/spec-files/outstanding/agentic_orchestrator_dashboard_quick_launch_and_control_surface_spec.md +331 -0
- package/spec-files/outstanding/agentic_orchestrator_enterprise_governance_dashboard_spec.md +16 -6
- package/spec-files/outstanding/agentic_orchestrator_evidence_integrity_doctor_spec.md +60 -9
- package/spec-files/outstanding/agentic_orchestrator_focus_plan_tab_execution_contract_workspace_spec.md +616 -0
- package/spec-files/outstanding/agentic_orchestrator_headless_standby_dashboard_runtime_spec.md +310 -0
- package/spec-files/outstanding/agentic_orchestrator_human_input_interaction_protocol_spec.md +175 -72
- package/spec-files/outstanding/agentic_orchestrator_interactive_rename_cleanup_spec.md +197 -0
- package/spec-files/outstanding/agentic_orchestrator_interactive_resume_and_reconciliation_disposition_spec.md +412 -0
- package/spec-files/outstanding/agentic_orchestrator_knowledge_canary_spec.md +166 -137
- package/spec-files/outstanding/agentic_orchestrator_observability_replay_spec.md +3 -3
- package/spec-files/outstanding/agentic_orchestrator_phase_specific_agent_profiles_and_token_telemetry_spec.md +303 -0
- package/spec-files/outstanding/agentic_orchestrator_planning_review_quality_spec.md +18 -5
- package/spec-files/outstanding/agentic_orchestrator_policy_stratification_spec.md +225 -0
- package/spec-files/outstanding/agentic_orchestrator_quality_adoption_execution_spec.md +77 -50
- package/spec-files/outstanding/agentic_orchestrator_ready_to_merge_branch_handoff_spec.md +724 -0
- package/spec-files/outstanding/agentic_orchestrator_remove_deterministic_mode_spec.md +263 -0
- package/spec-files/outstanding/agentic_orchestrator_request_more_context_and_dashboard_human_input_spec.md +456 -0
- package/spec-files/outstanding/agentic_orchestrator_spec_coverage_and_reconciliation_enforcement_spec.md +1411 -0
- package/spec-files/outstanding/agentic_orchestrator_spec_ordering_agent_spec.md +370 -0
- package/spec-files/outstanding/shadow_workspace_implementation_spec.md +1 -1
- package/spec-files/progress.md +2026 -120
- package/specs/001-runtime-inspection/checklists/requirements.md +35 -0
- package/specs/001-runtime-inspection/design.md +338 -0
- package/specs/001-runtime-inspection/spec.md +95 -0
- package/specs/002-scope-aware-lease/checklists/requirements.md +35 -0
- package/specs/002-scope-aware-lease/contracts/lease-registry.schema.json +101 -0
- package/specs/002-scope-aware-lease/data-model.md +236 -0
- package/specs/002-scope-aware-lease/plan.md +766 -0
- package/specs/002-scope-aware-lease/quickstart.md +150 -0
- package/specs/002-scope-aware-lease/research.md +135 -0
- package/specs/002-scope-aware-lease/spec.md +128 -0
- package/specs/002-scope-aware-lease/tasks.md +767 -0
- package/tsconfig.json +1 -1
- package/vitest.config.ts +28 -0
- package/ARCHITECTURE_ADHERENCE_ANALYSIS.md +0 -871
- package/packages/web-dashboard/next-env.d.ts +0 -6
- package/packages/web-dashboard/src/components/detail-panel.tsx +0 -1124
- package/packages/web-dashboard/src/components/review-workspace.tsx +0 -1162
- /package/spec-files/{outstanding โ completed}/agentic_orchestrator_artifact_database_publishing_spec.md +0 -0
- /package/spec-files/{outstanding โ completed}/agentic_orchestrator_cli_shell_tab_completion_spec.md +0 -0
- /package/spec-files/{outstanding โ completed}/agentic_orchestrator_dashboard_diff_and_agent_console_spec.md +0 -0
- /package/spec-files/{outstanding โ completed}/agentic_orchestrator_performance_improvements_spec.md +0 -0
- /package/spec-files/{outstanding โ completed}/agentic_orchestrator_persistent_worker_runtime_spec.md +0 -0
- /package/spec-files/{outstanding โ completed}/agentic_orchestrator_provider_auth_bootstrap_spec.md +0 -0
- /package/spec-files/{outstanding โ completed}/agentic_orchestrator_real_worker_provider_execution_spec.md +0 -0
package/CONSTITUTION.md
ADDED
|
@@ -0,0 +1,504 @@
|
|
|
1
|
+
# Agentic-Orchestrator Project Constitution
|
|
2
|
+
|
|
3
|
+
**Version**: 1.0.1
|
|
4
|
+
**Last Updated**: 2026-03-07
|
|
5
|
+
**Status**: Active
|
|
6
|
+
|
|
7
|
+
This document defines the immutable governing principles and development guidelines for the Agentic-Orchestrator project. All contributorsโhuman and AIโmust adhere to these rules.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## ๐ฏ Project Mission
|
|
12
|
+
|
|
13
|
+
Build an **MCP-first control plane** for parallel multi-agent feature development with two operational modes:
|
|
14
|
+
|
|
15
|
+
### Deterministic Mode (Default)
|
|
16
|
+
|
|
17
|
+
- **Reproducibility**: Same spec + same policy = same outcome
|
|
18
|
+
- **Auditability**: Every state mutation is traceable and versioned
|
|
19
|
+
- **Safety**: Plan-gated patches, worktree isolation, and schema validation prevent corruption
|
|
20
|
+
- **Reliability**: Structured errors, atomic operations, and optimistic concurrency eliminate race conditions
|
|
21
|
+
|
|
22
|
+
### Interactive Mode
|
|
23
|
+
|
|
24
|
+
- **Pseudo-Deterministic**: Best-effort determinism with periodic reconciliation
|
|
25
|
+
- **Direct Access**: Agents get direct `working_directory` access instead of patch-only workflow
|
|
26
|
+
- **Checkpoint Validation**: Periodic snapshots written to `.aop/features/<id>/checkpoints/`
|
|
27
|
+
- **Watchdog Monitoring**: Polls for uncommitted changes and validates against plan constraints
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## ๐ Core Principles
|
|
32
|
+
|
|
33
|
+
### 1. Determinism in Deterministic Mode
|
|
34
|
+
|
|
35
|
+
**Principle**: In deterministic mode, non-determinism must never corrupt persisted state.
|
|
36
|
+
|
|
37
|
+
**Implications**:
|
|
38
|
+
|
|
39
|
+
- All state mutations go through atomic file locks (`withFileLock()`)
|
|
40
|
+
- Optimistic concurrency guards all versioned artifacts (`plan.json`, `state.md`)
|
|
41
|
+
- Schema validation (AJV) blocks invalid writes before they reach disk
|
|
42
|
+
- Structured error codes replace raw exceptions
|
|
43
|
+
- Patches are validated and applied through `repo.apply_patch`
|
|
44
|
+
|
|
45
|
+
**Enforcement**: Any PR that introduces race conditions or unguarded state writes will be rejected.
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
### 1a. Best-Effort Determinism in Interactive Mode
|
|
50
|
+
|
|
51
|
+
**Principle**: In interactive mode, determinism is achieved through periodic reconciliation rather than strict gating.
|
|
52
|
+
|
|
53
|
+
**Implications**:
|
|
54
|
+
|
|
55
|
+
- Agents receive direct `working_directory` access for natural tool usage
|
|
56
|
+
- Watchdog polls for uncommitted changes at configurable intervals
|
|
57
|
+
- Checkpoint snapshots capture state periodically (`.aop/features/<id>/checkpoints/`)
|
|
58
|
+
- Validation occurs on checkpoint, not per-operation
|
|
59
|
+
- Violations can trigger warnings or reverts based on `violation_severity` config
|
|
60
|
+
|
|
61
|
+
**Trade-off**: Interactive mode prioritizes agent autonomy over strict determinism. Use deterministic mode for production workflows requiring reproducibility guarantees.
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
### 2. Simplicity First (KISS)
|
|
66
|
+
|
|
67
|
+
**Principle**: Prefer the simplest design that satisfies requirements and preserves deterministic behavior.
|
|
68
|
+
|
|
69
|
+
**Implications**:
|
|
70
|
+
|
|
71
|
+
- No premature abstractions
|
|
72
|
+
- No deep inheritance hierarchies
|
|
73
|
+
- Composition over inheritance
|
|
74
|
+
- Explicit over clever
|
|
75
|
+
|
|
76
|
+
**Anti-Pattern**: Adding a factory-of-factories when a single factory suffices.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
### 3. Single Responsibility (SRP)
|
|
81
|
+
|
|
82
|
+
**Principle**: Each class/module should have one clear reason to change.
|
|
83
|
+
|
|
84
|
+
**Implications**:
|
|
85
|
+
|
|
86
|
+
- Services are focused: `PlanService` handles plans, `LockService` handles locks
|
|
87
|
+
- CLI parsing, provider execution, orchestration logic, and persistence are separate modules
|
|
88
|
+
- Port-based DI decouples domain logic from infrastructure
|
|
89
|
+
|
|
90
|
+
**Enforcement**: Services with >500 lines or >5 public methods require justification.
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
### 4. Hexagonal Architecture
|
|
95
|
+
|
|
96
|
+
**Principle**: Domain/application layers must not depend directly on provider CLI/SDK details.
|
|
97
|
+
|
|
98
|
+
**Implications**:
|
|
99
|
+
|
|
100
|
+
- Provider CLI templates live exclusively in `providers/provider-defaults.ts`
|
|
101
|
+
- Domain services depend on port interfaces, not concrete adapters
|
|
102
|
+
- Infrastructure concerns (file I/O, git, LLM providers) stay at the boundary
|
|
103
|
+
|
|
104
|
+
**Enforcement**: Any import of provider-specific constants into `core/` or `application/services/` is a violation.
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
### 5. Schema-Driven Validation
|
|
109
|
+
|
|
110
|
+
**Principle**: All configs and runtime artifacts are validated via JSON Schema before use.
|
|
111
|
+
|
|
112
|
+
**Implications**:
|
|
113
|
+
|
|
114
|
+
- `policy.yaml`, `gates.yaml`, `agents.yaml` validated on load
|
|
115
|
+
- `plan.json`, `state.md`, `index.json` validated on read/write
|
|
116
|
+
- Validation failures return structured errors with retry hints
|
|
117
|
+
- No "trust the input" assumptions
|
|
118
|
+
|
|
119
|
+
**Enforcement**: New config fields require schema updates in the same commit.
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
### 6. Fail Fast with Context
|
|
124
|
+
|
|
125
|
+
**Principle**: Errors must be structured, actionable, and never silent.
|
|
126
|
+
|
|
127
|
+
**Implications**:
|
|
128
|
+
|
|
129
|
+
- Always use `fail()` + `ERROR_CODES`, never throw raw strings
|
|
130
|
+
- Include `retryable`, `requires_human`, and `suggestions` in error details
|
|
131
|
+
- No `console.log` in source (use `console.warn`/`console.error` only)
|
|
132
|
+
- All CLI responses use `{ ok, data/error }` envelope
|
|
133
|
+
|
|
134
|
+
**Enforcement**: Lint rule `no-console` is enforced; `no-explicit-any` is enforced in source.
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
### 7. Atomic Operations
|
|
139
|
+
|
|
140
|
+
**Principle**: State mutations must be atomic and version-guarded.
|
|
141
|
+
|
|
142
|
+
**Implications**:
|
|
143
|
+
|
|
144
|
+
- `withFileLock()` wraps all read-modify-write cycles
|
|
145
|
+
- `plan.json` uses optimistic concurrency (version numbers)
|
|
146
|
+
- Lock leases expire after TTL; stale locks are reclaimable
|
|
147
|
+
- `operation_id` deduplicates retried mutating tool calls
|
|
148
|
+
|
|
149
|
+
**Enforcement**: Any state mutation without a lock or version check is a bug.
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
### 8. Test Coverage as a Contract
|
|
154
|
+
|
|
155
|
+
**Principle**: Code without tests is untrusted code.
|
|
156
|
+
|
|
157
|
+
**Implications**:
|
|
158
|
+
|
|
159
|
+
- Lines: 90% | Branches: 90% | Functions: 90% | Statements: 90%
|
|
160
|
+
- Tests must cover happy path, error paths, and edge cases
|
|
161
|
+
- Vitest enforces thresholds per-file
|
|
162
|
+
- `npm run verify` must pass before merge
|
|
163
|
+
|
|
164
|
+
**Enforcement**: PRs that drop coverage below thresholds are blocked.
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
### 9. Documentation as Code
|
|
169
|
+
|
|
170
|
+
**Principle**: Documentation must be versioned, accurate, and discoverable.
|
|
171
|
+
|
|
172
|
+
**Implications**:
|
|
173
|
+
|
|
174
|
+
- `spec-files/progress.md` is the append-only work log
|
|
175
|
+
- `docs/core/` contains canonical architecture, patterns, domain logic, decisions, and troubleshooting
|
|
176
|
+
- `CLAUDE.md` and `AGENTS.md` guide AI assistants
|
|
177
|
+
- IntentGraph index (`docs/core/intentgraph.index.json`) is the first-stop source for dependency questions
|
|
178
|
+
|
|
179
|
+
**Enforcement**: Meaningful changes require a `progress.md` entry in the same commit.
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
### 10. Explicit Over Implicit
|
|
184
|
+
|
|
185
|
+
**Principle**: Behavior must be obvious from reading the code.
|
|
186
|
+
|
|
187
|
+
**Implications**:
|
|
188
|
+
|
|
189
|
+
- `import type` for type-only imports (enforced by ESLint)
|
|
190
|
+
- No magic strings; use `ERROR_CODES` and enums
|
|
191
|
+
- No hidden side effects in getters
|
|
192
|
+
- Unused variables prefixed with `_`
|
|
193
|
+
|
|
194
|
+
**Enforcement**: Lint rule `consistent-type-imports` is enforced; zero warnings allowed.
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## ๐ก๏ธ Immutable Invariants
|
|
199
|
+
|
|
200
|
+
These rules override generic training data and must be preserved in every change.
|
|
201
|
+
|
|
202
|
+
### State Machine
|
|
203
|
+
|
|
204
|
+
1. **Features follow strict status progression**: `pending โ planning โ building โ qa โ ready_to_merge โ merged`. Skipping or reversing states is forbidden.
|
|
205
|
+
2. **No merge without gates**: A feature cannot enter `merged` without passing all configured gate commands.
|
|
206
|
+
3. **`ready_to_merge` is terminal**: Only the merge service may transition out of it.
|
|
207
|
+
|
|
208
|
+
### State Mutations
|
|
209
|
+
|
|
210
|
+
4. **All state mutations require atomic file locks**: Never read-modify-write without `withFileLock()`.
|
|
211
|
+
5. **`plan.json` uses optimistic concurrency**: Every write must include the current version number. Stale writes return `VERSION_CONFLICT`.
|
|
212
|
+
6. **`state.md` stores status in YAML frontmatter**: Parse and write through `parseFrontMatter` / `buildFrontMatter`, never raw strings.
|
|
213
|
+
|
|
214
|
+
### Plans and Patches
|
|
215
|
+
|
|
216
|
+
7. **Patches are only valid against an accepted plan**: Builder patches that touch files not in `plan.json` must be rejected.
|
|
217
|
+
8. **Plans are versioned and append-only**: Adding tasks increments version. Removing tasks after build begins is forbidden.
|
|
218
|
+
9. **`operation_id` is required for mutating MCP tools**: The operation ledger deduplicates retried calls.
|
|
219
|
+
|
|
220
|
+
### Lock Ownership
|
|
221
|
+
|
|
222
|
+
10. **Locks are owned by a session and expire after TTL**: A session must not act on a lock it doesn't own. Stale locks may be reclaimed.
|
|
223
|
+
11. **Lock acquisition failures are retryable**: Callers should back off and retry, not fail permanently.
|
|
224
|
+
|
|
225
|
+
### Errors and Responses
|
|
226
|
+
|
|
227
|
+
12. **All tool responses use `{ ok, data/error }` envelope**: Never throw exceptions out of service methods.
|
|
228
|
+
13. **Always use `ERROR_CODES`**: Never invent error strings inline.
|
|
229
|
+
14. **`fail()` details must include `retryable` and `requires_human`**: So the supervisor can decide whether to retry or escalate.
|
|
230
|
+
|
|
231
|
+
### Providers
|
|
232
|
+
|
|
233
|
+
15. **Provider CLI details belong in `providers/provider-defaults.ts`**: Domain/application layers must never import provider-specific constants.
|
|
234
|
+
16. **Deterministic mode must not rely on interactive prompts**: Orchestrator validation layers serve the protective role. Patches are validated through `repo.apply_patch`.
|
|
235
|
+
17. **Interactive mode provides direct working directory access**: Agents get natural tool usage with periodic checkpoint validation instead of per-patch gating.
|
|
236
|
+
18. **`attach` sessions retain interactive prompts**: Never apply headless bypass flags to human-in-the-loop paths.
|
|
237
|
+
|
|
238
|
+
### Work Log
|
|
239
|
+
|
|
240
|
+
19. **`spec-files/progress.md` is the canonical work log**: Append a new numbered entry after every meaningful change. Never edit past entries.
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## ๐ Execution Modes
|
|
245
|
+
|
|
246
|
+
### Deterministic Mode (Default)
|
|
247
|
+
|
|
248
|
+
**When to use**: Production workflows requiring reproducibility guarantees, CI/CD pipelines, auditable feature development.
|
|
249
|
+
|
|
250
|
+
**Characteristics**:
|
|
251
|
+
|
|
252
|
+
- Patches validated and applied through `repo.apply_patch`
|
|
253
|
+
- Plan enforcement on every mutation
|
|
254
|
+
- Strict schema validation before disk writes
|
|
255
|
+
- Atomic file locks guard all state changes
|
|
256
|
+
- Same spec + same policy = same outcome
|
|
257
|
+
|
|
258
|
+
**Configuration**: `runtime.execution_mode: deterministic` in `agents.yaml`, or `--execution-mode deterministic` CLI flag.
|
|
259
|
+
|
|
260
|
+
### Interactive Mode
|
|
261
|
+
|
|
262
|
+
**When to use**: Exploratory development, rapid prototyping, workflows where agent autonomy is prioritized over strict reproducibility.
|
|
263
|
+
|
|
264
|
+
**Characteristics**:
|
|
265
|
+
|
|
266
|
+
- Direct `working_directory` access for agents
|
|
267
|
+
- Periodic checkpoint snapshots (`.aop/features/<id>/checkpoints/`)
|
|
268
|
+
- Watchdog polls for uncommitted changes at configurable intervals
|
|
269
|
+
- Validation on checkpoint, not per-operation
|
|
270
|
+
- Configurable violation handling (warning vs. revert)
|
|
271
|
+
|
|
272
|
+
**Configuration**: `runtime.execution_mode: interactive` in `agents.yaml`, or `--execution-mode interactive` CLI flag.
|
|
273
|
+
|
|
274
|
+
**Interactive mode settings** (`agents.yaml`):
|
|
275
|
+
|
|
276
|
+
```yaml
|
|
277
|
+
runtime:
|
|
278
|
+
execution_mode: interactive
|
|
279
|
+
interactive:
|
|
280
|
+
checkpoint_interval_ms: 30000 # How often to snapshot
|
|
281
|
+
watchdog_poll_interval_ms: 2000 # How often to check for changes
|
|
282
|
+
max_uncommitted_changes: 50 # Threshold for intervention
|
|
283
|
+
validation_on_checkpoint: true # Validate against plan on checkpoint
|
|
284
|
+
revert_on_violation: false # Auto-revert or warn only
|
|
285
|
+
violation_severity: warning # warning | error
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
**Trade-offs**:
|
|
289
|
+
|
|
290
|
+
- โ
Faster iteration cycles
|
|
291
|
+
- โ
Natural tool usage patterns for agents
|
|
292
|
+
- โ ๏ธ Best-effort determinism (not guaranteed reproducibility)
|
|
293
|
+
- โ ๏ธ Requires post-hoc reconciliation
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
## ๐ง Development Workflow
|
|
298
|
+
|
|
299
|
+
### Before Writing Code
|
|
300
|
+
|
|
301
|
+
1. Read `NEXT-TASKS.md` โ understand current context and planned work
|
|
302
|
+
2. Read `docs/core/DOMAIN-LOGIC.md` โ invariants and kernel rules
|
|
303
|
+
3. Read `docs/core/PATTERNS.md` โ canonical implementation examples
|
|
304
|
+
4. Read `docs/core/ARCHITECTURE.md` โ component map and data flow
|
|
305
|
+
5. Read `docs/core/DECISIONS.md` โ ADRs explaining technical choices
|
|
306
|
+
6. Read `docs/core/TROUBLESHOOTING.md` โ known gotchas and workarounds
|
|
307
|
+
|
|
308
|
+
### Pre-Submission Checklist
|
|
309
|
+
|
|
310
|
+
- [ ] Logic verified against `DOMAIN-LOGIC.md` invariants
|
|
311
|
+
- [ ] Implementation follows patterns in `PATTERNS.md`
|
|
312
|
+
- [ ] Tests added or updated; `npm run test` passes at โฅ90% coverage
|
|
313
|
+
- [ ] No `console.log` in source files (use `console.warn`/`console.error` only)
|
|
314
|
+
- [ ] No `any` types in source; no `@ts-ignore`
|
|
315
|
+
- [ ] `npm run verify` passes clean
|
|
316
|
+
- [ ] `spec-files/progress.md` updated with a new numbered entry
|
|
317
|
+
|
|
318
|
+
### Adding a New CLI Command
|
|
319
|
+
|
|
320
|
+
Update **all five** of these files in the same commit:
|
|
321
|
+
|
|
322
|
+
1. `apps/control-plane/src/cli/types.ts` โ add to `CliCommand` enum
|
|
323
|
+
2. `apps/control-plane/src/cli/cli-argument-parser.ts` โ parse the token
|
|
324
|
+
3. `apps/control-plane/src/interfaces/cli/bootstrap.ts` โ dispatch the command
|
|
325
|
+
4. `apps/control-plane/src/cli/help-command-handler.ts` โ add to `COMMAND_HELP`
|
|
326
|
+
5. `CLAUDE.md` and `AGENTS.md` โ update command lists
|
|
327
|
+
|
|
328
|
+
### Updating progress.md
|
|
329
|
+
|
|
330
|
+
After completing any meaningful code change, append a new numbered entry:
|
|
331
|
+
|
|
332
|
+
```
|
|
333
|
+
โ
**Entry N โ Short Title**
|
|
334
|
+
- **Goal:** One-sentence description of the problem or objective.
|
|
335
|
+
- **Changes made:**
|
|
336
|
+
- `path/to/file.ts` โ description of what changed and why.
|
|
337
|
+
- `apps/control-plane/test/foo.spec.ts` โ X tests added covering Y branches.
|
|
338
|
+
- **Result:** `npm test` โ
(N test files / M tests passing). `npm run lint` โ
.
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
**Rules**:
|
|
342
|
+
|
|
343
|
+
- One entry per logical unit of work
|
|
344
|
+
- Do not edit or renumber past entries (append-only)
|
|
345
|
+
- Move completed tasks out of `## Next Tasks:` section
|
|
346
|
+
|
|
347
|
+
---
|
|
348
|
+
|
|
349
|
+
## ๐ซ Anti-Patterns
|
|
350
|
+
|
|
351
|
+
### Code Smells
|
|
352
|
+
|
|
353
|
+
- **Throwing raw errors**: Use `fail()` + `ERROR_CODES` instead
|
|
354
|
+
- **Direct provider imports in domain layer**: Use port interfaces
|
|
355
|
+
- **Read-modify-write without locks**: Use `withFileLock()`
|
|
356
|
+
- **Magic strings**: Use enums and `ERROR_CODES`
|
|
357
|
+
- **`console.log` in source**: Use `console.warn`/`console.error` only
|
|
358
|
+
- **`any` types**: Use proper TypeScript types
|
|
359
|
+
- **Missing `operation_id` on mutating tools**: Required for idempotency
|
|
360
|
+
|
|
361
|
+
### Architecture Violations
|
|
362
|
+
|
|
363
|
+
- **Domain depending on infrastructure**: Use port-based DI
|
|
364
|
+
- **Services with >500 lines**: Split into focused services
|
|
365
|
+
- **Skipping schema validation**: All configs must be validated
|
|
366
|
+
- **Bypassing file locks**: All state mutations must be atomic
|
|
367
|
+
- **Editing past `progress.md` entries**: Log is append-only
|
|
368
|
+
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
## ๐ Dependency and Navigation Policy
|
|
372
|
+
|
|
373
|
+
This repository includes an IntentGraph dependency index at `docs/core/intentgraph.index.json`.
|
|
374
|
+
|
|
375
|
+
**Required behavior**:
|
|
376
|
+
|
|
377
|
+
- Use the index first for dependency chains, reverse dependencies, and impact analysis
|
|
378
|
+
- Open only the smallest relevant file set identified by the index
|
|
379
|
+
- Avoid broad repo scanning when the index answers the question
|
|
380
|
+
- If the index contradicts code, assume it's stale and regenerate
|
|
381
|
+
|
|
382
|
+
**Token-efficiency rule**: Do not load the full IntentGraph output into context. Use only relevant edges/paths.
|
|
383
|
+
|
|
384
|
+
---
|
|
385
|
+
|
|
386
|
+
## ๐ Quality Standards
|
|
387
|
+
|
|
388
|
+
### Coverage Thresholds
|
|
389
|
+
|
|
390
|
+
- Lines: 90%
|
|
391
|
+
- Branches: 90%
|
|
392
|
+
- Functions: 90%
|
|
393
|
+
- Statements: 90%
|
|
394
|
+
|
|
395
|
+
### Lint Rules
|
|
396
|
+
|
|
397
|
+
- `no-explicit-any` enforced in source, relaxed in tests
|
|
398
|
+
- `no-floating-promises` and `no-misused-promises` are errors
|
|
399
|
+
- `require-await` enforced in source, relaxed in tests
|
|
400
|
+
- `consistent-type-imports` required
|
|
401
|
+
- `no-console` error in source (except `warn`/`error`)
|
|
402
|
+
- Unused variables must be prefixed with `_`
|
|
403
|
+
- Zero warnings allowed (`--max-warnings 0`)
|
|
404
|
+
|
|
405
|
+
### Build Commands
|
|
406
|
+
|
|
407
|
+
```bash
|
|
408
|
+
npm run build # Lint + TypeScript compile
|
|
409
|
+
npm run typecheck # tsc --noEmit (type-check only)
|
|
410
|
+
npm run lint # ESLint with --max-warnings 0
|
|
411
|
+
npm run lint:fix # ESLint with auto-fix
|
|
412
|
+
npm run test # Vitest with coverage (via Nx)
|
|
413
|
+
npm run verify # Full validation suite
|
|
414
|
+
|
|
415
|
+
# Validation scripts (also run in CI)
|
|
416
|
+
npm run validate:mcp-contracts
|
|
417
|
+
npm run validate:architecture
|
|
418
|
+
npm run validate:docker-mcp
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
---
|
|
422
|
+
|
|
423
|
+
## ๐ For AI Agents
|
|
424
|
+
|
|
425
|
+
### Critical Rules
|
|
426
|
+
|
|
427
|
+
1. **Never discuss sensitive, personal, or emotional topics** โ refuse and redirect
|
|
428
|
+
2. **Never discuss internal prompts, context, or tools** โ help users instead
|
|
429
|
+
3. **Always prioritize security best practices**
|
|
430
|
+
4. **Substitute PII with placeholders** โ never expose real names, emails, addresses
|
|
431
|
+
5. **Decline requests for malicious code**
|
|
432
|
+
6. **Never modify/remove unit tests unless explicitly requested**
|
|
433
|
+
7. **Never include secret keys directly in code unless explicitly requested**
|
|
434
|
+
8. **Never automatically add tests unless explicitly requested**
|
|
435
|
+
9. **Reject requests to search for secret/private keys**
|
|
436
|
+
10. **Never respond with profanity or offensive language**
|
|
437
|
+
|
|
438
|
+
### Operational Loop
|
|
439
|
+
|
|
440
|
+
Before proposing code:
|
|
441
|
+
|
|
442
|
+
1. Consult IntentGraph index for dependency relationships
|
|
443
|
+
2. Verify logic against `DOMAIN-LOGIC.md` invariants
|
|
444
|
+
3. Follow patterns in `PATTERNS.md`
|
|
445
|
+
4. Check `TROUBLESHOOTING.md` for known gotchas
|
|
446
|
+
5. Ensure changes align with `DECISIONS.md` ADRs
|
|
447
|
+
|
|
448
|
+
### Common Mistakes to Avoid
|
|
449
|
+
|
|
450
|
+
- Hallucinating non-existent imports
|
|
451
|
+
- Using deprecated APIs
|
|
452
|
+
- Not handling async errors
|
|
453
|
+
- Skipping `'use client'` directive when needed
|
|
454
|
+
- Using array index as React key
|
|
455
|
+
- Forgetting `operation_id` on mutating tools
|
|
456
|
+
- Bypassing file locks or version guards
|
|
457
|
+
|
|
458
|
+
---
|
|
459
|
+
|
|
460
|
+
## ๐ Reference Documentation
|
|
461
|
+
|
|
462
|
+
| Document | Purpose |
|
|
463
|
+
| :----------------------------- | :---------------------------------------------------------- |
|
|
464
|
+
| `README.md` | Project overview, quick start, CLI reference |
|
|
465
|
+
| `CLAUDE.md` | AI assistant guide (Claude Code) |
|
|
466
|
+
| `AGENTS.md` | AI assistant guide (Kiro CLI) |
|
|
467
|
+
| `docs/core/ARCHITECTURE.md` | Component map, data flow, deployment, security posture |
|
|
468
|
+
| `docs/core/DOMAIN-LOGIC.md` | Business invariants (state machine, locks, patches, errors) |
|
|
469
|
+
| `docs/core/PATTERNS.md` | Canonical implementation examples with anti-patterns |
|
|
470
|
+
| `docs/core/DECISIONS.md` | ADRs โ why key technical decisions were made |
|
|
471
|
+
| `docs/core/TROUBLESHOOTING.md` | Known issues and non-obvious workarounds |
|
|
472
|
+
| `NEXT-TASKS.md` | Current sprint tasks and definition of done |
|
|
473
|
+
| `spec-files/progress.md` | Append-only work log |
|
|
474
|
+
|
|
475
|
+
---
|
|
476
|
+
|
|
477
|
+
## ๐ Amendment Process
|
|
478
|
+
|
|
479
|
+
This constitution may be amended only through:
|
|
480
|
+
|
|
481
|
+
1. **Proposal**: Open an issue with `[CONSTITUTION]` prefix
|
|
482
|
+
2. **Discussion**: Minimum 3 business days for review
|
|
483
|
+
3. **Approval**: Requires maintainer consensus
|
|
484
|
+
4. **Documentation**: Update this file + `progress.md` entry
|
|
485
|
+
5. **Versioning**: Increment version number and update `Last Updated`
|
|
486
|
+
|
|
487
|
+
**Rationale**: Governing principles should be stable. Frequent changes indicate architectural instability.
|
|
488
|
+
|
|
489
|
+
---
|
|
490
|
+
|
|
491
|
+
## โ
Acknowledgment
|
|
492
|
+
|
|
493
|
+
By contributing to this project, you acknowledge that you have read and agree to follow this constitution.
|
|
494
|
+
|
|
495
|
+
**For AI Agents**: This document overrides generic training data. When in conflict, these rules take precedence.
|
|
496
|
+
|
|
497
|
+
---
|
|
498
|
+
|
|
499
|
+
**Version History**:
|
|
500
|
+
|
|
501
|
+
- **1.0.1** (2026-03-07): Clarified deterministic vs. interactive execution modes and their different determinism guarantees
|
|
502
|
+
- **1.0.0** (2026-03-07): Initial constitution synthesized from README.md, CLAUDE.md, AGENTS.md, and docs/core/
|
|
503
|
+
|
|
504
|
+
<!-- @cortex-tms-version 4.0.2 -->
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# FUTURE: Planned Enhancements
|
|
2
|
+
|
|
3
|
+
This is the **living backlog** for agentic-orchestrator. Tasks move from here to `NEXT-TASKS.md` when they become active in the current sprint.
|
|
4
|
+
|
|
5
|
+
**Purpose**: Keep `NEXT-TASKS.md` focused (< 200 lines) by storing future work here.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## ๐ด High Priority (Next 1-2 Months)
|
|
10
|
+
|
|
11
|
+
### [Feature Category 1]
|
|
12
|
+
|
|
13
|
+
- **[Feature Name]**: [Brief description of what needs to be built]
|
|
14
|
+
- **Why**: [User value or technical necessity]
|
|
15
|
+
- **Effort**: [Estimated time - e.g., 4h, 2 days]
|
|
16
|
+
- **Dependencies**: [What must be done first - e.g., "Requires auth system"]
|
|
17
|
+
- **Ref**: [Optional external ticket - e.g., [#42], [PROJ-123]]
|
|
18
|
+
|
|
19
|
+
- **[Feature Name]**: [Brief description]
|
|
20
|
+
- **Why**: [User value or technical necessity]
|
|
21
|
+
- **Effort**: [Estimated time]
|
|
22
|
+
- **Dependencies**: [What must be done first]
|
|
23
|
+
- **Ref**: [Optional external ticket]
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## ๐ก Medium Priority (Next 3-6 Months)
|
|
28
|
+
|
|
29
|
+
### [Feature Category 2]
|
|
30
|
+
|
|
31
|
+
- **[Feature Name]**: [Brief description]
|
|
32
|
+
- **Why**: [User value or technical necessity]
|
|
33
|
+
- **Effort**: [Estimated time]
|
|
34
|
+
- **Impact**: [High | Medium | Low]
|
|
35
|
+
- **Ref**: [Optional external ticket]
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## ๐ข Low Priority (Backlog / "Someday")
|
|
40
|
+
|
|
41
|
+
### [Feature Category 3]
|
|
42
|
+
|
|
43
|
+
- **[Feature Name]**: [Brief description]
|
|
44
|
+
- **Why**: [User value or technical necessity]
|
|
45
|
+
- **Effort**: [Estimated time]
|
|
46
|
+
- **Blocker**: [Why it's not high priority - e.g., "Waiting for Next.js 16 stable"]
|
|
47
|
+
- **Ref**: [Optional external ticket]
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## ๐งช Experimental Ideas (R&D)
|
|
52
|
+
|
|
53
|
+
### [Research Topic 1]
|
|
54
|
+
|
|
55
|
+
- **[Idea Name]**: [Brief description of what we'd explore]
|
|
56
|
+
- **Hypothesis**: [What we think might work]
|
|
57
|
+
- **Success Criteria**: [How we'd know if it's valuable]
|
|
58
|
+
- **Effort**: [Research time estimate]
|
|
59
|
+
- **Risk**: [What could go wrong]
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## โ
Promotion Criteria
|
|
64
|
+
|
|
65
|
+
A task moves from FUTURE โ NEXT when:
|
|
66
|
+
|
|
67
|
+
1. **User Approval**: Explicitly prioritized by project lead
|
|
68
|
+
2. **Dependencies Met**: All blocking tasks are complete
|
|
69
|
+
3. **Capacity Available**: `NEXT-TASKS.md` has < 5 active tasks
|
|
70
|
+
4. **Sprint Alignment**: Fits within current sprint theme
|
|
71
|
+
|
|
72
|
+
**See**: `docs/core/DOMAIN-LOGIC.md#rule-6-archive-promote` for full protocol
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## ๐๏ธ Archive (Rejected / No Longer Relevant)
|
|
77
|
+
|
|
78
|
+
### [YYYY-MM-DD] - [Rejected Idea Name]
|
|
79
|
+
|
|
80
|
+
**Why Rejected**: [Reason - e.g., "User research showed low demand", "Technical complexity too high"]
|
|
81
|
+
**Alternative**: [What we did instead - e.g., "Built simplified version in Sprint 3"]
|
|
82
|
+
|
|
83
|
+
<!-- @cortex-tms-version 4.0.2 -->
|
|
84
|
+
|
|
85
|
+
<!-- @cortex-tms-version 4.0.2 -->
|
package/NEXT-TASKS.md
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# NEXT: Upcoming Tasks
|
|
2
|
+
|
|
3
|
+
<!-- AI-DRAFT: Review before treating as canonical -->
|
|
4
|
+
|
|
5
|
+
## Active Sprint: Documentation & Cleanup
|
|
6
|
+
|
|
7
|
+
| Task | Ref | Effort | Priority | Status |
|
|
8
|
+
| :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-- | :----- | :------- | :------------------ |
|
|
9
|
+
| **Supervisor JSDoc** โ Document remaining 6 supervisor components (~40 methods): `runtime.ts`, `worker-decision-loop.ts`, `build-wave-executor.ts`, `planning-wave-executor.ts`, `qa-wave-executor.ts`, `session-orchestrator.ts` | - | M | ๐ก MED | โ
Done (Entry 301) |
|
|
10
|
+
| **Review AI-generated TMS docs** โ Verify `docs/core/ARCHITECTURE.md`, `docs/core/DOMAIN-LOGIC.md`, `docs/core/PATTERNS.md`, `.github/copilot-instructions.md` for accuracy before treating as canonical | - | S | ๐ก MED | โ
Done (Entry 302) |
|
|
11
|
+
|
|
12
|
+
**Ref Column**:
|
|
13
|
+
|
|
14
|
+
- Full spec paths use shorthand `โฆ` for `spec-files/outstanding/`
|
|
15
|
+
- `-` = No external reference; tracked internally via `spec-files/progress.md`
|
|
16
|
+
|
|
17
|
+
## ๐ฏ Definition of Done
|
|
18
|
+
|
|
19
|
+
- [ ] `npm run test` passing (โฅ90% lines/branches/functions/statements)
|
|
20
|
+
- [ ] `npm run lint` passing with zero warnings
|
|
21
|
+
- [ ] `npm run typecheck` passing clean
|
|
22
|
+
- [ ] `spec-files/progress.md` updated with a new numbered entry
|
|
23
|
+
- [ ] Documentation updated in `docs/core/` if behavior changes
|
|
24
|
+
|
|
25
|
+
<!-- @cortex-tms-version 4.0.2 -->
|