@empire-builder-kit/nx 1.0.0-rc.4 → 1.0.0-rc.41
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/README.md +44 -10
- package/executors.json +21 -1
- package/generators.json +10 -0
- package/package.json +31 -7
- package/src/aws/child-environment.d.ts +10 -0
- package/src/aws/child-environment.js +77 -0
- package/src/aws/identity.d.ts +13 -0
- package/src/aws/identity.js +41 -0
- package/src/aws-authority/index.d.ts +2 -0
- package/src/aws-authority/index.js +6 -0
- package/src/aws-authority/lambda-policy-ordering.d.ts +38 -0
- package/src/aws-authority/lambda-policy-ordering.js +56 -0
- package/src/aws-authority/stage-authority.d.ts +248 -0
- package/src/aws-authority/stage-authority.js +3558 -0
- package/src/blueprints/external-sandbox.d.ts +1 -1
- package/src/blueprints/external-sandbox.js +21 -9
- package/src/blueprints/manifest.d.ts +1 -1
- package/src/blueprints/resolver.js +28 -15
- package/src/cli/bootstrap.d.ts +1 -1
- package/src/cli/deploy-runtime.d.ts +30 -0
- package/src/cli/deploy-runtime.js +174 -0
- package/src/cli/dev-command.d.ts +18 -4
- package/src/cli/dev-command.js +71 -0
- package/src/cli/main.d.ts +9 -1
- package/src/cli/main.js +157 -24
- package/src/cli/output.d.ts +1 -1
- package/src/cli/output.js +1 -1
- package/src/cli/personal-secret-runtime.d.ts +12 -0
- package/src/cli/personal-secret-runtime.js +18 -3
- package/src/cli/secret-terminal.js +1 -1
- package/src/container-images.d.ts +1 -1
- package/src/container-images.js +1 -1
- package/src/developer-agent/context.js +41 -9
- package/src/developer-agent/generator-planning.js +20 -6
- package/src/developer-agent/git-inspection.d.ts +6 -2
- package/src/developer-agent/git-inspection.js +78 -6
- package/src/developer-agent/model.d.ts +5 -3
- package/src/developer-agent/model.js +4 -4
- package/src/developer-agent/operation-registry.d.ts +15 -0
- package/src/developer-agent/operation-registry.js +342 -49
- package/src/developer-agent/planning.d.ts +8 -1
- package/src/developer-agent/planning.js +39 -16
- package/src/developer-agent/preview-changes.d.ts +2 -0
- package/src/developer-agent/preview-changes.js +14 -2
- package/src/developer-agent/preview-source.js +3 -0
- package/src/developer-agent/validation.js +25 -9
- package/src/developer-agent/workspace-inspection.js +60 -5
- package/src/executors/blueprint-trust/blueprint-trust.js +6 -0
- package/src/executors/deployment-plan/deployment-plan.d.ts +2 -0
- package/src/executors/deployment-plan/deployment-plan.js +57 -2
- package/src/executors/dev-doctor/dev-doctor.js +13 -6
- package/src/executors/dev-task-cleanup/dev-task-cleanup.d.ts +23 -0
- package/src/executors/dev-task-cleanup/dev-task-cleanup.js +145 -0
- package/src/executors/dev-task-cleanup/schema.json +9 -0
- package/src/executors/dev-task-cleanup/task-stack-absence.d.ts +27 -0
- package/src/executors/dev-task-cleanup/task-stack-absence.js +281 -0
- package/src/executors/dev-task-cleanup/task-stack-checkpoint.d.ts +12 -0
- package/src/executors/dev-task-cleanup/task-stack-checkpoint.js +92 -0
- package/src/executors/fleet/fleet.js +1 -1
- package/src/executors/foundation-preflight/foundation-preflight.d.ts +1 -0
- package/src/executors/foundation-preflight/foundation-preflight.js +6 -2
- package/src/executors/foundation-preflight/schema.json +5 -0
- package/src/executors/foundation-profile-preflight/foundation-profile-preflight.d.ts +13 -2
- package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js +95 -31
- package/src/executors/foundation-profile-preflight/production-database-safeguard.d.ts +65 -0
- package/src/executors/foundation-profile-preflight/production-database-safeguard.js +223 -0
- package/src/executors/foundation-profile-preflight/schema.json +15 -4
- package/src/executors/foundation-remove-preflight/foundation-remove-preflight.d.ts +11 -1
- package/src/executors/foundation-remove-preflight/foundation-remove-preflight.js +70 -20
- package/src/executors/foundation-remove-preflight/schema.json +6 -1
- package/src/executors/github-bootstrap/github-bootstrap.d.ts +1 -0
- package/src/executors/github-bootstrap/github-bootstrap.js +3 -0
- package/src/executors/github-bootstrap/schema.json +7 -1
- package/src/executors/infrastructure-plan/infrastructure-plan.d.ts +29 -136
- package/src/executors/infrastructure-plan/infrastructure-plan.js +230 -3282
- package/src/executors/infrastructure-plan/schema.json +12 -52
- package/src/executors/local-deploy/federated-credential-transport.d.ts +48 -0
- package/src/executors/local-deploy/federated-credential-transport.js +252 -0
- package/src/executors/local-deploy/local-approval.d.ts +18 -0
- package/src/executors/local-deploy/local-approval.js +39 -0
- package/src/executors/local-deploy/local-deploy.d.ts +112 -0
- package/src/executors/local-deploy/local-deploy.js +1404 -0
- package/src/executors/local-deploy/schema.json +70 -0
- package/src/executors/refresh/refresh.js +2 -2
- package/src/executors/remove/remove.js +2 -2
- package/src/executors/router-waf-rehearsal/router-waf-rehearsal.d.ts +42 -0
- package/src/executors/router-waf-rehearsal/router-waf-rehearsal.js +1229 -0
- package/src/executors/router-waf-rehearsal/schema.json +29 -0
- package/src/executors/secret-initialize/schema.json +42 -0
- package/src/executors/secret-initialize/secret-initialize.d.ts +34 -0
- package/src/executors/secret-initialize/secret-initialize.js +297 -0
- package/src/executors/secret-metadata/schema.json +5 -0
- package/src/executors/secret-metadata/secret-metadata.d.ts +16 -2
- package/src/executors/secret-metadata/secret-metadata.js +129 -30
- package/src/executors/sst-lifecycle/generated-secret-retirement.d.ts +53 -0
- package/src/executors/sst-lifecycle/generated-secret-retirement.js +192 -0
- package/src/executors/sst-lifecycle/governed-native-operation.d.ts +48 -0
- package/src/executors/sst-lifecycle/governed-native-operation.js +163 -0
- package/src/executors/sst-lifecycle/logging-preflight.d.ts +5 -0
- package/src/executors/sst-lifecycle/logging-preflight.js +23 -13
- package/src/executors/sst-lifecycle/run-sst-command.d.ts +46 -6
- package/src/executors/sst-lifecycle/run-sst-command.js +750 -71
- package/src/executors/sst-lifecycle/schema.json +8 -1
- package/src/executors/sst-lifecycle/secret-preflight.d.ts +2 -0
- package/src/executors/sst-lifecycle/secret-preflight.js +13 -7
- package/src/executors/sst-lifecycle/sst-environment-source.d.ts +33 -0
- package/src/executors/sst-lifecycle/sst-environment-source.js +267 -0
- package/src/executors/sst-lifecycle/task-unlock.d.ts +15 -0
- package/src/executors/sst-lifecycle/task-unlock.js +126 -0
- package/src/executors/unlock/unlock.js +2 -2
- package/src/foundation/capability-plan.d.ts +43 -0
- package/src/foundation/capability-plan.js +168 -0
- package/src/foundation/cost-estimate.d.ts +170 -0
- package/src/foundation/cost-estimate.js +683 -0
- package/src/foundation/discovery.d.ts +14 -11
- package/src/foundation/discovery.js +32 -6
- package/src/foundation/index.d.ts +4 -0
- package/src/foundation/index.js +11 -0
- package/src/foundation/local-database-contract.d.ts +20 -0
- package/src/foundation/local-database-contract.js +262 -13
- package/src/foundation/local-private-smoke-access.d.ts +20 -0
- package/src/foundation/local-private-smoke-access.js +197 -0
- package/src/foundation/logging-preflight.js +1 -1
- package/src/foundation/logging.d.ts +3 -1
- package/src/foundation/logging.js +1 -1
- package/src/foundation/partial-state.d.ts +10 -0
- package/src/foundation/partial-state.js +21 -0
- package/src/foundation/preflight.js +37 -18
- package/src/foundation/private-smoke-access.d.ts +25 -0
- package/src/foundation/private-smoke-access.js +135 -0
- package/src/foundation/private-smoke-admission.d.ts +45 -0
- package/src/foundation/private-smoke-admission.js +180 -0
- package/src/foundation/private-smoke-control-plane.d.ts +18 -0
- package/src/foundation/private-smoke-control-plane.js +184 -0
- package/src/foundation/provision-database-bindings.d.ts +5 -0
- package/src/foundation/provision-database-bindings.js +41 -8
- package/src/foundation/provision-logical-database.js +15 -8
- package/src/foundation/requirements.d.ts +3 -3
- package/src/foundation/requirements.js +24 -12
- package/src/foundation/router-waf-rate-rehearsal.d.ts +97 -0
- package/src/foundation/router-waf-rate-rehearsal.js +210 -0
- package/src/foundation/router-waf.d.ts +149 -0
- package/src/foundation/router-waf.js +809 -0
- package/src/foundation/stages.d.ts +1 -0
- package/src/foundation/stages.js +11 -0
- package/src/generators/blueprint/blueprint.d.ts +5 -0
- package/src/generators/blueprint/blueprint.js +102 -0
- package/src/generators/blueprint/files.d.ts +6 -0
- package/src/generators/blueprint/files.js +217 -0
- package/src/generators/blueprint/schema.d.ts +4 -0
- package/src/generators/blueprint/schema.json +18 -0
- package/src/generators/formatting.d.ts +8 -0
- package/src/generators/formatting.js +141 -0
- package/src/generators/function/function.js +38 -17
- package/src/generators/logging-registry.d.ts +2 -0
- package/src/generators/logging-registry.js +22 -0
- package/src/generators/post-generation-install.js +2 -2
- package/src/generators/preset/dependency-overrides.d.ts +8 -0
- package/src/generators/preset/dependency-overrides.js +55 -0
- package/src/generators/preset/generator.js +43 -3
- package/src/generators/preset/schema.d.ts +10 -0
- package/src/generators/preset/schema.json +47 -0
- package/src/generators/preset/workspace-files-adopter-skills.d.ts +7 -0
- package/src/generators/preset/workspace-files-adopter-skills.js +324 -0
- package/src/generators/preset/workspace-files-ci-acceptance.d.ts +1 -0
- package/src/generators/preset/workspace-files-ci-acceptance.js +791 -0
- package/src/generators/preset/workspace-files-ci-install.d.ts +2 -0
- package/src/generators/preset/workspace-files-ci-install.js +196 -0
- package/src/generators/preset/workspace-files-developer-agent.d.ts +2 -0
- package/src/generators/preset/workspace-files-developer-agent.js +162 -44
- package/src/generators/preset/workspace-files-ecr-inspector.d.ts +18 -0
- package/src/generators/preset/workspace-files-ecr-inspector.js +298 -0
- package/src/generators/preset/workspace-files-foundation-workload-roles.js +5 -2
- package/src/generators/preset/workspace-files-performance-cost.d.ts +2 -2
- package/src/generators/preset/workspace-files-performance-cost.js +8 -8
- package/src/generators/preset/workspace-files-performance-load.d.ts +1 -1
- package/src/generators/preset/workspace-files-performance-load.js +39 -25
- package/src/generators/preset/workspace-files-shared-operation-claims.d.ts +10 -0
- package/src/generators/preset/workspace-files-shared-operation-claims.js +59 -0
- package/src/generators/preset/workspace-files-stage-authority.d.ts +6 -0
- package/src/generators/preset/workspace-files-stage-authority.js +529 -0
- package/src/generators/preset/workspace-files-thin-deploy.d.ts +65 -0
- package/src/generators/preset/workspace-files-thin-deploy.js +2507 -0
- package/src/generators/preset/workspace-files-thin-docs.d.ts +7 -0
- package/src/generators/preset/workspace-files-thin-docs.js +370 -0
- package/src/generators/preset/workspace-files-thin-release.d.ts +14 -0
- package/src/generators/preset/workspace-files-thin-release.js +26 -0
- package/src/generators/preset/workspace-files-workload-role-baseline.js +254 -42
- package/src/generators/preset/workspace-files.d.ts +18 -2
- package/src/generators/preset/workspace-files.js +1525 -609
- package/src/generators/repository-policy/repository-policy.js +235 -5
- package/src/generators/repository-policy/schema.d.ts +10 -0
- package/src/generators/repository-policy/schema.json +80 -4
- package/src/generators/repository-policy/tree-policy.d.ts +3 -0
- package/src/generators/repository-policy/tree-policy.js +25 -0
- package/src/generators/slice/built-in-plan-api-contract-files.js +49 -11
- package/src/generators/slice/built-in-plan-api-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-api-files.js +130 -414
- package/src/generators/slice/built-in-plan-async-work-files.js +166 -1969
- package/src/generators/slice/built-in-plan-authorization-files.js +102 -334
- package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js +975 -233
- package/src/generators/slice/built-in-plan-authorization-storage.d.ts +3 -0
- package/src/generators/slice/built-in-plan-authorization-storage.js +119 -0
- package/src/generators/slice/built-in-plan-background-work-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-background-work-files.js +99 -0
- package/src/generators/slice/built-in-plan-data-deletion-files.js +2 -830
- package/src/generators/slice/built-in-plan-data-export-infrastructure-files.js +5 -31
- package/src/generators/slice/built-in-plan-data-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-data-files.js +176 -1200
- package/src/generators/slice/built-in-plan-data-lifecycle-files.js +53 -28
- package/src/generators/slice/built-in-plan-data-lifecycle-runtime-files.js +37 -2
- package/src/generators/slice/built-in-plan-data-retention-job-files.js +7 -2443
- package/src/generators/slice/built-in-plan-data-retention-launcher-files.js +50 -8
- package/src/generators/slice/built-in-plan-data-rights-files.js +6 -4482
- package/src/generators/slice/built-in-plan-database-lifecycle-files.js +44 -25
- package/src/generators/slice/built-in-plan-database-retirement-rehearsal-files.js +25 -2
- package/src/generators/slice/built-in-plan-foundation-files.d.ts +2 -1
- package/src/generators/slice/built-in-plan-foundation-files.js +39 -18
- package/src/generators/slice/built-in-plan-frontend-files.js +14 -3
- package/src/generators/slice/built-in-plan-infrastructure-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-infrastructure-files.js +933 -730
- package/src/generators/slice/built-in-plan-infrastructure-safety-files.js +75 -14
- package/src/generators/slice/built-in-plan-key-value-cleanup.d.ts +4 -0
- package/src/generators/slice/built-in-plan-key-value-cleanup.js +100 -0
- package/src/generators/slice/built-in-plan-key-value-consumer.d.ts +4 -0
- package/src/generators/slice/built-in-plan-key-value-consumer.js +151 -0
- package/src/generators/slice/built-in-plan-key-value-deletion.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-deletion.js +377 -0
- package/src/generators/slice/built-in-plan-key-value-delivery.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-delivery.js +137 -0
- package/src/generators/slice/built-in-plan-key-value-export.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-export.js +595 -0
- package/src/generators/slice/built-in-plan-key-value-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-files.js +31 -0
- package/src/generators/slice/built-in-plan-key-value-holds.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-holds.js +189 -0
- package/src/generators/slice/built-in-plan-key-value-infrastructure.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-infrastructure.js +102 -0
- package/src/generators/slice/built-in-plan-key-value-performance.d.ts +5 -0
- package/src/generators/slice/built-in-plan-key-value-performance.js +530 -0
- package/src/generators/slice/built-in-plan-key-value-provider.d.ts +4 -0
- package/src/generators/slice/built-in-plan-key-value-provider.js +366 -0
- package/src/generators/slice/built-in-plan-key-value-records.d.ts +3 -0
- package/src/generators/slice/built-in-plan-key-value-records.js +232 -0
- package/src/generators/slice/built-in-plan-key-value-retention-infrastructure.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-retention-infrastructure.js +103 -0
- package/src/generators/slice/built-in-plan-key-value-retention-job-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-retention-job-files.js +160 -0
- package/src/generators/slice/built-in-plan-key-value-retention-maintenance.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-retention-maintenance.js +329 -0
- package/src/generators/slice/built-in-plan-key-value-retention-worker.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-retention-worker.js +477 -0
- package/src/generators/slice/built-in-plan-key-value-retention.d.ts +2 -0
- package/src/generators/slice/built-in-plan-key-value-retention.js +184 -0
- package/src/generators/slice/built-in-plan-metadata-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-metadata-files.js +159 -29
- package/src/generators/slice/built-in-plan-native-runtime-authority-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-native-runtime-authority-files.js +324 -0
- package/src/generators/slice/built-in-plan-operations-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-operations-files.js +585 -97
- package/src/generators/slice/built-in-plan-performance-files.d.ts +2 -1
- package/src/generators/slice/built-in-plan-performance-files.js +220 -1074
- package/src/generators/slice/built-in-plan-project-files.js +141 -135
- package/src/generators/slice/built-in-plan-release-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-release-files.js +310 -70
- package/src/generators/slice/built-in-plan-reliability-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-reliability-files.js +283 -44
- package/src/generators/slice/built-in-plan-secret-runtime-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-secret-runtime-files.js +87 -76
- package/src/generators/slice/built-in-plan-shared.d.ts +4 -2
- package/src/generators/slice/built-in-plan-shared.js +41 -19
- package/src/generators/slice/built-in-plan-sql-events.d.ts +2 -0
- package/src/generators/slice/built-in-plan-sql-events.js +276 -0
- package/src/generators/slice/built-in-plan-testing-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-testing-files.js +304 -172
- package/src/generators/slice/built-in-plan-testing-persistence-event-files.d.ts +7 -0
- package/src/generators/slice/built-in-plan-testing-persistence-event-files.js +487 -0
- package/src/generators/slice/built-in-plan-testing-persistence-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-testing-persistence-files.js +180 -0
- package/src/generators/slice/built-in-plan-thin-release-files.d.ts +11 -0
- package/src/generators/slice/built-in-plan-thin-release-files.js +162 -0
- package/src/generators/slice/built-in-plan-verification-files.js +76 -2
- package/src/generators/slice/built-in-plan-web-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-web-files.js +223 -16
- package/src/generators/slice/built-in-plan-workload-role-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-workload-role-files.js +143 -279
- package/src/generators/slice/built-in-plan.d.ts +11 -1
- package/src/generators/slice/built-in-plan.js +83 -30
- package/src/generators/slice/data-policy-review-seed.d.ts +2 -0
- package/src/generators/slice/data-policy-review-seed.js +22 -0
- package/src/generators/slice/deployed-smoke-readiness.d.ts +2 -0
- package/src/generators/slice/deployed-smoke-readiness.js +214 -0
- package/src/generators/slice/local-source-identity.d.ts +2 -0
- package/src/generators/slice/local-source-identity.js +31 -0
- package/src/generators/slice/persistence-contract.d.ts +14 -0
- package/src/generators/slice/persistence-contract.js +32 -0
- package/src/generators/slice/slice.js +61 -50
- package/src/generators/sql/schema.d.ts +7 -0
- package/src/generators/sql/schema.json +38 -0
- package/src/generators/sql/sql.d.ts +6 -0
- package/src/generators/sql/sql.js +53 -0
- package/src/generators/upgrade/sql-seeded-reconciliation.d.ts +2 -0
- package/src/generators/upgrade/sql-seeded-reconciliation.js +170 -0
- package/src/generators/upgrade/upgrade.d.ts +15 -1
- package/src/generators/upgrade/upgrade.js +435 -44
- package/src/generators/workload/frozen-container.d.ts +1 -1
- package/src/generators/workload/performance-registration.d.ts +1 -0
- package/src/generators/workload/performance-registration.js +9 -11
- package/src/generators/workload/service-performance-files.d.ts +1 -0
- package/src/generators/workload/service-performance-files.js +27 -7
- package/src/generators/workload/workload.d.ts +1 -1
- package/src/generators/workload/workload.js +105 -29
- package/src/git-policy/action-pins.d.ts +5 -0
- package/src/git-policy/action-pins.js +5 -0
- package/src/git-policy/github-bootstrap.d.ts +48 -8
- package/src/git-policy/github-bootstrap.js +344 -176
- package/src/git-policy/routing.d.ts +7 -1
- package/src/git-policy/routing.js +62 -1
- package/src/index.d.ts +1 -0
- package/src/index.js +1 -0
- package/src/infrastructure-change/local-capability.d.ts +73 -0
- package/src/infrastructure-change/local-capability.js +114 -0
- package/src/infrastructure-change/model.d.ts +25 -4
- package/src/infrastructure-change/model.js +1 -0
- package/src/infrastructure-change/normalize.d.ts +4 -0
- package/src/infrastructure-change/normalize.js +47 -7
- package/src/infrastructure-change/plan.d.ts +30 -3
- package/src/infrastructure-change/plan.js +323 -13
- package/src/infrastructure-change/risk.d.ts +3 -1
- package/src/infrastructure-change/risk.js +96 -16
- package/src/local-dev/browser-verification.d.ts +37 -0
- package/src/local-dev/browser-verification.js +281 -0
- package/src/local-dev/contracts.d.ts +10 -1
- package/src/local-dev/contracts.js +114 -13
- package/src/local-dev/dev-command-core.js +24 -5
- package/src/local-dev/docker-credential-health.d.ts +14 -0
- package/src/local-dev/docker-credential-health.js +94 -0
- package/src/local-dev/environment-inspector.d.ts +7 -0
- package/src/local-dev/environment-inspector.js +42 -15
- package/src/local-dev/environment-state.js +2 -2
- package/src/local-dev/errors.d.ts +1 -1
- package/src/local-dev/errors.js +2 -0
- package/src/local-dev/fleet-client.js +2 -2
- package/src/local-dev/fleet-configuration.js +57 -25
- package/src/local-dev/fleet-inventory.js +58 -22
- package/src/local-dev/fleet-ipc.d.ts +7 -0
- package/src/local-dev/fleet-ipc.js +14 -2
- package/src/local-dev/fleet-launcher.d.ts +6 -0
- package/src/local-dev/fleet-launcher.js +16 -4
- package/src/local-dev/fleet-logs.js +50 -22
- package/src/local-dev/fleet-process.d.ts +20 -1
- package/src/local-dev/fleet-process.js +197 -41
- package/src/local-dev/fleet-runner-evidence.d.ts +5 -0
- package/src/local-dev/fleet-runner-evidence.js +56 -0
- package/src/local-dev/fleet-runtime.js +268 -229
- package/src/local-dev/fleet-session.d.ts +2 -0
- package/src/local-dev/fleet-session.js +28 -11
- package/src/local-dev/fleet-slice-runner-daemon.js +4 -0
- package/src/local-dev/fleet-state.d.ts +5 -2
- package/src/local-dev/fleet-state.js +25 -4
- package/src/local-dev/fleet-supervisor.d.ts +3 -0
- package/src/local-dev/fleet-supervisor.js +66 -11
- package/src/local-dev/fleet-web-start.d.ts +12 -0
- package/src/local-dev/fleet-web-start.js +48 -0
- package/src/local-dev/identity.js +3 -14
- package/src/local-dev/index.d.ts +1 -0
- package/src/local-dev/index.js +1 -0
- package/src/local-dev/native-completion.d.ts +9 -0
- package/src/local-dev/native-completion.js +130 -0
- package/src/local-dev/nx-workspace.d.ts +4 -2
- package/src/local-dev/nx-workspace.js +11 -6
- package/src/local-dev/personal-stage.d.ts +4 -5
- package/src/local-dev/personal-stage.js +6 -54
- package/src/local-dev/port-claims.d.ts +13 -0
- package/src/local-dev/port-claims.js +46 -0
- package/src/local-dev/ports.d.ts +14 -2
- package/src/local-dev/ports.js +78 -3
- package/src/local-dev/private-state.d.ts +11 -0
- package/src/local-dev/private-state.js +146 -40
- package/src/local-dev/process-group.d.ts +4 -0
- package/src/local-dev/process-group.js +29 -0
- package/src/local-dev/process-identity.d.ts +8 -0
- package/src/local-dev/process-identity.js +31 -1
- package/src/local-dev/proxy.js +11 -12
- package/src/local-dev/runtime-paths.js +1 -1
- package/src/local-dev/slice-claim.js +1 -1
- package/src/local-dev/slice-runner.d.ts +15 -6
- package/src/local-dev/slice-runner.js +189 -54
- package/src/local-dev/task-attachment.d.ts +17 -0
- package/src/local-dev/task-attachment.js +73 -0
- package/src/local-dev/task-authority.d.ts +10 -0
- package/src/local-dev/task-authority.js +27 -0
- package/src/local-dev/task-identity.d.ts +33 -0
- package/src/local-dev/task-identity.js +418 -0
- package/src/local-dev/task-native-writer.d.ts +18 -0
- package/src/local-dev/task-native-writer.js +329 -0
- package/src/local-dev/tls.js +8 -2
- package/src/local-dev/web-launch.d.ts +9 -0
- package/src/local-dev/web-launch.js +130 -0
- package/src/ownership/composition.d.ts +2 -1
- package/src/ownership/composition.js +1 -0
- package/src/performance/cost-collection.d.ts +1 -1
- package/src/performance/cost-collection.js +4 -2
- package/src/performance/cost-controls.d.ts +8 -4
- package/src/performance/cost-controls.js +39 -28
- package/src/performance/evidence.d.ts +1 -1
- package/src/performance/evidence.js +5 -3
- package/src/performance/load-safety.js +5 -3
- package/src/performance/model.d.ts +4 -4
- package/src/performance/model.js +4 -5
- package/src/performance/scenario.d.ts +22 -0
- package/src/performance/scenario.js +100 -92
- package/src/release/index.d.ts +0 -2
- package/src/release/index.js +0 -2
- package/src/release/source-authority.d.ts +5 -5
- package/src/release/source-authority.js +141 -124
- package/src/repository-policy/aurora-preflight.d.ts +1 -1
- package/src/repository-policy/aurora-preflight.js +4 -1
- package/src/repository-policy/capacity-migration.d.ts +3 -0
- package/src/repository-policy/capacity-migration.js +21 -0
- package/src/repository-policy/deployment-plan.d.ts +4 -1
- package/src/repository-policy/deployment-plan.js +9 -0
- package/src/repository-policy/foundation-profile.js +10 -1
- package/src/repository-policy/policy.d.ts +57 -3
- package/src/repository-policy/policy.js +497 -11
- package/src/schemas/blueprint-v1.json +5 -4
- package/src/schemas/foundation-requirement-v1.json +5 -4
- package/src/schemas/performance-policy-v1.json +3 -3
- package/src/schemas/repository-policy-v1.json +130 -6
- package/src/schemas/testing-evidence-result-v1.json +1 -1
- package/src/secrets/adapters.d.ts +7 -2
- package/src/secrets/adapters.js +34 -3
- package/src/secrets/aws-control-plane.d.ts +10 -1
- package/src/secrets/aws-control-plane.js +67 -0
- package/src/secrets/generated-aws-control-plane.d.ts +23 -0
- package/src/secrets/generated-aws-control-plane.js +259 -0
- package/src/secrets/metadata.js +38 -10
- package/src/secrets/model.d.ts +8 -1
- package/src/secrets/model.js +24 -3
- package/src/secrets/operator.d.ts +91 -3
- package/src/secrets/operator.js +463 -13
- package/src/secrets/personal-command.d.ts +18 -2
- package/src/secrets/personal-command.js +66 -12
- package/src/secrets/registry.d.ts +2 -1
- package/src/secrets/registry.js +18 -1
- package/src/secrets/verification.js +15 -2
- package/src/secrets/workload-access.js +10 -2
- package/src/sst-environment-source-format.d.ts +6 -0
- package/src/sst-environment-source-format.js +199 -0
- package/src/supply-chain/action-pins.js +61 -7
- package/src/supply-chain/blueprint-trust-git.js +85 -24
- package/src/supply-chain/blueprint-verification-authority.js +55 -3
- package/src/supply-chain/build-output-bounds.d.ts +2 -0
- package/src/supply-chain/build-output-bounds.js +12 -0
- package/src/supply-chain/build-output.d.ts +7 -1
- package/src/supply-chain/build-output.js +177 -24
- package/src/supply-chain/ecr-scanning.d.ts +5 -3
- package/src/supply-chain/ecr-scanning.js +11 -7
- package/src/supply-chain/ecs-deployed-image.d.ts +5 -3
- package/src/supply-chain/ecs-deployed-image.js +6 -4
- package/src/supply-chain/generated-blueprint-trust-command.js +18 -1
- package/src/supply-chain/generated-command.js +1 -0
- package/src/supply-chain/generated-container-release-command.js +1285 -124
- package/src/supply-chain/generated-ecr-collector-command.d.ts +0 -1
- package/src/supply-chain/generated-ecr-collector-command.js +200 -93
- package/src/supply-chain/generated-files.js +25 -14
- package/src/supply-chain/generated-scanner-command.js +2 -1
- package/src/supply-chain/index.d.ts +1 -1
- package/src/supply-chain/index.js +2 -1
- package/src/supply-chain/sbom.d.ts +1 -1
- package/src/supply-chain/sbom.js +30 -5
- package/src/supply-chain/scanner.js +3 -0
- package/src/testing-evidence/fixture-scope.d.ts +2 -1
- package/src/testing-evidence/fixture-scope.js +4 -2
- package/src/testing-evidence/result.d.ts +2 -1
- package/src/testing-evidence/result.js +18 -4
- package/src/workload-roles/account-baseline.d.ts +11 -0
- package/src/workload-roles/account-baseline.js +253 -16
- package/src/workload-roles/authority.d.ts +3 -1
- package/src/workload-roles/authority.js +48 -2
- package/src/workload-roles/aws-s3-state.js +27 -0
- package/src/workload-roles/boundary.d.ts +2 -1
- package/src/workload-roles/boundary.js +9 -2
- package/src/workload-roles/handler.js +52 -24
- package/src/workload-roles/index.d.ts +10 -17
- package/src/workload-roles/index.js +5 -18
- package/src/workload-roles/injection.js +1 -1
- package/src/workload-roles/provisioner.js +12 -4
- package/src/workload-roles/registration.d.ts +1 -0
- package/src/workload-roles/registration.js +5 -0
- package/src/workload-roles/stage-boundary.js +1 -1
- package/src/workload-roles/standard-slice.js +3 -3
- package/src/workspace-deployment/affected-lifecycle.d.ts +53 -0
- package/src/workspace-deployment/affected-lifecycle.js +84 -0
- package/src/workspace-deployment/identity.d.ts +3 -0
- package/src/workspace-deployment/identity.js +22 -0
- package/src/workspace-deployment/index.d.ts +4 -0
- package/src/workspace-deployment/index.js +8 -0
- package/src/workspace-deployment/migration-evidence.d.ts +29 -0
- package/src/workspace-deployment/migration-evidence.js +83 -0
- package/src/workspace-deployment/migration.d.ts +27 -0
- package/src/workspace-deployment/migration.js +109 -0
- package/src/workspace-deployment/ownership.d.ts +81 -0
- package/src/workspace-deployment/ownership.js +381 -0
- package/src/api-contract/baseline-update.js.map +0 -1
- package/src/api-contract/compatibility.js.map +0 -1
- package/src/api-contract/contract-graph.js.map +0 -1
- package/src/api-contract/evidence.js.map +0 -1
- package/src/api-contract/index.js.map +0 -1
- package/src/api-contract/model.fixtures.d.ts +0 -2
- package/src/api-contract/model.fixtures.js +0 -81
- package/src/api-contract/model.fixtures.js.map +0 -1
- package/src/api-contract/model.js.map +0 -1
- package/src/api-contract/rollout.js.map +0 -1
- package/src/authorization/compatibility.js.map +0 -1
- package/src/authorization/index.js.map +0 -1
- package/src/blueprints/execution.js.map +0 -1
- package/src/blueprints/external-sandbox.js.map +0 -1
- package/src/blueprints/index.js.map +0 -1
- package/src/blueprints/inputs.js.map +0 -1
- package/src/blueprints/manifest.js.map +0 -1
- package/src/blueprints/resolver.js.map +0 -1
- package/src/blueprints/transitions.js.map +0 -1
- package/src/cli/agent-command.js.map +0 -1
- package/src/cli/agent-runtime.js.map +0 -1
- package/src/cli/blueprint-authority.js.map +0 -1
- package/src/cli/blueprint-command.js.map +0 -1
- package/src/cli/bootstrap.js.map +0 -1
- package/src/cli/dev-command.js.map +0 -1
- package/src/cli/main.js.map +0 -1
- package/src/cli/output.js.map +0 -1
- package/src/cli/personal-secret-runtime.js.map +0 -1
- package/src/cli/secret-terminal.js.map +0 -1
- package/src/container-images.js.map +0 -1
- package/src/data-lifecycle/index.js.map +0 -1
- package/src/data-lifecycle/model.fixtures.d.ts +0 -2
- package/src/data-lifecycle/model.fixtures.js +0 -244
- package/src/data-lifecycle/model.fixtures.js.map +0 -1
- package/src/data-lifecycle/model.js.map +0 -1
- package/src/data-lifecycle/sensitive-artifacts.js.map +0 -1
- package/src/data-lifecycle/validation.js.map +0 -1
- package/src/database-retirement/contract.js.map +0 -1
- package/src/database-retirement/index.js.map +0 -1
- package/src/deterministic-order.js.map +0 -1
- package/src/developer-agent/context.js.map +0 -1
- package/src/developer-agent/generator-planning.js.map +0 -1
- package/src/developer-agent/generator-preview.js.map +0 -1
- package/src/developer-agent/git-inspection.js.map +0 -1
- package/src/developer-agent/handoff.js.map +0 -1
- package/src/developer-agent/index.js.map +0 -1
- package/src/developer-agent/model.js.map +0 -1
- package/src/developer-agent/operation-registry.js.map +0 -1
- package/src/developer-agent/ordering.js.map +0 -1
- package/src/developer-agent/planning.js.map +0 -1
- package/src/developer-agent/preview-changes.js.map +0 -1
- package/src/developer-agent/preview-source.js.map +0 -1
- package/src/developer-agent/validation.js.map +0 -1
- package/src/developer-agent/workspace-inspection.js.map +0 -1
- package/src/developer-agent/workspace-path.js.map +0 -1
- package/src/executors/blueprint-trust/blueprint-trust.js.map +0 -1
- package/src/executors/blueprint-verification/blueprint-verification.js.map +0 -1
- package/src/executors/deploy/deploy.js.map +0 -1
- package/src/executors/deployment-plan/deployment-plan.js.map +0 -1
- package/src/executors/dev/dev.js.map +0 -1
- package/src/executors/dev-doctor/dev-doctor.js.map +0 -1
- package/src/executors/dev-setup/dev-setup.js.map +0 -1
- package/src/executors/developer-context/developer-context.js.map +0 -1
- package/src/executors/fleet/fleet.js.map +0 -1
- package/src/executors/foundation-preflight/foundation-preflight.js.map +0 -1
- package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js.map +0 -1
- package/src/executors/foundation-remove-preflight/foundation-remove-preflight.js.map +0 -1
- package/src/executors/github-bootstrap/github-bootstrap.js.map +0 -1
- package/src/executors/infrastructure-plan/infrastructure-plan.js.map +0 -1
- package/src/executors/refresh/refresh.js.map +0 -1
- package/src/executors/remove/remove.js.map +0 -1
- package/src/executors/secret-guardrails/secret-guardrails.js.map +0 -1
- package/src/executors/secret-metadata/secret-metadata.js.map +0 -1
- package/src/executors/sst-lifecycle/logging-preflight.js.map +0 -1
- package/src/executors/sst-lifecycle/run-sst-command.js.map +0 -1
- package/src/executors/sst-lifecycle/secret-preflight.js.map +0 -1
- package/src/executors/unlock/unlock.js.map +0 -1
- package/src/executors/work-markers/work-markers.js.map +0 -1
- package/src/foundation/discovery.js.map +0 -1
- package/src/foundation/index.js.map +0 -1
- package/src/foundation/local-database-contract.js.map +0 -1
- package/src/foundation/logging-preflight.js.map +0 -1
- package/src/foundation/logging.js.map +0 -1
- package/src/foundation/preflight.js.map +0 -1
- package/src/foundation/provision-database-bindings.js.map +0 -1
- package/src/foundation/provision-logical-database.js.map +0 -1
- package/src/foundation/requirements.js.map +0 -1
- package/src/foundation/router-origin-proof.js.map +0 -1
- package/src/foundation/stages.js.map +0 -1
- package/src/frontend-security/index.js.map +0 -1
- package/src/frontend-security/security-headers.js.map +0 -1
- package/src/generators/feature-registry.js.map +0 -1
- package/src/generators/function/function.js.map +0 -1
- package/src/generators/job/job.js.map +0 -1
- package/src/generators/logging-registry.js.map +0 -1
- package/src/generators/post-generation-install.js.map +0 -1
- package/src/generators/preset/generator.js.map +0 -1
- package/src/generators/preset/tool-versions.js.map +0 -1
- package/src/generators/preset/workspace-files-developer-agent.js.map +0 -1
- package/src/generators/preset/workspace-files-foundation-workload-roles.js.map +0 -1
- package/src/generators/preset/workspace-files-performance-cost.js.map +0 -1
- package/src/generators/preset/workspace-files-performance-load.js.map +0 -1
- package/src/generators/preset/workspace-files-workload-role-baseline.js.map +0 -1
- package/src/generators/preset/workspace-files.js.map +0 -1
- package/src/generators/repository-policy/repository-policy.js.map +0 -1
- package/src/generators/service/service.js.map +0 -1
- package/src/generators/slice/built-in-plan-api-contract-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-api-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-async-work-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-authorization-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-data-deletion-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-data-export-infrastructure-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-data-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-data-lifecycle-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-data-lifecycle-runtime-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-data-retention-job-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-data-retention-launcher-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-data-rights-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-database-lifecycle-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-database-retirement-rehearsal-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-foundation-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-frontend-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-infrastructure-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-infrastructure-safety-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-metadata-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-operations-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-performance-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-project-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-release-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-reliability-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-secret-runtime-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-shared.js.map +0 -1
- package/src/generators/slice/built-in-plan-testing-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-verification-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-web-files.js.map +0 -1
- package/src/generators/slice/built-in-plan-workload-role-files.js.map +0 -1
- package/src/generators/slice/built-in-plan.js.map +0 -1
- package/src/generators/slice/slice.js.map +0 -1
- package/src/generators/upgrade/upgrade.js.map +0 -1
- package/src/generators/workload/frozen-container.js.map +0 -1
- package/src/generators/workload/performance-registration.js.map +0 -1
- package/src/generators/workload/reliability-registration.js.map +0 -1
- package/src/generators/workload/service-performance-files.js.map +0 -1
- package/src/generators/workload/workload.js.map +0 -1
- package/src/git-policy/action-pins.js.map +0 -1
- package/src/git-policy/github-bootstrap.js.map +0 -1
- package/src/git-policy/index.js.map +0 -1
- package/src/git-policy/routing.js.map +0 -1
- package/src/index.js.map +0 -1
- package/src/infrastructure-change/convergence.js.map +0 -1
- package/src/infrastructure-change/drift.js.map +0 -1
- package/src/infrastructure-change/index.js.map +0 -1
- package/src/infrastructure-change/model.js.map +0 -1
- package/src/infrastructure-change/normalize.js.map +0 -1
- package/src/infrastructure-change/plan.js.map +0 -1
- package/src/infrastructure-change/risk.js.map +0 -1
- package/src/infrastructure-change/summary.js.map +0 -1
- package/src/local-dev/context-discovery.js.map +0 -1
- package/src/local-dev/contract-validation.js.map +0 -1
- package/src/local-dev/contracts.js.map +0 -1
- package/src/local-dev/control-contract.js.map +0 -1
- package/src/local-dev/dev-command-core.js.map +0 -1
- package/src/local-dev/effects.js.map +0 -1
- package/src/local-dev/environment-inspector.js.map +0 -1
- package/src/local-dev/environment-state.js.map +0 -1
- package/src/local-dev/errors.js.map +0 -1
- package/src/local-dev/fleet-client.js.map +0 -1
- package/src/local-dev/fleet-configuration.js.map +0 -1
- package/src/local-dev/fleet-inventory.js.map +0 -1
- package/src/local-dev/fleet-ipc.js.map +0 -1
- package/src/local-dev/fleet-launcher.js.map +0 -1
- package/src/local-dev/fleet-lock.js.map +0 -1
- package/src/local-dev/fleet-logs.js.map +0 -1
- package/src/local-dev/fleet-process.js.map +0 -1
- package/src/local-dev/fleet-runtime.js.map +0 -1
- package/src/local-dev/fleet-session.js.map +0 -1
- package/src/local-dev/fleet-slice-runner-daemon.js.map +0 -1
- package/src/local-dev/fleet-startup.js.map +0 -1
- package/src/local-dev/fleet-state.js.map +0 -1
- package/src/local-dev/fleet-supervisor-daemon.js.map +0 -1
- package/src/local-dev/fleet-supervisor.js.map +0 -1
- package/src/local-dev/gateway-daemon.js.map +0 -1
- package/src/local-dev/gateway.js.map +0 -1
- package/src/local-dev/identity.js.map +0 -1
- package/src/local-dev/index.js.map +0 -1
- package/src/local-dev/local-context.js.map +0 -1
- package/src/local-dev/nx-workspace.js.map +0 -1
- package/src/local-dev/personal-secret-ledger.js.map +0 -1
- package/src/local-dev/personal-stage.js.map +0 -1
- package/src/local-dev/portless.js.map +0 -1
- package/src/local-dev/ports.js.map +0 -1
- package/src/local-dev/private-state.js.map +0 -1
- package/src/local-dev/process-identity.js.map +0 -1
- package/src/local-dev/proxy.js.map +0 -1
- package/src/local-dev/runtime-paths.js.map +0 -1
- package/src/local-dev/secret-slice-claim.js.map +0 -1
- package/src/local-dev/slice-claim.js.map +0 -1
- package/src/local-dev/slice-runner.js.map +0 -1
- package/src/local-dev/tls.js.map +0 -1
- package/src/ownership/composition.js.map +0 -1
- package/src/ownership/foundation-record.js.map +0 -1
- package/src/ownership/hash.js.map +0 -1
- package/src/ownership/index.js.map +0 -1
- package/src/ownership/json-ownership.js.map +0 -1
- package/src/ownership/record.js.map +0 -1
- package/src/ownership/workspace-record.js.map +0 -1
- package/src/performance/cost-collection.js.map +0 -1
- package/src/performance/cost-controls.js.map +0 -1
- package/src/performance/evidence.js.map +0 -1
- package/src/performance/index.js.map +0 -1
- package/src/performance/load-safety.js.map +0 -1
- package/src/performance/model.js.map +0 -1
- package/src/performance/pr-artifact-budget.js.map +0 -1
- package/src/performance/runner.js.map +0 -1
- package/src/performance/scenario-endpoint.js.map +0 -1
- package/src/performance/scenario.js.map +0 -1
- package/src/performance/test-fixtures.d.ts +0 -7
- package/src/performance/test-fixtures.js +0 -169
- package/src/performance/test-fixtures.js.map +0 -1
- package/src/performance/unit-cost.js.map +0 -1
- package/src/release/index.js.map +0 -1
- package/src/release/lifecycle.js.map +0 -1
- package/src/release/manifest.js.map +0 -1
- package/src/release/rollout.js.map +0 -1
- package/src/release/source-authority.js.map +0 -1
- package/src/repository-policy/aurora-preflight.js.map +0 -1
- package/src/repository-policy/deployment-plan.js.map +0 -1
- package/src/repository-policy/foundation-profile.js.map +0 -1
- package/src/repository-policy/index.js.map +0 -1
- package/src/repository-policy/policy.js.map +0 -1
- package/src/secrets/adapters.js.map +0 -1
- package/src/secrets/aws-control-plane.js.map +0 -1
- package/src/secrets/declaration-verification.js.map +0 -1
- package/src/secrets/guardrails.js.map +0 -1
- package/src/secrets/index.js.map +0 -1
- package/src/secrets/metadata.js.map +0 -1
- package/src/secrets/model.js.map +0 -1
- package/src/secrets/operator.js.map +0 -1
- package/src/secrets/permissions.js.map +0 -1
- package/src/secrets/personal-command.js.map +0 -1
- package/src/secrets/personal-ledger.js.map +0 -1
- package/src/secrets/registry.js.map +0 -1
- package/src/secrets/verification.js.map +0 -1
- package/src/secrets/workload-access.js.map +0 -1
- package/src/supply-chain/action-pins.js.map +0 -1
- package/src/supply-chain/blueprint-trust-git.js.map +0 -1
- package/src/supply-chain/blueprint-trust-process.js.map +0 -1
- package/src/supply-chain/blueprint-trust.js.map +0 -1
- package/src/supply-chain/blueprint-verification-authority.js.map +0 -1
- package/src/supply-chain/blueprint-verification-execution.js.map +0 -1
- package/src/supply-chain/build-output.js.map +0 -1
- package/src/supply-chain/common.js.map +0 -1
- package/src/supply-chain/container-artifact-contract.js.map +0 -1
- package/src/supply-chain/container-release.js.map +0 -1
- package/src/supply-chain/ecr-applicability.js.map +0 -1
- package/src/supply-chain/ecr-scanning.js.map +0 -1
- package/src/supply-chain/ecs-deployed-image.js.map +0 -1
- package/src/supply-chain/errors.js.map +0 -1
- package/src/supply-chain/generated-blueprint-trust-command.js.map +0 -1
- package/src/supply-chain/generated-command.js.map +0 -1
- package/src/supply-chain/generated-container-release-command.js.map +0 -1
- package/src/supply-chain/generated-ecr-collector-command.js.map +0 -1
- package/src/supply-chain/generated-files.js.map +0 -1
- package/src/supply-chain/generated-scanner-command.js.map +0 -1
- package/src/supply-chain/index.js.map +0 -1
- package/src/supply-chain/inventory.js.map +0 -1
- package/src/supply-chain/license-expression.js.map +0 -1
- package/src/supply-chain/pnpm-toolchain-authority.js.map +0 -1
- package/src/supply-chain/policy.js.map +0 -1
- package/src/supply-chain/publication.js.map +0 -1
- package/src/supply-chain/sbom.js.map +0 -1
- package/src/supply-chain/scanner.js.map +0 -1
- package/src/supply-chain/vendored-source.js.map +0 -1
- package/src/testing-evidence/fixture-scope.js.map +0 -1
- package/src/testing-evidence/index.js.map +0 -1
- package/src/testing-evidence/quarantine.js.map +0 -1
- package/src/testing-evidence/result.js.map +0 -1
- package/src/testing-evidence/runner-adapter.js.map +0 -1
- package/src/testing-evidence/sensitive-artifacts.js.map +0 -1
- package/src/validation.js.map +0 -1
- package/src/work-markers/index.js.map +0 -1
- package/src/work-markers/work-markers.js.map +0 -1
- package/src/workload-roles/account-baseline.js.map +0 -1
- package/src/workload-roles/authority.js.map +0 -1
- package/src/workload-roles/aws-adapter.js.map +0 -1
- package/src/workload-roles/aws-internal-handler.js.map +0 -1
- package/src/workload-roles/aws-s3-state.js.map +0 -1
- package/src/workload-roles/aws-sdk-control-plane.js.map +0 -1
- package/src/workload-roles/boundary.js.map +0 -1
- package/src/workload-roles/convergence.js.map +0 -1
- package/src/workload-roles/effective-policy.js.map +0 -1
- package/src/workload-roles/handler.js.map +0 -1
- package/src/workload-roles/history.js.map +0 -1
- package/src/workload-roles/index.js.map +0 -1
- package/src/workload-roles/injection.js.map +0 -1
- package/src/workload-roles/manifest.js.map +0 -1
- package/src/workload-roles/provisioner.js.map +0 -1
- package/src/workload-roles/registration.js.map +0 -1
- package/src/workload-roles/stage-boundary.js.map +0 -1
- package/src/workload-roles/standard-slice.js.map +0 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type DeploymentProfile } from '../../repository-policy/index.js';
|
|
2
|
+
export declare function renderThinLifecycleDocumentation(options: {
|
|
3
|
+
deliveryLane?: 'protected-pair' | 'trunk';
|
|
4
|
+
productionApprovalMode?: 'promotion-pr' | 'environment-reviewer' | 'trunk-promotion';
|
|
5
|
+
deploymentProfile: DeploymentProfile;
|
|
6
|
+
name: string;
|
|
7
|
+
}): Readonly<Record<string, string>>;
|
|
@@ -0,0 +1,370 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderThinLifecycleDocumentation = renderThinLifecycleDocumentation;
|
|
4
|
+
const index_js_1 = require("../../repository-policy/index.js");
|
|
5
|
+
function renderThinLifecycleDocumentation(options) {
|
|
6
|
+
const stages = (0, index_js_1.activeDeploymentStages)(options.deploymentProfile);
|
|
7
|
+
const stageList = stages.join(', ');
|
|
8
|
+
const rehearsalStage = (0, index_js_1.productionRehearsalStage)(options.deploymentProfile);
|
|
9
|
+
return {
|
|
10
|
+
'README.md': `# ${options.name}
|
|
11
|
+
|
|
12
|
+
This repository follows the Empire Builder Kit thin SST paved road. Nx owns
|
|
13
|
+
generation, ordering, identity checks, migrations, smoke tests, and receipts;
|
|
14
|
+
SST 4.17.1 owns application bootstrap, state, locks, previews, deployment,
|
|
15
|
+
refresh, removal, and provider diagnostics.
|
|
16
|
+
|
|
17
|
+
The committed \`${options.deploymentProfile}\` profile activates: ${stageList}.
|
|
18
|
+
|
|
19
|
+
For ordinary feature work, run affected tests, typecheck, lint, and ownership
|
|
20
|
+
checks. Run \`pnpm verify\` at a milestone, not before each development edit.
|
|
21
|
+
Configure the exact temporary AWS profile and stage deployment role described
|
|
22
|
+
in \`docs/stage-deployment-authority.md\` before deploying development through
|
|
23
|
+
\`ebk deploy development --profile=<profile> --expectedRoleArn=<role-arn>\`
|
|
24
|
+
(the root \`deploy-local\` target). The profile is the human's IAM Identity
|
|
25
|
+
Center profile, typically the one saved by \`ebk dev configure\`. When
|
|
26
|
+
\`ebk dev doctor\` reports the session expired or missing, an attended coding
|
|
27
|
+
agent (local or hosted) may run \`aws sso login --profile <profile>\`; the
|
|
28
|
+
human approves the request in the browser, so the session stays the human's
|
|
29
|
+
own identity. In a hosted or headless shell, add \`--use-device-code\` and the
|
|
30
|
+
human approves the printed code from their own browser. Confirm
|
|
31
|
+
\`aws sts get-caller-identity\` reports that identity before continuing.
|
|
32
|
+
Never embed access keys, export, copy, or read credentials from the SSO cache,
|
|
33
|
+
or assume a separate or stronger principal. Do not invoke SST directly.
|
|
34
|
+
|
|
35
|
+
Slice \`verify\` runs \`test-integration\`, which needs a running Docker engine
|
|
36
|
+
for DynamoDB Local (and PostgreSQL when SQL is declared).
|
|
37
|
+
`,
|
|
38
|
+
'docs/git-workflow.md': `# Protected Git workflow
|
|
39
|
+
|
|
40
|
+
${options.deliveryLane === 'trunk'
|
|
41
|
+
? `Trunk delivery lane: \`main\` is the only protected branch. Ordinary work
|
|
42
|
+
opens a pull request to \`main\` from an up-to-date branch, and every merged
|
|
43
|
+
\`main\` push is a production delivery through the generated Verify and deploy
|
|
44
|
+
workflows. There is no \`develop\` branch, promotion pull request, or sync-back.
|
|
45
|
+
Switch to the protected pair with
|
|
46
|
+
\`pnpm nx g @empire-builder-kit/nx:repository-policy --deliveryLane=protected-pair --apply\`
|
|
47
|
+
followed by the managed upgrade when the team needs a staged promotion.`
|
|
48
|
+
: `Ordinary work targets \`develop\`; production promotion is an exact reviewed
|
|
49
|
+
\`develop\` to \`main\` merge followed by the managed sync-back.`} Keep the
|
|
50
|
+
generated branch rules, CODEOWNER review, resolved-conversation requirement,
|
|
51
|
+
merge-only history, and read-only default workflow permissions.
|
|
52
|
+
|
|
53
|
+
The managed \`Deploy\` workflow is the single protected infrastructure path.
|
|
54
|
+
It derives the canonical stage deployment-role ARN from committed account,
|
|
55
|
+
stage, Region-partition, and naming policy; the GitHub environment supplies no
|
|
56
|
+
deployment-role secret. It invokes the same root Nx lifecycle used locally,
|
|
57
|
+
runs migrations and Slice smoke checks after each successful native SST
|
|
58
|
+
deployment, and retains one bounded deployment receipt.
|
|
59
|
+
For isolated profiles, the protected-branch \`Verify\` run calls the reusable
|
|
60
|
+
\`Deploy\` workflow only after acceptance and its immutable candidate succeed.
|
|
61
|
+
The call binds the exact source commit, branch ref, run, and attempt, consumes
|
|
62
|
+
artifacts from that same run, and rechecks the live protected-branch tip before
|
|
63
|
+
AWS authority. A verified history-only sync skips both candidate creation and
|
|
64
|
+
the deployment call. Manual recovery remains an explicit workflow dispatch.
|
|
65
|
+
There is no second deployed-smoke workflow, staging-evidence workflow,
|
|
66
|
+
reliability-read workflow, preview approval artifact, or plan role.
|
|
67
|
+
|
|
68
|
+
For \`starter\`, GitHub deployment is optional. \`production-isolated\` permits
|
|
69
|
+
local staging, but its protected production promotion requires the candidate
|
|
70
|
+
receipt from a successful managed GitHub staging deployment. \`fully-isolated\`
|
|
71
|
+
uses GitHub for staging and production. Isolated production restores the exact
|
|
72
|
+
candidate recorded by the successful staging deployment.
|
|
73
|
+
${options.deliveryLane === 'trunk'
|
|
74
|
+
? `In the trunk lane every merged \`main\` push calls the deploy workflow for
|
|
75
|
+
production; development stays a local stage.`
|
|
76
|
+
: `When \`starter\` uses its optional manual workflow, \`develop\` routes to
|
|
77
|
+
development and \`main\` routes to production; starter has no automatic caller.`}
|
|
78
|
+
${options.productionApprovalMode === 'trunk-promotion'
|
|
79
|
+
? `Trunk promotion (\`productionApproval.mode: trunk-promotion\`): a successful
|
|
80
|
+
staging lifecycle on \`develop\` continues in the same run. \`promote-production\`
|
|
81
|
+
binds that run's staging deployment receipt and release candidate and promotes
|
|
82
|
+
the reviewed OCI indexes into production, \`execute-production\` deploys
|
|
83
|
+
production from the same candidate under the production environment, and
|
|
84
|
+
\`record-main\` fast-forwards \`main\` to the deployed commit with the production
|
|
85
|
+
environment secret \`EBK_RECORD_MAIN_TOKEN\`, refusing any non-fast-forward
|
|
86
|
+
update. \`main\` keeps deletion, non-fast-forward, and status-check rules but no
|
|
87
|
+
pull-request rule; the develop ruleset keeps CODEOWNER review. A \`main\` push
|
|
88
|
+
verifies only and there is no sync-back. Switch back with
|
|
89
|
+
\`pnpm nx g @empire-builder-kit/nx:repository-policy --productionApprovalMode=promotion-pr --apply\`
|
|
90
|
+
followed by the managed upgrade and a GitHub bootstrap apply.
|
|
91
|
+
`
|
|
92
|
+
: ''}Every protected job checks out an immutable commit, validates managed source,
|
|
93
|
+
and assumes the derived stage role through the matching GitHub environment.
|
|
94
|
+
The reusable Verify caller delegates job-scoped \`id-token: write\`; each
|
|
95
|
+
credential-bearing job proves both the configured canonical ARN and terminal
|
|
96
|
+
STS assumed-role caller immediately before OCI or lifecycle mutation.
|
|
97
|
+
|
|
98
|
+
Run GitHub bootstrap in report mode first to obtain the repository's canonical
|
|
99
|
+
slug and immutable owner/repository IDs. It configures repository and environment
|
|
100
|
+
policy but never creates AWS credentials, secrets, or roles. For an existing
|
|
101
|
+
repository, keep its current OIDC subject active while you render and apply the
|
|
102
|
+
stage AWS trust for the reported immutable subject, then read back and simulate
|
|
103
|
+
that effective trust. Only after AWS accepts the immutable subject should you
|
|
104
|
+
rerun GitHub bootstrap with \`--apply\` and the exact
|
|
105
|
+
\`--immutableOidcTrustAcknowledgement=aws-trust-ready:<repositoryIdentity.subjectPrefix>\`
|
|
106
|
+
reported by the same inspection. A missing, wrong, or stale acknowledgement
|
|
107
|
+
blocks the subject cutover before any GitHub setting is changed.
|
|
108
|
+
This AWS-trust-first order prevents protected deployment from being stranded.
|
|
109
|
+
Place the exact account and Region in their protected stage environment.
|
|
110
|
+
Isolated production additionally keeps its exact staging promotion-pull role
|
|
111
|
+
secret; do not add repository-scope fallbacks.
|
|
112
|
+
`,
|
|
113
|
+
'docs/repository-operating-policy.md': `# Repository Operating Policy
|
|
114
|
+
|
|
115
|
+
## Production capacity
|
|
116
|
+
|
|
117
|
+
Foundation provisions Aurora only when SQL is declared. DynamoDB remains the framework core.
|
|
118
|
+
Aurora has three capacity profiles, independent of deployment topology:
|
|
119
|
+
- \`cost-optimized\`: 0–2 ACUs, five-minute idle auto-pause; default for all new deployment profiles.
|
|
120
|
+
- \`balanced\`: 0.5–4 ACUs, always warm.
|
|
121
|
+
- \`standard\`: 2–16 ACUs, always warm.
|
|
122
|
+
|
|
123
|
+
Existing explicit capacity choices survive upgrades. Provisioned production Aurora
|
|
124
|
+
retains 30-day backups, deletion protection and encryption in all three profiles.
|
|
125
|
+
Undeclared SQL does not provision Aurora or SQL-only networking.
|
|
126
|
+
Pause can delay first requests (typically 15 seconds, sometimes 30 seconds or
|
|
127
|
+
longer); open connections or polling can prevent it. Storage/NAT still cost money.
|
|
128
|
+
Validate cold-resume retries, migration timeouts, and the shared capacity ceiling.
|
|
129
|
+
Choose balanced when measured cold-resume latency is unacceptable; choose standard
|
|
130
|
+
when measured capacity and concurrency justify the larger warm range. Capacity
|
|
131
|
+
selection never changes background-work cadence or an explicit maintenance pause.
|
|
132
|
+
|
|
133
|
+
Existing warm \`cost-optimized\` users must use the new generator to report
|
|
134
|
+
\`pnpm nx g @empire-builder-kit/nx:repository-policy --profile=balanced\`, then
|
|
135
|
+
repeat with \`--apply\` before managed upgrade or deployment. This preserves
|
|
136
|
+
0.5–4 ACUs. After upgrade, deliberately select \`--profile=cost-optimized --apply\`
|
|
137
|
+
only to accept scale-to-zero. These commands change policy, not AWS resources.
|
|
138
|
+
|
|
139
|
+
The committed \`ebk.repository-policy.json\` selects the
|
|
140
|
+
\`${options.deploymentProfile}\` deployment profile and its active stages:
|
|
141
|
+
${stageList}. Inactive stages are rejected by planning, deployment, refresh,
|
|
142
|
+
removal, unlock, discovery, and secret resolution.
|
|
143
|
+
|
|
144
|
+
## Native lifecycle
|
|
145
|
+
|
|
146
|
+
Use \`ebk deploy development --profile=<profile> --expectedRoleArn=<role-arn>\`.
|
|
147
|
+
Add Slice names, for example \`ebk deploy development billing\` with the same
|
|
148
|
+
authority options, for focused deployment after Foundation. Other Slices are
|
|
149
|
+
not redeployed; required peers must already exist. Omit Slice names for the
|
|
150
|
+
complete stage. Explicit selection is local-only and its \`selectedSlices\`
|
|
151
|
+
receipt is not full-stage acceptance or a protected affected-deployment baseline.
|
|
152
|
+
\`ebk deploy --help\` lists options. The command streams native output unchanged
|
|
153
|
+
and accepts no arbitrary Nx/SST flags; the written deployment receipt is the
|
|
154
|
+
structured result. Add \`--json\` to a development deploy to receive that receipt
|
|
155
|
+
and per-project status on stdout after the run (native output moves to stderr);
|
|
156
|
+
staging and production refuse \`--json\`. Development runs to completion with no
|
|
157
|
+
prompt; only local staging and starter production stop for the human-typed
|
|
158
|
+
acknowledgement described below.
|
|
159
|
+
|
|
160
|
+
The root \`${options.name}:deploy-local\` target orders Foundation before every
|
|
161
|
+
eligible Product Slice. Each project runs its public Nx \`deploy\` target, which
|
|
162
|
+
uses pinned native \`sst deploy\`; successful Slice infrastructure is followed
|
|
163
|
+
by its governed migration and smoke checks. Native stdout and stderr are
|
|
164
|
+
streamed unchanged. The first failed child ends the invocation and accepted
|
|
165
|
+
deployment evidence is not written.
|
|
166
|
+
|
|
167
|
+
\`infrastructure-plan\` is an optional advisory pass-through to native
|
|
168
|
+
\`sst diff\`. It is never replayed and never authorizes mutation. Refresh,
|
|
169
|
+
remove, and unlock are explicit per-project Nx operations using native SST.
|
|
170
|
+
Every local SST-bearing operation derives the exact stage deployment role from
|
|
171
|
+
committed policy and gives SST an invocation-private temporary profile rather
|
|
172
|
+
than the operator's Identity Center profile chain.
|
|
173
|
+
|
|
174
|
+
Governed AWS infrastructure planning and mutation are supported on macOS,
|
|
175
|
+
Linux, and WSL2. Native Windows can run local verification, but native-Windows
|
|
176
|
+
task Fleet (\`ebk dev\`) is not validated in this prerelease; use WSL2 or a
|
|
177
|
+
macOS/Linux host for Fleet development and for \`deploy-local\`,
|
|
178
|
+
\`infrastructure-plan\`, \`refresh\`, \`remove\`, and \`unlock\`. Generated
|
|
179
|
+
protected GitHub AWS jobs continue to run on Ubuntu.
|
|
180
|
+
|
|
181
|
+
Development may deploy a dirty working tree without a prompt. Its receipt binds
|
|
182
|
+
the exact HEAD and working-tree digest. Local staging requires a clean commit
|
|
183
|
+
and the exact TTY acknowledgement
|
|
184
|
+
\`approve:deploy:staging:<source-commit>\`. Starter production requires a clean
|
|
185
|
+
commit, a real TTY, and
|
|
186
|
+
\`deploy:production:<account>:<region>:<source-commit>\`.
|
|
187
|
+
|
|
188
|
+
GitHub deploys immutable commits through one canonical stage-scoped OIDC role
|
|
189
|
+
whose ARN is derived from committed policy. The
|
|
190
|
+
starter workflow is optional; isolated profiles require GitHub for the stages
|
|
191
|
+
declared by their profile. Direct user SST invocation is outside the supported
|
|
192
|
+
paved road.
|
|
193
|
+
|
|
194
|
+
## AWS authority
|
|
195
|
+
|
|
196
|
+
Each active stage has one stable deployment role and one runtime permission
|
|
197
|
+
boundary. SST/Pulumi creates workload roles inside the application stack; a
|
|
198
|
+
Pulumi transform applies the exact stage path and boundary. Authority is not
|
|
199
|
+
candidate-bound. See \`stage-deployment-authority.md\`.
|
|
200
|
+
|
|
201
|
+
The deployment role is a temporary bounded infrastructure administrator. IAM
|
|
202
|
+
cannot inspect the initial trust document on \`CreateRole\`; reviewed generated
|
|
203
|
+
source is therefore the create-time trust control, while later trust-policy
|
|
204
|
+
mutation remains denied. EBK does not claim a postdeployment trust attestor. In
|
|
205
|
+
commercial AWS, CloudFront, CloudFront-scope WAF, edge WAF log delivery, and
|
|
206
|
+
edge ACM use the us-east-1 control plane. CloudWatch Logs cannot scope the
|
|
207
|
+
generated WAF \`PutResourcePolicy\` payload through IAM; reviewed generated
|
|
208
|
+
source and the edge Region are its controls. This prerelease does not claim Router edge support in noncommercial
|
|
209
|
+
partitions: CloudFront is unavailable in GovCloud, and the China-partition edge
|
|
210
|
+
control plane is not yet proven.
|
|
211
|
+
|
|
212
|
+
Stages that share one AWS account retain separate application resources, data,
|
|
213
|
+
runtime roles, secrets, and discovery, but their native SST deployment roles
|
|
214
|
+
are not a hard IAM boundary from each other. The deployment role must reconcile
|
|
215
|
+
SST's account-shared bootstrap state and assets; tag and name denies are defense
|
|
216
|
+
in depth. Select \`production-isolated\` when production needs an AWS-enforced
|
|
217
|
+
deployment blast-radius boundary from nonproduction.
|
|
218
|
+
|
|
219
|
+
Native SST initializes a clean account on first deployment. EBK does not run a
|
|
220
|
+
pre-bootstrap state command or require a bootstrap record before SST can create
|
|
221
|
+
it. Post-deployment evidence may attest the native bootstrap resources.
|
|
222
|
+
`,
|
|
223
|
+
'packages/foundation/README.md': `# Standard Foundation
|
|
224
|
+
|
|
225
|
+
Foundation owns shared Router/WAF, Cognito, events, observability, and
|
|
226
|
+
configuration resources for each active canonical stage. It provisions Aurora
|
|
227
|
+
only when SQL is declared; network and container-compute resources depend on
|
|
228
|
+
declared workloads. The \`${options.deploymentProfile}\` profile activates:
|
|
229
|
+
${stageList}.
|
|
230
|
+
|
|
231
|
+
Deploy it through the workspace root \`deploy-local\` target or the protected
|
|
232
|
+
GitHub workflow. Nx always orders Foundation before Product Slices, while
|
|
233
|
+
pinned SST owns native planning, state, locking, and deployment. Do not invoke
|
|
234
|
+
SST directly.
|
|
235
|
+
|
|
236
|
+
Before a nonproduction deployment, add the operator/probe CIDRs required by the
|
|
237
|
+
stage's \`security/router-waf.json\` entry. This is an ordinary edit to a seeded
|
|
238
|
+
file; an agent may make it after confirming the current public IPv4 address of
|
|
239
|
+
the workstation or probe host with the human. Production remains public by default
|
|
240
|
+
behind managed rules and rate limiting and requires its blocking rehearsal.
|
|
241
|
+
The resolved ${rehearsalStage} stage is rehearsed with
|
|
242
|
+
\`pnpm nx run foundation:router-waf-rehearsal -- --probeUrl=https://<router>/<slice>/api/health --profile=<temporary-profile>\`.
|
|
243
|
+
`,
|
|
244
|
+
'packages/foundation/docs/runbooks.md': `# Foundation lifecycle runbook
|
|
245
|
+
|
|
246
|
+
## Local deployment
|
|
247
|
+
|
|
248
|
+
Use temporary IAM Identity Center credentials and the stable stage deployment
|
|
249
|
+
role. Development accepts a dirty tree and requires no acknowledgement:
|
|
250
|
+
|
|
251
|
+
\`ebk deploy development --profile=<profile> --expectedRoleArn=<role-arn>\`
|
|
252
|
+
|
|
253
|
+
For development, when the session is expired or missing, an attended coding
|
|
254
|
+
agent (local or hosted) may run \`aws sso login --profile <profile>\`; the
|
|
255
|
+
human approves the request in the browser, so the session stays the human's
|
|
256
|
+
own identity. In a hosted or headless shell, add \`--use-device-code\` and the
|
|
257
|
+
human approves the printed code from their own browser. Confirm
|
|
258
|
+
\`aws sts get-caller-identity\` reports that identity before continuing.
|
|
259
|
+
Never embed access keys, export, copy, or read credentials from the SSO cache,
|
|
260
|
+
or assume a separate or stronger principal.
|
|
261
|
+
|
|
262
|
+
Local staging, when active, requires a clean commit and an interactive
|
|
263
|
+
\`approve:deploy:staging:<source-commit>\` response. Starter production requires
|
|
264
|
+
a clean commit and one exact response entered at the real terminal prompt:
|
|
265
|
+
|
|
266
|
+
\`deploy:production:<account>:<region>:<source-commit>\`
|
|
267
|
+
|
|
268
|
+
The internal adapter converts the selected Identity Center chain into one
|
|
269
|
+
invocation-private temporary profile, verifies the exact caller, and removes it
|
|
270
|
+
on every exit path. Native SST diagnostics are not normalized or hidden.
|
|
271
|
+
|
|
272
|
+
## Advisory planning and recovery
|
|
273
|
+
|
|
274
|
+
Run \`<project>:infrastructure-plan\` for an advisory native diff when useful.
|
|
275
|
+
The diff is not a transaction token. Use the explicit \`refresh\`, \`unlock\`,
|
|
276
|
+
or \`remove\` Nx target for recovery. Refresh and removal never continue into a
|
|
277
|
+
deployment. Development recovery requires no prompt. Local staging or
|
|
278
|
+
production recovery requires a clean commit and the exact interactive
|
|
279
|
+
\`approve:<action>:<stage>:<source-commit>\` response. The executor derives the
|
|
280
|
+
committed stage role, refreshes its invocation-private temporary credentials
|
|
281
|
+
immediately before SST, and removes them on every exit. A failed child stops
|
|
282
|
+
immediately.
|
|
283
|
+
|
|
284
|
+
After all Slice registrations are absent, \`foundation:remove\` runs native
|
|
285
|
+
SST removal directly, without a separate refresh or local retry checkpoint.
|
|
286
|
+
Temporary smoke admission uses a separate, normally empty Cloud Control IP set;
|
|
287
|
+
the baseline allowlist identities and addresses remain untouched. Its AWS service
|
|
288
|
+
handler resolves the current WAF lock token during deletion. A failed or
|
|
289
|
+
interrupted removal remains failed. Resolve its native diagnostic and any lock
|
|
290
|
+
through the governed unlock target, then retry the same remove target, including
|
|
291
|
+
from a fresh checkout. Ownership, caller and production removal safeguards run
|
|
292
|
+
on every invocation. Refresh stays separate and never continues into removal or
|
|
293
|
+
deployment; do not bypass its diagnostics, edit state, or use deprecated SST
|
|
294
|
+
components.
|
|
295
|
+
|
|
296
|
+
For an older deployment whose smoke helper edited the baseline IP set, reconcile
|
|
297
|
+
that existing provider state with an explicit governed refresh while Foundation
|
|
298
|
+
is intact. The new smoke set does not retroactively repair old lock tokens.
|
|
299
|
+
Partially removed old stacks require an evidence-backed recovery assessment;
|
|
300
|
+
do not redeploy a maintenance-held stage merely to apply this upgrade.
|
|
301
|
+
|
|
302
|
+
## Router WAF rehearsal
|
|
303
|
+
|
|
304
|
+
${options.deploymentProfile === 'starter'
|
|
305
|
+
? ''
|
|
306
|
+
: `Isolated profiles rehearse through the managed \`Deploy\` dispatch: with both
|
|
307
|
+
\`security/router-waf-live-evidence.json\` and
|
|
308
|
+
\`security/router-waf-blocking-rehearsal.json\` at their pending seeds on
|
|
309
|
+
\`develop\`, dispatch \`Deploy\` with \`action: rehearse\` and \`probe_url\` set to
|
|
310
|
+
the staging Router health URL. The \`rehearse\` job assumes the staging
|
|
311
|
+
deployment role, performs the non-allowlisted probe before the runner is
|
|
312
|
+
admitted, performs the managed-rule probe and the rate rehearsal inside the
|
|
313
|
+
same temporary allowlist admission that private smoke uses, proves the
|
|
314
|
+
admission removed, retains the sealed files as a run artifact, and opens a
|
|
315
|
+
pull request to \`develop\` carrying them. The \`Verify\` caller job carries
|
|
316
|
+
\`contents: write\` and \`pull-requests: write\` only as the ceiling that
|
|
317
|
+
GitHub validates nested jobs against; every nested job keeps its own
|
|
318
|
+
least-privilege permissions. Merging that pull request satisfies
|
|
319
|
+
the production Router WAF gate for the exact policy digest. Any policy change,
|
|
320
|
+
including an allowlist edit, changes the digest and requires a new rehearsal
|
|
321
|
+
after resetting both seeds. The manual path below remains for operators who
|
|
322
|
+
rehearse from an allowlisted address.
|
|
323
|
+
|
|
324
|
+
`}Count-mode tuning is optional. Restore ${rehearsalStage} to blocking mode,
|
|
325
|
+
record the bounded allowlist and managed-rule probe results in
|
|
326
|
+
\`security/router-waf-live-evidence.json\`, then run:
|
|
327
|
+
|
|
328
|
+
\`pnpm nx run foundation:router-waf-rehearsal -- --probeUrl=https://<router>/<slice>/api/health --profile=<temporary-profile>\`
|
|
329
|
+
|
|
330
|
+
The target derives stage, account, Region, and deployment role from the
|
|
331
|
+
committed repository policy. Retained evidence must name that exact account,
|
|
332
|
+
Region, deployment-role ARN, workspace, and deterministic WAF contract digest;
|
|
333
|
+
the 40- or 64-character source commit remains in the evidence digest. Before
|
|
334
|
+
traffic the target verifies the caller, the exact enabled CloudFront
|
|
335
|
+
non-staging distribution and Web ACL attachment, their exact identity tags, the
|
|
336
|
+
full ordered generated rule/IP-set/logging inventory, metrics/sampling, and the
|
|
337
|
+
EBK policy/stage/workspace/ownership tags, then requires a successful health GET.
|
|
338
|
+
The managed-rule and nonallowlisted operator records must first correlate by
|
|
339
|
+
marker, method, path, and time to exact sampled BLOCK requests and owning rules.
|
|
340
|
+
The public rate threshold is bounded from 100 through
|
|
341
|
+
2,159; the default remains 2,000. The target uses concurrency 16 for a bounded
|
|
342
|
+
burst and reserves 40 five-second follow-ups for AWS WAF's delayed evaluation.
|
|
343
|
+
It sends at most 2,199 rate-probe requests so the baseline GET keeps the whole
|
|
344
|
+
invocation at or below 2,200 HTTP requests, and never treats an upstream HTTP 429 as WAF
|
|
345
|
+
proof. The receipt seals only after HTTP 403 correlates to the exact nonce- and
|
|
346
|
+
sequence-marked \`GET /<slice>/api/health\` request in an exact \`RateLimitPerIP\`
|
|
347
|
+
\`BLOCK\` sample and the same-minute \`AWS/WAFV2\` \`BlockedRequests\` metric;
|
|
348
|
+
retained evidence contains only the marker digest. Run this rate probe last:
|
|
349
|
+
AWS WAF can continue blocking the source IP for several minutes. The sealed
|
|
350
|
+
receipt binds the derived account and Region.
|
|
351
|
+
|
|
352
|
+
## Production safeguards
|
|
353
|
+
|
|
354
|
+
Production keeps WAF blocking rehearsal and application smoke checks. When SQL
|
|
355
|
+
is declared, production also keeps the committed Aurora capacity profile,
|
|
356
|
+
30-day backup retention, deletion protection, and migration preflight. Any
|
|
357
|
+
change to these controls must be a committed policy change and must remain
|
|
358
|
+
permitted by the stage authority's explicit guardrails. AWS exposes SNS topic
|
|
359
|
+
and SQS queue policy updates through the same Set*Attributes actions required
|
|
360
|
+
during native creation and provides no
|
|
361
|
+
attribute-name IAM condition. The stable stage role therefore contains those
|
|
362
|
+
calls by exact account, Region, and generated stage-name pattern; hard stage
|
|
363
|
+
separation requires an isolated profile. CloudFront KeyValueStore data-plane
|
|
364
|
+
ARNs likewise expose account and store identity but no stage condition key, so
|
|
365
|
+
the Router's exact six key operations are account-scoped; use an isolated
|
|
366
|
+
profile when that boundary must be enforced by AWS accounts.
|
|
367
|
+
`,
|
|
368
|
+
};
|
|
369
|
+
}
|
|
370
|
+
//# sourceMappingURL=workspace-files-thin-docs.js.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const RETIRED_THIN_LIFECYCLE_PATHS: readonly [".github/workflows/deployed-smoke.yml", ".github/workflows/reliability-read.yml", ".github/workflows/release-rollout.yml", ".github/workflows/staging-evidence.yml", "tools/verify-staging-evidence.mjs"];
|
|
2
|
+
export interface ThinReleaseWorkflowPlan {
|
|
3
|
+
files: Readonly<Record<string, string>>;
|
|
4
|
+
obsoletePaths: typeof RETIRED_THIN_LIFECYCLE_PATHS;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Protected release promotion now occurs through the one native deploy
|
|
8
|
+
* workflow. The former rollout, post-deploy smoke, staging-evidence, and
|
|
9
|
+
* reliability-read workflows reconstructed preview-era deployment authority
|
|
10
|
+
* from artifacts that the thin lifecycle no longer emits. Native deployment
|
|
11
|
+
* runs each Slice smoke target before sealing its receipt, so retaining that
|
|
12
|
+
* parallel graph would be both redundant and permanently red.
|
|
13
|
+
*/
|
|
14
|
+
export declare function renderThinReleaseWorkflowPlan(): ThinReleaseWorkflowPlan;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RETIRED_THIN_LIFECYCLE_PATHS = void 0;
|
|
4
|
+
exports.renderThinReleaseWorkflowPlan = renderThinReleaseWorkflowPlan;
|
|
5
|
+
exports.RETIRED_THIN_LIFECYCLE_PATHS = Object.freeze([
|
|
6
|
+
'.github/workflows/deployed-smoke.yml',
|
|
7
|
+
'.github/workflows/reliability-read.yml',
|
|
8
|
+
'.github/workflows/release-rollout.yml',
|
|
9
|
+
'.github/workflows/staging-evidence.yml',
|
|
10
|
+
'tools/verify-staging-evidence.mjs',
|
|
11
|
+
]);
|
|
12
|
+
/**
|
|
13
|
+
* Protected release promotion now occurs through the one native deploy
|
|
14
|
+
* workflow. The former rollout, post-deploy smoke, staging-evidence, and
|
|
15
|
+
* reliability-read workflows reconstructed preview-era deployment authority
|
|
16
|
+
* from artifacts that the thin lifecycle no longer emits. Native deployment
|
|
17
|
+
* runs each Slice smoke target before sealing its receipt, so retaining that
|
|
18
|
+
* parallel graph would be both redundant and permanently red.
|
|
19
|
+
*/
|
|
20
|
+
function renderThinReleaseWorkflowPlan() {
|
|
21
|
+
return {
|
|
22
|
+
files: {},
|
|
23
|
+
obsoletePaths: exports.RETIRED_THIN_LIFECYCLE_PATHS,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=workspace-files-thin-release.js.map
|