@empire-builder-kit/nx 1.0.0-beta.9 → 1.0.0-rc.2
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/NOTICE +6 -0
- package/README.md +113 -3
- package/executors.json +30 -0
- package/package.json +84 -6
- package/src/api-contract/baseline-update.d.ts +82 -0
- package/src/api-contract/baseline-update.js +225 -0
- package/src/api-contract/baseline-update.js.map +1 -0
- package/src/api-contract/compatibility.d.ts +30 -0
- package/src/api-contract/compatibility.js +643 -0
- package/src/api-contract/compatibility.js.map +1 -0
- package/src/api-contract/contract-graph.d.ts +35 -0
- package/src/api-contract/contract-graph.js +141 -0
- package/src/api-contract/contract-graph.js.map +1 -0
- package/src/api-contract/evidence.d.ts +23 -0
- package/src/api-contract/evidence.js +87 -0
- package/src/api-contract/evidence.js.map +1 -0
- package/src/api-contract/index.d.ts +6 -0
- package/src/api-contract/index.js +10 -0
- package/src/api-contract/index.js.map +1 -0
- package/src/api-contract/model.d.ts +144 -0
- package/src/api-contract/model.fixtures.d.ts +2 -0
- package/src/api-contract/model.fixtures.js +81 -0
- package/src/api-contract/model.fixtures.js.map +1 -0
- package/src/api-contract/model.js +993 -0
- package/src/api-contract/model.js.map +1 -0
- package/src/api-contract/rollout.d.ts +32 -0
- package/src/api-contract/rollout.js +88 -0
- package/src/api-contract/rollout.js.map +1 -0
- package/src/authorization/compatibility.d.ts +62 -0
- package/src/authorization/compatibility.js +175 -0
- package/src/authorization/compatibility.js.map +1 -0
- package/src/authorization/index.d.ts +1 -0
- package/src/authorization/index.js +5 -0
- package/src/authorization/index.js.map +1 -0
- package/src/blueprints/execution.d.ts +25 -1
- package/src/blueprints/execution.js +246 -83
- package/src/blueprints/execution.js.map +1 -1
- package/src/blueprints/external-sandbox.d.ts +53 -0
- package/src/blueprints/external-sandbox.js +1182 -0
- package/src/blueprints/external-sandbox.js.map +1 -0
- package/src/blueprints/manifest.d.ts +42 -2
- package/src/blueprints/manifest.js +82 -27
- package/src/blueprints/manifest.js.map +1 -1
- package/src/blueprints/resolver.d.ts +14 -5
- package/src/blueprints/resolver.js +228 -68
- package/src/blueprints/resolver.js.map +1 -1
- package/src/cli/agent-command.d.ts +30 -0
- package/src/cli/agent-command.js +204 -0
- package/src/cli/agent-command.js.map +1 -0
- package/src/cli/agent-runtime.d.ts +25 -0
- package/src/cli/agent-runtime.js +488 -0
- package/src/cli/agent-runtime.js.map +1 -0
- package/src/cli/blueprint-authority.d.ts +9 -0
- package/src/cli/blueprint-authority.js +43 -0
- package/src/cli/blueprint-authority.js.map +1 -0
- package/src/cli/blueprint-command.d.ts +24 -0
- package/src/cli/blueprint-command.js +63 -0
- package/src/cli/blueprint-command.js.map +1 -0
- package/src/cli/bootstrap.d.ts +31 -0
- package/src/cli/bootstrap.js +165 -0
- package/src/cli/bootstrap.js.map +1 -0
- package/src/cli/dev-command.d.ts +92 -0
- package/src/cli/dev-command.js +561 -0
- package/src/cli/dev-command.js.map +1 -0
- package/src/cli/main.d.ts +131 -0
- package/src/cli/main.js +1199 -0
- package/src/cli/main.js.map +1 -0
- package/src/cli/output.d.ts +19 -0
- package/src/cli/output.js +51 -0
- package/src/cli/output.js.map +1 -0
- package/src/cli/personal-secret-runtime.d.ts +81 -0
- package/src/cli/personal-secret-runtime.js +567 -0
- package/src/cli/personal-secret-runtime.js.map +1 -0
- package/src/cli/secret-terminal.d.ts +12 -0
- package/src/cli/secret-terminal.js +128 -0
- package/src/cli/secret-terminal.js.map +1 -0
- package/src/container-images.d.ts +1 -0
- package/src/container-images.js +5 -0
- package/src/container-images.js.map +1 -0
- package/src/data-lifecycle/index.d.ts +3 -0
- package/src/data-lifecycle/index.js +7 -0
- package/src/data-lifecycle/index.js.map +1 -0
- package/src/data-lifecycle/model.d.ts +172 -0
- package/src/data-lifecycle/model.fixtures.d.ts +2 -0
- package/src/data-lifecycle/model.fixtures.js +244 -0
- package/src/data-lifecycle/model.fixtures.js.map +1 -0
- package/src/data-lifecycle/model.js +95 -0
- package/src/data-lifecycle/model.js.map +1 -0
- package/src/data-lifecycle/sensitive-artifacts.d.ts +28 -0
- package/src/data-lifecycle/sensitive-artifacts.js +146 -0
- package/src/data-lifecycle/sensitive-artifacts.js.map +1 -0
- package/src/data-lifecycle/validation.d.ts +32 -0
- package/src/data-lifecycle/validation.js +837 -0
- package/src/data-lifecycle/validation.js.map +1 -0
- package/src/database-retirement/contract.d.ts +68 -0
- package/src/database-retirement/contract.js +166 -0
- package/src/database-retirement/contract.js.map +1 -0
- package/src/database-retirement/index.d.ts +1 -0
- package/src/database-retirement/index.js +5 -0
- package/src/database-retirement/index.js.map +1 -0
- package/src/deterministic-order.d.ts +2 -0
- package/src/deterministic-order.js +7 -0
- package/src/deterministic-order.js.map +1 -0
- package/src/developer-agent/context.d.ts +27 -0
- package/src/developer-agent/context.js +497 -0
- package/src/developer-agent/context.js.map +1 -0
- package/src/developer-agent/generator-planning.d.ts +34 -0
- package/src/developer-agent/generator-planning.js +645 -0
- package/src/developer-agent/generator-planning.js.map +1 -0
- package/src/developer-agent/generator-preview.d.ts +8 -0
- package/src/developer-agent/generator-preview.js +650 -0
- package/src/developer-agent/generator-preview.js.map +1 -0
- package/src/developer-agent/git-inspection.d.ts +108 -0
- package/src/developer-agent/git-inspection.js +815 -0
- package/src/developer-agent/git-inspection.js.map +1 -0
- package/src/developer-agent/handoff.d.ts +43 -0
- package/src/developer-agent/handoff.js +698 -0
- package/src/developer-agent/handoff.js.map +1 -0
- package/src/developer-agent/index.d.ts +10 -0
- package/src/developer-agent/index.js +14 -0
- package/src/developer-agent/index.js.map +1 -0
- package/src/developer-agent/model.d.ts +481 -0
- package/src/developer-agent/model.js +143 -0
- package/src/developer-agent/model.js.map +1 -0
- package/src/developer-agent/operation-registry.d.ts +45 -0
- package/src/developer-agent/operation-registry.js +1255 -0
- package/src/developer-agent/operation-registry.js.map +1 -0
- package/src/developer-agent/ordering.d.ts +9 -0
- package/src/developer-agent/ordering.js +15 -0
- package/src/developer-agent/ordering.js.map +1 -0
- package/src/developer-agent/planning.d.ts +18 -0
- package/src/developer-agent/planning.js +447 -0
- package/src/developer-agent/planning.js.map +1 -0
- package/src/developer-agent/preview-changes.d.ts +26 -0
- package/src/developer-agent/preview-changes.js +203 -0
- package/src/developer-agent/preview-changes.js.map +1 -0
- package/src/developer-agent/preview-source.d.ts +2 -0
- package/src/developer-agent/preview-source.js +16 -0
- package/src/developer-agent/preview-source.js.map +1 -0
- package/src/developer-agent/validation.d.ts +18 -0
- package/src/developer-agent/validation.js +2617 -0
- package/src/developer-agent/validation.js.map +1 -0
- package/src/developer-agent/workspace-inspection.d.ts +20 -0
- package/src/developer-agent/workspace-inspection.js +1134 -0
- package/src/developer-agent/workspace-inspection.js.map +1 -0
- package/src/developer-agent/workspace-path.d.ts +6 -0
- package/src/developer-agent/workspace-path.js +22 -0
- package/src/developer-agent/workspace-path.js.map +1 -0
- package/src/executors/blueprint-trust/blueprint-trust.d.ts +29 -0
- package/src/executors/blueprint-trust/blueprint-trust.js +115 -0
- package/src/executors/blueprint-trust/blueprint-trust.js.map +1 -0
- package/src/executors/blueprint-trust/schema.json +27 -0
- package/src/executors/blueprint-verification/blueprint-verification.d.ts +13 -0
- package/src/executors/blueprint-verification/blueprint-verification.js +110 -0
- package/src/executors/blueprint-verification/blueprint-verification.js.map +1 -0
- package/src/executors/blueprint-verification/schema.json +44 -0
- package/src/executors/deployment-plan/deployment-plan.js +1 -0
- package/src/executors/deployment-plan/deployment-plan.js.map +1 -1
- package/src/executors/dev-doctor/dev-doctor.d.ts +19 -5
- package/src/executors/dev-doctor/dev-doctor.js +186 -32
- package/src/executors/dev-doctor/dev-doctor.js.map +1 -1
- package/src/executors/dev-doctor/schema.json +1 -6
- package/src/executors/dev-setup/dev-setup.d.ts +7 -1
- package/src/executors/dev-setup/dev-setup.js +14 -3
- package/src/executors/dev-setup/dev-setup.js.map +1 -1
- package/src/executors/developer-context/developer-context.d.ts +38 -0
- package/src/executors/developer-context/developer-context.js +78 -0
- package/src/executors/developer-context/developer-context.js.map +1 -0
- package/src/executors/developer-context/schema.json +87 -0
- package/src/executors/fleet/fleet.d.ts +12 -43
- package/src/executors/fleet/fleet.js +120 -500
- package/src/executors/fleet/fleet.js.map +1 -1
- package/src/executors/fleet/schema.json +64 -14
- package/src/executors/github-bootstrap/github-bootstrap.d.ts +1 -0
- package/src/executors/github-bootstrap/github-bootstrap.js +1 -0
- package/src/executors/github-bootstrap/github-bootstrap.js.map +1 -1
- package/src/executors/github-bootstrap/schema.json +5 -0
- package/src/executors/infrastructure-plan/infrastructure-plan.d.ts +144 -0
- package/src/executors/infrastructure-plan/infrastructure-plan.js +3320 -0
- package/src/executors/infrastructure-plan/infrastructure-plan.js.map +1 -0
- package/src/executors/infrastructure-plan/schema.json +78 -0
- package/src/executors/secret-guardrails/schema.json +6 -0
- package/src/executors/secret-guardrails/secret-guardrails.d.ts +3 -0
- package/src/executors/secret-guardrails/secret-guardrails.js +44 -0
- package/src/executors/secret-guardrails/secret-guardrails.js.map +1 -0
- package/src/executors/secret-metadata/schema.json +31 -0
- package/src/executors/secret-metadata/secret-metadata.d.ts +32 -0
- package/src/executors/secret-metadata/secret-metadata.js +131 -0
- package/src/executors/secret-metadata/secret-metadata.js.map +1 -0
- package/src/executors/sst-lifecycle/logging-preflight.d.ts +17 -0
- package/src/executors/sst-lifecycle/logging-preflight.js +196 -0
- package/src/executors/sst-lifecycle/logging-preflight.js.map +1 -0
- package/src/executors/sst-lifecycle/run-sst-command.d.ts +23 -3
- package/src/executors/sst-lifecycle/run-sst-command.js +113 -10
- package/src/executors/sst-lifecycle/run-sst-command.js.map +1 -1
- package/src/executors/sst-lifecycle/schema.json +9 -5
- package/src/executors/sst-lifecycle/secret-preflight.d.ts +25 -0
- package/src/executors/sst-lifecycle/secret-preflight.js +119 -0
- package/src/executors/sst-lifecycle/secret-preflight.js.map +1 -0
- package/src/foundation/discovery.d.ts +17 -1
- package/src/foundation/discovery.js +16 -1
- package/src/foundation/discovery.js.map +1 -1
- package/src/foundation/index.d.ts +3 -0
- package/src/foundation/index.js +3 -0
- package/src/foundation/index.js.map +1 -1
- package/src/foundation/local-database-contract.d.ts +1 -0
- package/src/foundation/local-database-contract.js +3 -0
- package/src/foundation/local-database-contract.js.map +1 -1
- package/src/foundation/logging-preflight.d.ts +30 -0
- package/src/foundation/logging-preflight.js +138 -0
- package/src/foundation/logging-preflight.js.map +1 -0
- package/src/foundation/logging.d.ts +70 -0
- package/src/foundation/logging.js +133 -0
- package/src/foundation/logging.js.map +1 -0
- package/src/foundation/preflight.d.ts +9 -0
- package/src/foundation/preflight.js +58 -2
- package/src/foundation/preflight.js.map +1 -1
- package/src/foundation/provision-database-bindings.d.ts +9 -1
- package/src/foundation/provision-database-bindings.js +25 -5
- package/src/foundation/provision-database-bindings.js.map +1 -1
- package/src/foundation/provision-logical-database.d.ts +10 -2
- package/src/foundation/provision-logical-database.js +68 -113
- package/src/foundation/provision-logical-database.js.map +1 -1
- package/src/foundation/router-origin-proof.d.ts +2 -0
- package/src/foundation/router-origin-proof.js +25 -0
- package/src/foundation/router-origin-proof.js.map +1 -0
- package/src/foundation/stages.d.ts +1 -0
- package/src/foundation/stages.js +9 -1
- package/src/foundation/stages.js.map +1 -1
- package/src/frontend-security/index.d.ts +1 -0
- package/src/frontend-security/index.js +5 -0
- package/src/frontend-security/index.js.map +1 -0
- package/src/frontend-security/security-headers.d.ts +50 -0
- package/src/frontend-security/security-headers.js +418 -0
- package/src/frontend-security/security-headers.js.map +1 -0
- package/src/generators/feature-registry.d.ts +13 -0
- package/src/generators/feature-registry.js +73 -0
- package/src/generators/feature-registry.js.map +1 -0
- package/src/generators/function/function.d.ts +1 -1
- package/src/generators/function/function.js +51 -6
- package/src/generators/function/function.js.map +1 -1
- package/src/generators/function/schema.d.ts +1 -0
- package/src/generators/function/schema.json +6 -1
- package/src/generators/logging-registry.d.ts +13 -0
- package/src/generators/logging-registry.js +62 -0
- package/src/generators/logging-registry.js.map +1 -0
- package/src/generators/post-generation-install.d.ts +67 -0
- package/src/generators/post-generation-install.js +3308 -0
- package/src/generators/post-generation-install.js.map +1 -0
- package/src/generators/preset/generator.js +3 -0
- package/src/generators/preset/generator.js.map +1 -1
- package/src/generators/preset/tool-versions.d.ts +18 -0
- package/src/generators/preset/tool-versions.js +22 -0
- package/src/generators/preset/tool-versions.js.map +1 -0
- package/src/generators/preset/workspace-files-developer-agent.d.ts +14 -0
- package/src/generators/preset/workspace-files-developer-agent.js +511 -0
- package/src/generators/preset/workspace-files-developer-agent.js.map +1 -0
- package/src/generators/preset/workspace-files-foundation-workload-roles.d.ts +6 -0
- package/src/generators/preset/workspace-files-foundation-workload-roles.js +406 -0
- package/src/generators/preset/workspace-files-foundation-workload-roles.js.map +1 -0
- package/src/generators/preset/workspace-files-performance-cost.d.ts +66 -0
- package/src/generators/preset/workspace-files-performance-cost.js +866 -0
- package/src/generators/preset/workspace-files-performance-cost.js.map +1 -0
- package/src/generators/preset/workspace-files-performance-load.d.ts +73 -0
- package/src/generators/preset/workspace-files-performance-load.js +801 -0
- package/src/generators/preset/workspace-files-performance-load.js.map +1 -0
- package/src/generators/preset/workspace-files-workload-role-baseline.d.ts +9 -0
- package/src/generators/preset/workspace-files-workload-role-baseline.js +1102 -0
- package/src/generators/preset/workspace-files-workload-role-baseline.js.map +1 -0
- package/src/generators/preset/workspace-files.d.ts +14 -1
- package/src/generators/preset/workspace-files.js +8189 -245
- package/src/generators/preset/workspace-files.js.map +1 -1
- package/src/generators/repository-policy/repository-policy.js +3 -47
- package/src/generators/repository-policy/repository-policy.js.map +1 -1
- package/src/generators/slice/built-in-plan-api-contract-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-api-contract-files.js +2656 -0
- package/src/generators/slice/built-in-plan-api-contract-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-api-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-api-files.js +1186 -0
- package/src/generators/slice/built-in-plan-api-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-async-work-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-async-work-files.js +7903 -0
- package/src/generators/slice/built-in-plan-async-work-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-authorization-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-authorization-files.js +2314 -0
- package/src/generators/slice/built-in-plan-authorization-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-authorization-infrastructure-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js +559 -0
- package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-data-deletion-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-data-deletion-files.js +1101 -0
- package/src/generators/slice/built-in-plan-data-deletion-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-data-export-infrastructure-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-data-export-infrastructure-files.js +249 -0
- package/src/generators/slice/built-in-plan-data-export-infrastructure-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-data-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-data-files.js +1530 -0
- package/src/generators/slice/built-in-plan-data-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-data-lifecycle-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-data-lifecycle-files.js +750 -0
- package/src/generators/slice/built-in-plan-data-lifecycle-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-data-lifecycle-runtime-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-data-lifecycle-runtime-files.js +828 -0
- package/src/generators/slice/built-in-plan-data-lifecycle-runtime-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-data-retention-job-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-data-retention-job-files.js +2604 -0
- package/src/generators/slice/built-in-plan-data-retention-job-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-data-retention-launcher-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-data-retention-launcher-files.js +144 -0
- package/src/generators/slice/built-in-plan-data-retention-launcher-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-data-rights-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-data-rights-files.js +4628 -0
- package/src/generators/slice/built-in-plan-data-rights-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-database-lifecycle-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-database-lifecycle-files.js +1901 -0
- package/src/generators/slice/built-in-plan-database-lifecycle-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-database-retirement-rehearsal-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-database-retirement-rehearsal-files.js +485 -0
- package/src/generators/slice/built-in-plan-database-retirement-rehearsal-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-foundation-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-foundation-files.js +184 -0
- package/src/generators/slice/built-in-plan-foundation-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-frontend-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-frontend-files.js +2233 -0
- package/src/generators/slice/built-in-plan-frontend-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-infrastructure-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-infrastructure-files.js +3038 -0
- package/src/generators/slice/built-in-plan-infrastructure-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-infrastructure-safety-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-infrastructure-safety-files.js +312 -0
- package/src/generators/slice/built-in-plan-infrastructure-safety-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-metadata-files.d.ts +3 -0
- package/src/generators/slice/built-in-plan-metadata-files.js +219 -0
- package/src/generators/slice/built-in-plan-metadata-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-operations-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-operations-files.js +630 -0
- package/src/generators/slice/built-in-plan-operations-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-performance-files.d.ts +3 -0
- package/src/generators/slice/built-in-plan-performance-files.js +3293 -0
- package/src/generators/slice/built-in-plan-performance-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-project-files.d.ts +3 -0
- package/src/generators/slice/built-in-plan-project-files.js +979 -0
- package/src/generators/slice/built-in-plan-project-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-release-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-release-files.js +6387 -0
- package/src/generators/slice/built-in-plan-release-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-reliability-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-reliability-files.js +4499 -0
- package/src/generators/slice/built-in-plan-reliability-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-secret-runtime-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-secret-runtime-files.js +1004 -0
- package/src/generators/slice/built-in-plan-secret-runtime-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-shared.d.ts +53 -0
- package/src/generators/slice/built-in-plan-shared.js +113 -0
- package/src/generators/slice/built-in-plan-shared.js.map +1 -0
- package/src/generators/slice/built-in-plan-testing-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-testing-files.js +2356 -0
- package/src/generators/slice/built-in-plan-testing-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-verification-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-verification-files.js +358 -0
- package/src/generators/slice/built-in-plan-verification-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-web-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-web-files.js +430 -0
- package/src/generators/slice/built-in-plan-web-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-workload-role-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-workload-role-files.js +2356 -0
- package/src/generators/slice/built-in-plan-workload-role-files.js.map +1 -0
- package/src/generators/slice/built-in-plan.d.ts +8 -0
- package/src/generators/slice/built-in-plan.js +264 -0
- package/src/generators/slice/built-in-plan.js.map +1 -0
- package/src/generators/slice/schema.json +1 -1
- package/src/generators/slice/slice.d.ts +1 -22
- package/src/generators/slice/slice.js +185 -1510
- package/src/generators/slice/slice.js.map +1 -1
- package/src/generators/upgrade/schema.d.ts +2 -0
- package/src/generators/upgrade/schema.json +11 -1
- package/src/generators/upgrade/upgrade.d.ts +51 -1
- package/src/generators/upgrade/upgrade.js +820 -82
- package/src/generators/upgrade/upgrade.js.map +1 -1
- package/src/generators/workload/frozen-container.d.ts +8 -0
- package/src/generators/workload/frozen-container.js +36 -0
- package/src/generators/workload/frozen-container.js.map +1 -0
- package/src/generators/workload/performance-registration.d.ts +32 -0
- package/src/generators/workload/performance-registration.js +226 -0
- package/src/generators/workload/performance-registration.js.map +1 -0
- package/src/generators/workload/reliability-registration.d.ts +16 -0
- package/src/generators/workload/reliability-registration.js +150 -0
- package/src/generators/workload/reliability-registration.js.map +1 -0
- package/src/generators/workload/schema.d.ts +1 -0
- package/src/generators/workload/schema.json +6 -1
- package/src/generators/workload/service-performance-files.d.ts +4 -0
- package/src/generators/workload/service-performance-files.js +1846 -0
- package/src/generators/workload/service-performance-files.js.map +1 -0
- package/src/generators/workload/workload.d.ts +3 -2
- package/src/generators/workload/workload.js +1083 -18
- package/src/generators/workload/workload.js.map +1 -1
- package/src/git-policy/action-pins.d.ts +10 -0
- package/src/git-policy/action-pins.js +10 -0
- package/src/git-policy/action-pins.js.map +1 -1
- package/src/git-policy/github-bootstrap.d.ts +14 -1
- package/src/git-policy/github-bootstrap.js +274 -46
- package/src/git-policy/github-bootstrap.js.map +1 -1
- package/src/index.d.ts +2 -0
- package/src/index.js +2 -0
- package/src/index.js.map +1 -1
- package/src/infrastructure-change/convergence.d.ts +13 -0
- package/src/infrastructure-change/convergence.js +85 -0
- package/src/infrastructure-change/convergence.js.map +1 -0
- package/src/infrastructure-change/drift.d.ts +13 -0
- package/src/infrastructure-change/drift.js +112 -0
- package/src/infrastructure-change/drift.js.map +1 -0
- package/src/infrastructure-change/index.d.ts +7 -0
- package/src/infrastructure-change/index.js +11 -0
- package/src/infrastructure-change/index.js.map +1 -0
- package/src/infrastructure-change/model.d.ts +253 -0
- package/src/infrastructure-change/model.js +28 -0
- package/src/infrastructure-change/model.js.map +1 -0
- package/src/infrastructure-change/normalize.d.ts +12 -0
- package/src/infrastructure-change/normalize.js +245 -0
- package/src/infrastructure-change/normalize.js.map +1 -0
- package/src/infrastructure-change/plan.d.ts +40 -0
- package/src/infrastructure-change/plan.js +361 -0
- package/src/infrastructure-change/plan.js.map +1 -0
- package/src/infrastructure-change/risk.d.ts +7 -0
- package/src/infrastructure-change/risk.js +269 -0
- package/src/infrastructure-change/risk.js.map +1 -0
- package/src/infrastructure-change/summary.d.ts +20 -0
- package/src/infrastructure-change/summary.js +130 -0
- package/src/infrastructure-change/summary.js.map +1 -0
- package/src/local-dev/context-discovery.d.ts +2 -0
- package/src/local-dev/context-discovery.js +59 -0
- package/src/local-dev/context-discovery.js.map +1 -0
- package/src/local-dev/contract-validation.d.ts +15 -0
- package/src/local-dev/contract-validation.js +84 -0
- package/src/local-dev/contract-validation.js.map +1 -0
- package/src/local-dev/contracts.d.ts +10 -1
- package/src/local-dev/contracts.js +57 -5
- package/src/local-dev/contracts.js.map +1 -1
- package/src/local-dev/control-contract.d.ts +67 -0
- package/src/local-dev/control-contract.js +180 -0
- package/src/local-dev/control-contract.js.map +1 -0
- package/src/local-dev/dev-command-core.d.ts +60 -0
- package/src/local-dev/dev-command-core.js +89 -0
- package/src/local-dev/dev-command-core.js.map +1 -0
- package/src/local-dev/effects.d.ts +16 -0
- package/src/local-dev/effects.js +63 -0
- package/src/local-dev/effects.js.map +1 -0
- package/src/local-dev/environment-inspector.d.ts +125 -0
- package/src/local-dev/environment-inspector.js +687 -0
- package/src/local-dev/environment-inspector.js.map +1 -0
- package/src/local-dev/environment-state.d.ts +113 -0
- package/src/local-dev/environment-state.js +463 -0
- package/src/local-dev/environment-state.js.map +1 -0
- package/src/local-dev/errors.d.ts +6 -0
- package/src/local-dev/errors.js +41 -0
- package/src/local-dev/errors.js.map +1 -0
- package/src/local-dev/fleet-client.d.ts +33 -0
- package/src/local-dev/fleet-client.js +156 -0
- package/src/local-dev/fleet-client.js.map +1 -0
- package/src/local-dev/fleet-configuration.d.ts +13 -0
- package/src/local-dev/fleet-configuration.js +71 -0
- package/src/local-dev/fleet-configuration.js.map +1 -0
- package/src/local-dev/fleet-inventory.d.ts +56 -0
- package/src/local-dev/fleet-inventory.js +469 -0
- package/src/local-dev/fleet-inventory.js.map +1 -0
- package/src/local-dev/fleet-ipc.d.ts +28 -0
- package/src/local-dev/fleet-ipc.js +267 -0
- package/src/local-dev/fleet-ipc.js.map +1 -0
- package/src/local-dev/fleet-launcher.d.ts +53 -0
- package/src/local-dev/fleet-launcher.js +379 -0
- package/src/local-dev/fleet-launcher.js.map +1 -0
- package/src/local-dev/fleet-lock.d.ts +41 -0
- package/src/local-dev/fleet-lock.js +135 -0
- package/src/local-dev/fleet-lock.js.map +1 -0
- package/src/local-dev/fleet-logs.d.ts +66 -0
- package/src/local-dev/fleet-logs.js +542 -0
- package/src/local-dev/fleet-logs.js.map +1 -0
- package/src/local-dev/fleet-process.d.ts +50 -0
- package/src/local-dev/fleet-process.js +289 -0
- package/src/local-dev/fleet-process.js.map +1 -0
- package/src/local-dev/fleet-runtime.d.ts +22 -0
- package/src/local-dev/fleet-runtime.js +368 -0
- package/src/local-dev/fleet-runtime.js.map +1 -0
- package/src/local-dev/fleet-session.d.ts +70 -0
- package/src/local-dev/fleet-session.js +301 -0
- package/src/local-dev/fleet-session.js.map +1 -0
- package/src/local-dev/fleet-slice-runner-daemon.d.ts +1 -0
- package/src/local-dev/fleet-slice-runner-daemon.js +21 -0
- package/src/local-dev/fleet-slice-runner-daemon.js.map +1 -0
- package/src/local-dev/fleet-startup.d.ts +22 -0
- package/src/local-dev/fleet-startup.js +114 -0
- package/src/local-dev/fleet-startup.js.map +1 -0
- package/src/local-dev/fleet-state.d.ts +62 -0
- package/src/local-dev/fleet-state.js +297 -0
- package/src/local-dev/fleet-state.js.map +1 -0
- package/src/local-dev/fleet-supervisor-daemon.d.ts +1 -0
- package/src/local-dev/fleet-supervisor-daemon.js +41 -0
- package/src/local-dev/fleet-supervisor-daemon.js.map +1 -0
- package/src/local-dev/fleet-supervisor.d.ts +52 -0
- package/src/local-dev/fleet-supervisor.js +384 -0
- package/src/local-dev/fleet-supervisor.js.map +1 -0
- package/src/local-dev/gateway.js +1 -1
- package/src/local-dev/gateway.js.map +1 -1
- package/src/local-dev/identity.js +4 -6
- package/src/local-dev/identity.js.map +1 -1
- package/src/local-dev/index.d.ts +1 -0
- package/src/local-dev/index.js +1 -0
- package/src/local-dev/index.js.map +1 -1
- package/src/local-dev/local-context.d.ts +62 -0
- package/src/local-dev/local-context.js +299 -0
- package/src/local-dev/local-context.js.map +1 -0
- package/src/local-dev/nx-workspace.d.ts +45 -0
- package/src/local-dev/nx-workspace.js +228 -0
- package/src/local-dev/nx-workspace.js.map +1 -0
- package/src/local-dev/personal-secret-ledger.d.ts +75 -0
- package/src/local-dev/personal-secret-ledger.js +391 -0
- package/src/local-dev/personal-secret-ledger.js.map +1 -0
- package/src/local-dev/personal-stage.d.ts +18 -0
- package/src/local-dev/personal-stage.js +129 -0
- package/src/local-dev/personal-stage.js.map +1 -0
- package/src/local-dev/private-state.d.ts +17 -0
- package/src/local-dev/private-state.js +254 -0
- package/src/local-dev/private-state.js.map +1 -0
- package/src/local-dev/process-identity.d.ts +9 -0
- package/src/local-dev/process-identity.js +79 -0
- package/src/local-dev/process-identity.js.map +1 -0
- package/src/local-dev/runtime-paths.d.ts +17 -0
- package/src/local-dev/runtime-paths.js +33 -0
- package/src/local-dev/runtime-paths.js.map +1 -0
- package/src/local-dev/secret-slice-claim.d.ts +17 -0
- package/src/local-dev/secret-slice-claim.js +75 -0
- package/src/local-dev/secret-slice-claim.js.map +1 -0
- package/src/local-dev/slice-claim.d.ts +36 -0
- package/src/local-dev/slice-claim.js +199 -0
- package/src/local-dev/slice-claim.js.map +1 -0
- package/src/local-dev/slice-runner.d.ts +121 -0
- package/src/local-dev/slice-runner.js +715 -0
- package/src/local-dev/slice-runner.js.map +1 -0
- package/src/local-dev/tls.js +51 -17
- package/src/local-dev/tls.js.map +1 -1
- package/src/ownership/composition.d.ts +5 -2
- package/src/ownership/composition.js +26 -3
- package/src/ownership/composition.js.map +1 -1
- package/src/ownership/hash.d.ts +1 -1
- package/src/ownership/hash.js +3 -1
- package/src/ownership/hash.js.map +1 -1
- package/src/ownership/record.d.ts +32 -1
- package/src/ownership/record.js +139 -2
- package/src/ownership/record.js.map +1 -1
- package/src/performance/cost-collection.d.ts +225 -0
- package/src/performance/cost-collection.js +825 -0
- package/src/performance/cost-collection.js.map +1 -0
- package/src/performance/cost-controls.d.ts +131 -0
- package/src/performance/cost-controls.js +336 -0
- package/src/performance/cost-controls.js.map +1 -0
- package/src/performance/evidence.d.ts +140 -0
- package/src/performance/evidence.js +599 -0
- package/src/performance/evidence.js.map +1 -0
- package/src/performance/index.d.ts +10 -0
- package/src/performance/index.js +14 -0
- package/src/performance/index.js.map +1 -0
- package/src/performance/load-safety.d.ts +84 -0
- package/src/performance/load-safety.js +346 -0
- package/src/performance/load-safety.js.map +1 -0
- package/src/performance/model.d.ts +129 -0
- package/src/performance/model.js +452 -0
- package/src/performance/model.js.map +1 -0
- package/src/performance/pr-artifact-budget.d.ts +42 -0
- package/src/performance/pr-artifact-budget.js +151 -0
- package/src/performance/pr-artifact-budget.js.map +1 -0
- package/src/performance/runner.d.ts +75 -0
- package/src/performance/runner.js +227 -0
- package/src/performance/runner.js.map +1 -0
- package/src/performance/scenario-endpoint.d.ts +1 -0
- package/src/performance/scenario-endpoint.js +5 -0
- package/src/performance/scenario-endpoint.js.map +1 -0
- package/src/performance/scenario.d.ts +193 -0
- package/src/performance/scenario.js +736 -0
- package/src/performance/scenario.js.map +1 -0
- package/src/performance/test-fixtures.d.ts +7 -0
- package/src/performance/test-fixtures.js +169 -0
- package/src/performance/test-fixtures.js.map +1 -0
- package/src/performance/unit-cost.d.ts +105 -0
- package/src/performance/unit-cost.js +364 -0
- package/src/performance/unit-cost.js.map +1 -0
- package/src/release/index.d.ts +4 -0
- package/src/release/index.js +8 -0
- package/src/release/index.js.map +1 -0
- package/src/release/lifecycle.d.ts +132 -0
- package/src/release/lifecycle.js +411 -0
- package/src/release/lifecycle.js.map +1 -0
- package/src/release/manifest.d.ts +148 -0
- package/src/release/manifest.js +503 -0
- package/src/release/manifest.js.map +1 -0
- package/src/release/rollout.d.ts +170 -0
- package/src/release/rollout.js +578 -0
- package/src/release/rollout.js.map +1 -0
- package/src/release/source-authority.d.ts +19 -0
- package/src/release/source-authority.js +195 -0
- package/src/release/source-authority.js.map +1 -0
- package/src/repository-policy/deployment-plan.d.ts +2 -1
- package/src/repository-policy/deployment-plan.js +2 -0
- package/src/repository-policy/deployment-plan.js.map +1 -1
- package/src/repository-policy/policy.d.ts +1 -1
- package/src/repository-policy/policy.js +29 -25
- package/src/repository-policy/policy.js.map +1 -1
- package/src/schemas/aggregate-count-evidence-v1.json +135 -0
- package/src/schemas/api-contract-baseline-v1.json +674 -0
- package/src/schemas/api-contract-compatibility-report-v1.json +126 -0
- package/src/schemas/aws-billing-actual-evidence-v1.json +407 -0
- package/src/schemas/blueprint-v1.json +18 -1
- package/src/schemas/data-lifecycle-policy-v1.json +517 -0
- package/src/schemas/generated-ownership-v2.json +22 -0
- package/src/schemas/performance-policy-v1.json +335 -0
- package/src/schemas/repository-policy-v1.json +1 -0
- package/src/schemas/testing-evidence-quarantine-v1.json +168 -0
- package/src/schemas/testing-evidence-result-v1.json +319 -0
- package/src/secrets/adapters.d.ts +49 -0
- package/src/secrets/adapters.js +184 -0
- package/src/secrets/adapters.js.map +1 -0
- package/src/secrets/aws-control-plane.d.ts +20 -0
- package/src/secrets/aws-control-plane.js +255 -0
- package/src/secrets/aws-control-plane.js.map +1 -0
- package/src/secrets/declaration-verification.d.ts +11 -0
- package/src/secrets/declaration-verification.js +68 -0
- package/src/secrets/declaration-verification.js.map +1 -0
- package/src/secrets/guardrails.d.ts +26 -0
- package/src/secrets/guardrails.js +328 -0
- package/src/secrets/guardrails.js.map +1 -0
- package/src/secrets/index.d.ts +12 -0
- package/src/secrets/index.js +16 -0
- package/src/secrets/index.js.map +1 -0
- package/src/secrets/metadata.d.ts +48 -0
- package/src/secrets/metadata.js +171 -0
- package/src/secrets/metadata.js.map +1 -0
- package/src/secrets/model.d.ts +49 -0
- package/src/secrets/model.js +125 -0
- package/src/secrets/model.js.map +1 -0
- package/src/secrets/operator.d.ts +101 -0
- package/src/secrets/operator.js +229 -0
- package/src/secrets/operator.js.map +1 -0
- package/src/secrets/permissions.d.ts +34 -0
- package/src/secrets/permissions.js +86 -0
- package/src/secrets/permissions.js.map +1 -0
- package/src/secrets/personal-command.d.ts +83 -0
- package/src/secrets/personal-command.js +197 -0
- package/src/secrets/personal-command.js.map +1 -0
- package/src/secrets/personal-ledger.d.ts +21 -0
- package/src/secrets/personal-ledger.js +135 -0
- package/src/secrets/personal-ledger.js.map +1 -0
- package/src/secrets/registry.d.ts +9 -0
- package/src/secrets/registry.js +86 -0
- package/src/secrets/registry.js.map +1 -0
- package/src/secrets/verification.d.ts +18 -0
- package/src/secrets/verification.js +139 -0
- package/src/secrets/verification.js.map +1 -0
- package/src/secrets/workload-access.d.ts +46 -0
- package/src/secrets/workload-access.js +163 -0
- package/src/secrets/workload-access.js.map +1 -0
- package/src/supply-chain/action-pins.d.ts +26 -0
- package/src/supply-chain/action-pins.js +208 -0
- package/src/supply-chain/action-pins.js.map +1 -0
- package/src/supply-chain/blueprint-trust-git.d.ts +130 -0
- package/src/supply-chain/blueprint-trust-git.js +1581 -0
- package/src/supply-chain/blueprint-trust-git.js.map +1 -0
- package/src/supply-chain/blueprint-trust-process.d.ts +4 -0
- package/src/supply-chain/blueprint-trust-process.js +88 -0
- package/src/supply-chain/blueprint-trust-process.js.map +1 -0
- package/src/supply-chain/blueprint-trust.d.ts +354 -0
- package/src/supply-chain/blueprint-trust.js +1558 -0
- package/src/supply-chain/blueprint-trust.js.map +1 -0
- package/src/supply-chain/blueprint-verification-authority.d.ts +62 -0
- package/src/supply-chain/blueprint-verification-authority.js +588 -0
- package/src/supply-chain/blueprint-verification-authority.js.map +1 -0
- package/src/supply-chain/blueprint-verification-execution.d.ts +68 -0
- package/src/supply-chain/blueprint-verification-execution.js +624 -0
- package/src/supply-chain/blueprint-verification-execution.js.map +1 -0
- package/src/supply-chain/build-output.d.ts +35 -0
- package/src/supply-chain/build-output.js +398 -0
- package/src/supply-chain/build-output.js.map +1 -0
- package/src/supply-chain/common.d.ts +21 -0
- package/src/supply-chain/common.js +107 -0
- package/src/supply-chain/common.js.map +1 -0
- package/src/supply-chain/container-artifact-contract.d.ts +23 -0
- package/src/supply-chain/container-artifact-contract.js +208 -0
- package/src/supply-chain/container-artifact-contract.js.map +1 -0
- package/src/supply-chain/container-release.d.ts +119 -0
- package/src/supply-chain/container-release.js +496 -0
- package/src/supply-chain/container-release.js.map +1 -0
- package/src/supply-chain/ecr-applicability.d.ts +19 -0
- package/src/supply-chain/ecr-applicability.js +103 -0
- package/src/supply-chain/ecr-applicability.js.map +1 -0
- package/src/supply-chain/ecr-scanning.d.ts +83 -0
- package/src/supply-chain/ecr-scanning.js +321 -0
- package/src/supply-chain/ecr-scanning.js.map +1 -0
- package/src/supply-chain/ecs-deployed-image.d.ts +85 -0
- package/src/supply-chain/ecs-deployed-image.js +300 -0
- package/src/supply-chain/ecs-deployed-image.js.map +1 -0
- package/src/supply-chain/errors.d.ts +6 -0
- package/src/supply-chain/errors.js +15 -0
- package/src/supply-chain/errors.js.map +1 -0
- package/src/supply-chain/generated-blueprint-trust-command.d.ts +4 -0
- package/src/supply-chain/generated-blueprint-trust-command.js +1362 -0
- package/src/supply-chain/generated-blueprint-trust-command.js.map +1 -0
- package/src/supply-chain/generated-command.d.ts +1 -0
- package/src/supply-chain/generated-command.js +687 -0
- package/src/supply-chain/generated-command.js.map +1 -0
- package/src/supply-chain/generated-container-release-command.d.ts +16 -0
- package/src/supply-chain/generated-container-release-command.js +2087 -0
- package/src/supply-chain/generated-container-release-command.js.map +1 -0
- package/src/supply-chain/generated-ecr-collector-command.d.ts +21 -0
- package/src/supply-chain/generated-ecr-collector-command.js +1338 -0
- package/src/supply-chain/generated-ecr-collector-command.js.map +1 -0
- package/src/supply-chain/generated-files.d.ts +13 -0
- package/src/supply-chain/generated-files.js +401 -0
- package/src/supply-chain/generated-files.js.map +1 -0
- package/src/supply-chain/generated-scanner-command.d.ts +1 -0
- package/src/supply-chain/generated-scanner-command.js +718 -0
- package/src/supply-chain/generated-scanner-command.js.map +1 -0
- package/src/supply-chain/index.d.ts +28 -0
- package/src/supply-chain/index.js +35 -0
- package/src/supply-chain/index.js.map +1 -0
- package/src/supply-chain/inventory.d.ts +79 -0
- package/src/supply-chain/inventory.js +717 -0
- package/src/supply-chain/inventory.js.map +1 -0
- package/src/supply-chain/license-expression.d.ts +7 -0
- package/src/supply-chain/license-expression.js +128 -0
- package/src/supply-chain/license-expression.js.map +1 -0
- package/src/supply-chain/pnpm-toolchain-authority.d.ts +31 -0
- package/src/supply-chain/pnpm-toolchain-authority.js +316 -0
- package/src/supply-chain/pnpm-toolchain-authority.js.map +1 -0
- package/src/supply-chain/policy.d.ts +105 -0
- package/src/supply-chain/policy.js +301 -0
- package/src/supply-chain/policy.js.map +1 -0
- package/src/supply-chain/publication.d.ts +48 -0
- package/src/supply-chain/publication.js +85 -0
- package/src/supply-chain/publication.js.map +1 -0
- package/src/supply-chain/sbom.d.ts +228 -0
- package/src/supply-chain/sbom.js +826 -0
- package/src/supply-chain/sbom.js.map +1 -0
- package/src/supply-chain/scanner.d.ts +77 -0
- package/src/supply-chain/scanner.js +502 -0
- package/src/supply-chain/scanner.js.map +1 -0
- package/src/supply-chain/vendored-source.d.ts +95 -0
- package/src/supply-chain/vendored-source.js +315 -0
- package/src/supply-chain/vendored-source.js.map +1 -0
- package/src/testing-evidence/fixture-scope.d.ts +52 -0
- package/src/testing-evidence/fixture-scope.js +140 -0
- package/src/testing-evidence/fixture-scope.js.map +1 -0
- package/src/testing-evidence/index.d.ts +5 -0
- package/src/testing-evidence/index.js +9 -0
- package/src/testing-evidence/index.js.map +1 -0
- package/src/testing-evidence/quarantine.d.ts +48 -0
- package/src/testing-evidence/quarantine.js +253 -0
- package/src/testing-evidence/quarantine.js.map +1 -0
- package/src/testing-evidence/result.d.ts +108 -0
- package/src/testing-evidence/result.js +571 -0
- package/src/testing-evidence/result.js.map +1 -0
- package/src/testing-evidence/runner-adapter.d.ts +51 -0
- package/src/testing-evidence/runner-adapter.js +288 -0
- package/src/testing-evidence/runner-adapter.js.map +1 -0
- package/src/testing-evidence/sensitive-artifacts.d.ts +13 -0
- package/src/testing-evidence/sensitive-artifacts.js +93 -0
- package/src/testing-evidence/sensitive-artifacts.js.map +1 -0
- package/src/work-markers/work-markers.js +4 -3
- package/src/work-markers/work-markers.js.map +1 -1
- package/src/workload-roles/account-baseline.d.ts +132 -0
- package/src/workload-roles/account-baseline.js +743 -0
- package/src/workload-roles/account-baseline.js.map +1 -0
- package/src/workload-roles/authority.d.ts +38 -0
- package/src/workload-roles/authority.js +156 -0
- package/src/workload-roles/authority.js.map +1 -0
- package/src/workload-roles/aws-adapter.d.ts +99 -0
- package/src/workload-roles/aws-adapter.js +416 -0
- package/src/workload-roles/aws-adapter.js.map +1 -0
- package/src/workload-roles/aws-internal-handler.d.ts +27 -0
- package/src/workload-roles/aws-internal-handler.js +58 -0
- package/src/workload-roles/aws-internal-handler.js.map +1 -0
- package/src/workload-roles/aws-s3-state.d.ts +52 -0
- package/src/workload-roles/aws-s3-state.js +164 -0
- package/src/workload-roles/aws-s3-state.js.map +1 -0
- package/src/workload-roles/aws-sdk-control-plane.d.ts +12 -0
- package/src/workload-roles/aws-sdk-control-plane.js +291 -0
- package/src/workload-roles/aws-sdk-control-plane.js.map +1 -0
- package/src/workload-roles/boundary.d.ts +33 -0
- package/src/workload-roles/boundary.js +130 -0
- package/src/workload-roles/boundary.js.map +1 -0
- package/src/workload-roles/convergence.d.ts +66 -0
- package/src/workload-roles/convergence.js +186 -0
- package/src/workload-roles/convergence.js.map +1 -0
- package/src/workload-roles/effective-policy.d.ts +51 -0
- package/src/workload-roles/effective-policy.js +183 -0
- package/src/workload-roles/effective-policy.js.map +1 -0
- package/src/workload-roles/handler.d.ts +43 -0
- package/src/workload-roles/handler.js +130 -0
- package/src/workload-roles/handler.js.map +1 -0
- package/src/workload-roles/history.d.ts +47 -0
- package/src/workload-roles/history.js +324 -0
- package/src/workload-roles/history.js.map +1 -0
- package/src/workload-roles/index.d.ts +17 -0
- package/src/workload-roles/index.js +21 -0
- package/src/workload-roles/index.js.map +1 -0
- package/src/workload-roles/injection.d.ts +119 -0
- package/src/workload-roles/injection.js +495 -0
- package/src/workload-roles/injection.js.map +1 -0
- package/src/workload-roles/manifest.d.ts +54 -0
- package/src/workload-roles/manifest.js +343 -0
- package/src/workload-roles/manifest.js.map +1 -0
- package/src/workload-roles/provisioner.d.ts +70 -0
- package/src/workload-roles/provisioner.js +231 -0
- package/src/workload-roles/provisioner.js.map +1 -0
- package/src/workload-roles/registration.d.ts +101 -0
- package/src/workload-roles/registration.js +457 -0
- package/src/workload-roles/registration.js.map +1 -0
- package/src/workload-roles/stage-boundary.d.ts +31 -0
- package/src/workload-roles/stage-boundary.js +208 -0
- package/src/workload-roles/stage-boundary.js.map +1 -0
- package/src/workload-roles/standard-slice.d.ts +54 -0
- package/src/workload-roles/standard-slice.js +252 -0
- package/src/workload-roles/standard-slice.js.map +1 -0
- package/migrations/standard-pre-v1-to-v1.md +0 -11
- package/src/foundation/aurora-logical-database.d.ts +0 -76
- package/src/foundation/aurora-logical-database.js +0 -419
- package/src/foundation/aurora-logical-database.js.map +0 -1
package/NOTICE
CHANGED
|
@@ -3,3 +3,9 @@ Copyright 2026 Gupta-Leary Technology Consulting LLC
|
|
|
3
3
|
|
|
4
4
|
This product includes software developed by Gupta-Leary Technology Consulting
|
|
5
5
|
LLC and its contributors.
|
|
6
|
+
|
|
7
|
+
This repository contains selected SST v4.17.1 source files solely in
|
|
8
|
+
`tools/consumer-smoke/fixtures/sst-v4.17.1/` for offline compatibility
|
|
9
|
+
verification. SST is Copyright (c) 2024 SST and licensed under the MIT License;
|
|
10
|
+
see that directory's `LICENSE` and `PROVENANCE.json`. This test-only snapshot is
|
|
11
|
+
not included in the published Empire Builder Kit packages.
|
package/README.md
CHANGED
|
@@ -19,15 +19,125 @@ generated-file ownership, ownership-aware agent work-marker reporting and
|
|
|
19
19
|
protected-promotion enforcement, and Nx-wrapped SST lifecycle executors.
|
|
20
20
|
Consumers should never invoke SST lifecycle commands directly.
|
|
21
21
|
|
|
22
|
+
The workspace-pinned `ebk` binary is the single framework CLI. It owns local
|
|
23
|
+
development, bounded Developer-Agent inspection/planning, external Blueprint
|
|
24
|
+
receipt review, and the human-only personal secret ceremony. Nx remains the
|
|
25
|
+
workspace graph and owning-target authority behind generated work.
|
|
26
|
+
|
|
27
|
+
`ebk agent context --json` is the sole full structured context transport. The
|
|
28
|
+
generated root `developer-context` Nx target remains a read-only compatibility
|
|
29
|
+
and graph-authority route: human mode emits concise prose, while `--json`
|
|
30
|
+
emits only a deterministic, digest-bound fingerprint of the fully validated
|
|
31
|
+
canonical context. This keeps Nx task output bounded even when a valid context
|
|
32
|
+
is larger than its task-output transport ceiling.
|
|
33
|
+
|
|
34
|
+
External Blueprint receipt review has one public entry:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
ebk blueprint verification-review
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
`ebk` must resolve to this workspace's installed launcher. Use
|
|
41
|
+
`./node_modules/.bin/ebk` on POSIX or `node_modules\.bin\ebk.cmd` on Windows
|
|
42
|
+
when it is not already on `PATH`; receipt review refuses `pnpm exec` and `npx`.
|
|
43
|
+
|
|
44
|
+
The installed dependency-light launcher enters a clean Node child before
|
|
45
|
+
loading receipt authority. No generated Nx receipt target exists. The command
|
|
46
|
+
requires an exact protected commit retaining the static approval, runs the
|
|
47
|
+
closed approved roots directly, and leaves receipts for a separate protected
|
|
48
|
+
retention commit.
|
|
49
|
+
Receipt retention is create-only, and the command refuses before root execution
|
|
50
|
+
if any canonical path in the complete receipt set already exists.
|
|
51
|
+
Reauthorization requires a protected successor deleting that complete stale
|
|
52
|
+
set, the installed CLI minting replacements from the exact clean protected tip,
|
|
53
|
+
and a separate later protected commit retaining the replacement receipts.
|
|
54
|
+
External verification targets use the structured, no-shell
|
|
55
|
+
`@empire-builder-kit/nx:blueprint-verification` executor. Receipt review and
|
|
56
|
+
direct Nx execution share its private runner; review additionally binds the
|
|
57
|
+
protected tree and writes the receipt. Developer-Agent inspection exposes a
|
|
58
|
+
recurring target only after retention and after recomputing its portable
|
|
59
|
+
package authority from the protected target, manifests, and lockfile. Exact
|
|
60
|
+
Node declarations and the full lockfile digest are receipt-bound as well. A
|
|
61
|
+
human may invoke the structured Nx target without a receipt. Neither path is
|
|
62
|
+
cryptographic or hosted attestation.
|
|
63
|
+
|
|
64
|
+
The external manifest's sole recurring root is named exactly `verify`.
|
|
65
|
+
Generated project configurations are whole-file managed, canonically rooted
|
|
66
|
+
at their Slice-relative locations, and exactly enumerated by the generator
|
|
67
|
+
result. Agent inspection classifies every graph project beneath a current or
|
|
68
|
+
historically external Slice ownership root as external without trusting tags
|
|
69
|
+
or that publisher-authored inventory; historical roots and identities remain
|
|
70
|
+
external after deletion or relabeling. Only the protected-reviewed chain is
|
|
71
|
+
exposed. Read-only fleet status and logs remain available, but agent planning
|
|
72
|
+
withholds local lifecycle operations for external Slices in v1.
|
|
73
|
+
|
|
74
|
+
Independently of Blueprint provenance, Developer-Agent inspection performs a
|
|
75
|
+
bounded repository-wide Nx-configuration preflight before graph loading. Each
|
|
76
|
+
`project.json` must declare its exact containing root, declared project names
|
|
77
|
+
cannot cross roots, and package-level `nx` configuration is confined to its own
|
|
78
|
+
root. External Blueprint output cannot declare package-level `nx`. An unowned
|
|
79
|
+
configuration file therefore cannot redirect its root or identity into a
|
|
80
|
+
managed project and borrow a reviewed signature. This does not prohibit every
|
|
81
|
+
plugin or `targetDefaults` edit in a built-in-only workspace; the stricter Nx
|
|
82
|
+
authority boundary below applies once external ownership exists, existed in
|
|
83
|
+
the inspected history, or cannot be proved absent.
|
|
84
|
+
|
|
85
|
+
External-Blueprint inspection and recurring execution require the non-daemon
|
|
86
|
+
local-default Nx runner (`neverConnectToCloud: true`,
|
|
87
|
+
`useDaemonProcess: false`) and refuse ambient daemon activation, a local
|
|
88
|
+
`.nx/installation`, plugins, custom runners, global synchronization, extension,
|
|
89
|
+
and cloud authority. That pre-graph restriction becomes permanent when
|
|
90
|
+
external ownership appears currently or anywhere in the bounded first-parent
|
|
91
|
+
histories of HEAD, protected develop, or protected main; mutable
|
|
92
|
+
`nx.json.defaultBase` cannot redirect the inventory. A missing protected ref
|
|
93
|
+
makes the inventory incomplete and activates the same strict boundary; a
|
|
94
|
+
shallow clone does likewise because hidden history cannot prove absence. While
|
|
95
|
+
that inventory is incomplete, every graph project under `packages/` except the
|
|
96
|
+
sole canonical `foundation` project at `packages/foundation` is treated as
|
|
97
|
+
externally owned. The Foundation tag cannot create that exception: its project
|
|
98
|
+
name, declared root, and canonical directory are checked together. Read-only
|
|
99
|
+
discovery and logs remain available, but agent-planned lifecycle authority is
|
|
100
|
+
withheld until protected history is complete. Every recurring target snapshots
|
|
101
|
+
its exact workspace and
|
|
102
|
+
configuration authority at entry and fails after the child if it changed, so
|
|
103
|
+
Nx cannot continue the approved dependency chain. The executor reports but
|
|
104
|
+
does not roll back such writes; same-UID mutation after a bounded check remains
|
|
105
|
+
outside the local-evidence claim. That includes mutation between the
|
|
106
|
+
repository-wide configuration inventory and Nx graph loading; the preflight is
|
|
107
|
+
not an immutable repository snapshot.
|
|
108
|
+
|
|
109
|
+
The human-only personal secret commands are:
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
ebk secret set <slice> <logical-name>
|
|
113
|
+
ebk secret remove <slice> <logical-name>
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
These commands derive the personal stage, use the profile and Region saved by
|
|
117
|
+
`ebk dev configure`, verify the development Foundation account, and accept
|
|
118
|
+
values only from a hidden local TTY. Agents and CI must never invoke them.
|
|
119
|
+
|
|
22
120
|
Generated workspaces expose `work-markers` as both a direct target and part of
|
|
23
121
|
workspace health. The generated `AGENTS.md`, `CLAUDE.md`, and runbook define how
|
|
24
122
|
deterministic generators and updates can hand contextual work to agents without
|
|
25
123
|
placing markers in managed output. The public `formatWorkMarkerComment` helper
|
|
26
124
|
keeps Blueprint and repository-update handoffs on the same canonical syntax.
|
|
27
125
|
|
|
28
|
-
External Blueprints must be exact-version packages allowed by
|
|
29
|
-
|
|
30
|
-
|
|
126
|
+
External Blueprints must be exact-version packages allowed by protected trust
|
|
127
|
+
history. Publisher generators run in the framework's digest-pinned,
|
|
128
|
+
no-network Linux container with only a private read-only package closure
|
|
129
|
+
mounted; the adopter workspace, Git metadata, host credentials, and Docker
|
|
130
|
+
socket are absent. An explicitly mapped local publisher root may lack registry
|
|
131
|
+
SRI, but each dependency must still resolve from the canonical pnpm virtual
|
|
132
|
+
store with exact lockfile registry integrity; sibling, `file:`, `link:`, and
|
|
133
|
+
other workspace dependency closure is refused. Returned bytes remain untrusted.
|
|
134
|
+
Local receipt evidence
|
|
135
|
+
still has an explicit same-user Node/Git/installed-package boundary. The
|
|
136
|
+
installed shim and initial interpreter run before the controlled child and may
|
|
137
|
+
resolve through ambient `PATH`; neither the shim nor the resulting local receipt
|
|
138
|
+
is host attestation. Fixed child markers and the stdin entry prevent accidental
|
|
139
|
+
alternate routes but do not authenticate the same UID, which can reproduce
|
|
140
|
+
them and invoke internal source manually.
|
|
31
141
|
|
|
32
142
|
See the [architecture](../../docs/architecture.md),
|
|
33
143
|
[Foundation contract](../../docs/foundation.md), and
|
package/executors.json
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"executors": {
|
|
3
|
+
"blueprint-trust": {
|
|
4
|
+
"implementation": "./src/executors/blueprint-trust/blueprint-trust",
|
|
5
|
+
"schema": "./src/executors/blueprint-trust/schema.json",
|
|
6
|
+
"description": "Invoke Blueprint trust checks without a shell or inherited executable-loader configuration."
|
|
7
|
+
},
|
|
8
|
+
"blueprint-verification": {
|
|
9
|
+
"implementation": "./src/executors/blueprint-verification/blueprint-verification",
|
|
10
|
+
"schema": "./src/executors/blueprint-verification/schema.json",
|
|
11
|
+
"description": "Execute structured external Blueprint verification without a shell or bare executable lookup."
|
|
12
|
+
},
|
|
13
|
+
"developer-context": {
|
|
14
|
+
"implementation": "./src/executors/developer-context/developer-context",
|
|
15
|
+
"schema": "./src/executors/developer-context/schema.json",
|
|
16
|
+
"description": "Inspect Developer-Agent repository context without mutation and emit human output or a bounded canonical-context fingerprint."
|
|
17
|
+
},
|
|
3
18
|
"fleet": {
|
|
4
19
|
"implementation": "./src/executors/fleet/fleet",
|
|
5
20
|
"schema": "./src/executors/fleet/schema.json",
|
|
@@ -20,6 +35,11 @@
|
|
|
20
35
|
"schema": "./src/executors/deployment-plan/schema.json",
|
|
21
36
|
"description": "Atomically validate and select the complete protected deployment set before AWS access."
|
|
22
37
|
},
|
|
38
|
+
"infrastructure-plan": {
|
|
39
|
+
"implementation": "./src/executors/infrastructure-plan/infrastructure-plan",
|
|
40
|
+
"schema": "./src/executors/infrastructure-plan/schema.json",
|
|
41
|
+
"description": "Run a pinned SST resource diff and fail closed on unapproved, stale, locked, drifted, or unknown protected plans."
|
|
42
|
+
},
|
|
23
43
|
"work-markers": {
|
|
24
44
|
"implementation": "./src/executors/work-markers/work-markers",
|
|
25
45
|
"schema": "./src/executors/work-markers/schema.json",
|
|
@@ -45,6 +65,16 @@
|
|
|
45
65
|
"schema": "./src/executors/foundation-remove-preflight/schema.json",
|
|
46
66
|
"description": "Block Foundation removal while Product Slice registrations remain."
|
|
47
67
|
},
|
|
68
|
+
"secret-metadata": {
|
|
69
|
+
"implementation": "./src/executors/secret-metadata/secret-metadata",
|
|
70
|
+
"schema": "./src/executors/secret-metadata/schema.json",
|
|
71
|
+
"description": "Report or explicitly apply value-blind operator-secret container metadata for one Product Slice."
|
|
72
|
+
},
|
|
73
|
+
"secret-guardrails": {
|
|
74
|
+
"implementation": "./src/executors/secret-guardrails/secret-guardrails",
|
|
75
|
+
"schema": "./src/executors/secret-guardrails/schema.json",
|
|
76
|
+
"description": "Reject client, environment, direct SST, fallback, placeholder, and generated-output secret paths in one Product Slice."
|
|
77
|
+
},
|
|
48
78
|
"deploy": {
|
|
49
79
|
"implementation": "./src/executors/deploy/deploy",
|
|
50
80
|
"schema": "./src/executors/sst-lifecycle/schema.json",
|
package/package.json
CHANGED
|
@@ -1,9 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@empire-builder-kit/nx",
|
|
3
|
-
"version": "1.0.0-
|
|
3
|
+
"version": "1.0.0-rc.2",
|
|
4
4
|
"description": "Nx generators, executors, and Blueprint contracts for Empire Builder Kit",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"aws",
|
|
7
|
+
"nx",
|
|
8
|
+
"nx-plugin",
|
|
9
|
+
"sst",
|
|
10
|
+
"typescript",
|
|
11
|
+
"generators",
|
|
12
|
+
"executors",
|
|
13
|
+
"blueprints",
|
|
14
|
+
"infrastructure"
|
|
15
|
+
],
|
|
16
|
+
"author": "Gupta-Leary Technology Consulting LLC",
|
|
5
17
|
"license": "Apache-2.0",
|
|
6
18
|
"type": "commonjs",
|
|
19
|
+
"bin": {
|
|
20
|
+
"ebk": "./src/cli/bootstrap.js"
|
|
21
|
+
},
|
|
7
22
|
"main": "./src/index.js",
|
|
8
23
|
"types": "./src/index.d.ts",
|
|
9
24
|
"exports": {
|
|
@@ -16,14 +31,38 @@
|
|
|
16
31
|
"types": "./src/blueprints/index.d.ts",
|
|
17
32
|
"default": "./src/blueprints/index.js"
|
|
18
33
|
},
|
|
34
|
+
"./api-contract": {
|
|
35
|
+
"types": "./src/api-contract/index.d.ts",
|
|
36
|
+
"default": "./src/api-contract/index.js"
|
|
37
|
+
},
|
|
38
|
+
"./authorization": {
|
|
39
|
+
"types": "./src/authorization/index.d.ts",
|
|
40
|
+
"default": "./src/authorization/index.js"
|
|
41
|
+
},
|
|
42
|
+
"./database-retirement": {
|
|
43
|
+
"types": "./src/database-retirement/index.d.ts",
|
|
44
|
+
"default": "./src/database-retirement/index.js"
|
|
45
|
+
},
|
|
46
|
+
"./data-lifecycle": {
|
|
47
|
+
"types": "./src/data-lifecycle/index.d.ts",
|
|
48
|
+
"default": "./src/data-lifecycle/index.js"
|
|
49
|
+
},
|
|
19
50
|
"./foundation": {
|
|
20
51
|
"types": "./src/foundation/index.d.ts",
|
|
21
52
|
"default": "./src/foundation/index.js"
|
|
22
53
|
},
|
|
54
|
+
"./frontend-security": {
|
|
55
|
+
"types": "./src/frontend-security/index.d.ts",
|
|
56
|
+
"default": "./src/frontend-security/index.js"
|
|
57
|
+
},
|
|
23
58
|
"./git-policy": {
|
|
24
59
|
"types": "./src/git-policy/index.d.ts",
|
|
25
60
|
"default": "./src/git-policy/index.js"
|
|
26
61
|
},
|
|
62
|
+
"./infrastructure-change": {
|
|
63
|
+
"types": "./src/infrastructure-change/index.d.ts",
|
|
64
|
+
"default": "./src/infrastructure-change/index.js"
|
|
65
|
+
},
|
|
27
66
|
"./local-dev": {
|
|
28
67
|
"types": "./src/local-dev/index.d.ts",
|
|
29
68
|
"default": "./src/local-dev/index.js"
|
|
@@ -32,20 +71,52 @@
|
|
|
32
71
|
"types": "./src/ownership/index.d.ts",
|
|
33
72
|
"default": "./src/ownership/index.js"
|
|
34
73
|
},
|
|
74
|
+
"./performance": {
|
|
75
|
+
"types": "./src/performance/index.d.ts",
|
|
76
|
+
"default": "./src/performance/index.js"
|
|
77
|
+
},
|
|
35
78
|
"./repository-policy": {
|
|
36
79
|
"types": "./src/repository-policy/index.d.ts",
|
|
37
80
|
"default": "./src/repository-policy/index.js"
|
|
38
81
|
},
|
|
82
|
+
"./release": {
|
|
83
|
+
"types": "./src/release/index.d.ts",
|
|
84
|
+
"default": "./src/release/index.js"
|
|
85
|
+
},
|
|
86
|
+
"./secrets": {
|
|
87
|
+
"types": "./src/secrets/index.d.ts",
|
|
88
|
+
"default": "./src/secrets/index.js"
|
|
89
|
+
},
|
|
90
|
+
"./supply-chain": {
|
|
91
|
+
"types": "./src/supply-chain/index.d.ts",
|
|
92
|
+
"default": "./src/supply-chain/index.js"
|
|
93
|
+
},
|
|
94
|
+
"./testing-evidence": {
|
|
95
|
+
"types": "./src/testing-evidence/index.d.ts",
|
|
96
|
+
"default": "./src/testing-evidence/index.js"
|
|
97
|
+
},
|
|
39
98
|
"./work-markers": {
|
|
40
99
|
"types": "./src/work-markers/index.d.ts",
|
|
41
100
|
"default": "./src/work-markers/index.js"
|
|
42
101
|
},
|
|
102
|
+
"./workload-roles": {
|
|
103
|
+
"types": "./src/workload-roles/index.d.ts",
|
|
104
|
+
"default": "./src/workload-roles/index.js"
|
|
105
|
+
},
|
|
43
106
|
"./schemas/blueprint-v1.json": "./src/schemas/blueprint-v1.json",
|
|
107
|
+
"./schemas/aggregate-count-evidence-v1.json": "./src/schemas/aggregate-count-evidence-v1.json",
|
|
44
108
|
"./schemas/blueprint-input-schema-v1.json": "./src/schemas/blueprint-input-schema-v1.json",
|
|
109
|
+
"./schemas/api-contract-baseline-v1.json": "./src/schemas/api-contract-baseline-v1.json",
|
|
110
|
+
"./schemas/api-contract-compatibility-report-v1.json": "./src/schemas/api-contract-compatibility-report-v1.json",
|
|
111
|
+
"./schemas/aws-billing-actual-evidence-v1.json": "./src/schemas/aws-billing-actual-evidence-v1.json",
|
|
112
|
+
"./schemas/data-lifecycle-policy-v1.json": "./src/schemas/data-lifecycle-policy-v1.json",
|
|
45
113
|
"./schemas/foundation-requirement-v1.json": "./src/schemas/foundation-requirement-v1.json",
|
|
46
114
|
"./schemas/foundation-ownership-v2.json": "./src/schemas/foundation-ownership-v2.json",
|
|
47
115
|
"./schemas/generated-ownership-v2.json": "./src/schemas/generated-ownership-v2.json",
|
|
116
|
+
"./schemas/performance-policy-v1.json": "./src/schemas/performance-policy-v1.json",
|
|
48
117
|
"./schemas/repository-policy-v1.json": "./src/schemas/repository-policy-v1.json",
|
|
118
|
+
"./schemas/testing-evidence-result-v1.json": "./src/schemas/testing-evidence-result-v1.json",
|
|
119
|
+
"./schemas/testing-evidence-quarantine-v1.json": "./src/schemas/testing-evidence-quarantine-v1.json",
|
|
49
120
|
"./schemas/workspace-ownership-v2.json": "./src/schemas/workspace-ownership-v2.json"
|
|
50
121
|
},
|
|
51
122
|
"generators": "./generators.json",
|
|
@@ -55,15 +126,21 @@
|
|
|
55
126
|
"provenance": false
|
|
56
127
|
},
|
|
57
128
|
"dependencies": {
|
|
129
|
+
"@empire-builder-kit/runtime": "1.0.0-rc.2",
|
|
130
|
+
"@aws-sdk/client-cloudwatch-logs": "^3.700.0",
|
|
131
|
+
"@aws-sdk/client-iam": "^3.700.0",
|
|
58
132
|
"@nx/devkit": "23.1.0",
|
|
59
133
|
"@aws-sdk/client-rds": "^3.700.0",
|
|
60
|
-
"@aws-sdk/client-
|
|
134
|
+
"@aws-sdk/client-s3": "^3.700.0",
|
|
135
|
+
"@aws-sdk/client-secrets-manager": "^3.700.0",
|
|
61
136
|
"@aws-sdk/client-ssm": "^3.700.0",
|
|
137
|
+
"@aws-sdk/client-sts": "^3.700.0",
|
|
62
138
|
"@aws-sdk/credential-providers": "^3.700.0",
|
|
63
|
-
"ajv": "8.
|
|
139
|
+
"ajv": "8.20.0",
|
|
64
140
|
"prettier": "^3.8.2",
|
|
65
141
|
"semver": "7.7.4",
|
|
66
|
-
"tslib": "^2.3.0"
|
|
142
|
+
"tslib": "^2.3.0",
|
|
143
|
+
"yaml": "2.9.0"
|
|
67
144
|
},
|
|
68
145
|
"repository": {
|
|
69
146
|
"type": "git",
|
|
@@ -76,5 +153,6 @@
|
|
|
76
153
|
"homepage": "https://github.com/empire-builder-kit/empire-builder-kit#readme",
|
|
77
154
|
"engines": {
|
|
78
155
|
"node": ">=22.12.0"
|
|
79
|
-
}
|
|
80
|
-
|
|
156
|
+
},
|
|
157
|
+
"gitHead": "daa31d9fc11699516d1a85072ca46548cd929e50"
|
|
158
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { type ApiContractCompatibilityClassification, type ApiContractCompatibilityReportV1 } from './compatibility.js';
|
|
2
|
+
import { type ApiContractBaselineV1 } from './model.js';
|
|
3
|
+
export declare const API_CONTRACT_BASELINE_UPDATE_PLAN_SCHEMA_VERSION: 1;
|
|
4
|
+
export declare const API_CONTRACT_BASELINE_UPDATE_PLAN_KIND: "api-contract-baseline-update-plan";
|
|
5
|
+
export declare const API_CONTRACT_BASELINE_UPDATE_AUTHORIZATION_SCHEMA_VERSION: 1;
|
|
6
|
+
export declare const API_CONTRACT_BASELINE_UPDATE_AUTHORIZATION_KIND: "api-contract-baseline-update-authorization";
|
|
7
|
+
export declare const API_CONTRACT_BASELINE_UPDATE_DISPOSITIONS: readonly ["no-change", "compatible-update", "semantic-review-required", "breaking-migration-required"];
|
|
8
|
+
export type ApiContractBaselineUpdateDisposition = (typeof API_CONTRACT_BASELINE_UPDATE_DISPOSITIONS)[number];
|
|
9
|
+
export interface ApiContractBaselineUpdatePlanV1 {
|
|
10
|
+
baseline: {
|
|
11
|
+
baseline: ApiContractBaselineV1;
|
|
12
|
+
digest: string;
|
|
13
|
+
version: string;
|
|
14
|
+
};
|
|
15
|
+
candidate: {
|
|
16
|
+
baseline: ApiContractBaselineV1;
|
|
17
|
+
digest: string;
|
|
18
|
+
json: string;
|
|
19
|
+
version: string;
|
|
20
|
+
};
|
|
21
|
+
comparison: ApiContractCompatibilityReportV1;
|
|
22
|
+
disposition: ApiContractBaselineUpdateDisposition;
|
|
23
|
+
explicitAcceptanceRequired: boolean;
|
|
24
|
+
kind: typeof API_CONTRACT_BASELINE_UPDATE_PLAN_KIND;
|
|
25
|
+
schemaVersion: typeof API_CONTRACT_BASELINE_UPDATE_PLAN_SCHEMA_VERSION;
|
|
26
|
+
writesBaseline: false;
|
|
27
|
+
}
|
|
28
|
+
interface ApiContractBaselineUpdateApprovalBase {
|
|
29
|
+
acceptedClassification: ApiContractCompatibilityClassification;
|
|
30
|
+
candidateDigest: string;
|
|
31
|
+
reason: string;
|
|
32
|
+
}
|
|
33
|
+
export interface ApiContractBaselineEvidenceReferenceV1 {
|
|
34
|
+
digest: string;
|
|
35
|
+
name: string;
|
|
36
|
+
}
|
|
37
|
+
export interface ApiContractBaselineRolloutPlanReferenceV1 {
|
|
38
|
+
digest: string;
|
|
39
|
+
identity: string;
|
|
40
|
+
}
|
|
41
|
+
export type ApiContractBaselineUpdateApproval = (ApiContractBaselineUpdateApprovalBase & {
|
|
42
|
+
acceptedClassification: 'compatible';
|
|
43
|
+
}) | (ApiContractBaselineUpdateApprovalBase & {
|
|
44
|
+
acceptedClassification: 'conditionally-compatible';
|
|
45
|
+
semanticReviewEvidence: readonly ApiContractBaselineEvidenceReferenceV1[];
|
|
46
|
+
}) | (ApiContractBaselineUpdateApprovalBase & {
|
|
47
|
+
acceptedClassification: 'breaking';
|
|
48
|
+
consumerEvidence: readonly ApiContractBaselineEvidenceReferenceV1[];
|
|
49
|
+
rolloutEvidence: readonly ApiContractBaselineEvidenceReferenceV1[];
|
|
50
|
+
rolloutPlan: ApiContractBaselineRolloutPlanReferenceV1;
|
|
51
|
+
});
|
|
52
|
+
export interface ApiContractBaselineUpdateAuthorizationV1 {
|
|
53
|
+
acceptedClassification: ApiContractCompatibilityClassification;
|
|
54
|
+
baselineDigest: string;
|
|
55
|
+
candidateDigest: string;
|
|
56
|
+
candidateJson: string;
|
|
57
|
+
consumerEvidence?: readonly ApiContractBaselineEvidenceReferenceV1[];
|
|
58
|
+
kind: typeof API_CONTRACT_BASELINE_UPDATE_AUTHORIZATION_KIND;
|
|
59
|
+
reason: string;
|
|
60
|
+
rolloutEvidence?: readonly ApiContractBaselineEvidenceReferenceV1[];
|
|
61
|
+
rolloutPlan?: ApiContractBaselineRolloutPlanReferenceV1;
|
|
62
|
+
schemaVersion: typeof API_CONTRACT_BASELINE_UPDATE_AUTHORIZATION_SCHEMA_VERSION;
|
|
63
|
+
semanticReviewEvidence?: readonly ApiContractBaselineEvidenceReferenceV1[];
|
|
64
|
+
}
|
|
65
|
+
export type ApiContractBaselineUpdateFailureClassification = 'api-contract-baseline-update-not-required' | 'api-contract-baseline-update-approval-invalid' | 'api-contract-baseline-update-version-invalid';
|
|
66
|
+
export declare class ApiContractBaselineUpdateError extends Error {
|
|
67
|
+
readonly classification: ApiContractBaselineUpdateFailureClassification;
|
|
68
|
+
readonly pointer: string;
|
|
69
|
+
constructor(classification: ApiContractBaselineUpdateFailureClassification, pointer: string, message: string);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Produces a review artifact only. It never writes or mutates the accepted
|
|
73
|
+
* baseline, even for a compatible candidate.
|
|
74
|
+
*/
|
|
75
|
+
export declare function planApiContractBaselineUpdate(baselineInput: unknown, candidateInput: unknown): ApiContractBaselineUpdatePlanV1;
|
|
76
|
+
/**
|
|
77
|
+
* Pins a human/agent approval to the exact candidate and classification. The
|
|
78
|
+
* result is still data for a caller-controlled write; this function performs
|
|
79
|
+
* no filesystem mutation.
|
|
80
|
+
*/
|
|
81
|
+
export declare function authorizeApiContractBaselineUpdate(plan: ApiContractBaselineUpdatePlanV1, approval: ApiContractBaselineUpdateApproval): ApiContractBaselineUpdateAuthorizationV1;
|
|
82
|
+
export {};
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiContractBaselineUpdateError = exports.API_CONTRACT_BASELINE_UPDATE_DISPOSITIONS = exports.API_CONTRACT_BASELINE_UPDATE_AUTHORIZATION_KIND = exports.API_CONTRACT_BASELINE_UPDATE_AUTHORIZATION_SCHEMA_VERSION = exports.API_CONTRACT_BASELINE_UPDATE_PLAN_KIND = exports.API_CONTRACT_BASELINE_UPDATE_PLAN_SCHEMA_VERSION = void 0;
|
|
4
|
+
exports.planApiContractBaselineUpdate = planApiContractBaselineUpdate;
|
|
5
|
+
exports.authorizeApiContractBaselineUpdate = authorizeApiContractBaselineUpdate;
|
|
6
|
+
const compatibility_js_1 = require("./compatibility.js");
|
|
7
|
+
const model_js_1 = require("./model.js");
|
|
8
|
+
exports.API_CONTRACT_BASELINE_UPDATE_PLAN_SCHEMA_VERSION = 1;
|
|
9
|
+
exports.API_CONTRACT_BASELINE_UPDATE_PLAN_KIND = 'api-contract-baseline-update-plan';
|
|
10
|
+
exports.API_CONTRACT_BASELINE_UPDATE_AUTHORIZATION_SCHEMA_VERSION = 1;
|
|
11
|
+
exports.API_CONTRACT_BASELINE_UPDATE_AUTHORIZATION_KIND = 'api-contract-baseline-update-authorization';
|
|
12
|
+
exports.API_CONTRACT_BASELINE_UPDATE_DISPOSITIONS = [
|
|
13
|
+
'no-change',
|
|
14
|
+
'compatible-update',
|
|
15
|
+
'semantic-review-required',
|
|
16
|
+
'breaking-migration-required',
|
|
17
|
+
];
|
|
18
|
+
function compareStrings(left, right) {
|
|
19
|
+
return left < right ? -1 : left > right ? 1 : 0;
|
|
20
|
+
}
|
|
21
|
+
class ApiContractBaselineUpdateError extends Error {
|
|
22
|
+
classification;
|
|
23
|
+
pointer;
|
|
24
|
+
constructor(classification, pointer, message) {
|
|
25
|
+
super(`${pointer}: ${message}`);
|
|
26
|
+
this.classification = classification;
|
|
27
|
+
this.pointer = pointer;
|
|
28
|
+
this.name = 'ApiContractBaselineUpdateError';
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.ApiContractBaselineUpdateError = ApiContractBaselineUpdateError;
|
|
32
|
+
const EVIDENCE_DIGEST_PATTERN = /^sha256:[a-f0-9]{64}$/;
|
|
33
|
+
const EVIDENCE_NAME_PATTERN = /^[A-Za-z0-9@][A-Za-z0-9._:@/-]{0,255}$/;
|
|
34
|
+
function approvalError(pointer, message) {
|
|
35
|
+
throw new ApiContractBaselineUpdateError('api-contract-baseline-update-approval-invalid', pointer, message);
|
|
36
|
+
}
|
|
37
|
+
function semanticVersionParts(value) {
|
|
38
|
+
const [major = '0', minor = '0', patch = '0'] = value.split('.');
|
|
39
|
+
return [BigInt(major), BigInt(minor), BigInt(patch)];
|
|
40
|
+
}
|
|
41
|
+
function compareSemanticVersions(left, right) {
|
|
42
|
+
const leftParts = semanticVersionParts(left);
|
|
43
|
+
const rightParts = semanticVersionParts(right);
|
|
44
|
+
for (let index = 0; index < leftParts.length; index += 1) {
|
|
45
|
+
const leftPart = leftParts[index];
|
|
46
|
+
const rightPart = rightParts[index];
|
|
47
|
+
if (leftPart !== rightPart)
|
|
48
|
+
return leftPart < rightPart ? -1 : 1;
|
|
49
|
+
}
|
|
50
|
+
return 0;
|
|
51
|
+
}
|
|
52
|
+
function requireVersionTransition(baseline, candidate, comparison) {
|
|
53
|
+
if (comparison.baseline.digest === comparison.candidate.digest)
|
|
54
|
+
return;
|
|
55
|
+
if (compareSemanticVersions(candidate.version, baseline.version) <= 0) {
|
|
56
|
+
throw new ApiContractBaselineUpdateError('api-contract-baseline-update-version-invalid', '/candidate/version', 'changed contract content requires a strictly advanced version');
|
|
57
|
+
}
|
|
58
|
+
if (comparison.classification === 'breaking' &&
|
|
59
|
+
semanticVersionParts(candidate.version)[0] <=
|
|
60
|
+
semanticVersionParts(baseline.version)[0]) {
|
|
61
|
+
throw new ApiContractBaselineUpdateError('api-contract-baseline-update-version-invalid', '/candidate/version', 'breaking contract content requires an advanced major version');
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
function normalizeEvidenceReferences(value, pointer) {
|
|
65
|
+
if (!Array.isArray(value) || value.length === 0 || value.length > 64) {
|
|
66
|
+
approvalError(pointer, 'must contain from 1 through 64 evidence references');
|
|
67
|
+
}
|
|
68
|
+
const references = value.map((entry, index) => {
|
|
69
|
+
const entryPointer = `${pointer}/${index}`;
|
|
70
|
+
if (!entry || typeof entry !== 'object' || Array.isArray(entry)) {
|
|
71
|
+
approvalError(entryPointer, 'must be an evidence reference object');
|
|
72
|
+
}
|
|
73
|
+
const input = entry;
|
|
74
|
+
if (Object.keys(input).some((key) => !['digest', 'name'].includes(key)) ||
|
|
75
|
+
!EVIDENCE_DIGEST_PATTERN.test(input.digest) ||
|
|
76
|
+
!EVIDENCE_NAME_PATTERN.test(input.name)) {
|
|
77
|
+
approvalError(entryPointer, 'must contain only an exact SHA-256 digest and bounded evidence name');
|
|
78
|
+
}
|
|
79
|
+
return {
|
|
80
|
+
digest: input.digest,
|
|
81
|
+
name: input.name,
|
|
82
|
+
};
|
|
83
|
+
});
|
|
84
|
+
const identities = references.map(({ digest, name }) => `${name}\0${digest}`);
|
|
85
|
+
if (new Set(identities).size !== identities.length) {
|
|
86
|
+
approvalError(pointer, 'must not repeat an evidence reference');
|
|
87
|
+
}
|
|
88
|
+
return references.sort((left, right) => compareStrings(left.name, right.name) ||
|
|
89
|
+
compareStrings(left.digest, right.digest));
|
|
90
|
+
}
|
|
91
|
+
function normalizeRolloutPlanReference(value) {
|
|
92
|
+
if (!value || typeof value !== 'object' || Array.isArray(value)) {
|
|
93
|
+
approvalError('/rolloutPlan', 'must be an exact rollout-plan reference');
|
|
94
|
+
}
|
|
95
|
+
const input = value;
|
|
96
|
+
if (Object.keys(input).some((key) => !['digest', 'identity'].includes(key)) ||
|
|
97
|
+
!EVIDENCE_DIGEST_PATTERN.test(input.digest) ||
|
|
98
|
+
!EVIDENCE_NAME_PATTERN.test(input.identity)) {
|
|
99
|
+
approvalError('/rolloutPlan', 'must contain only a bounded identity and exact SHA-256 digest');
|
|
100
|
+
}
|
|
101
|
+
return {
|
|
102
|
+
digest: input.digest,
|
|
103
|
+
identity: input.identity,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
function dispositionFor(comparison) {
|
|
107
|
+
if (comparison.baseline.digest === comparison.candidate.digest) {
|
|
108
|
+
return 'no-change';
|
|
109
|
+
}
|
|
110
|
+
if (comparison.classification === 'breaking') {
|
|
111
|
+
return 'breaking-migration-required';
|
|
112
|
+
}
|
|
113
|
+
if (comparison.classification === 'conditionally-compatible') {
|
|
114
|
+
return 'semantic-review-required';
|
|
115
|
+
}
|
|
116
|
+
return 'compatible-update';
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Produces a review artifact only. It never writes or mutates the accepted
|
|
120
|
+
* baseline, even for a compatible candidate.
|
|
121
|
+
*/
|
|
122
|
+
function planApiContractBaselineUpdate(baselineInput, candidateInput) {
|
|
123
|
+
const baseline = (0, model_js_1.normalizeApiContractBaseline)(baselineInput);
|
|
124
|
+
const candidate = (0, model_js_1.createApiContractBaseline)(candidateInput);
|
|
125
|
+
const comparison = (0, compatibility_js_1.compareApiContracts)(baseline, candidate);
|
|
126
|
+
requireVersionTransition(baseline, candidate, comparison);
|
|
127
|
+
const disposition = dispositionFor(comparison);
|
|
128
|
+
return {
|
|
129
|
+
baseline: {
|
|
130
|
+
baseline,
|
|
131
|
+
digest: (0, model_js_1.digestApiContractBaseline)(baseline),
|
|
132
|
+
version: baseline.version,
|
|
133
|
+
},
|
|
134
|
+
candidate: {
|
|
135
|
+
baseline: candidate,
|
|
136
|
+
digest: (0, model_js_1.digestApiContractBaseline)(candidate),
|
|
137
|
+
json: (0, model_js_1.canonicalApiContractBaselineJson)(candidate),
|
|
138
|
+
version: candidate.version,
|
|
139
|
+
},
|
|
140
|
+
comparison,
|
|
141
|
+
disposition,
|
|
142
|
+
explicitAcceptanceRequired: disposition !== 'no-change',
|
|
143
|
+
kind: exports.API_CONTRACT_BASELINE_UPDATE_PLAN_KIND,
|
|
144
|
+
schemaVersion: exports.API_CONTRACT_BASELINE_UPDATE_PLAN_SCHEMA_VERSION,
|
|
145
|
+
writesBaseline: false,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Pins a human/agent approval to the exact candidate and classification. The
|
|
150
|
+
* result is still data for a caller-controlled write; this function performs
|
|
151
|
+
* no filesystem mutation.
|
|
152
|
+
*/
|
|
153
|
+
function authorizeApiContractBaselineUpdate(plan, approval) {
|
|
154
|
+
const plannedBaselineDigest = (0, model_js_1.digestApiContractBaseline)(plan.baseline.baseline);
|
|
155
|
+
const plannedCandidateDigest = (0, model_js_1.digestApiContractBaseline)(plan.candidate.baseline);
|
|
156
|
+
const recomputedComparison = (0, compatibility_js_1.compareApiContracts)(plan.baseline.baseline, plan.candidate.baseline);
|
|
157
|
+
requireVersionTransition(plan.baseline.baseline, plan.candidate.baseline, recomputedComparison);
|
|
158
|
+
const expectedDisposition = dispositionFor(recomputedComparison);
|
|
159
|
+
if (plan.kind !== exports.API_CONTRACT_BASELINE_UPDATE_PLAN_KIND ||
|
|
160
|
+
plan.schemaVersion !== exports.API_CONTRACT_BASELINE_UPDATE_PLAN_SCHEMA_VERSION ||
|
|
161
|
+
plan.writesBaseline !== false ||
|
|
162
|
+
plan.baseline.digest !== plannedBaselineDigest ||
|
|
163
|
+
plan.baseline.version !== plan.baseline.baseline.version ||
|
|
164
|
+
plan.candidate.digest !== plannedCandidateDigest ||
|
|
165
|
+
plan.candidate.version !== plan.candidate.baseline.version ||
|
|
166
|
+
plan.candidate.json !==
|
|
167
|
+
(0, model_js_1.canonicalApiContractBaselineJson)(plan.candidate.baseline) ||
|
|
168
|
+
plan.comparison.candidate.digest !== plan.candidate.digest ||
|
|
169
|
+
plan.comparison.baseline.digest !== plan.baseline.digest ||
|
|
170
|
+
JSON.stringify(plan.comparison) !== JSON.stringify(recomputedComparison) ||
|
|
171
|
+
plan.disposition !== expectedDisposition) {
|
|
172
|
+
approvalError('/plan', 'must be an internally consistent v1 update plan');
|
|
173
|
+
}
|
|
174
|
+
if (plan.disposition === 'no-change') {
|
|
175
|
+
throw new ApiContractBaselineUpdateError('api-contract-baseline-update-not-required', '/disposition', 'the candidate already matches the accepted baseline');
|
|
176
|
+
}
|
|
177
|
+
if (approval.candidateDigest !== plan.candidate.digest) {
|
|
178
|
+
throw new ApiContractBaselineUpdateError('api-contract-baseline-update-approval-invalid', '/candidateDigest', 'must match the planned candidate digest');
|
|
179
|
+
}
|
|
180
|
+
if (approval.acceptedClassification !== plan.comparison.classification) {
|
|
181
|
+
throw new ApiContractBaselineUpdateError('api-contract-baseline-update-approval-invalid', '/acceptedClassification', 'must match the compatibility report classification');
|
|
182
|
+
}
|
|
183
|
+
const allowedApprovalKeys = new Set([
|
|
184
|
+
'acceptedClassification',
|
|
185
|
+
'candidateDigest',
|
|
186
|
+
'reason',
|
|
187
|
+
...(approval.acceptedClassification === 'conditionally-compatible'
|
|
188
|
+
? ['semanticReviewEvidence']
|
|
189
|
+
: approval.acceptedClassification === 'breaking'
|
|
190
|
+
? ['consumerEvidence', 'rolloutEvidence', 'rolloutPlan']
|
|
191
|
+
: []),
|
|
192
|
+
]);
|
|
193
|
+
if (Object.keys(approval).some((key) => !allowedApprovalKeys.has(key))) {
|
|
194
|
+
approvalError('', 'contains fields outside the selected classification approval contract');
|
|
195
|
+
}
|
|
196
|
+
if (!approval || typeof approval !== 'object') {
|
|
197
|
+
approvalError('', 'must be an approval object');
|
|
198
|
+
}
|
|
199
|
+
const reason = typeof approval.reason === 'string' ? approval.reason.trim() : '';
|
|
200
|
+
if (reason.length === 0 || reason.length > 1024) {
|
|
201
|
+
throw new ApiContractBaselineUpdateError('api-contract-baseline-update-approval-invalid', '/reason', 'must be a non-empty reason of at most 1024 characters');
|
|
202
|
+
}
|
|
203
|
+
const classificationEvidence = approval.acceptedClassification === 'conditionally-compatible'
|
|
204
|
+
? {
|
|
205
|
+
semanticReviewEvidence: normalizeEvidenceReferences(approval.semanticReviewEvidence, '/semanticReviewEvidence'),
|
|
206
|
+
}
|
|
207
|
+
: approval.acceptedClassification === 'breaking'
|
|
208
|
+
? {
|
|
209
|
+
consumerEvidence: normalizeEvidenceReferences(approval.consumerEvidence, '/consumerEvidence'),
|
|
210
|
+
rolloutEvidence: normalizeEvidenceReferences(approval.rolloutEvidence, '/rolloutEvidence'),
|
|
211
|
+
rolloutPlan: normalizeRolloutPlanReference(approval.rolloutPlan),
|
|
212
|
+
}
|
|
213
|
+
: {};
|
|
214
|
+
return {
|
|
215
|
+
acceptedClassification: approval.acceptedClassification,
|
|
216
|
+
baselineDigest: plan.baseline.digest,
|
|
217
|
+
candidateDigest: plan.candidate.digest,
|
|
218
|
+
candidateJson: plan.candidate.json,
|
|
219
|
+
kind: exports.API_CONTRACT_BASELINE_UPDATE_AUTHORIZATION_KIND,
|
|
220
|
+
reason,
|
|
221
|
+
...classificationEvidence,
|
|
222
|
+
schemaVersion: exports.API_CONTRACT_BASELINE_UPDATE_AUTHORIZATION_SCHEMA_VERSION,
|
|
223
|
+
};
|
|
224
|
+
}
|
|
225
|
+
//# sourceMappingURL=baseline-update.js.map
|