@empire-builder-kit/nx 1.0.0-rc.30 → 1.0.0-rc.32

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 (310) hide show
  1. package/executors.json +8 -3
  2. package/package.json +14 -7
  3. package/src/aws/child-environment.d.ts +10 -0
  4. package/src/aws/child-environment.js +77 -0
  5. package/src/aws/child-environment.js.map +1 -0
  6. package/src/aws/identity.d.ts +13 -0
  7. package/src/aws/identity.js +41 -0
  8. package/src/aws/identity.js.map +1 -0
  9. package/src/aws-authority/index.d.ts +1 -0
  10. package/src/aws-authority/index.js +5 -0
  11. package/src/aws-authority/index.js.map +1 -0
  12. package/src/aws-authority/stage-authority.d.ts +240 -0
  13. package/src/aws-authority/stage-authority.js +2968 -0
  14. package/src/aws-authority/stage-authority.js.map +1 -0
  15. package/src/cli/main.d.ts +2 -0
  16. package/src/cli/main.js +11 -0
  17. package/src/cli/main.js.map +1 -1
  18. package/src/developer-agent/generator-planning.js +4 -4
  19. package/src/developer-agent/generator-planning.js.map +1 -1
  20. package/src/developer-agent/operation-registry.js +14 -6
  21. package/src/developer-agent/operation-registry.js.map +1 -1
  22. package/src/developer-agent/workspace-inspection.js +11 -2
  23. package/src/developer-agent/workspace-inspection.js.map +1 -1
  24. package/src/executors/deployment-plan/deployment-plan.js +1 -1
  25. package/src/executors/deployment-plan/deployment-plan.js.map +1 -1
  26. package/src/executors/foundation-preflight/foundation-preflight.d.ts +0 -1
  27. package/src/executors/foundation-preflight/foundation-preflight.js.map +1 -1
  28. package/src/executors/foundation-preflight/schema.json +0 -5
  29. package/src/executors/foundation-profile-preflight/foundation-profile-preflight.d.ts +12 -3
  30. package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js +95 -32
  31. package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js.map +1 -1
  32. package/src/executors/foundation-profile-preflight/production-database-safeguard.d.ts +64 -0
  33. package/src/executors/foundation-profile-preflight/production-database-safeguard.js +221 -0
  34. package/src/executors/foundation-profile-preflight/production-database-safeguard.js.map +1 -0
  35. package/src/executors/foundation-profile-preflight/schema.json +1 -6
  36. package/src/executors/foundation-remove-preflight/foundation-remove-preflight.d.ts +11 -1
  37. package/src/executors/foundation-remove-preflight/foundation-remove-preflight.js +44 -21
  38. package/src/executors/foundation-remove-preflight/foundation-remove-preflight.js.map +1 -1
  39. package/src/executors/foundation-remove-preflight/schema.json +6 -1
  40. package/src/executors/github-bootstrap/github-bootstrap.d.ts +1 -0
  41. package/src/executors/github-bootstrap/github-bootstrap.js +1 -0
  42. package/src/executors/github-bootstrap/github-bootstrap.js.map +1 -1
  43. package/src/executors/github-bootstrap/schema.json +7 -1
  44. package/src/executors/infrastructure-plan/infrastructure-plan.d.ts +27 -369
  45. package/src/executors/infrastructure-plan/infrastructure-plan.js +237 -5470
  46. package/src/executors/infrastructure-plan/infrastructure-plan.js.map +1 -1
  47. package/src/executors/infrastructure-plan/schema.json +8 -64
  48. package/src/executors/local-deploy/federated-credential-transport.d.ts +48 -0
  49. package/src/executors/local-deploy/federated-credential-transport.js +252 -0
  50. package/src/executors/local-deploy/federated-credential-transport.js.map +1 -0
  51. package/src/executors/local-deploy/local-approval.d.ts +4 -9
  52. package/src/executors/local-deploy/local-approval.js +3 -7
  53. package/src/executors/local-deploy/local-approval.js.map +1 -1
  54. package/src/executors/local-deploy/local-deploy.d.ts +60 -43
  55. package/src/executors/local-deploy/local-deploy.js +955 -804
  56. package/src/executors/local-deploy/local-deploy.js.map +1 -1
  57. package/src/executors/local-deploy/schema.json +3 -20
  58. package/src/executors/refresh/refresh.js +2 -2
  59. package/src/executors/refresh/refresh.js.map +1 -1
  60. package/src/executors/remove/remove.js +2 -2
  61. package/src/executors/remove/remove.js.map +1 -1
  62. package/src/executors/router-waf-rehearsal/router-waf-rehearsal.d.ts +27 -1
  63. package/src/executors/router-waf-rehearsal/router-waf-rehearsal.js +907 -22
  64. package/src/executors/router-waf-rehearsal/router-waf-rehearsal.js.map +1 -1
  65. package/src/executors/router-waf-rehearsal/schema.json +17 -2
  66. package/src/executors/secret-initialize/schema.json +42 -0
  67. package/src/executors/secret-initialize/secret-initialize.d.ts +32 -0
  68. package/src/executors/secret-initialize/secret-initialize.js +243 -0
  69. package/src/executors/secret-initialize/secret-initialize.js.map +1 -0
  70. package/src/executors/secret-metadata/secret-metadata.d.ts +4 -1
  71. package/src/executors/secret-metadata/secret-metadata.js +76 -29
  72. package/src/executors/secret-metadata/secret-metadata.js.map +1 -1
  73. package/src/executors/sst-lifecycle/generated-secret-retirement.d.ts +53 -0
  74. package/src/executors/sst-lifecycle/generated-secret-retirement.js +192 -0
  75. package/src/executors/sst-lifecycle/generated-secret-retirement.js.map +1 -0
  76. package/src/executors/sst-lifecycle/governed-native-operation.d.ts +46 -0
  77. package/src/executors/sst-lifecycle/governed-native-operation.js +153 -0
  78. package/src/executors/sst-lifecycle/governed-native-operation.js.map +1 -0
  79. package/src/executors/sst-lifecycle/run-sst-command.d.ts +27 -7
  80. package/src/executors/sst-lifecycle/run-sst-command.js +474 -89
  81. package/src/executors/sst-lifecycle/run-sst-command.js.map +1 -1
  82. package/src/executors/sst-lifecycle/schema.json +0 -5
  83. package/src/executors/sst-lifecycle/secret-preflight.d.ts +2 -0
  84. package/src/executors/sst-lifecycle/secret-preflight.js +13 -7
  85. package/src/executors/sst-lifecycle/secret-preflight.js.map +1 -1
  86. package/src/executors/unlock/unlock.js +2 -2
  87. package/src/executors/unlock/unlock.js.map +1 -1
  88. package/src/foundation/provision-logical-database.js +2 -0
  89. package/src/foundation/provision-logical-database.js.map +1 -1
  90. package/src/foundation/router-waf-rate-rehearsal.d.ts +97 -0
  91. package/src/foundation/router-waf-rate-rehearsal.js +210 -0
  92. package/src/foundation/router-waf-rate-rehearsal.js.map +1 -0
  93. package/src/foundation/router-waf.d.ts +59 -9
  94. package/src/foundation/router-waf.js +427 -32
  95. package/src/foundation/router-waf.js.map +1 -1
  96. package/src/foundation/stages.d.ts +1 -0
  97. package/src/foundation/stages.js +11 -0
  98. package/src/foundation/stages.js.map +1 -1
  99. package/src/generators/formatting.d.ts +8 -0
  100. package/src/generators/formatting.js +118 -0
  101. package/src/generators/formatting.js.map +1 -0
  102. package/src/generators/function/function.js +37 -17
  103. package/src/generators/function/function.js.map +1 -1
  104. package/src/generators/post-generation-install.js +2 -2
  105. package/src/generators/post-generation-install.js.map +1 -1
  106. package/src/generators/preset/generator.js +28 -8
  107. package/src/generators/preset/generator.js.map +1 -1
  108. package/src/generators/preset/schema.d.ts +3 -0
  109. package/src/generators/preset/schema.json +5 -5
  110. package/src/generators/preset/workspace-files-developer-agent.js +15 -7
  111. package/src/generators/preset/workspace-files-developer-agent.js.map +1 -1
  112. package/src/generators/preset/workspace-files-ecr-inspector.d.ts +18 -0
  113. package/src/generators/preset/workspace-files-ecr-inspector.js +298 -0
  114. package/src/generators/preset/workspace-files-ecr-inspector.js.map +1 -0
  115. package/src/generators/preset/workspace-files-performance-cost.d.ts +2 -2
  116. package/src/generators/preset/workspace-files-performance-cost.js +8 -8
  117. package/src/generators/preset/workspace-files-performance-cost.js.map +1 -1
  118. package/src/generators/preset/workspace-files-performance-load.d.ts +1 -1
  119. package/src/generators/preset/workspace-files-performance-load.js +29 -24
  120. package/src/generators/preset/workspace-files-performance-load.js.map +1 -1
  121. package/src/generators/preset/workspace-files-stage-authority.d.ts +6 -0
  122. package/src/generators/preset/workspace-files-stage-authority.js +479 -0
  123. package/src/generators/preset/workspace-files-stage-authority.js.map +1 -0
  124. package/src/generators/preset/workspace-files-thin-deploy.d.ts +40 -0
  125. package/src/generators/preset/workspace-files-thin-deploy.js +1500 -0
  126. package/src/generators/preset/workspace-files-thin-deploy.js.map +1 -0
  127. package/src/generators/preset/workspace-files-thin-docs.d.ts +5 -0
  128. package/src/generators/preset/workspace-files-thin-docs.js +240 -0
  129. package/src/generators/preset/workspace-files-thin-docs.js.map +1 -0
  130. package/src/generators/preset/workspace-files-thin-release.d.ts +14 -0
  131. package/src/generators/preset/workspace-files-thin-release.js +26 -0
  132. package/src/generators/preset/workspace-files-thin-release.js.map +1 -0
  133. package/src/generators/preset/workspace-files.d.ts +2 -1
  134. package/src/generators/preset/workspace-files.js +448 -680
  135. package/src/generators/preset/workspace-files.js.map +1 -1
  136. package/src/generators/repository-policy/repository-policy.js +149 -19
  137. package/src/generators/repository-policy/repository-policy.js.map +1 -1
  138. package/src/generators/repository-policy/schema.d.ts +2 -0
  139. package/src/generators/repository-policy/schema.json +11 -1
  140. package/src/generators/repository-policy/tree-policy.d.ts +3 -0
  141. package/src/generators/repository-policy/tree-policy.js +25 -0
  142. package/src/generators/repository-policy/tree-policy.js.map +1 -0
  143. package/src/generators/slice/built-in-plan-api-files.js +1 -0
  144. package/src/generators/slice/built-in-plan-api-files.js.map +1 -1
  145. package/src/generators/slice/built-in-plan-async-work-files.js +41 -0
  146. package/src/generators/slice/built-in-plan-async-work-files.js.map +1 -1
  147. package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js +6 -0
  148. package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js.map +1 -1
  149. package/src/generators/slice/built-in-plan-data-export-infrastructure-files.js +5 -31
  150. package/src/generators/slice/built-in-plan-data-export-infrastructure-files.js.map +1 -1
  151. package/src/generators/slice/built-in-plan-data-files.d.ts +1 -1
  152. package/src/generators/slice/built-in-plan-data-files.js +89 -30
  153. package/src/generators/slice/built-in-plan-data-files.js.map +1 -1
  154. package/src/generators/slice/built-in-plan-data-lifecycle-runtime-files.js +19 -0
  155. package/src/generators/slice/built-in-plan-data-lifecycle-runtime-files.js.map +1 -1
  156. package/src/generators/slice/built-in-plan-data-retention-launcher-files.js +21 -3
  157. package/src/generators/slice/built-in-plan-data-retention-launcher-files.js.map +1 -1
  158. package/src/generators/slice/built-in-plan-database-retirement-rehearsal-files.js +20 -1
  159. package/src/generators/slice/built-in-plan-database-retirement-rehearsal-files.js.map +1 -1
  160. package/src/generators/slice/built-in-plan-foundation-files.js +3 -5
  161. package/src/generators/slice/built-in-plan-foundation-files.js.map +1 -1
  162. package/src/generators/slice/built-in-plan-frontend-files.js +5 -1
  163. package/src/generators/slice/built-in-plan-frontend-files.js.map +1 -1
  164. package/src/generators/slice/built-in-plan-infrastructure-files.d.ts +1 -1
  165. package/src/generators/slice/built-in-plan-infrastructure-files.js +199 -188
  166. package/src/generators/slice/built-in-plan-infrastructure-files.js.map +1 -1
  167. package/src/generators/slice/built-in-plan-metadata-files.js +13 -0
  168. package/src/generators/slice/built-in-plan-metadata-files.js.map +1 -1
  169. package/src/generators/slice/built-in-plan-native-runtime-authority-files.d.ts +2 -0
  170. package/src/generators/slice/built-in-plan-native-runtime-authority-files.js +307 -0
  171. package/src/generators/slice/built-in-plan-native-runtime-authority-files.js.map +1 -0
  172. package/src/generators/slice/built-in-plan-operations-files.js +65 -51
  173. package/src/generators/slice/built-in-plan-operations-files.js.map +1 -1
  174. package/src/generators/slice/built-in-plan-performance-files.js +97 -19
  175. package/src/generators/slice/built-in-plan-performance-files.js.map +1 -1
  176. package/src/generators/slice/built-in-plan-project-files.js +9 -68
  177. package/src/generators/slice/built-in-plan-project-files.js.map +1 -1
  178. package/src/generators/slice/built-in-plan-secret-runtime-files.d.ts +1 -1
  179. package/src/generators/slice/built-in-plan-secret-runtime-files.js +87 -76
  180. package/src/generators/slice/built-in-plan-secret-runtime-files.js.map +1 -1
  181. package/src/generators/slice/built-in-plan-testing-files.js +94 -47
  182. package/src/generators/slice/built-in-plan-testing-files.js.map +1 -1
  183. package/src/generators/slice/built-in-plan-thin-release-files.d.ts +11 -0
  184. package/src/generators/slice/built-in-plan-thin-release-files.js +129 -0
  185. package/src/generators/slice/built-in-plan-thin-release-files.js.map +1 -0
  186. package/src/generators/slice/built-in-plan-verification-files.js +6 -2
  187. package/src/generators/slice/built-in-plan-verification-files.js.map +1 -1
  188. package/src/generators/slice/built-in-plan-web-files.js +4 -2
  189. package/src/generators/slice/built-in-plan-web-files.js.map +1 -1
  190. package/src/generators/slice/built-in-plan-workload-role-files.js +26 -4
  191. package/src/generators/slice/built-in-plan-workload-role-files.js.map +1 -1
  192. package/src/generators/slice/built-in-plan.d.ts +1 -0
  193. package/src/generators/slice/built-in-plan.js +28 -11
  194. package/src/generators/slice/built-in-plan.js.map +1 -1
  195. package/src/generators/slice/slice.js +30 -32
  196. package/src/generators/slice/slice.js.map +1 -1
  197. package/src/generators/upgrade/upgrade.d.ts +1 -1
  198. package/src/generators/upgrade/upgrade.js +200 -48
  199. package/src/generators/upgrade/upgrade.js.map +1 -1
  200. package/src/generators/workload/performance-registration.d.ts +1 -0
  201. package/src/generators/workload/performance-registration.js +9 -11
  202. package/src/generators/workload/performance-registration.js.map +1 -1
  203. package/src/generators/workload/service-performance-files.d.ts +1 -0
  204. package/src/generators/workload/service-performance-files.js +27 -7
  205. package/src/generators/workload/service-performance-files.js.map +1 -1
  206. package/src/generators/workload/workload.d.ts +1 -1
  207. package/src/generators/workload/workload.js +55 -28
  208. package/src/generators/workload/workload.js.map +1 -1
  209. package/src/git-policy/github-bootstrap.d.ts +28 -7
  210. package/src/git-policy/github-bootstrap.js +205 -163
  211. package/src/git-policy/github-bootstrap.js.map +1 -1
  212. package/src/index.d.ts +1 -0
  213. package/src/index.js +1 -0
  214. package/src/index.js.map +1 -1
  215. package/src/local-dev/private-state.d.ts +3 -0
  216. package/src/local-dev/private-state.js +17 -5
  217. package/src/local-dev/private-state.js.map +1 -1
  218. package/src/local-dev/tls.js +5 -1
  219. package/src/local-dev/tls.js.map +1 -1
  220. package/src/performance/cost-collection.d.ts +1 -1
  221. package/src/performance/cost-collection.js +4 -2
  222. package/src/performance/cost-collection.js.map +1 -1
  223. package/src/performance/cost-controls.d.ts +3 -1
  224. package/src/performance/cost-controls.js +9 -4
  225. package/src/performance/cost-controls.js.map +1 -1
  226. package/src/performance/evidence.d.ts +1 -1
  227. package/src/performance/evidence.js +5 -3
  228. package/src/performance/evidence.js.map +1 -1
  229. package/src/performance/load-safety.js +5 -3
  230. package/src/performance/load-safety.js.map +1 -1
  231. package/src/performance/model.d.ts +2 -2
  232. package/src/performance/model.js +4 -3
  233. package/src/performance/model.js.map +1 -1
  234. package/src/release/index.d.ts +0 -2
  235. package/src/release/index.js +0 -2
  236. package/src/release/index.js.map +1 -1
  237. package/src/release/source-authority.d.ts +4 -5
  238. package/src/release/source-authority.js +13 -123
  239. package/src/release/source-authority.js.map +1 -1
  240. package/src/repository-policy/aurora-preflight.d.ts +1 -1
  241. package/src/repository-policy/aurora-preflight.js +4 -1
  242. package/src/repository-policy/aurora-preflight.js.map +1 -1
  243. package/src/repository-policy/policy.d.ts +21 -2
  244. package/src/repository-policy/policy.js +290 -25
  245. package/src/repository-policy/policy.js.map +1 -1
  246. package/src/schemas/performance-policy-v1.json +3 -1
  247. package/src/schemas/repository-policy-v1.json +46 -2
  248. package/src/secrets/adapters.d.ts +7 -2
  249. package/src/secrets/adapters.js +34 -3
  250. package/src/secrets/adapters.js.map +1 -1
  251. package/src/secrets/aws-control-plane.d.ts +10 -1
  252. package/src/secrets/aws-control-plane.js +67 -0
  253. package/src/secrets/aws-control-plane.js.map +1 -1
  254. package/src/secrets/generated-aws-control-plane.d.ts +23 -0
  255. package/src/secrets/generated-aws-control-plane.js +259 -0
  256. package/src/secrets/generated-aws-control-plane.js.map +1 -0
  257. package/src/secrets/metadata.js +38 -10
  258. package/src/secrets/metadata.js.map +1 -1
  259. package/src/secrets/model.d.ts +8 -1
  260. package/src/secrets/model.js +24 -3
  261. package/src/secrets/model.js.map +1 -1
  262. package/src/secrets/operator.d.ts +89 -3
  263. package/src/secrets/operator.js +422 -9
  264. package/src/secrets/operator.js.map +1 -1
  265. package/src/secrets/registry.d.ts +2 -1
  266. package/src/secrets/registry.js +18 -1
  267. package/src/secrets/registry.js.map +1 -1
  268. package/src/secrets/workload-access.js +10 -2
  269. package/src/secrets/workload-access.js.map +1 -1
  270. package/src/supply-chain/action-pins.js +61 -7
  271. package/src/supply-chain/action-pins.js.map +1 -1
  272. package/src/supply-chain/build-output-bounds.d.ts +2 -0
  273. package/src/supply-chain/build-output-bounds.js +12 -0
  274. package/src/supply-chain/build-output-bounds.js.map +1 -0
  275. package/src/supply-chain/build-output.js +2 -4
  276. package/src/supply-chain/build-output.js.map +1 -1
  277. package/src/supply-chain/ecr-scanning.d.ts +5 -3
  278. package/src/supply-chain/ecr-scanning.js +11 -7
  279. package/src/supply-chain/ecr-scanning.js.map +1 -1
  280. package/src/supply-chain/ecs-deployed-image.d.ts +5 -3
  281. package/src/supply-chain/ecs-deployed-image.js +6 -4
  282. package/src/supply-chain/ecs-deployed-image.js.map +1 -1
  283. package/src/supply-chain/generated-container-release-command.js +849 -44
  284. package/src/supply-chain/generated-container-release-command.js.map +1 -1
  285. package/src/supply-chain/generated-ecr-collector-command.d.ts +0 -1
  286. package/src/supply-chain/generated-ecr-collector-command.js +188 -91
  287. package/src/supply-chain/generated-ecr-collector-command.js.map +1 -1
  288. package/src/supply-chain/generated-files.js +4 -3
  289. package/src/supply-chain/generated-files.js.map +1 -1
  290. package/src/supply-chain/index.d.ts +1 -1
  291. package/src/supply-chain/index.js +2 -1
  292. package/src/supply-chain/index.js.map +1 -1
  293. package/src/workload-roles/index.d.ts +10 -17
  294. package/src/workload-roles/index.js +5 -18
  295. package/src/workload-roles/index.js.map +1 -1
  296. package/src/workspace-deployment/identity.d.ts +3 -0
  297. package/src/workspace-deployment/identity.js +22 -0
  298. package/src/workspace-deployment/identity.js.map +1 -0
  299. package/src/workspace-deployment/index.d.ts +3 -0
  300. package/src/workspace-deployment/index.js +7 -0
  301. package/src/workspace-deployment/index.js.map +1 -0
  302. package/src/workspace-deployment/migration-evidence.d.ts +29 -0
  303. package/src/workspace-deployment/migration-evidence.js +83 -0
  304. package/src/workspace-deployment/migration-evidence.js.map +1 -0
  305. package/src/workspace-deployment/migration.d.ts +27 -0
  306. package/src/workspace-deployment/migration.js +109 -0
  307. package/src/workspace-deployment/migration.js.map +1 -0
  308. package/src/workspace-deployment/ownership.d.ts +81 -0
  309. package/src/workspace-deployment/ownership.js +381 -0
  310. package/src/workspace-deployment/ownership.js.map +1 -0
@@ -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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"}
@@ -36,11 +36,6 @@
36
36
  "pattern": "^arn:(aws|aws-us-gov|aws-cn):iam::[0-9]{12}:role/[A-Za-z0-9+=,.@_/-]{1,512}$",
37
37
  "description": "Exact temporary-session IAM role expected for local governed deployment. This is verified against STS before mutation."
38
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."
43
- },
44
39
  "region": {
45
40
  "type": "string",
46
41
  "pattern": "^[a-z]{2}(-gov)?-[a-z]+-[0-9]$",
@@ -1,3 +1,4 @@
1
+ import type { SecretsManagerClientConfig } from '@aws-sdk/client-secrets-manager';
1
2
  import type { ExecutorContext } from '@nx/devkit';
2
3
  import { type SecretManagementScope, type SecretMetadataControlPlane, type SecretMetadataDeclaration } from '../../secrets/index.js';
3
4
  import type { SstCommandInvocation, SstLifecycleOptions } from './run-sst-command.js';
@@ -16,6 +17,7 @@ export interface SecretDeployPreflightDependencies {
16
17
  }
17
18
  export declare function resolveSecretAwsContext(options: Pick<SstLifecycleOptions, 'profile' | 'region'>, environment?: NodeJS.ProcessEnv): SecretAwsContext;
18
19
  export declare function createSecretMetadataControlPlane(context: SecretAwsContext): SecretMetadataControlPlane;
20
+ export declare function secretMetadataClientConfiguration(context: SecretAwsContext): SecretsManagerClientConfig;
19
21
  export declare function loadSliceSecretMetadata(input: {
20
22
  context: ExecutorContext;
21
23
  cwd: string;
@@ -2,12 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.resolveSecretAwsContext = resolveSecretAwsContext;
4
4
  exports.createSecretMetadataControlPlane = createSecretMetadataControlPlane;
5
+ exports.secretMetadataClientConfiguration = secretMetadataClientConfiguration;
5
6
  exports.loadSliceSecretMetadata = loadSliceSecretMetadata;
6
7
  exports.preflightSliceSecretMetadata = preflightSliceSecretMetadata;
7
8
  const credential_providers_1 = require("@aws-sdk/credential-providers");
8
9
  const promises_1 = require("node:fs/promises");
9
10
  const node_path_1 = require("node:path");
10
11
  const index_js_1 = require("../../secrets/index.js");
12
+ const identity_js_1 = require("../../aws/identity.js");
11
13
  const regionPattern = /^[a-z]{2}(?:-gov)?-[a-z]+-\d$/;
12
14
  function isRecord(value) {
13
15
  return typeof value === 'object' && value !== null && !Array.isArray(value);
@@ -46,12 +48,16 @@ function resolveSecretAwsContext(options, environment = process.env) {
46
48
  }
47
49
  function createSecretMetadataControlPlane(context) {
48
50
  return (0, index_js_1.createAwsSecretsManagerMetadataControlPlane)({
49
- clientConfiguration: {
50
- ...(context.profile
51
- ? { credentials: (0, credential_providers_1.fromIni)({ profile: context.profile }) }
52
- : {}),
53
- region: context.region,
54
- },
51
+ clientConfiguration: secretMetadataClientConfiguration(context),
52
+ });
53
+ }
54
+ function secretMetadataClientConfiguration(context) {
55
+ return Object.freeze({
56
+ ...(context.profile
57
+ ? { credentials: (0, credential_providers_1.fromIni)({ profile: context.profile }) }
58
+ : {}),
59
+ endpoint: (0, identity_js_1.canonicalAwsRegionalEndpoint)('secretsmanager', context.region),
60
+ region: context.region,
55
61
  });
56
62
  }
57
63
  async function loadSliceSecretMetadata(input) {
@@ -85,7 +91,7 @@ async function loadSliceSecretMetadata(input) {
85
91
  });
86
92
  (0, index_js_1.validateSecretManagementScope)(scope);
87
93
  return Object.freeze({
88
- declarations: (0, index_js_1.operatorSecretMetadataDeclarations)(registry),
94
+ declarations: (0, index_js_1.deployedSecretMetadataDeclarations)(registry),
89
95
  scope,
90
96
  });
91
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"secret-preflight.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/sst-lifecycle/secret-preflight.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"secret-preflight.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/sst-lifecycle/secret-preflight.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const run_sst_command_js_1 = require("../sst-lifecycle/run-sst-command.js");
4
- const executor = (options, context) => (0, run_sst_command_js_1.runSstCommand)('unlock', options, context);
3
+ const governed_native_operation_js_1 = require("../sst-lifecycle/governed-native-operation.js");
4
+ const executor = (options, context) => (0, governed_native_operation_js_1.runGovernedNativeOperation)('unlock', options, context);
5
5
  exports.default = executor;
6
6
  //# sourceMappingURL=unlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"unlock.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/unlock/unlock.ts"],"names":[],"mappings":";;AACA,4EAG6C;AAE7C,MAAM,QAAQ,GAAyC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAC1E,IAAA,kCAAa,EAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAE5C,kBAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"unlock.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/unlock/unlock.ts"],"names":[],"mappings":";;AACA,gGAA2F;AAG3F,MAAM,QAAQ,GAAyC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAC1E,IAAA,yDAA0B,EAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAEzD,kBAAe,QAAQ,CAAC"}
@@ -63,8 +63,10 @@ function provisionLogicalDatabase(foundation, options) {
63
63
  const secretBasePath = `ebk/${consumerStage}/${options.slice}/database/${options.database}`;
64
64
  const tags = {
65
65
  'ebk:database': options.database,
66
+ 'ebk:managed-by': 'empire-builder-kit',
66
67
  'ebk:management': 'generated-database-credential',
67
68
  'ebk:slice': options.slice,
69
+ 'ebk:stage': consumerStage,
68
70
  'sst:stage': consumerStage,
69
71
  };
70
72
  // Secret containers deliberately have no SecretVersion resources. Their
@@ -1 +1 @@
1
- {"version":3,"file":"provision-logical-database.js","sourceRoot":"","sources":["../../../../../packages/nx/src/foundation/provision-logical-database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provision-logical-database.js","sourceRoot":"","sources":["../../../../../packages/nx/src/foundation/provision-logical-database.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ export declare const ROUTER_WAF_RATE_RULE_NAME: "RateLimitPerIP";
2
+ export declare const ROUTER_WAF_REHEARSAL_MAX_TOTAL_HTTP_REQUESTS: 2200;
3
+ export declare const ROUTER_WAF_RATE_REHEARSAL_BASELINE_REQUESTS: 1;
4
+ export declare const ROUTER_WAF_RATE_REHEARSAL_MAX_REQUESTS: 2199;
5
+ export declare const ROUTER_WAF_RATE_REHEARSAL_MAX_CONCURRENCY: 16;
6
+ export declare const ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_REQUESTS: 40;
7
+ export declare const ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_INTERVAL_MS: 5000;
8
+ export declare const ROUTER_WAF_RATE_REHEARSAL_OBSERVATION_POLLS: 36;
9
+ export declare const ROUTER_WAF_RATE_REHEARSAL_OBSERVATION_INTERVAL_MS: 5000;
10
+ export declare const ROUTER_WAF_RATE_REHEARSAL_MAX_RATE_LIMIT: 2159;
11
+ type Sha256Digest = `sha256:${string}`;
12
+ export interface RouterWafRateObservationSample {
13
+ action: string;
14
+ markerDigest: Sha256Digest;
15
+ method: string;
16
+ ruleMetricName: string;
17
+ ruleName: string;
18
+ timestamp: Date;
19
+ uri: string;
20
+ }
21
+ export interface RouterWafRateObservationMetric {
22
+ name: string;
23
+ namespace: string;
24
+ ruleMetricName: string;
25
+ timestamp: Date;
26
+ value: number;
27
+ webAclMetricName: string;
28
+ }
29
+ export interface RouterWafRateObservationSnapshot {
30
+ metrics: RouterWafRateObservationMetric[];
31
+ samples: RouterWafRateObservationSample[];
32
+ }
33
+ export interface RouterWafRateRehearsalEvidence {
34
+ blockedAt: string;
35
+ blockedRequestStatus: 403;
36
+ blockedSequence: number;
37
+ burstRequests: number;
38
+ concurrency: typeof ROUTER_WAF_RATE_REHEARSAL_MAX_CONCURRENCY;
39
+ followUpIntervalMs: typeof ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_INTERVAL_MS;
40
+ followUpRequests: number;
41
+ maximumRequests: typeof ROUTER_WAF_RATE_REHEARSAL_MAX_REQUESTS;
42
+ metric: {
43
+ name: 'BlockedRequests';
44
+ namespace: 'AWS/WAFV2';
45
+ timestamp: string;
46
+ value: number;
47
+ webAclMetricName: string;
48
+ };
49
+ observationPolls: number;
50
+ requestsSent: number;
51
+ ruleMetricName: string;
52
+ ruleName: typeof ROUTER_WAF_RATE_RULE_NAME;
53
+ sample: {
54
+ action: 'BLOCK';
55
+ markerDigest: Sha256Digest;
56
+ method: 'GET';
57
+ timestamp: string;
58
+ uri: string;
59
+ };
60
+ upstream429Responses: number;
61
+ }
62
+ export interface RouterWafRateRehearsalDependencies {
63
+ now?: () => Date;
64
+ observe: (input: {
65
+ endTime: Date;
66
+ markerDigest: Sha256Digest;
67
+ ruleMetricName: string;
68
+ sequence: number;
69
+ startTime: Date;
70
+ webAclMetricName: string;
71
+ }) => Promise<RouterWafRateObservationSnapshot>;
72
+ request: (sequence: number) => Promise<{
73
+ markerDigest: Sha256Digest;
74
+ status: number;
75
+ }>;
76
+ sleep?: (milliseconds: number) => Promise<void>;
77
+ }
78
+ export declare function routerWafRateRuleMetricName(stage: 'development' | 'staging'): string;
79
+ export declare function routerWafWebAclMetricName(stage: 'development' | 'staging'): string;
80
+ export declare function correlateRouterWafRateObservation(input: {
81
+ endTime: Date;
82
+ markerDigest: Sha256Digest;
83
+ ruleMetricName: string;
84
+ snapshot: RouterWafRateObservationSnapshot;
85
+ startTime: Date;
86
+ webAclMetricName: string;
87
+ }): {
88
+ metric: RouterWafRateObservationMetric;
89
+ sample: RouterWafRateObservationSample;
90
+ } | null;
91
+ export declare function runRouterWafRateRehearsal(input: {
92
+ dependencies: RouterWafRateRehearsalDependencies;
93
+ rateLimitPerIp: number;
94
+ stage: 'development' | 'staging';
95
+ webAclMetricName: string;
96
+ }): Promise<RouterWafRateRehearsalEvidence>;
97
+ export {};
@@ -0,0 +1,210 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ROUTER_WAF_RATE_REHEARSAL_MAX_RATE_LIMIT = exports.ROUTER_WAF_RATE_REHEARSAL_OBSERVATION_INTERVAL_MS = exports.ROUTER_WAF_RATE_REHEARSAL_OBSERVATION_POLLS = exports.ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_INTERVAL_MS = exports.ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_REQUESTS = exports.ROUTER_WAF_RATE_REHEARSAL_MAX_CONCURRENCY = exports.ROUTER_WAF_RATE_REHEARSAL_MAX_REQUESTS = exports.ROUTER_WAF_RATE_REHEARSAL_BASELINE_REQUESTS = exports.ROUTER_WAF_REHEARSAL_MAX_TOTAL_HTTP_REQUESTS = exports.ROUTER_WAF_RATE_RULE_NAME = void 0;
4
+ exports.routerWafRateRuleMetricName = routerWafRateRuleMetricName;
5
+ exports.routerWafWebAclMetricName = routerWafWebAclMetricName;
6
+ exports.correlateRouterWafRateObservation = correlateRouterWafRateObservation;
7
+ exports.runRouterWafRateRehearsal = runRouterWafRateRehearsal;
8
+ exports.ROUTER_WAF_RATE_RULE_NAME = 'RateLimitPerIP';
9
+ exports.ROUTER_WAF_REHEARSAL_MAX_TOTAL_HTTP_REQUESTS = 2_200;
10
+ exports.ROUTER_WAF_RATE_REHEARSAL_BASELINE_REQUESTS = 1;
11
+ exports.ROUTER_WAF_RATE_REHEARSAL_MAX_REQUESTS = (exports.ROUTER_WAF_REHEARSAL_MAX_TOTAL_HTTP_REQUESTS -
12
+ exports.ROUTER_WAF_RATE_REHEARSAL_BASELINE_REQUESTS);
13
+ exports.ROUTER_WAF_RATE_REHEARSAL_MAX_CONCURRENCY = 16;
14
+ exports.ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_REQUESTS = 40;
15
+ exports.ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_INTERVAL_MS = 5_000;
16
+ exports.ROUTER_WAF_RATE_REHEARSAL_OBSERVATION_POLLS = 36;
17
+ exports.ROUTER_WAF_RATE_REHEARSAL_OBSERVATION_INTERVAL_MS = 5_000;
18
+ exports.ROUTER_WAF_RATE_REHEARSAL_MAX_RATE_LIMIT = (exports.ROUTER_WAF_RATE_REHEARSAL_MAX_REQUESTS -
19
+ exports.ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_REQUESTS);
20
+ function capitalizedStage(stage) {
21
+ return `${stage[0].toUpperCase()}${stage.slice(1)}`;
22
+ }
23
+ function routerWafRateRuleMetricName(stage) {
24
+ return `Ebk${capitalizedStage(stage)}RateLimitPerIP`;
25
+ }
26
+ function routerWafWebAclMetricName(stage) {
27
+ return `Ebk${capitalizedStage(stage)}FoundationRouterWaf`;
28
+ }
29
+ function requireDate(value, label) {
30
+ if (!Number.isFinite(value.getTime())) {
31
+ throw new Error(`${label} must be a valid timestamp.`);
32
+ }
33
+ return value;
34
+ }
35
+ function sameUtcMinute(left, right) {
36
+ return (Math.floor(left.getTime() / 60_000) === Math.floor(right.getTime() / 60_000));
37
+ }
38
+ function correlateRouterWafRateObservation(input) {
39
+ const start = requireDate(input.startTime, 'Router WAF rate window start');
40
+ const end = requireDate(input.endTime, 'Router WAF rate window end');
41
+ if (end.getTime() < start.getTime()) {
42
+ throw new Error('Router WAF rate observation window is reversed.');
43
+ }
44
+ for (const sample of input.snapshot.samples) {
45
+ const sampledAt = requireDate(sample.timestamp, 'Router WAF rate sample timestamp');
46
+ if (sample.ruleName !== exports.ROUTER_WAF_RATE_RULE_NAME ||
47
+ sample.ruleMetricName !== input.ruleMetricName ||
48
+ sample.action !== 'BLOCK' ||
49
+ sample.markerDigest !== input.markerDigest ||
50
+ sample.method !== 'GET' ||
51
+ sampledAt.getTime() < start.getTime() ||
52
+ sampledAt.getTime() > end.getTime()) {
53
+ continue;
54
+ }
55
+ const metric = input.snapshot.metrics.find((candidate) => {
56
+ const metricAt = requireDate(candidate.timestamp, 'Router WAF blocked metric timestamp');
57
+ return (candidate.namespace === 'AWS/WAFV2' &&
58
+ candidate.name === 'BlockedRequests' &&
59
+ candidate.ruleMetricName === input.ruleMetricName &&
60
+ candidate.webAclMetricName === input.webAclMetricName &&
61
+ Number.isFinite(candidate.value) &&
62
+ candidate.value > 0 &&
63
+ sameUtcMinute(sampledAt, metricAt));
64
+ });
65
+ if (metric)
66
+ return { metric, sample };
67
+ }
68
+ return null;
69
+ }
70
+ function validateRateLimit(rateLimitPerIp) {
71
+ if (!Number.isSafeInteger(rateLimitPerIp) || rateLimitPerIp < 100) {
72
+ throw new Error('Router WAF rate rehearsal requires an integer rate limit of at least 100.');
73
+ }
74
+ if (rateLimitPerIp > exports.ROUTER_WAF_RATE_REHEARSAL_MAX_RATE_LIMIT) {
75
+ throw new Error(`Router WAF rate limit ${rateLimitPerIp} exceeds the exact rehearsal-proveable maximum ${exports.ROUTER_WAF_RATE_REHEARSAL_MAX_RATE_LIMIT}.`);
76
+ }
77
+ }
78
+ function requireRequestResult(value, sequence) {
79
+ if (!Number.isSafeInteger(value.status) ||
80
+ value.status < 100 ||
81
+ value.status > 599 ||
82
+ !/^sha256:[a-f0-9]{64}$/.test(value.markerDigest)) {
83
+ throw new Error(`Router WAF rate request ${sequence} returned an invalid status or marker digest.`);
84
+ }
85
+ return value;
86
+ }
87
+ async function runBurst(input) {
88
+ let requestsSent = 0;
89
+ let upstream429Responses = 0;
90
+ for (let offset = 0; offset < input.targetRequests; offset += exports.ROUTER_WAF_RATE_REHEARSAL_MAX_CONCURRENCY) {
91
+ const batchSize = Math.min(exports.ROUTER_WAF_RATE_REHEARSAL_MAX_CONCURRENCY, input.targetRequests - offset);
92
+ const results = await Promise.all(Array.from({ length: batchSize }, (_, index) => input
93
+ .request(input.startSequence + offset + index + 1)
94
+ .then((value) => requireRequestResult(value, input.startSequence + offset + index + 1))));
95
+ requestsSent += results.length;
96
+ upstream429Responses += results.filter(({ status }) => status === 429).length;
97
+ const blockedIndex = results.findIndex(({ status }) => status === 403);
98
+ if (blockedIndex !== -1) {
99
+ return {
100
+ blockedAtSequence: input.startSequence + offset + blockedIndex + 1,
101
+ blockedMarkerDigest: results[blockedIndex]?.markerDigest ?? null,
102
+ requestsSent,
103
+ upstream429Responses,
104
+ };
105
+ }
106
+ }
107
+ return {
108
+ blockedAtSequence: null,
109
+ blockedMarkerDigest: null,
110
+ requestsSent,
111
+ upstream429Responses,
112
+ };
113
+ }
114
+ async function runRouterWafRateRehearsal(input) {
115
+ validateRateLimit(input.rateLimitPerIp);
116
+ if (!/^[A-Za-z0-9_-]{1,128}$/.test(input.webAclMetricName)) {
117
+ throw new Error('Router WAF rate rehearsal requires the exact physical Web ACL metric dimension.');
118
+ }
119
+ const now = input.dependencies.now ?? (() => new Date());
120
+ const sleep = input.dependencies.sleep ??
121
+ ((milliseconds) => new Promise((resolve) => setTimeout(resolve, milliseconds)));
122
+ const startedAt = requireDate(now(), 'Router WAF rate rehearsal start');
123
+ const burstTarget = Math.min(input.rateLimitPerIp + 160, exports.ROUTER_WAF_RATE_REHEARSAL_MAX_REQUESTS -
124
+ exports.ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_REQUESTS);
125
+ const burst = await runBurst({
126
+ request: input.dependencies.request,
127
+ startSequence: 0,
128
+ targetRequests: burstTarget,
129
+ });
130
+ let blockedAtSequence = burst.blockedAtSequence;
131
+ let blockedMarkerDigest = burst.blockedMarkerDigest;
132
+ let followUpRequests = 0;
133
+ let requestsSent = burst.requestsSent;
134
+ let upstream429Responses = burst.upstream429Responses;
135
+ while (blockedAtSequence === null &&
136
+ followUpRequests < exports.ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_REQUESTS &&
137
+ requestsSent < exports.ROUTER_WAF_RATE_REHEARSAL_MAX_REQUESTS) {
138
+ await sleep(exports.ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_INTERVAL_MS);
139
+ const result = requireRequestResult(await input.dependencies.request(requestsSent + 1), requestsSent + 1);
140
+ followUpRequests += 1;
141
+ requestsSent += 1;
142
+ if (result.status === 429)
143
+ upstream429Responses += 1;
144
+ if (result.status === 403) {
145
+ blockedAtSequence = requestsSent;
146
+ blockedMarkerDigest = result.markerDigest;
147
+ }
148
+ }
149
+ if (blockedAtSequence === null || blockedMarkerDigest === null) {
150
+ throw new Error(`Router WAF RateLimitPerIP did not return HTTP 403 within ${requestsSent}/${exports.ROUTER_WAF_RATE_REHEARSAL_MAX_REQUESTS} requests; ${upstream429Responses} upstream HTTP 429 responses were observed but are not WAF blocking evidence.`);
151
+ }
152
+ const blockedAt = requireDate(now(), 'Router WAF rate block time');
153
+ const ruleMetricName = routerWafRateRuleMetricName(input.stage);
154
+ const webAclMetricName = input.webAclMetricName;
155
+ for (let observationPolls = 1; observationPolls <= exports.ROUTER_WAF_RATE_REHEARSAL_OBSERVATION_POLLS; observationPolls += 1) {
156
+ const observedAt = requireDate(now(), 'Router WAF observation time');
157
+ const snapshot = await input.dependencies.observe({
158
+ endTime: observedAt,
159
+ markerDigest: blockedMarkerDigest,
160
+ ruleMetricName,
161
+ sequence: blockedAtSequence,
162
+ startTime: startedAt,
163
+ webAclMetricName,
164
+ });
165
+ const correlation = correlateRouterWafRateObservation({
166
+ endTime: observedAt,
167
+ markerDigest: blockedMarkerDigest,
168
+ ruleMetricName,
169
+ snapshot,
170
+ startTime: startedAt,
171
+ webAclMetricName,
172
+ });
173
+ if (correlation) {
174
+ return {
175
+ blockedAt: blockedAt.toISOString(),
176
+ blockedRequestStatus: 403,
177
+ blockedSequence: blockedAtSequence,
178
+ burstRequests: burst.requestsSent,
179
+ concurrency: exports.ROUTER_WAF_RATE_REHEARSAL_MAX_CONCURRENCY,
180
+ followUpIntervalMs: exports.ROUTER_WAF_RATE_REHEARSAL_FOLLOW_UP_INTERVAL_MS,
181
+ followUpRequests,
182
+ maximumRequests: exports.ROUTER_WAF_RATE_REHEARSAL_MAX_REQUESTS,
183
+ metric: {
184
+ name: 'BlockedRequests',
185
+ namespace: 'AWS/WAFV2',
186
+ timestamp: correlation.metric.timestamp.toISOString(),
187
+ value: correlation.metric.value,
188
+ webAclMetricName,
189
+ },
190
+ observationPolls,
191
+ requestsSent,
192
+ ruleMetricName,
193
+ ruleName: exports.ROUTER_WAF_RATE_RULE_NAME,
194
+ sample: {
195
+ action: 'BLOCK',
196
+ markerDigest: correlation.sample.markerDigest,
197
+ method: 'GET',
198
+ timestamp: correlation.sample.timestamp.toISOString(),
199
+ uri: correlation.sample.uri,
200
+ },
201
+ upstream429Responses,
202
+ };
203
+ }
204
+ if (observationPolls < exports.ROUTER_WAF_RATE_REHEARSAL_OBSERVATION_POLLS) {
205
+ await sleep(exports.ROUTER_WAF_RATE_REHEARSAL_OBSERVATION_INTERVAL_MS);
206
+ }
207
+ }
208
+ throw new Error(`Router WAF returned HTTP 403, but the exact ${exports.ROUTER_WAF_RATE_RULE_NAME} BLOCK sample and correlated AWS/WAFV2 BlockedRequests metric did not appear within the bounded observation window.`);
209
+ }
210
+ //# sourceMappingURL=router-waf-rate-rehearsal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router-waf-rate-rehearsal.js","sourceRoot":"","sources":["../../../../../packages/nx/src/foundation/router-waf-rate-rehearsal.ts"],"names":[],"mappings":"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"}