@empire-builder-kit/nx 1.0.0-rc.2 → 1.0.0-rc.21

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.
Files changed (253) hide show
  1. package/executors.json +10 -0
  2. package/package.json +4 -4
  3. package/src/cli/output.js +1 -1
  4. package/src/developer-agent/model.js +4 -4
  5. package/src/developer-agent/model.js.map +1 -1
  6. package/src/developer-agent/operation-registry.js +67 -10
  7. package/src/developer-agent/operation-registry.js.map +1 -1
  8. package/src/developer-agent/planning.js +7 -9
  9. package/src/developer-agent/planning.js.map +1 -1
  10. package/src/developer-agent/workspace-inspection.js +12 -0
  11. package/src/developer-agent/workspace-inspection.js.map +1 -1
  12. package/src/executors/blueprint-trust/blueprint-trust.js +6 -0
  13. package/src/executors/blueprint-trust/blueprint-trust.js.map +1 -1
  14. package/src/executors/deployment-plan/deployment-plan.js +5 -0
  15. package/src/executors/deployment-plan/deployment-plan.js.map +1 -1
  16. package/src/executors/foundation-preflight/foundation-preflight.d.ts +2 -0
  17. package/src/executors/foundation-preflight/foundation-preflight.js +6 -2
  18. package/src/executors/foundation-preflight/foundation-preflight.js.map +1 -1
  19. package/src/executors/foundation-preflight/schema.json +10 -0
  20. package/src/executors/foundation-profile-preflight/foundation-profile-preflight.d.ts +2 -0
  21. package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js +2 -1
  22. package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js.map +1 -1
  23. package/src/executors/foundation-profile-preflight/schema.json +19 -3
  24. package/src/executors/github-bootstrap/github-bootstrap.js +1 -0
  25. package/src/executors/github-bootstrap/github-bootstrap.js.map +1 -1
  26. package/src/executors/infrastructure-plan/infrastructure-plan.d.ts +229 -5
  27. package/src/executors/infrastructure-plan/infrastructure-plan.js +2298 -175
  28. package/src/executors/infrastructure-plan/infrastructure-plan.js.map +1 -1
  29. package/src/executors/infrastructure-plan/schema.json +16 -0
  30. package/src/executors/local-deploy/fixtures/local-deploy-state-machine.mjs +53 -0
  31. package/src/executors/local-deploy/local-approval.d.ts +23 -0
  32. package/src/executors/local-deploy/local-approval.js +43 -0
  33. package/src/executors/local-deploy/local-approval.js.map +1 -0
  34. package/src/executors/local-deploy/local-deploy.d.ts +69 -0
  35. package/src/executors/local-deploy/local-deploy.js +911 -0
  36. package/src/executors/local-deploy/local-deploy.js.map +1 -0
  37. package/src/executors/local-deploy/schema.json +42 -0
  38. package/src/executors/router-waf-rehearsal/router-waf-rehearsal.d.ts +3 -0
  39. package/src/executors/router-waf-rehearsal/router-waf-rehearsal.js +94 -0
  40. package/src/executors/router-waf-rehearsal/router-waf-rehearsal.js.map +1 -0
  41. package/src/executors/router-waf-rehearsal/schema.json +9 -0
  42. package/src/executors/secret-metadata/schema.json +5 -0
  43. package/src/executors/secret-metadata/secret-metadata.d.ts +12 -1
  44. package/src/executors/secret-metadata/secret-metadata.js +68 -16
  45. package/src/executors/secret-metadata/secret-metadata.js.map +1 -1
  46. package/src/executors/sst-lifecycle/logging-preflight.d.ts +5 -0
  47. package/src/executors/sst-lifecycle/logging-preflight.js +23 -13
  48. package/src/executors/sst-lifecycle/logging-preflight.js.map +1 -1
  49. package/src/executors/sst-lifecycle/run-sst-command.d.ts +8 -1
  50. package/src/executors/sst-lifecycle/run-sst-command.js +144 -12
  51. package/src/executors/sst-lifecycle/run-sst-command.js.map +1 -1
  52. package/src/executors/sst-lifecycle/schema.json +13 -1
  53. package/src/executors/sst-lifecycle/sst-environment-source.d.ts +25 -0
  54. package/src/executors/sst-lifecycle/sst-environment-source.js +213 -0
  55. package/src/executors/sst-lifecycle/sst-environment-source.js.map +1 -0
  56. package/src/foundation/index.d.ts +2 -0
  57. package/src/foundation/index.js +2 -0
  58. package/src/foundation/index.js.map +1 -1
  59. package/src/foundation/logging-preflight.js +1 -1
  60. package/src/foundation/logging-preflight.js.map +1 -1
  61. package/src/foundation/logging.d.ts +3 -1
  62. package/src/foundation/logging.js +1 -1
  63. package/src/foundation/logging.js.map +1 -1
  64. package/src/foundation/partial-state.d.ts +10 -0
  65. package/src/foundation/partial-state.js +21 -0
  66. package/src/foundation/partial-state.js.map +1 -0
  67. package/src/foundation/router-waf.d.ts +98 -0
  68. package/src/foundation/router-waf.js +401 -0
  69. package/src/foundation/router-waf.js.map +1 -0
  70. package/src/generators/function/function.js +2 -1
  71. package/src/generators/function/function.js.map +1 -1
  72. package/src/generators/post-generation-install.d.ts +1 -0
  73. package/src/generators/post-generation-install.js +134 -67
  74. package/src/generators/post-generation-install.js.map +1 -1
  75. package/src/generators/preset/generator.js +23 -3
  76. package/src/generators/preset/generator.js.map +1 -1
  77. package/src/generators/preset/schema.d.ts +7 -0
  78. package/src/generators/preset/schema.json +47 -0
  79. package/src/generators/preset/tool-versions.d.ts +5 -5
  80. package/src/generators/preset/tool-versions.js +4 -4
  81. package/src/generators/preset/workspace-files-ci-acceptance.d.ts +1 -0
  82. package/src/generators/preset/workspace-files-ci-acceptance.js +791 -0
  83. package/src/generators/preset/workspace-files-ci-acceptance.js.map +1 -0
  84. package/src/generators/preset/workspace-files-developer-agent.d.ts +2 -0
  85. package/src/generators/preset/workspace-files-developer-agent.js +25 -11
  86. package/src/generators/preset/workspace-files-developer-agent.js.map +1 -1
  87. package/src/generators/preset/workspace-files-foundation-workload-roles.js +5 -2
  88. package/src/generators/preset/workspace-files-foundation-workload-roles.js.map +1 -1
  89. package/src/generators/preset/workspace-files-performance-load.js +2 -1
  90. package/src/generators/preset/workspace-files-performance-load.js.map +1 -1
  91. package/src/generators/preset/workspace-files-workload-role-baseline.js +254 -42
  92. package/src/generators/preset/workspace-files-workload-role-baseline.js.map +1 -1
  93. package/src/generators/preset/workspace-files.d.ts +8 -4
  94. package/src/generators/preset/workspace-files.js +1039 -68
  95. package/src/generators/preset/workspace-files.js.map +1 -1
  96. package/src/generators/repository-policy/repository-policy.js +65 -3
  97. package/src/generators/repository-policy/repository-policy.js.map +1 -1
  98. package/src/generators/repository-policy/schema.d.ts +6 -0
  99. package/src/generators/repository-policy/schema.json +46 -0
  100. package/src/generators/slice/built-in-plan-api-files.js +2 -1
  101. package/src/generators/slice/built-in-plan-api-files.js.map +1 -1
  102. package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js +19 -1
  103. package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js.map +1 -1
  104. package/src/generators/slice/built-in-plan-data-files.js +16 -5
  105. package/src/generators/slice/built-in-plan-data-files.js.map +1 -1
  106. package/src/generators/slice/built-in-plan-data-retention-job-files.js +10 -6
  107. package/src/generators/slice/built-in-plan-data-retention-job-files.js.map +1 -1
  108. package/src/generators/slice/built-in-plan-database-lifecycle-files.js +25 -10
  109. package/src/generators/slice/built-in-plan-database-lifecycle-files.js.map +1 -1
  110. package/src/generators/slice/built-in-plan-foundation-files.js +2 -3
  111. package/src/generators/slice/built-in-plan-foundation-files.js.map +1 -1
  112. package/src/generators/slice/built-in-plan-infrastructure-files.js +364 -29
  113. package/src/generators/slice/built-in-plan-infrastructure-files.js.map +1 -1
  114. package/src/generators/slice/built-in-plan-infrastructure-safety-files.js +67 -11
  115. package/src/generators/slice/built-in-plan-infrastructure-safety-files.js.map +1 -1
  116. package/src/generators/slice/built-in-plan-metadata-files.js +1 -0
  117. package/src/generators/slice/built-in-plan-metadata-files.js.map +1 -1
  118. package/src/generators/slice/built-in-plan-operations-files.js +442 -5
  119. package/src/generators/slice/built-in-plan-operations-files.js.map +1 -1
  120. package/src/generators/slice/built-in-plan-performance-files.d.ts +2 -1
  121. package/src/generators/slice/built-in-plan-performance-files.js +41 -47
  122. package/src/generators/slice/built-in-plan-performance-files.js.map +1 -1
  123. package/src/generators/slice/built-in-plan-project-files.js +14 -1
  124. package/src/generators/slice/built-in-plan-project-files.js.map +1 -1
  125. package/src/generators/slice/built-in-plan-release-files.js +235 -56
  126. package/src/generators/slice/built-in-plan-release-files.js.map +1 -1
  127. package/src/generators/slice/built-in-plan-testing-files.js +92 -5
  128. package/src/generators/slice/built-in-plan-testing-files.js.map +1 -1
  129. package/src/generators/slice/built-in-plan-web-files.js +13 -0
  130. package/src/generators/slice/built-in-plan-web-files.js.map +1 -1
  131. package/src/generators/slice/built-in-plan-workload-role-files.js +5 -2
  132. package/src/generators/slice/built-in-plan-workload-role-files.js.map +1 -1
  133. package/src/generators/slice/built-in-plan.d.ts +2 -1
  134. package/src/generators/slice/built-in-plan.js +8 -5
  135. package/src/generators/slice/built-in-plan.js.map +1 -1
  136. package/src/generators/slice/slice.js +11 -3
  137. package/src/generators/slice/slice.js.map +1 -1
  138. package/src/generators/upgrade/upgrade.js +35 -0
  139. package/src/generators/upgrade/upgrade.js.map +1 -1
  140. package/src/generators/workload/frozen-container.d.ts +3 -2
  141. package/src/generators/workload/frozen-container.js +6 -4
  142. package/src/generators/workload/frozen-container.js.map +1 -1
  143. package/src/generators/workload/workload.js +2 -2
  144. package/src/generators/workload/workload.js.map +1 -1
  145. package/src/git-policy/github-bootstrap.d.ts +3 -1
  146. package/src/git-policy/github-bootstrap.js +22 -5
  147. package/src/git-policy/github-bootstrap.js.map +1 -1
  148. package/src/git-policy/routing.d.ts +2 -0
  149. package/src/git-policy/routing.js +12 -1
  150. package/src/git-policy/routing.js.map +1 -1
  151. package/src/infrastructure-change/local-capability.d.ts +73 -0
  152. package/src/infrastructure-change/local-capability.js +114 -0
  153. package/src/infrastructure-change/local-capability.js.map +1 -0
  154. package/src/infrastructure-change/model.d.ts +25 -4
  155. package/src/infrastructure-change/model.js +1 -0
  156. package/src/infrastructure-change/model.js.map +1 -1
  157. package/src/infrastructure-change/normalize.d.ts +4 -0
  158. package/src/infrastructure-change/normalize.js +47 -7
  159. package/src/infrastructure-change/normalize.js.map +1 -1
  160. package/src/infrastructure-change/plan.d.ts +30 -3
  161. package/src/infrastructure-change/plan.js +323 -13
  162. package/src/infrastructure-change/plan.js.map +1 -1
  163. package/src/infrastructure-change/risk.d.ts +3 -1
  164. package/src/infrastructure-change/risk.js +96 -16
  165. package/src/infrastructure-change/risk.js.map +1 -1
  166. package/src/local-dev/environment-inspector.d.ts +1 -0
  167. package/src/local-dev/environment-inspector.js +21 -9
  168. package/src/local-dev/environment-inspector.js.map +1 -1
  169. package/src/local-dev/private-state.d.ts +2 -0
  170. package/src/local-dev/private-state.js +3 -1
  171. package/src/local-dev/private-state.js.map +1 -1
  172. package/src/performance/cost-controls.d.ts +5 -3
  173. package/src/performance/cost-controls.js +30 -24
  174. package/src/performance/cost-controls.js.map +1 -1
  175. package/src/performance/model.d.ts +1 -1
  176. package/src/performance/model.js +0 -2
  177. package/src/performance/model.js.map +1 -1
  178. package/src/performance/test-fixtures.js +0 -2
  179. package/src/performance/test-fixtures.js.map +1 -1
  180. package/src/release/source-authority.d.ts +1 -0
  181. package/src/release/source-authority.js +136 -9
  182. package/src/release/source-authority.js.map +1 -1
  183. package/src/repository-policy/deployment-plan.d.ts +4 -1
  184. package/src/repository-policy/deployment-plan.js +8 -0
  185. package/src/repository-policy/deployment-plan.js.map +1 -1
  186. package/src/repository-policy/foundation-profile.js +1 -2
  187. package/src/repository-policy/foundation-profile.js.map +1 -1
  188. package/src/repository-policy/policy.d.ts +25 -1
  189. package/src/repository-policy/policy.js +145 -4
  190. package/src/repository-policy/policy.js.map +1 -1
  191. package/src/schemas/performance-policy-v1.json +0 -2
  192. package/src/schemas/repository-policy-v1.json +41 -0
  193. package/src/secrets/operator.js +22 -4
  194. package/src/secrets/operator.js.map +1 -1
  195. package/src/secrets/verification.js +9 -1
  196. package/src/secrets/verification.js.map +1 -1
  197. package/src/sst-environment-source-format.d.ts +3 -0
  198. package/src/sst-environment-source-format.js +179 -0
  199. package/src/sst-environment-source-format.js.map +1 -0
  200. package/src/supply-chain/blueprint-trust-git.js +72 -21
  201. package/src/supply-chain/blueprint-trust-git.js.map +1 -1
  202. package/src/supply-chain/blueprint-verification-authority.js +55 -3
  203. package/src/supply-chain/blueprint-verification-authority.js.map +1 -1
  204. package/src/supply-chain/blueprint-verification-execution.js +17 -2
  205. package/src/supply-chain/blueprint-verification-execution.js.map +1 -1
  206. package/src/supply-chain/build-output.d.ts +7 -1
  207. package/src/supply-chain/build-output.js +160 -20
  208. package/src/supply-chain/build-output.js.map +1 -1
  209. package/src/supply-chain/generated-command.js +131 -43
  210. package/src/supply-chain/generated-command.js.map +1 -1
  211. package/src/supply-chain/generated-container-release-command.js +187 -38
  212. package/src/supply-chain/generated-container-release-command.js.map +1 -1
  213. package/src/supply-chain/generated-ecr-collector-command.js +12 -2
  214. package/src/supply-chain/generated-ecr-collector-command.js.map +1 -1
  215. package/src/supply-chain/generated-scanner-command.js +114 -54
  216. package/src/supply-chain/generated-scanner-command.js.map +1 -1
  217. package/src/supply-chain/inventory.d.ts +17 -0
  218. package/src/supply-chain/inventory.js +114 -3
  219. package/src/supply-chain/inventory.js.map +1 -1
  220. package/src/supply-chain/pnpm-toolchain-authority.d.ts +4 -3
  221. package/src/supply-chain/pnpm-toolchain-authority.js +20 -34
  222. package/src/supply-chain/pnpm-toolchain-authority.js.map +1 -1
  223. package/src/supply-chain/policy.js +4 -1
  224. package/src/supply-chain/policy.js.map +1 -1
  225. package/src/supply-chain/sbom.d.ts +1 -1
  226. package/src/supply-chain/sbom.js +30 -5
  227. package/src/supply-chain/sbom.js.map +1 -1
  228. package/src/supply-chain/scanner.js +10 -1
  229. package/src/supply-chain/scanner.js.map +1 -1
  230. package/src/workload-roles/account-baseline.d.ts +11 -0
  231. package/src/workload-roles/account-baseline.js +253 -16
  232. package/src/workload-roles/account-baseline.js.map +1 -1
  233. package/src/workload-roles/authority.d.ts +3 -1
  234. package/src/workload-roles/authority.js +48 -2
  235. package/src/workload-roles/authority.js.map +1 -1
  236. package/src/workload-roles/aws-s3-state.js +27 -0
  237. package/src/workload-roles/aws-s3-state.js.map +1 -1
  238. package/src/workload-roles/boundary.d.ts +2 -1
  239. package/src/workload-roles/boundary.js +9 -2
  240. package/src/workload-roles/boundary.js.map +1 -1
  241. package/src/workload-roles/handler.js +52 -24
  242. package/src/workload-roles/handler.js.map +1 -1
  243. package/src/workload-roles/injection.js +1 -1
  244. package/src/workload-roles/injection.js.map +1 -1
  245. package/src/workload-roles/provisioner.js +12 -4
  246. package/src/workload-roles/provisioner.js.map +1 -1
  247. package/src/workload-roles/registration.d.ts +1 -0
  248. package/src/workload-roles/registration.js +5 -0
  249. package/src/workload-roles/registration.js.map +1 -1
  250. package/src/workload-roles/stage-boundary.js +1 -1
  251. package/src/workload-roles/stage-boundary.js.map +1 -1
  252. package/src/workload-roles/standard-slice.js +1 -0
  253. package/src/workload-roles/standard-slice.js.map +1 -1
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LOCAL_MUTATION_CAPABILITY_LIFETIME_MS = void 0;
4
+ exports.localMutationAuthorityEnvelope = localMutationAuthorityEnvelope;
5
+ exports.createLocalMutationCapability = createLocalMutationCapability;
6
+ exports.computeLocalMutationAuthorityDigest = computeLocalMutationAuthorityDigest;
7
+ exports.validateLocalMutationCapability = validateLocalMutationCapability;
8
+ const canonical_json_1 = require("@empire-builder-kit/runtime/canonical-json");
9
+ const SHA = /^[a-f0-9]{40}$/;
10
+ const SHA256 = /^[a-f0-9]{64}$/;
11
+ const ROLE = /^arn:(aws|aws-us-gov|aws-cn):iam::\d{12}:role\/[A-Za-z0-9+=,.@_/-]{1,512}$/;
12
+ const ACTOR = /^arn:(aws|aws-us-gov|aws-cn):sts::\d{12}:assumed-role\/[A-Za-z0-9+=,.@_-]{1,128}\/[A-Za-z0-9+=,.@_-]{1,128}$/;
13
+ exports.LOCAL_MUTATION_CAPABILITY_LIFETIME_MS = 10 * 60_000;
14
+ function sha256(value) {
15
+ return (0, canonical_json_1.canonicalJsonSha256)(value, { omitUndefinedObjectValues: true });
16
+ }
17
+ function localMutationAuthorityEnvelope(input) {
18
+ const { plan } = input;
19
+ const planAuthorityPolicyDigest = plan.versions['plan-authority-policy'];
20
+ if ((plan.action !== 'deploy' && plan.action !== 'refresh') ||
21
+ plan.projects.length !== 1 ||
22
+ plan.projects[0] !== input.project ||
23
+ !input.project ||
24
+ !ACTOR.test(input.actorArn) ||
25
+ !SHA.test(plan.sourceCommit) ||
26
+ !SHA.test(input.deploymentSourceCommit) ||
27
+ !SHA.test(input.deploymentSourceTree) ||
28
+ !SHA.test(input.releaseSourceTree) ||
29
+ !ROLE.test(input.expectedRoleArn) ||
30
+ !SHA256.test(plan.materialDigest) ||
31
+ !SHA256.test(plan.configurationMetadataDigest) ||
32
+ !SHA256.test(plan.policyProfileDigest) ||
33
+ !SHA256.test(plan.state.digest) ||
34
+ plan.state.locked !== false ||
35
+ !planAuthorityPolicyDigest ||
36
+ !SHA256.test(planAuthorityPolicyDigest)) {
37
+ throw new Error('Local mutation authority requires one exact source, project, policy, artifact, role, and state envelope.');
38
+ }
39
+ if (plan.target.stage !== 'development' &&
40
+ plan.target.stage !== 'staging' &&
41
+ plan.target.stage !== 'production') {
42
+ throw new Error('Local mutation authority requires one canonical stage.');
43
+ }
44
+ return {
45
+ accountFingerprint: plan.target.accountFingerprint,
46
+ action: plan.action,
47
+ actorArnDigest: sha256(input.actorArn),
48
+ configurationMetadataDigest: plan.configurationMetadataDigest,
49
+ deploymentSourceCommit: input.deploymentSourceCommit,
50
+ deploymentSourceTree: input.deploymentSourceTree,
51
+ deploymentProfile: input.deploymentProfile,
52
+ expectedRoleArnDigest: sha256(input.expectedRoleArn),
53
+ frameworkVersion: plan.frameworkVersion,
54
+ planAuthorityPolicyDigest,
55
+ planMaterialDigest: plan.materialDigest,
56
+ policyProfileDigest: plan.policyProfileDigest,
57
+ project: input.project,
58
+ region: plan.target.region,
59
+ releaseSourceCommit: plan.sourceCommit,
60
+ releaseSourceTree: input.releaseSourceTree,
61
+ stage: plan.target.stage,
62
+ state: {
63
+ backend: plan.state.backend,
64
+ digest: plan.state.digest,
65
+ locked: false,
66
+ stack: plan.state.stack,
67
+ version: plan.state.version,
68
+ },
69
+ versions: { ...plan.versions },
70
+ };
71
+ }
72
+ function createLocalMutationCapability(input) {
73
+ if (!input.nonce || input.nonce.length < 32) {
74
+ throw new Error('Local mutation capability nonce is absent or too short.');
75
+ }
76
+ const authority = localMutationAuthorityEnvelope(input);
77
+ const issuedAt = input.issuedAt.toISOString();
78
+ const expiresAt = new Date(input.issuedAt.getTime() + exports.LOCAL_MUTATION_CAPABILITY_LIFETIME_MS).toISOString();
79
+ return {
80
+ authority,
81
+ authorityDigest: sha256(authority),
82
+ authorizationDigest: sha256(input.authorizationContents),
83
+ expiresAt,
84
+ issuedAt,
85
+ kind: 'ebk-local-mutation-capability',
86
+ nonceDigest: sha256(input.nonce),
87
+ planEvidenceDigest: sha256(input.planContents),
88
+ schemaVersion: 1,
89
+ };
90
+ }
91
+ function computeLocalMutationAuthorityDigest(authority) {
92
+ return sha256(authority);
93
+ }
94
+ function validateLocalMutationCapability(input) {
95
+ const issuedAt = Date.parse(input.capability.issuedAt);
96
+ const expiresAt = Date.parse(input.capability.expiresAt);
97
+ const now = input.now.getTime();
98
+ if (input.capability.kind !== 'ebk-local-mutation-capability' ||
99
+ input.capability.schemaVersion !== 1 ||
100
+ !Number.isFinite(issuedAt) ||
101
+ !Number.isFinite(expiresAt) ||
102
+ issuedAt > now ||
103
+ expiresAt <= now ||
104
+ expiresAt - issuedAt !== exports.LOCAL_MUTATION_CAPABILITY_LIFETIME_MS ||
105
+ input.capability.nonceDigest !== sha256(input.nonce) ||
106
+ input.capability.planEvidenceDigest !== sha256(input.planContents) ||
107
+ input.capability.authorizationDigest !==
108
+ sha256(input.authorizationContents) ||
109
+ input.capability.authorityDigest !== sha256(input.capability.authority) ||
110
+ input.capability.authorityDigest !== sha256(input.expectedAuthority)) {
111
+ throw new Error('Local mutation capability is malformed, expired, replayed, or no longer bound to retained evidence.');
112
+ }
113
+ }
114
+ //# sourceMappingURL=local-capability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-capability.js","sourceRoot":"","sources":["../../../../../packages/nx/src/infrastructure-change/local-capability.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ export declare const INFRASTRUCTURE_CHANGE_SCHEMA_VERSION: 1;
2
2
  export declare const INFRASTRUCTURE_PLAN_KIND: "ebk-infrastructure-plan";
3
3
  export declare const SST_DIFF_TOOL_NAME: "sst";
4
4
  export declare const SST_DIFF_TOOL_VERSION: "4.17.1";
5
- export declare const INFRASTRUCTURE_OPERATIONS: readonly ["create", "update", "replace", "delete", "import", "read", "unknown"];
5
+ export declare const INFRASTRUCTURE_OPERATIONS: readonly ["create", "update", "replace", "delete", "discard", "import", "read", "unknown"];
6
6
  export type InfrastructureOperation = (typeof INFRASTRUCTURE_OPERATIONS)[number];
7
7
  export declare const INFRASTRUCTURE_RISK_CLASSES: readonly ["no-change", "additive-low-risk", "in-place-reviewed", "stateless-replacement", "stateful-or-destructive", "security-expansion", "protection-reduction", "material-cost-or-quota", "unknown"];
8
8
  export type InfrastructureRiskClass = (typeof INFRASTRUCTURE_RISK_CLASSES)[number];
@@ -76,11 +76,23 @@ export interface IamAccessAnalyzerValidationV1 {
76
76
  status: 'complete' | 'failed' | 'unsupported';
77
77
  }
78
78
  export interface InfrastructureRiskPolicyV1 {
79
+ /**
80
+ * Exact provider imports whose ownership transition is already bound to a
81
+ * committed authority, deterministic private identifier, retain behavior,
82
+ * and recovery runbook. Every other import remains blocked.
83
+ */
84
+ adoptedImports: readonly AdoptedInfrastructureImportV1[];
79
85
  /**
80
86
  * Exact provider types whose create operation has been reviewed as a
81
87
  * private, stateless, low-cost addition.
82
88
  */
83
89
  additiveLowRiskTypes: readonly string[];
90
+ /**
91
+ * Exact provider types whose create operation is expected but still
92
+ * requires a digest-bound deployment review. Undeclared additions remain
93
+ * unknown and fail closed.
94
+ */
95
+ additiveReviewedTypes: readonly string[];
84
96
  /**
85
97
  * Exact provider types that can materially change cost or consume quotas.
86
98
  */
@@ -91,6 +103,14 @@ export interface InfrastructureRiskPolicyV1 {
91
103
  */
92
104
  statefulTypes: readonly string[];
93
105
  }
106
+ export interface AdoptedInfrastructureImportV1 {
107
+ authority: 'workload-role-account-baseline';
108
+ logicalId: string;
109
+ privateIdentifierTemplate: string;
110
+ recoveryRunbookRef: string;
111
+ removalBehavior: 'retain';
112
+ resourceType: string;
113
+ }
94
114
  export type InfrastructureDriftStatus = 'not-checked' | 'no-drift' | 'drift-detected' | 'partial-coverage' | 'unsupported' | 'failed';
95
115
  export type InfrastructureMutationAction = 'deploy' | 'refresh' | 'remove';
96
116
  export interface InfrastructurePlanTargetV1 {
@@ -145,11 +165,11 @@ export interface InfrastructureApprovalRecordV1 {
145
165
  evidenceRefs: Readonly<Record<string, string>>;
146
166
  expiresAt: string;
147
167
  materialDigest: string;
148
- mode: 'standing-policy' | 'human-record' | 'environment-reviewer';
168
+ mode: 'standing-policy' | 'human-record' | 'environment-reviewer' | 'operator-acknowledgement';
149
169
  recordPath?: string;
150
170
  stage: string;
151
171
  }
152
- export type InfrastructurePlanValidationCode = 'approval-invalid' | 'approval-missing' | 'diff-incomplete' | 'drift-unresolved' | 'material-plan-changed' | 'plan-expired' | 'plan-schema-invalid' | 'plan-tool-version-invalid' | 'source-change-invalid' | 'state-lock-unverified' | 'state-locked' | 'unknown-risk';
172
+ export type InfrastructurePlanValidationCode = 'approval-invalid' | 'approval-missing' | 'authority-envelope-changed' | 'approval-required-change' | 'diff-incomplete' | 'drift-unresolved' | 'material-plan-changed' | 'plan-expired' | 'plan-schema-invalid' | 'plan-tool-version-invalid' | 'source-change-invalid' | 'state-lock-unverified' | 'state-locked' | 'unknown-risk';
153
173
  export interface InfrastructurePlanValidationFindingV1 {
154
174
  code: InfrastructurePlanValidationCode;
155
175
  detail: string;
@@ -164,6 +184,7 @@ export interface InfrastructureAuthorizationEvidenceV1 {
164
184
  approval?: InfrastructureApprovalRecordV1;
165
185
  governanceEvidenceDigests?: Readonly<Record<string, string>>;
166
186
  kind: 'ebk-infrastructure-authorization';
187
+ localGovernance?: unknown;
167
188
  plannedMaterialDigest: string;
168
189
  recomputedMaterialDigest: string;
169
190
  schemaVersion: typeof INFRASTRUCTURE_CHANGE_SCHEMA_VERSION;
@@ -245,7 +266,7 @@ export interface PostPlanExplanationV1 {
245
266
  resourceId: string;
246
267
  ownershipRuleRef: string;
247
268
  }
248
- export type InfrastructureOperationOutcome = 'apply-complete-unverified' | 'apply-failed-no-change' | 'apply-partial' | 'cleanup-incomplete' | 'converged' | 'recovery-required';
269
+ export type InfrastructureOperationOutcome = 'apply-complete-unverified' | 'refresh-complete-replan-required' | 'apply-failed-no-change' | 'apply-partial' | 'cleanup-incomplete' | 'converged' | 'recovery-required';
249
270
  export interface InfrastructureConvergenceV1 {
250
271
  converged: boolean;
251
272
  findings: readonly string[];
@@ -10,6 +10,7 @@ exports.INFRASTRUCTURE_OPERATIONS = [
10
10
  'update',
11
11
  'replace',
12
12
  'delete',
13
+ 'discard',
13
14
  'import',
14
15
  'read',
15
16
  'unknown',
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../../packages/nx/src/infrastructure-change/model.ts"],"names":[],"mappings":";;;AAAa,QAAA,oCAAoC,GAAG,CAAU,CAAC;AAClD,QAAA,wBAAwB,GAAG,yBAAkC,CAAC;AAC9D,QAAA,kBAAkB,GAAG,KAAc,CAAC;AACpC,QAAA,qBAAqB,GAAG,QAAiB,CAAC;AAE1C,QAAA,yBAAyB,GAAG;IACvC,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,SAAS;CACD,CAAC;AAKE,QAAA,2BAA2B,GAAG;IACzC,WAAW;IACX,mBAAmB;IACnB,mBAAmB;IACnB,uBAAuB;IACvB,yBAAyB;IACzB,oBAAoB;IACpB,sBAAsB;IACtB,wBAAwB;IACxB,SAAS;CACD,CAAC"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../../packages/nx/src/infrastructure-change/model.ts"],"names":[],"mappings":";;;AAAa,QAAA,oCAAoC,GAAG,CAAU,CAAC;AAClD,QAAA,wBAAwB,GAAG,yBAAkC,CAAC;AAC9D,QAAA,kBAAkB,GAAG,KAAc,CAAC;AACpC,QAAA,qBAAqB,GAAG,QAAiB,CAAC;AAE1C,QAAA,yBAAyB,GAAG;IACvC,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,MAAM;IACN,SAAS;CACD,CAAC;AAKE,QAAA,2BAA2B,GAAG;IACzC,WAAW;IACX,mBAAmB;IACnB,mBAAmB;IACnB,uBAAuB;IACvB,yBAAyB;IACzB,oBAAoB;IACpB,sBAAsB;IACtB,wBAAwB;IACxB,SAAS;CACD,CAAC"}
@@ -6,7 +6,11 @@ import { type NormalizedSstDiffV1 } from './model.js';
6
6
  * intentionally discarded so values cannot enter an EBK report.
7
7
  */
8
8
  export declare function normalizeSstDiffV4_17_1(input: {
9
+ errorCode?: string | null;
9
10
  exitCode: number;
11
+ signal?: string | null;
12
+ spawnError?: boolean;
13
+ stderr?: string;
10
14
  stdout: string | unknown;
11
15
  toolVersion: string;
12
16
  }): NormalizedSstDiffV1;
@@ -32,6 +32,7 @@ const PROPERTY_DIFF_KINDS = new Set([
32
32
  const REPLACEMENT_OPERATIONS = new Set([
33
33
  'create-replacement',
34
34
  'delete-replaced',
35
+ 'discard-replaced',
35
36
  'import-replacement',
36
37
  'read-replacement',
37
38
  'replace',
@@ -75,9 +76,12 @@ function normalizeOperation(providerOperation) {
75
76
  return 'update';
76
77
  case 'delete':
77
78
  return 'delete';
79
+ case 'discard':
80
+ return 'discard';
78
81
  case 'replace':
79
82
  case 'create-replacement':
80
83
  case 'delete-replaced':
84
+ case 'discard-replaced':
81
85
  case 'read-replacement':
82
86
  case 'import-replacement':
83
87
  return 'replace';
@@ -89,6 +93,34 @@ function normalizeOperation(providerOperation) {
89
93
  return 'unknown';
90
94
  }
91
95
  }
96
+ function compareNormalizedResources(left, right) {
97
+ return ((0, deterministic_order_js_1.compareUtf16)(left.logicalId, right.logicalId) ||
98
+ (0, deterministic_order_js_1.compareUtf16)(left.resourceType, right.resourceType) ||
99
+ (0, deterministic_order_js_1.compareUtf16)(left.operation, right.operation) ||
100
+ (0, deterministic_order_js_1.compareUtf16)(left.providerOperation, right.providerOperation) ||
101
+ Number(left.replacement) - Number(right.replacement) ||
102
+ (0, deterministic_order_js_1.compareUtf16)(left.replacementStrategy, right.replacementStrategy) ||
103
+ (0, deterministic_order_js_1.compareUtf16)(JSON.stringify(left.changedProperties), JSON.stringify(right.changedProperties)) ||
104
+ left.sourceIndex - right.sourceIndex);
105
+ }
106
+ function externalResourceLogicalId(entry, providerOperation, resourceType) {
107
+ const state = providerOperation === 'discard' || providerOperation === 'discard-replaced'
108
+ ? entry['old']
109
+ : providerOperation === 'read' || providerOperation === 'read-replacement'
110
+ ? entry['new']
111
+ : undefined;
112
+ if (!isRecord(state))
113
+ return undefined;
114
+ const id = state['id'];
115
+ if (typeof id !== 'string' || id.length === 0)
116
+ return undefined;
117
+ return `external-${(0, node_crypto_1.createHash)('sha256')
118
+ .update(resourceType)
119
+ .update('\0')
120
+ .update(id)
121
+ .digest('hex')
122
+ .slice(0, 24)}`;
123
+ }
92
124
  function normalizeProperty(path, raw) {
93
125
  if (!isRecord(raw)) {
94
126
  return undefined;
@@ -138,9 +170,6 @@ function normalizeSstDiffV4_17_1(input) {
138
170
  raw = [];
139
171
  }
140
172
  const entries = Array.isArray(raw) ? raw : [];
141
- if (!Number.isSafeInteger(input.exitCode) || input.exitCode !== 0) {
142
- failures.push(failure('diff-command-failed', 'SST diff did not complete with exit code zero'));
143
- }
144
173
  const resources = [];
145
174
  for (const [sourceIndex, entry] of entries.entries()) {
146
175
  if (!isRecord(entry)) {
@@ -188,15 +217,25 @@ function normalizeSstDiffV4_17_1(input) {
188
217
  }
189
218
  }
190
219
  const keys = entry['keys'];
220
+ if (keys !== undefined &&
221
+ keys !== null &&
222
+ (!Array.isArray(keys) || !keys.every((key) => typeof key === 'string'))) {
223
+ failures.push(failure('diff-shape-invalid', 'replacement keys must be an array of strings when present', sourceIndex));
224
+ }
191
225
  const hasReplacementKeys = Array.isArray(keys) &&
192
226
  keys.length > 0 &&
193
227
  keys.every((key) => typeof key === 'string');
194
228
  const replacement = REPLACEMENT_OPERATIONS.has(providerOperation) ||
195
229
  hasReplacementKeys ||
196
230
  changedProperties.some((property) => property.kind.endsWith('-replace'));
231
+ const externalLogicalId = externalResourceLogicalId(entry, providerOperation, resourceType);
232
+ if (['discard', 'discard-replaced', 'read', 'read-replacement'].includes(providerOperation) &&
233
+ externalLogicalId === undefined) {
234
+ failures.push(failure('diff-shape-invalid', 'external resource operations require one exact physical identifier', sourceIndex));
235
+ }
197
236
  resources.push({
198
237
  changedProperties,
199
- logicalId: logicalResourceId(urn),
238
+ logicalId: externalLogicalId ?? logicalResourceId(urn),
200
239
  operation: normalizeOperation(providerOperation),
201
240
  providerOperation,
202
241
  replacement,
@@ -225,14 +264,15 @@ function normalizeSstDiffV4_17_1(input) {
225
264
  : 'delete-before-create';
226
265
  }
227
266
  }
267
+ if (!Number.isSafeInteger(input.exitCode) || input.exitCode !== 0) {
268
+ failures.push(failure('diff-command-failed', 'SST diff did not produce an authorized complete command outcome'));
269
+ }
228
270
  return {
229
271
  complete: failures.length === 0,
230
272
  diagnosticCoverage: 'exit-status-only',
231
273
  failures,
232
274
  kind: 'ebk-sst-diff',
233
- resources: resources.sort((left, right) => (0, deterministic_order_js_1.compareUtf16)(left.logicalId, right.logicalId) ||
234
- (0, deterministic_order_js_1.compareUtf16)(left.resourceType, right.resourceType) ||
235
- left.sourceIndex - right.sourceIndex),
275
+ resources: resources.sort(compareNormalizedResources),
236
276
  schemaVersion: model_js_1.INFRASTRUCTURE_CHANGE_SCHEMA_VERSION,
237
277
  sourceBoundary: 'desired-source-vs-recorded-state',
238
278
  stateIdentityCoverage: 'not-emitted-by-diff-json',
@@ -1 +1 @@
1
- {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../../../../packages/nx/src/infrastructure-change/normalize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../../../../packages/nx/src/infrastructure-change/normalize.ts"],"names":[],"mappings":"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"}
@@ -20,9 +20,21 @@ export interface CreateInfrastructurePlanInputV1 {
20
20
  versions: Readonly<Record<string, string>>;
21
21
  }
22
22
  /**
23
- * Hashes the material plan contract. generatedAt, expiresAt, repository,
24
- * sourceCommit, and approval-record contents are intentionally excluded and
25
- * validated independently immediately before apply.
23
+ * Returns the value-free resource projection used by plan and drift digests.
24
+ * SST's BucketFiles dynamic provider reports rebuilt file arrays by ephemeral
25
+ * list index. The committed source and release-candidate authorities bind the
26
+ * bytes; the plan binds the mutation kind without turning array scheduling
27
+ * into a new approval identity. Every unrecognized path remains exact.
28
+ *
29
+ * @internal
30
+ */
31
+ export declare function materialNormalizedSstDiffResources(diff: NormalizedSstDiffV1): readonly unknown[];
32
+ /**
33
+ * Hashes the material plan contract. Diagnostic source positions, observation
34
+ * timestamps, generatedAt, expiresAt, repository, sourceCommit, and
35
+ * approval-record contents are intentionally excluded. Freshness, repository,
36
+ * source, and approval authority are validated independently immediately
37
+ * before apply.
26
38
  */
27
39
  export declare function computeMaterialPlanDigest(plan: Omit<InfrastructurePlanV1, 'materialDigest'> | InfrastructurePlanV1): string;
28
40
  export declare function createInfrastructurePlan(input: CreateInfrastructurePlanInputV1): InfrastructurePlanV1;
@@ -38,3 +50,18 @@ export declare function validateInfrastructurePlanForApply(input: {
38
50
  recomputed: InfrastructurePlanV1;
39
51
  sourceChangesSincePlan: readonly string[];
40
52
  }): InfrastructurePlanValidationV1;
53
+ /**
54
+ * Validates a fresh protected-workflow plan against source-bound deployment
55
+ * authority. The retained provider preview remains review evidence, but
56
+ * provider observations are not treated as a replayable transaction. Every
57
+ * approval-required resource and operation in the fresh plan must have been
58
+ * present in the reviewed plan.
59
+ */
60
+ export declare function validateInfrastructurePlanForProtectedApply(input: {
61
+ approval?: InfrastructureApprovalRecordV1;
62
+ environmentReviewerApproved?: boolean;
63
+ now: string;
64
+ planned: InfrastructurePlanV1;
65
+ recomputed: InfrastructurePlanV1;
66
+ sourceChangesSincePlan: readonly string[];
67
+ }): InfrastructurePlanValidationV1;