@empire-builder-kit/nx 1.0.0-rc.4 → 1.0.0-rc.40
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 +18 -0
- 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.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 +6 -0
- package/src/cli/deploy-runtime.js +58 -0
- package/src/cli/dev-command.d.ts +16 -4
- package/src/cli/dev-command.js +63 -0
- package/src/cli/main.d.ts +9 -1
- package/src/cli/main.js +139 -20
- package/src/cli/output.d.ts +1 -1
- package/src/cli/output.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 +5 -0
- package/src/developer-agent/operation-registry.js +286 -40
- package/src/developer-agent/planning.js +16 -13
- 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 +162 -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 +40 -6
- package/src/executors/sst-lifecycle/run-sst-command.js +779 -70
- 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/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/tool-versions.d.ts +2 -0
- package/src/generators/preset/tool-versions.js +3 -1
- package/src/generators/preset/workspace-files-adopter-skills.d.ts +7 -0
- package/src/generators/preset/workspace-files-adopter-skills.js +303 -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 +90 -28
- 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-stage-authority.d.ts +6 -0
- package/src/generators/preset/workspace-files-stage-authority.js +518 -0
- package/src/generators/preset/workspace-files-thin-deploy.d.ts +55 -0
- package/src/generators/preset/workspace-files-thin-deploy.js +2473 -0
- package/src/generators/preset/workspace-files-thin-docs.d.ts +7 -0
- package/src/generators/preset/workspace-files-thin-docs.js +352 -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 +1504 -608
- 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 +42 -7
- 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 +92 -329
- package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js +60 -2
- 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 +163 -1196
- 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 +20 -1
- 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 +7 -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 -729
- package/src/generators/slice/built-in-plan-infrastructure-safety-files.js +67 -11
- 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 +157 -28
- 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 +279 -43
- 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-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-testing-persistence-files.js +178 -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 +80 -29
- 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/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 +39 -8
- package/src/git-policy/github-bootstrap.js +329 -175
- 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 +46 -18
- 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 +14 -2
- 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/registry.d.ts +2 -1
- package/src/secrets/registry.js +18 -1
- package/src/secrets/verification.js +9 -1
- 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
|
@@ -6,6 +6,7 @@ exports.createDeveloperAgentOperationRegistry = createDeveloperAgentOperationReg
|
|
|
6
6
|
exports.requireDeveloperAgentOperation = requireDeveloperAgentOperation;
|
|
7
7
|
exports.operationLooksMutating = operationLooksMutating;
|
|
8
8
|
const node_util_1 = require("node:util");
|
|
9
|
+
const contracts_js_1 = require("../local-dev/contracts.js");
|
|
9
10
|
const blueprint_trust_js_1 = require("../supply-chain/blueprint-trust.js");
|
|
10
11
|
const model_js_1 = require("./model.js");
|
|
11
12
|
const ordering_js_1 = require("./ordering.js");
|
|
@@ -38,10 +39,10 @@ const PROTECTED_CANONICAL_STAGES = [
|
|
|
38
39
|
const PROTECTED_WORKFLOW_ONLY_RATIONALE = 'This exact target is reserved for a protected workflow that supplies reviewed authority and retained evidence; Developer-Agent planning must use that owning workflow.';
|
|
39
40
|
const LOCAL_OWNER_ONLY_RATIONALE = 'This exact target is intentionally unavailable to Developer-Agent planning; use its bounded framework owner instead.';
|
|
40
41
|
function policyLifecycleActionForTarget(targetName) {
|
|
41
|
-
if (exact('deploy', 'deploy-infrastructure', '
|
|
42
|
+
if (exact('deploy', 'deploy-infrastructure', 'deploy-local', 'deployment-plan', 'foundation-ready')(targetName)) {
|
|
42
43
|
return 'deploy';
|
|
43
44
|
}
|
|
44
|
-
if (exact('dev', 'dev-cleanup', 'dev-setup')(targetName))
|
|
45
|
+
if (exact('dev', 'dev-cleanup', 'dev-task-cleanup', 'dev-setup')(targetName))
|
|
45
46
|
return 'dev';
|
|
46
47
|
if (exact('db-local-migrate', 'db-migrate')(targetName))
|
|
47
48
|
return 'migrate';
|
|
@@ -60,7 +61,11 @@ function runCommandSignature(targetName, command, settings = {}) {
|
|
|
60
61
|
return {
|
|
61
62
|
...(settings.continuous ? { continuous: true } : {}),
|
|
62
63
|
...(settings.dependsOn
|
|
63
|
-
? {
|
|
64
|
+
? {
|
|
65
|
+
dependsOn: (input) => typeof settings.dependsOn === 'function'
|
|
66
|
+
? settings.dependsOn(input)
|
|
67
|
+
: settings.dependsOn,
|
|
68
|
+
}
|
|
64
69
|
: {}),
|
|
65
70
|
executor: 'nx:run-commands',
|
|
66
71
|
...(settings.nonPlannableRationale
|
|
@@ -98,20 +103,39 @@ function runScriptSignature(targetName, expectedScript, settings = {}) {
|
|
|
98
103
|
function executorSignature(targetName, executor, options, dependsOn, settings = {}) {
|
|
99
104
|
return {
|
|
100
105
|
...settings,
|
|
101
|
-
...(dependsOn
|
|
106
|
+
...(dependsOn
|
|
107
|
+
? {
|
|
108
|
+
dependsOn: (input) => typeof dependsOn === 'function' ? dependsOn(input) : dependsOn,
|
|
109
|
+
}
|
|
110
|
+
: {}),
|
|
102
111
|
executor,
|
|
103
112
|
optionsMatch: options,
|
|
104
113
|
targetName,
|
|
105
114
|
};
|
|
106
115
|
}
|
|
107
|
-
|
|
116
|
+
// Use the inspected target inventory, not the workspace-wide Foundation
|
|
117
|
+
// capability: a SQL-free Slice may coexist with a relational Slice. Any SQL
|
|
118
|
+
// target keeps the SQL prerequisites mandatory, including in a partial/tampered
|
|
119
|
+
// graph where db-check alone was removed.
|
|
120
|
+
function sliceDeclaresSql(input) {
|
|
121
|
+
return input.project.targets.some((name) => [
|
|
122
|
+
'db-check',
|
|
123
|
+
'db-generate',
|
|
124
|
+
'db-migrate',
|
|
125
|
+
'db-local-down',
|
|
126
|
+
'db-local-migrate',
|
|
127
|
+
'db-local-up',
|
|
128
|
+
'db-retirement-rehearsal',
|
|
129
|
+
].includes(name));
|
|
130
|
+
}
|
|
131
|
+
const sliceVerifyDependencies = (input) => [
|
|
108
132
|
'api-contract-check',
|
|
109
133
|
'async-verify',
|
|
110
134
|
'authorization-check',
|
|
111
135
|
'build',
|
|
112
136
|
'contract-dependencies-check',
|
|
113
137
|
'data-policy-check',
|
|
114
|
-
'db-check',
|
|
138
|
+
...(sliceDeclaresSql(input) ? ['db-check'] : []),
|
|
115
139
|
'frontend-boundaries',
|
|
116
140
|
'lint',
|
|
117
141
|
'performance-budget',
|
|
@@ -123,11 +147,26 @@ const sliceVerifyDependencies = [
|
|
|
123
147
|
'test-integration',
|
|
124
148
|
'typecheck',
|
|
125
149
|
];
|
|
150
|
+
function sliceReleaseArtifactDependencies(input) {
|
|
151
|
+
if (input.project.root !== `packages/${input.project.name}` ||
|
|
152
|
+
!input.project.tags.includes('type:slice')) {
|
|
153
|
+
return [];
|
|
154
|
+
}
|
|
155
|
+
return [
|
|
156
|
+
'build',
|
|
157
|
+
{
|
|
158
|
+
params: 'ignore',
|
|
159
|
+
projects: [`@${input.project.name}/job-data-retention`],
|
|
160
|
+
target: 'build',
|
|
161
|
+
},
|
|
162
|
+
];
|
|
163
|
+
}
|
|
126
164
|
// These are execution signatures, not name heuristics. Generator changes that
|
|
127
165
|
// alter executor options or dependency closure must update this reviewed list;
|
|
128
166
|
// external Blueprint verification instead enters through the exact protected
|
|
129
167
|
// target-closure review passed to the registry below.
|
|
130
168
|
const TARGET_SIGNATURES = [
|
|
169
|
+
runCommandSignature('verify-local-browser', 'node scripts/verify-local-browser.mjs', { forwardAllArgs: false }),
|
|
131
170
|
runCommandSignature('api-contract-baseline', 'node --experimental-strip-types scripts/api-contract.mjs baseline', { forwardAllArgs: true }),
|
|
132
171
|
runCommandSignature('api-contract-check', 'node --experimental-strip-types scripts/api-contract.mjs check', { forwardAllArgs: false }),
|
|
133
172
|
runCommandSignature('api-contract-generate', 'node --experimental-strip-types scripts/api-contract.mjs generate', { forwardAllArgs: false }),
|
|
@@ -140,6 +179,14 @@ const TARGET_SIGNATURES = [
|
|
|
140
179
|
protectedBranch: 'develop',
|
|
141
180
|
protectedRef: 'refs/remotes/origin/develop',
|
|
142
181
|
}))),
|
|
182
|
+
executorSignature('blueprint-trust-check-main', '@empire-builder-kit/nx:blueprint-trust', exactOptions(() => ({
|
|
183
|
+
operation: 'adopt',
|
|
184
|
+
output: '.ebk/evidence/supply-chain/blueprint-trust.json',
|
|
185
|
+
protectedBranch: 'main',
|
|
186
|
+
protectedRef: 'refs/remotes/origin/main',
|
|
187
|
+
})), undefined, {
|
|
188
|
+
nonPlannableRationale: PROTECTED_WORKFLOW_ONLY_RATIONALE,
|
|
189
|
+
}),
|
|
143
190
|
executorSignature('blueprint-trust-check-protected', '@empire-builder-kit/nx:blueprint-trust', exactOptions(() => ({
|
|
144
191
|
operation: 'deploy',
|
|
145
192
|
output: '.ebk/evidence/supply-chain/blueprint-trust.json',
|
|
@@ -161,7 +208,7 @@ const TARGET_SIGNATURES = [
|
|
|
161
208
|
runCommandSignature('async-workflow-recovery-report', 'node --experimental-strip-types scripts/async-recovery.mjs report workflow-recovery', { forwardAllArgs: false }),
|
|
162
209
|
runCommandSignature('async-workflow-recovery-status', 'node --experimental-strip-types scripts/async-recovery.mjs status workflow-recovery', { forwardAllArgs: false }),
|
|
163
210
|
runCommandSignature('async-verify', 'node --experimental-strip-types scripts/async-contract.mjs', { forwardAllArgs: false }),
|
|
164
|
-
runCommandSignature('build', 'next build web', {
|
|
211
|
+
runCommandSignature('build', 'next build --webpack web', {
|
|
165
212
|
dependsOn: ['secret-guardrails', 'typecheck'],
|
|
166
213
|
env: { NODE_ENV: 'production' },
|
|
167
214
|
}),
|
|
@@ -170,14 +217,17 @@ const TARGET_SIGNATURES = [
|
|
|
170
217
|
runCommandSignature('contract-dependencies-check', 'node scripts/contract-dependencies.mjs check', { forwardAllArgs: false }),
|
|
171
218
|
runCommandSignature('contract-dependencies-sync', 'node scripts/contract-dependencies.mjs sync', { forwardAllArgs: false }),
|
|
172
219
|
runCommandSignature('container-release-amd64', 'node ../../tools/container-release.mjs platform linux/amd64', {
|
|
220
|
+
dependsOn: ['release-artifacts'],
|
|
173
221
|
forwardAllArgs: false,
|
|
174
222
|
nonPlannableRationale: PROTECTED_WORKFLOW_ONLY_RATIONALE,
|
|
175
223
|
}),
|
|
176
224
|
runCommandSignature('container-release-arm64', 'node ../../tools/container-release.mjs platform linux/arm64', {
|
|
225
|
+
dependsOn: ['release-artifacts'],
|
|
177
226
|
forwardAllArgs: false,
|
|
178
227
|
nonPlannableRationale: PROTECTED_WORKFLOW_ONLY_RATIONALE,
|
|
179
228
|
}),
|
|
180
229
|
runCommandSignature('container-release-assemble', 'node ../../tools/container-release.mjs assemble', {
|
|
230
|
+
dependsOn: ['release-artifacts'],
|
|
181
231
|
forwardAllArgs: false,
|
|
182
232
|
nonPlannableRationale: PROTECTED_WORKFLOW_ONLY_RATIONALE,
|
|
183
233
|
}),
|
|
@@ -204,11 +254,22 @@ const TARGET_SIGNATURES = [
|
|
|
204
254
|
runCommandSignature('data-restore-reconcile', 'node --experimental-strip-types scripts/data-restore-reconcile.mjs', { forwardAllArgs: true }),
|
|
205
255
|
runCommandSignature('data-retention', 'node --experimental-strip-types scripts/data-retention.mjs', { forwardAllArgs: true }),
|
|
206
256
|
runCommandSignature('deploy', 'node scripts/confirm-deploy.mjs', {
|
|
207
|
-
dependsOn:
|
|
257
|
+
dependsOn: (input) => [
|
|
258
|
+
{
|
|
259
|
+
params: 'forward',
|
|
260
|
+
target: sliceDeclaresSql(input)
|
|
261
|
+
? 'db-migrate'
|
|
262
|
+
: 'deploy-infrastructure',
|
|
263
|
+
},
|
|
264
|
+
],
|
|
208
265
|
forwardAllArgs: true,
|
|
209
266
|
}),
|
|
210
267
|
runCommandSignature('dev-prerequisite', 'node scripts/verify-live-mode.mjs', {
|
|
211
|
-
dependsOn:
|
|
268
|
+
dependsOn: (input) => [
|
|
269
|
+
...(sliceDeclaresSql(input) ? ['db-check'] : []),
|
|
270
|
+
'secret-guardrails',
|
|
271
|
+
'typecheck',
|
|
272
|
+
],
|
|
212
273
|
}),
|
|
213
274
|
runCommandSignature('frontend-boundaries', 'node scripts/frontend-boundaries.mjs --output=.ebk/evidence/frontend/frontend-boundaries.json', { forwardAllArgs: false }),
|
|
214
275
|
runCommandSignature('frontend-security-headers', 'node scripts/frontend-security-headers.mjs', {
|
|
@@ -251,8 +312,18 @@ const TARGET_SIGNATURES = [
|
|
|
251
312
|
runCommandSignature('reliability-remediation', 'node scripts/incident-remediation.mjs', { forwardAllArgs: false }),
|
|
252
313
|
runCommandSignature('reliability-report', 'node scripts/reliability-report.mjs', { forwardAllArgs: false }),
|
|
253
314
|
runCommandSignature('reliability-verify', 'node scripts/verify-reliability.mjs', { forwardAllArgs: false }),
|
|
254
|
-
runCommandSignature('release-artifacts', 'node --experimental-strip-types scripts/release-artifacts.mjs', {
|
|
255
|
-
|
|
315
|
+
runCommandSignature('release-artifacts', 'node --experimental-strip-types scripts/release-artifacts.mjs', {
|
|
316
|
+
dependsOn: sliceReleaseArtifactDependencies,
|
|
317
|
+
forwardAllArgs: false,
|
|
318
|
+
}),
|
|
319
|
+
runCommandSignature('release-candidate', 'node --experimental-strip-types scripts/release-candidate.mjs', {
|
|
320
|
+
dependsOn: [
|
|
321
|
+
'api-contract-check',
|
|
322
|
+
'release-artifacts',
|
|
323
|
+
'test-integration',
|
|
324
|
+
],
|
|
325
|
+
forwardAllArgs: false,
|
|
326
|
+
}),
|
|
256
327
|
runCommandSignature('release-lifecycle', 'node --experimental-strip-types scripts/release-lifecycle.mjs', { forwardAllArgs: false }),
|
|
257
328
|
runCommandSignature('release-manifest', 'node --experimental-strip-types scripts/release-manifest.mjs', { forwardAllArgs: false }),
|
|
258
329
|
runCommandSignature('release-rollout', 'node --experimental-strip-types scripts/release-rollout.mjs', { forwardAllArgs: false }),
|
|
@@ -285,26 +356,49 @@ const TARGET_SIGNATURES = [
|
|
|
285
356
|
nonPlannableRationale: PROTECTED_WORKFLOW_ONLY_RATIONALE,
|
|
286
357
|
workspaceRoot: true,
|
|
287
358
|
}),
|
|
359
|
+
runCommandSignature('stage-authority-render', 'node tools/stage-authority-render.mjs', {
|
|
360
|
+
forwardAllArgs: true,
|
|
361
|
+
workspaceRoot: true,
|
|
362
|
+
}),
|
|
288
363
|
runCommandSignature('workload-role-candidate-report', 'node tools/workload-role-baseline/report-candidate-bundle.mjs', { forwardAllArgs: true, workspaceRoot: true }),
|
|
289
364
|
runCommandSignature('workload-role-provisioner-build', 'node tools/workload-role-baseline/build.mjs', { workspaceRoot: true }),
|
|
290
365
|
runCommandSignature('verify', 'node tools/workspace-health.mjs', {
|
|
291
366
|
dependsOn: ['blueprint-trust-check', 'supply-chain-check'],
|
|
292
367
|
workspaceRoot: true,
|
|
293
368
|
}),
|
|
369
|
+
runCommandSignature('verify-proposed', 'node tools/workspace-health.mjs', {
|
|
370
|
+
dependsOn: ['supply-chain-check'],
|
|
371
|
+
workspaceRoot: true,
|
|
372
|
+
}),
|
|
294
373
|
runCommandSignature('workspace-health', 'node tools/workspace-health.mjs', {
|
|
295
374
|
workspaceRoot: true,
|
|
296
375
|
}),
|
|
297
|
-
runScriptSignature('build', (input) =>
|
|
298
|
-
|
|
299
|
-
|
|
376
|
+
runScriptSignature('build', (input) => {
|
|
377
|
+
if (input.project.tags.includes('scope:workspace')) {
|
|
378
|
+
return `nx run-many -t build --exclude=${input.project.name}`;
|
|
379
|
+
}
|
|
380
|
+
const dataRetentionJob = /^packages\/([^/]+)\/jobs\/data-retention$/u.exec(input.project.root);
|
|
381
|
+
if (dataRetentionJob) {
|
|
382
|
+
return input.project.name ===
|
|
383
|
+
`@${dataRetentionJob[1]}/job-data-retention`
|
|
384
|
+
? 'tsc -p tsconfig.build.json'
|
|
385
|
+
: undefined;
|
|
386
|
+
}
|
|
387
|
+
return input.project.root.includes('/services/') ||
|
|
300
388
|
input.project.root.includes('/jobs/')
|
|
301
389
|
? 'tsc -p tsconfig.json'
|
|
302
|
-
: undefined
|
|
390
|
+
: undefined;
|
|
391
|
+
}, { dependsOn: ['^build'] }),
|
|
303
392
|
runScriptSignature('docker-build', (input) => {
|
|
304
393
|
const match = /^packages\/([^/]+)\/(services|jobs)\/([^/]+)$/u.exec(input.project.root);
|
|
305
394
|
if (!match)
|
|
306
395
|
return undefined;
|
|
307
396
|
const [, slice, plural, workload] = match;
|
|
397
|
+
if (plural === 'jobs' && workload === 'data-retention') {
|
|
398
|
+
return input.project.name === `@${slice}/job-data-retention`
|
|
399
|
+
? `docker build -f packages/${slice}/jobs/data-retention/Dockerfile -t ${slice}-data-retention:local ../../../..`
|
|
400
|
+
: undefined;
|
|
401
|
+
}
|
|
308
402
|
const kind = plural === 'services' ? 'service' : 'job';
|
|
309
403
|
return (`docker build -f packages/${slice}/${plural}/${workload}/Dockerfile ` +
|
|
310
404
|
`-t ${slice}-${kind}-${workload}:local ../../../..`);
|
|
@@ -318,7 +412,7 @@ const TARGET_SIGNATURES = [
|
|
|
318
412
|
? 'nx format:write'
|
|
319
413
|
: undefined, { nonPlannableRationale: LOCAL_OWNER_ONLY_RATIONALE }),
|
|
320
414
|
runScriptSignature('format:check', (input) => input.project.tags.includes('scope:workspace')
|
|
321
|
-
? 'nx format:check'
|
|
415
|
+
? 'nx format:check --all'
|
|
322
416
|
: undefined),
|
|
323
417
|
runScriptSignature('graph', (input) => input.project.tags.includes('scope:workspace') ? 'nx graph' : undefined, { nonPlannableRationale: LOCAL_OWNER_ONLY_RATIONALE }),
|
|
324
418
|
runScriptSignature('health', (input) => input.project.tags.includes('scope:workspace')
|
|
@@ -347,9 +441,9 @@ const TARGET_SIGNATURES = [
|
|
|
347
441
|
? 'pnpm run lint && pnpm run typecheck && pnpm test && pnpm run build'
|
|
348
442
|
: undefined),
|
|
349
443
|
executorSignature('deployment-plan', '@empire-builder-kit/nx:deployment-plan', exactOptions(() => ({ action: 'deploy', stage: 'staging' }))),
|
|
444
|
+
executorSignature('deploy-local', '@empire-builder-kit/nx:local-deploy', exactOptions(() => ({ stage: 'development' })), ['workspace-health'], { nonPlannableRationale: LOCAL_OWNER_ONLY_RATIONALE }),
|
|
350
445
|
executorSignature('dev', '@empire-builder-kit/nx:fleet', exactOptions(() => ({})), undefined, {
|
|
351
446
|
continuous: true,
|
|
352
|
-
nonPlannableRationale: LOCAL_OWNER_ONLY_RATIONALE,
|
|
353
447
|
}),
|
|
354
448
|
executorSignature('developer-context', '@empire-builder-kit/nx:developer-context', exactOptions(() => ({}))),
|
|
355
449
|
executorSignature('dev-doctor', '@empire-builder-kit/nx:dev-doctor', exactOptions(() => ({}))),
|
|
@@ -357,14 +451,29 @@ const TARGET_SIGNATURES = [
|
|
|
357
451
|
executorSignature('github-bootstrap', '@empire-builder-kit/nx:github-bootstrap', exactOptions(() => ({}))),
|
|
358
452
|
executorSignature('work-markers', '@empire-builder-kit/nx:work-markers', exactOptions(() => ({}))),
|
|
359
453
|
executorSignature('secret-guardrails', '@empire-builder-kit/nx:secret-guardrails', exactOptions(() => ({}))),
|
|
454
|
+
executorSignature('secret-initialize', '@empire-builder-kit/nx:secret-initialize', exactOptions(() => ({
|
|
455
|
+
logicalName: 'GeneratedPerformanceLoadHmacKeys',
|
|
456
|
+
stage: 'production',
|
|
457
|
+
}))),
|
|
360
458
|
executorSignature('secret-metadata', '@empire-builder-kit/nx:secret-metadata', exactOptions(() => ({ stage: 'development' }))),
|
|
361
|
-
executorSignature('dev-cleanup', 'nx:
|
|
459
|
+
executorSignature('dev-cleanup', 'nx:run-commands', exactOptions((input) => ({
|
|
460
|
+
commands: [
|
|
461
|
+
...(sliceDeclaresSql(input)
|
|
462
|
+
? [`pnpm nx run ${input.project.name}:db-local-down`]
|
|
463
|
+
: []),
|
|
464
|
+
`pnpm nx run ${input.project.name}:secret-personal-down`,
|
|
465
|
+
],
|
|
466
|
+
cwd: '.',
|
|
467
|
+
forwardAllArgs: false,
|
|
468
|
+
parallel: false,
|
|
469
|
+
})), ['dev-task-cleanup']),
|
|
470
|
+
executorSignature('dev-task-cleanup', '@empire-builder-kit/nx:dev-task-cleanup', exactOptions(() => ({}))),
|
|
362
471
|
executorSignature('dev', '@empire-builder-kit/nx:dev', exactOptions((input) => ({
|
|
363
472
|
cwd: input.project.root,
|
|
364
473
|
stageMode: 'consumer',
|
|
365
|
-
})), [
|
|
474
|
+
})), (input) => [
|
|
366
475
|
'dev-prerequisite',
|
|
367
|
-
'db-local-migrate',
|
|
476
|
+
...(sliceDeclaresSql(input) ? ['db-local-migrate'] : []),
|
|
368
477
|
{ params: 'forward', target: 'foundation-preflight' },
|
|
369
478
|
]),
|
|
370
479
|
executorSignature('deploy-infrastructure', '@empire-builder-kit/nx:deploy', exactOptions((input) => ({
|
|
@@ -378,13 +487,11 @@ const TARGET_SIGNATURES = [
|
|
|
378
487
|
stageMode: 'foundation',
|
|
379
488
|
})), ['verify', { params: 'forward', target: 'profile-preflight' }]),
|
|
380
489
|
executorSignature('infrastructure-plan', '@empire-builder-kit/nx:infrastructure-plan', exactOptions((input) => ({
|
|
381
|
-
action: 'deploy',
|
|
382
490
|
cwd: input.project.root,
|
|
383
491
|
stage: 'development',
|
|
384
492
|
stageMode: 'consumer',
|
|
385
493
|
}))),
|
|
386
494
|
executorSignature('infrastructure-plan', '@empire-builder-kit/nx:infrastructure-plan', exactOptions((input) => ({
|
|
387
|
-
action: 'deploy',
|
|
388
495
|
cwd: input.project.root,
|
|
389
496
|
stage: 'development',
|
|
390
497
|
stageMode: 'foundation',
|
|
@@ -421,6 +528,7 @@ const TARGET_SIGNATURES = [
|
|
|
421
528
|
'capabilities,contract,deployIfMissing,foundationProject,stage', [{ params: 'ignore', projects: ['foundation'], target: 'verify' }]),
|
|
422
529
|
executorSignature('profile-preflight', '@empire-builder-kit/nx:foundation-profile-preflight', exactOptions(() => ({ stage: 'development' }))),
|
|
423
530
|
executorSignature('remove-preflight', '@empire-builder-kit/nx:foundation-remove-preflight', exactOptions(() => ({ stage: 'development' }))),
|
|
531
|
+
executorSignature('router-waf-rehearsal', '@empire-builder-kit/nx:router-waf-rehearsal', exactOptions(() => ({})), undefined, { nonPlannableRationale: LOCAL_OWNER_ONLY_RATIONALE }),
|
|
424
532
|
];
|
|
425
533
|
/**
|
|
426
534
|
* Rules are deliberately ordered from highest/conservative authority to
|
|
@@ -481,7 +589,7 @@ const TARGET_RULES = [
|
|
|
481
589
|
'docs/developer-agent.md',
|
|
482
590
|
],
|
|
483
591
|
evidenceClasses: ['protected-promotion-proof'],
|
|
484
|
-
matches: (targetName) => exact('deployment-plan', 'github-bootstrap', 'infrastructure-plan', 'infrastructure-drift', 'ecr-inspector-collect', 'performance-cost-collect', 'reliability-deployed-verify', 'reliability-diagnostic', 'reliability-exercise-collect', 'secret-metadata', 'smoke-deployed')(targetName),
|
|
592
|
+
matches: (targetName) => exact('deployment-plan', 'github-bootstrap', 'infrastructure-plan', 'infrastructure-drift', 'ecr-inspector-collect', 'performance-cost-collect', 'reliability-deployed-verify', 'reliability-diagnostic', 'reliability-exercise-collect', 'secret-initialize', 'secret-metadata', 'smoke-deployed', 'stage-authority-render')(targetName),
|
|
485
593
|
requiredVerification: ['source', 'protected-proof'],
|
|
486
594
|
},
|
|
487
595
|
{
|
|
@@ -491,7 +599,7 @@ const TARGET_RULES = [
|
|
|
491
599
|
contractClasses: ['database'],
|
|
492
600
|
documentationPaths: ['AGENTS.md', 'docs/developer-agent.md'],
|
|
493
601
|
evidenceClasses: ['local-integration'],
|
|
494
|
-
matches: exact('test-integration'),
|
|
602
|
+
matches: exact('test-integration', 'verify-local-browser'),
|
|
495
603
|
requiredVerification: ['local-integration'],
|
|
496
604
|
},
|
|
497
605
|
{
|
|
@@ -500,7 +608,7 @@ const TARGET_RULES = [
|
|
|
500
608
|
contractClasses: ['database', 'infrastructure'],
|
|
501
609
|
documentationPaths: ['AGENTS.md', 'docs/developer-agent.md'],
|
|
502
610
|
evidenceClasses: ['local-integration'],
|
|
503
|
-
matches: exact('dev', 'dev-cleanup', 'dev-setup', 'db-local-down', 'db-local-migrate', 'db-local-up', 'secret-personal-down'),
|
|
611
|
+
matches: exact('dev', 'dev-cleanup', 'dev-task-cleanup', 'dev-setup', 'db-local-down', 'db-local-migrate', 'db-local-up', 'secret-personal-down'),
|
|
504
612
|
requiredVerification: ['local-integration'],
|
|
505
613
|
},
|
|
506
614
|
{
|
|
@@ -515,7 +623,7 @@ const TARGET_RULES = [
|
|
|
515
623
|
],
|
|
516
624
|
documentationPaths: ['AGENTS.md', 'docs/developer-agent.md'],
|
|
517
625
|
evidenceClasses: ['source'],
|
|
518
|
-
matches: (targetName) => exact('api-contract-baseline', 'api-contract-generate', 'authorization-check', 'build', 'configuration-expected', 'contract-dependencies-sync', 'db-generate', 'ecr-scan-applicability', 'format:check', 'frontend-visual', 'frontend-visual-update', 'install-git-hooks', 'performance-tag-coverage', 'performance-unit-cost', 'release-artifacts', 'release-candidate', 'release-manifest', 'smoke-deployed-check', 'supply-chain-scan', 'test', 'typecheck', 'verify', 'workload-role-provisioner-build')(targetName),
|
|
626
|
+
matches: (targetName) => exact('api-contract-baseline', 'api-contract-generate', 'authorization-check', 'build', 'configuration-expected', 'contract-dependencies-sync', 'db-generate', 'ecr-scan-applicability', 'format:check', 'frontend-visual', 'frontend-visual-update', 'install-git-hooks', 'performance-tag-coverage', 'performance-unit-cost', 'release-artifacts', 'release-candidate', 'release-manifest', 'smoke-deployed-check', 'supply-chain-scan', 'test', 'typecheck', 'verify', 'verify-proposed', 'workload-role-provisioner-build')(targetName),
|
|
519
627
|
requiredVerification: ['source'],
|
|
520
628
|
},
|
|
521
629
|
{
|
|
@@ -540,9 +648,11 @@ const TARGET_RULES = [
|
|
|
540
648
|
* Static invocable operations contain complete argv only. Source edits use a
|
|
541
649
|
* commandless, project-scoped identity. Stable generators use commandless
|
|
542
650
|
* typed templates that planning binds to exact normalized argv. Mutable dev
|
|
543
|
-
* configuration and human-
|
|
651
|
+
* configuration and human-supplied secret set/remove stay with their direct
|
|
652
|
+
* owner. Value-blind generated-secret initialization is admitted only through
|
|
653
|
+
* its exact report-first Nx target.
|
|
544
654
|
*/
|
|
545
|
-
function localDevOperations(projects, externalOwnedProjectNames) {
|
|
655
|
+
function localDevOperations(projects, externalOwnedProjectNames, developmentClosures, blockedDevelopment) {
|
|
546
656
|
const sliceNames = projects
|
|
547
657
|
.map(({ context }) => context)
|
|
548
658
|
.filter(({ tags }) => tags.includes('type:slice'))
|
|
@@ -578,7 +688,7 @@ function localDevOperations(projects, externalOwnedProjectNames) {
|
|
|
578
688
|
id: `ebk-dev:${command}:${slice}`,
|
|
579
689
|
owner: 'ebk-reconciler',
|
|
580
690
|
policyLifecycleAction: 'dev',
|
|
581
|
-
projects: [slice],
|
|
691
|
+
projects: developmentClosures.get(slice) ?? [slice],
|
|
582
692
|
requiredVerification: ['ebk-dev:doctor'],
|
|
583
693
|
});
|
|
584
694
|
return [
|
|
@@ -593,7 +703,7 @@ function localDevOperations(projects, externalOwnedProjectNames) {
|
|
|
593
703
|
readOnly('ebk-dev:status', ['dev', 'status', '--json']),
|
|
594
704
|
...sliceNames.flatMap((slice) => [
|
|
595
705
|
readOnly(`ebk-dev:logs:${slice}`, ['dev', 'logs', slice, '--limit=200', '--json'], [slice]),
|
|
596
|
-
...(externalOwnedProjectNames.has(slice)
|
|
706
|
+
...(externalOwnedProjectNames.has(slice) || blockedDevelopment.has(slice)
|
|
597
707
|
? []
|
|
598
708
|
: [
|
|
599
709
|
lifecycle('up', slice),
|
|
@@ -754,7 +864,17 @@ function reviewedExternalDependencies(input) {
|
|
|
754
864
|
}
|
|
755
865
|
function dependencyTargets(input, dependsOn, availableProjects, availableTargets) {
|
|
756
866
|
const targets = [];
|
|
757
|
-
|
|
867
|
+
// The exact generated sequential composite invokes these targets after its
|
|
868
|
+
// native prerequisite; include their authority even though they are not
|
|
869
|
+
// sibling Nx prerequisites (which would execute before native cleanup).
|
|
870
|
+
const executionDependencies = input.targetName === 'dev-cleanup'
|
|
871
|
+
? [
|
|
872
|
+
...dependsOn,
|
|
873
|
+
...(sliceDeclaresSql(input) ? ['db-local-down'] : []),
|
|
874
|
+
'secret-personal-down',
|
|
875
|
+
]
|
|
876
|
+
: dependsOn;
|
|
877
|
+
for (const dependency of executionDependencies) {
|
|
758
878
|
if (typeof dependency === 'string') {
|
|
759
879
|
if (dependency.startsWith('^')) {
|
|
760
880
|
const targetName = dependency.slice(1);
|
|
@@ -988,12 +1108,34 @@ function composeTargetOperation(operation, dependencies) {
|
|
|
988
1108
|
function sourceEditOperations(projects, authenticatedTargets, workspaceVerification) {
|
|
989
1109
|
return projects.flatMap(({ context }) => {
|
|
990
1110
|
const projectVerification = `${context.name}:verify`;
|
|
991
|
-
const
|
|
1111
|
+
const fallbackVerification = context.targets.includes('verify')
|
|
992
1112
|
? authenticatedTargets.has(projectVerification)
|
|
993
1113
|
? projectVerification
|
|
994
1114
|
: undefined
|
|
995
1115
|
: workspaceVerification;
|
|
996
|
-
|
|
1116
|
+
const featureTargets = ['lint', 'secret-guardrails', 'test', 'typecheck']
|
|
1117
|
+
.filter((target) => context.targets.includes(target))
|
|
1118
|
+
.map((target) => `${context.name}:${target}`);
|
|
1119
|
+
// Never substitute an unauthenticated check with a weaker fallback.
|
|
1120
|
+
if (featureTargets.some((target) => !authenticatedTargets.has(target)))
|
|
1121
|
+
return [];
|
|
1122
|
+
const workspace = workspaceVerification?.slice(0, workspaceVerification.lastIndexOf(':'));
|
|
1123
|
+
const ownershipChecks = workspace
|
|
1124
|
+
? ['work-markers', 'workspace-health']
|
|
1125
|
+
.map((target) => `${workspace}:${target}`)
|
|
1126
|
+
.filter((target) => authenticatedTargets.has(target))
|
|
1127
|
+
: [];
|
|
1128
|
+
const requiredVerification = [
|
|
1129
|
+
...new Set([
|
|
1130
|
+
...(featureTargets.length > 0
|
|
1131
|
+
? featureTargets
|
|
1132
|
+
: fallbackVerification
|
|
1133
|
+
? [fallbackVerification]
|
|
1134
|
+
: []),
|
|
1135
|
+
...ownershipChecks,
|
|
1136
|
+
]),
|
|
1137
|
+
].sort();
|
|
1138
|
+
if (requiredVerification.length === 0)
|
|
997
1139
|
return [];
|
|
998
1140
|
return [
|
|
999
1141
|
{
|
|
@@ -1006,7 +1148,7 @@ function sourceEditOperations(projects, authenticatedTargets, workspaceVerificat
|
|
|
1006
1148
|
id: `source-edit:${context.name}`,
|
|
1007
1149
|
owner: 'source-edit',
|
|
1008
1150
|
projects: [context.name],
|
|
1009
|
-
requiredVerification
|
|
1151
|
+
requiredVerification,
|
|
1010
1152
|
},
|
|
1011
1153
|
];
|
|
1012
1154
|
});
|
|
@@ -1015,10 +1157,38 @@ function createDeveloperAgentOperationRegistry(projects, options) {
|
|
|
1015
1157
|
const namedInputRuntimeDetected = options.namedInputDefinitions.some(containsRuntimeInput);
|
|
1016
1158
|
const exposedProjectNames = new Set(options.exposedProjectNames ?? projects.map(({ context }) => context.name));
|
|
1017
1159
|
const externalOwnedProjectNames = new Set(options.externalOwnedProjectNames);
|
|
1160
|
+
const missingFleetSlice = options.allSliceProjectNames?.find((name) => !projects.some(({ context }) => context.name === name));
|
|
1161
|
+
const implicitFleetCrossesExternalOwnership = (input) => externalOwnedProjectNames.size > 0 &&
|
|
1162
|
+
input.target.executor === '@empire-builder-kit/nx:fleet';
|
|
1018
1163
|
const exposedProjects = projects.filter(({ context }) => exposedProjectNames.has(context.name));
|
|
1019
|
-
const operations = [
|
|
1020
|
-
|
|
1021
|
-
|
|
1164
|
+
const operations = [];
|
|
1165
|
+
const adapters = new Map();
|
|
1166
|
+
const developmentClosures = new Map();
|
|
1167
|
+
const developmentReasons = new Map();
|
|
1168
|
+
for (const project of projects) {
|
|
1169
|
+
if (project.localDev === undefined)
|
|
1170
|
+
continue;
|
|
1171
|
+
try {
|
|
1172
|
+
adapters.set(project.context.name, (0, contracts_js_1.validateLocalDevAdapter)(project.localDev));
|
|
1173
|
+
}
|
|
1174
|
+
catch {
|
|
1175
|
+
developmentReasons.set(project.context.name, `Slice ${project.context.name} has invalid local-development metadata; repair its versioned adapter before planning development.`);
|
|
1176
|
+
}
|
|
1177
|
+
}
|
|
1178
|
+
for (const name of adapters.keys()) {
|
|
1179
|
+
try {
|
|
1180
|
+
const closure = (0, contracts_js_1.resolveFleetSliceDependencies)(adapters, [name]);
|
|
1181
|
+
developmentClosures.set(name, closure);
|
|
1182
|
+
const external = closure.find((dependency) => externalOwnedProjectNames.has(dependency));
|
|
1183
|
+
if (external)
|
|
1184
|
+
developmentReasons.set(name, options.externalOwnershipHistoryComplete === false
|
|
1185
|
+
? `Slice ${name} has history-unverified dependency ${external}; protected external-Blueprint history is incomplete. Retained-plan execution is unavailable until the configured protected history is available. Ordinary feature work may use the documented typed generator and inspected seeded/user-owned surfaces with focused Nx checks; do not invent external Blueprint trust.`
|
|
1186
|
+
: `Slice ${name} requires external-owned dependency ${external}; use its explicit Blueprint owner. External development contracts are not authenticated by this operation registry.`);
|
|
1187
|
+
}
|
|
1188
|
+
catch {
|
|
1189
|
+
developmentReasons.set(name, `Slice ${name} has an unresolved, cyclic, or invalid dependency Slice; repair its declared dependencySlices before planning development.`);
|
|
1190
|
+
}
|
|
1191
|
+
}
|
|
1022
1192
|
const nonPlannableTargets = [];
|
|
1023
1193
|
const unsupportedTargets = [];
|
|
1024
1194
|
const orderedProjects = [...projects].sort((left, right) => (0, ordering_js_1.compareDeveloperAgentStrings)(left.context.name, right.context.name));
|
|
@@ -1027,7 +1197,7 @@ function createDeveloperAgentOperationRegistry(projects, options) {
|
|
|
1027
1197
|
for (const [targetName, target] of Object.entries(project.targets)) {
|
|
1028
1198
|
targetInputs.set(`${project.context.name}:${targetName}`, {
|
|
1029
1199
|
namedInputRuntimeDetected,
|
|
1030
|
-
project: project.context,
|
|
1200
|
+
project: { ...project.context, targets: Object.keys(project.targets) },
|
|
1031
1201
|
target,
|
|
1032
1202
|
targetName,
|
|
1033
1203
|
});
|
|
@@ -1078,7 +1248,10 @@ function createDeveloperAgentOperationRegistry(projects, options) {
|
|
|
1078
1248
|
authentication.set(id, false);
|
|
1079
1249
|
return false;
|
|
1080
1250
|
}
|
|
1081
|
-
if (input.namedInputRuntimeDetected
|
|
1251
|
+
if (input.namedInputRuntimeDetected ||
|
|
1252
|
+
(input.target.executor === '@empire-builder-kit/nx:fleet' &&
|
|
1253
|
+
missingFleetSlice !== undefined) ||
|
|
1254
|
+
implicitFleetCrossesExternalOwnership(input)) {
|
|
1082
1255
|
authentication.set(id, false);
|
|
1083
1256
|
return false;
|
|
1084
1257
|
}
|
|
@@ -1112,6 +1285,35 @@ function createDeveloperAgentOperationRegistry(projects, options) {
|
|
|
1112
1285
|
}
|
|
1113
1286
|
const nextActive = new Set(active);
|
|
1114
1287
|
nextActive.add(id);
|
|
1288
|
+
if (input.target.executor === '@empire-builder-kit/nx:fleet') {
|
|
1289
|
+
for (const project of projects.filter(({ context }) => context.tags.includes('type:slice'))) {
|
|
1290
|
+
if (!authenticate(`${project.context.name}:${adapters.get(project.context.name)?.target ?? 'dev'}`, nextActive)) {
|
|
1291
|
+
authentication.set(id, false);
|
|
1292
|
+
return false;
|
|
1293
|
+
}
|
|
1294
|
+
}
|
|
1295
|
+
}
|
|
1296
|
+
if (input.targetName === (adapters.get(input.project.name)?.target ?? 'dev')) {
|
|
1297
|
+
if (developmentReasons.has(input.project.name)) {
|
|
1298
|
+
authentication.set(id, false);
|
|
1299
|
+
return false;
|
|
1300
|
+
}
|
|
1301
|
+
for (const name of developmentClosures.get(input.project.name) ?? []) {
|
|
1302
|
+
if (name === input.project.name)
|
|
1303
|
+
continue;
|
|
1304
|
+
const dependencyAdapter = adapters.get(name);
|
|
1305
|
+
if (!dependencyAdapter) {
|
|
1306
|
+
authentication.set(id, false);
|
|
1307
|
+
return false;
|
|
1308
|
+
}
|
|
1309
|
+
const dependencyId = `${name}:${dependencyAdapter.target}`;
|
|
1310
|
+
if (!authenticate(dependencyId, nextActive)) {
|
|
1311
|
+
developmentReasons.set(input.project.name, `Slice ${input.project.name} requires non-plannable dependency ${dependencyId}; use that dependency's explicit owner before planning development.`);
|
|
1312
|
+
authentication.set(id, false);
|
|
1313
|
+
return false;
|
|
1314
|
+
}
|
|
1315
|
+
}
|
|
1316
|
+
}
|
|
1115
1317
|
const authenticated = dependencies.every((dependency) => authenticate(dependency.id, nextActive));
|
|
1116
1318
|
authentication.set(id, authenticated);
|
|
1117
1319
|
return authenticated;
|
|
@@ -1148,7 +1350,24 @@ function createDeveloperAgentOperationRegistry(projects, options) {
|
|
|
1148
1350
|
composedInvocations.set(memoKey, null);
|
|
1149
1351
|
return undefined;
|
|
1150
1352
|
}
|
|
1151
|
-
const
|
|
1353
|
+
const allDependencyTargets = [...dependencyTargetsForOperation];
|
|
1354
|
+
const developmentProjects = input.target.executor === '@empire-builder-kit/nx:fleet'
|
|
1355
|
+
? projects
|
|
1356
|
+
.filter(({ context }) => context.tags.includes('type:slice'))
|
|
1357
|
+
.map(({ context }) => context.name)
|
|
1358
|
+
: input.targetName === adapters.get(input.project.name)?.target
|
|
1359
|
+
? (developmentClosures.get(input.project.name) ?? []).filter((name) => name !== input.project.name)
|
|
1360
|
+
: [];
|
|
1361
|
+
for (const name of developmentProjects) {
|
|
1362
|
+
const dependencyId = `${name}:${adapters.get(name)?.target ?? 'dev'}`;
|
|
1363
|
+
if (!allDependencyTargets.some(({ id }) => id === dependencyId)) {
|
|
1364
|
+
allDependencyTargets.push({
|
|
1365
|
+
id: dependencyId,
|
|
1366
|
+
params: 'ignore',
|
|
1367
|
+
});
|
|
1368
|
+
}
|
|
1369
|
+
}
|
|
1370
|
+
const dependencies = allDependencyTargets.map((dependency) => {
|
|
1152
1371
|
const composed = composeInvocation(dependency.id, dependency.params === 'forward' ? forwardedStage : undefined);
|
|
1153
1372
|
if (!composed)
|
|
1154
1373
|
return undefined;
|
|
@@ -1209,6 +1428,12 @@ function createDeveloperAgentOperationRegistry(projects, options) {
|
|
|
1209
1428
|
}
|
|
1210
1429
|
}
|
|
1211
1430
|
const authenticatedTargets = new Set([...targetInputs.keys()].filter((target) => compose(target) !== undefined));
|
|
1431
|
+
const blockedDevelopment = new Set(developmentReasons.keys());
|
|
1432
|
+
for (const [name, adapter] of adapters) {
|
|
1433
|
+
if (!authenticatedTargets.has(`${name}:${adapter.target}`))
|
|
1434
|
+
blockedDevelopment.add(name);
|
|
1435
|
+
}
|
|
1436
|
+
operations.push(...localDevOperations(exposedProjects, externalOwnedProjectNames, developmentClosures, blockedDevelopment));
|
|
1212
1437
|
operations.push(...sourceEditOperations(exposedProjects, authenticatedTargets, workspaceVerification));
|
|
1213
1438
|
for (const project of orderedProjects) {
|
|
1214
1439
|
if (!exposedProjectNames.has(project.context.name))
|
|
@@ -1217,6 +1442,27 @@ function createDeveloperAgentOperationRegistry(projects, options) {
|
|
|
1217
1442
|
const target = `${project.context.name}:${targetName}`;
|
|
1218
1443
|
const input = targetInputs.get(target);
|
|
1219
1444
|
const signature = input ? authenticatedTargetSignature(input) : undefined;
|
|
1445
|
+
if (input?.target.executor === '@empire-builder-kit/nx:fleet' &&
|
|
1446
|
+
missingFleetSlice !== undefined) {
|
|
1447
|
+
nonPlannableTargets.push({
|
|
1448
|
+
target,
|
|
1449
|
+
rationale: `Root Fleet development implicitly selects Slice ${missingFleetSlice} outside this bounded context. Select an owned Slice ebk-dev operation or inspect the full development target inventory first.`,
|
|
1450
|
+
});
|
|
1451
|
+
continue;
|
|
1452
|
+
}
|
|
1453
|
+
const developmentReason = developmentReasons.get(project.context.name);
|
|
1454
|
+
if (developmentReason &&
|
|
1455
|
+
targetName === (adapters.get(project.context.name)?.target ?? 'dev')) {
|
|
1456
|
+
nonPlannableTargets.push({ target, rationale: developmentReason });
|
|
1457
|
+
continue;
|
|
1458
|
+
}
|
|
1459
|
+
if (input && signature && implicitFleetCrossesExternalOwnership(input)) {
|
|
1460
|
+
nonPlannableTargets.push({
|
|
1461
|
+
target,
|
|
1462
|
+
rationale: 'This root Fleet target implicitly selects all Slices, including external-owned Blueprint targets outside the authenticated development execution boundary. Select an owned Slice ebk-dev operation or require an explicit external Blueprint development contract from its owner (Milestone 4).',
|
|
1463
|
+
});
|
|
1464
|
+
continue;
|
|
1465
|
+
}
|
|
1220
1466
|
if (signature?.nonPlannableRationale &&
|
|
1221
1467
|
!externalOwnedProjectNames.has(project.context.name)) {
|
|
1222
1468
|
nonPlannableTargets.push({
|