@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,196 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderWorkspaceCiInstallFiles = renderWorkspaceCiInstallFiles;
|
|
4
|
+
/** Verification-only setup: repository code, never an additional authority. */
|
|
5
|
+
function renderWorkspaceCiInstallFiles() {
|
|
6
|
+
return {
|
|
7
|
+
'tools/ci/install.mjs': String.raw `import { spawn } from 'node:child_process';
|
|
8
|
+
import { lstatSync, realpathSync } from 'node:fs';
|
|
9
|
+
import path from 'node:path';
|
|
10
|
+
import { pathToFileURL } from 'node:url';
|
|
11
|
+
|
|
12
|
+
const root = realpathSync(process.cwd());
|
|
13
|
+
const hookPath = path.join(root, 'tools/ci/dependency-setup.mjs');
|
|
14
|
+
const controller = new AbortController();
|
|
15
|
+
let interrupted;
|
|
16
|
+
const interrupt = (signal) => {
|
|
17
|
+
interrupted ??= signal;
|
|
18
|
+
controller.abort(new Error('CI dependency installation interrupted: ' + signal));
|
|
19
|
+
};
|
|
20
|
+
const onInt = () => interrupt('SIGINT');
|
|
21
|
+
const onTerm = () => interrupt('SIGTERM');
|
|
22
|
+
process.on('SIGINT', onInt);
|
|
23
|
+
process.on('SIGTERM', onTerm);
|
|
24
|
+
|
|
25
|
+
function install() {
|
|
26
|
+
controller.signal.throwIfAborted();
|
|
27
|
+
return new Promise((resolve, reject) => {
|
|
28
|
+
const child = spawn('pnpm', ['install', '--frozen-lockfile'], {
|
|
29
|
+
cwd: root,
|
|
30
|
+
stdio: 'inherit',
|
|
31
|
+
shell: false,
|
|
32
|
+
detached: process.platform !== 'win32',
|
|
33
|
+
});
|
|
34
|
+
let escalation;
|
|
35
|
+
const kill = (signal) => {
|
|
36
|
+
if (!child.pid) return;
|
|
37
|
+
try {
|
|
38
|
+
if (process.platform === 'win32') child.kill(signal);
|
|
39
|
+
else process.kill(-child.pid, signal);
|
|
40
|
+
} catch (error) {
|
|
41
|
+
if (error.code !== 'ESRCH') throw error;
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
const abort = () => {
|
|
45
|
+
kill('SIGTERM');
|
|
46
|
+
escalation = setTimeout(() => kill('SIGKILL'), 5000);
|
|
47
|
+
escalation.unref();
|
|
48
|
+
};
|
|
49
|
+
controller.signal.addEventListener('abort', abort, { once: true });
|
|
50
|
+
const finish = (error) => {
|
|
51
|
+
clearTimeout(escalation);
|
|
52
|
+
controller.signal.removeEventListener('abort', abort);
|
|
53
|
+
if (error) reject(error);
|
|
54
|
+
else resolve();
|
|
55
|
+
};
|
|
56
|
+
child.once('error', finish);
|
|
57
|
+
child.once('exit', (code, signal) => finish(
|
|
58
|
+
code === 0 && !signal && !controller.signal.aborted ? undefined :
|
|
59
|
+
new Error('pnpm frozen install failed (' + (signal ?? code) + ').'),
|
|
60
|
+
));
|
|
61
|
+
if (controller.signal.aborted) abort();
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
let cleanup;
|
|
66
|
+
let failed = false;
|
|
67
|
+
try {
|
|
68
|
+
let stat;
|
|
69
|
+
try { stat = lstatSync(hookPath); }
|
|
70
|
+
catch (error) { if (error.code !== 'ENOENT') throw error; }
|
|
71
|
+
if (stat) {
|
|
72
|
+
if (!stat.isFile() || stat.isSymbolicLink() || realpathSync(hookPath) !== hookPath) {
|
|
73
|
+
throw new Error('CI dependency setup must be a regular repository-local file.');
|
|
74
|
+
}
|
|
75
|
+
const hook = await import(pathToFileURL(hookPath).href);
|
|
76
|
+
if (typeof hook.setup !== 'function' || typeof hook.cleanup !== 'function') {
|
|
77
|
+
throw new Error('CI dependency setup must export setup and cleanup functions.');
|
|
78
|
+
}
|
|
79
|
+
// Register cleanup before setup: partial setup failure must also clean up.
|
|
80
|
+
cleanup = hook.cleanup;
|
|
81
|
+
await hook.setup({ workspaceRoot: root, signal: controller.signal });
|
|
82
|
+
}
|
|
83
|
+
await install();
|
|
84
|
+
} catch (error) {
|
|
85
|
+
failed = true;
|
|
86
|
+
console.error('[ebk-ci-install] ' + error.message);
|
|
87
|
+
} finally {
|
|
88
|
+
try {
|
|
89
|
+
// Cleanup must remain operable after the setup/install signal is aborted.
|
|
90
|
+
if (cleanup) await cleanup({ workspaceRoot: root });
|
|
91
|
+
} catch (error) {
|
|
92
|
+
failed = true;
|
|
93
|
+
console.error('[ebk-ci-install] Cleanup failed: ' + error.message);
|
|
94
|
+
}
|
|
95
|
+
process.off('SIGINT', onInt);
|
|
96
|
+
process.off('SIGTERM', onTerm);
|
|
97
|
+
}
|
|
98
|
+
process.exitCode = interrupted === 'SIGINT' ? 130 : interrupted ? 143 : failed ? 1 : 0;
|
|
99
|
+
`,
|
|
100
|
+
'tools/ci/release-candidates.mjs': String.raw `import { existsSync, lstatSync, readFileSync, realpathSync } from 'node:fs';
|
|
101
|
+
import { createRequire } from 'node:module';
|
|
102
|
+
import path from 'node:path';
|
|
103
|
+
import { pathToFileURL } from 'node:url';
|
|
104
|
+
|
|
105
|
+
export function selectReleaseCandidates(nodes, root) {
|
|
106
|
+
if (!nodes || typeof nodes !== 'object' || Array.isArray(nodes)) {
|
|
107
|
+
throw new Error('Nx project graph is invalid.');
|
|
108
|
+
}
|
|
109
|
+
const selected = [];
|
|
110
|
+
for (const [name, node] of Object.entries(nodes)) {
|
|
111
|
+
const data = node?.data;
|
|
112
|
+
if (!data || typeof data.root !== 'string' || !data.targets || typeof data.targets !== 'object') {
|
|
113
|
+
throw new Error('Nx project configuration is invalid: ' + name);
|
|
114
|
+
}
|
|
115
|
+
const projectRoot = path.resolve(root, data.root);
|
|
116
|
+
const relative = path.relative(root, projectRoot);
|
|
117
|
+
if (relative.startsWith('..') || path.isAbsolute(relative)) {
|
|
118
|
+
throw new Error('Project root escapes workspace: ' + name);
|
|
119
|
+
}
|
|
120
|
+
const ownershipPath = path.join(projectRoot, '.ebk/ownership.json');
|
|
121
|
+
let standard = false;
|
|
122
|
+
if (existsSync(ownershipPath)) {
|
|
123
|
+
if (!lstatSync(ownershipPath).isFile() || realpathSync(ownershipPath) !== ownershipPath) {
|
|
124
|
+
throw new Error('Project ownership is not a regular file: ' + name);
|
|
125
|
+
}
|
|
126
|
+
standard = JSON.parse(readFileSync(ownershipPath, 'utf8')).blueprint?.name ===
|
|
127
|
+
'@empire-builder-kit/blueprint-standard';
|
|
128
|
+
}
|
|
129
|
+
const targets = data.targets;
|
|
130
|
+
if ((standard || targets['release-artifacts'] || targets['container-release']) && !targets['release-candidate']) {
|
|
131
|
+
throw new Error('Application release-candidate target is missing: ' + name);
|
|
132
|
+
}
|
|
133
|
+
if (!targets['release-candidate']) continue;
|
|
134
|
+
if (!/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/u.test(name) || data.root !== 'packages/' + name) {
|
|
135
|
+
throw new Error('Release candidate project identity is invalid: ' + name);
|
|
136
|
+
}
|
|
137
|
+
selected.push(name);
|
|
138
|
+
}
|
|
139
|
+
return selected.sort();
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
if (process.argv[1] && pathToFileURL(path.resolve(process.argv[1])).href === import.meta.url) {
|
|
143
|
+
try {
|
|
144
|
+
const require = createRequire(import.meta.url);
|
|
145
|
+
// pnpm exposes this dependency to the installed EBK package, not the adopter root.
|
|
146
|
+
const frameworkRequire = createRequire(require.resolve('@empire-builder-kit/nx/package.json'));
|
|
147
|
+
const { createProjectGraphAsync } = frameworkRequire('@nx/devkit');
|
|
148
|
+
const graph = await createProjectGraphAsync();
|
|
149
|
+
process.stdout.write(selectReleaseCandidates(graph.nodes, realpathSync(process.cwd())).join(','));
|
|
150
|
+
} catch (error) {
|
|
151
|
+
console.error('[ebk-release-candidates] ' + error.message);
|
|
152
|
+
process.exitCode = 1;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
`,
|
|
156
|
+
'docs/ci-dependency-setup.md': `# Verification CI dependency setup
|
|
157
|
+
|
|
158
|
+
Ordinary verification CI runs the fixed command \`pnpm install --frozen-lockfile\`
|
|
159
|
+
through the managed \`tools/ci/install.mjs\` wrapper. Without an extension its
|
|
160
|
+
installation, package policies and native diagnostics are unchanged.
|
|
161
|
+
|
|
162
|
+
For private package access or another installation prerequisite, create the
|
|
163
|
+
adopter-owned \`tools/ci/dependency-setup.mjs\`. Export two async functions:
|
|
164
|
+
|
|
165
|
+
\`setup({ workspaceRoot, signal })\` establishes the prerequisite **before** pnpm
|
|
166
|
+
starts. \`cleanup({ workspaceRoot })\` removes only resources owned by this
|
|
167
|
+
invocation. Both exports are required. Setup must support the cancellation
|
|
168
|
+
signal, and cleanup must be idempotent and work after partial setup failure.
|
|
169
|
+
Do not perform side effects at module import time. Use Node built-ins or
|
|
170
|
+
explicitly pinned independent tooling: workspace dependencies are not installed
|
|
171
|
+
yet. Do not replace the installer or relax its frozen lockfile/supply-chain rules.
|
|
172
|
+
|
|
173
|
+
The extension may temporarily configure the existing root registry surface.
|
|
174
|
+
It must preserve pre-existing configuration, retain exact ownership for any
|
|
175
|
+
temporary process or file, and remove its temporary state before returning.
|
|
176
|
+
Do not log credentials or copy authenticated configuration into artifacts.
|
|
177
|
+
Failed setup prevents installation; failed install or cleanup prevents accepted
|
|
178
|
+
job success. SIGINT/SIGTERM cancels the installer process group on POSIX, then
|
|
179
|
+
attempts cleanup. Hard termination still requires exact owned-remnant recovery;
|
|
180
|
+
neither hooks nor cleanup can be guaranteed after SIGKILL or runner loss.
|
|
181
|
+
|
|
182
|
+
This is repository code executing with the verification job's existing read-only
|
|
183
|
+
permissions, not a sandbox or a new credential authority. It is not installed in
|
|
184
|
+
OIDC deployment workflows and cannot change protected environments, review gates
|
|
185
|
+
or AWS permissions. No hook is generated by default; managed upgrades preserve
|
|
186
|
+
this unclaimed adopter-owned path. Never hand-edit the managed wrapper/workflow.
|
|
187
|
+
|
|
188
|
+
Infrastructure-only workspaces still run policy and source verification. With
|
|
189
|
+
no application release producers, the release-candidate job reports not
|
|
190
|
+
applicable and uploads no fictitious application candidate. Standard Slices and
|
|
191
|
+
other projects declaring release-artifacts/container-release must retain their
|
|
192
|
+
release-candidate target; declared candidates must still build and emit files.
|
|
193
|
+
`,
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
//# sourceMappingURL=workspace-files-ci-install.js.map
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import type { DeploymentProfile } from '../../repository-policy/index.js';
|
|
1
2
|
export declare const DEVELOPER_AGENT_RUNBOOK_PATH: "docs/developer-agent.md";
|
|
2
3
|
export declare const DEVELOPER_AGENT_HANDOFF_TEMPLATE_PATH: "docs/developer-agent-handoff.template.json";
|
|
3
4
|
export declare const DEVELOPER_AGENT_ADAPTER_EVALUATION_PATH: "docs/developer-agent-adapters.md";
|
|
4
5
|
export declare const DEVELOPER_AGENT_WORKSPACE_SEEDED_PATHS: readonly ["docs/developer-agent.md", "docs/developer-agent-handoff.template.json", "docs/developer-agent-adapters.md"];
|
|
5
6
|
export interface DeveloperAgentWorkspaceFileOptions {
|
|
7
|
+
deploymentProfile: DeploymentProfile;
|
|
6
8
|
frameworkVersion: string;
|
|
7
9
|
name: string;
|
|
8
10
|
}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.DEVELOPER_AGENT_WORKSPACE_SEEDED_PATHS = exports.DEVELOPER_AGENT_ADAPTER_EVALUATION_PATH = exports.DEVELOPER_AGENT_HANDOFF_TEMPLATE_PATH = exports.DEVELOPER_AGENT_RUNBOOK_PATH = void 0;
|
|
4
4
|
exports.renderDeveloperAgentWorkspaceFilePlan = renderDeveloperAgentWorkspaceFilePlan;
|
|
5
5
|
const model_js_1 = require("../../developer-agent/model.js");
|
|
6
|
+
const workspace_files_adopter_skills_js_1 = require("./workspace-files-adopter-skills.js");
|
|
6
7
|
exports.DEVELOPER_AGENT_RUNBOOK_PATH = 'docs/developer-agent.md';
|
|
7
8
|
exports.DEVELOPER_AGENT_HANDOFF_TEMPLATE_PATH = 'docs/developer-agent-handoff.template.json';
|
|
8
9
|
exports.DEVELOPER_AGENT_ADAPTER_EVALUATION_PATH = 'docs/developer-agent-adapters.md';
|
|
@@ -19,19 +20,58 @@ const HANDOFF_STATE_DESCRIPTIONS = {
|
|
|
19
20
|
'failed-recovery-or-cleanup-required': 'Execution failed and named recovery or cleanup work is still required.',
|
|
20
21
|
'proposal-or-research-only': 'The record contains no implementation or mutation claim.',
|
|
21
22
|
};
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
/**
|
|
24
|
+
* One canonical secret hand-off for seeded agent guidance. `set` stays
|
|
25
|
+
* human-only (the CLI refuses agent and CI markers); `remove` carries no value
|
|
26
|
+
* and an agent may start it, with the human typing the hidden confirmation.
|
|
27
|
+
*/
|
|
28
|
+
const HUMAN_SECRET_HANDOFF = `Human-supplied secret values are entered only by a human, in a terminal no agent spawned,
|
|
29
|
+
through \`ebk secret set <slice> <logical-name>\`; the command refuses agent and CI
|
|
30
|
+
environments, so the plaintext never crosses an agent-owned process. An agent prepares that
|
|
31
|
+
step: it names the exact Slice and logical name, tells the human the exact command to run,
|
|
32
|
+
and verifies afterwards with the value-blind status and verification targets.
|
|
33
|
+
\`ebk secret remove <slice> <logical-name>\` carries no value: an agent may start it, and the
|
|
34
|
+
human types the hidden confirmation in that interactive terminal. Agents and CI may use
|
|
35
|
+
value-blind metadata, status, verification, and the exact generated-secret initializer, which
|
|
36
|
+
accepts and returns no plaintext value.`;
|
|
37
|
+
function deploymentAuthorityGuidance(deploymentProfile) {
|
|
38
|
+
switch (deploymentProfile) {
|
|
39
|
+
case 'starter':
|
|
40
|
+
return `Development and production mutation may run locally only through the matching
|
|
41
|
+
authenticated Nx lifecycle and committed Repository Operating Policy. GitHub deployment
|
|
42
|
+
remains optional. A human operates the terminal for local production and types its exact
|
|
43
|
+
acknowledgement; an agent prepares the command, receipt review, and evidence.
|
|
44
|
+
Never invoke SST directly.`;
|
|
45
|
+
case 'production-isolated':
|
|
46
|
+
return `Development and staging mutation may run locally only through the matching
|
|
47
|
+
authenticated Nx lifecycle and committed Repository Operating Policy. A human operates the
|
|
48
|
+
terminal for local staging and types its exact acknowledgement; an agent prepares the
|
|
49
|
+
command, receipt review, and evidence. Production mutation
|
|
50
|
+
belongs to the protected GitHub environment and OIDC workflow. Never invoke SST directly.`;
|
|
51
|
+
case 'fully-isolated':
|
|
52
|
+
return `Development mutation may run locally only through the matching authenticated Nx
|
|
53
|
+
lifecycle and committed Repository Operating Policy. Staging and production mutation belongs
|
|
54
|
+
to the matching protected GitHub environment and OIDC workflow. Never invoke SST directly.`;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function renderAgentsAppendix(name, deploymentProfile) {
|
|
58
|
+
return `${(0, workspace_files_adopter_skills_js_1.renderAdopterSkillIndex)()}
|
|
59
|
+
## Developer-Agent workflow
|
|
24
60
|
|
|
25
61
|
The Developer-Agent contract is bounded to the ${name} product and this repository. It does
|
|
26
62
|
not grant authority over another repository, account, environment, or worktree.
|
|
27
63
|
|
|
28
64
|
Use \`ebk agent context\`, \`ebk agent plan\`, \`ebk agent upgrade-preview\`,
|
|
29
65
|
\`ebk agent handoff\`, and \`ebk agent resume\`; add \`--json\` when a machine-readable
|
|
30
|
-
result is required. Nx remains the graph and target authority
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
never
|
|
66
|
+
result is required. Nx remains the graph and target authority. An agent plan is advisory; it
|
|
67
|
+
is the route for typed generators, Upgrade preview and apply, and protected routing. Ordinary
|
|
68
|
+
edits to adopter-owned, seeded, and unrecorded files need no plan: make them directly on a
|
|
69
|
+
topic branch, bounded by \`.ebk/ownership.json\`, \`pnpm health\`, the verify barrier, and
|
|
70
|
+
pull-request review. Managed paths are never hand-edited. Other work runs through the
|
|
71
|
+
authenticated owning target, typed Nx generator, bounded EBK development command, or frozen
|
|
72
|
+
package-manager command.
|
|
73
|
+
Protected and destructive operations expose identity and routing only, never local command
|
|
74
|
+
arguments.
|
|
35
75
|
|
|
36
76
|
External Blueprint receipt review is the one deliberate target exception. Run only
|
|
37
77
|
\`ebk blueprint verification-review\` after the protected static approval; there is no Nx
|
|
@@ -41,28 +81,51 @@ reported after that commit remain authenticated local-source Nx targets and reta
|
|
|
41
81
|
documented same-user installed-toolchain boundary.
|
|
42
82
|
|
|
43
83
|
Begin and hand off implementation work with
|
|
44
|
-
\`pnpm nx run ${name}:work-markers\`.
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
or
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
84
|
+
\`pnpm nx run ${name}:work-markers\`. For ordinary feature completion, run the
|
|
85
|
+
affected owner's tests, typecheck, lint, and ownership checks reported by the
|
|
86
|
+
Nx graph and agent context. Record exactly which checks passed and which remain
|
|
87
|
+
pending. Feature verification is not release qualification.
|
|
88
|
+
|
|
89
|
+
Reserve the workspace \`pnpm verify\` source-check barrier for an adopter
|
|
90
|
+
milestone or coherent integration batch. It uses \`${name}:verify-proposed\`
|
|
91
|
+
and does not require an initial commit or produce protected Blueprint authority.
|
|
92
|
+
The separate \`pnpm nx run ${name}:verify\` target retains protected Blueprint
|
|
93
|
+
trust checks and requires real committed history and protected refs; protected
|
|
94
|
+
CI continues using that target. Release qualification additionally requires
|
|
95
|
+
the declared packed, platform, and external acceptance.
|
|
96
|
+
An explicitly required safety or contract check is never waived by this cadence.
|
|
97
|
+
Development accepts a dirty tree and needs no production confirmation or release
|
|
98
|
+
artifact; protected-stage source and approval requirements remain unchanged.
|
|
99
|
+
|
|
100
|
+
If a Slice, Service, or Job generator reports a retained post-generation install, rerun
|
|
101
|
+
that same generator with the exact scoped prefix
|
|
102
|
+
\`pnpm --config.verify-deps-before-run=warn nx generate\`. This is the sole exception to
|
|
103
|
+
the workspace's fail-closed dependency-state check: it lets Nx reach EBK's bound recovery
|
|
104
|
+
callback, which owns the install. Never run \`pnpm install\` while the retained marker exists.
|
|
105
|
+
|
|
106
|
+
Use one topic branch and linked worktree per independent change. Stop on overlapping paths
|
|
107
|
+
or shared external state, ownership or generated drift, invalid policy, blocking markers,
|
|
108
|
+
missing prerequisites, or unknown authority. A stale base on your own topic branch is not a
|
|
109
|
+
stop: rebase or merge the base branch into your own branch, rerun affected verification, and
|
|
110
|
+
continue; where an operation itself binds an exact base (upgrade, formal handoff), refresh
|
|
111
|
+
the base first and then rerun that operation. Never merge, rebase, discard, or overwrite
|
|
112
|
+
another worktree or another actor's branch automatically. Before a shared operation (gateway
|
|
113
|
+
setup, package release, candidate adoption, database replacement, or development
|
|
114
|
+
deployment), follow the claim procedure in \`docs/shared-operation-claims.yaml\`.
|
|
115
|
+
|
|
116
|
+
${deploymentAuthorityGuidance(deploymentProfile)}
|
|
117
|
+
|
|
118
|
+
${HUMAN_SECRET_HANDOFF}
|
|
56
119
|
|
|
57
120
|
Read \`docs/developer-agent.md\`, \`docs/developer-agent-handoff.template.json\`,
|
|
58
|
-
\`docs/developer-agent-adapters.md\`, \`docs/git-workflow.md\`,
|
|
59
|
-
\`docs/work-markers.md\` before proceeding.
|
|
121
|
+
\`docs/developer-agent-adapters.md\`, \`docs/git-workflow.md\`,
|
|
122
|
+
\`docs/work-markers.md\`, and \`docs/shared-operation-claims.yaml\` before proceeding.
|
|
60
123
|
`;
|
|
61
124
|
}
|
|
62
125
|
function renderHandoffStates() {
|
|
63
126
|
return model_js_1.DEVELOPER_AGENT_HANDOFF_STATES.map((state) => `- \`${state}\`: ${HANDOFF_STATE_DESCRIPTIONS[state]}`).join('\n');
|
|
64
127
|
}
|
|
65
|
-
function renderRunbook(name) {
|
|
128
|
+
function renderRunbook(name, deploymentProfile) {
|
|
66
129
|
return `# Developer-Agent runbook
|
|
67
130
|
|
|
68
131
|
This is the vendor-neutral Developer-Agent contract for the ${name} repository. The
|
|
@@ -73,7 +136,9 @@ required. A skill, MCP client, IDE, or hosted agent service is optional.
|
|
|
73
136
|
|
|
74
137
|
The numeric JSON schema in this runbook is framework-internal and may change before stable v1.
|
|
75
138
|
Do not publish an adapter or treat it as an independent public API until the repository-native
|
|
76
|
-
CLI and Nx contract complete their live pilots.
|
|
139
|
+
CLI and Nx contract complete their live pilots. A local, unpublished wrapper (skill, MCP tool,
|
|
140
|
+
or IDE command) that only invokes these same commands with \`--json\` is permitted under
|
|
141
|
+
\`docs/developer-agent-adapters.md\` and must stay removable without changing the workflow.
|
|
77
142
|
|
|
78
143
|
## Canonical loop
|
|
79
144
|
|
|
@@ -84,21 +149,36 @@ CLI and Nx contract complete their live pilots.
|
|
|
84
149
|
\`pnpm nx run ${name}:developer-context\` target is a compatibility and graph-authority
|
|
85
150
|
route: its human mode emits concise prose, and \`--json\` emits only the canonical context
|
|
86
151
|
byte length and digest in a bounded fingerprint.
|
|
87
|
-
3.
|
|
152
|
+
3. For commit-bound advisory planning, create one bounded JSON request, then run
|
|
88
153
|
\`ebk agent plan <request.json>\` for one supported operation and reviewed
|
|
89
154
|
acceptance-criteria reference. The plan is advisory and grants no execution authority.
|
|
90
|
-
|
|
155
|
+
On fresh or dirty source, ordinary feature work may instead use the documented
|
|
156
|
+
typed generator directly (dry-run, then apply), or edit inspected seeded/user-owned
|
|
157
|
+
feature surfaces. This does not execute a blocked plan or waive the owner's checks.
|
|
158
|
+
Do not manufacture commits or protected refs merely to develop.
|
|
159
|
+
4. Follow the documented owning workflow, or the reported plan when using planning:
|
|
91
160
|
- execute a typed stable Slice, Function, Service, Job, or Upgrade generator with exactly
|
|
92
161
|
the structured arguments reported by the plan;
|
|
93
162
|
- execute authenticated read-only, local-source, or development Nx targets;
|
|
94
163
|
- execute bounded \`ebk dev\` inspection or Slice lifecycle commands;
|
|
164
|
+
- run \`ebk deploy development [slice...]\` directly for a development deployment,
|
|
165
|
+
adding \`--json\` for one bounded result on stdout after the run (planning reports the
|
|
166
|
+
root \`deploy-local\` target as non-plannable and names this owner; staging and
|
|
167
|
+
production refuse \`--json\`);
|
|
95
168
|
- execute the frozen package installation command;
|
|
96
|
-
- make an ordinary source edit
|
|
169
|
+
- make an ordinary source edit within inspected seeded/user-owned extension points
|
|
170
|
+
(formal source-edit plans admit only adopter-owned paths); or
|
|
97
171
|
- route protected work to the matching GitHub environment and OIDC workflow without
|
|
98
172
|
receiving local command arguments.
|
|
99
|
-
5.
|
|
100
|
-
|
|
101
|
-
|
|
173
|
+
5. Run the affected owner's tests, typecheck, lint, and ownership checks from
|
|
174
|
+
the Nx graph and agent context, then rerun \`pnpm nx run ${name}:work-markers\`.
|
|
175
|
+
For ordinary feature completion, report those results without requiring the
|
|
176
|
+
full workspace barrier. At an adopter milestone or coherent integration batch,
|
|
177
|
+
also run \`pnpm verify\` for current source. Protected acceptance separately
|
|
178
|
+
runs \`pnpm nx run ${name}:verify\` against genuine protected refs. Release qualification
|
|
179
|
+
adds the declared packed, platform, and external acceptance. Feature verification
|
|
180
|
+
is not release qualification; no explicitly required safety or contract check
|
|
181
|
+
is waived, and pending external proof remains pending in the handoff.
|
|
102
182
|
6. Fill an adopter-owned copy of the seeded template, then run
|
|
103
183
|
\`ebk agent handoff <handoff.json>\` to validate exact resumable state. A different actor
|
|
104
184
|
uses \`ebk agent resume <handoff.json>\` and must re-inspect current state rather than
|
|
@@ -109,7 +189,11 @@ unsupported until their owning target, command, workflow, or runbook has an exac
|
|
|
109
189
|
signature and proof contract. The stable Slice, Function, Service, Job, and Upgrade generators
|
|
110
190
|
have closed typed inputs; arbitrary Blueprint references or inputs, dependency changes other
|
|
111
191
|
than frozen installation, mutable development configuration, and secret set/remove remain
|
|
112
|
-
outside \`ebk agent plan
|
|
192
|
+
outside \`ebk agent plan\` but are not forbidden: use their direct owner and never infer
|
|
193
|
+
arguments. Add or upgrade a dependency with \`pnpm add\` or \`pnpm up\` on the
|
|
194
|
+
adopter-owned entries of a projection-managed \`package.json\` (never a framework-managed
|
|
195
|
+
entry), then run the frozen installation and \`pnpm verify\`, which includes the
|
|
196
|
+
supply-chain checks, and let pull-request review cover the change.
|
|
113
197
|
|
|
114
198
|
External Blueprint receipt creation is not an Nx target. After protected Git retains the exact
|
|
115
199
|
static generated-content approval, invoke only \`ebk blueprint verification-review\`. The
|
|
@@ -138,9 +222,17 @@ context:
|
|
|
138
222
|
Optional \`assumptions\` remain bounded and explicit. The CLI derives each selected path's
|
|
139
223
|
\`managed\`, \`seeded\`, or \`adopter-owned\` mode from repository ownership records and
|
|
140
224
|
project roots; the request cannot assert it. Cross-project selections, unknown ownership,
|
|
141
|
-
managed or seeded source-edit paths, raw commands, prompts, secret values, absolute paths,
|
|
225
|
+
managed or seeded source-edit plan paths, raw commands, prompts, secret values, absolute paths,
|
|
142
226
|
traversal, and symlink inputs are refused.
|
|
143
227
|
|
|
228
|
+
That source-edit plan restriction does not make seeded feature code immutable. A plan
|
|
229
|
+
refusal for a seeded path is not a prohibition: seeded files and files absent from the
|
|
230
|
+
ownership record may be edited directly on a topic branch, without a plan, bounded by
|
|
231
|
+
\`pnpm health\`, the verify barrier, and pull-request review. Edit seeded handlers, tests
|
|
232
|
+
and feature registries through the ordinary documented feature workflow; managed mechanics
|
|
233
|
+
always require their owning generator and are never hand-edited. Source-edit plans do not yet
|
|
234
|
+
admit seeded paths.
|
|
235
|
+
|
|
144
236
|
Typed generator requests add one closed \`generatorInput\` object and cannot supply
|
|
145
237
|
\`selectedFiles\`. New Slice planning accepts only \`{"generator":"slice","name":"billing"}\`
|
|
146
238
|
and the built-in Standard Blueprint. Function, Service, and Job planning requires exact
|
|
@@ -211,19 +303,38 @@ mutation, verification, cleanup, protected evidence, or approval occurred.
|
|
|
211
303
|
|
|
212
304
|
## Stop conditions
|
|
213
305
|
|
|
214
|
-
Stop
|
|
215
|
-
overlapping work, ownership conflict, generated drift, policy conflict, blocking marker,
|
|
306
|
+
Stop the requested operation when its command reports invalid input, a dirty worktree
|
|
307
|
+
or stale base prohibited by that operation, overlapping work, ownership conflict, generated drift, policy conflict, blocking marker,
|
|
216
308
|
missing prerequisite, or required authority. Unknown targets fail closed. Do not repair managed
|
|
217
309
|
output directly, silently adopt another worktree's changes, infer a protected credential, or
|
|
218
310
|
broaden an operation beyond the owning tool.
|
|
219
311
|
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
312
|
+
Dirty source alone does not block ordinary feature generation, seeded/user-owned edits,
|
|
313
|
+
affected verification or local development. Commit-bound plans, upgrades and formal
|
|
314
|
+
handoffs still enforce their exact source requirements; protected authority is unchanged.
|
|
315
|
+
A stale base on your own topic branch is not a stop: rebase or merge the base branch into
|
|
316
|
+
your own branch, rerun affected verification, and continue. Never merge, rebase, discard,
|
|
317
|
+
or overwrite another worktree or another actor's branch.
|
|
318
|
+
|
|
319
|
+
For every mutation, name the cleanup and recovery owner before execution.
|
|
320
|
+
${deploymentAuthorityGuidance(deploymentProfile)} Destructive work in a staging or production
|
|
321
|
+
stage additionally requires an exact target, the human-typed TTY acknowledgement or protected
|
|
322
|
+
GitHub environment approval that owns that stage, retained recovery proof, and completed
|
|
323
|
+
cleanup. Destructive work in the development stage (remove, unlock, migration, personal task
|
|
324
|
+
teardown) needs only the exact target and completed cleanup.
|
|
325
|
+
|
|
326
|
+
${HUMAN_SECRET_HANDOFF}
|
|
327
|
+
|
|
328
|
+
## Shared-operation claims
|
|
329
|
+
|
|
330
|
+
Gateway setup, package release, candidate adoption, database replacement, and development
|
|
331
|
+
deployment are shared operations that only one actor at a time may run. Before starting one,
|
|
332
|
+
follow the procedure in \`docs/shared-operation-claims.yaml\` and \`docs/work-markers.md\`:
|
|
333
|
+
read the current ledger, stop and report an open conflicting claim instead of running the
|
|
334
|
+
operation, otherwise record your claim, and delete it when the operation and its verification
|
|
335
|
+
are complete. Nothing enforces a claim; it is a convention built on work markers. Adding or
|
|
336
|
+
removing a claim changes the work-marker set, so \`ebk agent resume\` reports a retained
|
|
337
|
+
handoff as \`marker-blocked\`; record a fresh handoff after the claim changes.
|
|
227
338
|
|
|
228
339
|
## Handoff and resumption
|
|
229
340
|
|
|
@@ -238,6 +349,11 @@ stage, effective policy digest, candidate provenance, Blueprint and framework ve
|
|
|
238
349
|
performed operation identities, marker snapshot, external resources, and required verification
|
|
239
350
|
and evidence.
|
|
240
351
|
|
|
352
|
+
Before a clean checkpoint exists, retain an ordinary work-in-progress note under
|
|
353
|
+
\`docs/adoption/\`: exact files, package/source identity, checks, pending cleanup and
|
|
354
|
+
next supported command. Another actor must re-inspect current state. Such a note is
|
|
355
|
+
not a validated formal handoff or protected evidence and needs no fabricated refs.
|
|
356
|
+
|
|
241
357
|
The six honest handoff states are:
|
|
242
358
|
|
|
243
359
|
${renderHandoffStates()}
|
|
@@ -467,11 +583,13 @@ function createHandoffTemplate(options) {
|
|
|
467
583
|
function renderAdapterEvaluation() {
|
|
468
584
|
return `# Optional Developer-Agent adapter evaluation
|
|
469
585
|
|
|
470
|
-
|
|
586
|
+
Empire Builder Kit bundles six repository-local adopter skills under \`.agents/skills/\`.
|
|
587
|
+
They teach the canonical workflow and can be read directly by any agent; automatic discovery
|
|
588
|
+
depends on the agent host. EBK does not require a hosted agent service or ship an MCP adapter. The
|
|
471
589
|
repository-local \`ebk agent context\`, \`ebk agent plan\`, \`ebk agent upgrade-preview\`,
|
|
472
590
|
\`ebk agent handoff\`, \`ebk agent resume\`, and declared Nx targets are the canonical
|
|
473
591
|
contract for humans and agents. Revisit an adapter only after that contract completes its
|
|
474
|
-
live pilots.
|
|
592
|
+
live pilots. Bundled skills remain guidance, not a separate execution or approval system.
|
|
475
593
|
|
|
476
594
|
A skill or MCP adapter is optional.
|
|
477
595
|
|
|
@@ -499,9 +617,9 @@ canonical Developer-Agent contract.
|
|
|
499
617
|
function renderDeveloperAgentWorkspaceFilePlan(options) {
|
|
500
618
|
const template = createHandoffTemplate(options);
|
|
501
619
|
return {
|
|
502
|
-
agentsAppendix: renderAgentsAppendix(options.name),
|
|
620
|
+
agentsAppendix: renderAgentsAppendix(options.name, options.deploymentProfile),
|
|
503
621
|
files: {
|
|
504
|
-
[exports.DEVELOPER_AGENT_RUNBOOK_PATH]: renderRunbook(options.name),
|
|
622
|
+
[exports.DEVELOPER_AGENT_RUNBOOK_PATH]: renderRunbook(options.name, options.deploymentProfile),
|
|
505
623
|
[exports.DEVELOPER_AGENT_HANDOFF_TEMPLATE_PATH]: `${JSON.stringify(template, null, 2)}\n`,
|
|
506
624
|
[exports.DEVELOPER_AGENT_ADAPTER_EVALUATION_PATH]: renderAdapterEvaluation(),
|
|
507
625
|
},
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { DeploymentProfile } from '../../repository-policy/index.js';
|
|
2
|
+
export declare const THIN_ECR_INSPECTOR_WORKFLOW_PATH: ".github/workflows/ecr-inspector-evidence.yml";
|
|
3
|
+
interface EcrInspectorWorkflowOptions {
|
|
4
|
+
actionPins: {
|
|
5
|
+
checkout: string;
|
|
6
|
+
configureAwsCredentials: string;
|
|
7
|
+
downloadArtifact: string;
|
|
8
|
+
pnpmSetup: string;
|
|
9
|
+
setupNode: string;
|
|
10
|
+
uploadArtifact: string;
|
|
11
|
+
};
|
|
12
|
+
deploymentProfile: DeploymentProfile;
|
|
13
|
+
name: string;
|
|
14
|
+
nodeVersion: string;
|
|
15
|
+
}
|
|
16
|
+
/** Render the postdeploy scanner against the thin lifecycle receipt artifact. */
|
|
17
|
+
export declare function renderThinEcrInspectorWorkflow(options: EcrInspectorWorkflowOptions): Readonly<Record<typeof THIN_ECR_INSPECTOR_WORKFLOW_PATH, string>>;
|
|
18
|
+
export {};
|