create-agdf 0.14.5 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +474 -11
- package/bin/create-agdf.js +2 -1
- package/generated/.agdf/control/README.md +29 -2
- package/generated/.agdf/control/templates/MASTER_BACKLOG.md +4 -2
- package/generated/.agdf/control/templates/RUN_STATE.md +1 -0
- package/generated/.agdf/control/templates/artefacts/BROWNFIELD_REVIEW.md +31 -0
- package/generated/.agdf/control/templates/artefacts/PRD.md +44 -5
- package/generated/.agdf/control/templates/artefacts/QA_REPORT.md +6 -0
- package/generated/.agdf/control/templates/artefacts/SD.md +31 -3
- package/generated/.agdf/control/templates/artefacts/TP.md +43 -8
- package/generated/.agdf/control/templates/artefacts/UR.md +17 -0
- package/generated/.agdf/control/templates/artefacts/UX_INTENT_DEFINITION.md +10 -0
- package/generated/.opencode/AGDF.md +17 -121
- package/generated/.opencode/README.md +7 -2
- package/generated/.opencode/agdf-agent-router.md +174 -0
- package/generated/.opencode/agdf-interaction-locales.json +2682 -495
- package/generated/.opencode/agdf-runtime-contract.md +17 -9
- package/generated/.opencode/contracts/closeout.md +7 -3
- package/generated/.opencode/contracts/control-scaffold.md +19 -6
- package/generated/.opencode/contracts/gate-artifact-preparation.md +132 -0
- package/generated/.opencode/contracts/gate-transition.md +56 -12
- package/generated/.opencode/contracts/interaction.md +331 -41
- package/generated/.opencode/contracts/modes.md +23 -11
- package/generated/.opencode/contracts/prd-definition.md +130 -0
- package/generated/.opencode/contracts/quality.md +85 -14
- package/generated/.opencode/contracts/request-activation.md +252 -0
- package/generated/.opencode/contracts/sd-definition.md +69 -0
- package/generated/.opencode/contracts/task-target-resolution.md +63 -9
- package/generated/.opencode/contracts/tp-definition.md +81 -0
- package/generated/.opencode/contracts/ur-definition.md +94 -0
- package/generated/.opencode/skills/agdf-brownfield-analysis/SKILL.md +70 -8
- package/generated/.opencode/skills/agdf-clean-implementation-review/SKILL.md +35 -3
- package/generated/.opencode/skills/agdf-code-review/SKILL.md +36 -2
- package/generated/.opencode/skills/agdf-delivery-closeout/SKILL.md +36 -4
- package/generated/.opencode/skills/agdf-delivery-path-search/SKILL.md +36 -4
- package/generated/.opencode/skills/agdf-gate-check/SKILL.md +68 -222
- package/generated/.opencode/skills/agdf-prd-definition/SKILL.md +51 -0
- package/generated/.opencode/skills/agdf-qa-gate/SKILL.md +78 -10
- package/generated/.opencode/skills/agdf-release-or/SKILL.md +44 -11
- package/generated/.opencode/skills/agdf-sd-definition/SKILL.md +51 -0
- package/generated/.opencode/skills/agdf-task-plan-review/SKILL.md +35 -3
- package/generated/.opencode/skills/agdf-tp-definition/SKILL.md +51 -0
- package/generated/.opencode/skills/agdf-ur-definition/SKILL.md +54 -0
- package/generated/.opencode/skills/agdf-ux-intent-definition/SKILL.md +100 -6
- package/generated/plugins/agdf/.claude-plugin/plugin.json +3 -2
- package/generated/plugins/agdf/.codex-plugin/plugin.json +3 -1
- package/generated/plugins/agdf/control/README.md +29 -2
- package/generated/plugins/agdf/control/templates/MASTER_BACKLOG.md +4 -2
- package/generated/plugins/agdf/control/templates/RUN_STATE.md +1 -0
- package/generated/plugins/agdf/control/templates/artefacts/BROWNFIELD_REVIEW.md +31 -0
- package/generated/plugins/agdf/control/templates/artefacts/PRD.md +44 -5
- package/generated/plugins/agdf/control/templates/artefacts/QA_REPORT.md +6 -0
- package/generated/plugins/agdf/control/templates/artefacts/SD.md +31 -3
- package/generated/plugins/agdf/control/templates/artefacts/TP.md +43 -8
- package/generated/plugins/agdf/control/templates/artefacts/UR.md +17 -0
- package/generated/plugins/agdf/control/templates/artefacts/UX_INTENT_DEFINITION.md +10 -0
- package/generated/plugins/agdf/hooks/hooks.json +2 -2
- package/generated/plugins/agdf/hooks/session-start.sh +5 -70
- package/generated/plugins/agdf/mcp/agdf-mcp-launch.js +7 -0
- package/generated/plugins/agdf/mcp/claude.mcp.json +11 -0
- package/generated/plugins/agdf/mcp/sdk/expected-sdk.json +21 -0
- package/generated/plugins/agdf/mcp/sdk/package-lock.json +47 -0
- package/generated/plugins/agdf/mcp/sdk/package.json +7 -0
- package/generated/plugins/agdf/mcp/server/NOTICE +10 -0
- package/generated/plugins/agdf/mcp/server/README.md +136 -0
- package/generated/plugins/agdf/mcp/server/bin/agdf-mcp.js +24 -0
- package/generated/plugins/agdf/mcp/server/package.json +59 -0
- package/generated/plugins/agdf/mcp/server/src/cockpit-resource.js +20 -0
- package/generated/plugins/agdf/mcp/server/src/generation-entry.js +86 -0
- package/generated/plugins/agdf/mcp/server/src/generation-protocol.js +44 -0
- package/generated/plugins/agdf/mcp/server/src/generation.js +211 -0
- package/generated/plugins/agdf/mcp/server/src/main.js +56 -0
- package/generated/plugins/agdf/mcp/server/src/server.js +187 -0
- package/generated/plugins/agdf/mcp/server/src/ui-capability.js +17 -0
- package/generated/plugins/agdf/mcp/server/src/worker-entry.js +39 -0
- package/generated/plugins/agdf/mcp/server/src/worker.js +134 -0
- package/generated/plugins/agdf/mcp/server/ui/cockpit.html +109 -0
- package/generated/plugins/agdf/mcp/server/ui/decision-manifest.json +8 -0
- package/generated/plugins/agdf/mcp/server/ui/decision.html +108 -0
- package/generated/plugins/agdf/mcp/server/ui/manifest.json +8 -0
- package/generated/plugins/agdf/mcp.json +28 -0
- package/generated/plugins/agdf/meta/agdf-agent-router.md +50 -8
- package/generated/plugins/agdf/meta/agdf-interaction-locales.json +2682 -495
- package/generated/plugins/agdf/meta/agdf-mcp-capability.json +158 -0
- package/generated/plugins/agdf/meta/agdf-plugin.definition.json +288 -42
- package/generated/plugins/agdf/meta/agdf-runtime-contract.md +17 -9
- package/generated/plugins/agdf/meta/contracts/closeout.md +6 -2
- package/generated/plugins/agdf/meta/contracts/control-scaffold.md +17 -4
- package/generated/plugins/agdf/meta/contracts/gate-artifact-preparation.md +132 -0
- package/generated/plugins/agdf/meta/contracts/gate-transition.md +48 -4
- package/generated/plugins/agdf/meta/contracts/interaction.md +328 -38
- package/generated/plugins/agdf/meta/contracts/modes.md +23 -11
- package/generated/plugins/agdf/meta/contracts/prd-definition.md +130 -0
- package/generated/plugins/agdf/meta/contracts/quality.md +77 -6
- package/generated/plugins/agdf/meta/contracts/request-activation.md +252 -0
- package/generated/plugins/agdf/meta/contracts/sd-definition.md +69 -0
- package/generated/plugins/agdf/meta/contracts/task-target-resolution.md +63 -9
- package/generated/plugins/agdf/meta/contracts/tp-definition.md +81 -0
- package/generated/plugins/agdf/meta/contracts/ur-definition.md +94 -0
- package/generated/plugins/agdf/meta/copilot-payload-baseline.json +3 -3
- package/generated/plugins/agdf/meta/distribution-profile-history.json +7 -0
- package/generated/plugins/agdf/meta/schemas/agent-plugins/1.0.0/mcp.schema.json +120 -0
- package/generated/plugins/agdf/meta/schemas/agent-plugins/1.0.0/plugin.schema.json +65 -0
- package/generated/plugins/agdf/meta/schemas/agent-plugins/1.0.0/provenance.json +19 -0
- package/generated/plugins/agdf/runtime/agdf-local.js +5 -4
- package/generated/plugins/agdf/runtime/agdf-session-check.js +127 -50
- package/generated/plugins/agdf/runtime/create-agdf/generated/plugins/agdf/meta/agdf-interaction-locales.json +2682 -495
- package/generated/plugins/agdf/runtime/create-agdf/generated/plugins/agdf/meta/agdf-plugin.definition.json +288 -42
- package/generated/plugins/{copilot/agdf/copilot-skills → agdf/runtime/create-agdf/generated/plugins/agdf/meta}/contracts/closeout.md +7 -3
- package/generated/plugins/{copilot/agdf/copilot-skills → agdf/runtime/create-agdf/generated/plugins/agdf/meta}/contracts/control-scaffold.md +19 -6
- package/generated/plugins/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/gate-artifact-preparation.md +132 -0
- package/generated/plugins/{copilot/agdf/copilot-skills → agdf/runtime/create-agdf/generated/plugins/agdf/meta}/contracts/gate-transition.md +56 -12
- package/generated/plugins/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/interaction.md +777 -0
- package/generated/plugins/{copilot/agdf/copilot-skills → agdf/runtime/create-agdf/generated/plugins/agdf/meta}/contracts/modes.md +23 -11
- package/generated/plugins/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/prd-definition.md +130 -0
- package/generated/plugins/{copilot/agdf/copilot-skills → agdf/runtime/create-agdf/generated/plugins/agdf/meta}/contracts/quality.md +85 -14
- package/generated/plugins/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/request-activation.md +252 -0
- package/generated/plugins/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/sd-definition.md +69 -0
- package/generated/plugins/{copilot/agdf/copilot-skills → agdf/runtime/create-agdf/generated/plugins/agdf/meta}/contracts/task-target-resolution.md +63 -9
- package/generated/plugins/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/tp-definition.md +81 -0
- package/generated/plugins/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/ur-definition.md +94 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/cli/command-registry.js +251 -16
- package/generated/plugins/agdf/runtime/create-agdf/lib/cli/contract-command.js +24 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/cli/control-maintenance-command.js +44 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/cli/delivery-path-search-command.js +11 -11
- package/generated/plugins/agdf/runtime/create-agdf/lib/cli/parse-args.js +254 -5
- package/generated/plugins/agdf/runtime/create-agdf/lib/cli/runtime-context.js +14 -37
- package/generated/plugins/agdf/runtime/create-agdf/lib/cli/validation-handlers.js +205 -7
- package/generated/plugins/agdf/runtime/create-agdf/lib/control-command.js +4 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/control-evaluation/git-observation.js +22 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/control-maintenance/interaction.js +28 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/control-maintenance/repair.js +4 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/control-maintenance/service.js +3 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/control-maintenance/startup.js +25 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/control-state/run-recovery.js +5 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/claude.js +3 -3
- package/generated/plugins/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/codex.js +3 -3
- package/generated/plugins/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/opencode.js +4 -4
- package/generated/plugins/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/protocol.js +1 -1
- package/generated/plugins/agdf/runtime/create-agdf/lib/delivery-path-search/generators/claude.js +3 -3
- package/generated/plugins/agdf/runtime/create-agdf/lib/delivery-path-search/generators/codex.js +3 -3
- package/generated/plugins/agdf/runtime/create-agdf/lib/delivery-path-search/generators/protocol.js +1 -1
- package/generated/plugins/agdf/runtime/create-agdf/lib/delivery-path-search/surfaces/capabilities.js +1 -1
- package/generated/plugins/agdf/runtime/create-agdf/lib/delivery-path-search/transports/read-only-guard.js +2 -1
- package/generated/plugins/agdf/runtime/create-agdf/lib/host-adapters/claude/session-command.js +2 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/host-adapters/codex/session-command.js +7 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/host-adapters/copilot/session-command.js +1 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/host-adapters/opencode/session-command.js +1 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/host-adapters/session-command.js +11 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/host-command.js +112 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/mcp-dispatch-runtime.js +360 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/mcp-lifecycle/facade-entry.js +26 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/mcp-lifecycle/facade-owner-entry.js +34 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/mcp-lifecycle/package.js +527 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/mcp-lifecycle/plugin-runtime.js +420 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/npm-invocation.js +27 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/repository-context.js +87 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime/control-command-service.js +12 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime/control-context.js +11 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime/git-history.js +7 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime/git-originals.js +36 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime/local-validator.js +39 -5
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime/plugin-provenance.js +1 -298
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime/runtime-probe.js +61 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime/validator-application.js +3 -3
- package/generated/plugins/agdf/runtime/create-agdf/lib/runtime-check-consent/contract.js +9 -8
- package/generated/plugins/agdf/runtime/create-agdf/lib/skill-dispatch/binding.js +9 -0
- package/generated/plugins/agdf/runtime/create-agdf/package.json +6 -2
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/acceptance-criteria.js +61 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/backlog-vocabulary.d.ts +3 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/backlog-vocabulary.js +15 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/closeout-readiness.js +103 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/decision-content-readiness.js +131 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/definition-sources.js +46 -0
- package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-evaluation/delivery-map.js +31 -37
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/delivery-relationships.js +21 -0
- package/{lib → generated/plugins/agdf/runtime/create-agdf/runtime/core/lib}/control-evaluation/doctor.js +85 -17
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/gate-check.js +827 -0
- package/generated/plugins/{copilot/agdf/runtime/create-agdf → agdf/runtime/create-agdf/runtime/core}/lib/control-evaluation/gate-policy.js +141 -10
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/markdown-table.js +40 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/next-action.js +32 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/normalized-gaps.js +105 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/prd-readiness.js +51 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/qa-follow-up.js +83 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/report-decision.js +237 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/run-state-policy.js +51 -0
- package/{lib → generated/plugins/agdf/runtime/create-agdf/runtime/core/lib}/control-evaluation/run-state.js +108 -74
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/run-step-policy.js +20 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/run-work-summary.js +109 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/sd-readiness.js +56 -0
- package/generated/plugins/{copilot/agdf/runtime/create-agdf → agdf/runtime/create-agdf/runtime/core}/lib/control-evaluation/shared.js +5 -2
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/tp-planning.js +118 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/traceability-readiness.js +212 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/ur-readiness.js +47 -0
- package/{lib → generated/plugins/agdf/runtime/create-agdf/runtime/core/lib}/control-evaluation/verified-change.js +10 -30
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/artifact-readiness.js +122 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/cockpit-backlog.js +135 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/cockpit-context.js +97 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/cockpit-contract.js +86 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/cockpit-list.d.ts +17 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/cockpit-list.js +45 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/cockpit-session.js +217 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/cockpit.js +388 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/contract.js +299 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/decision-session.js +243 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/selection.js +35 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/service.js +319 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/compatibility.js +149 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/contract.js +41 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/interaction.js +57 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/migration.js +85 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/presentation.js +122 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/repair.js +226 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/service.js +38 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-read/cockpit-pool.js +105 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-read/cockpit-worker.js +33 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-read/control-changes.js +33 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-read/fs.js +55 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-read/snapshot.js +378 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-read-boundary.js +22 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/approval-command-contract.js +73 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/approval-command.js +137 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/approval-operations.js +95 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/artefact-binding-proof.js +90 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/artefact-bindings.js +94 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/backlog-summary-shape.d.ts +4 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/backlog-summary-shape.js +40 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/backlog-summary.js +67 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/contained-file.js +56 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/control-configuration.js +19 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/decision-action-contract.js +32 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/decision-action-service.js +55 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/decision-material-contract.js +12 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/evidence-bindings.js +132 -0
- package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-state/index.js +2 -0
- package/generated/plugins/{copilot/agdf/runtime/create-agdf → agdf/runtime/create-agdf/runtime/core}/lib/control-state/legacy-migration.js +5 -31
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/legacy-projection-reader.js +38 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/presentation-decision.js +138 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/preview-render.js +130 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/preview-review.js +136 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/preview-snapshot.js +108 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/qa-deviation-acceptance.js +82 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/recording-formats.js +29 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-artefact-recording.js +81 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-backlog-writer.js +80 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-backlog.js +90 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-command-contract.js +143 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-command-service.js +174 -0
- package/{lib → generated/plugins/agdf/runtime/create-agdf/runtime/core/lib}/control-state/run-identity.js +1 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-operation-identity.js +31 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-operation-proof.js +103 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-operation-status.js +59 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-operations.js +80 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-owned-outputs.js +59 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-presentation-envelope.js +36 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-presentation-render.js +443 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-presentation.js +348 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-recording.js +273 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-recovery.js +296 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-relationship-correction.js +74 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-revision-boundary.js +44 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-revision-history.js +184 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-revision.js +458 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-seal-compute.js +141 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-seal.js +26 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-source-revisions.js +221 -0
- package/generated/plugins/{copilot/agdf/runtime/create-agdf/lib/control-state/run-state-parser.js → agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-document.js} +17 -47
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-edits.js +170 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-parser.js +106 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-reader.js +57 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-repository.js +201 -0
- package/generated/plugins/{copilot/agdf/runtime/create-agdf → agdf/runtime/create-agdf/runtime/core}/lib/control-state/run-state-resolver.js +1 -1
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-writer.js +484 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-step-pending.js +15 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-step-transaction.js +359 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-steps.js +571 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-store-inspection.js +65 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-text.js +8 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/delivery-continuation/service.js +67 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/index.js +14 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/interaction-catalog-validation.js +26 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/interaction-catalog.d.ts +2 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/interaction-catalog.js +98 -0
- package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/interaction-presentation.js +437 -33
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/mcp-resource-contract.js +4 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/mcp-tool-errors.js +176 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/repository-context-reader.js +87 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/resources/artefact-templates.js +72 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/resources/binding.js +26 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/resources/context.js +70 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/resources/contracts.js +23 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/runtime/host-installation.js +200 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/runtime/plugin-provenance.js +496 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/binding.js +66 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/compact-continuation.js +76 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/contract.js +430 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/delivery-intake.js +80 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/delivery-run-assignment.js +74 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/prd-definition.js +39 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/sd-definition.js +39 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/service.js +833 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/tp-definition.js +41 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/task-target-resolution.js +202 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/LICENSE +11 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/decode.js +3 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/decode-codepoint.js +77 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/decode.js +511 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/encode.js +73 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/escape.js +121 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/generated/decode-data-html.js +10 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/generated/decode-data-xml.js +10 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/generated/encode-html.js +13 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/index.js +131 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/package.json +3 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/decode-codepoint.js +72 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/decode.js +497 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/encode.js +69 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/escape.js +117 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/generated/decode-data-html.js +7 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/generated/decode-data-xml.js +7 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/generated/encode-html.js +10 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/index.js +107 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/package.json +3 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/escape.js +3 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/package.json +118 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/entities/src/generated/.eslintrc.json +10 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/LICENSE +20 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/index.browser.cjs +43 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/index.browser.js +43 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/index.cjs +47 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/index.js +47 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/index.native.js +38 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/package.json +12 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/bin/nanoid.cjs +55 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/index.browser.cjs +45 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/index.browser.js +45 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/index.cjs +63 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/index.js +63 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/nanoid.js +1 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/non-secure/index.cjs +24 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/non-secure/index.js +24 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/non-secure/package.json +6 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/package.json +89 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/url-alphabet/index.cjs +4 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/url-alphabet/index.js +4 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/url-alphabet/package.json +6 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/LICENSE +19 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/doctype.js +118 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/error-codes.js +66 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/foreign-content.js +237 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/html.js +528 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/token.js +24 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/unicode.js +70 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/index.js +54 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/package.json +1 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/parser/formatting-element-list.js +114 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/parser/index.js +3240 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/parser/open-element-stack.js +328 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/serializer/index.js +172 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/tokenizer/index.js +2714 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/tokenizer/preprocessor.js +200 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/tree-adapters/default.js +176 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/tree-adapters/interface.js +2 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/doctype.js +114 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/error-codes.js +63 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/foreign-content.js +228 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/html.js +523 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/token.js +20 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/unicode.js +62 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/index.js +42 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/parser/formatting-element-list.js +110 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/parser/index.js +3245 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/parser/open-element-stack.js +324 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/serializer/index.js +168 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/tokenizer/index.js +2710 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/tokenizer/preprocessor.js +196 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/tree-adapters/default.js +173 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/tree-adapters/interface.js +1 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/package.json +50 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/picocolors/LICENSE +15 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/picocolors/package.json +25 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/picocolors/picocolors.browser.js +4 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/picocolors/picocolors.js +75 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/LICENSE +20 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/at-rule.js +25 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/comment.js +13 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/container.js +494 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/css-syntax-error.js +133 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/declaration.js +24 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/document.js +33 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/fromJSON.js +107 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/input.js +282 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/lazy-result.js +626 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/list.js +79 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/map-generator.js +383 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/no-work-result.js +137 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/node.js +494 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/parse.js +42 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/parser.js +626 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/postcss.js +101 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/postcss.mjs +30 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/previous-map.js +176 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/processor.js +67 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/result.js +42 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/root.js +76 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/rule.js +27 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/stringifier.js +457 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/stringify.js +69 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/symbols.js +5 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/terminal-highlight.js +70 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/tokenize.js +270 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/warn-once.js +13 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/warning.js +47 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/package.json +88 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/LICENSE +28 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/array-set.js +121 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/base64-vlq.js +140 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/base64.js +67 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/binary-search.js +111 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/mapping-list.js +79 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/quick-sort.js +141 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/source-map-consumer.js +1236 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/source-map-generator.js +446 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/source-node.js +420 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/util.js +594 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/package.json +71 -0
- package/generated/plugins/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/source-map.js +8 -0
- package/generated/plugins/agdf/runtime/runtime-manifest.json +2 -2
- package/generated/plugins/agdf/scripts/agent-skills-conformance.mjs +9 -5
- package/generated/plugins/agdf/scripts/check-runtime-integrity.mjs +1123 -182
- package/generated/plugins/agdf/scripts/instruction-footprint.mjs +945 -0
- package/generated/plugins/agdf/skills/brownfield-analysis/SKILL.md +67 -5
- package/generated/plugins/agdf/skills/clean-implementation-review/SKILL.md +34 -2
- package/generated/plugins/agdf/skills/code-review/SKILL.md +36 -2
- package/generated/plugins/agdf/skills/delivery-closeout/SKILL.md +34 -2
- package/generated/plugins/agdf/skills/delivery-path-search/SKILL.md +34 -2
- package/generated/plugins/agdf/skills/gate-check/SKILL.md +68 -222
- package/generated/plugins/agdf/skills/prd-definition/SKILL.md +51 -0
- package/generated/plugins/agdf/skills/prd-definition/help.md +23 -0
- package/generated/plugins/agdf/skills/qa-gate/SKILL.md +73 -5
- package/generated/plugins/agdf/skills/release-or/SKILL.md +36 -3
- package/generated/plugins/agdf/skills/sd-definition/SKILL.md +51 -0
- package/generated/plugins/agdf/skills/sd-definition/help.md +17 -0
- package/generated/plugins/agdf/skills/task-plan-review/SKILL.md +34 -2
- package/generated/plugins/agdf/skills/tp-definition/SKILL.md +51 -0
- package/generated/plugins/agdf/skills/tp-definition/help.md +17 -0
- package/generated/plugins/agdf/skills/ur-definition/SKILL.md +54 -0
- package/generated/plugins/agdf/skills/ur-definition/help.md +19 -0
- package/generated/plugins/agdf/skills/ux-intent-definition/SKILL.md +100 -6
- package/generated/plugins/agdf/skills/ux-intent-definition/help.md +3 -0
- package/generated/plugins/agdf/submission/openai/availability.md +1 -1
- package/generated/plugins/agdf/submission/openai/capability-matrix.json +1 -1
- package/generated/plugins/agdf/submission/openai/release-notes.md +1 -1
- package/generated/plugins/agdf/submission/openai/reviewer-cases.json +1 -1
- package/generated/plugins/copilot/agdf/.agdf-payload-inventory.json +3314 -409
- package/generated/plugins/copilot/agdf/control/README.md +125 -0
- package/generated/plugins/copilot/agdf/control/templates/AGDF_RUN.md +139 -0
- package/generated/plugins/copilot/agdf/control/templates/AGENT_QUALITY_CONTRACTS.json +126 -0
- package/generated/plugins/copilot/agdf/control/templates/CONTEXT_GRAPH.md +51 -0
- package/generated/plugins/copilot/agdf/control/templates/MASTER_BACKLOG.md +39 -0
- package/generated/plugins/copilot/agdf/control/templates/RUN_STATE.md +93 -0
- package/generated/plugins/copilot/agdf/control/templates/SOT_REGISTRY.md +25 -0
- package/generated/plugins/copilot/agdf/control/templates/artefacts/BROWNFIELD_REVIEW.md +135 -0
- package/generated/plugins/copilot/agdf/control/templates/artefacts/OR.md +125 -0
- package/generated/plugins/copilot/agdf/control/templates/artefacts/PRD.md +113 -0
- package/generated/plugins/copilot/agdf/control/templates/artefacts/QA_REPORT.md +44 -0
- package/generated/plugins/copilot/agdf/control/templates/artefacts/SD.md +70 -0
- package/generated/plugins/copilot/agdf/control/templates/artefacts/TP.md +71 -0
- package/generated/plugins/copilot/agdf/control/templates/artefacts/UR.md +58 -0
- package/generated/plugins/copilot/agdf/control/templates/artefacts/UX_INTENT_DEFINITION.md +61 -0
- package/generated/plugins/copilot/agdf/control/templates/artefacts/VERIFIED_CHANGE.md +58 -0
- package/generated/plugins/copilot/agdf/mcp/agdf-mcp-launch.js +7 -0
- package/generated/plugins/copilot/agdf/mcp/sdk/expected-sdk.json +21 -0
- package/generated/plugins/copilot/agdf/mcp/sdk/package-lock.json +47 -0
- package/generated/plugins/copilot/agdf/mcp/sdk/package.json +7 -0
- package/generated/plugins/copilot/agdf/mcp/server/NOTICE +10 -0
- package/generated/plugins/copilot/agdf/mcp/server/README.md +136 -0
- package/generated/plugins/copilot/agdf/mcp/server/bin/agdf-mcp.js +24 -0
- package/generated/plugins/copilot/agdf/mcp/server/package.json +59 -0
- package/generated/plugins/copilot/agdf/mcp/server/src/cockpit-resource.js +20 -0
- package/generated/plugins/copilot/agdf/mcp/server/src/generation-entry.js +86 -0
- package/generated/plugins/copilot/agdf/mcp/server/src/generation-protocol.js +44 -0
- package/generated/plugins/copilot/agdf/mcp/server/src/generation.js +211 -0
- package/generated/plugins/copilot/agdf/mcp/server/src/main.js +56 -0
- package/generated/plugins/copilot/agdf/mcp/server/src/server.js +187 -0
- package/generated/plugins/copilot/agdf/mcp/server/src/ui-capability.js +17 -0
- package/generated/plugins/copilot/agdf/mcp/server/src/worker-entry.js +39 -0
- package/generated/plugins/copilot/agdf/mcp/server/src/worker.js +134 -0
- package/generated/plugins/copilot/agdf/mcp.json +16 -0
- package/generated/plugins/copilot/agdf/meta/agdf-agent-router.md +50 -8
- package/generated/plugins/copilot/agdf/meta/agdf-plugin.definition.json +288 -42
- package/generated/plugins/copilot/agdf/meta/agdf-runtime-contract.md +17 -9
- package/generated/plugins/copilot/agdf/meta/distribution-profile-history.json +7 -0
- package/generated/plugins/copilot/agdf/plugin.json +3 -5
- package/generated/plugins/copilot/agdf/runtime/agdf-local.js +5 -4
- package/generated/plugins/copilot/agdf/runtime/agdf-session-check.js +110 -47
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/agdf-interaction-locales.json +2682 -495
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/agdf-plugin.definition.json +288 -42
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/closeout.md +82 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/context-graph.md +48 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/control-scaffold.md +145 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/gate-artifact-preparation.md +132 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/gate-transition.md +209 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/interaction.md +777 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/modes.md +195 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/prd-definition.md +130 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/quality.md +228 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/request-activation.md +252 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/sd-definition.md +69 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/task-target-resolution.md +156 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/tp-definition.md +81 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/generated/plugins/agdf/meta/contracts/ur-definition.md +94 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/command-registry.js +251 -16
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/contract-command.js +24 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/control-maintenance-command.js +44 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/delivery-path-search-command.js +11 -11
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/parse-args.js +254 -5
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/runtime-context.js +14 -37
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/cli/validation-handlers.js +205 -7
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-command.js +4 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/git-observation.js +22 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-maintenance/interaction.js +28 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-maintenance/repair.js +4 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-maintenance/service.js +3 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-maintenance/startup.js +25 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/run-recovery.js +5 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/claude.js +3 -3
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/codex.js +3 -3
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/opencode.js +4 -4
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/evaluators/protocol.js +1 -1
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/generators/claude.js +3 -3
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/generators/codex.js +3 -3
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/generators/protocol.js +1 -1
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/surfaces/capabilities.js +1 -1
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/delivery-path-search/transports/read-only-guard.js +2 -1
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/host-adapters/claude/session-command.js +2 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/host-adapters/codex/session-command.js +7 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/host-adapters/copilot/session-command.js +1 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/host-adapters/opencode/session-command.js +1 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/host-adapters/session-command.js +11 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/host-command.js +112 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/mcp-dispatch-runtime.js +360 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/mcp-lifecycle/facade-entry.js +26 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/mcp-lifecycle/facade-owner-entry.js +34 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/mcp-lifecycle/package.js +527 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/mcp-lifecycle/plugin-runtime.js +420 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/npm-invocation.js +27 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/repository-context.js +87 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/control-command-service.js +12 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/control-context.js +11 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/git-history.js +7 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/git-originals.js +36 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/local-validator.js +39 -5
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/plugin-provenance.js +1 -298
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/runtime-probe.js +61 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime/validator-application.js +3 -3
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/runtime-check-consent/contract.js +9 -8
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/skill-dispatch/binding.js +9 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/package.json +6 -2
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/acceptance-criteria.js +61 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/backlog-vocabulary.d.ts +3 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/backlog-vocabulary.js +15 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/closeout-readiness.js +103 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/decision-content-readiness.js +131 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/definition-sources.js +46 -0
- package/{lib → generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib}/control-evaluation/delivery-map.js +31 -37
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/delivery-relationships.js +21 -0
- package/generated/plugins/{agdf/runtime/create-agdf → copilot/agdf/runtime/create-agdf/runtime/core}/lib/control-evaluation/doctor.js +85 -17
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/gate-check.js +827 -0
- package/{lib → generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib}/control-evaluation/gate-policy.js +141 -10
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/markdown-table.js +40 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/next-action.js +32 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/normalized-gaps.js +105 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/prd-readiness.js +51 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/qa-follow-up.js +83 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/report-decision.js +237 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/run-state-policy.js +51 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-evaluation/run-state.js +108 -74
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/run-step-policy.js +20 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/run-work-summary.js +109 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/sd-readiness.js +56 -0
- package/{lib → generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib}/control-evaluation/shared.js +5 -2
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/tp-planning.js +118 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/traceability-readiness.js +212 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-evaluation/ur-readiness.js +47 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-evaluation/verified-change.js +10 -30
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/artifact-readiness.js +122 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/contract.js +299 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/selection.js +35 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-inspect/service.js +319 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/compatibility.js +149 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/contract.js +41 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/interaction.js +57 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/migration.js +85 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/presentation.js +122 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/repair.js +226 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-maintenance/service.js +38 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-read/fs.js +55 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-read/snapshot.js +378 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-read-boundary.js +22 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/approval-command-contract.js +73 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/approval-command.js +137 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/approval-operations.js +95 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/artefact-binding-proof.js +90 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/artefact-bindings.js +94 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/backlog-summary-shape.d.ts +4 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/backlog-summary-shape.js +40 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/backlog-summary.js +67 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/contained-file.js +56 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/control-configuration.js +19 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/decision-material-contract.js +12 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/evidence-bindings.js +132 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-state/index.js +2 -0
- package/generated/plugins/{agdf/runtime/create-agdf → copilot/agdf/runtime/create-agdf/runtime/core}/lib/control-state/legacy-migration.js +5 -31
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/legacy-projection-reader.js +38 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/presentation-decision.js +138 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/preview-render.js +130 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/preview-review.js +136 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/preview-snapshot.js +108 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/qa-deviation-acceptance.js +82 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/recording-formats.js +29 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-artefact-recording.js +81 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-backlog-writer.js +80 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-backlog.js +90 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-command-contract.js +143 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-command-service.js +174 -0
- package/generated/plugins/{agdf/runtime/create-agdf → copilot/agdf/runtime/create-agdf/runtime/core}/lib/control-state/run-identity.js +1 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-operation-identity.js +31 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-operation-proof.js +103 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-operation-status.js +59 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-operations.js +80 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-owned-outputs.js +59 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-presentation-envelope.js +36 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-presentation-render.js +443 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-presentation.js +348 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-recording.js +273 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-recovery.js +296 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-relationship-correction.js +74 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-revision-boundary.js +44 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-revision-history.js +184 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-revision.js +458 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-seal-compute.js +141 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-seal.js +26 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-source-revisions.js +221 -0
- package/{lib/control-state/run-state-parser.js → generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-document.js} +17 -47
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-edits.js +170 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-parser.js +106 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-reader.js +57 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-repository.js +201 -0
- package/generated/plugins/{agdf/runtime/create-agdf → copilot/agdf/runtime/create-agdf/runtime/core}/lib/control-state/run-state-resolver.js +1 -1
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-state-writer.js +484 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-step-pending.js +15 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-step-transaction.js +359 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-steps.js +571 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-store-inspection.js +65 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-text.js +8 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/delivery-continuation/service.js +67 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/fs-swap.js +26 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/index.js +14 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/interaction-catalog-validation.js +26 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/interaction-catalog.js +98 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/interaction-presentation.js +437 -33
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/mcp-resource-contract.js +4 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/mcp-tool-errors.js +176 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/repository-context-reader.js +87 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/resources/artefact-templates.js +72 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/resources/binding.js +27 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/resources/context.js +70 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/resources/contracts.js +23 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/runtime/distribution-profile-history.js +173 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/runtime/plugin-provenance.js +496 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/binding.js +66 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/compact-continuation.js +76 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/contract.js +430 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/delivery-intake.js +80 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/delivery-run-assignment.js +74 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/prd-definition.js +39 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/sd-definition.js +39 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/service.js +833 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/skill-dispatch/tp-definition.js +41 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/lib/task-target-resolution.js +202 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/LICENSE +11 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/decode.js +3 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/decode-codepoint.js +77 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/decode.js +511 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/encode.js +73 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/escape.js +121 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/generated/decode-data-html.js +10 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/generated/decode-data-xml.js +10 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/generated/encode-html.js +13 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/index.js +131 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/commonjs/package.json +3 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/decode-codepoint.js +72 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/decode.js +497 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/encode.js +69 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/escape.js +117 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/generated/decode-data-html.js +7 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/generated/decode-data-xml.js +7 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/generated/encode-html.js +10 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/index.js +107 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/dist/esm/package.json +3 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/escape.js +3 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/package.json +118 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/entities/src/generated/.eslintrc.json +10 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/LICENSE +20 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/index.browser.cjs +43 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/index.browser.js +43 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/index.cjs +47 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/index.js +47 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/index.native.js +38 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/async/package.json +12 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/bin/nanoid.cjs +55 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/index.browser.cjs +45 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/index.browser.js +45 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/index.cjs +63 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/index.js +63 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/nanoid.js +1 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/non-secure/index.cjs +24 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/non-secure/index.js +24 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/non-secure/package.json +6 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/package.json +89 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/url-alphabet/index.cjs +4 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/url-alphabet/index.js +4 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/nanoid/url-alphabet/package.json +6 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/LICENSE +19 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/doctype.js +118 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/error-codes.js +66 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/foreign-content.js +237 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/html.js +528 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/token.js +24 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/common/unicode.js +70 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/index.js +54 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/package.json +1 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/parser/formatting-element-list.js +114 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/parser/index.js +3240 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/parser/open-element-stack.js +328 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/serializer/index.js +172 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/tokenizer/index.js +2714 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/tokenizer/preprocessor.js +200 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/tree-adapters/default.js +176 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/cjs/tree-adapters/interface.js +2 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/doctype.js +114 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/error-codes.js +63 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/foreign-content.js +228 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/html.js +523 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/token.js +20 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/common/unicode.js +62 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/index.js +42 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/parser/formatting-element-list.js +110 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/parser/index.js +3245 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/parser/open-element-stack.js +324 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/serializer/index.js +168 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/tokenizer/index.js +2710 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/tokenizer/preprocessor.js +196 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/tree-adapters/default.js +173 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/dist/tree-adapters/interface.js +1 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/parse5/package.json +50 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/picocolors/LICENSE +15 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/picocolors/package.json +25 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/picocolors/picocolors.browser.js +4 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/picocolors/picocolors.js +75 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/LICENSE +20 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/at-rule.js +25 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/comment.js +13 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/container.js +494 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/css-syntax-error.js +133 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/declaration.js +24 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/document.js +33 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/fromJSON.js +107 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/input.js +282 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/lazy-result.js +626 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/list.js +79 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/map-generator.js +383 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/no-work-result.js +137 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/node.js +494 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/parse.js +42 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/parser.js +626 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/postcss.js +101 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/postcss.mjs +30 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/previous-map.js +176 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/processor.js +67 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/result.js +42 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/root.js +76 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/rule.js +27 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/stringifier.js +457 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/stringify.js +69 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/symbols.js +5 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/terminal-highlight.js +70 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/tokenize.js +270 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/warn-once.js +13 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/lib/warning.js +47 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/postcss/package.json +88 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/LICENSE +28 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/array-set.js +121 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/base64-vlq.js +140 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/base64.js +67 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/binary-search.js +111 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/mapping-list.js +79 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/quick-sort.js +141 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/source-map-consumer.js +1236 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/source-map-generator.js +446 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/source-node.js +420 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/lib/util.js +594 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/package.json +71 -0
- package/generated/plugins/copilot/agdf/runtime/create-agdf/runtime/core/node_modules/source-map-js/source-map.js +8 -0
- package/generated/plugins/copilot/agdf/runtime/runtime-manifest.json +2 -2
- package/generated/plugins/copilot/agdf/{copilot-skills → skills}/agdf-brownfield-analysis/SKILL.md +70 -8
- package/generated/plugins/copilot/agdf/{copilot-skills → skills}/agdf-clean-implementation-review/SKILL.md +35 -3
- package/generated/plugins/copilot/agdf/{copilot-skills → skills}/agdf-code-review/SKILL.md +36 -2
- package/generated/plugins/copilot/agdf/{copilot-skills → skills}/agdf-delivery-closeout/SKILL.md +36 -4
- package/generated/plugins/copilot/agdf/{copilot-skills → skills}/agdf-delivery-path-search/SKILL.md +36 -4
- package/generated/plugins/copilot/agdf/skills/agdf-gate-check/SKILL.md +86 -0
- package/generated/plugins/copilot/agdf/skills/agdf-interaction-locales.json +1 -0
- package/generated/plugins/copilot/agdf/skills/agdf-prd-definition/SKILL.md +51 -0
- package/generated/plugins/copilot/agdf/skills/agdf-qa-gate/SKILL.md +205 -0
- package/generated/plugins/copilot/agdf/{copilot-skills → skills}/agdf-release-or/SKILL.md +44 -11
- package/generated/plugins/copilot/agdf/skills/agdf-runtime-contract.md +24 -0
- package/generated/plugins/copilot/agdf/skills/agdf-sd-definition/SKILL.md +51 -0
- package/generated/plugins/copilot/agdf/{copilot-skills → skills}/agdf-task-plan-review/SKILL.md +35 -3
- package/generated/plugins/copilot/agdf/skills/agdf-tp-definition/SKILL.md +51 -0
- package/generated/plugins/copilot/agdf/skills/agdf-ur-definition/SKILL.md +54 -0
- package/generated/plugins/copilot/agdf/skills/agdf-ux-intent-definition/SKILL.md +188 -0
- package/generated/plugins/copilot/agdf/skills/contracts/closeout.md +82 -0
- package/generated/plugins/copilot/agdf/skills/contracts/context-graph.md +48 -0
- package/generated/plugins/copilot/agdf/skills/contracts/control-scaffold.md +145 -0
- package/generated/plugins/copilot/agdf/skills/contracts/gate-artifact-preparation.md +132 -0
- package/generated/plugins/copilot/agdf/skills/contracts/gate-transition.md +209 -0
- package/generated/plugins/copilot/agdf/skills/contracts/interaction.md +777 -0
- package/generated/plugins/copilot/agdf/skills/contracts/modes.md +195 -0
- package/generated/plugins/copilot/agdf/skills/contracts/prd-definition.md +130 -0
- package/generated/plugins/copilot/agdf/skills/contracts/quality.md +228 -0
- package/generated/plugins/copilot/agdf/skills/contracts/request-activation.md +252 -0
- package/generated/plugins/copilot/agdf/skills/contracts/sd-definition.md +69 -0
- package/generated/plugins/copilot/agdf/skills/contracts/task-target-resolution.md +156 -0
- package/generated/plugins/copilot/agdf/skills/contracts/tp-definition.md +81 -0
- package/generated/plugins/copilot/agdf/skills/contracts/ur-definition.md +94 -0
- package/generated/submissions/openai/agdf/.codex-plugin/plugin.json +1 -1
- package/generated/submissions/openai/agdf/meta/agdf-agent-router.md +50 -8
- package/generated/submissions/openai/agdf/meta/agdf-interaction-locales.json +2682 -495
- package/generated/submissions/openai/agdf/meta/agdf-plugin.definition.json +288 -42
- package/generated/submissions/openai/agdf/meta/agdf-runtime-contract.md +17 -9
- package/generated/submissions/openai/agdf/meta/contracts/closeout.md +6 -2
- package/generated/submissions/openai/agdf/meta/contracts/control-scaffold.md +17 -4
- package/generated/submissions/openai/agdf/meta/contracts/gate-artifact-preparation.md +132 -0
- package/generated/submissions/openai/agdf/meta/contracts/gate-transition.md +48 -4
- package/generated/submissions/openai/agdf/meta/contracts/interaction.md +328 -38
- package/generated/submissions/openai/agdf/meta/contracts/modes.md +23 -11
- package/generated/submissions/openai/agdf/meta/contracts/prd-definition.md +130 -0
- package/generated/submissions/openai/agdf/meta/contracts/quality.md +77 -6
- package/generated/submissions/openai/agdf/meta/contracts/request-activation.md +252 -0
- package/generated/submissions/openai/agdf/meta/contracts/sd-definition.md +69 -0
- package/generated/submissions/openai/agdf/meta/contracts/task-target-resolution.md +63 -9
- package/generated/submissions/openai/agdf/meta/contracts/tp-definition.md +81 -0
- package/generated/submissions/openai/agdf/meta/contracts/ur-definition.md +94 -0
- package/generated/submissions/openai/agdf/meta/copilot-payload-baseline.json +3 -3
- package/generated/submissions/openai/agdf/meta/distribution-profile-history.json +7 -0
- package/generated/submissions/openai/agdf/meta/schemas/agent-plugins/1.0.0/mcp.schema.json +120 -0
- package/generated/submissions/openai/agdf/meta/schemas/agent-plugins/1.0.0/plugin.schema.json +65 -0
- package/generated/submissions/openai/agdf/meta/schemas/agent-plugins/1.0.0/provenance.json +19 -0
- package/generated/submissions/openai/agdf/plugin.json +47 -0
- package/generated/submissions/openai/agdf/skills/brownfield-analysis/SKILL.md +67 -5
- package/generated/submissions/openai/agdf/skills/clean-implementation-review/SKILL.md +34 -2
- package/generated/submissions/openai/agdf/skills/code-review/SKILL.md +36 -2
- package/generated/submissions/openai/agdf/skills/delivery-closeout/SKILL.md +34 -2
- package/generated/submissions/openai/agdf/skills/delivery-path-search/SKILL.md +34 -2
- package/generated/submissions/openai/agdf/skills/gate-check/SKILL.md +68 -222
- package/generated/submissions/openai/agdf/skills/prd-definition/SKILL.md +51 -0
- package/generated/submissions/openai/agdf/skills/prd-definition/help.md +23 -0
- package/generated/submissions/openai/agdf/skills/qa-gate/SKILL.md +73 -5
- package/generated/submissions/openai/agdf/skills/release-or/SKILL.md +36 -3
- package/generated/submissions/openai/agdf/skills/sd-definition/SKILL.md +51 -0
- package/generated/submissions/openai/agdf/skills/sd-definition/help.md +17 -0
- package/generated/submissions/openai/agdf/skills/task-plan-review/SKILL.md +34 -2
- package/generated/submissions/openai/agdf/skills/tp-definition/SKILL.md +51 -0
- package/generated/submissions/openai/agdf/skills/tp-definition/help.md +17 -0
- package/generated/submissions/openai/agdf/skills/ur-definition/SKILL.md +54 -0
- package/generated/submissions/openai/agdf/skills/ur-definition/help.md +19 -0
- package/generated/submissions/openai/agdf/skills/ux-intent-definition/SKILL.md +100 -6
- package/generated/submissions/openai/agdf/skills/ux-intent-definition/help.md +3 -0
- package/generated/submissions/openai/agdf/submission/openai/availability.md +1 -1
- package/generated/submissions/openai/agdf/submission/openai/capability-matrix.json +1 -1
- package/generated/submissions/openai/agdf/submission/openai/inventory.json +104 -32
- package/generated/submissions/openai/agdf/submission/openai/listing.json +1 -1
- package/generated/submissions/openai/agdf/submission/openai/readiness.json +2 -2
- package/generated/submissions/openai/agdf/submission/openai/readiness.md +2 -2
- package/generated/submissions/openai/agdf/submission/openai/release-notes.md +1 -1
- package/generated/submissions/openai/agdf/submission/openai/reviewer-cases.json +1 -1
- package/lib/cli/application.js +726 -271
- package/lib/cli/command-registry.js +251 -16
- package/lib/cli/contract-command.js +24 -0
- package/lib/cli/control-maintenance-command.js +44 -0
- package/lib/cli/delivery-path-search-command.js +11 -11
- package/lib/cli/parse-args.js +254 -5
- package/lib/cli/runtime-context.js +14 -37
- package/lib/cli/validation-handlers.js +205 -7
- package/lib/control-command.js +4 -0
- package/lib/control-evaluation/git-observation.js +22 -0
- package/lib/control-maintenance/interaction.js +28 -0
- package/lib/control-maintenance/repair.js +4 -0
- package/lib/control-maintenance/service.js +3 -0
- package/lib/control-maintenance/startup.js +25 -0
- package/lib/control-state/run-recovery.js +5 -0
- package/lib/delivery-path-search/evaluators/claude.js +3 -3
- package/lib/delivery-path-search/evaluators/codex.js +3 -3
- package/lib/delivery-path-search/evaluators/opencode.js +4 -4
- package/lib/delivery-path-search/evaluators/protocol.js +1 -1
- package/lib/delivery-path-search/generators/claude.js +3 -3
- package/lib/delivery-path-search/generators/codex.js +3 -3
- package/lib/delivery-path-search/generators/protocol.js +1 -1
- package/lib/delivery-path-search/surfaces/capabilities.js +1 -1
- package/lib/delivery-path-search/transports/read-only-guard.js +2 -1
- package/lib/host-adapters/claude/loaded-sessions.js +45 -0
- package/lib/host-adapters/claude/marketplace.js +2 -0
- package/lib/host-adapters/claude/permission-rules.js +20 -0
- package/lib/host-adapters/claude/plugin-mcp.js +40 -0
- package/lib/host-adapters/claude/plugin.js +285 -0
- package/lib/host-adapters/claude/runtime-check.js +39 -0
- package/lib/host-adapters/claude/session-command.js +2 -0
- package/lib/host-adapters/claude/uninstall.js +80 -0
- package/lib/host-adapters/codex/identity.js +19 -0
- package/lib/host-adapters/codex/mcp-startup.js +14 -0
- package/lib/host-adapters/codex/plugin-mcp.js +39 -0
- package/lib/host-adapters/codex/plugin.js +243 -0
- package/lib/host-adapters/codex/runtime-check.js +27 -0
- package/lib/host-adapters/codex/session-command.js +7 -0
- package/lib/host-adapters/copilot/plugin.js +220 -0
- package/lib/host-adapters/copilot/session-command.js +1 -0
- package/lib/host-adapters/opencode/runtime-check.js +39 -0
- package/lib/host-adapters/opencode/session-command.js +1 -0
- package/lib/host-adapters/opencode/status.js +43 -0
- package/lib/host-adapters/session-command.js +11 -0
- package/lib/host-command.js +112 -0
- package/lib/install-setup/contract.js +319 -0
- package/lib/install-setup/control-migration.js +10 -0
- package/lib/install-setup/control-repair.js +1 -0
- package/lib/install-setup/interaction.js +157 -0
- package/lib/install-setup/presentation.js +337 -0
- package/lib/install-setup/service.js +441 -0
- package/lib/installers/copilot-marketplace-transport.js +74 -0
- package/lib/installers/copilot-settings.js +34 -3
- package/lib/installers/copilot-skill-discovery.js +27 -0
- package/lib/installers/local-development.js +107 -11
- package/lib/installers/local-marketplace.js +313 -37
- package/lib/installers/npm-invocation.js +2 -0
- package/lib/installers/opencode-activation.js +5 -31
- package/lib/installers/opencode.js +286 -89
- package/lib/installers/packaged-app-marketplace.js +67 -0
- package/lib/installers/plugin-command.js +115 -0
- package/lib/installers/plugin-installers.js +21 -521
- package/lib/lifecycle/operations.js +78 -137
- package/lib/lifecycle/owned-mutation.js +64 -0
- package/lib/lifecycle/presentation.js +47 -4
- package/lib/lifecycle/result.js +183 -2
- package/lib/lifecycle/status.js +150 -66
- package/lib/mcp-dispatch-runtime.js +360 -0
- package/lib/mcp-lifecycle/adapter-contract.js +54 -0
- package/lib/mcp-lifecycle/adapters/claude.js +123 -0
- package/lib/mcp-lifecycle/adapters/codex-origin-probe.js +87 -0
- package/lib/mcp-lifecycle/adapters/codex.js +502 -0
- package/lib/mcp-lifecycle/adapters/copilot.js +106 -0
- package/lib/mcp-lifecycle/adapters/file-utils.js +90 -0
- package/lib/mcp-lifecycle/adapters/opencode.js +148 -0
- package/lib/mcp-lifecycle/evidence.js +122 -0
- package/lib/mcp-lifecycle/facade-entry.js +26 -0
- package/lib/mcp-lifecycle/facade-owner-entry.js +34 -0
- package/lib/mcp-lifecycle/host-config.js +60 -0
- package/lib/mcp-lifecycle/package.js +527 -0
- package/lib/mcp-lifecycle/plugin-runtime.js +420 -0
- package/lib/mcp-lifecycle/presentation.js +61 -0
- package/lib/mcp-lifecycle/profile-context.js +11 -0
- package/lib/mcp-lifecycle/profile.js +63 -0
- package/lib/mcp-lifecycle/result.js +92 -0
- package/lib/mcp-lifecycle/service.js +533 -0
- package/lib/npm-invocation.js +27 -0
- package/lib/repository-context.js +87 -0
- package/lib/runtime/control-command-service.js +12 -0
- package/lib/runtime/control-context.js +11 -0
- package/lib/runtime/git-history.js +7 -0
- package/lib/runtime/git-originals.js +36 -0
- package/lib/runtime/local-validator.js +39 -5
- package/lib/runtime/plugin-provenance.js +1 -298
- package/lib/runtime/runtime-probe.js +61 -0
- package/lib/runtime/validator-application.js +3 -3
- package/lib/runtime-check-consent/adapters.js +3 -42
- package/lib/runtime-check-consent/claude-settings.js +2 -23
- package/lib/runtime-check-consent/codex-hooks.js +96 -0
- package/lib/runtime-check-consent/codex-plugin-consent.js +118 -0
- package/lib/runtime-check-consent/contract.js +9 -8
- package/lib/runtime-check-consent/coordinator.js +3 -3
- package/lib/runtime-check-consent/service.js +29 -53
- package/lib/runtime-check-consent/state.js +1 -1
- package/lib/scaffold/canonical-init.js +691 -0
- package/lib/scaffold/plan.js +8 -14
- package/lib/scaffold/presentation.js +53 -3
- package/lib/skill-dispatch/binding.js +9 -0
- package/opencode-plugin.js +99 -26
- package/package.json +22 -51
- package/runtime/core/lib/control-evaluation/acceptance-criteria.js +61 -0
- package/runtime/core/lib/control-evaluation/backlog-vocabulary.d.ts +3 -0
- package/runtime/core/lib/control-evaluation/backlog-vocabulary.js +15 -0
- package/runtime/core/lib/control-evaluation/closeout-readiness.js +103 -0
- package/runtime/core/lib/control-evaluation/decision-content-readiness.js +131 -0
- package/runtime/core/lib/control-evaluation/definition-sources.js +46 -0
- package/{generated/plugins/copilot/agdf/runtime/create-agdf → runtime/core}/lib/control-evaluation/delivery-map.js +31 -37
- package/runtime/core/lib/control-evaluation/delivery-relationships.js +21 -0
- package/{generated/plugins/copilot/agdf/runtime/create-agdf → runtime/core}/lib/control-evaluation/doctor.js +85 -17
- package/runtime/core/lib/control-evaluation/gate-check.js +827 -0
- package/{generated/plugins/agdf/runtime/create-agdf → runtime/core}/lib/control-evaluation/gate-policy.js +141 -10
- package/runtime/core/lib/control-evaluation/markdown-table.js +40 -0
- package/runtime/core/lib/control-evaluation/next-action.js +32 -0
- package/runtime/core/lib/control-evaluation/normalized-gaps.js +105 -0
- package/runtime/core/lib/control-evaluation/prd-readiness.js +51 -0
- package/runtime/core/lib/control-evaluation/qa-follow-up.js +83 -0
- package/runtime/core/lib/control-evaluation/report-decision.js +237 -0
- package/runtime/core/lib/control-evaluation/run-state-policy.js +51 -0
- package/{generated/plugins/agdf/runtime/create-agdf → runtime/core}/lib/control-evaluation/run-state.js +108 -74
- package/runtime/core/lib/control-evaluation/run-step-policy.js +20 -0
- package/runtime/core/lib/control-evaluation/run-work-summary.js +109 -0
- package/runtime/core/lib/control-evaluation/sd-readiness.js +56 -0
- package/{generated/plugins/agdf/runtime/create-agdf → runtime/core}/lib/control-evaluation/shared.js +5 -2
- package/runtime/core/lib/control-evaluation/tp-planning.js +118 -0
- package/runtime/core/lib/control-evaluation/traceability-readiness.js +212 -0
- package/runtime/core/lib/control-evaluation/ur-readiness.js +47 -0
- package/{generated/plugins/agdf/runtime/create-agdf → runtime/core}/lib/control-evaluation/verified-change.js +10 -30
- package/runtime/core/lib/control-inspect/artifact-readiness.js +122 -0
- package/runtime/core/lib/control-inspect/cockpit-backlog.js +135 -0
- package/runtime/core/lib/control-inspect/cockpit-context.js +97 -0
- package/runtime/core/lib/control-inspect/cockpit-contract.js +86 -0
- package/runtime/core/lib/control-inspect/cockpit-list.d.ts +17 -0
- package/runtime/core/lib/control-inspect/cockpit-list.js +45 -0
- package/runtime/core/lib/control-inspect/cockpit-session.js +217 -0
- package/runtime/core/lib/control-inspect/cockpit.js +388 -0
- package/runtime/core/lib/control-inspect/contract.js +299 -0
- package/runtime/core/lib/control-inspect/decision-session.js +243 -0
- package/runtime/core/lib/control-inspect/selection.js +35 -0
- package/runtime/core/lib/control-inspect/service.js +319 -0
- package/runtime/core/lib/control-maintenance/compatibility.js +149 -0
- package/runtime/core/lib/control-maintenance/contract.js +41 -0
- package/runtime/core/lib/control-maintenance/interaction.js +57 -0
- package/runtime/core/lib/control-maintenance/migration.js +85 -0
- package/runtime/core/lib/control-maintenance/presentation.js +122 -0
- package/runtime/core/lib/control-maintenance/repair.js +226 -0
- package/runtime/core/lib/control-maintenance/service.js +38 -0
- package/runtime/core/lib/control-read/cockpit-pool.js +105 -0
- package/runtime/core/lib/control-read/cockpit-worker.js +33 -0
- package/runtime/core/lib/control-read/control-changes.js +33 -0
- package/runtime/core/lib/control-read/fs.js +55 -0
- package/runtime/core/lib/control-read/snapshot.js +378 -0
- package/runtime/core/lib/control-read-boundary.js +22 -0
- package/runtime/core/lib/control-state/approval-command-contract.js +73 -0
- package/runtime/core/lib/control-state/approval-command.js +137 -0
- package/runtime/core/lib/control-state/approval-operations.js +95 -0
- package/runtime/core/lib/control-state/artefact-binding-proof.js +90 -0
- package/runtime/core/lib/control-state/artefact-bindings.js +94 -0
- package/runtime/core/lib/control-state/backlog-summary-shape.d.ts +4 -0
- package/runtime/core/lib/control-state/backlog-summary-shape.js +40 -0
- package/runtime/core/lib/control-state/backlog-summary.js +67 -0
- package/runtime/core/lib/control-state/contained-file.js +56 -0
- package/runtime/core/lib/control-state/control-configuration.js +19 -0
- package/runtime/core/lib/control-state/decision-action-contract.js +32 -0
- package/runtime/core/lib/control-state/decision-action-service.js +55 -0
- package/runtime/core/lib/control-state/decision-material-contract.js +12 -0
- package/runtime/core/lib/control-state/evidence-bindings.js +132 -0
- package/{lib → runtime/core/lib}/control-state/index.js +2 -0
- package/{lib → runtime/core/lib}/control-state/legacy-migration.js +5 -31
- package/runtime/core/lib/control-state/legacy-projection-reader.js +38 -0
- package/runtime/core/lib/control-state/presentation-decision.js +138 -0
- package/runtime/core/lib/control-state/preview-render.js +130 -0
- package/runtime/core/lib/control-state/preview-review.js +136 -0
- package/runtime/core/lib/control-state/preview-snapshot.js +108 -0
- package/runtime/core/lib/control-state/qa-deviation-acceptance.js +82 -0
- package/runtime/core/lib/control-state/recording-formats.js +29 -0
- package/runtime/core/lib/control-state/run-artefact-recording.js +81 -0
- package/runtime/core/lib/control-state/run-backlog-writer.js +80 -0
- package/runtime/core/lib/control-state/run-backlog.js +90 -0
- package/runtime/core/lib/control-state/run-command-contract.js +143 -0
- package/runtime/core/lib/control-state/run-command-service.js +174 -0
- package/{generated/plugins/copilot/agdf/runtime/create-agdf → runtime/core}/lib/control-state/run-identity.js +1 -0
- package/runtime/core/lib/control-state/run-operation-identity.js +31 -0
- package/runtime/core/lib/control-state/run-operation-proof.js +103 -0
- package/runtime/core/lib/control-state/run-operation-status.js +59 -0
- package/runtime/core/lib/control-state/run-operations.js +80 -0
- package/runtime/core/lib/control-state/run-owned-outputs.js +59 -0
- package/runtime/core/lib/control-state/run-presentation-envelope.js +36 -0
- package/runtime/core/lib/control-state/run-presentation-render.js +443 -0
- package/runtime/core/lib/control-state/run-presentation.js +348 -0
- package/runtime/core/lib/control-state/run-recording.js +273 -0
- package/runtime/core/lib/control-state/run-recovery.js +296 -0
- package/runtime/core/lib/control-state/run-relationship-correction.js +74 -0
- package/runtime/core/lib/control-state/run-revision-boundary.js +44 -0
- package/runtime/core/lib/control-state/run-revision-history.js +184 -0
- package/runtime/core/lib/control-state/run-revision.js +458 -0
- package/runtime/core/lib/control-state/run-seal-compute.js +141 -0
- package/runtime/core/lib/control-state/run-seal.js +26 -0
- package/runtime/core/lib/control-state/run-source-revisions.js +221 -0
- package/{generated/plugins/agdf/runtime/create-agdf/lib/control-state/run-state-parser.js → runtime/core/lib/control-state/run-state-document.js} +17 -47
- package/runtime/core/lib/control-state/run-state-edits.js +170 -0
- package/runtime/core/lib/control-state/run-state-parser.js +106 -0
- package/runtime/core/lib/control-state/run-state-reader.js +57 -0
- package/runtime/core/lib/control-state/run-state-repository.js +201 -0
- package/{lib → runtime/core/lib}/control-state/run-state-resolver.js +1 -1
- package/runtime/core/lib/control-state/run-state-writer.js +484 -0
- package/runtime/core/lib/control-state/run-step-pending.js +15 -0
- package/runtime/core/lib/control-state/run-step-transaction.js +359 -0
- package/runtime/core/lib/control-state/run-steps.js +571 -0
- package/runtime/core/lib/control-state/run-store-inspection.js +65 -0
- package/runtime/core/lib/control-state/run-text.js +8 -0
- package/runtime/core/lib/delivery-continuation/service.js +67 -0
- package/runtime/core/lib/fs-swap.js +26 -0
- package/runtime/core/lib/index.js +14 -0
- package/runtime/core/lib/interaction-catalog-validation.js +26 -0
- package/runtime/core/lib/interaction-catalog.d.ts +2 -0
- package/runtime/core/lib/interaction-catalog.js +98 -0
- package/{lib → runtime/core/lib}/interaction-presentation.js +437 -33
- package/runtime/core/lib/mcp-resource-contract.js +4 -0
- package/runtime/core/lib/mcp-tool-errors.js +176 -0
- package/runtime/core/lib/repository-context-reader.js +87 -0
- package/runtime/core/lib/resources/artefact-templates.js +72 -0
- package/runtime/core/lib/resources/binding.js +26 -0
- package/runtime/core/lib/resources/context.js +70 -0
- package/runtime/core/lib/resources/contracts.js +23 -0
- package/runtime/core/lib/runtime/distribution-profile-history.js +173 -0
- package/runtime/core/lib/runtime/host-installation.js +200 -0
- package/runtime/core/lib/runtime/plugin-provenance.js +496 -0
- package/runtime/core/lib/skill-dispatch/binding.js +66 -0
- package/runtime/core/lib/skill-dispatch/compact-continuation.js +76 -0
- package/runtime/core/lib/skill-dispatch/contract.js +430 -0
- package/runtime/core/lib/skill-dispatch/delivery-intake.js +80 -0
- package/runtime/core/lib/skill-dispatch/delivery-run-assignment.js +74 -0
- package/runtime/core/lib/skill-dispatch/prd-definition.js +39 -0
- package/runtime/core/lib/skill-dispatch/sd-definition.js +39 -0
- package/runtime/core/lib/skill-dispatch/service.js +833 -0
- package/runtime/core/lib/skill-dispatch/tp-definition.js +41 -0
- package/runtime/core/lib/task-target-resolution.js +202 -0
- package/runtime/core/node_modules/entities/LICENSE +11 -0
- package/runtime/core/node_modules/entities/decode.js +3 -0
- package/runtime/core/node_modules/entities/dist/commonjs/decode-codepoint.js +77 -0
- package/runtime/core/node_modules/entities/dist/commonjs/decode.js +511 -0
- package/runtime/core/node_modules/entities/dist/commonjs/encode.js +73 -0
- package/runtime/core/node_modules/entities/dist/commonjs/escape.js +121 -0
- package/runtime/core/node_modules/entities/dist/commonjs/generated/decode-data-html.js +10 -0
- package/runtime/core/node_modules/entities/dist/commonjs/generated/decode-data-xml.js +10 -0
- package/runtime/core/node_modules/entities/dist/commonjs/generated/encode-html.js +13 -0
- package/runtime/core/node_modules/entities/dist/commonjs/index.js +131 -0
- package/runtime/core/node_modules/entities/dist/commonjs/package.json +3 -0
- package/runtime/core/node_modules/entities/dist/esm/decode-codepoint.js +72 -0
- package/runtime/core/node_modules/entities/dist/esm/decode.js +497 -0
- package/runtime/core/node_modules/entities/dist/esm/encode.js +69 -0
- package/runtime/core/node_modules/entities/dist/esm/escape.js +117 -0
- package/runtime/core/node_modules/entities/dist/esm/generated/decode-data-html.js +7 -0
- package/runtime/core/node_modules/entities/dist/esm/generated/decode-data-xml.js +7 -0
- package/runtime/core/node_modules/entities/dist/esm/generated/encode-html.js +10 -0
- package/runtime/core/node_modules/entities/dist/esm/index.js +107 -0
- package/runtime/core/node_modules/entities/dist/esm/package.json +3 -0
- package/runtime/core/node_modules/entities/escape.js +3 -0
- package/runtime/core/node_modules/entities/package.json +118 -0
- package/runtime/core/node_modules/entities/src/generated/.eslintrc.json +10 -0
- package/runtime/core/node_modules/nanoid/LICENSE +20 -0
- package/runtime/core/node_modules/nanoid/async/index.browser.cjs +43 -0
- package/runtime/core/node_modules/nanoid/async/index.browser.js +43 -0
- package/runtime/core/node_modules/nanoid/async/index.cjs +47 -0
- package/runtime/core/node_modules/nanoid/async/index.js +47 -0
- package/runtime/core/node_modules/nanoid/async/index.native.js +38 -0
- package/runtime/core/node_modules/nanoid/async/package.json +12 -0
- package/runtime/core/node_modules/nanoid/bin/nanoid.cjs +55 -0
- package/runtime/core/node_modules/nanoid/index.browser.cjs +45 -0
- package/runtime/core/node_modules/nanoid/index.browser.js +45 -0
- package/runtime/core/node_modules/nanoid/index.cjs +63 -0
- package/runtime/core/node_modules/nanoid/index.js +63 -0
- package/runtime/core/node_modules/nanoid/nanoid.js +1 -0
- package/runtime/core/node_modules/nanoid/non-secure/index.cjs +24 -0
- package/runtime/core/node_modules/nanoid/non-secure/index.js +24 -0
- package/runtime/core/node_modules/nanoid/non-secure/package.json +6 -0
- package/runtime/core/node_modules/nanoid/package.json +89 -0
- package/runtime/core/node_modules/nanoid/url-alphabet/index.cjs +4 -0
- package/runtime/core/node_modules/nanoid/url-alphabet/index.js +4 -0
- package/runtime/core/node_modules/nanoid/url-alphabet/package.json +6 -0
- package/runtime/core/node_modules/parse5/LICENSE +19 -0
- package/runtime/core/node_modules/parse5/dist/cjs/common/doctype.js +118 -0
- package/runtime/core/node_modules/parse5/dist/cjs/common/error-codes.js +66 -0
- package/runtime/core/node_modules/parse5/dist/cjs/common/foreign-content.js +237 -0
- package/runtime/core/node_modules/parse5/dist/cjs/common/html.js +528 -0
- package/runtime/core/node_modules/parse5/dist/cjs/common/token.js +24 -0
- package/runtime/core/node_modules/parse5/dist/cjs/common/unicode.js +70 -0
- package/runtime/core/node_modules/parse5/dist/cjs/index.js +54 -0
- package/runtime/core/node_modules/parse5/dist/cjs/package.json +1 -0
- package/runtime/core/node_modules/parse5/dist/cjs/parser/formatting-element-list.js +114 -0
- package/runtime/core/node_modules/parse5/dist/cjs/parser/index.js +3240 -0
- package/runtime/core/node_modules/parse5/dist/cjs/parser/open-element-stack.js +328 -0
- package/runtime/core/node_modules/parse5/dist/cjs/serializer/index.js +172 -0
- package/runtime/core/node_modules/parse5/dist/cjs/tokenizer/index.js +2714 -0
- package/runtime/core/node_modules/parse5/dist/cjs/tokenizer/preprocessor.js +200 -0
- package/runtime/core/node_modules/parse5/dist/cjs/tree-adapters/default.js +176 -0
- package/runtime/core/node_modules/parse5/dist/cjs/tree-adapters/interface.js +2 -0
- package/runtime/core/node_modules/parse5/dist/common/doctype.js +114 -0
- package/runtime/core/node_modules/parse5/dist/common/error-codes.js +63 -0
- package/runtime/core/node_modules/parse5/dist/common/foreign-content.js +228 -0
- package/runtime/core/node_modules/parse5/dist/common/html.js +523 -0
- package/runtime/core/node_modules/parse5/dist/common/token.js +20 -0
- package/runtime/core/node_modules/parse5/dist/common/unicode.js +62 -0
- package/runtime/core/node_modules/parse5/dist/index.js +42 -0
- package/runtime/core/node_modules/parse5/dist/parser/formatting-element-list.js +110 -0
- package/runtime/core/node_modules/parse5/dist/parser/index.js +3245 -0
- package/runtime/core/node_modules/parse5/dist/parser/open-element-stack.js +324 -0
- package/runtime/core/node_modules/parse5/dist/serializer/index.js +168 -0
- package/runtime/core/node_modules/parse5/dist/tokenizer/index.js +2710 -0
- package/runtime/core/node_modules/parse5/dist/tokenizer/preprocessor.js +196 -0
- package/runtime/core/node_modules/parse5/dist/tree-adapters/default.js +173 -0
- package/runtime/core/node_modules/parse5/dist/tree-adapters/interface.js +1 -0
- package/runtime/core/node_modules/parse5/package.json +50 -0
- package/runtime/core/node_modules/picocolors/LICENSE +15 -0
- package/runtime/core/node_modules/picocolors/package.json +25 -0
- package/runtime/core/node_modules/picocolors/picocolors.browser.js +4 -0
- package/runtime/core/node_modules/picocolors/picocolors.js +75 -0
- package/runtime/core/node_modules/postcss/LICENSE +20 -0
- package/runtime/core/node_modules/postcss/lib/at-rule.js +25 -0
- package/runtime/core/node_modules/postcss/lib/comment.js +13 -0
- package/runtime/core/node_modules/postcss/lib/container.js +494 -0
- package/runtime/core/node_modules/postcss/lib/css-syntax-error.js +133 -0
- package/runtime/core/node_modules/postcss/lib/declaration.js +24 -0
- package/runtime/core/node_modules/postcss/lib/document.js +33 -0
- package/runtime/core/node_modules/postcss/lib/fromJSON.js +107 -0
- package/runtime/core/node_modules/postcss/lib/input.js +282 -0
- package/runtime/core/node_modules/postcss/lib/lazy-result.js +626 -0
- package/runtime/core/node_modules/postcss/lib/list.js +79 -0
- package/runtime/core/node_modules/postcss/lib/map-generator.js +383 -0
- package/runtime/core/node_modules/postcss/lib/no-work-result.js +137 -0
- package/runtime/core/node_modules/postcss/lib/node.js +494 -0
- package/runtime/core/node_modules/postcss/lib/parse.js +42 -0
- package/runtime/core/node_modules/postcss/lib/parser.js +626 -0
- package/runtime/core/node_modules/postcss/lib/postcss.js +101 -0
- package/runtime/core/node_modules/postcss/lib/postcss.mjs +30 -0
- package/runtime/core/node_modules/postcss/lib/previous-map.js +176 -0
- package/runtime/core/node_modules/postcss/lib/processor.js +67 -0
- package/runtime/core/node_modules/postcss/lib/result.js +42 -0
- package/runtime/core/node_modules/postcss/lib/root.js +76 -0
- package/runtime/core/node_modules/postcss/lib/rule.js +27 -0
- package/runtime/core/node_modules/postcss/lib/stringifier.js +457 -0
- package/runtime/core/node_modules/postcss/lib/stringify.js +69 -0
- package/runtime/core/node_modules/postcss/lib/symbols.js +5 -0
- package/runtime/core/node_modules/postcss/lib/terminal-highlight.js +70 -0
- package/runtime/core/node_modules/postcss/lib/tokenize.js +270 -0
- package/runtime/core/node_modules/postcss/lib/warn-once.js +13 -0
- package/runtime/core/node_modules/postcss/lib/warning.js +47 -0
- package/runtime/core/node_modules/postcss/package.json +88 -0
- package/runtime/core/node_modules/source-map-js/LICENSE +28 -0
- package/runtime/core/node_modules/source-map-js/lib/array-set.js +121 -0
- package/runtime/core/node_modules/source-map-js/lib/base64-vlq.js +140 -0
- package/runtime/core/node_modules/source-map-js/lib/base64.js +67 -0
- package/runtime/core/node_modules/source-map-js/lib/binary-search.js +111 -0
- package/runtime/core/node_modules/source-map-js/lib/mapping-list.js +79 -0
- package/runtime/core/node_modules/source-map-js/lib/quick-sort.js +141 -0
- package/runtime/core/node_modules/source-map-js/lib/source-map-consumer.js +1236 -0
- package/runtime/core/node_modules/source-map-js/lib/source-map-generator.js +446 -0
- package/runtime/core/node_modules/source-map-js/lib/source-node.js +420 -0
- package/runtime/core/node_modules/source-map-js/lib/util.js +594 -0
- package/runtime/core/node_modules/source-map-js/package.json +71 -0
- package/runtime/core/node_modules/source-map-js/source-map.js +8 -0
- package/generated/plugins/agdf/runtime/create-agdf/lib/control-evaluation/gate-check.js +0 -506
- package/generated/plugins/agdf/runtime/create-agdf/lib/control-state/run-state-repository.js +0 -68
- package/generated/plugins/agdf/runtime/create-agdf/lib/control-state/run-state-writer.js +0 -97
- package/generated/plugins/copilot/agdf/copilot-skills/agdf-gate-check/SKILL.md +0 -240
- package/generated/plugins/copilot/agdf/copilot-skills/agdf-interaction-locales.json +0 -512
- package/generated/plugins/copilot/agdf/copilot-skills/agdf-qa-gate/SKILL.md +0 -137
- package/generated/plugins/copilot/agdf/copilot-skills/agdf-runtime-contract.md +0 -16
- package/generated/plugins/copilot/agdf/copilot-skills/agdf-ux-intent-definition/SKILL.md +0 -94
- package/generated/plugins/copilot/agdf/copilot-skills/contracts/interaction.md +0 -487
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-evaluation/gate-check.js +0 -506
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/run-state-repository.js +0 -68
- package/generated/plugins/copilot/agdf/runtime/create-agdf/lib/control-state/run-state-writer.js +0 -97
- package/lib/control-evaluation/gate-check.js +0 -506
- package/lib/control-state/run-state-repository.js +0 -68
- package/lib/control-state/run-state-writer.js +0 -97
- package/lib/proportionality-benchmark/blind-prompt.js +0 -38
- package/lib/proportionality-benchmark/contracts.js +0 -129
- package/lib/proportionality-benchmark/corpus-loader.js +0 -221
- package/lib/proportionality-benchmark/evaluator.js +0 -260
- package/lib/proportionality-benchmark/index.js +0 -8
- package/lib/proportionality-benchmark/live-recorder.js +0 -122
- package/lib/proportionality-benchmark/profiles.js +0 -102
- package/lib/proportionality-benchmark/report.js +0 -60
- package/lib/proportionality-benchmark/source-fingerprint.js +0 -34
- package/lib/public-plugin/builder.js +0 -83
- package/lib/public-plugin/contract.js +0 -102
- package/lib/public-plugin/copilot-profile.js +0 -126
- package/lib/public-plugin/manifest.js +0 -104
- package/lib/public-plugin/report.js +0 -33
- package/lib/public-plugin/validator.js +0 -101
- package/lib/release/profile-history.js +0 -222
- package/lib/release/version-bump.js +0 -549
- package/lib/release/version-coherence.js +0 -137
- package/lib/skill-evals/artefact-quality.js +0 -36
- package/lib/skill-evals/index.js +0 -105
- package/lib/skill-evals/live-recorder.js +0 -85
- package/lib/skill-evals/workspace.js +0 -97
- /package/generated/plugins/{copilot/agdf/copilot-skills → agdf/runtime/create-agdf/generated/plugins/agdf/meta}/contracts/context-graph.md +0 -0
- /package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-evaluation/parent-reconciliation.js +0 -0
- /package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-evaluation/required-files.js +0 -0
- /package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-state/aggregate.js +0 -0
- /package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-state/gate-approval-validator.js +0 -0
- /package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/candidate-policy.js +0 -0
- /package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/contracts.js +0 -0
- /package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/persistence.js +0 -0
- /package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/scoring.js +0 -0
- /package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/search-engine.js +0 -0
- /package/generated/plugins/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/state-adapter.js +0 -0
- /package/{lib → generated/plugins/agdf/runtime/create-agdf/runtime/core/lib}/fs-swap.js +0 -0
- /package/{lib → generated/plugins/agdf/runtime/create-agdf/runtime/core/lib}/runtime/distribution-profile-history.js +0 -0
- /package/generated/plugins/copilot/agdf/{hooks/copilot-hooks.json → com.github.copilot/hooks/hooks.json} +0 -0
- /package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-evaluation/parent-reconciliation.js +0 -0
- /package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-evaluation/required-files.js +0 -0
- /package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-state/aggregate.js +0 -0
- /package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/control-state/gate-approval-validator.js +0 -0
- /package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/candidate-policy.js +0 -0
- /package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/contracts.js +0 -0
- /package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/persistence.js +0 -0
- /package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/scoring.js +0 -0
- /package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/search-engine.js +0 -0
- /package/generated/plugins/copilot/agdf/runtime/create-agdf/{lib → runtime/core/lib}/delivery-path-search/state-adapter.js +0 -0
- /package/{lib → runtime/core/lib}/control-evaluation/parent-reconciliation.js +0 -0
- /package/{lib → runtime/core/lib}/control-evaluation/required-files.js +0 -0
- /package/{lib → runtime/core/lib}/control-state/aggregate.js +0 -0
- /package/{lib → runtime/core/lib}/control-state/gate-approval-validator.js +0 -0
- /package/{lib → runtime/core/lib}/delivery-path-search/candidate-policy.js +0 -0
- /package/{lib → runtime/core/lib}/delivery-path-search/contracts.js +0 -0
- /package/{lib → runtime/core/lib}/delivery-path-search/persistence.js +0 -0
- /package/{lib → runtime/core/lib}/delivery-path-search/scoring.js +0 -0
- /package/{lib → runtime/core/lib}/delivery-path-search/search-engine.js +0 -0
- /package/{lib → runtime/core/lib}/delivery-path-search/state-adapter.js +0 -0
package/generated/plugins/agdf/runtime/create-agdf/runtime/core/lib/control-state/run-recovery.js
ADDED
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
import { assertRecoveryOperationsTrusted } from "./run-state-writer.js";
|
|
2
|
+
import { createHash, randomUUID } from "node:crypto";
|
|
3
|
+
import {
|
|
4
|
+
closeSync, existsSync, lstatSync, mkdirSync, openSync, readFileSync, readdirSync, writeFileSync, fsyncSync,
|
|
5
|
+
} from "node:fs";
|
|
6
|
+
import { dirname, join } from "node:path";
|
|
7
|
+
import { transitionDecisionForRunState } from "../control-evaluation/gate-policy.js";
|
|
8
|
+
import { prepareRunContentState, userGateOrder } from "../control-evaluation/run-state.js";
|
|
9
|
+
import { containedRegularFile, hasSymlinkComponent } from "./contained-file.js";
|
|
10
|
+
import { duplicateArtefactRowTypes, parseControlState, parseRunState, scalarFields, sectionTableRows } from "./run-state-parser.js";
|
|
11
|
+
import { applyRunSeals, artefactFileDigest, canonicalRunText, computeRunSeals, listedArtefactPaths, pendingArtefactPaths, runSealState } from "./run-seal.js";
|
|
12
|
+
import { runPath } from "./run-state-reader.js";
|
|
13
|
+
import { atomicWrite, recoveryRunContent, unapproveRecoveryApprovals, withRunLock, writeRunRecoveryLocked } from "./run-state-writer.js";
|
|
14
|
+
|
|
15
|
+
const sha256 = (value) => `sha256:${createHash("sha256").update(value, "utf8").digest("hex")}`;
|
|
16
|
+
const digestContent = (content) => sha256(canonicalRunText(content));
|
|
17
|
+
function recoveryPreviewDigest(preview) {
|
|
18
|
+
const bound = {
|
|
19
|
+
schema_version: preview.schema_version, preview_id: preview.preview_id, run_id: preview.run_id,
|
|
20
|
+
source_revision_id: preview.source_revision_id, source_content_digest: preview.source_content_digest,
|
|
21
|
+
source_content: preview.source_content, source_artefacts: preview.source_artefacts,
|
|
22
|
+
git_history: preview.git_history, prior_approvals: preview.prior_approvals,
|
|
23
|
+
approval_provenance: preview.approval_provenance, approvals_to_invalidate: preview.approvals_to_invalidate,
|
|
24
|
+
next_gate: preview.next_gate, next_revision_id: preview.next_revision_id,
|
|
25
|
+
candidate_content: preview.candidate_content, candidate_digest: preview.candidate_digest,
|
|
26
|
+
};
|
|
27
|
+
// Version 1 journals did not bind the activity timestamp. Keep their stored digest readable;
|
|
28
|
+
// new previews bind the timestamp used by both the expected state and the atomic writer.
|
|
29
|
+
if (preview.preview_format_version === 2) {
|
|
30
|
+
bound.preview_format_version = 2;
|
|
31
|
+
bound.created_at = preview.created_at;
|
|
32
|
+
}
|
|
33
|
+
return sha256(JSON.stringify(bound));
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const PREVIEW_CONFIRMATION = (runId, previewId, digest) => `RECOVER ${runId} ${previewId} ${digest}`;
|
|
37
|
+
|
|
38
|
+
// Read-only proof of the former self-reference hashing defect. This does not accept arbitrary
|
|
39
|
+
// changed seals: the complete current record must equal the validated journal's old writer result.
|
|
40
|
+
export function inspectSelfReferenceRecovery(root, runId) {
|
|
41
|
+
const { path, runDir } = safeRunFiles(root, runId);
|
|
42
|
+
const content = readFileSync(path, "utf8");
|
|
43
|
+
const parsed = parseRunState(content, runId);
|
|
44
|
+
const selfPath = `.agdf/control/runs/${runId}/RUN_STATE.md`;
|
|
45
|
+
if (!parsed.valid || parsed.meta.lifecycle !== "active" || runSealState(root, content).status !== "content_changed"
|
|
46
|
+
|| !listedArtefactPaths(content).includes(selfPath)) return null;
|
|
47
|
+
const directory = join(runDir, "recovery-previews");
|
|
48
|
+
if (!existsSync(directory)) return null;
|
|
49
|
+
const stat = lstatSync(directory);
|
|
50
|
+
if (stat.isSymbolicLink() || !stat.isDirectory()) throw new Error("AGDF_RUN_PATH_INVALID");
|
|
51
|
+
for (const name of readdirSync(directory).filter((value) => /^[0-9a-f-]{36}\.json$/iu.test(value))) {
|
|
52
|
+
try {
|
|
53
|
+
const { preview } = readPreview(root, runDir, runId, name.slice(0, -5));
|
|
54
|
+
if (preview.phase !== "committed" || preview.preview_format_version !== 2
|
|
55
|
+
|| preview.result_digest !== digestContent(content) || preview.result_revision_id !== parsed.meta.revision_id
|
|
56
|
+
|| preview.next_revision_id !== parsed.meta.revision_id) continue;
|
|
57
|
+
const currentArtefacts = artifactSnapshot(root, content).filter((entry) => entry.path !== selfPath);
|
|
58
|
+
if (JSON.stringify(currentArtefacts) !== JSON.stringify(preview.source_artefacts.filter((entry) => entry.path !== selfPath))) continue;
|
|
59
|
+
const source = parseRunState(preview.source_content, runId);
|
|
60
|
+
const restored = recoveryRunContent(root, preview.candidate_content, {
|
|
61
|
+
revision: source.meta.revision, nextRevisionId: preview.next_revision_id, updatedAt: preview.created_at,
|
|
62
|
+
});
|
|
63
|
+
const legacy = applyRunSeals(restored, computeRunSeals(root, restored, { selfReferenceDigest: preview.source_content_digest }));
|
|
64
|
+
if (legacy !== content || runSealState(root, restored).status !== "valid") continue;
|
|
65
|
+
return { source: `recovery-previews/${name}`, source_revision_id: parsed.meta.revision_id, content: restored };
|
|
66
|
+
} catch { /* A damaged checkpoint cannot prove an original. */ }
|
|
67
|
+
}
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
function gitHistoryCandidates(root, runId, readGitHistory) {
|
|
72
|
+
if (typeof readGitHistory !== "function") return { status: "unavailable", candidates: [] };
|
|
73
|
+
const relativePath = `.agdf/control/runs/${runId}/RUN_STATE.md`;
|
|
74
|
+
let entries;
|
|
75
|
+
try { entries = readGitHistory(root, relativePath); } catch { return { status: "unavailable", candidates: [] }; }
|
|
76
|
+
if (!Array.isArray(entries) || entries.length > 25) return { status: "unavailable", candidates: [] };
|
|
77
|
+
const candidates = [];
|
|
78
|
+
for (const entry of entries) {
|
|
79
|
+
if (!entry || entry.path !== relativePath || !/^[0-9a-f]{40,64}$/u.test(entry.commit) || typeof entry.content !== "string" || Buffer.byteLength(entry.content) > 1024 * 1024) continue;
|
|
80
|
+
const parsed = parseRunState(entry.content, runId);
|
|
81
|
+
if (!parsed.valid) continue;
|
|
82
|
+
const meta = scalarFields(entry.content).values;
|
|
83
|
+
const sealPattern = /^sha256:[0-9a-f]{64}$/u;
|
|
84
|
+
candidates.push({ commit: entry.commit, revision_id: parsed.meta.revision_id, content_digest: digestContent(entry.content),
|
|
85
|
+
seal_lines_present: sealPattern.test(meta.get("content_seal") ?? "") && sealPattern.test(meta.get("approval_seal") ?? ""), approval_provenance: "not_proven_by_git_revision" });
|
|
86
|
+
}
|
|
87
|
+
return { status: "available", candidates };
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
function safeRunFiles(root, runId) {
|
|
91
|
+
const path = runPath(root, runId);
|
|
92
|
+
const runDir = dirname(path);
|
|
93
|
+
let rootStat;
|
|
94
|
+
try { rootStat = lstatSync(root); } catch { throw new Error("AGDF_RUN_PATH_INVALID"); }
|
|
95
|
+
if (rootStat.isSymbolicLink() || !rootStat.isDirectory()) throw new Error("AGDF_RUN_PATH_INVALID");
|
|
96
|
+
for (const target of [join(root, ".agdf"), join(root, ".agdf", "control"), join(root, ".agdf", "control", "runs"), runDir, path]) {
|
|
97
|
+
let stat;
|
|
98
|
+
try { stat = lstatSync(target); } catch { throw new Error("AGDF_RUN_PATH_INVALID"); }
|
|
99
|
+
if (stat.isSymbolicLink() || (target === path ? !stat.isFile() : !stat.isDirectory())) throw new Error("AGDF_RUN_PATH_INVALID");
|
|
100
|
+
}
|
|
101
|
+
return { path, runDir };
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
function artifactSnapshot(root, content) {
|
|
105
|
+
const paths = listedArtefactPaths(content);
|
|
106
|
+
const pending = new Set(pendingArtefactPaths(content));
|
|
107
|
+
const entries = paths.map((path) => {
|
|
108
|
+
const resolved = containedRegularFile(root, path);
|
|
109
|
+
const status = hasSymlinkComponent(root, path) ? "invalid" : resolved.status;
|
|
110
|
+
return { path, status, digest: status === "valid" ? artefactFileDigest(root, path) : status,
|
|
111
|
+
...(status === "missing" && pending.has(path) ? { planned: true } : {}) };
|
|
112
|
+
});
|
|
113
|
+
return entries;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
function approvalSnapshot(content) {
|
|
117
|
+
return ["Approvals", "Gate Checklist"].flatMap((section) => sectionTableRows(content, section)
|
|
118
|
+
.filter(([gate]) => userGateOrder.includes(gate))
|
|
119
|
+
.map(([gate, status = "", evidence = ""]) => ({ section, gate, status: status.replace(/^`|`$/gu, "").trim(), evidence: evidence.trim() })));
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
function deriveNextGate(root, content, path) {
|
|
123
|
+
const state = prepareRunContentState(root, content, path);
|
|
124
|
+
return transitionDecisionForRunState(state).current_gate;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
export function inspectRunRecovery(root, runId, { inspectHistory = true, readGitHistory } = {}) {
|
|
128
|
+
const { path } = safeRunFiles(root, runId);
|
|
129
|
+
const content = readFileSync(path, "utf8");
|
|
130
|
+
const state = parseRunState(content, runId);
|
|
131
|
+
if (!state.valid) throw new Error("AGDF_RUN_STATE_INVALID");
|
|
132
|
+
if (state.meta.lifecycle !== "active") throw new Error("AGDF_RECOVERY_LIFECYCLE_UNSUPPORTED");
|
|
133
|
+
if (duplicateArtefactRowTypes(content).length) throw new Error("AGDF_ARTEFACT_ROW_DUPLICATE");
|
|
134
|
+
const seal = runSealState(root, content);
|
|
135
|
+
assertRecoveryOperationsTrusted(content);
|
|
136
|
+
if (!["unsealed", "invalid"].includes(seal.status)) throw new Error("AGDF_RUN_RECOVERY_NOT_REQUIRED");
|
|
137
|
+
const artefacts = artifactSnapshot(root, content);
|
|
138
|
+
const gitHistory = inspectHistory ? gitHistoryCandidates(root, runId, readGitHistory) : { status: "not_checked", candidates: [] };
|
|
139
|
+
return Object.freeze({
|
|
140
|
+
schema_version: "1", run_id: runId, revision: state.meta.revision,
|
|
141
|
+
revision_id: state.meta.revision_id, seal_status: seal.status,
|
|
142
|
+
content_digest: digestContent(content), artefacts,
|
|
143
|
+
git_history: gitHistory,
|
|
144
|
+
approvals: approvalSnapshot(content), approval_provenance: "no_independent_provenance",
|
|
145
|
+
next_gate_if_recovered: deriveNextGate(root, unapproveRecoveryApprovals(content), path),
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
function previewDirectory(runDir) {
|
|
150
|
+
const path = join(runDir, "recovery-previews");
|
|
151
|
+
try { mkdirSync(path, { mode: 0o700 }); } catch (error) { if (error.code !== "EEXIST") throw error; }
|
|
152
|
+
const stat = lstatSync(path);
|
|
153
|
+
if (stat.isSymbolicLink() || !stat.isDirectory()) throw new Error("AGDF_RUN_PATH_INVALID");
|
|
154
|
+
if (process.platform !== "win32" && (stat.mode & 0o077) !== 0) throw new Error("AGDF_RECOVERY_JOURNAL_PERMISSIONS_INVALID");
|
|
155
|
+
return path;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
function createJournal(path, record) {
|
|
159
|
+
let fd;
|
|
160
|
+
try {
|
|
161
|
+
fd = openSync(path, "wx", 0o600);
|
|
162
|
+
writeFileSync(fd, `${JSON.stringify(record, null, 2)}\n`, "utf8");
|
|
163
|
+
fsyncSync(fd);
|
|
164
|
+
} finally {
|
|
165
|
+
if (fd !== undefined) closeSync(fd);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
export function previewRunRecovery(root, runId, options = {}) {
|
|
170
|
+
const inspection = inspectRunRecovery(root, runId, options);
|
|
171
|
+
if (inspection.artefacts.some((entry) => entry.status !== "valid" && !entry.planned)) {
|
|
172
|
+
throw new Error(inspection.artefacts.some((entry) => entry.status === "invalid")
|
|
173
|
+
? "AGDF_RECOVERY_ARTEFACT_PATH_INVALID" : "AGDF_RECOVERY_ARTEFACT_MISSING");
|
|
174
|
+
}
|
|
175
|
+
const { path, runDir } = safeRunFiles(root, runId);
|
|
176
|
+
const source = readFileSync(path, "utf8");
|
|
177
|
+
if (digestContent(source) !== inspection.content_digest) throw new Error("AGDF_STALE_RUN_REVISION");
|
|
178
|
+
if (JSON.stringify(artifactSnapshot(root, source)) !== JSON.stringify(inspection.artefacts)) throw new Error("AGDF_STALE_RUN_REVISION");
|
|
179
|
+
const previewId = randomUUID();
|
|
180
|
+
const nextRevisionId = randomUUID();
|
|
181
|
+
const candidate = unapproveRecoveryApprovals(source);
|
|
182
|
+
const preview = {
|
|
183
|
+
schema_version: "1", preview_format_version: 2, preview_id: previewId, run_id: runId,
|
|
184
|
+
created_at: new Date().toISOString(),
|
|
185
|
+
source_revision_id: inspection.revision_id, source_content_digest: inspection.content_digest,
|
|
186
|
+
source_content: source,
|
|
187
|
+
source_artefacts: inspection.artefacts, git_history: inspection.git_history,
|
|
188
|
+
prior_approvals: inspection.approvals,
|
|
189
|
+
approval_provenance: "no_independent_provenance", approvals_to_invalidate: userGateOrder,
|
|
190
|
+
next_gate: inspection.next_gate_if_recovered, next_revision_id: nextRevisionId,
|
|
191
|
+
candidate_content: candidate, candidate_digest: digestContent(candidate),
|
|
192
|
+
phase: "prepared",
|
|
193
|
+
};
|
|
194
|
+
preview.preview_digest = recoveryPreviewDigest(preview);
|
|
195
|
+
preview.confirmation = PREVIEW_CONFIRMATION(runId, previewId, preview.preview_digest);
|
|
196
|
+
const dir = previewDirectory(runDir);
|
|
197
|
+
const journalPath = join(dir, `${previewId}.json`);
|
|
198
|
+
createJournal(journalPath, preview);
|
|
199
|
+
return Object.freeze({
|
|
200
|
+
schema_version: "1", outcome: "previewed", run_id: runId, preview_id: previewId,
|
|
201
|
+
confirmation: preview.confirmation, source_content_digest: preview.source_content_digest,
|
|
202
|
+
source_artefacts: preview.source_artefacts, git_history: preview.git_history,
|
|
203
|
+
approvals_to_invalidate: preview.approvals_to_invalidate,
|
|
204
|
+
approval_provenance: preview.approval_provenance, next_gate: preview.next_gate,
|
|
205
|
+
journal: journalPath.slice(root.length + 1),
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
function readPreview(root, runDir, runId, previewId) {
|
|
210
|
+
if (!/^[0-9a-f-]{36}$/iu.test(previewId)) throw new Error("AGDF_RECOVERY_PREVIEW_INVALID");
|
|
211
|
+
const dir = join(runDir, "recovery-previews");
|
|
212
|
+
const dirStat = lstatSync(dir);
|
|
213
|
+
if (dirStat.isSymbolicLink() || !dirStat.isDirectory()) throw new Error("AGDF_RUN_PATH_INVALID");
|
|
214
|
+
const path = join(dir, `${previewId}.json`);
|
|
215
|
+
const fileStat = lstatSync(path);
|
|
216
|
+
if (fileStat.isSymbolicLink() || !fileStat.isFile()) throw new Error("AGDF_RECOVERY_PREVIEW_INVALID");
|
|
217
|
+
const preview = JSON.parse(readFileSync(path, "utf8"));
|
|
218
|
+
if (preview.preview_format_version !== undefined && preview.preview_format_version !== 2) {
|
|
219
|
+
throw new Error("AGDF_RECOVERY_PREVIEW_VERSION_UNSUPPORTED");
|
|
220
|
+
}
|
|
221
|
+
if (preview.schema_version !== "1" || preview.preview_id !== previewId || preview.run_id !== runId
|
|
222
|
+
|| preview.preview_digest !== recoveryPreviewDigest(preview)
|
|
223
|
+
|| preview.confirmation !== PREVIEW_CONFIRMATION(runId, previewId, preview.preview_digest)
|
|
224
|
+
|| preview.source_content_digest !== digestContent(preview.source_content)
|
|
225
|
+
|| preview.candidate_digest !== digestContent(unapproveRecoveryApprovals(preview.source_content))
|
|
226
|
+
|| preview.candidate_content !== unapproveRecoveryApprovals(preview.source_content)
|
|
227
|
+
|| JSON.stringify(preview.prior_approvals) !== JSON.stringify(approvalSnapshot(preview.source_content))) {
|
|
228
|
+
throw new Error("AGDF_RECOVERY_PREVIEW_INVALID");
|
|
229
|
+
}
|
|
230
|
+
return { path, preview };
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
export function applyRunRecovery(root, { runId, previewId, confirmation }, hooks = {}) {
|
|
234
|
+
if (typeof confirmation !== "string") throw new Error("AGDF_RECOVERY_CONFIRMATION_REQUIRED");
|
|
235
|
+
const { path, runDir } = safeRunFiles(root, runId);
|
|
236
|
+
const { path: journalPath, preview } = readPreview(root, runDir, runId, previewId);
|
|
237
|
+
if (confirmation !== preview.confirmation) throw new Error("AGDF_RECOVERY_CONFIRMATION_REQUIRED");
|
|
238
|
+
return withRunLock(path, () => {
|
|
239
|
+
const lockedPreview = readPreview(root, runDir, runId, previewId).preview;
|
|
240
|
+
if (lockedPreview.preview_digest !== preview.preview_digest || lockedPreview.confirmation !== confirmation) {
|
|
241
|
+
throw new Error("AGDF_RECOVERY_PREVIEW_INVALID");
|
|
242
|
+
}
|
|
243
|
+
Object.assign(preview, lockedPreview);
|
|
244
|
+
const current = readFileSync(path, "utf8");
|
|
245
|
+
const currentDigest = digestContent(current);
|
|
246
|
+
if (JSON.stringify(artifactSnapshot(root, current)) !== JSON.stringify(preview.source_artefacts)) {
|
|
247
|
+
throw new Error("AGDF_STALE_RUN_REVISION");
|
|
248
|
+
}
|
|
249
|
+
if (preview.phase === "committed") {
|
|
250
|
+
const committed = parseRunState(current, runId);
|
|
251
|
+
if (currentDigest !== preview.result_digest || runSealState(root, current).status !== "valid"
|
|
252
|
+
|| !committed.valid || committed.meta.revision_id !== preview.next_revision_id
|
|
253
|
+
|| preview.result_revision_id !== preview.next_revision_id) throw new Error("AGDF_RECOVERY_JOURNAL_CONFLICT");
|
|
254
|
+
return Object.freeze({ schema_version: "1", outcome: "already_recovered", run_id: runId, preview_id: previewId, revision_id: preview.result_revision_id,
|
|
255
|
+
backlog: "pending", backlog_reason: "run_only_recovery",
|
|
256
|
+
backlog_next_action: `Synchronize this Run with run-update --run ${runId} --revision ${preview.result_revision_id}.` });
|
|
257
|
+
}
|
|
258
|
+
if (preview.phase !== "prepared" && preview.phase !== "applying") throw new Error("AGDF_RECOVERY_JOURNAL_PHASE_INVALID");
|
|
259
|
+
if (preview.phase === "prepared" && (currentDigest !== preview.source_content_digest
|
|
260
|
+
|| current !== preview.source_content || JSON.stringify(artifactSnapshot(root, current)) !== JSON.stringify(preview.source_artefacts))) {
|
|
261
|
+
throw new Error("AGDF_STALE_RUN_REVISION");
|
|
262
|
+
}
|
|
263
|
+
const parsedSource = parseRunState(preview.source_content, runId);
|
|
264
|
+
if (!parsedSource.valid || parsedSource.meta.revision_id !== preview.source_revision_id) throw new Error("AGDF_RECOVERY_PREVIEW_INVALID");
|
|
265
|
+
const expectedResultContent = recoveryRunContent(root, preview.candidate_content, {
|
|
266
|
+
revision: parsedSource.meta.revision, nextRevisionId: preview.next_revision_id, updatedAt: preview.created_at,
|
|
267
|
+
});
|
|
268
|
+
const expectedResultDigest = digestContent(expectedResultContent);
|
|
269
|
+
let written;
|
|
270
|
+
if (preview.phase === "applying" && currentDigest === preview.result_digest
|
|
271
|
+
&& currentDigest === expectedResultDigest && runSealState(root, current).status === "valid") {
|
|
272
|
+
written = parseRunState(current, runId);
|
|
273
|
+
} else {
|
|
274
|
+
if (preview.phase === "applying" && currentDigest !== preview.source_content_digest) throw new Error("AGDF_RECOVERY_JOURNAL_CONFLICT");
|
|
275
|
+
const applying = { ...preview, phase: "applying", source_content: current,
|
|
276
|
+
result_digest: expectedResultDigest, result_revision_id: preview.next_revision_id };
|
|
277
|
+
atomicWrite(journalPath, `${JSON.stringify(applying, null, 2)}\n`);
|
|
278
|
+
hooks.beforeRunWrite?.();
|
|
279
|
+
written = writeRunRecoveryLocked(path, preview.candidate_content, {
|
|
280
|
+
expectedContent: current, expectedRevisionId: preview.source_revision_id,
|
|
281
|
+
nextRevisionId: preview.next_revision_id,
|
|
282
|
+
updatedAt: preview.created_at,
|
|
283
|
+
});
|
|
284
|
+
hooks.afterRunWrite?.();
|
|
285
|
+
}
|
|
286
|
+
const resultContent = readFileSync(path, "utf8");
|
|
287
|
+
const completed = { ...preview, phase: "committed", result_digest: digestContent(resultContent), result_revision_id: written.meta.revision_id };
|
|
288
|
+
hooks.beforeJournalCommit?.();
|
|
289
|
+
atomicWrite(journalPath, `${JSON.stringify(completed, null, 2)}\n`);
|
|
290
|
+
return Object.freeze({ schema_version: "1", outcome: "recovered", run_id: runId,
|
|
291
|
+
backlog: "pending", backlog_reason: "run_only_recovery",
|
|
292
|
+
backlog_next_action: `Synchronize this Run with run-update --run ${runId} --revision ${written.meta.revision_id}.`,
|
|
293
|
+
preview_id: previewId, revision: written.meta.revision, revision_id: written.meta.revision_id,
|
|
294
|
+
seal_status: runSealState(root, resultContent).status, next_gate: deriveNextGate(root, resultContent, path) });
|
|
295
|
+
});
|
|
296
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { canonicalJson } from "./approval-command-contract.js";
|
|
3
|
+
import { readArtefactBindings } from "./artefact-bindings.js";
|
|
4
|
+
import { exactApprovedArtefacts, validateBindingProof } from "./artefact-binding-proof.js";
|
|
5
|
+
import { APPROVAL_GATES, runSealState } from "./run-seal.js";
|
|
6
|
+
import { readRun, appendTableRow, guardedWrite, rejected } from "./run-state-edits.js";
|
|
7
|
+
import { prepareRunContentState } from "../control-evaluation/run-state.js";
|
|
8
|
+
import { parseControlState } from "./run-state-parser.js";
|
|
9
|
+
import { runPath } from "./run-state-reader.js";
|
|
10
|
+
import { flushRunCommit, withRunLock, writeRunLocked } from "./run-state-writer.js";
|
|
11
|
+
import { sameRelationship } from "../control-evaluation/delivery-relationships.js";
|
|
12
|
+
import { transitionDecisionForRunState } from "../control-evaluation/gate-policy.js";
|
|
13
|
+
|
|
14
|
+
const controlFor = (root, run) => ({ ...prepareRunContentState(root, run.content, run.path), meta: run.meta });
|
|
15
|
+
|
|
16
|
+
// Mutation owner for authorized bound continuation only. Evaluators never call it.
|
|
17
|
+
export function correctRunRelationship(root, { runId, revisionId }, { evaluateGateCheck, checkpoint, confirmCommit = flushRunCommit } = {}) {
|
|
18
|
+
const locked = guardedWrite(runId, () => withRunLock(runPath(root, runId), () => {
|
|
19
|
+
const run = readRun(root, runId);
|
|
20
|
+
if (run.rejection) return run.rejection;
|
|
21
|
+
if (run.meta.revision_id !== revisionId) return rejected(runId, "stale_revision");
|
|
22
|
+
if (runSealState(root, run.content).status !== "valid") return rejected(runId, "seal_invalid");
|
|
23
|
+
const report = evaluateGateCheck(root, { runId });
|
|
24
|
+
const decisive = (report.delivery_map?.findings ?? []).filter(row => ["block", "revise"].includes(row.severity));
|
|
25
|
+
const missing = (report.delivery_map?.relationships ?? []).filter(row => row.required && row.status === "missing");
|
|
26
|
+
if (missing.length === 0 && decisive.length === 0) return { schema_version: "1", outcome: "unchanged", run_id: runId, revision_id: revisionId };
|
|
27
|
+
const unrelatedDoctor = (report.doctor_report?.findings ?? []).filter(row => ["block", "revise"].includes(row.severity)
|
|
28
|
+
&& row.code !== "AGDF_DELIVERY_RELATIONSHIP_MISSING");
|
|
29
|
+
if (unrelatedDoctor.length || decisive.length !== 1 || decisive[0].code !== "AGDF_DELIVERY_RELATIONSHIP_MISSING"
|
|
30
|
+
|| missing.length !== 1 || report.blocking_reason !== "AGDF_DELIVERY_RELATIONSHIP_MISSING") return rejected(runId, "correction_not_eligible");
|
|
31
|
+
const control = controlFor(root, run), expected = missing[0];
|
|
32
|
+
if (control.artefact_chain.some(row => row.from === expected.from)) return rejected(runId, "correction_not_eligible");
|
|
33
|
+
const history = readArtefactBindings(run.content);
|
|
34
|
+
const eligible = history.active.filter(receipt => receipt.run_id === runId && receipt.operation.revision <= Number(run.meta.revision)
|
|
35
|
+
&& sameRelationship(receipt.relationship, expected));
|
|
36
|
+
if (!history.valid || eligible.length !== 1) return rejected(runId, "binding_proof_missing_or_ambiguous");
|
|
37
|
+
const receipt = eligible[0], destinationGate = expected.from === "QA_REPORT" ? "QA" : expected.from;
|
|
38
|
+
const destination = control.artefacts.get(destinationGate), source = control.artefacts.get(expected.to);
|
|
39
|
+
if (destination?.path !== receipt.destination.path || source?.path !== receipt.source.path
|
|
40
|
+
|| !validateBindingProof(root, receipt) || !exactApprovedArtefacts(root, control)) return rejected(runId, "artefact_binding_proof_invalid");
|
|
41
|
+
const before = canonicalJson(transitionDecisionForRunState(control));
|
|
42
|
+
let next = appendTableRow(run.content, "Artefact Chain", [expected.from, expected.relationship, expected.to,
|
|
43
|
+
`binding ${receipt.binding_id}; exact sealed reviewed mapping ${receipt.review.path}`]);
|
|
44
|
+
if (!next) return rejected(runId, "run_layout_unsupported");
|
|
45
|
+
const nextRevisionId = randomUUID();
|
|
46
|
+
next = appendTableRow(next, "Evidence", ["Relationship correction", receipt.review.path,
|
|
47
|
+
`binding ${receipt.binding_id}; ${expected.from} ${expected.relationship} ${expected.to}; revision ${revisionId} -> ${nextRevisionId}`, "exact sealed reviewed mapping"]);
|
|
48
|
+
if (!next || canonicalJson(transitionDecisionForRunState(controlFor(root, { ...run, content: next }))) !== before) return rejected(runId, "correction_permission_changed");
|
|
49
|
+
let written, recoveredCommit = false;
|
|
50
|
+
try { written = writeRunLocked(run.path, next, revisionId, { expectedContent: run.content, nextRevisionId, checkpoint,
|
|
51
|
+
validateBeforeWrite: () => {
|
|
52
|
+
if (!validateBindingProof(root, receipt) || !exactApprovedArtefacts(root, control)
|
|
53
|
+
|| runSealState(root, run.content).status !== "valid") throw new Error("AGDF_ARTEFACT_BINDING_PROOF_INVALID");
|
|
54
|
+
} }); }
|
|
55
|
+
catch (error) {
|
|
56
|
+
const actual = readRun(root, runId);
|
|
57
|
+
if (actual.rejection || actual.meta.revision_id !== nextRevisionId || runSealState(root, actual.content).status !== "valid") throw error;
|
|
58
|
+
// Reuse the existing owner's durability confirmation; never retry into another revision.
|
|
59
|
+
try { confirmCommit(run.path); }
|
|
60
|
+
catch {
|
|
61
|
+
const unconfirmed = new Error("AGDF_CORRECTION_COMMIT_UNCONFIRMED");
|
|
62
|
+
unconfirmed.committed_revision_id = nextRevisionId;
|
|
63
|
+
throw unconfirmed;
|
|
64
|
+
}
|
|
65
|
+
written = { meta: actual.meta }; recoveredCommit = true;
|
|
66
|
+
}
|
|
67
|
+
return { schema_version: "1", outcome: "corrected", run_id: runId, binding_id: receipt.binding_id,
|
|
68
|
+
backlog: "pending", backlog_reason: "run_only_relationship_correction",
|
|
69
|
+
backlog_next_action: `Synchronize this Run with run-update --run ${runId} --revision ${written.meta.revision_id}.`,
|
|
70
|
+
relationship: receipt.relationship, previous_revision_id: revisionId, revision_id: written.meta.revision_id, revision: written.meta.revision,
|
|
71
|
+
...(recoveredCommit ? { recovered_commit: true } : {}) };
|
|
72
|
+
}));
|
|
73
|
+
return locked.rejection ?? locked.state;
|
|
74
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { transitionDecisionForRunState } from "../control-evaluation/gate-policy.js";
|
|
2
|
+
import { SOURCE_GATES } from "./run-source-revisions.js";
|
|
3
|
+
|
|
4
|
+
// Shared by current revision preparation and historical proof validation. A history
|
|
5
|
+
// cannot acquire authority from a boundary that the original Run did not satisfy.
|
|
6
|
+
export function sourceRevisionBoundary(state, sourceGate, policyVersion = 1) {
|
|
7
|
+
const current = transitionDecisionForRunState(state);
|
|
8
|
+
if (policyVersion === 2) {
|
|
9
|
+
// Version selection comes from the exact proposal/receipt, never current defaults.
|
|
10
|
+
const phases = { UR: ["PRD", "SD", "TP", "CD+Tests", "QA", "UAT"],
|
|
11
|
+
PRD: ["SD", "TP", "CD+Tests", "QA", "UAT"], SD: ["TP", "CD+Tests", "QA", "UAT"], TP: ["CD+Tests", "QA", "UAT"] };
|
|
12
|
+
if (state.meta.lifecycle !== "active" || current.status !== "open"
|
|
13
|
+
|| !["structured_delivery", "structured_slice"].includes(state.mode_slice_decision.decision)
|
|
14
|
+
|| state.approvals.get("UAT")?.status === "approved" || state.artefacts.get("OR")?.status === "done"
|
|
15
|
+
|| state.approvals.get(sourceGate)?.status !== "approved" || !phases[sourceGate]?.includes(current.current_gate)) return null;
|
|
16
|
+
const sources = SOURCE_GATES.filter(type => state.artefacts.get(type)?.path);
|
|
17
|
+
const approved = sources.filter(type => state.approvals.get(type)?.status === "approved");
|
|
18
|
+
if (!SOURCE_GATES.slice(0, SOURCE_GATES.indexOf(sourceGate) + 1).every(type => approved.includes(type))) return null;
|
|
19
|
+
return { sources, approved, bindings: sources.filter(type => type !== "UR"), initiating_phase: current.current_gate };
|
|
20
|
+
}
|
|
21
|
+
if (policyVersion !== 1) return null;
|
|
22
|
+
if (state.meta.lifecycle !== "active"
|
|
23
|
+
|| !["structured_delivery", "structured_slice"].includes(state.mode_slice_decision.decision)
|
|
24
|
+
|| current.status !== "open"
|
|
25
|
+
|| ["QA", "UAT"].some(gate => state.approvals.get(gate)?.status === "approved")
|
|
26
|
+
|| state.artefacts.get("OR")?.status === "done") return null;
|
|
27
|
+
if (current.current_gate === "CD+Tests") {
|
|
28
|
+
return { sources: SOURCE_GATES, approved: SOURCE_GATES, bindings: ["PRD", "SD", "TP"] };
|
|
29
|
+
}
|
|
30
|
+
if (sourceGate !== "UR" || current.current_gate !== "SD"
|
|
31
|
+
|| !["UR", "PRD"].every(gate => state.approvals.get(gate)?.status === "approved")
|
|
32
|
+
|| ["SD", "TP"].some(gate => state.approvals.get(gate)?.status === "approved")
|
|
33
|
+
|| state.artefacts.get("SD")?.status !== "draft" || !state.artefacts.get("SD")?.path
|
|
34
|
+
|| ["TP", "Brownfield Analysis", "CD+Tests", "CR", "Code Review", "TP Review", "Clean Review",
|
|
35
|
+
"Clean Implementation Review", "QA", "QA_REPORT", "UAT", "OR"]
|
|
36
|
+
.some(type => state.artefacts.get(type)?.path || state.artefacts.get(type)?.status === "done")) return null;
|
|
37
|
+
return { sources: ["UR", "PRD", "SD"], approved: ["UR", "PRD"], bindings: ["PRD", "SD"] };
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// Existing early PRD-to-SD boundary, shared with its immutable history validator.
|
|
41
|
+
export function earlyPrdRevisionBoundary(state) {
|
|
42
|
+
return state.meta?.lifecycle === 'active' && state.approvals.get('PRD')?.status === 'approved'
|
|
43
|
+
&& state.meta.current_gate === 'SD' && !['SD', 'TP', 'QA', 'UAT'].some(gate => state.approvals.get(gate)?.status === 'approved' || state.artefacts.get(gate)?.path);
|
|
44
|
+
}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import { prepareRunContentState } from "../control-evaluation/run-state.js";
|
|
2
|
+
import { createHash } from "node:crypto";
|
|
3
|
+
import { readFileSync, statSync } from "../control-read/fs.js";
|
|
4
|
+
import { canonicalJson, digest, DIGEST_PATTERN, exactObject } from "./approval-command-contract.js";
|
|
5
|
+
import { containedRegularFile, hasSymlinkComponent, isSafeControlRelativePath } from "./contained-file.js";
|
|
6
|
+
import { APPROVAL_GATES, canonicalRunText, computeRunSeals, listedArtefactPaths, pendingArtefactPaths } from "./run-seal-compute.js";
|
|
7
|
+
import { parseControlState, parseRunState } from "./run-state-parser.js";
|
|
8
|
+
import { readArtefactBindings } from "./artefact-bindings.js";
|
|
9
|
+
import { exactApprovedArtefacts, validateBindingProof } from "./artefact-binding-proof.js";
|
|
10
|
+
import { internalStepArtefacts } from "../control-evaluation/run-state.js";
|
|
11
|
+
import { readSourceRevisions, revisionHistoryPrefix, SOURCE_GATES, sourceRevisionImpact, validExpandedRevisionProof } from "./run-source-revisions.js";
|
|
12
|
+
import { REVISION_PROPOSAL_FIELDS, REVISION_PROPOSAL_V2_FIELDS } from './recording-formats.js';
|
|
13
|
+
import { sourceRevisionBoundary, earlyPrdRevisionBoundary } from "./run-revision-boundary.js";
|
|
14
|
+
import { readRunOperations } from './run-operations.js';
|
|
15
|
+
|
|
16
|
+
export const byteDigest = bytes => `sha256:${createHash("sha256").update(bytes).digest("hex")}`;
|
|
17
|
+
const DOCUMENT_LIMIT = 131072;
|
|
18
|
+
const CONTROL_STATE_LIMIT = 1048576;
|
|
19
|
+
const canonicalRunPath = path => /^\.agdf\/control\/runs\/[a-z0-9][a-z0-9._-]{0,127}\/RUN_STATE\.md$/u.test(path);
|
|
20
|
+
const historyLimit = path => canonicalRunPath(path) ? CONTROL_STATE_LIMIT : DOCUMENT_LIMIT;
|
|
21
|
+
// A long-lived canonical control record is not an input document. Ordinary sources,
|
|
22
|
+
// proposals and manifests retain their existing bound; every read checks before allocation.
|
|
23
|
+
function readBoundedHistoryBytes(root, path, limit) {
|
|
24
|
+
const file = containedRegularFile(root, path);
|
|
25
|
+
if (file.status !== "valid" || hasSymlinkComponent(root, path) || statSync(file.path).size > limit) throw Error("AGDF_REVISION_HISTORY_INVALID");
|
|
26
|
+
return readFileSync(file.path);
|
|
27
|
+
}
|
|
28
|
+
export function readHistoryBytes(root, path) {
|
|
29
|
+
return readBoundedHistoryBytes(root, path, historyLimit(path));
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export function collectRevisionHistory(root, runId, operationId, paths) {
|
|
33
|
+
const prefix = revisionHistoryPrefix(runId, operationId);
|
|
34
|
+
const files = [...new Set(paths)].sort().map((path, i) => {
|
|
35
|
+
if (!isSafeControlRelativePath(path) || !path.startsWith(".agdf/control/")) throw Error("AGDF_REVISION_HISTORY_INVALID");
|
|
36
|
+
const bytes = readBoundedHistoryBytes(root, path,
|
|
37
|
+
path === `.agdf/control/runs/${runId}/RUN_STATE.md` ? CONTROL_STATE_LIMIT : DOCUMENT_LIMIT);
|
|
38
|
+
return { path, snapshot: `${prefix}files/${i}.bin`, bytes, digest: byteDigest(bytes),
|
|
39
|
+
canonical_digest: byteDigest(Buffer.from(canonicalRunText(bytes.toString("utf8")), "utf8")) };
|
|
40
|
+
});
|
|
41
|
+
const manifest = { schema_version: "1", run_id: runId, operation_id: operationId,
|
|
42
|
+
files: files.map(({ path, snapshot, bytes, digest, canonical_digest }) => ({ path, snapshot, length: bytes.length, digest, canonical_digest })) };
|
|
43
|
+
const text = canonicalJson(manifest) + "\n";
|
|
44
|
+
if (Buffer.byteLength(text) > 131072) throw Error("AGDF_REVISION_HISTORY_INVALID");
|
|
45
|
+
return { manifest, text, digest: byteDigest(Buffer.from(text)), files };
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export function readValidatedRevisionArchive(root, receipt) {
|
|
49
|
+
try {
|
|
50
|
+
const bytes = readHistoryBytes(root, receipt.archive.path);
|
|
51
|
+
if (byteDigest(bytes) !== receipt.archive.digest) return false;
|
|
52
|
+
const manifest = JSON.parse(bytes.toString("utf8")), prefix = revisionHistoryPrefix(receipt.run_id, receipt.operation_id);
|
|
53
|
+
// target_id names the recording checkout; clones verify it via the archived proposal, not their path.
|
|
54
|
+
if (!exactObject(manifest, ["schema_version", "run_id", "operation_id", "files"]) || manifest.schema_version !== "1"
|
|
55
|
+
|| manifest.run_id !== receipt.run_id || manifest.operation_id !== receipt.operation_id
|
|
56
|
+
|| !Array.isArray(manifest.files) || !manifest.files.length) return false;
|
|
57
|
+
const names = new Set(), snapshots = new Set(), archived = new Map(), digests = new Map();
|
|
58
|
+
for (const row of manifest.files) {
|
|
59
|
+
if (!exactObject(row, ["path", "snapshot", "length", "digest", "canonical_digest"])
|
|
60
|
+
|| !isSafeControlRelativePath(row.path) || !row.path.startsWith(".agdf/control/")
|
|
61
|
+
|| !new RegExp(`^${prefix.replace(/[.*+?^${}()|[\]\\]/gu, "\\$&")}files/[0-9]+\\.bin$`, "u").test(row.snapshot)
|
|
62
|
+
|| !Number.isSafeInteger(row.length) || row.length < 0
|
|
63
|
+
|| row.length > (row.path === `.agdf/control/runs/${receipt.run_id}/RUN_STATE.md` ? CONTROL_STATE_LIMIT : DOCUMENT_LIMIT)
|
|
64
|
+
|| !DIGEST_PATTERN.test(row.digest) || !DIGEST_PATTERN.test(row.canonical_digest)
|
|
65
|
+
|| names.has(row.path) || snapshots.has(row.snapshot)) return false;
|
|
66
|
+
// Only the exact original Run record permits a larger archive snapshot.
|
|
67
|
+
// Arbitrary .bin names and other document rows cannot widen the reader.
|
|
68
|
+
const actual = readBoundedHistoryBytes(root, row.snapshot,
|
|
69
|
+
row.path === `.agdf/control/runs/${receipt.run_id}/RUN_STATE.md` ? CONTROL_STATE_LIMIT : DOCUMENT_LIMIT);
|
|
70
|
+
if (actual.length !== row.length || byteDigest(actual) !== row.digest
|
|
71
|
+
|| byteDigest(Buffer.from(canonicalRunText(actual.toString("utf8")))) !== row.canonical_digest) return false;
|
|
72
|
+
names.add(row.path); snapshots.add(row.snapshot);
|
|
73
|
+
archived.set(row.path, actual); digests.set(row.path, row.canonical_digest);
|
|
74
|
+
}
|
|
75
|
+
const original = archived.get(`.agdf/control/runs/${receipt.run_id}/RUN_STATE.md`)?.toString("utf8");
|
|
76
|
+
if (!original) return false;
|
|
77
|
+
const parsed = parseRunState(original, receipt.run_id);
|
|
78
|
+
if (!parsed.valid || parsed.meta.revision_id !== receipt.previous_revision_id
|
|
79
|
+
|| Number(parsed.meta.revision) + 1 !== receipt.revision) return false;
|
|
80
|
+
// Resolve original paths through the archived closure. Live canonical drafts may have
|
|
81
|
+
// changed since this receipt; they cannot repair or invalidate its historical proofs.
|
|
82
|
+
for (const path of listedArtefactPaths(original)) {
|
|
83
|
+
if (!digests.has(path)) {
|
|
84
|
+
if (!pendingArtefactPaths(original).includes(path)) return false;
|
|
85
|
+
digests.set(path, "missing");
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
const seals = computeRunSeals(root, original, { artefactDigests: digests });
|
|
89
|
+
if (seals.content_seal !== parsed.meta.content_seal || seals.approval_seal !== parsed.meta.approval_seal) return false;
|
|
90
|
+
const readers = { historical: true, fileDigest: path => digests.get(path) ?? "missing",
|
|
91
|
+
rawFileDigest: path => archived.has(path) ? byteDigest(archived.get(path)) : "missing", readJson: path => JSON.parse(archived.get(path).toString("utf8")) };
|
|
92
|
+
const control = { ...prepareRunContentState(root, original, "", { readArtefact: path => archived.get(path)?.toString("utf8") }), meta: parsed.meta };
|
|
93
|
+
return { manifest, original, parsed, archived, digests, names, readers, control };
|
|
94
|
+
} catch { return false; }
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export function validateRevisionHistory(root, receipt) {
|
|
98
|
+
try {
|
|
99
|
+
const closure = readValidatedRevisionArchive(root, receipt);
|
|
100
|
+
if (!closure) return false;
|
|
101
|
+
const { original, parsed, archived, digests, names, readers, control } = closure;
|
|
102
|
+
const expanded = receipt.schema_version === '3';
|
|
103
|
+
const boundary = sourceRevisionBoundary(control, receipt.source_gate, expanded ? 2 : 1);
|
|
104
|
+
if (!boundary || !boundary.sources.every(type => names.has(`.agdf/control/artefacts/${receipt.run_id}/${type}.md`))) return false;
|
|
105
|
+
const bindings = readArtefactBindings(original);
|
|
106
|
+
// The receipt pins an actually archived reviewed request and its computed preview,
|
|
107
|
+
// not just unrelated valid old approvals beside caller-supplied request hashes.
|
|
108
|
+
const proposals = [...archived.values()].flatMap(bytes => {
|
|
109
|
+
try { const row = JSON.parse(bytes.toString("utf8")); return digest(canonicalJson(row)) === receipt.request_digest ? [row] : []; } catch { return []; }
|
|
110
|
+
});
|
|
111
|
+
const proposal = proposals[0];
|
|
112
|
+
if (['2', '3'].includes(receipt.schema_version)) {
|
|
113
|
+
const bytes = archived.get(receipt.proposal_reference.path);
|
|
114
|
+
if (!bytes || digest(canonicalRunText(bytes.toString('utf8'))) !== receipt.proposal_reference.digest) return false;
|
|
115
|
+
}
|
|
116
|
+
const sources = boundary.sources.map(type => ({ type, path: control.artefacts.get(type)?.path, digest: digests.get(control.artefacts.get(type)?.path) }));
|
|
117
|
+
if (proposals.length !== 1 || !exactObject(proposal, expanded ? REVISION_PROPOSAL_V2_FIELDS : REVISION_PROPOSAL_FIELDS)
|
|
118
|
+
|| proposal.schema_version !== (expanded ? '2' : '1') || proposal.target_id !== receipt.target_id || proposal.run_id !== receipt.run_id
|
|
119
|
+
|| proposal.expected_revision_id !== receipt.previous_revision_id || proposal.operation_id !== receipt.operation_id
|
|
120
|
+
|| proposal.source_gate !== receipt.source_gate || proposal.reason !== receipt.reason || canonicalJson(proposal.sources) !== canonicalJson(sources)
|
|
121
|
+
|| canonicalJson(proposal.impact_assessment?.upstream) !== canonicalJson(receipt.retained_sources)
|
|
122
|
+
|| canonicalJson(proposal.impact_assessment?.analyses) !== canonicalJson(receipt.analyses)) return false;
|
|
123
|
+
const impact = sourceRevisionImpact(proposal, bindings.active);
|
|
124
|
+
if (expanded && (receipt.policy_version !== 2 || receipt.initiating_phase !== boundary.initiating_phase
|
|
125
|
+
|| receipt.impact_digest !== digest(canonicalJson(impact)) || receipt.quality_digest !== digest(canonicalJson(proposal.quality_assessment))
|
|
126
|
+
|| !validExpandedRevisionProof(proposal, control, path => archived.get(path)?.toString('utf8'), boundary.initiating_phase))) return false;
|
|
127
|
+
const preview = { schema_version: expanded ? '2' : "1", target_id: receipt.target_id, run_id: receipt.run_id, expected_revision_id: receipt.previous_revision_id,
|
|
128
|
+
operation_id: receipt.operation_id, request_digest: receipt.request_digest, reason: proposal.reason, intended_change: proposal.intended_change,
|
|
129
|
+
sources, impact, archive_digest: receipt.archive.digest,
|
|
130
|
+
current_run_digest: byteDigest(archived.get(`.agdf/control/runs/${receipt.run_id}/RUN_STATE.md`)) };
|
|
131
|
+
if (digest(canonicalJson(preview)) !== receipt.preview_digest) return false;
|
|
132
|
+
return boundary.approved.every(type => control.approvals.get(type)?.status === "approved")
|
|
133
|
+
&& exactApprovedArtefacts(root, control, readers) && bindings.valid
|
|
134
|
+
&& boundary.bindings.every(type => bindings.active.some(row => row.destination.type === type && validateBindingProof(root, row, readers)))
|
|
135
|
+
&& canonicalJson(receipt.invalidated_bindings) === canonicalJson(impact.invalidated_bindings)
|
|
136
|
+
&& receipt.retained_sources.every(row => digests.get(row.path) === row.digest)
|
|
137
|
+
&& receipt.analyses.every(row => control.artefacts.get(row.type)?.path === row.path && digests.get(row.path) === row.digest);
|
|
138
|
+
} catch { return false; }
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
const SOURCE_TYPES = SOURCE_GATES;
|
|
142
|
+
|
|
143
|
+
export function validSourceRevisionHistories(root, content) {
|
|
144
|
+
const history = readSourceRevisions(content);
|
|
145
|
+
const operations = readRunOperations(content);
|
|
146
|
+
return history.valid && history.receipts.every(receipt => validateRevisionHistory(root, receipt)) && operations.valid
|
|
147
|
+
&& operations.receipts.filter(row => row.kind === 'prd_revision.reopen').every(receipt => validateEarlyPrdHistory(root, receipt));
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
export const earlyPrdHistoryReference = receipt => ({ run_id: receipt.run_id, operation_id: receipt.operation_id, archive: receipt.effect.record.archive,
|
|
151
|
+
previous_revision_id: receipt.expected_revision_id, revision: receipt.effect.revision });
|
|
152
|
+
export function validateEarlyPrdHistory(root, receipt) {
|
|
153
|
+
try {
|
|
154
|
+
const closure = readValidatedRevisionArchive(root, earlyPrdHistoryReference(receipt));
|
|
155
|
+
if (!closure || !earlyPrdRevisionBoundary(closure.control)) return false;
|
|
156
|
+
return closure.control.artefacts.get('PRD')?.path === receipt.effect.record.prd.path
|
|
157
|
+
&& closure.digests.get(receipt.effect.record.prd.path) === receipt.effect.record.prd.digest
|
|
158
|
+
&& exactApprovedArtefacts(root, closure.control, closure.readers);
|
|
159
|
+
} catch { return false; }
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
export function validEarlyPrdEffect(before, after) {
|
|
163
|
+
const parse = content => parseControlState(content, { userGates: APPROVAL_GATES });
|
|
164
|
+
const old = parse(before), next = parse(after);
|
|
165
|
+
return earlyPrdRevisionBoundary({ ...old, meta: parseRunState(before).meta })
|
|
166
|
+
&& APPROVAL_GATES.every(gate => gate === 'PRD' ? next.approvals.get(gate)?.status === 'missing' && !next.approvals.get(gate)?.evidence
|
|
167
|
+
: canonicalJson(old.approvals.get(gate)) === canonicalJson(next.approvals.get(gate)))
|
|
168
|
+
&& [...old.artefacts].every(([type, row]) => type === 'PRD' ? next.artefacts.get(type)?.path === row.path && next.artefacts.get(type)?.status === 'draft'
|
|
169
|
+
: canonicalJson(next.artefacts.get(type)) === canonicalJson(row))
|
|
170
|
+
&& parseRunState(after).meta.current_gate === 'PRD' && parseRunState(after).meta.lifecycle === 'active';
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
export function inspectRevisionHistory(root, receipt) {
|
|
174
|
+
if (!validateRevisionHistory(root, receipt)) throw Error("AGDF_REVISION_HISTORY_INVALID");
|
|
175
|
+
return { authority: "historical_evidence_only", receipt,
|
|
176
|
+
manifest: JSON.parse(readHistoryBytes(root, receipt.archive.path).toString("utf8")) };
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
export function archivedRunMatches(root, receipt, content) {
|
|
180
|
+
try {
|
|
181
|
+
const manifest = JSON.parse(readHistoryBytes(root, receipt.archive.path).toString("utf8"));
|
|
182
|
+
return manifest.files.find(row => row.path === `.agdf/control/runs/${receipt.run_id}/RUN_STATE.md`)?.digest === byteDigest(Buffer.from(content));
|
|
183
|
+
} catch { return false; }
|
|
184
|
+
}
|