@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
@@ -17,7 +17,9 @@ const index_js_1 = require("../../repository-policy/index.js");
17
17
  const index_js_2 = require("../../work-markers/index.js");
18
18
  const logging_preflight_js_1 = require("./logging-preflight.js");
19
19
  const secret_preflight_js_1 = require("./secret-preflight.js");
20
- const PROTECTED_STAGES = new Set(['staging', 'production']);
20
+ const sst_environment_source_js_1 = require("./sst-environment-source.js");
21
+ const GOVERNED_STAGES = new Set(['development', 'staging', 'production']);
22
+ const DEPLOYMENT_STAGES = new Set(['development', 'staging', 'production']);
21
23
  const RESERVED_FORWARDED_OPTIONS = new Set([
22
24
  '--config',
23
25
  '--profile',
@@ -27,14 +29,37 @@ const RESERVED_FORWARDED_OPTIONS = new Set([
27
29
  ]);
28
30
  const SST_DEV_MODES = new Set(['basic', 'mono']);
29
31
  const AWS_REGION_PATTERN = /^[a-z]{2}(?:-gov)?-[a-z]+-\d$/;
32
+ const AWS_ROLE_ARN_PATTERN = /^arn:(aws|aws-us-gov|aws-cn):iam::\d{12}:role\/[A-Za-z0-9+=,.@_/-]{1,512}$/;
33
+ function captureSstEnvironmentSource(context) {
34
+ const projectName = context.projectName;
35
+ const configured = projectName
36
+ ? context.projectsConfigurations?.projects[projectName]?.root
37
+ : undefined;
38
+ if (!projectName || !configured) {
39
+ throw new Error('SST lifecycle tool-owned source requires one exact Nx project root.');
40
+ }
41
+ return (0, sst_environment_source_js_1.captureSstEnvironmentSourceTree)({
42
+ projectRoot: (0, node_path_1.isAbsolute)(configured)
43
+ ? configured
44
+ : (0, node_path_1.join)(context.root, configured),
45
+ workspaceRoot: context.root,
46
+ });
47
+ }
30
48
  function requiresInfrastructureBinding(command, stage) {
31
- return (PROTECTED_STAGES.has(stage) &&
49
+ return (GOVERNED_STAGES.has(stage) &&
32
50
  (command === 'deploy' || command === 'refresh' || command === 'remove'));
33
51
  }
34
52
  async function authorizeInfrastructureMutation(command, options, context, invocation) {
35
53
  const { revalidateInfrastructureMutationAuthorization } = await Promise.resolve().then(() => require('../infrastructure-plan/infrastructure-plan.js'));
36
54
  await revalidateInfrastructureMutationAuthorization(command, options, context, invocation);
37
55
  }
56
+ async function authorizeLocalUnlock(options, invocation) {
57
+ const { revalidateLocalUnlockCallerAuthority } = await Promise.resolve().then(() => require('../infrastructure-plan/infrastructure-plan.js'));
58
+ revalidateLocalUnlockCallerAuthority({
59
+ invocation,
60
+ profile: options.profile,
61
+ });
62
+ }
38
63
  async function retainInfrastructureConvergence(command, options, context, invocation, applySucceeded) {
39
64
  const { recordInfrastructureMutationConvergence } = await Promise.resolve().then(() => require('../infrastructure-plan/infrastructure-plan.js'));
40
65
  return recordInfrastructureMutationConvergence(command, options, context, invocation, applySucceeded);
@@ -56,6 +81,19 @@ function createSstChildEnvironment(ambient, invocation) {
56
81
  ? (0, personal_stage_js_1.createPersonalDevelopmentEnvironment)(invocation.EBK_CONSUMER_STAGE, ambient)
57
82
  : (0, personal_stage_js_1.stripAmbientStageAuthority)(ambient);
58
83
  delete sanitized.EBK_PRODUCTION_FOUNDATION_PROFILE;
84
+ delete sanitized.EBK_LOCAL_MUTATION_CAPABILITY_NONCE;
85
+ delete sanitized.EBK_LOCAL_MUTATION_CAPABILITY_PATH;
86
+ // Nx injects task identity, target, hash, terminal, cache, and invocation
87
+ // metadata into every executor process. A reviewed infrastructure-plan and
88
+ // its mutation-time revalidation intentionally run under different Nx
89
+ // targets, so those values are orchestration context rather than desired
90
+ // infrastructure inputs. Never let them reach SST, where build tools can
91
+ // persist ambient environment values into deployment archives.
92
+ for (const name of Object.keys(sanitized)) {
93
+ if (name.startsWith('NX_') || name === 'LERNA_PACKAGE_NAME') {
94
+ delete sanitized[name];
95
+ }
96
+ }
59
97
  return { ...sanitized, ...invocation };
60
98
  }
61
99
  function assertSafeSstForwardedArguments(args) {
@@ -80,12 +118,16 @@ function resolveSstDevMode(environment, forwardedArguments = []) {
80
118
  }
81
119
  return requested;
82
120
  }
83
- function assertSstLifecyclePolicy(command, stage, environment = process.env) {
84
- if (!PROTECTED_STAGES.has(stage))
121
+ function assertSstLifecyclePolicy(command, stage, environment = process.env, deploymentProfile = 'fully-isolated') {
122
+ if (!GOVERNED_STAGES.has(stage))
85
123
  return;
86
124
  if (command === 'dev') {
87
125
  throw new Error(`SST dev is not permitted for protected stage ${stage}.`);
88
126
  }
127
+ if (!(0, index_js_1.requiresGithubDeployment)(deploymentProfile, stage) &&
128
+ environment.GITHUB_ACTIONS !== 'true') {
129
+ return;
130
+ }
89
131
  const repository = environment.GITHUB_REPOSITORY;
90
132
  const expectedBranch = stage === 'staging' ? 'develop' : 'main';
91
133
  const expectedRef = `refs/heads/${expectedBranch}`;
@@ -180,8 +222,44 @@ function buildSstCommandInvocation(command, options, context, environment = proc
180
222
  stages.mapped) {
181
223
  throw new Error(`Full deploy is not permitted for mapped personal stage ${stages.consumerStage}. Use ebk dev against the ${stages.foundationStage} Foundation.`);
182
224
  }
183
- assertSstLifecyclePolicy(command, stages.consumerStage, environment);
184
- if (PROTECTED_STAGES.has(stages.consumerStage) &&
225
+ const operatingPolicy = DEPLOYMENT_STAGES.has(stages.consumerStage) &&
226
+ (command === 'deploy' ||
227
+ command === 'refresh' ||
228
+ command === 'remove' ||
229
+ command === 'unlock')
230
+ ? (0, index_js_1.readRepositoryOperatingPolicy)(context.root)
231
+ : undefined;
232
+ assertSstLifecyclePolicy(command, stages.consumerStage, environment, operatingPolicy?.deploymentProfile);
233
+ const deploymentAccounts = operatingPolicy
234
+ ? (0, index_js_1.configuredDeploymentAccountTopology)(operatingPolicy.deploymentProfile, operatingPolicy.deploymentAccounts)
235
+ : undefined;
236
+ const deploymentRegion = operatingPolicy
237
+ ? (0, index_js_1.configuredDeploymentRegion)(operatingPolicy.deploymentRegion)
238
+ : undefined;
239
+ if (deploymentRegion &&
240
+ options.region?.trim() &&
241
+ options.region.trim() !== deploymentRegion) {
242
+ throw new Error(`SST lifecycle Region ${options.region.trim()} differs from committed deployment Region ${deploymentRegion}.`);
243
+ }
244
+ if (options.expectedRoleArn !== undefined &&
245
+ !AWS_ROLE_ARN_PATTERN.test(options.expectedRoleArn.trim())) {
246
+ throw new Error('SST lifecycle expectedRoleArn must be one exact IAM role ARN.');
247
+ }
248
+ const profile = options.profile?.trim();
249
+ if (options.profile !== undefined &&
250
+ (!profile || profile !== options.profile || profile.length > 128)) {
251
+ throw new Error('SST lifecycle profile must be one non-empty exact AWS profile name up to 128 characters.');
252
+ }
253
+ if (operatingPolicy &&
254
+ environment.GITHUB_ACTIONS !== 'true' &&
255
+ (command === 'deploy' ||
256
+ command === 'refresh' ||
257
+ command === 'remove' ||
258
+ command === 'unlock') &&
259
+ !options.expectedRoleArn?.trim()) {
260
+ throw new Error(`Local ${command} for ${stages.consumerStage} requires --expectedRoleArn for one temporary assumed-role session.`);
261
+ }
262
+ if (GOVERNED_STAGES.has(stages.consumerStage) &&
185
263
  (command === 'deploy' || command === 'refresh')) {
186
264
  (0, index_js_2.assertWorkMarkerReport)((0, index_js_2.scanWorkMarkers)(context.root), {
187
265
  protectedPromotion: true,
@@ -200,9 +278,6 @@ function buildSstCommandInvocation(command, options, context, environment = proc
200
278
  })
201
279
  : undefined;
202
280
  const args = [command, '--stage', stages.consumerStage];
203
- if (options.profile) {
204
- args.push('--profile', options.profile);
205
- }
206
281
  if (options.target) {
207
282
  args.push('--target', options.target);
208
283
  }
@@ -222,8 +297,23 @@ function buildSstCommandInvocation(command, options, context, environment = proc
222
297
  ],
223
298
  cwd,
224
299
  environment: {
225
- ...(options.region?.trim() ? { AWS_REGION: options.region.trim() } : {}),
300
+ ...(deploymentAccounts
301
+ ? {
302
+ AWS_EXPECTED_ACCOUNT_ID: deploymentAccounts[stages.consumerStage],
303
+ }
304
+ : {}),
305
+ ...(profile ? { AWS_PROFILE: profile } : {}),
306
+ ...(deploymentRegion
307
+ ? { AWS_REGION: deploymentRegion }
308
+ : options.region?.trim()
309
+ ? { AWS_REGION: options.region.trim() }
310
+ : {}),
226
311
  EBK_CONSUMER_STAGE: stages.consumerStage,
312
+ ...(options.expectedRoleArn?.trim()
313
+ ? {
314
+ EBK_EXPECTED_DEPLOYMENT_ROLE_ARN: options.expectedRoleArn.trim(),
315
+ }
316
+ : {}),
227
317
  EBK_FOUNDATION_STAGE: stages.foundationStage,
228
318
  ...(policyDecision?.effectiveProductionProfile
229
319
  ? {
@@ -241,6 +331,10 @@ async function runSstLifecyclePreflights(command, options, context, invocation,
241
331
  if (command === 'deploy') {
242
332
  await (dependencies.secrets ?? secret_preflight_js_1.preflightSliceSecretMetadata)(options, context, invocation);
243
333
  }
334
+ if (command === 'unlock' &&
335
+ invocation.environment.EBK_EXPECTED_DEPLOYMENT_ROLE_ARN) {
336
+ await (dependencies.unlockAuthorization ?? authorizeLocalUnlock)(options, invocation);
337
+ }
244
338
  if (requiresInfrastructureBinding(command, invocation.environment.EBK_CONSUMER_STAGE)) {
245
339
  await (dependencies.infrastructureAuthorization ??
246
340
  authorizeInfrastructureMutation)(command, options, context, invocation);
@@ -248,12 +342,36 @@ async function runSstLifecyclePreflights(command, options, context, invocation,
248
342
  }
249
343
  async function runSstCommand(command, options, context, dependencies = {}) {
250
344
  let invocation;
345
+ let environmentSource;
251
346
  try {
252
347
  invocation = buildSstCommandInvocation(command, options, context);
348
+ if (requiresInfrastructureBinding(command, invocation.environment.EBK_CONSUMER_STAGE)) {
349
+ // Infrastructure authorization runs an SST plan and SST can rewrite its
350
+ // generated environment declaration during that preflight. Capture the
351
+ // committed source before any SST-bearing operation so neither the plan
352
+ // nor the mutation child can become the restoration baseline.
353
+ environmentSource = captureSstEnvironmentSource(context);
354
+ }
253
355
  await runSstLifecyclePreflights(command, options, context, invocation, dependencies);
356
+ if (environmentSource)
357
+ (0, sst_environment_source_js_1.reconcileSstEnvironmentSourceTree)(environmentSource);
254
358
  }
255
359
  catch (error) {
360
+ let restorationError;
361
+ if (environmentSource) {
362
+ try {
363
+ (0, sst_environment_source_js_1.reconcileSstEnvironmentSourceTree)(environmentSource);
364
+ }
365
+ catch (candidate) {
366
+ restorationError = candidate;
367
+ }
368
+ }
256
369
  devkit_1.logger.error(error instanceof Error ? error.message : String(error));
370
+ if (restorationError !== undefined) {
371
+ devkit_1.logger.error(`Failed to restore SST tool-owned source after preflight: ${restorationError instanceof Error
372
+ ? restorationError.message
373
+ : String(restorationError)}`);
374
+ }
257
375
  return { success: false };
258
376
  }
259
377
  devkit_1.logger.info(`Running workspace SST: ${command} --stage ${invocation.environment.EBK_CONSUMER_STAGE} foundationStage=${invocation.environment.EBK_FOUNDATION_STAGE} (${invocation.cwd})`);
@@ -284,7 +402,17 @@ async function runSstCommand(command, options, context, dependencies = {}) {
284
402
  devkit_1.logger.error(`If the stack is locked, run pnpm nx run ${context.projectName ?? '<project>'}:unlock --stage=${options.stage}.`);
285
403
  }
286
404
  }
287
- const applySucceeded = code === 0;
405
+ let sourceRestored = true;
406
+ if (environmentSource) {
407
+ try {
408
+ (0, sst_environment_source_js_1.reconcileSstEnvironmentSourceTree)(environmentSource);
409
+ }
410
+ catch (error) {
411
+ sourceRestored = false;
412
+ devkit_1.logger.error(`Failed to restore SST tool-owned source: ${error instanceof Error ? error.message : String(error)}`);
413
+ }
414
+ }
415
+ const applySucceeded = code === 0 && sourceRestored;
288
416
  if (requiresInfrastructureBinding(command, invocation.environment.EBK_CONSUMER_STAGE)) {
289
417
  try {
290
418
  const mutationEvidenceRetained = await (dependencies.infrastructureConvergence ??
@@ -295,7 +423,11 @@ async function runSstCommand(command, options, context, dependencies = {}) {
295
423
  // A deploy retains apply-complete-unverified as a successful handoff
296
424
  // to deployed smoke. It is not terminal convergence; the protected
297
425
  // finalizer consumes the exact alarm, data, and journey evidence.
298
- settle(applySucceeded && mutationEvidenceRetained);
426
+ // Convergence remains the fail-closed authority for governed
427
+ // mutations. A child failure remains failed even if refresh wrote a
428
+ // newer state snapshot; that condition is retained as recovery
429
+ // evidence and cannot be upgraded into accepted success.
430
+ settle(sourceRestored && mutationEvidenceRetained && applySucceeded);
299
431
  }
300
432
  catch (error) {
301
433
  devkit_1.logger.error(`Failed to retain infrastructure convergence: ${error instanceof Error ? error.message : String(error)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"run-sst-command.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/sst-lifecycle/run-sst-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-sst-command.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/sst-lifecycle/run-sst-command.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,19 @@
27
27
  },
28
28
  "profile": {
29
29
  "type": "string",
30
- "description": "Optional AWS profile passed to SST."
30
+ "minLength": 1,
31
+ "maxLength": 128,
32
+ "description": "Optional exact AWS profile exposed to the SST child as AWS_PROFILE."
33
+ },
34
+ "expectedRoleArn": {
35
+ "type": "string",
36
+ "pattern": "^arn:(aws|aws-us-gov|aws-cn):iam::[0-9]{12}:role/[A-Za-z0-9+=,.@_/-]{1,512}$",
37
+ "description": "Exact temporary-session IAM role expected for local governed deployment. This is verified against STS before mutation."
38
+ },
39
+ "localProductionConfirmation": {
40
+ "type": "string",
41
+ "maxLength": 256,
42
+ "description": "One-use local starter production confirmation: <action>:production:<account>:<region>:<source-commit>. It is never forwarded to SST."
31
43
  },
32
44
  "region": {
33
45
  "type": "string",
@@ -0,0 +1,25 @@
1
+ interface SstEnvironmentSourceSnapshot {
2
+ absolutePath: string;
3
+ bytes: Buffer;
4
+ identity: {
5
+ birthtimeNs: bigint;
6
+ dev: bigint;
7
+ ino: bigint;
8
+ mode: bigint;
9
+ nlink: bigint;
10
+ };
11
+ relativePath: string;
12
+ }
13
+ export interface SstEnvironmentSourceTreeSnapshot {
14
+ projectRoot: string;
15
+ rootPythonSourcePath: string;
16
+ rootSourcePath: string;
17
+ snapshots: readonly SstEnvironmentSourceSnapshot[];
18
+ workspaceRoot: string;
19
+ }
20
+ export declare function captureSstEnvironmentSourceTree(input: {
21
+ projectRoot: string;
22
+ workspaceRoot: string;
23
+ }): SstEnvironmentSourceTreeSnapshot;
24
+ export declare function reconcileSstEnvironmentSourceTree(retained: SstEnvironmentSourceTreeSnapshot): void;
25
+ export {};
@@ -0,0 +1,213 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.captureSstEnvironmentSourceTree = captureSstEnvironmentSourceTree;
4
+ exports.reconcileSstEnvironmentSourceTree = reconcileSstEnvironmentSourceTree;
5
+ const node_fs_1 = require("node:fs");
6
+ const node_path_1 = require("node:path");
7
+ const sst_environment_source_format_js_1 = require("../../sst-environment-source-format.js");
8
+ const MAX_SST_ENV_SOURCE_BYTES = 1024 * 1024;
9
+ const MAX_SST_ENV_SOURCE_FILES = 64;
10
+ const MAX_PROJECT_DIRECTORY_ENTRIES = 32_768;
11
+ const MAX_PROJECT_DIRECTORY_DEPTH = 32;
12
+ const MAX_RELATIVE_PATH_BYTES = 1024;
13
+ const SKIPPED_DIRECTORIES = new Set([
14
+ '.git',
15
+ '.nx',
16
+ '.sst',
17
+ 'coverage',
18
+ 'dist',
19
+ 'node_modules',
20
+ ]);
21
+ function normalizedRelativePath(root, absolutePath) {
22
+ const path = (0, node_path_1.relative)(root, absolutePath).split('\\').join('/');
23
+ if (!path ||
24
+ path === '..' ||
25
+ path.startsWith('../') ||
26
+ (0, node_path_1.isAbsolute)(path) ||
27
+ Buffer.byteLength(path, 'utf8') > MAX_RELATIVE_PATH_BYTES) {
28
+ throw new Error('SST lifecycle tool-owned source escapes its boundary.');
29
+ }
30
+ return path;
31
+ }
32
+ function stableSstEnvironmentSource(absolutePath, workspaceRoot) {
33
+ const relativePath = normalizedRelativePath(workspaceRoot, absolutePath);
34
+ const before = (0, node_fs_1.lstatSync)(absolutePath, { bigint: true });
35
+ if (!before.isFile() ||
36
+ before.nlink !== 1n ||
37
+ before.size > BigInt(MAX_SST_ENV_SOURCE_BYTES) ||
38
+ (0, node_fs_1.realpathSync)(absolutePath) !== absolutePath) {
39
+ throw new Error(`SST lifecycle tool-owned source ${relativePath} is not one bounded, unaliased regular file.`);
40
+ }
41
+ const bytes = (0, node_fs_1.readFileSync)(absolutePath);
42
+ const after = (0, node_fs_1.lstatSync)(absolutePath, { bigint: true });
43
+ if (before.dev !== after.dev ||
44
+ before.ino !== after.ino ||
45
+ before.mode !== after.mode ||
46
+ before.nlink !== after.nlink ||
47
+ before.size !== after.size ||
48
+ before.mtimeNs !== after.mtimeNs ||
49
+ before.ctimeNs !== after.ctimeNs ||
50
+ BigInt(bytes.byteLength) !== after.size) {
51
+ throw new Error(`SST lifecycle tool-owned source ${relativePath} changed while it was read.`);
52
+ }
53
+ return {
54
+ absolutePath,
55
+ bytes,
56
+ identity: {
57
+ birthtimeNs: before.birthtimeNs,
58
+ dev: before.dev,
59
+ ino: before.ino,
60
+ mode: before.mode,
61
+ nlink: before.nlink,
62
+ },
63
+ relativePath,
64
+ };
65
+ }
66
+ function discoverSstEnvironmentSources(input) {
67
+ const queue = [{ absolutePath: input.projectRoot, depth: 0 }];
68
+ const sources = [];
69
+ let observedEntries = 0;
70
+ for (let index = 0; index < queue.length; index += 1) {
71
+ const current = queue[index];
72
+ if (!current)
73
+ break;
74
+ for (const entry of (0, node_fs_1.readdirSync)(current.absolutePath, {
75
+ withFileTypes: true,
76
+ })) {
77
+ observedEntries += 1;
78
+ if (observedEntries > MAX_PROJECT_DIRECTORY_ENTRIES) {
79
+ throw new Error('SST lifecycle project source exceeds the bounded directory inventory.');
80
+ }
81
+ const absolutePath = (0, node_path_1.join)(current.absolutePath, entry.name);
82
+ if (entry.name === 'sst-env.d.ts' ||
83
+ (entry.name === 'sst.pyi' &&
84
+ absolutePath === (0, node_path_1.join)(input.projectRoot, 'sst.pyi'))) {
85
+ sources.push(stableSstEnvironmentSource(absolutePath, input.workspaceRoot));
86
+ if (sources.length > MAX_SST_ENV_SOURCE_FILES) {
87
+ throw new Error('SST lifecycle project source exceeds the bounded environment-source inventory.');
88
+ }
89
+ continue;
90
+ }
91
+ if (entry.isDirectory() && !SKIPPED_DIRECTORIES.has(entry.name)) {
92
+ if (current.depth >= MAX_PROJECT_DIRECTORY_DEPTH) {
93
+ throw new Error('SST lifecycle project source exceeds the bounded directory depth.');
94
+ }
95
+ queue.push({ absolutePath, depth: current.depth + 1 });
96
+ }
97
+ }
98
+ }
99
+ return sources.sort((left, right) => left.relativePath < right.relativePath
100
+ ? -1
101
+ : left.relativePath > right.relativePath
102
+ ? 1
103
+ : 0);
104
+ }
105
+ function sameIdentity(left, right) {
106
+ return (left.birthtimeNs === right.birthtimeNs &&
107
+ left.dev === right.dev &&
108
+ left.ino === right.ino &&
109
+ left.mode === right.mode &&
110
+ left.nlink === right.nlink);
111
+ }
112
+ function restoreExistingSstEnvironmentSource(retained, observed, workspaceRoot) {
113
+ if (!sameIdentity(retained.identity, observed.identity)) {
114
+ throw new Error(`SST lifecycle tool-owned source ${retained.relativePath} changed filesystem identity.`);
115
+ }
116
+ if (!observed.bytes.equals(retained.bytes)) {
117
+ const descriptor = (0, node_fs_1.openSync)(retained.absolutePath, 'r+');
118
+ try {
119
+ const opened = (0, node_fs_1.fstatSync)(descriptor, { bigint: true });
120
+ if (!opened.isFile() ||
121
+ opened.birthtimeNs !== retained.identity.birthtimeNs ||
122
+ opened.dev !== retained.identity.dev ||
123
+ opened.ino !== retained.identity.ino ||
124
+ opened.mode !== retained.identity.mode ||
125
+ opened.nlink !== 1n) {
126
+ throw new Error(`SST lifecycle tool-owned source ${retained.relativePath} changed before restoration.`);
127
+ }
128
+ (0, node_fs_1.ftruncateSync)(descriptor, 0);
129
+ (0, node_fs_1.writeFileSync)(descriptor, retained.bytes);
130
+ (0, node_fs_1.fsyncSync)(descriptor);
131
+ }
132
+ finally {
133
+ (0, node_fs_1.closeSync)(descriptor);
134
+ }
135
+ }
136
+ const restored = stableSstEnvironmentSource(retained.absolutePath, workspaceRoot);
137
+ if (!restored.bytes.equals(retained.bytes) ||
138
+ !sameIdentity(retained.identity, restored.identity)) {
139
+ throw new Error(`SST lifecycle tool-owned source ${retained.relativePath} was not restored exactly.`);
140
+ }
141
+ }
142
+ function removeGeneratedNestedSource(observed, rootPythonSourcePath, rootSourcePath, workspaceRoot) {
143
+ if (observed.absolutePath === rootPythonSourcePath) {
144
+ if (!(0, sst_environment_source_format_js_1.isExactGeneratedRootSstPythonSourceBytes)(observed.bytes)) {
145
+ throw new Error(`SST lifecycle new tool-owned source ${observed.relativePath} is not exact generated output.`);
146
+ }
147
+ const beforeDelete = stableSstEnvironmentSource(observed.absolutePath, workspaceRoot);
148
+ if (!beforeDelete.bytes.equals(observed.bytes) ||
149
+ !sameIdentity(beforeDelete.identity, observed.identity)) {
150
+ throw new Error(`SST lifecycle new tool-owned source ${observed.relativePath} changed before removal.`);
151
+ }
152
+ (0, node_fs_1.unlinkSync)(observed.absolutePath);
153
+ return;
154
+ }
155
+ const expectedBytes = (0, sst_environment_source_format_js_1.exactGeneratedNestedSstEnvironmentSourceBytes)(observed.absolutePath, rootSourcePath);
156
+ if (expectedBytes.length === 0) {
157
+ throw new Error('SST lifecycle generated environment source has an invalid root reference.');
158
+ }
159
+ if (observed.absolutePath === rootSourcePath ||
160
+ !expectedBytes.some((expected) => expected.equals(observed.bytes))) {
161
+ throw new Error(`SST lifecycle new tool-owned source ${observed.relativePath} is not exact generated output.`);
162
+ }
163
+ const beforeDelete = stableSstEnvironmentSource(observed.absolutePath, workspaceRoot);
164
+ if (!beforeDelete.bytes.equals(observed.bytes) ||
165
+ !sameIdentity(beforeDelete.identity, observed.identity)) {
166
+ throw new Error(`SST lifecycle new tool-owned source ${observed.relativePath} changed before removal.`);
167
+ }
168
+ (0, node_fs_1.unlinkSync)(observed.absolutePath);
169
+ }
170
+ function captureSstEnvironmentSourceTree(input) {
171
+ const workspaceRoot = (0, node_fs_1.realpathSync)(input.workspaceRoot);
172
+ const projectRoot = (0, node_fs_1.realpathSync)(input.projectRoot);
173
+ normalizedRelativePath(workspaceRoot, projectRoot);
174
+ const rootSourcePath = (0, node_path_1.join)(projectRoot, 'sst-env.d.ts');
175
+ const rootPythonSourcePath = (0, node_path_1.join)(projectRoot, 'sst.pyi');
176
+ const snapshots = discoverSstEnvironmentSources({
177
+ projectRoot,
178
+ workspaceRoot,
179
+ });
180
+ if (!snapshots.some(({ absolutePath }) => absolutePath === rootSourcePath)) {
181
+ throw new Error('SST lifecycle project lacks its exact root environment source.');
182
+ }
183
+ return {
184
+ projectRoot,
185
+ rootPythonSourcePath,
186
+ rootSourcePath,
187
+ snapshots,
188
+ workspaceRoot,
189
+ };
190
+ }
191
+ function reconcileSstEnvironmentSourceTree(retained) {
192
+ const retainedByPath = new Map(retained.snapshots.map((snapshot) => [snapshot.absolutePath, snapshot]));
193
+ const observed = discoverSstEnvironmentSources(retained);
194
+ const observedByPath = new Map(observed.map((snapshot) => [snapshot.absolutePath, snapshot]));
195
+ for (const snapshot of retained.snapshots) {
196
+ const current = observedByPath.get(snapshot.absolutePath);
197
+ if (!current) {
198
+ throw new Error(`SST lifecycle tool-owned source ${snapshot.relativePath} was removed.`);
199
+ }
200
+ restoreExistingSstEnvironmentSource(snapshot, current, retained.workspaceRoot);
201
+ }
202
+ for (const current of observed) {
203
+ if (!retainedByPath.has(current.absolutePath)) {
204
+ removeGeneratedNestedSource(current, retained.rootPythonSourcePath, retained.rootSourcePath, retained.workspaceRoot);
205
+ }
206
+ }
207
+ const finalPaths = discoverSstEnvironmentSources(retained).map(({ absolutePath }) => absolutePath);
208
+ const retainedPaths = retained.snapshots.map(({ absolutePath }) => absolutePath);
209
+ if (JSON.stringify(finalPaths) !== JSON.stringify(retainedPaths)) {
210
+ throw new Error('SST lifecycle environment-source inventory was not restored exactly.');
211
+ }
212
+ }
213
+ //# sourceMappingURL=sst-environment-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sst-environment-source.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/sst-lifecycle/sst-environment-source.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,10 @@ export * from './discovery.js';
2
2
  export * from './local-database-contract.js';
3
3
  export * from './logging.js';
4
4
  export * from './logging-preflight.js';
5
+ export * from './partial-state.js';
5
6
  export * from './provision-database-bindings.js';
6
7
  export * from './provision-logical-database.js';
7
8
  export * from './requirements.js';
8
9
  export * from './router-origin-proof.js';
10
+ export * from './router-waf.js';
9
11
  export * from './stages.js';
@@ -5,9 +5,11 @@ tslib_1.__exportStar(require("./discovery.js"), exports);
5
5
  tslib_1.__exportStar(require("./local-database-contract.js"), exports);
6
6
  tslib_1.__exportStar(require("./logging.js"), exports);
7
7
  tslib_1.__exportStar(require("./logging-preflight.js"), exports);
8
+ tslib_1.__exportStar(require("./partial-state.js"), exports);
8
9
  tslib_1.__exportStar(require("./provision-database-bindings.js"), exports);
9
10
  tslib_1.__exportStar(require("./provision-logical-database.js"), exports);
10
11
  tslib_1.__exportStar(require("./requirements.js"), exports);
11
12
  tslib_1.__exportStar(require("./router-origin-proof.js"), exports);
13
+ tslib_1.__exportStar(require("./router-waf.js"), exports);
12
14
  tslib_1.__exportStar(require("./stages.js"), exports);
13
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/nx/src/foundation/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,uEAA6C;AAC7C,uDAA6B;AAC7B,iEAAuC;AACvC,2EAAiD;AACjD,0EAAgD;AAChD,4DAAkC;AAClC,mEAAyC;AACzC,sDAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/nx/src/foundation/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,uEAA6C;AAC7C,uDAA6B;AAC7B,iEAAuC;AACvC,6DAAmC;AACnC,2EAAiD;AACjD,0EAAgD;AAChD,4DAAkC;AAClC,mEAAyC;AACzC,0DAAgC;AAChC,sDAA4B"}
@@ -13,7 +13,7 @@ function record(value) {
13
13
  }
14
14
  function stateResources(value) {
15
15
  const root = record(value);
16
- const deployment = record(root?.deployment);
16
+ const deployment = record(root?.deployment) ?? record(root?.latest) ?? root;
17
17
  const resources = deployment?.resources ?? root?.resources;
18
18
  if (!Array.isArray(resources)) {
19
19
  throw new Error('SST state export does not contain a Pulumi deployment resource list.');