@moretea-labs/forge 1.5.0-rc.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/AGENTS.md +120 -0
- package/CHANGELOG.md +36 -0
- package/CLAUDE.md +120 -0
- package/CODE_OF_CONDUCT.md +23 -0
- package/CONTRIBUTING.md +77 -0
- package/LICENSE +22 -0
- package/NOTICE +9 -0
- package/README.en.md +5 -0
- package/README.es.md +12 -0
- package/README.fr.md +12 -0
- package/README.ja.md +12 -0
- package/README.md +132 -0
- package/README.zh-CN.md +84 -0
- package/SECURITY.md +50 -0
- package/SKILL.md +431 -0
- package/SUPPORT.md +31 -0
- package/THIRD_PARTY_NOTICES.md +18 -0
- package/agents/openai.yaml +4 -0
- package/assets/AGENTS.md +68 -0
- package/assets/CLAUDE.md +68 -0
- package/assets/branding/README.md +10 -0
- package/assets/branding/forge-controller-flow.mmd +8 -0
- package/assets/hooks/AGENTS.md +75 -0
- package/assets/hooks/CLAUDE.md +75 -0
- package/assets/hooks/anti-simplification.sh +12 -0
- package/assets/hooks/changelog-guard.sh +80 -0
- package/assets/hooks/codex.hooks.template.json +60 -0
- package/assets/hooks/first-principles-guard.sh +72 -0
- package/assets/hooks/hook-input.sh +618 -0
- package/assets/hooks/lib/session-state.sh +106 -0
- package/assets/hooks/lib/workflow-state.sh +1730 -0
- package/assets/hooks/post-bash.sh +215 -0
- package/assets/hooks/post-edit-guard.sh +256 -0
- package/assets/hooks/post-tool-observer.sh +99 -0
- package/assets/hooks/pre-edit-guard.sh +240 -0
- package/assets/hooks/prompt-guard.sh +1077 -0
- package/assets/hooks/run-hook.sh +67 -0
- package/assets/hooks/security-sentinel.sh +115 -0
- package/assets/hooks/session-start-context.sh +593 -0
- package/assets/hooks/settings.template.json +60 -0
- package/assets/hooks/stop-orchestrator.sh +171 -0
- package/assets/hooks/subagent-return-channel-guard.sh +107 -0
- package/assets/hooks/worktree-guard.sh +39 -0
- package/assets/initializer-question-pack.v1.json +132 -0
- package/assets/initializer-question-pack.v1.schema.json +46 -0
- package/assets/initializer-question-pack.v2.json +174 -0
- package/assets/initializer-question-pack.v3.json +206 -0
- package/assets/initializer-question-pack.v3.schema.json +92 -0
- package/assets/initializer-question-pack.v4.json +557 -0
- package/assets/initializer-question-pack.v4.schema.json +169 -0
- package/assets/partials/01-header.partial.md +10 -0
- package/assets/partials/02-iron-rules.partial.md +30 -0
- package/assets/partials/03-philosophy.partial.md +32 -0
- package/assets/partials/04-project-structure.partial.md +56 -0
- package/assets/partials/05-workflow.partial.md +79 -0
- package/assets/partials/06-cloudflare.partial.md +20 -0
- package/assets/partials/07-footer.partial.md +38 -0
- package/assets/partials/08-orchestration.partial.md +49 -0
- package/assets/partials/09-compact-instructions.partial.md +11 -0
- package/assets/partials/_assembly-order.md +40 -0
- package/assets/partials-agents/01-header.partial.md +8 -0
- package/assets/partials-agents/02-operating-mode.partial.md +44 -0
- package/assets/partials-agents/03-orchestration.partial.md +45 -0
- package/assets/partials-agents/04-task-protocol.partial.md +69 -0
- package/assets/partials-agents/05-coding-constraints.partial.md +20 -0
- package/assets/partials-agents/06-quality-safety.partial.md +23 -0
- package/assets/partials-agents/07-cloudflare.partial.md +9 -0
- package/assets/partials-agents/08-deep-docs.partial.md +32 -0
- package/assets/plan-map.json +301 -0
- package/assets/plugin-registry.v1.json +8 -0
- package/assets/project-structures/ai-native-collaborative-editor.txt +25 -0
- package/assets/project-structures/ai-native-product-copilot.txt +21 -0
- package/assets/project-structures/ai-native-runtime-console.txt +25 -0
- package/assets/project-structures/ai-native-sidecar-kernel.txt +19 -0
- package/assets/project-structures/astro-ssr.txt +25 -0
- package/assets/project-structures/expo-nativewind.txt +52 -0
- package/assets/project-structures/monorepo.txt +63 -0
- package/assets/project-structures/remix.txt +50 -0
- package/assets/project-structures/tanstack-start-workers.txt +51 -0
- package/assets/project-structures/vite-tanstack.txt +58 -0
- package/assets/reference-configs/AGENTS.md +13 -0
- package/assets/reference-configs/CLAUDE.md +13 -0
- package/assets/reference-configs/agentic-development-flow.md +94 -0
- package/assets/reference-configs/ai-workflows.md +14 -0
- package/assets/reference-configs/changelog-versioning.md +13 -0
- package/assets/reference-configs/coding-standards.md +14 -0
- package/assets/reference-configs/development-protocol.md +21 -0
- package/assets/reference-configs/document-generation.md +38 -0
- package/assets/reference-configs/evaluator-rubric.md +19 -0
- package/assets/reference-configs/external-tooling.md +374 -0
- package/assets/reference-configs/git-strategy.md +14 -0
- package/assets/reference-configs/global-working-rules.md +64 -0
- package/assets/reference-configs/handoff-protocol.md +38 -0
- package/assets/reference-configs/harness-overview.md +124 -0
- package/assets/reference-configs/heartbeat-triage.md +57 -0
- package/assets/reference-configs/hook-operations.md +96 -0
- package/assets/reference-configs/release-deploy.md +40 -0
- package/assets/reference-configs/spa-day-protocol.md +14 -0
- package/assets/reference-configs/sprint-contracts.md +89 -0
- package/assets/reference-configs/workflow-orchestration.md +14 -0
- package/assets/skill-hooks.json +41 -0
- package/assets/skill-version.json +189 -0
- package/assets/skills/claude-review/SKILL.md +231 -0
- package/assets/skills/codex-review/SKILL.md +103 -0
- package/assets/templates/AGENTS.md +13 -0
- package/assets/templates/CLAUDE.md +13 -0
- package/assets/templates/architecture.template.md +80 -0
- package/assets/templates/brief.template.md +38 -0
- package/assets/templates/contract.template.md +104 -0
- package/assets/templates/decisions.template.md +85 -0
- package/assets/templates/factor-factory/factor-backtest-report.template.md +36 -0
- package/assets/templates/factor-factory/factor-hypothesis.template.md +30 -0
- package/assets/templates/factor-factory/factor-registry.template.json +5 -0
- package/assets/templates/gitignore.template +53 -0
- package/assets/templates/guides/metro-esm-gotchas.template.md +46 -0
- package/assets/templates/helpers/architecture-event.ts +822 -0
- package/assets/templates/helpers/architecture-queue.sh +647 -0
- package/assets/templates/helpers/archive-architecture-request.sh +244 -0
- package/assets/templates/helpers/archive-workflow.sh +295 -0
- package/assets/templates/helpers/capability-config.ts +394 -0
- package/assets/templates/helpers/capability-resolver.ts +505 -0
- package/assets/templates/helpers/capture-plan.sh +335 -0
- package/assets/templates/helpers/check-agent-tooling.sh +1533 -0
- package/assets/templates/helpers/check-architecture-sync.sh +287 -0
- package/assets/templates/helpers/check-brain-manifest.sh +255 -0
- package/assets/templates/helpers/check-context-files.sh +49 -0
- package/assets/templates/helpers/check-deploy-sql-order.sh +117 -0
- package/assets/templates/helpers/check-skill-version.ts +193 -0
- package/assets/templates/helpers/check-task-sync.sh +65 -0
- package/assets/templates/helpers/check-task-workflow.sh +1002 -0
- package/assets/templates/helpers/codex-handoff-resume.sh +269 -0
- package/assets/templates/helpers/context-contract-sync.sh +516 -0
- package/assets/templates/helpers/contract-run.ts +465 -0
- package/assets/templates/helpers/contract-worktree.sh +725 -0
- package/assets/templates/helpers/ensure-task-workflow.sh +1218 -0
- package/assets/templates/helpers/harness-trace-grade.sh +150 -0
- package/assets/templates/helpers/heartbeat-triage.sh +361 -0
- package/assets/templates/helpers/inspect-project-state.ts +280 -0
- package/assets/templates/helpers/maintenance-triage.sh +167 -0
- package/assets/templates/helpers/migrate-project-template.sh +54 -0
- package/assets/templates/helpers/migrate-workflow-docs.ts +413 -0
- package/assets/templates/helpers/new-plan.sh +183 -0
- package/assets/templates/helpers/new-spec.sh +50 -0
- package/assets/templates/helpers/new-sprint.sh +49 -0
- package/assets/templates/helpers/plan-to-todo.sh +799 -0
- package/assets/templates/helpers/prepare-codex-handoff.sh +203 -0
- package/assets/templates/helpers/prepare-handoff.sh +81 -0
- package/assets/templates/helpers/refresh-current-status.sh +469 -0
- package/assets/templates/helpers/select-agent-context-blocks.sh +66 -0
- package/assets/templates/helpers/ship-worktrees.sh +561 -0
- package/assets/templates/helpers/sprint-backlog.sh +837 -0
- package/assets/templates/helpers/summarize-failures.sh +125 -0
- package/assets/templates/helpers/switch-plan.sh +153 -0
- package/assets/templates/helpers/sync-brain-docs.sh +381 -0
- package/assets/templates/helpers/verify-contract.sh +705 -0
- package/assets/templates/helpers/verify-sprint.sh +680 -0
- package/assets/templates/helpers/workflow-contract.ts +202 -0
- package/assets/templates/helpers/workstream-sync.sh +263 -0
- package/assets/templates/implementation-notes.template.md +37 -0
- package/assets/templates/packages.template.md +45 -0
- package/assets/templates/plan.template.md +77 -0
- package/assets/templates/prd.template.md +165 -0
- package/assets/templates/research.template.md +25 -0
- package/assets/templates/review.template.md +78 -0
- package/assets/templates/spec.template.md +31 -0
- package/assets/templates/sprint.template.md +69 -0
- package/assets/templates/tech-stack.template.md +57 -0
- package/assets/versions.json +77 -0
- package/assets/workflow-contract.v1.json +671 -0
- package/bin/forge-desktop-helper.mjs +204 -0
- package/bin/forge-hook.mjs +32 -0
- package/bin/forge-runtime-service.mjs +34 -0
- package/bin/forge-runtime.mjs +30 -0
- package/bin/forge.mjs +32 -0
- package/docs/CHANGELOG.md +978 -0
- package/docs/README.md +72 -0
- package/docs/README.zh-CN.md +58 -0
- package/docs/architecture/chatgpt-handoff-facade.md +393 -0
- package/docs/architecture/current/README.md +158 -0
- package/docs/architecture/current/approved-target-architecture.zh-CN.md +1501 -0
- package/docs/architecture/current/architecture-invariants.md +331 -0
- package/docs/architecture/current/automation-and-schedule-engine.md +453 -0
- package/docs/architecture/current/codegraph-context-provider.md +226 -0
- package/docs/architecture/current/control-plane-authority-inventory.md +82 -0
- package/docs/architecture/current/controller-repository-decoupling.md +148 -0
- package/docs/architecture/current/dispatch-and-agent-strategy.md +354 -0
- package/docs/architecture/current/entity-model.md +619 -0
- package/docs/architecture/current/external-plugin-governance.md +396 -0
- package/docs/architecture/current/failure-recovery.md +471 -0
- package/docs/architecture/current/governance.md +213 -0
- package/docs/architecture/current/human-interaction-plane.md +87 -0
- package/docs/architecture/current/implementation-status.md +128 -0
- package/docs/architecture/current/job-and-run-lifecycle.md +413 -0
- package/docs/architecture/current/local-workspace-target-grants.md +70 -0
- package/docs/architecture/current/migration-roadmap.md +105 -0
- package/docs/architecture/current/multi-repository-execution.md +371 -0
- package/docs/architecture/current/operations-runbook.md +45 -0
- package/docs/architecture/current/peer-supercontroller-runtime.md +32 -0
- package/docs/architecture/current/personal-assistant-plugin-baseline.md +207 -0
- package/docs/architecture/current/repository-access-modes.md +102 -0
- package/docs/architecture/current/route-policy.md +15 -0
- package/docs/architecture/current/route-session-concurrency.md +85 -0
- package/docs/architecture/current/runtime-architecture-simplification.md +214 -0
- package/docs/architecture/current/runtime-directory-map.md +49 -0
- package/docs/architecture/current/runtime-health-and-resource-lifecycle.md +85 -0
- package/docs/architecture/current/scheduler-and-resource-claims.md +432 -0
- package/docs/architecture/current/session-aware-execution-and-authorization.md +77 -0
- package/docs/architecture/current/system-overview.md +144 -0
- package/docs/architecture/current/target-requirements-traceability.md +202 -0
- package/docs/architecture/current/thin-harness-governance-policy.md +32 -0
- package/docs/architecture/current/thin-harness-v1.md +313 -0
- package/docs/architecture/current/verification-and-release-gates.md +391 -0
- package/docs/architecture/decisions/20260801-controller-home-sqlite-state.md +100 -0
- package/docs/architecture/decisions/20260803-canonical-skill-surface.md +40 -0
- package/docs/architecture/decisions/20260803-release-identity-binding-and-exit-policy.md +53 -0
- package/docs/architecture/diagrams/.gitkeep +1 -0
- package/docs/architecture/diagrams/agentic-dev-plugin-architecture.html +186 -0
- package/docs/architecture/domains/.gitkeep +0 -0
- package/docs/architecture/domains/public-surface.md +30 -0
- package/docs/architecture/domains/runtime-harness.md +33 -0
- package/docs/architecture/domains/verification.md +33 -0
- package/docs/architecture/domains/workflow-engine.md +30 -0
- package/docs/architecture/global-hook-runtime.md +162 -0
- package/docs/architecture/history.md +38 -0
- package/docs/architecture/index.md +114 -0
- package/docs/architecture/ios-semantic-automation-provider-v2.md +166 -0
- package/docs/architecture/modules/.gitkeep +0 -0
- package/docs/architecture/modules/controller-runtime/transport-lifecycle.md +24 -0
- package/docs/architecture/requests/.gitkeep +1 -0
- package/docs/architecture/requests/archive/2026/20260528-154740-ai-hooks-ai-hooks-hook-input-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-154816-assets-hooks-assets-hooks-hook-input-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-161851-ai-harness-workflow-contract-json-ai-harness-workflow-contract-json.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-161853-scripts-check-task-workflow-sh-scripts-check-task-workflow-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-161911-assets-workflow-contract-v1-json-assets-workflow-contract-v1-json.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-222416-ai-hooks-ai-hooks-hook-input-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-222444-ai-hooks-ai-hooks-pre-edit-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-222457-ai-hooks-ai-hooks-pre-edit-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-222648-ai-hooks-ai-hooks-pre-edit-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-222705-ai-hooks-ai-hooks-worktree-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-222726-ai-hooks-ai-hooks-prompt-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-222727-ai-hooks-ai-hooks-prompt-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-224736-ai-hooks-ai-hooks-hook-input-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-233259-ai-hooks-ai-hooks-prompt-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-233335-assets-hooks-assets-hooks-prompt-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-233456-ai-hooks-ai-hooks-prompt-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-233457-assets-hooks-assets-hooks-prompt-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-233637-ai-hooks-ai-hooks-prompt-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260528-233638-assets-hooks-assets-hooks-prompt-guard-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260529-000322-root-package-json.md +59 -0
- package/docs/architecture/requests/archive/2026/20260529-004238-ai-hooks-ai-hooks-lib-workflow-state-sh.md +59 -0
- package/docs/architecture/requests/archive/2026/20260529-020654-ai-harness-policy-json-ai-harness-policy-json.md +63 -0
- package/docs/architecture/requests/archive/2026/20260529-094236-ai-hooks-ai-hooks-prompt-guard-sh.md +60 -0
- package/docs/architecture/requests/archive/2026/20260529-094323-assets-hooks-assets-hooks-prompt-guard-sh.md +60 -0
- package/docs/architecture/requests/archive/2026/20260529-094331-ai-hooks-ai-hooks-prompt-guard-sh.md +60 -0
- package/docs/architecture/requests/archive/2026/20260529-094339-assets-hooks-assets-hooks-prompt-guard-sh.md +60 -0
- package/docs/architecture/requests/archive/2026/20260529-094430-assets-hooks-assets-hooks-session-start-context-sh.md +60 -0
- package/docs/architecture/requests/archive/2026/20260529-094446-ai-hooks-ai-hooks-session-start-context-sh.md +60 -0
- package/docs/architecture/requests/archive/2026/20260613-002040-runtime-harness-hook-adapters.md +68 -0
- package/docs/architecture/requests/archive/2026/root.md +68 -0
- package/docs/architecture/requests/archive/2026/runtime-harness-hook-adapters.md +76 -0
- package/docs/architecture/requests/archive/2026/verification-evals-checks.md +68 -0
- package/docs/architecture/requests/archive/2026/workflow-engine-contract-assets.md +69 -0
- package/docs/architecture/reviews/2026-07-11-access-surface-review.md +99 -0
- package/docs/architecture/snapshots/.gitkeep +1 -0
- package/docs/forge-autonomous-goal-loop.md +7 -0
- package/docs/forge-chatgpt-browser-engine.md +11 -0
- package/docs/forge-chatgpt-mcp-setup.md +239 -0
- package/docs/forge-chatgpt-supervised-automation.md +11 -0
- package/docs/forge-github-issue-launcher.md +7 -0
- package/docs/forge-plugin-management.md +95 -0
- package/docs/forge-provider-configuration.md +7 -0
- package/docs/forge-runtime-self-healing-loop.md +7 -0
- package/docs/images/forge-banner-cn.svg +1 -0
- package/docs/images/forge-banner.svg +1 -0
- package/docs/images/forge-controller-flow.svg +1 -0
- package/docs/images/image.png +0 -0
- package/docs/images/repo-harness-gptpro-cn.png +0 -0
- package/docs/images/repo-harness-gptpro.png +0 -0
- package/docs/images/repo-harness-hook-carrot.png +0 -0
- package/docs/operations/chatgpt-personal-assistant-runtime.md +83 -0
- package/docs/operations/checkout-route-integrity.md +22 -0
- package/docs/operations/controller-browser-plugin.md +299 -0
- package/docs/operations/controller-desktop-plugin.md +112 -0
- package/docs/operations/controller-performance-and-502.md +126 -0
- package/docs/operations/controller-reliability-runbook.md +134 -0
- package/docs/operations/environment-hardening.md +50 -0
- package/docs/operations/features.md +45 -0
- package/docs/operations/features.zh-CN.md +45 -0
- package/docs/operations/github-repository.md +60 -0
- package/docs/operations/gmail-assistant-routines.md +186 -0
- package/docs/operations/homebrew.md +26 -0
- package/docs/operations/local-system-assistant.md +46 -0
- package/docs/operations/local-system-assistant.zh-CN.md +46 -0
- package/docs/operations/mcp-tool-exposure.md +58 -0
- package/docs/operations/mobile-intents-shortcuts.md +117 -0
- package/docs/operations/open-source-release-hygiene.md +31 -0
- package/docs/operations/personal-assistant-operator-guide.md +61 -0
- package/docs/operations/platform-support.md +62 -0
- package/docs/operations/platform-support.zh-CN.md +61 -0
- package/docs/operations/provider-configuration.md +31 -0
- package/docs/operations/releasing.md +86 -0
- package/docs/operations/releasing.zh-CN.md +86 -0
- package/docs/operations/route-session-concurrency-baseline.json +893 -0
- package/docs/operations/route-session-concurrency-baseline.md +94 -0
- package/docs/operations/runtime-performance-diagnostics.md +14 -0
- package/docs/operations/sqlite-control-plane-recovery.md +65 -0
- package/docs/operations/standalone-disaster-recovery.md +136 -0
- package/docs/operations/troubleshooting.md +72 -0
- package/docs/operations/troubleshooting.zh-CN.md +70 -0
- package/docs/public-usage-guide.md +33 -0
- package/docs/public-usage-guide.zh-CN.md +33 -0
- package/docs/tutorials/01-install-and-start.md +93 -0
- package/docs/tutorials/01-install-and-start.zh-CN.md +93 -0
- package/docs/tutorials/02-connect-chatgpt.md +82 -0
- package/docs/tutorials/02-connect-chatgpt.zh-CN.md +80 -0
- package/docs/tutorials/03-first-repository-task.md +57 -0
- package/docs/tutorials/03-first-repository-task.zh-CN.md +57 -0
- package/docs/tutorials/README.md +13 -0
- package/docs/tutorials/README.zh-CN.md +13 -0
- package/docs/wiki/Architecture.md +85 -0
- package/docs/wiki/Core-Concepts.md +27 -0
- package/docs/wiki/Home.md +36 -0
- package/docs/wiki/Implementation.md +172 -0
- package/docs/wiki/Installation.md +50 -0
- package/docs/wiki/Integrations.md +29 -0
- package/docs/wiki/Operations.md +26 -0
- package/docs/wiki/Quick-Start.md +46 -0
- package/docs/wiki/Releases-and-Upgrades.md +34 -0
- package/docs/wiki/Runtime-Architecture.md +50 -0
- package/docs/wiki/Security-Model.md +31 -0
- package/docs/wiki/Troubleshooting.md +38 -0
- package/docs/wiki/Work-Lifecycle.md +31 -0
- package/docs/wiki/_Sidebar.md +21 -0
- package/install.ps1 +48 -0
- package/install.sh +66 -0
- package/package.json +156 -0
- package/scripts/activate-source-baseline.ts +335 -0
- package/scripts/architecture-event.ts +822 -0
- package/scripts/architecture-queue.sh +647 -0
- package/scripts/archive-architecture-request.sh +244 -0
- package/scripts/archive-workflow.sh +295 -0
- package/scripts/assemble-template.ts +1172 -0
- package/scripts/benchmark-controller-hotpath.ts +212 -0
- package/scripts/benchmark-controller-round2.ts +139 -0
- package/scripts/benchmark-ios-agent-device.ts +514 -0
- package/scripts/benchmark-route-session-concurrency.ts +714 -0
- package/scripts/benchmark-thin-harness-gateway-ab.ts +632 -0
- package/scripts/benchmark-thin-harness-mcp-e2e.ts +479 -0
- package/scripts/benchmark-thin-harness.ts +251 -0
- package/scripts/bootstrap-runtime-maintenance-recovery.sh +183 -0
- package/scripts/canary-global-hook.sh +263 -0
- package/scripts/capability-config.ts +394 -0
- package/scripts/capability-resolver.ts +505 -0
- package/scripts/capture-plan.sh +335 -0
- package/scripts/check-agent-tooling.sh +1549 -0
- package/scripts/check-architecture-sync.sh +373 -0
- package/scripts/check-brain-manifest.sh +255 -0
- package/scripts/check-ci.sh +16 -0
- package/scripts/check-context-files.sh +49 -0
- package/scripts/check-deploy-sql-order.sh +117 -0
- package/scripts/check-mcp-compatibility.ts +93 -0
- package/scripts/check-npm-release.sh +32 -0
- package/scripts/check-open-source-tracked-surface.sh +146 -0
- package/scripts/check-package-identity.mjs +117 -0
- package/scripts/check-platform-support.mjs +79 -0
- package/scripts/check-public-docs.sh +105 -0
- package/scripts/check-public-release-surface.sh +19 -0
- package/scripts/check-release-published.sh +57 -0
- package/scripts/check-release-readiness.sh +43 -0
- package/scripts/check-release-version.mjs +74 -0
- package/scripts/check-runtime-architecture.mjs +593 -0
- package/scripts/check-runtime-env.mjs +89 -0
- package/scripts/check-skill-version.ts +193 -0
- package/scripts/check-tarball-install-smoke.sh +66 -0
- package/scripts/check-task-sync.sh +65 -0
- package/scripts/check-task-workflow.sh +1002 -0
- package/scripts/check-third-party-notices.mjs +36 -0
- package/scripts/codex-handoff-resume.sh +269 -0
- package/scripts/complete-control-plane-cutover.ts +126 -0
- package/scripts/context-contract-sync.sh +516 -0
- package/scripts/contract-run.ts +465 -0
- package/scripts/contract-worktree.sh +725 -0
- package/scripts/controller-ngrok-rotation.sh +678 -0
- package/scripts/create-project-dirs.sh +282 -0
- package/scripts/ensure-codegraph.sh +16 -0
- package/scripts/ensure-task-workflow.sh +1218 -0
- package/scripts/export-requirement-portfolio.ts +28 -0
- package/scripts/factor-lab-check.sh +73 -0
- package/scripts/factor-lab-new.sh +96 -0
- package/scripts/factor-lab-promote.sh +86 -0
- package/scripts/factor-lab-reject.sh +68 -0
- package/scripts/harness-trace-grade.sh +150 -0
- package/scripts/heartbeat-triage.sh +361 -0
- package/scripts/hook-dispatch-diet-report.ts +234 -0
- package/scripts/hook-shim.sh +93 -0
- package/scripts/init-project.sh +505 -0
- package/scripts/initializer-question-pack.ts +200 -0
- package/scripts/inspect-project-state.ts +280 -0
- package/scripts/install-desktop-operator-registration.ts +45 -0
- package/scripts/install-standalone-recovery.ts +74 -0
- package/scripts/lib/AGENTS.md +13 -0
- package/scripts/lib/CLAUDE.md +13 -0
- package/scripts/lib/controller-home-env.sh +69 -0
- package/scripts/lib/project-init-lib.sh +2759 -0
- package/scripts/load-standalone-recovery.sh +17 -0
- package/scripts/loop-engine-cutover-gate.ts +324 -0
- package/scripts/maintenance-triage.sh +167 -0
- package/scripts/migrate-project-template.sh +1189 -0
- package/scripts/migrate-requirement-portfolio.ts +86 -0
- package/scripts/migrate-workflow-docs.ts +413 -0
- package/scripts/new-plan.sh +183 -0
- package/scripts/new-spec.sh +50 -0
- package/scripts/new-sprint.sh +49 -0
- package/scripts/open-source-audit-allowlist.txt +46 -0
- package/scripts/package-source-archive.sh +147 -0
- package/scripts/plan-to-todo.sh +799 -0
- package/scripts/prepare-codex-handoff.sh +203 -0
- package/scripts/prepare-handoff.sh +81 -0
- package/scripts/public-release-files.txt +39 -0
- package/scripts/public-release.ts +174 -0
- package/scripts/publish-release-tarball.sh +27 -0
- package/scripts/refresh-current-status.sh +469 -0
- package/scripts/refresh-ios-physical-runtime.ts +196 -0
- package/scripts/repair-executable-modes.ts +8 -0
- package/scripts/rollout-all-registered-repos.sh +7 -0
- package/scripts/route-nl-vs-ts-eval.ts +679 -0
- package/scripts/run-bun-test-file.ts +182 -0
- package/scripts/run-governed-gate.ts +140 -0
- package/scripts/run-mobile-monitor-bridge.ts +71 -0
- package/scripts/run-skill-evals.ts +1022 -0
- package/scripts/run-skill-hook.ts +244 -0
- package/scripts/run-supervised-command.ts +24 -0
- package/scripts/run-tests-portable.sh +20 -0
- package/scripts/select-agent-context-blocks.sh +66 -0
- package/scripts/setup-plugins.sh +43 -0
- package/scripts/ship-worktrees.sh +561 -0
- package/scripts/smoke-browser-cdp-bridge.ts +93 -0
- package/scripts/smoke-chatgpt-supervised-automation.ts +208 -0
- package/scripts/smoke-ios-physical-device.ts +114 -0
- package/scripts/smoke-mcp-http-runtime.ts +216 -0
- package/scripts/smoke-mcp-tool-surface.ts +117 -0
- package/scripts/smoke-runtime-recovery.ts +220 -0
- package/scripts/smoke-schedule-engine.ts +283 -0
- package/scripts/sprint-backlog.sh +837 -0
- package/scripts/stage-runtime-release.ts +38 -0
- package/scripts/summarize-failures.sh +125 -0
- package/scripts/switch-plan.sh +153 -0
- package/scripts/sync-brain-docs.sh +381 -0
- package/scripts/sync-codex-installed-copies.sh +183 -0
- package/scripts/test-governance.ts +75 -0
- package/scripts/verify-contract.sh +705 -0
- package/scripts/verify-forge-runtime.sh +31 -0
- package/scripts/verify-sprint.sh +680 -0
- package/scripts/windows-paths.d.mts +7 -0
- package/scripts/windows-paths.mjs +28 -0
- package/scripts/workflow-contract.ts +206 -0
- package/scripts/workstream-sync.sh +263 -0
- package/src/cli/agent-jobs/executable-resolver.ts +289 -0
- package/src/cli/agent-jobs/executor-health.ts +252 -0
- package/src/cli/agent-jobs/integration.ts +963 -0
- package/src/cli/agent-jobs/job-manager.ts +2030 -0
- package/src/cli/agent-jobs/types.ts +219 -0
- package/src/cli/agent-jobs/worker-lifecycle.ts +288 -0
- package/src/cli/chatgpt-browser/bind-server.ts +504 -0
- package/src/cli/chatgpt-browser/binding.ts +140 -0
- package/src/cli/chatgpt-browser/bridge-extension.ts +221 -0
- package/src/cli/chatgpt-browser/bridge-provider.ts +268 -0
- package/src/cli/chatgpt-browser/engine.ts +569 -0
- package/src/cli/chatgpt-browser/file-policy.ts +158 -0
- package/src/cli/chatgpt-browser/native-provider.ts +553 -0
- package/src/cli/chatgpt-browser/oracle-provider.ts +437 -0
- package/src/cli/chatgpt-browser/prompt-assembler.ts +29 -0
- package/src/cli/chatgpt-browser/session-store.ts +301 -0
- package/src/cli/chatgpt-browser/types.ts +172 -0
- package/src/cli/commands/adopt-plan.ts +186 -0
- package/src/cli/commands/brain-root.ts +132 -0
- package/src/cli/commands/brain.ts +609 -0
- package/src/cli/commands/capability-context.ts +613 -0
- package/src/cli/commands/chatgpt.ts +424 -0
- package/src/cli/commands/controller.ts +680 -0
- package/src/cli/commands/docs.ts +103 -0
- package/src/cli/commands/doctor.ts +476 -0
- package/src/cli/commands/global-runtime.ts +323 -0
- package/src/cli/commands/hook.ts +34 -0
- package/src/cli/commands/init-hook.ts +870 -0
- package/src/cli/commands/init.ts +829 -0
- package/src/cli/commands/install.ts +86 -0
- package/src/cli/commands/mcp.ts +315 -0
- package/src/cli/commands/migrate.ts +154 -0
- package/src/cli/commands/plugin.ts +74 -0
- package/src/cli/commands/prompt-guard-decision.ts +238 -0
- package/src/cli/commands/recovery.ts +667 -0
- package/src/cli/commands/repository.ts +224 -0
- package/src/cli/commands/run.ts +23 -0
- package/src/cli/commands/runtime.ts +191 -0
- package/src/cli/commands/security.ts +440 -0
- package/src/cli/commands/status.ts +137 -0
- package/src/cli/commands/tools.ts +167 -0
- package/src/cli/controller/check-runner.ts +1022 -0
- package/src/cli/controller/codex-continuation.ts +153 -0
- package/src/cli/controller/completion-backlog.ts +380 -0
- package/src/cli/controller/completion-orchestrator.ts +1807 -0
- package/src/cli/controller/completion-target.ts +96 -0
- package/src/cli/controller/composite-operations.ts +196 -0
- package/src/cli/controller/composite-result.ts +130 -0
- package/src/cli/controller/context-pack.ts +652 -0
- package/src/cli/controller/execution-completion.ts +175 -0
- package/src/cli/controller/execution-policy.ts +392 -0
- package/src/cli/controller/governance.ts +594 -0
- package/src/cli/controller/issue-store.ts +1421 -0
- package/src/cli/controller/launch-agents.ts +410 -0
- package/src/cli/controller/legacy-issue-cutover.ts +415 -0
- package/src/cli/controller/lifecycle-authority.ts +16 -0
- package/src/cli/controller/migrated-issue-decision.ts +237 -0
- package/src/cli/controller/operational-plan.ts +226 -0
- package/src/cli/controller/postcondition.ts +134 -0
- package/src/cli/controller/progress.ts +656 -0
- package/src/cli/controller/project-state.ts +147 -0
- package/src/cli/controller/requirement-portfolio-export.ts +146 -0
- package/src/cli/controller/requirement-portfolio-migration.ts +613 -0
- package/src/cli/controller/run-evidence.ts +43 -0
- package/src/cli/controller/runtime-config.ts +92 -0
- package/src/cli/controller/stuck-state-migration.ts +396 -0
- package/src/cli/controller/task-ledger.ts +632 -0
- package/src/cli/controller/task-status-resolver.ts +403 -0
- package/src/cli/controller/types.ts +273 -0
- package/src/cli/controller/work-mode.ts +186 -0
- package/src/cli/controller/worklog.ts +201 -0
- package/src/cli/diagnostic-entry.ts +39 -0
- package/src/cli/editing/edit-session.ts +1606 -0
- package/src/cli/editing/executable-modes.ts +70 -0
- package/src/cli/github/github.ts +274 -0
- package/src/cli/github/plugin.ts +345 -0
- package/src/cli/github/session.ts +104 -0
- package/src/cli/hook/prompt-guard-decision.ts +238 -0
- package/src/cli/hook/prompt-intents.ts +534 -0
- package/src/cli/hook/route-registry.ts +107 -0
- package/src/cli/hook/runtime.ts +303 -0
- package/src/cli/hook/state-snapshot.ts +388 -0
- package/src/cli/hook-entry.ts +51 -0
- package/src/cli/index.ts +574 -0
- package/src/cli/installer/managed-entries.ts +78 -0
- package/src/cli/installer/shared.ts +65 -0
- package/src/cli/installer/targets/claude.ts +136 -0
- package/src/cli/installer/targets/codex.ts +174 -0
- package/src/cli/installer/targets/registry.ts +28 -0
- package/src/cli/installer/types.ts +72 -0
- package/src/cli/local-bridge/connector-freshness.ts +529 -0
- package/src/cli/local-bridge/console-view-models.ts +324 -0
- package/src/cli/local-bridge/dashboard.ts +1312 -0
- package/src/cli/local-bridge/facade-api.ts +1877 -0
- package/src/cli/local-bridge/job-store.ts +1451 -0
- package/src/cli/local-bridge/mobile-intents.ts +344 -0
- package/src/cli/local-bridge/mobile-monitor.ts +209 -0
- package/src/cli/local-bridge/server.ts +3183 -0
- package/src/cli/local-bridge/types.ts +176 -0
- package/src/cli/mcp/access-mode.ts +132 -0
- package/src/cli/mcp/access-tools.ts +387 -0
- package/src/cli/mcp/audit.ts +32 -0
- package/src/cli/mcp/auth.ts +402 -0
- package/src/cli/mcp/instructions.ts +33 -0
- package/src/cli/mcp/legacy-context.ts +16 -0
- package/src/cli/mcp/legacy-tool-service.ts +5516 -0
- package/src/cli/mcp/multi-repository.ts +423 -0
- package/src/cli/mcp/oauth.ts +226 -0
- package/src/cli/mcp/paths.ts +134 -0
- package/src/cli/mcp/policy.ts +230 -0
- package/src/cli/mcp/proxy-env.ts +62 -0
- package/src/cli/mcp/readiness-projection.ts +24 -0
- package/src/cli/mcp/redaction.ts +21 -0
- package/src/cli/mcp/repo.ts +24 -0
- package/src/cli/mcp/repository-tools.ts +1295 -0
- package/src/cli/mcp/server.ts +341 -0
- package/src/cli/mcp/setup.ts +793 -0
- package/src/cli/mcp/tool-capability-cache.ts +87 -0
- package/src/cli/mcp/tools.ts +9 -0
- package/src/cli/mcp/toolset-names.ts +70 -0
- package/src/cli/mcp/toolset-selection.ts +41 -0
- package/src/cli/mcp/toolset.ts +300 -0
- package/src/cli/mcp/transports/AGENTS.md +39 -0
- package/src/cli/mcp/transports/CLAUDE.md +39 -0
- package/src/cli/mcp/transports/http.ts +1234 -0
- package/src/cli/mcp/transports/session-registry.ts +428 -0
- package/src/cli/mcp/transports/stdio.ts +8 -0
- package/src/cli/mcp/types.ts +41 -0
- package/src/cli/mcp/umbrella-tools.ts +117 -0
- package/src/cli/repo-adoption/reclaim-runtime.ts +681 -0
- package/src/cli/repositories/branch-name-policy.ts +57 -0
- package/src/cli/repositories/command-classifier.ts +600 -0
- package/src/cli/repositories/command-executor.ts +1066 -0
- package/src/cli/repositories/command-normalization.ts +53 -0
- package/src/cli/repositories/command-scope.ts +264 -0
- package/src/cli/repositories/controller-home.ts +88 -0
- package/src/cli/repositories/entity-migration.ts +199 -0
- package/src/cli/repositories/ephemeral-workspace.ts +62 -0
- package/src/cli/repositories/git-command-executor.ts +301 -0
- package/src/cli/repositories/goal-registry.ts +239 -0
- package/src/cli/repositories/identity.ts +64 -0
- package/src/cli/repositories/local-project-onboarding.ts +539 -0
- package/src/cli/repositories/locks.ts +262 -0
- package/src/cli/repositories/registry.ts +1057 -0
- package/src/cli/repositories/runtime-storage.ts +411 -0
- package/src/cli/repositories/safe-patch.ts +421 -0
- package/src/cli/repositories/selected-path-actions.ts +341 -0
- package/src/cli/repositories/structured-git.ts +257 -0
- package/src/cli/repositories/types.ts +155 -0
- package/src/cli/repositories/umbrella.ts +134 -0
- package/src/cli/repositories/workbench.ts +140 -0
- package/src/cli/repositories/worktree-storage.ts +137 -0
- package/src/cli/repository/inspector.ts +637 -0
- package/src/cli/repository/session-cache.ts +453 -0
- package/src/cli/runtime/helper-runner.ts +172 -0
- package/src/cli/runtime-invocation.ts +318 -0
- package/src/cli/tools/codegraph.ts +676 -0
- package/src/cli/v81-entry.ts +29 -0
- package/src/core/adoption/gitignore-plan.ts +127 -0
- package/src/core/adoption/helper-wrapper-plan.ts +159 -0
- package/src/core/adoption/manifest-templates.ts +60 -0
- package/src/core/adoption/modes.ts +7 -0
- package/src/core/adoption/operations.ts +126 -0
- package/src/core/adoption/plan.ts +149 -0
- package/src/core/adoption/render.ts +70 -0
- package/src/core/adoption/rollback.ts +62 -0
- package/src/core/adoption/summary.ts +43 -0
- package/src/core/adoption/workflow-contract-asset.ts +14 -0
- package/src/core/adoption/workflow-contract-plan.ts +31 -0
- package/src/effects/fs-transaction.ts +540 -0
- package/src/effects/git-executable.ts +59 -0
- package/src/effects/managed-block.ts +86 -0
- package/src/effects/path-safety.ts +47 -0
- package/src/effects/process-runner.ts +192 -0
- package/src/runtime/assistant/action-proposals.ts +279 -0
- package/src/runtime/assistant/intent.ts +395 -0
- package/src/runtime/assistant/model-provider.ts +460 -0
- package/src/runtime/assistant/openapi.ts +223 -0
- package/src/runtime/assistant/policy.ts +89 -0
- package/src/runtime/assistant/readiness.ts +258 -0
- package/src/runtime/assistant/routine-runtime.ts +477 -0
- package/src/runtime/assistant/schedule-binding.ts +171 -0
- package/src/runtime/assistant/standing-grants.ts +375 -0
- package/src/runtime/assistant/store.ts +243 -0
- package/src/runtime/assistant/types.ts +135 -0
- package/src/runtime/context/codegraph-read-provider.ts +347 -0
- package/src/runtime/context/codegraph-sidecar.cjs +207 -0
- package/src/runtime/control-plane/dispatch-priority.ts +67 -0
- package/src/runtime/control-plane/execution/direct-edit-work-completion.ts +151 -0
- package/src/runtime/control-plane/execution/execution-identity.ts +456 -0
- package/src/runtime/control-plane/execution/session-store.ts +175 -0
- package/src/runtime/control-plane/execution/validation.ts +117 -0
- package/src/runtime/control-plane/execution/verification-evidence.ts +191 -0
- package/src/runtime/control-plane/execution/work-handle-store.ts +225 -0
- package/src/runtime/control-plane/execution/work-prepare-request-store.ts +159 -0
- package/src/runtime/control-plane/execution/work-task-receipt.ts +445 -0
- package/src/runtime/control-plane/execution/work-terminal-cleanup.ts +821 -0
- package/src/runtime/control-plane/facade/capability-registry.ts +279 -0
- package/src/runtime/control-plane/facade/check-normalization.ts +233 -0
- package/src/runtime/control-plane/facade/codex-delegation.ts +196 -0
- package/src/runtime/control-plane/facade/controller-session-store.ts +199 -0
- package/src/runtime/control-plane/facade/facade-result.ts +41 -0
- package/src/runtime/control-plane/facade/goal-workloop-access.ts +177 -0
- package/src/runtime/control-plane/facade/goal-workloop.ts +1216 -0
- package/src/runtime/control-plane/facade/handoff-inbox-store.ts +221 -0
- package/src/runtime/control-plane/facade/index.ts +16 -0
- package/src/runtime/control-plane/facade/operation-digest.ts +528 -0
- package/src/runtime/control-plane/facade/plan-contract-store.ts +403 -0
- package/src/runtime/control-plane/facade/policy-gate.ts +149 -0
- package/src/runtime/control-plane/facade/requirement-board.ts +280 -0
- package/src/runtime/control-plane/facade/self-healing-loop.ts +555 -0
- package/src/runtime/control-plane/facade/suggested-actions.ts +108 -0
- package/src/runtime/control-plane/facade/types.ts +729 -0
- package/src/runtime/control-plane/facade/work-admission-policy.ts +93 -0
- package/src/runtime/control-plane/facade/work-continuation.ts +104 -0
- package/src/runtime/control-plane/facade/work-contract-store.ts +1118 -0
- package/src/runtime/control-plane/facade/work-task-projection.ts +66 -0
- package/src/runtime/control-plane/global-scheduler/reconciliation.ts +365 -0
- package/src/runtime/control-plane/global-scheduler/scheduler.ts +920 -0
- package/src/runtime/control-plane/global-scheduler/wake-signal.ts +89 -0
- package/src/runtime/control-plane/goal-loop/config-facade.ts +700 -0
- package/src/runtime/control-plane/goal-loop/config-store.ts +570 -0
- package/src/runtime/control-plane/goal-loop/config-types.ts +213 -0
- package/src/runtime/control-plane/goal-loop/executor-router.ts +109 -0
- package/src/runtime/control-plane/goal-loop/failure-taxonomy.ts +149 -0
- package/src/runtime/control-plane/goal-loop/goal-contract-store.ts +304 -0
- package/src/runtime/control-plane/goal-loop/goal-loop-engine.ts +1001 -0
- package/src/runtime/control-plane/goal-loop/handoff-packet.ts +160 -0
- package/src/runtime/control-plane/goal-loop/index.ts +13 -0
- package/src/runtime/control-plane/goal-loop/local-tools.ts +290 -0
- package/src/runtime/control-plane/goal-loop/policy-gates.ts +203 -0
- package/src/runtime/control-plane/goal-loop/provider-dispatch.ts +93 -0
- package/src/runtime/control-plane/goal-loop/provider-registry.ts +545 -0
- package/src/runtime/control-plane/goal-loop/types.ts +378 -0
- package/src/runtime/control-plane/governance/access-policy.ts +147 -0
- package/src/runtime/control-plane/governance/authorization.ts +195 -0
- package/src/runtime/control-plane/governance/external-effects.ts +43 -0
- package/src/runtime/control-plane/launcher/thin-launcher.ts +97 -0
- package/src/runtime/control-plane/persistence/metadata-payload-policy.ts +53 -0
- package/src/runtime/control-plane/persistence/requirement-store.ts +241 -0
- package/src/runtime/control-plane/persistence/sqlite-store.ts +539 -0
- package/src/runtime/control-plane/release-retention.ts +447 -0
- package/src/runtime/control-plane/repo-actor/actor.ts +181 -0
- package/src/runtime/control-plane/repo-actor/registry.ts +20 -0
- package/src/runtime/control-plane/routing/index.ts +1 -0
- package/src/runtime/control-plane/routing/route-policy.ts +379 -0
- package/src/runtime/control-plane/runtime-cleanup.ts +727 -0
- package/src/runtime/control-plane/runtime-generation.ts +509 -0
- package/src/runtime/control-plane/runtime-pid-ownership.ts +11 -0
- package/src/runtime/control-plane/runtime-status-client.ts +90 -0
- package/src/runtime/control-plane/startup-recovery.ts +198 -0
- package/src/runtime/diagnostics/connectivity-observability.ts +475 -0
- package/src/runtime/diagnostics/mcp-timing.ts +64 -0
- package/src/runtime/diagnostics/performance.ts +379 -0
- package/src/runtime/diagnostics/process-facade.ts +350 -0
- package/src/runtime/diagnostics/read-only-tool.ts +226 -0
- package/src/runtime/evidence/artifact-store.ts +154 -0
- package/src/runtime/evidence/event-ledger.ts +80 -0
- package/src/runtime/evidence/evidence-store.ts +68 -0
- package/src/runtime/evidence/process-check-receipt.ts +43 -0
- package/src/runtime/evidence/result-store.ts +209 -0
- package/src/runtime/evidence/sensitive-output.ts +353 -0
- package/src/runtime/execution/jobs/child-reference.ts +124 -0
- package/src/runtime/execution/jobs/legacy-adapter.ts +22 -0
- package/src/runtime/execution/jobs/receipt-recovery.ts +119 -0
- package/src/runtime/execution/jobs/receipt-store.ts +243 -0
- package/src/runtime/execution/jobs/store.ts +737 -0
- package/src/runtime/execution/jobs/timeouts.ts +109 -0
- package/src/runtime/execution/jobs/types.ts +230 -0
- package/src/runtime/execution/jobs/wait.ts +45 -0
- package/src/runtime/execution/process-runtime/canary.ts +26 -0
- package/src/runtime/execution/process-runtime/check-facade.ts +272 -0
- package/src/runtime/execution/process-runtime/check-receipt.ts +185 -0
- package/src/runtime/execution/process-runtime/check-runner-sidecar.ts +60 -0
- package/src/runtime/execution/process-runtime/command-facade.ts +321 -0
- package/src/runtime/execution/process-runtime/gc.ts +171 -0
- package/src/runtime/execution/process-runtime/index.ts +9 -0
- package/src/runtime/execution/process-runtime/interactive-admission.ts +23 -0
- package/src/runtime/execution/process-runtime/process-runner-entry.ts +466 -0
- package/src/runtime/execution/process-runtime/resource-claims.ts +440 -0
- package/src/runtime/execution/process-runtime/runtime.ts +1816 -0
- package/src/runtime/execution/process-runtime/store.ts +687 -0
- package/src/runtime/execution/process-runtime/types.ts +352 -0
- package/src/runtime/execution/thin-harness/async-process.ts +181 -0
- package/src/runtime/execution/thin-harness/batch-executor.ts +671 -0
- package/src/runtime/execution/thin-harness/execution-router.ts +700 -0
- package/src/runtime/execution/thin-harness/fast-executor.ts +1263 -0
- package/src/runtime/execution/thin-harness/fast-receipt.ts +235 -0
- package/src/runtime/execution/thin-harness/fingerprint-worker.ts +191 -0
- package/src/runtime/execution/thin-harness/index.ts +13 -0
- package/src/runtime/execution/thin-harness/latency-trace.ts +107 -0
- package/src/runtime/execution/thin-harness/lightweight-lanes.ts +745 -0
- package/src/runtime/execution/thin-harness/mutation-gate.ts +578 -0
- package/src/runtime/execution/thin-harness/proposal-store.ts +409 -0
- package/src/runtime/execution/thin-harness/request-ledger.ts +595 -0
- package/src/runtime/execution/thin-harness/search-worker.ts +114 -0
- package/src/runtime/execution/thin-harness/types.ts +313 -0
- package/src/runtime/execution/thin-harness/workspace-savepoint.ts +333 -0
- package/src/runtime/execution/workers/executor.ts +687 -0
- package/src/runtime/execution/workers/ownership.ts +94 -0
- package/src/runtime/execution/workers/worker-entry.ts +277 -0
- package/src/runtime/gateway/mcp/execution-tools.ts +2009 -0
- package/src/runtime/gateway/mcp/persisted-check-process.ts +255 -0
- package/src/runtime/gateway/mcp/process-tools.ts +230 -0
- package/src/runtime/gateway/mcp/resource-policy.ts +195 -0
- package/src/runtime/gateway/mcp/router.ts +1088 -0
- package/src/runtime/gateway/mcp/runtime-tools.ts +5994 -0
- package/src/runtime/gateway/mcp/work-validation-reconciler.ts +219 -0
- package/src/runtime/health/evaluator.ts +474 -0
- package/src/runtime/health/index.ts +2 -0
- package/src/runtime/health/operational-view.ts +198 -0
- package/src/runtime/maintenance/cleanup.ts +419 -0
- package/src/runtime/model-clients/deepseek-adapter.ts +312 -0
- package/src/runtime/model-clients/index.ts +2 -0
- package/src/runtime/model-clients/types.ts +101 -0
- package/src/runtime/observability/gateway-contention-metrics.ts +129 -0
- package/src/runtime/observability/route-session-benchmark.ts +110 -0
- package/src/runtime/personal-assistant/gmail-triage-manager.ts +231 -0
- package/src/runtime/personal-assistant/reporting-runtime.ts +344 -0
- package/src/runtime/personal-assistant/triage-runtime.ts +748 -0
- package/src/runtime/plugins/app-store-connect-adapter.ts +868 -0
- package/src/runtime/plugins/browser-adapter.ts +2812 -0
- package/src/runtime/plugins/browser-automation-service.ts +46 -0
- package/src/runtime/plugins/browser-handoff-host.ts +304 -0
- package/src/runtime/plugins/browser-handoff.ts +371 -0
- package/src/runtime/plugins/browser-macos-bridge.ts +865 -0
- package/src/runtime/plugins/browser-node-bridge-host.ts +64 -0
- package/src/runtime/plugins/browser-node-bridge.ts +249 -0
- package/src/runtime/plugins/desktop-adapter.ts +374 -0
- package/src/runtime/plugins/desktop-operator-registration.ts +418 -0
- package/src/runtime/plugins/errors.ts +39 -0
- package/src/runtime/plugins/execution-origin.ts +26 -0
- package/src/runtime/plugins/external-adapter.ts +322 -0
- package/src/runtime/plugins/external-registration.ts +308 -0
- package/src/runtime/plugins/external-unix-socket-probe.cjs +79 -0
- package/src/runtime/plugins/external-unix-socket.ts +238 -0
- package/src/runtime/plugins/first-party-registry.ts +37 -0
- package/src/runtime/plugins/github-adapter.ts +266 -0
- package/src/runtime/plugins/gmail-adapter.ts +729 -0
- package/src/runtime/plugins/google-calendar-adapter.ts +468 -0
- package/src/runtime/plugins/google-shared.ts +578 -0
- package/src/runtime/plugins/google-tasks-adapter.ts +535 -0
- package/src/runtime/plugins/interaction-session.ts +252 -0
- package/src/runtime/plugins/ios/agent-device-capabilities.ts +258 -0
- package/src/runtime/plugins/ios/agent-device-failures.ts +95 -0
- package/src/runtime/plugins/ios/agent-device-provider.ts +63 -0
- package/src/runtime/plugins/ios/agent-device-typed-provider.ts +268 -0
- package/src/runtime/plugins/ios/app-adapters.ts +122 -0
- package/src/runtime/plugins/ios-adapter.ts +509 -0
- package/src/runtime/plugins/ios-agent-device.ts +2311 -0
- package/src/runtime/plugins/ios-physical-device.ts +955 -0
- package/src/runtime/plugins/local-system-adapter.ts +1016 -0
- package/src/runtime/plugins/macos-capability-broker.ts +73 -0
- package/src/runtime/plugins/managed-process-adapter.ts +366 -0
- package/src/runtime/plugins/resend-adapter.ts +506 -0
- package/src/runtime/plugins/store.ts +1025 -0
- package/src/runtime/plugins/types.ts +138 -0
- package/src/runtime/projections/controller-context.ts +596 -0
- package/src/runtime/projections/git-status-sampler.ts +84 -0
- package/src/runtime/projections/invalidation.ts +250 -0
- package/src/runtime/projections/materialized-view.ts +694 -0
- package/src/runtime/recovery/actions.ts +158 -0
- package/src/runtime/recovery/audit.ts +38 -0
- package/src/runtime/recovery/classifier.ts +163 -0
- package/src/runtime/recovery/index.ts +9 -0
- package/src/runtime/recovery/local-jobs-repair.ts +393 -0
- package/src/runtime/recovery/maintenance-executor.ts +822 -0
- package/src/runtime/recovery/patch-handoff.ts +50 -0
- package/src/runtime/recovery/probe.ts +308 -0
- package/src/runtime/recovery/store.ts +35 -0
- package/src/runtime/recovery/types.ts +175 -0
- package/src/runtime/release/identity.ts +101 -0
- package/src/runtime/release/release-gate.ts +137 -0
- package/src/runtime/resources/claims/conflicts.ts +205 -0
- package/src/runtime/resources/index.ts +1 -0
- package/src/runtime/resources/leases/store.ts +539 -0
- package/src/runtime/resources/leases/types.ts +50 -0
- package/src/runtime/resources/ownership.ts +72 -0
- package/src/runtime/root/controller-services.ts +42 -0
- package/src/runtime/root/entry.ts +70 -0
- package/src/runtime/root/gateway-adapter.ts +46 -0
- package/src/runtime/root/local-bridge.ts +72 -0
- package/src/runtime/root/mcp-transport.ts +198 -0
- package/src/runtime/root/ownership.ts +94 -0
- package/src/runtime/root/readiness.ts +69 -0
- package/src/runtime/root/release-manifest.ts +147 -0
- package/src/runtime/root/release-materialize.ts +509 -0
- package/src/runtime/root/release-store.ts +236 -0
- package/src/runtime/root/runtime.ts +318 -0
- package/src/runtime/root/scheduler.ts +58 -0
- package/src/runtime/root/service-runner-entry.ts +20 -0
- package/src/runtime/root/service-runner.ts +69 -0
- package/src/runtime/root/service.ts +291 -0
- package/src/runtime/root/status.ts +127 -0
- package/src/runtime/root/types.ts +112 -0
- package/src/runtime/root/write-fence.ts +309 -0
- package/src/runtime/safe-tooling/browser-safe.ts +133 -0
- package/src/runtime/safe-tooling/external-filesystem.ts +304 -0
- package/src/runtime/safe-tooling/google-credential-store.ts +95 -0
- package/src/runtime/safe-tooling/google-oauth-broker.ts +286 -0
- package/src/runtime/safe-tooling/index.ts +11 -0
- package/src/runtime/safe-tooling/ios-development.ts +1039 -0
- package/src/runtime/safe-tooling/job-summary.ts +361 -0
- package/src/runtime/safe-tooling/plugin-summary.ts +53 -0
- package/src/runtime/safe-tooling/resend-oauth.ts +387 -0
- package/src/runtime/safe-tooling/review-artifacts.ts +133 -0
- package/src/runtime/safe-tooling/types.ts +103 -0
- package/src/runtime/safe-tooling/workspace-auth.ts +116 -0
- package/src/runtime/shared/bounded-child-supervisor.ts +235 -0
- package/src/runtime/shared/idempotent-retry.ts +128 -0
- package/src/runtime/shared/json-files.ts +43 -0
- package/src/runtime/shared/local-bridge-surface.ts +231 -0
- package/src/runtime/shared/managed-env.ts +154 -0
- package/src/runtime/shared/node-ts-loader.mjs +50 -0
- package/src/runtime/shared/process-environment.ts +97 -0
- package/src/runtime/shared/process-identity.ts +72 -0
- package/src/runtime/shared/process-tree.ts +227 -0
- package/src/runtime/shared/response-budget.ts +246 -0
- package/src/runtime/standalone-recovery/core.ts +2275 -0
- package/src/runtime/standalone-recovery/entry.ts +686 -0
- package/src/runtime/standalone-recovery/http-transport.ts +317 -0
- package/src/runtime/standalone-recovery/installer.ts +747 -0
- package/src/runtime/standalone-recovery/release.ts +241 -0
- package/src/runtime/watchdog/workflow-watchdog.ts +118 -0
- package/src/runtime/workflow/campaigns/cleanup.ts +263 -0
- package/src/runtime/workflow/campaigns/engine.ts +112 -0
- package/src/runtime/workflow/campaigns/normalize.ts +100 -0
- package/src/runtime/workflow/campaigns/review.ts +315 -0
- package/src/runtime/workflow/campaigns/store.ts +526 -0
- package/src/runtime/workflow/campaigns/supervisor.ts +112 -0
- package/src/runtime/workflow/campaigns/types.ts +290 -0
- package/src/runtime/workflow/campaigns/workspace-agent.ts +155 -0
- package/src/runtime/workflow/campaigns/workspace.ts +200 -0
- package/src/runtime/workflow/findings/store.ts +165 -0
- package/src/runtime/workflow/findings/types.ts +36 -0
- package/src/runtime/workflow/portfolio/engine.ts +20 -0
- package/src/runtime/workflow/portfolio/store.ts +185 -0
- package/src/runtime/workflow/portfolio/types.ts +29 -0
- package/src/runtime/workflow/schedules/engine.ts +620 -0
- package/src/runtime/workflow/schedules/settlement.ts +144 -0
- package/src/runtime/workflow/schedules/store.ts +417 -0
- package/src/runtime/workflow/schedules/types.ts +124 -0
- package/src/runtime/workspace-targets/index.ts +24 -0
- package/src/runtime/workspace-targets/target-grant.ts +721 -0
- package/src/testing/test-governance.ts +626 -0
- package/src/version.ts +21 -0
|
@@ -0,0 +1,391 @@
|
|
|
1
|
+
# Verification and Release Gates
|
|
2
|
+
|
|
3
|
+
> Status: **Runtime Authority**
|
|
4
|
+
|
|
5
|
+
## 1. Objective
|
|
6
|
+
|
|
7
|
+
Verification determines whether evidence satisfies a declared contract for an exact repository state. Release gating determines whether the repository is ready for an externally visible delivery action.
|
|
8
|
+
|
|
9
|
+
The system distinguishes:
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
execution success
|
|
13
|
+
integration success
|
|
14
|
+
verification success
|
|
15
|
+
Task acceptance
|
|
16
|
+
Issue completion
|
|
17
|
+
release readiness
|
|
18
|
+
release execution
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
No step implies the next without its required evidence.
|
|
22
|
+
|
|
23
|
+
## 2. Evidence Principles
|
|
24
|
+
|
|
25
|
+
Evidence must be:
|
|
26
|
+
|
|
27
|
+
- generated by the Controller or a trusted repository system;
|
|
28
|
+
- bound to stable repository and checkout identity;
|
|
29
|
+
- bound to an exact Revision or artifact hash;
|
|
30
|
+
- addressable through a durable artifact reference;
|
|
31
|
+
- bounded when returned to clients;
|
|
32
|
+
- honest about failure, timeout, truncation, or missing data;
|
|
33
|
+
- reusable only while its cache/precondition contract remains valid.
|
|
34
|
+
|
|
35
|
+
Worker or Agent prose is supplementary evidence, not authoritative pass/fail proof.
|
|
36
|
+
|
|
37
|
+
## 3. Verification Record
|
|
38
|
+
|
|
39
|
+
A Verification Record contains:
|
|
40
|
+
|
|
41
|
+
```text
|
|
42
|
+
repoId
|
|
43
|
+
checkoutId
|
|
44
|
+
revision
|
|
45
|
+
issueId / taskId
|
|
46
|
+
runId / editSessionId / integrationId
|
|
47
|
+
reviewedDiffHash
|
|
48
|
+
checkResults
|
|
49
|
+
commandEvidence
|
|
50
|
+
acceptanceResults
|
|
51
|
+
reviewer
|
|
52
|
+
verifiedAt
|
|
53
|
+
environmentFingerprint
|
|
54
|
+
artifact references
|
|
55
|
+
staleAt / staleReason when invalidated
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
A caller cannot satisfy required named checks by reporting `ok: true`. The Controller executes the check or verifies a trusted external artifact.
|
|
59
|
+
|
|
60
|
+
## 4. Exact Revision
|
|
61
|
+
|
|
62
|
+
Verification applies to one Revision definition, normally derived from:
|
|
63
|
+
|
|
64
|
+
```text
|
|
65
|
+
HEAD
|
|
66
|
+
tracked working-tree diff
|
|
67
|
+
relevant untracked files
|
|
68
|
+
check configuration
|
|
69
|
+
environment fingerprint
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
The Revision contract excludes known runtime-only evidence directories.
|
|
73
|
+
|
|
74
|
+
If relevant files change after verification:
|
|
75
|
+
|
|
76
|
+
- the previous record remains historical;
|
|
77
|
+
- completion logic treats it as stale;
|
|
78
|
+
- required verification runs again for the new Revision.
|
|
79
|
+
|
|
80
|
+
## 5. Verification Layers
|
|
81
|
+
|
|
82
|
+
### Layer 1 — Patch Integrity
|
|
83
|
+
|
|
84
|
+
For Direct Edit or integration:
|
|
85
|
+
|
|
86
|
+
- allowed paths respected;
|
|
87
|
+
- before/after hashes recorded;
|
|
88
|
+
- diff is available;
|
|
89
|
+
- change budget respected;
|
|
90
|
+
- no unsupported binary/rename behavior hidden;
|
|
91
|
+
- user changes outside scope preserved.
|
|
92
|
+
|
|
93
|
+
### Layer 2 — Focused Checks
|
|
94
|
+
|
|
95
|
+
Run the smallest deterministic checks that directly cover the change.
|
|
96
|
+
|
|
97
|
+
Examples:
|
|
98
|
+
|
|
99
|
+
- one test file;
|
|
100
|
+
- one package type check;
|
|
101
|
+
- one domain test suite;
|
|
102
|
+
- one architecture or documentation gate.
|
|
103
|
+
|
|
104
|
+
### Layer 3 — Task Contract
|
|
105
|
+
|
|
106
|
+
Evaluate all Task-declared checks and acceptance criteria.
|
|
107
|
+
|
|
108
|
+
Acceptance criteria must be observable and must not merely repeat “implementation complete.”
|
|
109
|
+
|
|
110
|
+
### Layer 4 — Integration Verification
|
|
111
|
+
|
|
112
|
+
After an isolated Run is integrated:
|
|
113
|
+
|
|
114
|
+
- verify target Revision, not only Worktree Revision;
|
|
115
|
+
- verify integration record and reviewed diff hash;
|
|
116
|
+
- rerun affected checks when target state changed;
|
|
117
|
+
- retain Worktree until durable integration outcome exists.
|
|
118
|
+
|
|
119
|
+
### Layer 5 — Issue or System Integration
|
|
120
|
+
|
|
121
|
+
Run broader checks required by the Issue, architecture boundary, or affected runtime subsystem.
|
|
122
|
+
|
|
123
|
+
### Layer 6 — Release Gate
|
|
124
|
+
|
|
125
|
+
Run release-specific checks against a frozen candidate Revision.
|
|
126
|
+
|
|
127
|
+
## 6. Risk-Adaptive Verification
|
|
128
|
+
|
|
129
|
+
### Read-only
|
|
130
|
+
|
|
131
|
+
Requires evidence of the requested observation. No diff gate.
|
|
132
|
+
|
|
133
|
+
### Low-risk change
|
|
134
|
+
|
|
135
|
+
Focused checks when declared; may auto-complete after successful applicable evidence.
|
|
136
|
+
|
|
137
|
+
### Medium-risk change
|
|
138
|
+
|
|
139
|
+
Declared checks and acceptance evidence apply. Auto-completion is allowed only when policy says no human decision is required.
|
|
140
|
+
|
|
141
|
+
### High-risk change
|
|
142
|
+
|
|
143
|
+
Requires:
|
|
144
|
+
|
|
145
|
+
- reviewed diff or integrated Revision;
|
|
146
|
+
- required verification evidence;
|
|
147
|
+
- acceptance criteria results;
|
|
148
|
+
- explicit human acceptance.
|
|
149
|
+
|
|
150
|
+
### Destructive change
|
|
151
|
+
|
|
152
|
+
Requires all high-risk evidence plus explicit same-request destructive authorization and operation-specific safety/rollback plan.
|
|
153
|
+
|
|
154
|
+
## 7. Task Acceptance
|
|
155
|
+
|
|
156
|
+
Task acceptance occurs after verification policy passes.
|
|
157
|
+
|
|
158
|
+
Acceptance action records:
|
|
159
|
+
|
|
160
|
+
```text
|
|
161
|
+
acceptedBy
|
|
162
|
+
acceptedAt
|
|
163
|
+
verificationId
|
|
164
|
+
revision
|
|
165
|
+
note
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
Dependent Tasks unlock only from accepted terminal semantics, not from a successful Run alone.
|
|
169
|
+
|
|
170
|
+
For eligible low/medium-risk work, Controller policy may auto-accept and records that automation explicitly.
|
|
171
|
+
|
|
172
|
+
## 8. Failed Verification
|
|
173
|
+
|
|
174
|
+
A real failed check or acceptance criterion moves work to `changes_requested` or a similarly explicit corrective state.
|
|
175
|
+
|
|
176
|
+
Failure handling:
|
|
177
|
+
|
|
178
|
+
1. preserve check output and artifact;
|
|
179
|
+
2. classify failure as introduced, pre-existing, environmental, flaky, stale, or contract-related;
|
|
180
|
+
3. avoid claiming unrelated pre-existing failure was caused or fixed;
|
|
181
|
+
4. create a focused correction or blocker;
|
|
182
|
+
5. rerun only the necessary evidence after the Revision changes.
|
|
183
|
+
|
|
184
|
+
A flaky check requires explicit flake evidence and retry policy. Repeating until green without recording attempts is forbidden.
|
|
185
|
+
|
|
186
|
+
## 9. Shared Check Evidence
|
|
187
|
+
|
|
188
|
+
Identical check requests may share one execution when these match:
|
|
189
|
+
|
|
190
|
+
```text
|
|
191
|
+
repoId
|
|
192
|
+
checkoutId
|
|
193
|
+
checkId
|
|
194
|
+
revision
|
|
195
|
+
timeout contract
|
|
196
|
+
environment fingerprint
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
Every subscriber links to the same immutable evidence. One subscriber cancellation must not terminate execution required by others.
|
|
200
|
+
|
|
201
|
+
## 10. Release Readiness
|
|
202
|
+
|
|
203
|
+
A repository is `release_ready` only when all required conditions are true for the candidate Revision.
|
|
204
|
+
|
|
205
|
+
Baseline gate:
|
|
206
|
+
|
|
207
|
+
```text
|
|
208
|
+
repository identity valid
|
|
209
|
+
remote/GitHub mapping diagnosed
|
|
210
|
+
candidate Revision fixed
|
|
211
|
+
Workspace ownership known
|
|
212
|
+
no active write Job
|
|
213
|
+
no active Agent Run
|
|
214
|
+
no pending integration
|
|
215
|
+
no unresolved integration conflict
|
|
216
|
+
no dirty Edit Session
|
|
217
|
+
no orphan/unknown execution affecting candidate
|
|
218
|
+
required Tasks accepted
|
|
219
|
+
required checks pass for candidate Revision
|
|
220
|
+
architecture/document gates pass
|
|
221
|
+
package/public metadata valid
|
|
222
|
+
release manifest generated
|
|
223
|
+
rollback or recovery plan recorded when required
|
|
224
|
+
human authorization boundary identified
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
A project may add stricter repository-specific gates.
|
|
228
|
+
|
|
229
|
+
## 11. Release Freeze
|
|
230
|
+
|
|
231
|
+
Before final release verification, the Repo Actor acquires an exclusive release Claim and enters Release Freeze.
|
|
232
|
+
|
|
233
|
+
During freeze:
|
|
234
|
+
|
|
235
|
+
- new mutation Jobs wait;
|
|
236
|
+
- active writers finish or are explicitly resolved;
|
|
237
|
+
- Integration Queue drains;
|
|
238
|
+
- read-only inspection continues;
|
|
239
|
+
- release checks run against the fixed candidate;
|
|
240
|
+
- Schedule mutation work pauses;
|
|
241
|
+
- any relevant file change invalidates the candidate and requires a new gate.
|
|
242
|
+
|
|
243
|
+
Release Freeze is released after:
|
|
244
|
+
|
|
245
|
+
- release execution completes;
|
|
246
|
+
- release is cancelled;
|
|
247
|
+
- verification fails and the candidate returns to development;
|
|
248
|
+
- Lease expires and recovery reconciles state.
|
|
249
|
+
|
|
250
|
+
## 12. Release Manifest
|
|
251
|
+
|
|
252
|
+
The release gate produces a durable manifest:
|
|
253
|
+
|
|
254
|
+
```text
|
|
255
|
+
repoId
|
|
256
|
+
checkoutId
|
|
257
|
+
candidateRevision
|
|
258
|
+
branch
|
|
259
|
+
target version or release identifier
|
|
260
|
+
included Issues and Tasks
|
|
261
|
+
verification records
|
|
262
|
+
check artifact hashes
|
|
263
|
+
known warnings
|
|
264
|
+
known non-blocking pre-existing failures
|
|
265
|
+
remote target
|
|
266
|
+
release actions requiring authorization
|
|
267
|
+
rollback/recovery instructions
|
|
268
|
+
createdAt
|
|
269
|
+
approvedBy / approvedAt when applicable
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
The manifest is an execution input and audit record. It does not execute release actions by itself.
|
|
273
|
+
|
|
274
|
+
## 13. External Actions
|
|
275
|
+
|
|
276
|
+
The following remain explicit external boundaries:
|
|
277
|
+
|
|
278
|
+
- commit when user policy requires review;
|
|
279
|
+
- push;
|
|
280
|
+
- create/update remote PR when not already authorized by the Task;
|
|
281
|
+
- merge;
|
|
282
|
+
- tag;
|
|
283
|
+
- package publication;
|
|
284
|
+
- production deployment;
|
|
285
|
+
- remote Issue closure;
|
|
286
|
+
- destructive migration or data mutation.
|
|
287
|
+
|
|
288
|
+
The Controller may prepare exact commands and evidence. It may execute only with explicit authorization appropriate to the operation.
|
|
289
|
+
|
|
290
|
+
## 14. Release Job
|
|
291
|
+
|
|
292
|
+
Release execution, when authorized, is a durable Job.
|
|
293
|
+
|
|
294
|
+
It records:
|
|
295
|
+
|
|
296
|
+
```text
|
|
297
|
+
releaseManifestId
|
|
298
|
+
requestId
|
|
299
|
+
remote target
|
|
300
|
+
operation sequence
|
|
301
|
+
current step
|
|
302
|
+
external identifiers
|
|
303
|
+
stdout/stderr/artifacts
|
|
304
|
+
partial outcome
|
|
305
|
+
compensation or resume instructions
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
A disconnected client does not make external outcome unknown if provider or command evidence can prove it. Otherwise the Release Job becomes orphaned/unknown and requires reconciliation before retry.
|
|
309
|
+
|
|
310
|
+
## 15. Partial Release
|
|
311
|
+
|
|
312
|
+
Multi-step or multi-repository release may end partially complete.
|
|
313
|
+
|
|
314
|
+
Partial outcome records:
|
|
315
|
+
|
|
316
|
+
- completed external actions;
|
|
317
|
+
- failed or unstarted actions;
|
|
318
|
+
- current deployed/published versions;
|
|
319
|
+
- safe compensation options;
|
|
320
|
+
- actions that require human decision.
|
|
321
|
+
|
|
322
|
+
The system must not collapse partial release into success or rerun all actions blindly.
|
|
323
|
+
|
|
324
|
+
## 16. Rollback and Recovery
|
|
325
|
+
|
|
326
|
+
Rollback is not assumed universally safe.
|
|
327
|
+
|
|
328
|
+
A release plan declares one of:
|
|
329
|
+
|
|
330
|
+
```text
|
|
331
|
+
reversible with deterministic rollback
|
|
332
|
+
forward-fix preferred
|
|
333
|
+
feature-flag disable
|
|
334
|
+
provider-native rollback
|
|
335
|
+
manual recovery only
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
Rollback itself is externally visible/destructive work and requires appropriate authorization and evidence.
|
|
339
|
+
|
|
340
|
+
## 17. Architecture Gate
|
|
341
|
+
|
|
342
|
+
Architecture-sensitive releases must pass:
|
|
343
|
+
|
|
344
|
+
- current architecture document presence;
|
|
345
|
+
- Runtime Authority marker;
|
|
346
|
+
- historical document marker policy;
|
|
347
|
+
- architecture drift check;
|
|
348
|
+
- relevant ADR linkage;
|
|
349
|
+
- migration roadmap update when target gaps change.
|
|
350
|
+
|
|
351
|
+
Architecture documentation is part of the release contract, not an optional afterthought.
|
|
352
|
+
|
|
353
|
+
## 18. Verification Performance
|
|
354
|
+
|
|
355
|
+
Verification must remain proportional:
|
|
356
|
+
|
|
357
|
+
- focused checks during iteration;
|
|
358
|
+
- Task checks before acceptance;
|
|
359
|
+
- broader Issue/system checks at integration boundaries;
|
|
360
|
+
- full release gate once the candidate is frozen.
|
|
361
|
+
|
|
362
|
+
Running the full release suite after every small patch wastes resources and increases queue contention. Running only focused checks before release is insufficient.
|
|
363
|
+
|
|
364
|
+
Check results and revision-aware caches prevent unnecessary duplication without hiding stale evidence.
|
|
365
|
+
|
|
366
|
+
## 19. Current Implementation
|
|
367
|
+
|
|
368
|
+
Verification evidence is bound to Job, repository and exact Git revision with an environment fingerprint. Revision changes invalidate reusable evidence. Oversized result bodies are stored as Artifacts and only bounded previews are returned through Job status.
|
|
369
|
+
|
|
370
|
+
Release readiness is implemented as a durable `release-gate` Job holding an exclusive `release:<repoId>` Lease. The Gate checks Workspace cleanliness, active Execution Jobs, Agent Runs, Local compatibility Jobs, pending Worktree integration, unfinished Edit Sessions, other Leases, active-Issue Tasks, exact-revision verification, repository remote identity, GitHub mapping, Canonical Forge Runtime readiness and package metadata.
|
|
371
|
+
|
|
372
|
+
A successful Gate returns a release manifest for the exact current revision. Push, merge, publish, deploy and destructive external operations still require a separate explicit user authorization.
|
|
373
|
+
|
|
374
|
+
## 20. Required Release Tests
|
|
375
|
+
|
|
376
|
+
Runtime and release checks cover:
|
|
377
|
+
|
|
378
|
+
- candidate revision changes invalidate evidence;
|
|
379
|
+
- active writers block release;
|
|
380
|
+
- pending Worktree integration blocks release;
|
|
381
|
+
- dirty Edit Sessions block release;
|
|
382
|
+
- remote and GitHub mapping drift block release;
|
|
383
|
+
- release Lease blocks new writes;
|
|
384
|
+
- a successful Gate does not execute an external side effect;
|
|
385
|
+
- partial external outcomes never become global success.
|
|
386
|
+
|
|
387
|
+
## 21. Immutable Check Definition Snapshot
|
|
388
|
+
|
|
389
|
+
A scheduled check stores the normalized command, cwd, timeout, source, registry revision, and definition digest at admission time. Execution validates the digest and repository-relative cwd, then uses that snapshot even if another checkout or a later commit changes the check registry.
|
|
390
|
+
|
|
391
|
+
The snapshot stabilizes check identity; the produced evidence is still bound to the revision observed when execution starts and becomes stale if repository content changes while the command runs. This prevents both `check not found` after checkout switching and accidental reuse of evidence from a different repository revision.
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# Controller-home SQLite state authority
|
|
2
|
+
|
|
3
|
+
Status: accepted, amended 2026-08-02, implemented for the Requirement control plane 2026-08-05
|
|
4
|
+
Date: 2026-08-01
|
|
5
|
+
Amended by: `20260802-requirement-centered-control-plane.md`
|
|
6
|
+
|
|
7
|
+
## Decision
|
|
8
|
+
|
|
9
|
+
Controller-owned mutable execution facts will converge on a SQLite database at
|
|
10
|
+
`<durable-controller-home>/control-plane.sqlite`. The database is local to the
|
|
11
|
+
Controller installation, never a repository worktree. It is the authority for
|
|
12
|
+
migrated records; JSON files are import-only compatibility inputs, not a
|
|
13
|
+
mirrored write target.
|
|
14
|
+
|
|
15
|
+
The initial schema intentionally has one versioned record envelope rather than
|
|
16
|
+
an ORM or a premature table per product concept:
|
|
17
|
+
|
|
18
|
+
- `control_plane_records` has a namespace, scope, record key, schema version,
|
|
19
|
+
monotonic revision, JSON payload, and timestamps;
|
|
20
|
+
- its primary key gives one atomic identity per durable fact;
|
|
21
|
+
- `control_plane_audit` records each authoritative write or legacy import;
|
|
22
|
+
- SQLite WAL, foreign-key enforcement, a busy timeout, and `BEGIN IMMEDIATE`
|
|
23
|
+
make cross-process writes serializable; and
|
|
24
|
+
- `control_plane_schema` records schema migrations independently from payload
|
|
25
|
+
versions.
|
|
26
|
+
|
|
27
|
+
The adapter uses Bun's bundled SQLite binding in the normal runtime and Node
|
|
28
|
+
22's built-in SQLite fallback for the package launcher. No native npm module or
|
|
29
|
+
ORM is introduced.
|
|
30
|
+
|
|
31
|
+
## Authority boundaries
|
|
32
|
+
|
|
33
|
+
| Data | Authority | Repository projection |
|
|
34
|
+
| --- | --- | --- |
|
|
35
|
+
| Execution sessions, Work handles, work-prepare idempotency claims, and WorkContracts | Controller-home SQLite as each namespace migrates | Legacy JSON is readable only for first import; it is never rewritten |
|
|
36
|
+
| Leases, process receipts, Jobs, Runs, checks, and evidence | Existing controller-home stores until their named migration | Existing artifacts remain evidence/read compatibility sources |
|
|
37
|
+
| Repository identity, checkout/worktree/branch/HEAD observations | Git plus the Controller repository registry | Never inferred from an Issue or handoff |
|
|
38
|
+
| Requirement, ExecutionPlan, PlanStep, Work relationships and user-facing lifecycle | Controller-home SQLite after the Requirement namespace cutover defined by `20260802-requirement-centered-control-plane.md` | Legacy Issue/Task files import once; optional Git snapshots are one-way, revision-stamped exports and never runtime authority |
|
|
39
|
+
| Accepted architecture decisions and operator-authored documentation | Git | Human-reviewable design/source material, never a runtime mutation log |
|
|
40
|
+
| Secrets and credentials | External credential providers or OS-managed stores | Never stored in SQLite payloads, projections, receipts, or audit data |
|
|
41
|
+
|
|
42
|
+
SQLite records are structured facts and bounded evidence references. Large logs,
|
|
43
|
+
binary artifacts, and source diffs remain filesystem artifacts addressed by
|
|
44
|
+
stable IDs and content/revision metadata.
|
|
45
|
+
|
|
46
|
+
## Migration and rollback rules
|
|
47
|
+
|
|
48
|
+
1. Read the SQLite record first. If it exists, ignore any legacy JSON changes.
|
|
49
|
+
2. If no record exists, validate and import exactly one legacy JSON value in a
|
|
50
|
+
transaction. A malformed record fails closed and changes neither source.
|
|
51
|
+
3. After import, all writes go only to SQLite. A projection can be regenerated
|
|
52
|
+
later, but cannot become a second mutation authority.
|
|
53
|
+
4. Each namespace migrates independently with focused compatibility and crash
|
|
54
|
+
tests. Do not batch-migrate all controller directories.
|
|
55
|
+
5. A failed payload/schema migration rolls back its transaction and preserves
|
|
56
|
+
the last known-good record. Downgrade readers must reject unknown required
|
|
57
|
+
versions rather than overwrite them.
|
|
58
|
+
6. A reversible rollback means selecting the prior database backup or a
|
|
59
|
+
verified read-only JSON import path before a namespace cutover; it never
|
|
60
|
+
means replaying stale JSON on top of an existing SQLite row.
|
|
61
|
+
|
|
62
|
+
## Rollout sequence
|
|
63
|
+
|
|
64
|
+
1. Establish the durable SQLite envelope and migrate the execution session,
|
|
65
|
+
Work-handle, idempotent work-prepare, and WorkContract namespaces.
|
|
66
|
+
2. Migrate process/check receipts and lease ownership, retaining exact Git
|
|
67
|
+
identity in every verification record.
|
|
68
|
+
3. Migrate controller-owned Run, Job, and evidence indexes; keep append-only
|
|
69
|
+
artifacts outside the database.
|
|
70
|
+
4. Migrate Requirement, versioned ExecutionPlan, PlanStep and Work relationships
|
|
71
|
+
using the accepted requirement-centered boundary. Import Issue/Task records
|
|
72
|
+
exactly once, switch reads to SQLite, and permit only one-way exports.
|
|
73
|
+
5. Delete runtime Issue/Task writers and legacy status fallbacks after the
|
|
74
|
+
revision-stamped portfolio migration validates. Only then migrate optional
|
|
75
|
+
Campaign and plugin state that still has durable product value.
|
|
76
|
+
|
|
77
|
+
Each phase requires focused concurrent-write, interrupted-write, legacy-import,
|
|
78
|
+
restart, and stale-revision tests before the next namespace becomes
|
|
79
|
+
authoritative.
|
|
80
|
+
|
|
81
|
+
## Current implementation
|
|
82
|
+
|
|
83
|
+
The Requirement control-plane cutover is complete. Execution sessions, Work
|
|
84
|
+
handles, idempotent work-prepare claims, WorkContracts, Requirements,
|
|
85
|
+
ExecutionPlans, PlanSteps, Work relationships, migration markers, revisions and
|
|
86
|
+
audit continuity are mutable only through
|
|
87
|
+
`<durable-controller-home>/control-plane.sqlite`.
|
|
88
|
+
|
|
89
|
+
Repository Issue/Task JSON and Markdown, `currentIssue`, the legacy project
|
|
90
|
+
board and task-ledger artifacts are frozen compatibility material. A missing
|
|
91
|
+
SQLite record may consume its reviewed import source only during the named
|
|
92
|
+
one-time migration transaction. Once a row exists, later repository changes are
|
|
93
|
+
ignored. Compatibility reads are SQLite-derived and explicitly marked
|
|
94
|
+
`deprecated`, `frozen` and `readOnly`.
|
|
95
|
+
|
|
96
|
+
Offline exports are revision-stamped, one-way SQLite-to-filesystem snapshots.
|
|
97
|
+
They cannot be written under `tasks/issues`, cannot be replayed into existing
|
|
98
|
+
rows and are not a rollback mechanism. Post-cutover rollback accepts only a
|
|
99
|
+
verified SQLite backup whose schema, integrity, audit continuity and entity
|
|
100
|
+
relationships pass validation.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Canonical Forge Skill Surface
|
|
2
|
+
|
|
3
|
+
Status: accepted
|
|
4
|
+
|
|
5
|
+
## Decision
|
|
6
|
+
|
|
7
|
+
Forge exposes one host-discoverable skill: `forge`. CLI commands,
|
|
8
|
+
controller actions, and workflow modes are routed by that canonical skill and are
|
|
9
|
+
not installed as standalone skills.
|
|
10
|
+
|
|
11
|
+
## Removed standalone entries
|
|
12
|
+
|
|
13
|
+
The former command facades for planning, review, autoplan, ship, init, scaffold,
|
|
14
|
+
migrate, upgrade, capability, architecture, handoff, deploy, repair, check, PRD,
|
|
15
|
+
sprint, goal, GPT Pro setup, and GPT Pro consultation were duplicate discovery
|
|
16
|
+
surfaces over existing CLI commands. The repo-local ChatGPT bridge and browser
|
|
17
|
+
skills were also removed as standalone discovery entries; their durable safety
|
|
18
|
+
and controller rules remain in the canonical skill, controller tool contracts,
|
|
19
|
+
and ordinary documentation.
|
|
20
|
+
|
|
21
|
+
## Why
|
|
22
|
+
|
|
23
|
+
- A command alias is not an independent knowledge domain.
|
|
24
|
+
- Overlapping descriptions make automatic skill routing less reliable.
|
|
25
|
+
- ChatGPT Controller does not need a second skill registry or new MCP tools to
|
|
26
|
+
operate existing typed capabilities.
|
|
27
|
+
- One canonical skill keeps Codex and Claude discovery predictable while the CLI
|
|
28
|
+
remains fully expressive.
|
|
29
|
+
|
|
30
|
+
## Distribution
|
|
31
|
+
|
|
32
|
+
`scripts/sync-codex-installed-copies.sh` installs the canonical skill and removes
|
|
33
|
+
historical managed facade names from Codex and Claude skill roots. It does not
|
|
34
|
+
create a new registry, resolver, background service, or MCP tool.
|
|
35
|
+
|
|
36
|
+
## Reconsideration gate
|
|
37
|
+
|
|
38
|
+
A new standalone skill requires evidence of a recurring failure that cannot be
|
|
39
|
+
addressed through the canonical router, existing context/resources, or typed
|
|
40
|
+
controller/plugin capabilities. Tool-count growth is not an acceptable default.
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# ADR: Whole-Forge-Runtime Release Identity and Exit Policy
|
|
2
|
+
|
|
3
|
+
- **Status:** Accepted and aligned with the Canonical Forge Runtime
|
|
4
|
+
- **Date:** 2026-08-03; revised 2026-08-09
|
|
5
|
+
- **Authority:** [`../current/runtime-architecture-simplification.md`](../current/runtime-architecture-simplification.md), [`../current/failure-recovery.md`](../current/failure-recovery.md)
|
|
6
|
+
|
|
7
|
+
## Decision
|
|
8
|
+
|
|
9
|
+
One immutable release identity binds the complete `forge-runtime` process and every bounded child it launches:
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
ReleaseIdentityBinding {
|
|
13
|
+
releasePath
|
|
14
|
+
releaseId
|
|
15
|
+
releaseRevision
|
|
16
|
+
sourceCommit
|
|
17
|
+
cleanWorkspace
|
|
18
|
+
}
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Authority order is:
|
|
22
|
+
|
|
23
|
+
1. `FORGE_RELEASE_*` binding injected by the active whole release;
|
|
24
|
+
2. the immutable release `manifest.json`;
|
|
25
|
+
3. an owning Git checkout only for explicit developer launches;
|
|
26
|
+
4. never an ambient parent repository.
|
|
27
|
+
|
|
28
|
+
The OS service manager starts and automatically restarts the single `forge-runtime` root process after unexpected process death. Module readiness failure does not create component restart authority. A release transition stops and starts the complete Runtime, verifies binary whole-Runtime readiness, and on failure restores the previous complete release together with its bound SQLite backup.
|
|
29
|
+
|
|
30
|
+
Standalone Recovery remains independently installed. It may diagnose the service, repair the service definition or tunnel, and perform authorized offline whole-Runtime rollback when the primary Runtime cannot start. It never becomes a second scheduler, Gateway, state writer, or component owner.
|
|
31
|
+
|
|
32
|
+
The immutable release carries every helper executable or library needed by those bounded children. This includes the Process/Check runners, Browser/Desktop helpers, external-plugin probe, and the matching CodeGraph Node executable, read-only sidecar, and compiled library tree. CodeGraph is invoked once per bounded context query by `forge-runtime`; it is not a daemon, service, recovery owner, readiness authority, or persistent state writer. Its only durable input is the repository-owned `.codegraph/` index selected for the request.
|
|
33
|
+
|
|
34
|
+
The CodeGraph artifact group is all-or-nothing in `manifest.json`: canonical co-located paths and SHA-256 identities are declared for the Node executable, sidecar, and library directory. A missing platform bundle fails release staging before publication. At runtime, an unavailable or failed structural query produces typed degraded context evidence and fails a mode's required-context condition; it does not create a second Runtime readiness state or restart authority.
|
|
35
|
+
|
|
36
|
+
CodeGraph child cleanup is owned by the initiating bounded query through timeout/exit handling. Release retention and deletion operate on the complete release directory, so the executable, sidecar, and library tree are removed only with their whole Runtime release. There is no component-level upgrade, fallback to an ambient checkout dependency, adoption, or independent rollback path.
|
|
37
|
+
|
|
38
|
+
## Exit policy
|
|
39
|
+
|
|
40
|
+
- explicit authorized stop remains stopped;
|
|
41
|
+
- unexpected root-process death is handled by the OS service manager;
|
|
42
|
+
- incomplete readiness is reported as degraded or failed whole-Runtime readiness;
|
|
43
|
+
- stale Workers cannot renew Leases or publish under a replacement Runtime/release fence;
|
|
44
|
+
- uncertain external writes are reconciled from receipts and are never replayed blindly.
|
|
45
|
+
|
|
46
|
+
## Verification
|
|
47
|
+
|
|
48
|
+
- immutable release identity never follows ambient Git HEAD;
|
|
49
|
+
- advancing a developer checkout cannot alter the active release identity;
|
|
50
|
+
- failed activation restores the previous release and matching SQLite backup;
|
|
51
|
+
- service restart preserves durable Work, Process and evidence identities;
|
|
52
|
+
- a release missing any CodeGraph artifact fails closed before activation, a bounded query times out or exits without leaving a child owner, and a complete previous-release rollback restores the matching CodeGraph artifact group;
|
|
53
|
+
- no component-level restart, slot selection, ingress fallback or Supervisor authority exists.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|