@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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"built-in-plan-infrastructure-files.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/generators/slice/built-in-plan-infrastructure-files.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderProductInfrastructureSafetyFiles = renderProductInfrastructureSafetyFiles;
|
|
4
|
+
const built_in_plan_shared_js_1 = require("./built-in-plan-shared.js");
|
|
5
|
+
/** @internal */
|
|
6
|
+
function renderProductInfrastructureSafetyFiles(name) {
|
|
7
|
+
return {
|
|
8
|
+
'operations/infrastructure-change.json': (0, built_in_plan_shared_js_1.json)({
|
|
9
|
+
approvals: {
|
|
10
|
+
expirySeconds: 3_600,
|
|
11
|
+
materialDigestExcludes: [
|
|
12
|
+
'approval',
|
|
13
|
+
'expiresAt',
|
|
14
|
+
'generatedAt',
|
|
15
|
+
'repository',
|
|
16
|
+
'sourceCommit',
|
|
17
|
+
],
|
|
18
|
+
revalidateAccountRegionStage: true,
|
|
19
|
+
revalidateMaterialDigest: true,
|
|
20
|
+
revalidateSourceCommit: true,
|
|
21
|
+
},
|
|
22
|
+
drift: {
|
|
23
|
+
adapters: [
|
|
24
|
+
{
|
|
25
|
+
detection: 'sst-diff-json-with-pulumi-refresh-preview-options',
|
|
26
|
+
id: 'sst-pulumi-refresh-preview',
|
|
27
|
+
support: 'pinned-read-only-preview',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
detection: 'aws-resource-groups-tagging-api',
|
|
31
|
+
id: 'tag-and-existence-fallback',
|
|
32
|
+
support: 'tags-and-existence-only',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
detection: 'in-memory-provider-refresh-comparison',
|
|
36
|
+
id: 'generated-non-secret-ssm-string',
|
|
37
|
+
support: 'supported-redacted',
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
detection: 'none',
|
|
41
|
+
id: 'secret-payload-properties',
|
|
42
|
+
support: 'explicitly-unsupported-blocks',
|
|
43
|
+
},
|
|
44
|
+
],
|
|
45
|
+
decisions: ['revert', 'adopt', 'externally-owned', 'investigate'],
|
|
46
|
+
evidenceFreshness: 'expiry-bound',
|
|
47
|
+
authoritativeRefreshForbiddenForDetection: true,
|
|
48
|
+
previewEnvironment: {
|
|
49
|
+
PULUMI_OPTION_REFRESH: 'true',
|
|
50
|
+
PULUMI_OPTION_RUN_PROGRAM: 'true',
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
planner: {
|
|
54
|
+
command: 'sst diff --json plus same-command read-only refresh preview',
|
|
55
|
+
executor: '@empire-builder-kit/nx:infrastructure-plan',
|
|
56
|
+
scope: 'product-slice',
|
|
57
|
+
sourceBoundary: 'desired-source-versus-recorded-sst-state',
|
|
58
|
+
stateIdentity: 'full-canonical-live-state-or-exact-key-absence-digest',
|
|
59
|
+
tool: 'sst',
|
|
60
|
+
version: '4.17.1',
|
|
61
|
+
},
|
|
62
|
+
policy: {
|
|
63
|
+
additiveLowRiskTypes: [
|
|
64
|
+
'aws:cloudwatch/dashboard:Dashboard',
|
|
65
|
+
'aws:cloudwatch/logGroup:LogGroup',
|
|
66
|
+
'aws:cloudwatch/metricAlarm:MetricAlarm',
|
|
67
|
+
'random:index/randomPassword:RandomPassword',
|
|
68
|
+
],
|
|
69
|
+
costOrQuotaTypes: [
|
|
70
|
+
'aws:apigatewayv2/api:Api',
|
|
71
|
+
'aws:apigatewayv2/integration:Integration',
|
|
72
|
+
'aws:apigatewayv2/route:Route',
|
|
73
|
+
'aws:apigatewayv2/vpcLink:VpcLink',
|
|
74
|
+
'aws:appconfig/deployment:Deployment',
|
|
75
|
+
'aws:budgets/budget:Budget',
|
|
76
|
+
'aws:cloudfront/cachePolicy:CachePolicy',
|
|
77
|
+
'aws:cloudfront/distribution:Distribution',
|
|
78
|
+
'aws:cloudfront/function:Function',
|
|
79
|
+
'aws:cloudfront/keyValueStore:KeyValueStore',
|
|
80
|
+
'aws:costexplorer/anomalyMonitor:AnomalyMonitor',
|
|
81
|
+
'aws:costexplorer/anomalySubscription:AnomalySubscription',
|
|
82
|
+
'aws:dynamodb/table:Table',
|
|
83
|
+
'aws:ecs/service:Service',
|
|
84
|
+
'aws:lambda/function:Function',
|
|
85
|
+
'aws:rds/cluster:Cluster',
|
|
86
|
+
],
|
|
87
|
+
failClosedOnUnknown: true,
|
|
88
|
+
iamAccessAnalyzer: 'in-process-validate-policy-for-proposed-policy-documents',
|
|
89
|
+
costQuotaEvidence: 'bounded-standard-envelope-unknown-cost-visible',
|
|
90
|
+
planRoleStatus: 'generated-exact-bootstrap-audit',
|
|
91
|
+
protectedPlanAuthority: 'dedicated-read-only-oidc-role',
|
|
92
|
+
rawAndNormalizedEvidence: true,
|
|
93
|
+
redactBeforeReview: true,
|
|
94
|
+
standingPolicyRiskClasses: ['no-change', 'additive-low-risk'],
|
|
95
|
+
statefulTypes: [
|
|
96
|
+
'aws:dynamodb/table:Table',
|
|
97
|
+
'aws:kms/key:Key',
|
|
98
|
+
'aws:rds/cluster:Cluster',
|
|
99
|
+
'aws:s3/bucket:Bucket',
|
|
100
|
+
'aws:sqs/queue:Queue',
|
|
101
|
+
'aws:ssm/parameter:Parameter',
|
|
102
|
+
'random:index/randomPassword:RandomPassword',
|
|
103
|
+
],
|
|
104
|
+
},
|
|
105
|
+
liveEvidenceRequirements: [
|
|
106
|
+
'plan-role-cloudtrail-call-calibration',
|
|
107
|
+
'deliberate-drift-read-only-preview',
|
|
108
|
+
],
|
|
109
|
+
residuals: [
|
|
110
|
+
'general-purpose-pricing-engine',
|
|
111
|
+
'third-party-provider-drift-adapters',
|
|
112
|
+
],
|
|
113
|
+
riskClasses: [
|
|
114
|
+
'no-change',
|
|
115
|
+
'additive-low-risk',
|
|
116
|
+
'in-place-reviewed',
|
|
117
|
+
'stateless-replacement',
|
|
118
|
+
'stateful-or-destructive',
|
|
119
|
+
'security-expansion',
|
|
120
|
+
'protection-reduction',
|
|
121
|
+
'material-cost-or-quota',
|
|
122
|
+
'unknown',
|
|
123
|
+
],
|
|
124
|
+
schemaVersion: 1,
|
|
125
|
+
slice: name,
|
|
126
|
+
}),
|
|
127
|
+
'scripts/infrastructure-plan.mjs': `import { readFileSync } from 'node:fs';
|
|
128
|
+
import {
|
|
129
|
+
computeMaterialPlanDigest,
|
|
130
|
+
} from '@empire-builder-kit/nx/infrastructure-change';
|
|
131
|
+
|
|
132
|
+
const evidenceDirectory = new URL('../.ebk/evidence/', import.meta.url);
|
|
133
|
+
const plan = JSON.parse(
|
|
134
|
+
readFileSync(
|
|
135
|
+
new URL('infrastructure-plan.json', evidenceDirectory),
|
|
136
|
+
'utf8',
|
|
137
|
+
),
|
|
138
|
+
);
|
|
139
|
+
const authorization = JSON.parse(
|
|
140
|
+
readFileSync(
|
|
141
|
+
new URL('infrastructure-plan-authorization.json', evidenceDirectory),
|
|
142
|
+
'utf8',
|
|
143
|
+
),
|
|
144
|
+
);
|
|
145
|
+
if (
|
|
146
|
+
plan?.schemaVersion !== 1 ||
|
|
147
|
+
!Array.isArray(plan?.projects) ||
|
|
148
|
+
!plan.projects.includes('${name}') ||
|
|
149
|
+
computeMaterialPlanDigest(plan) !== plan.materialDigest
|
|
150
|
+
) {
|
|
151
|
+
throw new Error(
|
|
152
|
+
'Infrastructure plan evidence is absent, malformed, or no longer material.',
|
|
153
|
+
);
|
|
154
|
+
}
|
|
155
|
+
if (
|
|
156
|
+
authorization?.validation?.allowed !== true ||
|
|
157
|
+
authorization.validation.outcome !== 'plan-clean'
|
|
158
|
+
) {
|
|
159
|
+
throw new Error('Infrastructure plan is not authorized for apply.');
|
|
160
|
+
}
|
|
161
|
+
process.stdout.write(
|
|
162
|
+
JSON.stringify({
|
|
163
|
+
aggregateRisk: plan.aggregateRisk,
|
|
164
|
+
materialDigest: plan.materialDigest,
|
|
165
|
+
outcome: authorization.validation.outcome,
|
|
166
|
+
projects: plan.projects,
|
|
167
|
+
}) + '\\n',
|
|
168
|
+
);
|
|
169
|
+
`,
|
|
170
|
+
'scripts/infrastructure-drift.mjs': `import { chmodSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
171
|
+
import {
|
|
172
|
+
evaluateDriftCoverage,
|
|
173
|
+
evaluatePostApplyConvergence,
|
|
174
|
+
validateDriftDecision,
|
|
175
|
+
} from '@empire-builder-kit/nx/infrastructure-change';
|
|
176
|
+
|
|
177
|
+
const inputPath = process.env.EBK_DRIFT_INPUT_PATH?.trim();
|
|
178
|
+
if (!inputPath) throw new Error('EBK_DRIFT_INPUT_PATH is required.');
|
|
179
|
+
const input = JSON.parse(readFileSync(inputPath, 'utf8'));
|
|
180
|
+
if (
|
|
181
|
+
input?.schemaVersion !== 1 ||
|
|
182
|
+
!Array.isArray(input.expected) ||
|
|
183
|
+
!Array.isArray(input.reports) ||
|
|
184
|
+
input.reports.some(
|
|
185
|
+
(report) => report?.mode !== 'read-only' || report?.invokedRefresh,
|
|
186
|
+
)
|
|
187
|
+
) {
|
|
188
|
+
throw new Error(
|
|
189
|
+
'Drift input must contain only bounded read-only adapter reports.',
|
|
190
|
+
);
|
|
191
|
+
}
|
|
192
|
+
const drift = evaluateDriftCoverage({
|
|
193
|
+
expected: input.expected,
|
|
194
|
+
reports: input.reports,
|
|
195
|
+
});
|
|
196
|
+
const decisions = drift.findings.map((finding) => {
|
|
197
|
+
const decision = input.decisions?.find(
|
|
198
|
+
(candidate) =>
|
|
199
|
+
candidate?.driftResourceId === finding.resourceId,
|
|
200
|
+
);
|
|
201
|
+
return {
|
|
202
|
+
finding,
|
|
203
|
+
validation: decision
|
|
204
|
+
? validateDriftDecision(finding, decision)
|
|
205
|
+
: {
|
|
206
|
+
complete: false,
|
|
207
|
+
errors: ['Drift finding has no explicit decision.'],
|
|
208
|
+
lifecycleBlocked: true,
|
|
209
|
+
},
|
|
210
|
+
};
|
|
211
|
+
});
|
|
212
|
+
const result = input.postApply
|
|
213
|
+
? {
|
|
214
|
+
decisions,
|
|
215
|
+
drift,
|
|
216
|
+
convergence: evaluatePostApplyConvergence({
|
|
217
|
+
...input.postApply,
|
|
218
|
+
drift,
|
|
219
|
+
}),
|
|
220
|
+
}
|
|
221
|
+
: { decisions, drift };
|
|
222
|
+
const evidenceDirectory = new URL('../.ebk/evidence/', import.meta.url);
|
|
223
|
+
mkdirSync(evidenceDirectory, { recursive: true, mode: 0o700 });
|
|
224
|
+
chmodSync(evidenceDirectory, 0o700);
|
|
225
|
+
const evidencePath = new URL(
|
|
226
|
+
'infrastructure-drift.json',
|
|
227
|
+
evidenceDirectory,
|
|
228
|
+
);
|
|
229
|
+
writeFileSync(
|
|
230
|
+
evidencePath,
|
|
231
|
+
JSON.stringify(result, null, 2) + '\\n',
|
|
232
|
+
{ encoding: 'utf8', mode: 0o600 },
|
|
233
|
+
);
|
|
234
|
+
chmodSync(evidencePath, 0o600);
|
|
235
|
+
process.stdout.write(JSON.stringify(result) + '\\n');
|
|
236
|
+
if (
|
|
237
|
+
drift.status !== 'no-drift' ||
|
|
238
|
+
decisions.some(({ validation }) => !validation.complete) ||
|
|
239
|
+
result.convergence?.converged === false
|
|
240
|
+
) {
|
|
241
|
+
process.exitCode = 2;
|
|
242
|
+
}
|
|
243
|
+
`,
|
|
244
|
+
'docs/runbooks/infrastructure-change.md': `# Infrastructure change and drift
|
|
245
|
+
|
|
246
|
+
\`pnpm nx run <slice>:infrastructure-plan --stage=<protected-stage>\` runs the
|
|
247
|
+
workspace-pinned SST 4.17.1 \`sst diff --json\` contract through the framework
|
|
248
|
+
executor. It first compares desired source with SST's recorded engine state,
|
|
249
|
+
then repeats the same preview with the pinned Pulumi read-only refresh and
|
|
250
|
+
run-program options. Refresh-phase events are separated from desired operations
|
|
251
|
+
in memory. Raw state, policy documents, provider values, and secret-adjacent
|
|
252
|
+
material are never written to review evidence.
|
|
253
|
+
|
|
254
|
+
Unknown, destructive, stateful, security-expanding, protection-reducing, and
|
|
255
|
+
material-cost findings fail closed. Approval binds to the exact material plan,
|
|
256
|
+
candidate, stage, account, region, policy and state identity, and expires.
|
|
257
|
+
Generated time and approval metadata do not alter the material digest, but are
|
|
258
|
+
still independently revalidated before apply.
|
|
259
|
+
|
|
260
|
+
Use only the bounded read-only preview for drift. Never invoke authoritative
|
|
261
|
+
\`sst refresh\`, write state, unlock state, or mutate cloud resources to detect
|
|
262
|
+
drift. A refresh preview is complete only when its desired phase materially
|
|
263
|
+
equals the ordinary diff, its exact existing-resource inventory matches the
|
|
264
|
+
full canonical state export, and all material properties have supported
|
|
265
|
+
coverage. Generated non-secret String SSM parameter values are compared only in
|
|
266
|
+
memory; secret payloads remain unsupported and block.
|
|
267
|
+
|
|
268
|
+
The generated contract is Slice-scoped and protected planning runs under the
|
|
269
|
+
dedicated branch-bound read-only plan role. The executor obtains state identity
|
|
270
|
+
directly from the full canonical in-memory SST state export or from exact
|
|
271
|
+
state-key absence for a first deploy. Exact-key inventory is checked before
|
|
272
|
+
state, lock, or secret reads. Access Analyzer validates proposed IAM policy and
|
|
273
|
+
trust documents in-process, while bounded cost/quota evidence makes unknown
|
|
274
|
+
cost explicit and review-required. Partial or unsupported coverage blocks
|
|
275
|
+
apply; it is never promoted to \`no-drift\`. The exact SST/provider call
|
|
276
|
+
inventory still requires protected CloudTrail calibration evidence.
|
|
277
|
+
|
|
278
|
+
When a plan requires human review, commit
|
|
279
|
+
the workspace-level \`operations/infrastructure-approval.json\` batch. It binds
|
|
280
|
+
the exact ordered project set, action, stage, and one sanitized planned
|
|
281
|
+
plan/digest-bound decision per project. The resume run permits only that one
|
|
282
|
+
aggregate file to differ from the planned source commit and recomputes every
|
|
283
|
+
cloud plan before apply. The matching project entry carries sanitized
|
|
284
|
+
\`governance\` records when applicable: an exact drift-adopt decision for
|
|
285
|
+
refresh, controller/ownership/private-identifier/removal proof for every
|
|
286
|
+
import, and cutover/data/collision/rollback/recovery proof for every
|
|
287
|
+
replacement. Their canonical digests are retained in both authorization and
|
|
288
|
+
the immediate pre-mutation binding; changing one after review fails closed.
|
|
289
|
+
|
|
290
|
+
State edit, import operations inside a deploy preview, remove, repair, and
|
|
291
|
+
authoritative refresh are governed recovery operations. Retain a state backup,
|
|
292
|
+
exact physical target inventory, non-author approval, command/result evidence,
|
|
293
|
+
and a finalized post-repair convergence record. Remove additionally requires
|
|
294
|
+
the complete deletion inventory, drained dependents, retained Foundation,
|
|
295
|
+
data-export, secret-revocation, and cleanup references; because the pinned SST
|
|
296
|
+
diff does not emit a remove preview, EBK derives a redacted exact physical,
|
|
297
|
+
dependency, protection, and retention inventory from the full live state
|
|
298
|
+
export. The raw ID/ARN inventory remains private and binds a fixed Standard
|
|
299
|
+
adapter before mutation; its exact file digest is carried by the immediate
|
|
300
|
+
mutation binding. Service-native post-remove reads must prove NotFound
|
|
301
|
+
for deleted resources, exact identity and unchanged protection for retained
|
|
302
|
+
resources, separate-Foundation exclusion, and exact secret/registration
|
|
303
|
+
absence. Unknown types, ambiguous identities, read failures, or mismatches
|
|
304
|
+
produce \`cleanup-incomplete\` and require recovery; they never claim generic
|
|
305
|
+
provider coverage.
|
|
306
|
+
Immediate provider/state post-plan evidence is nonterminal until the protected
|
|
307
|
+
deployed-smoke and alarm/data evidence finalizer binds the exact candidate and
|
|
308
|
+
mutation.
|
|
309
|
+
`,
|
|
310
|
+
};
|
|
311
|
+
}
|
|
312
|
+
//# sourceMappingURL=built-in-plan-infrastructure-safety-files.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"built-in-plan-infrastructure-safety-files.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/generators/slice/built-in-plan-infrastructure-safety-files.ts"],"names":[],"mappings":";;AAGA,wFAoTC;AAvTD,uEAAiD;AAEjD,gBAAgB;AAChB,SAAgB,sCAAsC,CACpD,IAAY;IAEZ,OAAO;QACL,uCAAuC,EAAE,IAAA,8BAAI,EAAC;YAC5C,SAAS,EAAE;gBACT,aAAa,EAAE,KAAK;gBACpB,sBAAsB,EAAE;oBACtB,UAAU;oBACV,WAAW;oBACX,aAAa;oBACb,YAAY;oBACZ,cAAc;iBACf;gBACD,4BAA4B,EAAE,IAAI;gBAClC,wBAAwB,EAAE,IAAI;gBAC9B,sBAAsB,EAAE,IAAI;aAC7B;YACD,KAAK,EAAE;gBACL,QAAQ,EAAE;oBACR;wBACE,SAAS,EAAE,mDAAmD;wBAC9D,EAAE,EAAE,4BAA4B;wBAChC,OAAO,EAAE,0BAA0B;qBACpC;oBACD;wBACE,SAAS,EAAE,iCAAiC;wBAC5C,EAAE,EAAE,4BAA4B;wBAChC,OAAO,EAAE,yBAAyB;qBACnC;oBACD;wBACE,SAAS,EAAE,uCAAuC;wBAClD,EAAE,EAAE,iCAAiC;wBACrC,OAAO,EAAE,oBAAoB;qBAC9B;oBACD;wBACE,SAAS,EAAE,MAAM;wBACjB,EAAE,EAAE,2BAA2B;wBAC/B,OAAO,EAAE,+BAA+B;qBACzC;iBACF;gBACD,SAAS,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,kBAAkB,EAAE,aAAa,CAAC;gBACjE,iBAAiB,EAAE,cAAc;gBACjC,yCAAyC,EAAE,IAAI;gBAC/C,kBAAkB,EAAE;oBAClB,qBAAqB,EAAE,MAAM;oBAC7B,yBAAyB,EAAE,MAAM;iBAClC;aACF;YACD,OAAO,EAAE;gBACP,OAAO,EAAE,6DAA6D;gBACtE,QAAQ,EAAE,4CAA4C;gBACtD,KAAK,EAAE,eAAe;gBACtB,cAAc,EAAE,0CAA0C;gBAC1D,aAAa,EAAE,uDAAuD;gBACtE,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,QAAQ;aAClB;YACD,MAAM,EAAE;gBACN,oBAAoB,EAAE;oBACpB,oCAAoC;oBACpC,kCAAkC;oBAClC,wCAAwC;oBACxC,4CAA4C;iBAC7C;gBACD,gBAAgB,EAAE;oBAChB,0BAA0B;oBAC1B,0CAA0C;oBAC1C,8BAA8B;oBAC9B,kCAAkC;oBAClC,qCAAqC;oBACrC,2BAA2B;oBAC3B,wCAAwC;oBACxC,0CAA0C;oBAC1C,kCAAkC;oBAClC,4CAA4C;oBAC5C,gDAAgD;oBAChD,0DAA0D;oBAC1D,0BAA0B;oBAC1B,yBAAyB;oBACzB,8BAA8B;oBAC9B,yBAAyB;iBAC1B;gBACD,mBAAmB,EAAE,IAAI;gBACzB,iBAAiB,EACf,0DAA0D;gBAC5D,iBAAiB,EAAE,gDAAgD;gBACnE,cAAc,EAAE,iCAAiC;gBACjD,sBAAsB,EAAE,+BAA+B;gBACvD,wBAAwB,EAAE,IAAI;gBAC9B,kBAAkB,EAAE,IAAI;gBACxB,yBAAyB,EAAE,CAAC,WAAW,EAAE,mBAAmB,CAAC;gBAC7D,aAAa,EAAE;oBACb,0BAA0B;oBAC1B,iBAAiB;oBACjB,yBAAyB;oBACzB,sBAAsB;oBACtB,qBAAqB;oBACrB,6BAA6B;oBAC7B,4CAA4C;iBAC7C;aACF;YACD,wBAAwB,EAAE;gBACxB,uCAAuC;gBACvC,oCAAoC;aACrC;YACD,SAAS,EAAE;gBACT,gCAAgC;gBAChC,qCAAqC;aACtC;YACD,WAAW,EAAE;gBACX,WAAW;gBACX,mBAAmB;gBACnB,mBAAmB;gBACnB,uBAAuB;gBACvB,yBAAyB;gBACzB,oBAAoB;gBACpB,sBAAsB;gBACtB,wBAAwB;gBACxB,SAAS;aACV;YACD,aAAa,EAAE,CAAC;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC;QACF,iCAAiC,EAAE;;;;;;;;;;;;;;;;;;;;;6BAqBV,IAAI;;;;;;;;;;;;;;;;;;;;;CAqBhC;QACG,kCAAkC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyEvC;QACG,wCAAwC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiE7C;KACE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderSliceMetadataFiles = renderSliceMetadataFiles;
|
|
4
|
+
const built_in_plan_shared_js_1 = require("./built-in-plan-shared.js");
|
|
5
|
+
/** @internal */
|
|
6
|
+
function renderSliceMetadataFiles(name, scope, pascalName, ownership) {
|
|
7
|
+
return {
|
|
8
|
+
'.ebk/ownership.json': (0, built_in_plan_shared_js_1.json)(ownership),
|
|
9
|
+
'README.md': `# ${name}
|
|
10
|
+
|
|
11
|
+
This Product Slice is an independent business and deployment boundary generated from the
|
|
12
|
+
built-in Empire Builder Kit Standard Blueprint.
|
|
13
|
+
|
|
14
|
+
It consumes the Standard Foundation through its versioned capability contract. Do not import
|
|
15
|
+
files from \`packages/foundation/infra\` or from another slice's internals.
|
|
16
|
+
|
|
17
|
+
## Included product baseline
|
|
18
|
+
|
|
19
|
+
- Next.js web application with sign-in, refresh, sign-out, callback, and password-reset paths
|
|
20
|
+
- Lambda HTTP API with health and JWT-protected routes
|
|
21
|
+
- stage- and slice-scoped logical Postgres database plus migration history
|
|
22
|
+
- typed EventBridge publisher and SQS/DLQ-backed consumer
|
|
23
|
+
- Product Slice dashboard and API/DLQ alarms routed through Foundation alerts
|
|
24
|
+
- Vitest source test and Playwright deployed-smoke path
|
|
25
|
+
- managed client/server and public-configuration boundaries, owned response-header policy,
|
|
26
|
+
rendered accessibility checks, and reviewable visual evidence
|
|
27
|
+
- versioned SLO, alarm, diagnostic, incident-remediation, and reliability-exercise contracts
|
|
28
|
+
- performance, capacity, resource-tag, protected-load, and actual-cost evidence contracts
|
|
29
|
+
- workspace-lockfile-derived migration and retention container recipes with supply-chain checks
|
|
30
|
+
|
|
31
|
+
Keep business contracts in \`contracts/\`. Add long-running Services and finite Jobs only when
|
|
32
|
+
the product needs them.
|
|
33
|
+
|
|
34
|
+
Run \`pnpm nx run ${name}:verify\` for the non-deployed Slice checks. The policy files under
|
|
35
|
+
\`frontend/\`, \`docs/reliability/\`, \`operations/\`, and \`performance/\` are seeded decisions:
|
|
36
|
+
adopt real owners, journeys, thresholds, targets, and evidence sources before enabling
|
|
37
|
+
\`${name}:performance-ready\`, protected load, or making a production-readiness claim.
|
|
38
|
+
Start with the
|
|
39
|
+
[\`performance-capacity-cost\` runbook](docs/runbooks/performance-capacity-cost.md)
|
|
40
|
+
before configuring the protected workflow.
|
|
41
|
+
|
|
42
|
+
Add product dependencies with \`pnpm --filter ${scope}/${name} add <package>\`. EBK owns only
|
|
43
|
+
its recorded framework keys in this package manifest, so health checks and upgrades preserve
|
|
44
|
+
dependencies, scripts, and other keys added by the product team.
|
|
45
|
+
|
|
46
|
+
## Local database
|
|
47
|
+
|
|
48
|
+
Run \`ebk dev up ${name}\`. The framework derives the current developer's
|
|
49
|
+
personal stage, starts Docker Postgres, applies local migrations, and starts
|
|
50
|
+
SST live mode through the workspace-pinned Nx task. A caller cannot supply or
|
|
51
|
+
persist a stage override. The fleet supervisor allocates the internal Next.js
|
|
52
|
+
port and reports the HTTPS readiness URL.
|
|
53
|
+
|
|
54
|
+
The workspace fleet target discovers this slice through its versioned
|
|
55
|
+
\`metadata.ebk.localDev\` adapter. It supplies the exact HTTPS fleet origin, secure-cookie
|
|
56
|
+
signal, callback/logout URLs, and allocated internal port; do not persist a developer port in
|
|
57
|
+
this project.
|
|
58
|
+
|
|
59
|
+
\`database/bindings.json\` is the adopter-owned database selection contract. Add a candidate
|
|
60
|
+
identifier to \`primary.provisioned\` to provision it without moving workload traffic. Every
|
|
61
|
+
provisioned identifier receives its own AWS-internal bootstrap-and-migration workflow. Run
|
|
62
|
+
\`pnpm nx run ${name}:db-migrate --stage=<stage> --database=<identifier>\` to migrate and verify
|
|
63
|
+
a non-active candidate before switching \`primary.active\`. Without \`--database\`, the target
|
|
64
|
+
selects the active \`primary\` identifier. Do not edit managed \`infra/product.ts\` or provision
|
|
65
|
+
databases with Foundation master credentials.
|
|
66
|
+
|
|
67
|
+
The readiness route is framework-managed for local orchestration. Put product-specific
|
|
68
|
+
dependency and status checks under \`/${name}/api/status\` rather than editing that route.
|
|
69
|
+
|
|
70
|
+
Run \`ebk dev down ${name}\` when finished. The named volume preserves local
|
|
71
|
+
data between sessions.
|
|
72
|
+
|
|
73
|
+
For a deployed canonical stage, \`${name}:db-migrate\` does not connect from the
|
|
74
|
+
local or GitHub process. It starts the generated Standard Step Functions
|
|
75
|
+
workflow, waits for its one-off Fargate task, and reports the execution ARN.
|
|
76
|
+
The workflow first runs an AWS-internal bootstrap task that converges the
|
|
77
|
+
database, roles, and reference-only runtime credentials, then runs the
|
|
78
|
+
IAM-authenticated migration task. Neither password resolves in GitHub, SST, or
|
|
79
|
+
Pulumi state. The authenticated \`GET /database-health\` API route uses the
|
|
80
|
+
server-only resolver, linked secret, and runtime-embedded AWS RDS global CA
|
|
81
|
+
bundle to prove the deployed runtime path with hostname-verified TLS.
|
|
82
|
+
Staging and production use the existing environment-scoped
|
|
83
|
+
\`AWS_DEPLOY_ROLE_ARN\`; no second migration OIDC role or database password is
|
|
84
|
+
configured by the adopter. That role needs only \`ssm:GetParameter\` for the
|
|
85
|
+
exact generated migration-registration path and \`states:StartExecution\` /
|
|
86
|
+
\`states:DescribeExecution\` for the exact generated state machine and its
|
|
87
|
+
execution namespace; it never receives SQL, database-token, or arbitrary ECS
|
|
88
|
+
authority.
|
|
89
|
+
|
|
90
|
+
Ordinary Slice removal is non-destructive and retains logical databases and
|
|
91
|
+
credential containers. The only destructive v1 database path is the protected
|
|
92
|
+
\`db-retirement-rehearsal\` target for the exact operations-declared
|
|
93
|
+
\`development\` database named \`retirement_rehearsal\`. It accepts no stage,
|
|
94
|
+
Slice, database, task, role, image, network, or workflow selection.
|
|
95
|
+
`,
|
|
96
|
+
'contracts/index.ts': `export {
|
|
97
|
+
${pascalName}Created,
|
|
98
|
+
${pascalName}DataLifecycleChanged,
|
|
99
|
+
type ${pascalName}CreatedData,
|
|
100
|
+
type ${pascalName}DataLifecycleChangedData,
|
|
101
|
+
} from './events.js';
|
|
102
|
+
|
|
103
|
+
export const ${pascalName}ContractVersion = '1.0.0' as const;
|
|
104
|
+
`,
|
|
105
|
+
'contracts/dependencies.json': (0, built_in_plan_shared_js_1.json)({
|
|
106
|
+
consumes: [],
|
|
107
|
+
schemaVersion: 1,
|
|
108
|
+
}),
|
|
109
|
+
'docs/architecture.md': `# ${name} architecture
|
|
110
|
+
|
|
111
|
+
## Boundary
|
|
112
|
+
|
|
113
|
+
This slice owns its product behavior, routes, app clients, logical databases, event rules,
|
|
114
|
+
queues, alarms, dashboards, and runbooks. The Foundation owns shared capacity and policy.
|
|
115
|
+
|
|
116
|
+
## Dependencies
|
|
117
|
+
|
|
118
|
+
- Foundation contract: \`^1\`
|
|
119
|
+
- Canonical stages map to the same Foundation stage; framework-derived personal stages map
|
|
120
|
+
only to \`development\`
|
|
121
|
+
- Other slices: contracts-only imports
|
|
122
|
+
`,
|
|
123
|
+
'docs/contracts.md': `# ${name} contracts
|
|
124
|
+
|
|
125
|
+
Published contracts belong in \`contracts/\`. Keep them transport-neutral and versioned.
|
|
126
|
+
Record every consumed Slice publication in \`contracts/dependencies.json\`,
|
|
127
|
+
add its base workspace package as a \`workspace:*\` dependency, then run
|
|
128
|
+
\`pnpm nx run ${name}:contract-dependencies-sync\`. Verification fails when
|
|
129
|
+
the seeded declaration, package dependency, and generated ownership record
|
|
130
|
+
do not agree.
|
|
131
|
+
`,
|
|
132
|
+
'docs/runbooks.md': `# ${name} runbooks
|
|
133
|
+
|
|
134
|
+
Document deployment smoke checks, alarms, rollback, event redrive, database migration, and
|
|
135
|
+
Service or Job recovery procedures as those capabilities are added.
|
|
136
|
+
|
|
137
|
+
## Operator secrets
|
|
138
|
+
|
|
139
|
+
Use \`docs/runbooks/operator-secret-management.md\` for value-free metadata
|
|
140
|
+
convergence and the separate, human-only personal-stage value ceremony.
|
|
141
|
+
|
|
142
|
+
## Performance, capacity, and cost
|
|
143
|
+
|
|
144
|
+
Use the [performance, capacity, and cost runbook](runbooks/performance-capacity-cost.md)
|
|
145
|
+
before adopting capacity limits, enabling protected load, or collecting actual-cost evidence.
|
|
146
|
+
|
|
147
|
+
## Database migration
|
|
148
|
+
|
|
149
|
+
Protected migration runs from generated immutable bootstrap and migration
|
|
150
|
+
Fargate tasks through one Standard Step Functions workflow per provisioned
|
|
151
|
+
database identifier. The bootstrap task owns exact master-secret read,
|
|
152
|
+
runtime-secret read/write, and migrator-connect permissions; it converges the
|
|
153
|
+
database and roles under a database-scoped advisory lock. PostgreSQL may retain
|
|
154
|
+
a creator ADMIN membership for role administration; bootstrap removes its
|
|
155
|
+
\`SET\` and \`INHERIT\` options before granting \`rds_iam\`. The migration task
|
|
156
|
+
receives only exact migrator-connect permission.
|
|
157
|
+
|
|
158
|
+
Retain the workflow execution ARN, both task identities, image identity, source
|
|
159
|
+
commit, migration checksums, sanitized CloudWatch logs, backup reference, and
|
|
160
|
+
verification result. The GitHub job reuses
|
|
161
|
+
\`AWS_DEPLOY_ROLE_ARN\` only to start and describe the exact workflow; it must
|
|
162
|
+
not have direct SQL, secret-value, \`rds-db:connect\`, or arbitrary
|
|
163
|
+
\`ecs:RunTask\` authority.
|
|
164
|
+
|
|
165
|
+
The default \`db-migrate\` target selects the active \`primary\` database.
|
|
166
|
+
During replacement, first add the candidate to \`primary.provisioned\`, deploy
|
|
167
|
+
infrastructure, then run \`db-migrate --database=<candidate>\` and complete
|
|
168
|
+
candidate verification before changing \`primary.active\`.
|
|
169
|
+
|
|
170
|
+
Ordinary removal retains every logical database and generated credential
|
|
171
|
+
container. Outcome-2 evidence uses the separate protected
|
|
172
|
+
\`db-retirement-rehearsal\` target for exactly one reviewed, disposable
|
|
173
|
+
\`development\` database named \`retirement_rehearsal\`. Its fixed
|
|
174
|
+
AWS-internal callback task deletes that database, its three generated roles,
|
|
175
|
+
and its two exact generated credential containers, then proves their absence
|
|
176
|
+
and unchanged retained-sibling fingerprints. It never makes ordinary removal
|
|
177
|
+
destructive.
|
|
178
|
+
|
|
179
|
+
The authenticated \`GET /database-health\` route uses the server-only runtime
|
|
180
|
+
resolver and its checksum-pinned AWS RDS global CA bundle. Remote Aurora
|
|
181
|
+
connections retain hostname verification; only local loopback database
|
|
182
|
+
connections disable TLS.
|
|
183
|
+
|
|
184
|
+
Migrations are lexically ordered, checksum-locked, transaction-scoped, and
|
|
185
|
+
serialized with a Postgres advisory lock. v1 schema migrations are restricted
|
|
186
|
+
to the \`public\` schema. Known non-transactional operations fail closed; use a
|
|
187
|
+
reviewed replacement or forward-compatible design instead of bypassing the
|
|
188
|
+
transaction. Apply expand/migrate/contract. Repair failures with a forward
|
|
189
|
+
migration or the documented restore/replacement procedure; do not edit an
|
|
190
|
+
applied SQL file.
|
|
191
|
+
`,
|
|
192
|
+
'ebk-globals.d.ts': `import 'sst/resource';
|
|
193
|
+
|
|
194
|
+
declare global {
|
|
195
|
+
const sst: any;
|
|
196
|
+
const aws: any;
|
|
197
|
+
const $app: { name: string; stage: string };
|
|
198
|
+
const $config: any;
|
|
199
|
+
const $dev: boolean;
|
|
200
|
+
const $interpolate: (
|
|
201
|
+
strings: TemplateStringsArray,
|
|
202
|
+
...values: unknown[]
|
|
203
|
+
) => unknown;
|
|
204
|
+
const $jsonStringify: (value: unknown) => unknown;
|
|
205
|
+
const $transform: any;
|
|
206
|
+
const $util: any;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
declare module 'sst/resource' {
|
|
210
|
+
interface Resource {
|
|
211
|
+
${pascalName}ProviderQueue: { url: string };
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
export {};
|
|
216
|
+
`,
|
|
217
|
+
};
|
|
218
|
+
}
|
|
219
|
+
//# sourceMappingURL=built-in-plan-metadata-files.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"built-in-plan-metadata-files.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/generators/slice/built-in-plan-metadata-files.ts"],"names":[],"mappings":";;AAIA,4DAyNC;AA5ND,uEAAiD;AAEjD,gBAAgB;AAChB,SAAgB,wBAAwB,CACtC,IAAY,EACZ,KAAa,EACb,UAAkB,EAClB,SAAmC;IAEnC,OAAO;QACL,qBAAqB,EAAE,IAAA,8BAAI,EAAC,SAAS,CAAC;QACtC,WAAW,EAAE,KAAK,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;oBAyBN,IAAI;;;IAGpB,IAAI;;;;;gDAKwC,KAAK,IAAI,IAAI;;;;;;mBAM1C,IAAI;;;;;;;;;;;;;;gBAcP,IAAI;;;;;;wCAMoB,IAAI;;qBAEvB,IAAI;;;oCAGW,IAAI;;;;;;;;;;;;;;;;;;;;;;CAsBvC;QACG,oBAAoB,EAAE;IACtB,UAAU;IACV,UAAU;SACL,UAAU;SACV,UAAU;;;eAGJ,UAAU;CACxB;QACG,6BAA6B,EAAE,IAAA,8BAAI,EAAC;YAClC,QAAQ,EAAE,EAAE;YACZ,aAAa,EAAE,CAAC;SACjB,CAAC;QACF,sBAAsB,EAAE,KAAK,IAAI;;;;;;;;;;;;;CAapC;QACG,mBAAmB,EAAE,KAAK,IAAI;;;;;gBAKlB,IAAI;;;CAGnB;QACG,kBAAkB,EAAE,KAAK,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2DhC;QACG,kBAAkB,EAAE;;;;;;;;;;;;;;;;;;;MAmBlB,UAAU;;;;;CAKf;KACE,CAAC;AACJ,CAAC"}
|