@aws/nx-plugin 1.0.0-rc.9 → 1.0.0-rc.90

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 (1592) hide show
  1. package/LICENSE-THIRD-PARTY +13999 -17963
  2. package/README.md +30 -110
  3. package/executors.json +5 -0
  4. package/generators.json +170 -10
  5. package/migrations.json +364 -0
  6. package/package.json +40 -21
  7. package/src/agentcore-gateway/__snapshots__/generator.spec.ts.snap +344 -0
  8. package/src/agentcore-gateway/agent-connection/generator.d.ts +19 -0
  9. package/src/agentcore-gateway/agent-connection/generator.js +95 -0
  10. package/src/agentcore-gateway/agent-connection/generator.js.map +1 -0
  11. package/src/agentcore-gateway/agent-connection/schema.d.js +6 -0
  12. package/src/agentcore-gateway/agent-connection/schema.d.js.map +1 -0
  13. package/src/agentcore-gateway/agent-connection/schema.d.ts +13 -0
  14. package/src/agentcore-gateway/agent-connection/schema.json +31 -0
  15. package/src/agentcore-gateway/attach-upstream.d.ts +49 -0
  16. package/src/agentcore-gateway/attach-upstream.js +59 -0
  17. package/src/agentcore-gateway/attach-upstream.js.map +1 -0
  18. package/src/agentcore-gateway/files/cedar/policies/README.md +61 -0
  19. package/src/agentcore-gateway/files/cedar/policies/permit-all.cedar +26 -0
  20. package/src/agentcore-gateway/files/project/http/local-dev.ts.template +77 -0
  21. package/src/agentcore-gateway/files/project/mcp/local-dev.ts.template +134 -0
  22. package/src/agentcore-gateway/gateway-connection/generator.d.ts +21 -0
  23. package/src/agentcore-gateway/gateway-connection/generator.js +103 -0
  24. package/src/agentcore-gateway/gateway-connection/generator.js.map +1 -0
  25. package/src/agentcore-gateway/gateway-connection/schema.d.js +6 -0
  26. package/src/agentcore-gateway/gateway-connection/schema.d.js.map +1 -0
  27. package/src/agentcore-gateway/gateway-connection/schema.d.ts +13 -0
  28. package/src/agentcore-gateway/gateway-connection/schema.json +31 -0
  29. package/src/agentcore-gateway/generator.d.ts +90 -0
  30. package/src/agentcore-gateway/generator.js +202 -0
  31. package/src/agentcore-gateway/generator.js.map +1 -0
  32. package/src/agentcore-gateway/mcp-connection/generator.d.ts +19 -0
  33. package/src/agentcore-gateway/mcp-connection/generator.js +61 -0
  34. package/src/agentcore-gateway/mcp-connection/generator.js.map +1 -0
  35. package/src/agentcore-gateway/mcp-connection/schema.d.js +6 -0
  36. package/src/agentcore-gateway/mcp-connection/schema.d.js.map +1 -0
  37. package/src/agentcore-gateway/mcp-connection/schema.d.ts +13 -0
  38. package/src/agentcore-gateway/mcp-connection/schema.json +31 -0
  39. package/src/agentcore-gateway/react-connection/__snapshots__/generator.spec.ts.snap +68 -0
  40. package/src/agentcore-gateway/react-connection/generator.d.ts +19 -0
  41. package/src/agentcore-gateway/react-connection/generator.js +119 -0
  42. package/src/agentcore-gateway/react-connection/generator.js.map +1 -0
  43. package/src/agentcore-gateway/react-connection/schema.d.js +6 -0
  44. package/src/agentcore-gateway/react-connection/schema.d.js.map +1 -0
  45. package/src/agentcore-gateway/react-connection/schema.d.ts +13 -0
  46. package/src/agentcore-gateway/react-connection/schema.json +31 -0
  47. package/src/agentcore-gateway/schema.d.js +6 -0
  48. package/src/agentcore-gateway/schema.d.js.map +1 -0
  49. package/src/agentcore-gateway/schema.d.ts +17 -0
  50. package/src/agentcore-gateway/schema.json +72 -0
  51. package/src/agentcore-harness/__snapshots__/generator.spec.ts.snap +237 -0
  52. package/src/agentcore-harness/files/project/README.md.template +82 -0
  53. package/src/agentcore-harness/files/project/scripts/chat.ts.template +99 -0
  54. package/src/agentcore-harness/files/project/src/PROMPT.md.template +16 -0
  55. package/src/agentcore-harness/generator.d.ts +62 -0
  56. package/src/agentcore-harness/generator.js +158 -0
  57. package/src/agentcore-harness/generator.js.map +1 -0
  58. package/src/agentcore-harness/schema.d.js +8 -0
  59. package/src/agentcore-harness/schema.d.js.map +1 -0
  60. package/src/agentcore-harness/schema.d.ts +17 -0
  61. package/src/agentcore-harness/schema.json +53 -0
  62. package/src/connection/agent-local-dev.d.ts +49 -0
  63. package/src/connection/agent-local-dev.js +84 -0
  64. package/src/connection/agent-local-dev.js.map +1 -0
  65. package/src/connection/agent-runtime-config.js +9 -14
  66. package/src/connection/agent-runtime-config.js.map +1 -1
  67. package/src/connection/gateway-runtime-config.d.ts +19 -0
  68. package/src/connection/gateway-runtime-config.js +47 -0
  69. package/src/connection/gateway-runtime-config.js.map +1 -0
  70. package/src/connection/generator.d.ts +4 -11
  71. package/src/connection/generator.js +172 -194
  72. package/src/connection/generator.js.map +1 -1
  73. package/src/connection/{serve-local.d.ts → local-dev.d.ts} +3 -3
  74. package/src/connection/local-dev.js +37 -0
  75. package/src/connection/local-dev.js.map +1 -0
  76. package/src/connection/scaffold-catalog.d.ts +267 -0
  77. package/src/connection/scaffold-catalog.js +347 -0
  78. package/src/connection/scaffold-catalog.js.map +1 -0
  79. package/src/connection/schema-resolver.d.ts +5 -0
  80. package/src/connection/schema-resolver.js +27 -0
  81. package/src/connection/schema-resolver.js.map +1 -0
  82. package/src/connection/schema.d.js +6 -0
  83. package/src/connection/schema.d.js.map +1 -0
  84. package/src/connection/schema.d.ts +1 -0
  85. package/src/connection/schema.json +5 -0
  86. package/src/connection/supported-connections.d.ts +116 -0
  87. package/src/connection/supported-connections.js +163 -0
  88. package/src/connection/supported-connections.js.map +1 -0
  89. package/src/index.d.ts +1 -1
  90. package/src/index.js +2 -5
  91. package/src/index.js.map +1 -1
  92. package/src/infra/app/__snapshots__/generator.spec.ts.snap +172 -87
  93. package/src/infra/app/files/app/README.md.template +22 -4
  94. package/src/infra/app/files/app/src/main.ts.template +5 -1
  95. package/src/infra/app/files/app/src/stages/application-stage.ts.template +1 -1
  96. package/src/infra/app/generator.d.ts +44 -1
  97. package/src/infra/app/generator.js +209 -128
  98. package/src/infra/app/generator.js.map +1 -1
  99. package/src/infra/app/schema.d.js +6 -0
  100. package/src/infra/app/schema.d.js.map +1 -0
  101. package/src/infra/app/schema.d.ts +1 -1
  102. package/src/infra/app/schema.json +5 -0
  103. package/src/init/generator.d.ts +31 -0
  104. package/src/init/generator.js +46 -0
  105. package/src/init/generator.js.map +1 -0
  106. package/src/init/schema.d.js +6 -0
  107. package/src/init/schema.d.js.map +1 -0
  108. package/src/init/schema.d.ts +16 -0
  109. package/src/init/schema.json +35 -0
  110. package/src/internal/test-matrix/generator.d.ts +29 -0
  111. package/src/internal/test-matrix/generator.js +729 -0
  112. package/src/internal/test-matrix/generator.js.map +1 -0
  113. package/src/internal/test-matrix/schema.d.js +6 -0
  114. package/src/internal/test-matrix/schema.d.js.map +1 -0
  115. package/src/internal/test-matrix/schema.d.ts +12 -0
  116. package/src/internal/test-matrix/schema.json +21 -0
  117. package/src/license/config-types.d.ts +2 -2
  118. package/src/license/config-types.js +5 -3
  119. package/src/license/config-types.js.map +1 -1
  120. package/src/license/config.d.ts +12 -3
  121. package/src/license/config.js +295 -242
  122. package/src/license/config.js.map +1 -1
  123. package/src/license/dependency-check/check.d.ts +2 -2
  124. package/src/license/dependency-check/check.js +51 -46
  125. package/src/license/dependency-check/check.js.map +1 -1
  126. package/src/license/dependency-check/collectors/collector.js +41 -71
  127. package/src/license/dependency-check/collectors/collector.js.map +1 -1
  128. package/src/license/dependency-check/collectors/npm-collector.js +34 -41
  129. package/src/license/dependency-check/collectors/npm-collector.js.map +1 -1
  130. package/src/license/dependency-check/collectors/python-collector.js +61 -62
  131. package/src/license/dependency-check/collectors/python-collector.js.map +1 -1
  132. package/src/license/dependency-check/evaluator.d.ts +1 -1
  133. package/src/license/dependency-check/evaluator.js +91 -74
  134. package/src/license/dependency-check/evaluator.js.map +1 -1
  135. package/src/license/dependency-check/executor.js +30 -22
  136. package/src/license/dependency-check/executor.js.map +1 -1
  137. package/src/license/dependency-check/pre-approved.d.ts +1 -1
  138. package/src/license/dependency-check/pre-approved.js +949 -336
  139. package/src/license/dependency-check/pre-approved.js.map +1 -1
  140. package/src/license/dependency-check/types.d.ts +1 -1
  141. package/src/license/dependency-check/types.js +2 -3
  142. package/src/license/dependency-check/types.js.map +1 -1
  143. package/src/license/generator.d.ts +1 -1
  144. package/src/license/generator.js +60 -77
  145. package/src/license/generator.js.map +1 -1
  146. package/src/license/index.d.ts +4 -4
  147. package/src/license/index.js +3 -9
  148. package/src/license/index.js.map +1 -1
  149. package/src/license/known-exceptions.d.ts +2 -3
  150. package/src/license/known-exceptions.js +12 -28
  151. package/src/license/known-exceptions.js.map +1 -1
  152. package/src/license/schema.d.js +6 -0
  153. package/src/license/schema.d.js.map +1 -0
  154. package/src/license/schema.d.ts +2 -0
  155. package/src/license/schema.json +5 -0
  156. package/src/license/sync/generator.js +94 -119
  157. package/src/license/sync/generator.js.map +1 -1
  158. package/src/license/sync/project-file-sync.d.ts +1 -1
  159. package/src/license/sync/project-file-sync.js +28 -35
  160. package/src/license/sync/project-file-sync.js.map +1 -1
  161. package/src/mcp-server/dev-server.d.ts +1 -0
  162. package/src/mcp-server/dev-server.js +18 -0
  163. package/src/mcp-server/dev-server.js.map +1 -0
  164. package/src/mcp-server/generator-info.d.ts +8 -3
  165. package/src/mcp-server/generator-info.js +155 -167
  166. package/src/mcp-server/generator-info.js.map +1 -1
  167. package/src/mcp-server/guide-pipeline.d.ts +1 -1
  168. package/src/mcp-server/guide-pipeline.js +199 -206
  169. package/src/mcp-server/guide-pipeline.js.map +1 -1
  170. package/src/mcp-server/guide-render.js +10 -25
  171. package/src/mcp-server/guide-render.js.map +1 -1
  172. package/src/mcp-server/index.js +6 -10
  173. package/src/mcp-server/index.js.map +1 -1
  174. package/src/mcp-server/mdx-ast.js +39 -57
  175. package/src/mcp-server/mdx-ast.js.map +1 -1
  176. package/src/mcp-server/option-filter.js +33 -47
  177. package/src/mcp-server/option-filter.js.map +1 -1
  178. package/src/mcp-server/schema-registry.d.ts +9 -3
  179. package/src/mcp-server/schema-registry.js +41 -38
  180. package/src/mcp-server/schema-registry.js.map +1 -1
  181. package/src/mcp-server/schema.d.ts +1 -1
  182. package/src/mcp-server/schema.js +9 -7
  183. package/src/mcp-server/schema.js.map +1 -1
  184. package/src/mcp-server/server.js +24 -24
  185. package/src/mcp-server/server.js.map +1 -1
  186. package/src/mcp-server/tools/add-to-existing-project.d.ts +12 -0
  187. package/src/mcp-server/tools/add-to-existing-project.js +36 -0
  188. package/src/mcp-server/tools/add-to-existing-project.js.map +1 -0
  189. package/src/mcp-server/tools/create-workspace-command.js +23 -24
  190. package/src/mcp-server/tools/create-workspace-command.js.map +1 -1
  191. package/src/mcp-server/tools/general-guidance.d.ts +2 -2
  192. package/src/mcp-server/tools/general-guidance.js +55 -32
  193. package/src/mcp-server/tools/general-guidance.js.map +1 -1
  194. package/src/mcp-server/tools/generator-guide.d.ts +1 -1
  195. package/src/mcp-server/tools/generator-guide.js +29 -37
  196. package/src/mcp-server/tools/generator-guide.js.map +1 -1
  197. package/src/mcp-server/tools/list-generators.d.ts +1 -1
  198. package/src/mcp-server/tools/list-generators.js +19 -25
  199. package/src/mcp-server/tools/list-generators.js.map +1 -1
  200. package/src/mcp-server/tools/upgrade-workspace.d.ts +11 -0
  201. package/src/mcp-server/tools/upgrade-workspace.js +32 -0
  202. package/src/mcp-server/tools/upgrade-workspace.js.map +1 -0
  203. package/src/migrations/latest/add-assemble-target/metadata.json +3 -0
  204. package/src/migrations/latest/add-assemble-target/migration.d.ts +6 -0
  205. package/src/migrations/latest/add-assemble-target/migration.js +241 -0
  206. package/src/migrations/latest/add-assemble-target/migration.js.map +1 -0
  207. package/src/migrations/latest/add-destroy-sandbox-target/metadata.json +3 -0
  208. package/src/migrations/latest/add-destroy-sandbox-target/migration.d.ts +6 -0
  209. package/src/migrations/latest/add-destroy-sandbox-target/migration.js +150 -0
  210. package/src/migrations/latest/add-destroy-sandbox-target/migration.js.map +1 -0
  211. package/src/migrations/latest/declare-cacheable-target-inputs/metadata.json +3 -0
  212. package/src/migrations/latest/declare-cacheable-target-inputs/migration.d.ts +6 -0
  213. package/src/migrations/latest/declare-cacheable-target-inputs/migration.js +94 -0
  214. package/src/migrations/latest/declare-cacheable-target-inputs/migration.js.map +1 -0
  215. package/src/migrations/latest/dev-target-depends-on-pull-image/metadata.json +3 -0
  216. package/src/migrations/latest/dev-target-depends-on-pull-image/migration.d.ts +6 -0
  217. package/src/migrations/latest/dev-target-depends-on-pull-image/migration.js +67 -0
  218. package/src/migrations/latest/dev-target-depends-on-pull-image/migration.js.map +1 -0
  219. package/src/migrations/latest/docker-target-cache-soundness/metadata.json +3 -0
  220. package/src/migrations/latest/docker-target-cache-soundness/migration.d.ts +6 -0
  221. package/src/migrations/latest/docker-target-cache-soundness/migration.js +95 -0
  222. package/src/migrations/latest/docker-target-cache-soundness/migration.js.map +1 -0
  223. package/src/migrations/latest/nx-parallel-default/metadata.json +3 -0
  224. package/src/migrations/latest/nx-parallel-default/migration.d.ts +14 -0
  225. package/src/migrations/latest/nx-parallel-default/migration.js +29 -0
  226. package/src/migrations/latest/nx-parallel-default/migration.js.map +1 -0
  227. package/src/migrations/latest/open-api-codegen-executor/metadata.json +3 -0
  228. package/src/migrations/latest/open-api-codegen-executor/migration.d.ts +6 -0
  229. package/src/migrations/latest/open-api-codegen-executor/migration.js +100 -0
  230. package/src/migrations/latest/open-api-codegen-executor/migration.js.map +1 -0
  231. package/src/migrations/latest/python-test-input-scoping/metadata.json +3 -0
  232. package/src/migrations/latest/python-test-input-scoping/migration.d.ts +6 -0
  233. package/src/migrations/latest/python-test-input-scoping/migration.js +142 -0
  234. package/src/migrations/latest/python-test-input-scoping/migration.js.map +1 -0
  235. package/src/migrations/latest/python-version-drop-exact-patch/metadata.json +3 -0
  236. package/src/migrations/latest/python-version-drop-exact-patch/migration.d.ts +6 -0
  237. package/src/migrations/latest/python-version-drop-exact-patch/migration.js +43 -0
  238. package/src/migrations/latest/python-version-drop-exact-patch/migration.js.map +1 -0
  239. package/src/migrations/latest/react-website-nx-react-express-override/metadata.json +3 -0
  240. package/src/migrations/latest/react-website-nx-react-express-override/migration.d.ts +31 -0
  241. package/src/migrations/latest/react-website-nx-react-express-override/migration.js +74 -0
  242. package/src/migrations/latest/react-website-nx-react-express-override/migration.js.map +1 -0
  243. package/src/migrations/latest/terraform-fmt-check/metadata.json +3 -0
  244. package/src/migrations/latest/terraform-fmt-check/migration.d.ts +6 -0
  245. package/src/migrations/latest/terraform-fmt-check/migration.js +165 -0
  246. package/src/migrations/latest/terraform-fmt-check/migration.js.map +1 -0
  247. package/src/migrations/latest/terraform-provider-plugin-cache/metadata.json +3 -0
  248. package/src/migrations/latest/terraform-provider-plugin-cache/migration.d.ts +6 -0
  249. package/src/migrations/latest/terraform-provider-plugin-cache/migration.js +164 -0
  250. package/src/migrations/latest/terraform-provider-plugin-cache/migration.js.map +1 -0
  251. package/src/migrations/latest/terraform-rdb-proxy-iam-connect-grant/__snapshots__/migration.spec.ts.snap +23 -0
  252. package/src/migrations/latest/terraform-rdb-proxy-iam-connect-grant/metadata.json +3 -0
  253. package/src/migrations/latest/terraform-rdb-proxy-iam-connect-grant/migration.d.ts +6 -0
  254. package/src/migrations/latest/terraform-rdb-proxy-iam-connect-grant/migration.js +88 -0
  255. package/src/migrations/latest/terraform-rdb-proxy-iam-connect-grant/migration.js.map +1 -0
  256. package/src/migrations/latest/vitest-coverage-output-dir/metadata.json +3 -0
  257. package/src/migrations/latest/vitest-coverage-output-dir/migration.d.ts +6 -0
  258. package/src/migrations/latest/vitest-coverage-output-dir/migration.js +177 -0
  259. package/src/migrations/latest/vitest-coverage-output-dir/migration.js.map +1 -0
  260. package/src/migrations/v1.0.0-rc.50/0001-modernize-function-props-cast/metadata.json +3 -0
  261. package/src/migrations/v1.0.0-rc.50/0001-modernize-function-props-cast/migration.d.ts +6 -0
  262. package/src/migrations/v1.0.0-rc.50/0001-modernize-function-props-cast/migration.js +65 -0
  263. package/src/migrations/v1.0.0-rc.50/0001-modernize-function-props-cast/migration.js.map +1 -0
  264. package/src/migrations/v1.0.0-rc.50/0002-restrict-cors-to-custom-domains/metadata.json +3 -0
  265. package/src/migrations/v1.0.0-rc.50/0002-restrict-cors-to-custom-domains/migration.d.ts +6 -0
  266. package/src/migrations/v1.0.0-rc.50/0002-restrict-cors-to-custom-domains/migration.js +108 -0
  267. package/src/migrations/v1.0.0-rc.50/0002-restrict-cors-to-custom-domains/migration.js.map +1 -0
  268. package/src/migrations/v1.0.0-rc.50/0003-terraform-bootstrap-adopt-existing-bucket/metadata.json +3 -0
  269. package/src/migrations/v1.0.0-rc.50/0003-terraform-bootstrap-adopt-existing-bucket/migration.d.ts +6 -0
  270. package/src/migrations/v1.0.0-rc.50/0003-terraform-bootstrap-adopt-existing-bucket/migration.js +128 -0
  271. package/src/migrations/v1.0.0-rc.50/0003-terraform-bootstrap-adopt-existing-bucket/migration.js.map +1 -0
  272. package/src/migrations/v1.0.0-rc.52/0001-user-identity-waf-allow-localhost-callback/metadata.json +3 -0
  273. package/src/migrations/v1.0.0-rc.52/0001-user-identity-waf-allow-localhost-callback/migration.d.ts +6 -0
  274. package/src/migrations/v1.0.0-rc.52/0001-user-identity-waf-allow-localhost-callback/migration.js +215 -0
  275. package/src/migrations/v1.0.0-rc.52/0001-user-identity-waf-allow-localhost-callback/migration.js.map +1 -0
  276. package/src/migrations/v1.0.0-rc.54/0001-order-access-log-delivery-after-bucket-policy/metadata.json +3 -0
  277. package/src/migrations/v1.0.0-rc.54/0001-order-access-log-delivery-after-bucket-policy/migration.d.ts +6 -0
  278. package/src/migrations/v1.0.0-rc.54/0001-order-access-log-delivery-after-bucket-policy/migration.js +93 -0
  279. package/src/migrations/v1.0.0-rc.54/0001-order-access-log-delivery-after-bucket-policy/migration.js.map +1 -0
  280. package/src/migrations/v1.0.0-rc.55/0001-backfill-generator-metadata/metadata.json +3 -0
  281. package/src/migrations/v1.0.0-rc.55/0001-backfill-generator-metadata/migration.d.ts +96 -0
  282. package/src/migrations/v1.0.0-rc.55/0001-backfill-generator-metadata/migration.js +670 -0
  283. package/src/migrations/v1.0.0-rc.55/0001-backfill-generator-metadata/migration.js.map +1 -0
  284. package/src/migrations/v1.0.0-rc.56/0001-dynamodb-local-remove-optimize-flag/metadata.json +3 -0
  285. package/src/migrations/v1.0.0-rc.56/0001-dynamodb-local-remove-optimize-flag/migration.d.ts +6 -0
  286. package/src/migrations/v1.0.0-rc.56/0001-dynamodb-local-remove-optimize-flag/migration.js +89 -0
  287. package/src/migrations/v1.0.0-rc.56/0001-dynamodb-local-remove-optimize-flag/migration.js.map +1 -0
  288. package/src/migrations/v1.0.0-rc.57/0001-ts-agent-session-management-support/metadata.json +3 -0
  289. package/src/migrations/v1.0.0-rc.57/0001-ts-agent-session-management-support/migration.d.ts +6 -0
  290. package/src/migrations/v1.0.0-rc.57/0001-ts-agent-session-management-support/migration.js +449 -0
  291. package/src/migrations/v1.0.0-rc.57/0001-ts-agent-session-management-support/migration.js.map +1 -0
  292. package/src/migrations/v1.0.0-rc.58/0001-smithy-ssdk-bundle-pins/metadata.json +3 -0
  293. package/src/migrations/v1.0.0-rc.58/0001-smithy-ssdk-bundle-pins/migration.d.ts +6 -0
  294. package/src/migrations/v1.0.0-rc.58/0001-smithy-ssdk-bundle-pins/migration.js +78 -0
  295. package/src/migrations/v1.0.0-rc.58/0001-smithy-ssdk-bundle-pins/migration.js.map +1 -0
  296. package/src/{smithy/project/files/build.Dockerfile.template → migrations/v1.0.0-rc.58/0001-smithy-ssdk-bundle-pins/rc57-service.Dockerfile.fixture} +1 -4
  297. package/src/migrations/v1.0.0-rc.59/0001-gateway-agent-targets/__snapshots__/migration.spec.ts.snap +223 -0
  298. package/src/migrations/v1.0.0-rc.59/0001-gateway-agent-targets/metadata.json +3 -0
  299. package/src/migrations/v1.0.0-rc.59/0001-gateway-agent-targets/migration.d.ts +6 -0
  300. package/src/migrations/v1.0.0-rc.59/0001-gateway-agent-targets/migration.js +217 -0
  301. package/src/migrations/v1.0.0-rc.59/0001-gateway-agent-targets/migration.js.map +1 -0
  302. package/src/migrations/v1.0.0-rc.60/0001-gateway-cognito-passthrough/__snapshots__/migration.spec.ts.snap +149 -0
  303. package/src/migrations/v1.0.0-rc.60/0001-gateway-cognito-passthrough/metadata.json +3 -0
  304. package/src/migrations/v1.0.0-rc.60/0001-gateway-cognito-passthrough/migration.d.ts +6 -0
  305. package/src/migrations/v1.0.0-rc.60/0001-gateway-cognito-passthrough/migration.js +195 -0
  306. package/src/migrations/v1.0.0-rc.60/0001-gateway-cognito-passthrough/migration.js.map +1 -0
  307. package/src/migrations/v1.0.0-rc.60/0002-waf-log-group-removal/__snapshots__/migration.spec.ts.snap +57 -0
  308. package/src/migrations/v1.0.0-rc.60/0002-waf-log-group-removal/metadata.json +3 -0
  309. package/src/migrations/v1.0.0-rc.60/0002-waf-log-group-removal/migration.d.ts +6 -0
  310. package/src/migrations/v1.0.0-rc.60/0002-waf-log-group-removal/migration.js +77 -0
  311. package/src/migrations/v1.0.0-rc.60/0002-waf-log-group-removal/migration.js.map +1 -0
  312. package/src/migrations/v1.0.0-rc.60/0003-strip-pip-from-python-images/__snapshots__/migration.spec.ts.snap +48 -0
  313. package/src/migrations/v1.0.0-rc.60/0003-strip-pip-from-python-images/metadata.json +3 -0
  314. package/src/migrations/v1.0.0-rc.60/0003-strip-pip-from-python-images/migration.d.ts +6 -0
  315. package/src/migrations/v1.0.0-rc.60/0003-strip-pip-from-python-images/migration.js +91 -0
  316. package/src/migrations/v1.0.0-rc.60/0003-strip-pip-from-python-images/migration.js.map +1 -0
  317. package/src/migrations/v1.0.0-rc.61/0001-py-agent-lifespan-construction/metadata.json +3 -0
  318. package/src/migrations/v1.0.0-rc.61/0001-py-agent-lifespan-construction/migration.d.ts +6 -0
  319. package/src/migrations/v1.0.0-rc.61/0001-py-agent-lifespan-construction/migration.js +412 -0
  320. package/src/migrations/v1.0.0-rc.61/0001-py-agent-lifespan-construction/migration.js.map +1 -0
  321. package/src/migrations/v1.0.0-rc.62/0001-rename-load-runtime-config-target/metadata.json +3 -0
  322. package/src/migrations/v1.0.0-rc.62/0001-rename-load-runtime-config-target/migration.d.ts +6 -0
  323. package/src/migrations/v1.0.0-rc.62/0001-rename-load-runtime-config-target/migration.js +33 -0
  324. package/src/migrations/v1.0.0-rc.62/0001-rename-load-runtime-config-target/migration.js.map +1 -0
  325. package/src/migrations/v1.0.0-rc.63/0001-add-deploy-sandbox-target/metadata.json +3 -0
  326. package/src/migrations/v1.0.0-rc.63/0001-add-deploy-sandbox-target/migration.d.ts +6 -0
  327. package/src/migrations/v1.0.0-rc.63/0001-add-deploy-sandbox-target/migration.js +83 -0
  328. package/src/migrations/v1.0.0-rc.63/0001-add-deploy-sandbox-target/migration.js.map +1 -0
  329. package/src/migrations/v1.0.0-rc.64/0001-smithy-build-without-docker/legacy-service.Dockerfile.fixture +95 -0
  330. package/src/migrations/v1.0.0-rc.64/0001-smithy-build-without-docker/metadata.json +3 -0
  331. package/src/migrations/v1.0.0-rc.64/0001-smithy-build-without-docker/migration.d.ts +6 -0
  332. package/src/migrations/v1.0.0-rc.64/0001-smithy-build-without-docker/migration.js +154 -0
  333. package/src/migrations/v1.0.0-rc.64/0001-smithy-build-without-docker/migration.js.map +1 -0
  334. package/src/migrations/v1.0.0-rc.65/0001-vite-config-import-meta-dirname/metadata.json +3 -0
  335. package/src/migrations/v1.0.0-rc.65/0001-vite-config-import-meta-dirname/migration.d.ts +6 -0
  336. package/src/migrations/v1.0.0-rc.65/0001-vite-config-import-meta-dirname/migration.js +71 -0
  337. package/src/migrations/v1.0.0-rc.65/0001-vite-config-import-meta-dirname/migration.js.map +1 -0
  338. package/src/migrations/v1.0.0-rc.65/0002-rolldown-code-splitting/metadata.json +3 -0
  339. package/src/migrations/v1.0.0-rc.65/0002-rolldown-code-splitting/migration.d.ts +6 -0
  340. package/src/migrations/v1.0.0-rc.65/0002-rolldown-code-splitting/migration.js +57 -0
  341. package/src/migrations/v1.0.0-rc.65/0002-rolldown-code-splitting/migration.js.map +1 -0
  342. package/src/migrations/v1.0.0-rc.67/0001-smithy-server-package-rename/metadata.json +3 -0
  343. package/src/migrations/v1.0.0-rc.67/0001-smithy-server-package-rename/migration.d.ts +6 -0
  344. package/src/migrations/v1.0.0-rc.67/0001-smithy-server-package-rename/migration.js +123 -0
  345. package/src/migrations/v1.0.0-rc.67/0001-smithy-server-package-rename/migration.js.map +1 -0
  346. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/build-system-prompt.ts.fixture +23 -0
  347. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/build-user-prompt.ts.fixture +96 -0
  348. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/config-path.ts.fixture +1 -0
  349. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/file-to-translate.ts.fixture +10 -0
  350. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/get-files-to-translate.ts.fixture +96 -0
  351. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/header.ts.fixture +15 -0
  352. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/log.ts.fixture +18 -0
  353. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/main-call.ts.fixture +6 -0
  354. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/main.ts.fixture +79 -0
  355. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/project-root.ts.fixture +1 -0
  356. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/run-with-concurrency.ts.fixture +57 -0
  357. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/scripts-dir.ts.fixture +1 -0
  358. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/files/translate-file-for-language.ts.fixture +61 -0
  359. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/already-migrated.grit +1 -0
  360. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/build-system-prompt.grit +6 -0
  361. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/build-user-prompt.grit +6 -0
  362. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/config-path.grit +1 -0
  363. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/file-to-translate.grit +11 -0
  364. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/get-files-to-translate.grit +7 -0
  365. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/log.grit +3 -0
  366. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/main-call.grit +1 -0
  367. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/main.grit +8 -0
  368. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/project-root.grit +1 -0
  369. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/run-with-concurrency.grit +6 -0
  370. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/grit/translate-file-for-language.grit +6 -0
  371. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/metadata.json +3 -0
  372. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/migration.d.ts +2 -0
  373. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/migration.js +103 -0
  374. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/migration.js.map +1 -0
  375. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/test-fixtures/released-script-first.ts.fixture +430 -0
  376. package/src/migrations/v1.0.0-rc.68/0001-translate-script-whole-file-writes/test-fixtures/released-script.ts.fixture +431 -0
  377. package/src/migrations/v1.0.0-rc.70/0001-py-agent-a2a-lifespan-construction/metadata.json +3 -0
  378. package/src/migrations/v1.0.0-rc.70/0001-py-agent-a2a-lifespan-construction/migration.d.ts +6 -0
  379. package/src/migrations/v1.0.0-rc.70/0001-py-agent-a2a-lifespan-construction/migration.js +246 -0
  380. package/src/migrations/v1.0.0-rc.70/0001-py-agent-a2a-lifespan-construction/migration.js.map +1 -0
  381. package/src/migrations/v1.0.0-rc.71/0001-py-agent-a2a-httpx-client-per-call/metadata.json +3 -0
  382. package/src/migrations/v1.0.0-rc.71/0001-py-agent-a2a-httpx-client-per-call/migration.d.ts +6 -0
  383. package/src/migrations/v1.0.0-rc.71/0001-py-agent-a2a-httpx-client-per-call/migration.js +329 -0
  384. package/src/migrations/v1.0.0-rc.71/0001-py-agent-a2a-httpx-client-per-call/migration.js.map +1 -0
  385. package/src/migrations/v1.0.0-rc.72/0001-py-agent-session-management-support/metadata.json +3 -0
  386. package/src/migrations/v1.0.0-rc.72/0001-py-agent-session-management-support/migration.d.ts +2 -0
  387. package/src/migrations/v1.0.0-rc.72/0001-py-agent-session-management-support/migration.js +308 -0
  388. package/src/migrations/v1.0.0-rc.72/0001-py-agent-session-management-support/migration.js.map +1 -0
  389. package/src/migrations/v1.0.0-rc.73/0001-remove-mcp-inspector-license-exceptions/metadata.json +3 -0
  390. package/{sdk/utils/ast.d.ts → src/migrations/v1.0.0-rc.73/0001-remove-mcp-inspector-license-exceptions/migration.d.ts} +2 -2
  391. package/src/migrations/v1.0.0-rc.73/0001-remove-mcp-inspector-license-exceptions/migration.js +38 -0
  392. package/src/migrations/v1.0.0-rc.73/0001-remove-mcp-inspector-license-exceptions/migration.js.map +1 -0
  393. package/src/migrations/v1.0.0-rc.73/0002-apt-security-updates-in-container-images/__snapshots__/migration.spec.ts.snap +90 -0
  394. package/src/migrations/v1.0.0-rc.73/0002-apt-security-updates-in-container-images/metadata.json +3 -0
  395. package/src/migrations/v1.0.0-rc.73/0002-apt-security-updates-in-container-images/migration.d.ts +6 -0
  396. package/src/migrations/v1.0.0-rc.73/0002-apt-security-updates-in-container-images/migration.js +90 -0
  397. package/src/migrations/v1.0.0-rc.73/0002-apt-security-updates-in-container-images/migration.js.map +1 -0
  398. package/src/migrations/v1.0.0-rc.74/0001-py-agent-session-id-middleware-extraction/metadata.json +3 -0
  399. package/src/migrations/v1.0.0-rc.74/0001-py-agent-session-id-middleware-extraction/migration.d.ts +2 -0
  400. package/src/migrations/v1.0.0-rc.74/0001-py-agent-session-id-middleware-extraction/migration.js +118 -0
  401. package/src/migrations/v1.0.0-rc.74/0001-py-agent-session-id-middleware-extraction/migration.js.map +1 -0
  402. package/src/migrations/v1.0.0-rc.75/0001-ts-agent-session-id-middleware-extraction/metadata.json +3 -0
  403. package/src/migrations/v1.0.0-rc.75/0001-ts-agent-session-id-middleware-extraction/migration.d.ts +2 -0
  404. package/src/migrations/v1.0.0-rc.75/0001-ts-agent-session-id-middleware-extraction/migration.js +136 -0
  405. package/src/migrations/v1.0.0-rc.75/0001-ts-agent-session-id-middleware-extraction/migration.js.map +1 -0
  406. package/src/migrations/v1.0.0-rc.77/0001-dynamodb-configurable-encryption/__snapshots__/migration.spec.ts.snap +429 -0
  407. package/src/migrations/v1.0.0-rc.77/0001-dynamodb-configurable-encryption/metadata.json +3 -0
  408. package/src/migrations/v1.0.0-rc.77/0001-dynamodb-configurable-encryption/migration.d.ts +6 -0
  409. package/src/migrations/v1.0.0-rc.77/0001-dynamodb-configurable-encryption/migration.js +325 -0
  410. package/src/migrations/v1.0.0-rc.77/0001-dynamodb-configurable-encryption/migration.js.map +1 -0
  411. package/src/migrations/v1.0.0-rc.77/0002-user-identity-configurable-mfa/metadata.json +3 -0
  412. package/src/migrations/v1.0.0-rc.77/0002-user-identity-configurable-mfa/migration.d.ts +6 -0
  413. package/src/migrations/v1.0.0-rc.77/0002-user-identity-configurable-mfa/migration.js +362 -0
  414. package/src/migrations/v1.0.0-rc.77/0002-user-identity-configurable-mfa/migration.js.map +1 -0
  415. package/src/migrations/v1.0.0-rc.78/0001-static-website-configurable-waf-encryption/metadata.json +3 -0
  416. package/src/migrations/v1.0.0-rc.78/0001-static-website-configurable-waf-encryption/migration.d.ts +6 -0
  417. package/src/migrations/v1.0.0-rc.78/0001-static-website-configurable-waf-encryption/migration.js +418 -0
  418. package/src/migrations/v1.0.0-rc.78/0001-static-website-configurable-waf-encryption/migration.js.map +1 -0
  419. package/src/migrations/v1.0.0-rc.79/0001-py-agent-ag-ui-hooks/metadata.json +3 -0
  420. package/src/migrations/v1.0.0-rc.79/0001-py-agent-ag-ui-hooks/migration.d.ts +6 -0
  421. package/src/migrations/v1.0.0-rc.79/0001-py-agent-ag-ui-hooks/migration.js +113 -0
  422. package/src/migrations/v1.0.0-rc.79/0001-py-agent-ag-ui-hooks/migration.js.map +1 -0
  423. package/src/migrations/v1.0.0-rc.82/0001-terraform-load-runtime-config-src-path/metadata.json +3 -0
  424. package/src/migrations/v1.0.0-rc.82/0001-terraform-load-runtime-config-src-path/migration.d.ts +6 -0
  425. package/src/migrations/v1.0.0-rc.82/0001-terraform-load-runtime-config-src-path/migration.js +48 -0
  426. package/src/migrations/v1.0.0-rc.82/0001-terraform-load-runtime-config-src-path/migration.js.map +1 -0
  427. package/src/migrations/v1.0.0-rc.82/0002-runtime-config-namespace-defaults/metadata.json +3 -0
  428. package/src/migrations/v1.0.0-rc.82/0002-runtime-config-namespace-defaults/migration.d.ts +6 -0
  429. package/src/migrations/v1.0.0-rc.82/0002-runtime-config-namespace-defaults/migration.js +131 -0
  430. package/src/migrations/v1.0.0-rc.82/0002-runtime-config-namespace-defaults/migration.js.map +1 -0
  431. package/src/migrations/v1.0.0-rc.83/0001-dynamodb-terraform-app-module-outputs/metadata.json +3 -0
  432. package/src/migrations/v1.0.0-rc.83/0001-dynamodb-terraform-app-module-outputs/migration.d.ts +6 -0
  433. package/src/migrations/v1.0.0-rc.83/0001-dynamodb-terraform-app-module-outputs/migration.js +69 -0
  434. package/src/migrations/v1.0.0-rc.83/0001-dynamodb-terraform-app-module-outputs/migration.js.map +1 -0
  435. package/src/migrations/v1.0.0-rc.83/0002-terraform-data-resource-destroy-protection/__snapshots__/migration.spec.ts.snap +75 -0
  436. package/src/migrations/v1.0.0-rc.83/0002-terraform-data-resource-destroy-protection/metadata.json +3 -0
  437. package/src/migrations/v1.0.0-rc.83/0002-terraform-data-resource-destroy-protection/migration.d.ts +6 -0
  438. package/src/migrations/v1.0.0-rc.83/0002-terraform-data-resource-destroy-protection/migration.js +78 -0
  439. package/src/migrations/v1.0.0-rc.83/0002-terraform-data-resource-destroy-protection/migration.js.map +1 -0
  440. package/src/migrations/v1.0.0-rc.83/0003-terraform-gateway-cedar-render-root-ejs/metadata.json +3 -0
  441. package/src/migrations/v1.0.0-rc.83/0003-terraform-gateway-cedar-render-root-ejs/migration.d.ts +6 -0
  442. package/src/migrations/v1.0.0-rc.83/0003-terraform-gateway-cedar-render-root-ejs/migration.js +38 -0
  443. package/src/migrations/v1.0.0-rc.83/0003-terraform-gateway-cedar-render-root-ejs/migration.js.map +1 -0
  444. package/src/migrations/v1.0.0-rc.84/0001-rdb-terraform-aurora-app-module-defaults/__snapshots__/migration.spec.ts.snap +54 -0
  445. package/src/migrations/v1.0.0-rc.84/0001-rdb-terraform-aurora-app-module-defaults/metadata.json +3 -0
  446. package/src/migrations/v1.0.0-rc.84/0001-rdb-terraform-aurora-app-module-defaults/migration.d.ts +6 -0
  447. package/src/migrations/v1.0.0-rc.84/0001-rdb-terraform-aurora-app-module-defaults/migration.js +86 -0
  448. package/src/migrations/v1.0.0-rc.84/0001-rdb-terraform-aurora-app-module-defaults/migration.js.map +1 -0
  449. package/src/migrations/v1.0.0-rc.84/0002-agentcore-harness-no-tools-by-default/__snapshots__/migration.spec.ts.snap +79 -0
  450. package/src/migrations/v1.0.0-rc.84/0002-agentcore-harness-no-tools-by-default/metadata.json +3 -0
  451. package/src/migrations/v1.0.0-rc.84/0002-agentcore-harness-no-tools-by-default/migration.d.ts +6 -0
  452. package/src/migrations/v1.0.0-rc.84/0002-agentcore-harness-no-tools-by-default/migration.js +87 -0
  453. package/src/migrations/v1.0.0-rc.84/0002-agentcore-harness-no-tools-by-default/migration.js.map +1 -0
  454. package/src/migrations/v1.0.0-rc.84/0003-terraform-declare-used-providers/metadata.json +3 -0
  455. package/src/migrations/v1.0.0-rc.84/0003-terraform-declare-used-providers/migration.d.ts +6 -0
  456. package/src/migrations/v1.0.0-rc.84/0003-terraform-declare-used-providers/migration.js +147 -0
  457. package/src/migrations/v1.0.0-rc.84/0003-terraform-declare-used-providers/migration.js.map +1 -0
  458. package/src/migrations/v1.0.0-rc.84/0004-waf-log-group-cmk-encryption/__snapshots__/migration.spec.ts.snap +286 -0
  459. package/src/migrations/v1.0.0-rc.84/0004-waf-log-group-cmk-encryption/metadata.json +3 -0
  460. package/src/migrations/v1.0.0-rc.84/0004-waf-log-group-cmk-encryption/migration.d.ts +6 -0
  461. package/src/migrations/v1.0.0-rc.84/0004-waf-log-group-cmk-encryption/migration.js +238 -0
  462. package/src/migrations/v1.0.0-rc.84/0004-waf-log-group-cmk-encryption/migration.js.map +1 -0
  463. package/src/migrations/v1.0.0-rc.84/0005-terraform-harness-vpc-role-and-memory-grant/__snapshots__/migration.spec.ts.snap +521 -0
  464. package/src/migrations/v1.0.0-rc.84/0005-terraform-harness-vpc-role-and-memory-grant/metadata.json +3 -0
  465. package/src/migrations/v1.0.0-rc.84/0005-terraform-harness-vpc-role-and-memory-grant/migration.d.ts +6 -0
  466. package/src/migrations/v1.0.0-rc.84/0005-terraform-harness-vpc-role-and-memory-grant/migration.js +504 -0
  467. package/src/migrations/v1.0.0-rc.84/0005-terraform-harness-vpc-role-and-memory-grant/migration.js.map +1 -0
  468. package/src/migrations/v1.0.0-rc.85/0001-terraform-project-checkov-target-and-bootstrap-destroy/metadata.json +3 -0
  469. package/src/migrations/v1.0.0-rc.85/0001-terraform-project-checkov-target-and-bootstrap-destroy/migration.d.ts +6 -0
  470. package/src/migrations/v1.0.0-rc.85/0001-terraform-project-checkov-target-and-bootstrap-destroy/migration.js +146 -0
  471. package/src/migrations/v1.0.0-rc.85/0001-terraform-project-checkov-target-and-bootstrap-destroy/migration.js.map +1 -0
  472. package/src/open-api/codegen/executor-schema.d.js +6 -0
  473. package/src/open-api/codegen/executor-schema.d.js.map +1 -0
  474. package/src/open-api/codegen/executor-schema.d.ts +18 -0
  475. package/src/open-api/codegen/executor-schema.json +33 -0
  476. package/src/open-api/codegen/executor.d.ts +18 -0
  477. package/src/open-api/codegen/executor.js +56 -0
  478. package/src/open-api/codegen/executor.js.map +1 -0
  479. package/src/open-api/json-metadata/generator.d.ts +24 -0
  480. package/src/open-api/json-metadata/generator.js +37 -0
  481. package/src/open-api/json-metadata/generator.js.map +1 -0
  482. package/src/open-api/json-metadata/schema.d.js +6 -0
  483. package/src/open-api/json-metadata/schema.d.js.map +1 -0
  484. package/src/open-api/json-metadata/schema.d.ts +9 -0
  485. package/src/open-api/json-metadata/schema.json +20 -0
  486. package/src/open-api/ts-client/__snapshots__/generator.additional-properties.spec.ts.snap +147 -33
  487. package/src/open-api/ts-client/__snapshots__/generator.arrays.spec.ts.snap +308 -75
  488. package/src/open-api/ts-client/__snapshots__/generator.complex-types.spec.ts.snap +298 -74
  489. package/src/open-api/ts-client/__snapshots__/generator.composite-types.spec.ts.snap +748 -103
  490. package/src/open-api/ts-client/__snapshots__/generator.content-type.spec.ts.snap +230 -37
  491. package/src/open-api/ts-client/__snapshots__/generator.duplicate-types.spec.ts.snap +249 -52
  492. package/src/open-api/ts-client/__snapshots__/generator.edge-cases.spec.ts.snap +5535 -0
  493. package/src/open-api/ts-client/__snapshots__/generator.fast-api-gaps.spec.ts.snap +736 -0
  494. package/src/open-api/ts-client/__snapshots__/generator.fast-api.spec.ts.snap +305 -71
  495. package/src/open-api/ts-client/__snapshots__/generator.multipart.spec.ts.snap +298 -0
  496. package/src/open-api/ts-client/__snapshots__/generator.primitive-types.spec.ts.snap +353 -82
  497. package/src/open-api/ts-client/__snapshots__/generator.request.spec.ts.snap +176 -55
  498. package/src/open-api/ts-client/__snapshots__/generator.reserved-keywords.spec.ts.snap +100 -24
  499. package/src/open-api/ts-client/__snapshots__/generator.response.spec.ts.snap +147 -33
  500. package/src/open-api/ts-client/__snapshots__/generator.spec-compliance.spec.ts.snap +1883 -0
  501. package/src/open-api/ts-client/__snapshots__/generator.streaming.spec.ts.snap +392 -88
  502. package/src/open-api/ts-client/__snapshots__/generator.tags.spec.ts.snap +200 -48
  503. package/src/open-api/ts-client/files/client.gen.ts.template +358 -24
  504. package/src/open-api/ts-client/files/types.gen.ts.template +6 -4
  505. package/src/open-api/ts-client/generator.d.ts +1 -1
  506. package/src/open-api/ts-client/generator.js +41 -26
  507. package/src/open-api/ts-client/generator.js.map +1 -1
  508. package/src/open-api/ts-client/schema.d.js +6 -0
  509. package/src/open-api/ts-client/schema.d.js.map +1 -0
  510. package/src/open-api/ts-hooks/files/options-proxy.gen.ts.template +7 -2
  511. package/src/open-api/ts-hooks/generator.d.ts +1 -1
  512. package/src/open-api/ts-hooks/generator.js +17 -21
  513. package/src/open-api/ts-hooks/generator.js.map +1 -1
  514. package/src/open-api/ts-hooks/generator.spec.tsx +76 -6
  515. package/src/open-api/ts-hooks/schema.d.js +6 -0
  516. package/src/open-api/ts-hooks/schema.d.js.map +1 -0
  517. package/src/open-api/ts-metadata/generator.d.ts +1 -1
  518. package/src/open-api/ts-metadata/generator.js +12 -20
  519. package/src/open-api/ts-metadata/generator.js.map +1 -1
  520. package/src/open-api/ts-metadata/schema.d.js +6 -0
  521. package/src/open-api/ts-metadata/schema.d.js.map +1 -0
  522. package/src/open-api/utils/codegen-data/languages.d.ts +1 -7
  523. package/src/open-api/utils/codegen-data/languages.js +59 -66
  524. package/src/open-api/utils/codegen-data/languages.js.map +1 -1
  525. package/src/open-api/utils/codegen-data/types.d.ts +255 -10
  526. package/src/open-api/utils/codegen-data/types.js +54 -30
  527. package/src/open-api/utils/codegen-data/types.js.map +1 -1
  528. package/src/open-api/utils/codegen-data.d.ts +4 -4
  529. package/src/open-api/utils/codegen-data.js +494 -674
  530. package/src/open-api/utils/codegen-data.js.map +1 -1
  531. package/src/open-api/utils/normalise.d.ts +1 -1
  532. package/src/open-api/utils/normalise.js +437 -246
  533. package/src/open-api/utils/normalise.js.map +1 -1
  534. package/src/open-api/utils/parse.d.ts +1 -1
  535. package/src/open-api/utils/parse.js +8 -14
  536. package/src/open-api/utils/parse.js.map +1 -1
  537. package/src/open-api/utils/parser.d.ts +55 -0
  538. package/src/open-api/utils/parser.js +787 -0
  539. package/src/open-api/utils/parser.js.map +1 -0
  540. package/src/open-api/utils/refs.d.ts +1 -1
  541. package/src/open-api/utils/refs.js +12 -22
  542. package/src/open-api/utils/refs.js.map +1 -1
  543. package/src/open-api/utils/types.d.ts +18 -0
  544. package/src/open-api/utils/types.js +5 -2
  545. package/src/open-api/utils/types.js.map +1 -1
  546. package/src/preset/__snapshots__/generator.spec.ts.snap +104 -21
  547. package/src/preset/generator.d.ts +15 -2
  548. package/src/preset/generator.js +76 -151
  549. package/src/preset/generator.js.map +1 -1
  550. package/src/preset/schema.d.js +6 -0
  551. package/src/preset/schema.d.js.map +1 -0
  552. package/src/preset/schema.d.ts +6 -3
  553. package/src/preset/schema.json +16 -5
  554. package/src/py/agent/__snapshots__/generator.constructs.spec.ts.snap +931 -0
  555. package/src/py/agent/__snapshots__/generator.core.spec.ts.snap +186 -0
  556. package/src/py/agent/__snapshots__/generator.frameworks.spec.ts.snap +771 -0
  557. package/src/py/agent/__snapshots__/generator.protocols.spec.ts.snap +1322 -0
  558. package/src/py/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +231 -0
  559. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client_strands.py.template +29 -0
  560. package/src/py/agent/a2a-connection/files/langchain/agent-connection/app/__targetAgentSnakeCase___client_langchain.py.template +29 -0
  561. package/src/py/agent/a2a-connection/generator.d.ts +25 -1
  562. package/src/py/agent/a2a-connection/generator.js +146 -95
  563. package/src/py/agent/a2a-connection/generator.js.map +1 -1
  564. package/src/py/agent/a2a-connection/schema.d.js +8 -0
  565. package/src/py/agent/a2a-connection/schema.d.js.map +1 -0
  566. package/src/py/agent/a2a-connection/schema.d.ts +2 -1
  567. package/src/py/agent/a2a-connection/schema.json +5 -0
  568. package/src/py/agent/files/deploy/Dockerfile.template +15 -1
  569. package/src/py/agent/files/langchain/a2a/main.py.template +83 -0
  570. package/src/py/agent/files/langchain/ag-ui/main.py.template +76 -0
  571. package/src/py/agent/files/langchain/common/agent.py.template +30 -0
  572. package/src/py/agent/files/langchain/common/middleware/__init__.py.template +0 -0
  573. package/src/py/agent/files/langchain/common/middleware/session_id_middleware.py.template +17 -0
  574. package/src/py/agent/files/langchain/common/session.py.template +61 -0
  575. package/src/py/agent/files/{http → langchain/http}/init.py.template +17 -25
  576. package/src/py/agent/files/langchain/http/main.py.template +69 -0
  577. package/src/py/agent/files/strands/a2a/main.py.template +61 -0
  578. package/src/py/agent/files/strands/ag-ui/main.py.template +86 -0
  579. package/src/py/agent/files/strands/common/__init__.py.template +0 -0
  580. package/src/py/agent/files/{common → strands/common}/agent.py.template +13 -2
  581. package/src/py/agent/files/strands/common/middleware/__init__.py.template +0 -0
  582. package/src/py/agent/files/strands/common/middleware/session_id_middleware.py.template +17 -0
  583. package/src/py/agent/files/strands/common/session.py.template +36 -0
  584. package/src/py/agent/files/strands/http/init.py.template +97 -0
  585. package/src/py/agent/files/{http → strands/http}/main.py.template +5 -29
  586. package/src/py/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +184 -0
  587. package/src/py/agent/gateway-connection/files/agent-connection/app/__gatewaySnakeCase___client_strands.py.template +35 -0
  588. package/src/py/agent/gateway-connection/files/langchain/agent-connection/app/__gatewaySnakeCase___client_langchain.py.template +34 -0
  589. package/src/py/agent/gateway-connection/generator.d.ts +33 -0
  590. package/src/py/agent/gateway-connection/generator.js +153 -0
  591. package/src/py/agent/gateway-connection/generator.js.map +1 -0
  592. package/src/py/agent/gateway-connection/schema.d.js +6 -0
  593. package/src/py/agent/gateway-connection/schema.d.js.map +1 -0
  594. package/src/py/agent/gateway-connection/schema.d.ts +13 -0
  595. package/src/py/agent/gateway-connection/schema.json +31 -0
  596. package/src/py/agent/generator.d.ts +165 -2
  597. package/src/py/agent/generator.js +445 -199
  598. package/src/py/agent/generator.js.map +1 -1
  599. package/src/py/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +155 -92
  600. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client_strands.py.template +31 -0
  601. package/src/py/agent/mcp-connection/files/langchain/agent-connection/app/__mcpServerSnakeCase___client_langchain.py.template +31 -0
  602. package/src/py/agent/mcp-connection/generator.d.ts +24 -1
  603. package/src/py/agent/mcp-connection/generator.js +103 -130
  604. package/src/py/agent/mcp-connection/generator.js.map +1 -1
  605. package/src/py/agent/mcp-connection/schema.d.js +8 -0
  606. package/src/py/agent/mcp-connection/schema.d.js.map +1 -0
  607. package/src/py/agent/mcp-connection/schema.d.ts +2 -1
  608. package/src/py/agent/mcp-connection/schema.json +5 -0
  609. package/src/py/agent/react-connection/__snapshots__/generator.spec.ts.snap +17 -19
  610. package/src/py/agent/react-connection/generator.d.ts +152 -3
  611. package/src/py/agent/react-connection/generator.js +114 -65
  612. package/src/py/agent/react-connection/generator.js.map +1 -1
  613. package/src/py/agent/react-connection/{serve-local.d.ts → local-dev.d.ts} +5 -5
  614. package/src/py/agent/react-connection/local-dev.js +36 -0
  615. package/src/py/agent/react-connection/local-dev.js.map +1 -0
  616. package/src/py/agent/react-connection/schema.d.js +8 -0
  617. package/src/py/agent/react-connection/schema.d.js.map +1 -0
  618. package/src/py/agent/react-connection/schema.d.ts +2 -1
  619. package/src/py/agent/react-connection/schema.json +5 -0
  620. package/src/py/agent/schema.d.js +6 -0
  621. package/src/py/agent/schema.d.js.map +1 -0
  622. package/src/py/agent/schema.d.ts +6 -2
  623. package/src/py/agent/schema.json +15 -1
  624. package/src/py/api/generator.d.ts +1 -1
  625. package/src/py/api/generator.js +12 -11
  626. package/src/py/api/generator.js.map +1 -1
  627. package/src/py/api/schema.d.js +6 -0
  628. package/src/py/api/schema.d.js.map +1 -0
  629. package/src/py/api/schema.d.ts +2 -1
  630. package/src/py/api/schema.json +5 -0
  631. package/src/py/dynamodb/__snapshots__/generator.spec.ts.snap +1592 -0
  632. package/src/py/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +63 -0
  633. package/src/py/dynamodb/agent-connection/generator.d.ts +10 -0
  634. package/src/py/dynamodb/agent-connection/generator.js +45 -0
  635. package/src/py/dynamodb/agent-connection/generator.js.map +1 -0
  636. package/src/py/dynamodb/agent-connection/schema.d.js +8 -0
  637. package/src/py/dynamodb/agent-connection/schema.d.js.map +1 -0
  638. package/src/py/dynamodb/agent-connection/schema.d.ts +15 -0
  639. package/src/py/dynamodb/agent-connection/schema.json +27 -0
  640. package/src/py/dynamodb/fast-api-connection/__snapshots__/generator.spec.ts.snap +32 -0
  641. package/src/py/dynamodb/fast-api-connection/generator.d.ts +10 -0
  642. package/src/py/dynamodb/fast-api-connection/generator.js +39 -0
  643. package/src/py/dynamodb/fast-api-connection/generator.js.map +1 -0
  644. package/src/py/dynamodb/fast-api-connection/schema.d.js +8 -0
  645. package/src/py/dynamodb/fast-api-connection/schema.d.js.map +1 -0
  646. package/src/py/dynamodb/fast-api-connection/schema.d.ts +13 -0
  647. package/src/py/dynamodb/fast-api-connection/schema.json +23 -0
  648. package/src/py/dynamodb/files/__name__/__init__.py.template +6 -0
  649. package/src/py/dynamodb/files/__name__/client.py.template +39 -0
  650. package/src/py/dynamodb/files/__name__/entities/__init__.py.template +4 -0
  651. package/src/py/dynamodb/files/__name__/entities/base.py.template +63 -0
  652. package/src/py/dynamodb/files/__name__/entities/example.py.template +64 -0
  653. package/src/py/dynamodb/files/config.json.template +24 -0
  654. package/src/py/dynamodb/generator.d.ts +39 -0
  655. package/src/py/dynamodb/generator.js +130 -0
  656. package/src/py/dynamodb/generator.js.map +1 -0
  657. package/src/py/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +63 -0
  658. package/src/py/dynamodb/mcp-server-connection/generator.d.ts +10 -0
  659. package/src/py/dynamodb/mcp-server-connection/generator.js +45 -0
  660. package/src/py/dynamodb/mcp-server-connection/generator.js.map +1 -0
  661. package/src/py/dynamodb/mcp-server-connection/schema.d.js +8 -0
  662. package/src/py/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  663. package/src/py/dynamodb/mcp-server-connection/schema.d.ts +15 -0
  664. package/src/py/dynamodb/mcp-server-connection/schema.json +27 -0
  665. package/src/py/dynamodb/schema.d.js +6 -0
  666. package/src/py/dynamodb/schema.d.js.map +1 -0
  667. package/src/py/dynamodb/schema.d.ts +16 -0
  668. package/src/py/dynamodb/schema.json +76 -0
  669. package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +240 -4693
  670. package/src/py/fast-api/__snapshots__/generator.terraform.spec.ts.snap +6661 -0
  671. package/src/py/fast-api/files/app/__name__/init.py.template +5 -22
  672. package/src/py/fast-api/files/app/__name__/main.py.template +4 -1
  673. package/src/py/fast-api/generator.d.ts +73 -1
  674. package/src/py/fast-api/generator.js +126 -92
  675. package/src/py/fast-api/generator.js.map +1 -1
  676. package/src/py/fast-api/react/__snapshots__/generator.spec.ts.snap +4 -3
  677. package/src/py/fast-api/react/generator.d.ts +17 -2
  678. package/src/py/fast-api/react/generator.js +38 -26
  679. package/src/py/fast-api/react/generator.js.map +1 -1
  680. package/src/py/fast-api/react/open-api.js +44 -33
  681. package/src/py/fast-api/react/open-api.js.map +1 -1
  682. package/src/py/fast-api/react/schema.d.js +6 -0
  683. package/src/py/fast-api/react/schema.d.js.map +1 -0
  684. package/src/py/fast-api/react/schema.d.ts +1 -0
  685. package/src/py/fast-api/react/schema.json +5 -0
  686. package/src/py/fast-api/schema.d.js +6 -0
  687. package/src/py/fast-api/schema.d.js.map +1 -0
  688. package/src/py/fast-api/schema.d.ts +2 -1
  689. package/src/py/fast-api/schema.json +6 -0
  690. package/src/py/lambda-function/__snapshots__/generator.spec.ts.snap +12 -4
  691. package/src/py/lambda-function/files/handler/__lambdaFunctionSnakeCase__.py.template +1 -1
  692. package/src/py/lambda-function/generator.d.ts +28 -1
  693. package/src/py/lambda-function/generator.js +88 -61
  694. package/src/py/lambda-function/generator.js.map +1 -1
  695. package/src/py/lambda-function/schema.d.js +6 -0
  696. package/src/py/lambda-function/schema.d.js.map +1 -0
  697. package/src/py/lambda-function/schema.d.ts +3 -2
  698. package/src/py/lambda-function/schema.json +6 -1
  699. package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +225 -21
  700. package/src/py/mcp-server/files/deploy/Dockerfile.template +15 -1
  701. package/src/py/mcp-server/generator.d.ts +69 -1
  702. package/src/py/mcp-server/generator.js +211 -137
  703. package/src/py/mcp-server/generator.js.map +1 -1
  704. package/src/py/mcp-server/schema.d.js +6 -0
  705. package/src/py/mcp-server/schema.d.js.map +1 -0
  706. package/src/py/mcp-server/schema.d.ts +2 -1
  707. package/src/py/mcp-server/schema.json +6 -0
  708. package/src/py/project/generator.d.ts +37 -2
  709. package/src/py/project/generator.js +246 -90
  710. package/src/py/project/generator.js.map +1 -1
  711. package/src/py/project/schema.d.js +6 -0
  712. package/src/py/project/schema.d.js.map +1 -0
  713. package/src/py/project/schema.d.ts +1 -0
  714. package/src/py/project/schema.json +6 -0
  715. package/src/py/rdb/__snapshots__/generator.spec.ts.snap +2113 -0
  716. package/src/py/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +123 -0
  717. package/src/py/rdb/agent-connection/generator.d.ts +10 -0
  718. package/src/py/rdb/agent-connection/generator.js +52 -0
  719. package/src/py/rdb/agent-connection/generator.js.map +1 -0
  720. package/src/py/rdb/agent-connection/schema.d.js +8 -0
  721. package/src/py/rdb/agent-connection/schema.d.js.map +1 -0
  722. package/src/py/rdb/agent-connection/schema.d.ts +15 -0
  723. package/src/py/rdb/agent-connection/schema.json +27 -0
  724. package/src/py/rdb/fast-api-connection/__snapshots__/generator.spec.ts.snap +51 -0
  725. package/src/py/rdb/fast-api-connection/files/__apiModuleName__/dependencies/__rdbNameSnake__.py.template +14 -0
  726. package/src/py/rdb/fast-api-connection/generator.d.ts +10 -0
  727. package/src/py/rdb/fast-api-connection/generator.js +56 -0
  728. package/src/py/rdb/fast-api-connection/generator.js.map +1 -0
  729. package/src/py/rdb/fast-api-connection/schema.d.js +8 -0
  730. package/src/py/rdb/fast-api-connection/schema.d.js.map +1 -0
  731. package/src/py/rdb/fast-api-connection/schema.d.ts +13 -0
  732. package/src/py/rdb/fast-api-connection/schema.json +23 -0
  733. package/src/py/rdb/files/Dockerfile.create-db-user.template +14 -0
  734. package/src/py/rdb/files/Dockerfile.migration.template +14 -0
  735. package/src/py/rdb/files/__name__/connection.py.template +55 -0
  736. package/src/py/rdb/files/__name__/create_db_user_handler.py.template +97 -0
  737. package/src/py/rdb/files/__name__/migration_handler.py.template +36 -0
  738. package/src/py/rdb/files/__name__/models/__init__.py.template +3 -0
  739. package/src/py/rdb/files/__name__/models/example.py.template +8 -0
  740. package/src/py/rdb/files/__name__/utils.py.template +120 -0
  741. package/src/py/rdb/files/alembic.ini.template +38 -0
  742. package/src/py/rdb/files/migrations/env.py.template +80 -0
  743. package/src/py/rdb/files/migrations/script.py.mako.template +28 -0
  744. package/src/py/rdb/generator.d.ts +103 -0
  745. package/src/py/rdb/generator.js +368 -0
  746. package/src/py/rdb/generator.js.map +1 -0
  747. package/src/py/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +119 -0
  748. package/src/py/rdb/mcp-server-connection/generator.d.ts +10 -0
  749. package/src/py/rdb/mcp-server-connection/generator.js +52 -0
  750. package/src/py/rdb/mcp-server-connection/generator.js.map +1 -0
  751. package/src/py/rdb/mcp-server-connection/schema.d.js +8 -0
  752. package/src/py/rdb/mcp-server-connection/schema.d.js.map +1 -0
  753. package/src/py/rdb/mcp-server-connection/schema.d.ts +15 -0
  754. package/src/py/rdb/mcp-server-connection/schema.json +27 -0
  755. package/src/py/rdb/schema.d.js +6 -0
  756. package/src/py/rdb/schema.d.js.map +1 -0
  757. package/src/py/rdb/schema.d.ts +16 -0
  758. package/src/py/rdb/schema.json +78 -0
  759. package/src/py/rdb/utils.d.ts +6 -0
  760. package/src/py/rdb/utils.js +16 -0
  761. package/src/py/rdb/utils.js.map +1 -0
  762. package/src/sdk/agentcore-gateway.d.ts +6 -0
  763. package/src/sdk/agentcore-gateway.js +7 -0
  764. package/src/sdk/agentcore-gateway.js.map +1 -0
  765. package/src/sdk/agentcore-harness.d.ts +6 -0
  766. package/src/sdk/agentcore-harness.js +7 -0
  767. package/src/sdk/agentcore-harness.js.map +1 -0
  768. package/src/sdk/connection.d.ts +6 -0
  769. package/src/sdk/connection.js +6 -0
  770. package/src/sdk/connection.js.map +1 -0
  771. package/src/sdk/license.d.ts +8 -0
  772. package/src/sdk/license.js +7 -0
  773. package/src/sdk/license.js.map +1 -0
  774. package/src/sdk/open-api.d.ts +12 -0
  775. package/src/sdk/open-api.js +9 -0
  776. package/src/sdk/open-api.js.map +1 -0
  777. package/src/sdk/py.d.ts +18 -0
  778. package/src/sdk/py.js +12 -0
  779. package/src/sdk/py.js.map +1 -0
  780. package/src/sdk/smithy.d.ts +6 -0
  781. package/src/sdk/smithy.js +7 -0
  782. package/src/sdk/smithy.js.map +1 -0
  783. package/src/sdk/terraform.d.ts +6 -0
  784. package/src/sdk/terraform.js +7 -0
  785. package/src/sdk/terraform.js.map +1 -0
  786. package/src/sdk/ts.d.ts +39 -0
  787. package/src/sdk/ts.js +41 -0
  788. package/src/sdk/ts.js.map +1 -0
  789. package/{sdk/utils/format.d.ts → src/sdk/utils/ast.d.ts} +1 -1
  790. package/src/sdk/utils/ast.js +6 -0
  791. package/src/sdk/utils/ast.js.map +1 -0
  792. package/src/sdk/utils/format.d.ts +5 -0
  793. package/src/sdk/utils/format.js +6 -0
  794. package/src/sdk/utils/format.js.map +1 -0
  795. package/{sdk → src/sdk}/utils/test.d.ts +1 -1
  796. package/src/sdk/utils/test.js +6 -0
  797. package/src/sdk/utils/test.js.map +1 -0
  798. package/src/smithy/project/__snapshots__/generator.spec.ts.snap +244 -226
  799. package/src/smithy/project/files/{smithy-build.json.template → service/smithy-build.json.template} +5 -5
  800. package/src/smithy/project/files/{src → service/src}/operations/echo.smithy.template +1 -0
  801. package/src/smithy/project/files/shapes/smithy-build.json.template +7 -0
  802. package/src/smithy/project/files/shapes/src/main.smithy.template +11 -0
  803. package/src/smithy/project/files/ssdk-bundle/ssdk.rolldown.config.mjs.template +52 -0
  804. package/src/smithy/project/generator.d.ts +91 -1
  805. package/src/smithy/project/generator.js +220 -45
  806. package/src/smithy/project/generator.js.map +1 -1
  807. package/src/smithy/project/schema.d.js +6 -0
  808. package/src/smithy/project/schema.d.js.map +1 -0
  809. package/src/smithy/project/schema.d.ts +2 -0
  810. package/src/smithy/project/schema.json +28 -1
  811. package/src/smithy/react-connection/__snapshots__/generator.spec.ts.snap +1 -1
  812. package/src/smithy/react-connection/generator.d.ts +16 -1
  813. package/src/smithy/react-connection/generator.js +54 -48
  814. package/src/smithy/react-connection/generator.js.map +1 -1
  815. package/src/smithy/react-connection/schema.d.js +6 -0
  816. package/src/smithy/react-connection/schema.d.js.map +1 -0
  817. package/src/smithy/react-connection/schema.d.ts +1 -0
  818. package/src/smithy/react-connection/schema.json +5 -0
  819. package/src/smithy/ts/api/__snapshots__/generator.spec.ts.snap +2618 -550
  820. package/src/smithy/ts/api/files/handler.ts.template +3 -3
  821. package/src/smithy/ts/api/files/local-server.ts.template +3 -3
  822. package/src/smithy/ts/api/files/operations/echo.ts.template +2 -2
  823. package/src/smithy/ts/api/files/service.ts.template +3 -3
  824. package/src/smithy/ts/api/generator.d.ts +89 -1
  825. package/src/smithy/ts/api/generator.js +185 -119
  826. package/src/smithy/ts/api/generator.js.map +1 -1
  827. package/src/smithy/ts/api/schema.d.js +6 -0
  828. package/src/smithy/ts/api/schema.d.js.map +1 -0
  829. package/src/smithy/ts/api/schema.d.ts +2 -1
  830. package/src/smithy/ts/api/schema.json +6 -0
  831. package/src/terraform/project/files/application/bootstrap/providers.tf.template +11 -0
  832. package/src/terraform/project/files/application/scripts/bootstrap-destroy.ts.template +111 -0
  833. package/src/terraform/project/files/application/scripts/bootstrap.ts.template +40 -1
  834. package/src/terraform/project/files/application/scripts/env.ts.template +11 -0
  835. package/src/terraform/project/files/application/scripts/init.ts.template +2 -1
  836. package/src/terraform/project/files/application/src/main.tf.template +6 -1
  837. package/src/terraform/project/files/application/src/providers.tf.template +9 -3
  838. package/src/terraform/project/files/checkov/checkov.yml.template +8 -0
  839. package/src/terraform/project/files/library/src/main.tf.template +9 -0
  840. package/src/terraform/project/generator.d.ts +62 -2
  841. package/src/terraform/project/generator.js +340 -117
  842. package/src/terraform/project/generator.js.map +1 -1
  843. package/src/terraform/project/schema.d.js +9 -0
  844. package/src/terraform/project/schema.d.js.map +1 -0
  845. package/src/terraform/project/schema.d.ts +1 -0
  846. package/src/terraform/project/schema.json +5 -0
  847. package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +2957 -725
  848. package/src/trpc/backend/files/src/client/index.ts.template +1 -1
  849. package/src/trpc/backend/files/src/handler.ts.template +1 -1
  850. package/src/trpc/backend/files/src/index.ts.template +5 -5
  851. package/src/trpc/backend/files/src/init.ts.template +1 -1
  852. package/src/trpc/backend/files/src/local-server.ts.template +1 -1
  853. package/src/trpc/backend/files/src/middleware/index.ts.template +7 -7
  854. package/src/trpc/backend/files/src/procedures/echo.ts.template +3 -3
  855. package/src/trpc/backend/files/src/router.ts.template +2 -2
  856. package/src/trpc/backend/files/src/schema/echo.ts.template +2 -2
  857. package/src/trpc/backend/files/src/schema/index.ts.template +1 -1
  858. package/src/trpc/backend/files-operations/scripts/generate-operations.ts.template +40 -0
  859. package/src/trpc/backend/generator.d.ts +91 -2
  860. package/src/trpc/backend/generator.js +186 -100
  861. package/src/trpc/backend/generator.js.map +1 -1
  862. package/src/trpc/backend/schema.d.js +6 -0
  863. package/src/trpc/backend/schema.d.js.map +1 -0
  864. package/src/trpc/backend/schema.d.ts +2 -1
  865. package/src/trpc/backend/schema.json +6 -0
  866. package/src/trpc/react/__snapshots__/generator.spec.ts.snap +4 -4
  867. package/src/trpc/react/files/src/components/__apiNameClassName__ClientProvider.tsx.template +3 -3
  868. package/src/trpc/react/generator.d.ts +39 -2
  869. package/src/trpc/react/generator.js +105 -63
  870. package/src/trpc/react/generator.js.map +1 -1
  871. package/src/trpc/react/schema.d.js +6 -0
  872. package/src/trpc/react/schema.d.js.map +1 -0
  873. package/src/trpc/react/schema.d.ts +1 -0
  874. package/src/trpc/react/schema.json +5 -0
  875. package/src/ts/agent/__snapshots__/generator.spec.ts.snap +1490 -31
  876. package/src/ts/agent/a2a-connection/__snapshots__/generator.spec.ts.snap +258 -0
  877. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client-strands.ts.template +23 -0
  878. package/src/ts/agent/a2a-connection/generator.d.ts +47 -1
  879. package/src/ts/agent/a2a-connection/generator.js +112 -63
  880. package/src/ts/agent/a2a-connection/generator.js.map +1 -1
  881. package/src/ts/agent/a2a-connection/schema.d.js +8 -0
  882. package/src/ts/agent/a2a-connection/schema.d.js.map +1 -0
  883. package/src/ts/agent/a2a-connection/schema.d.ts +2 -1
  884. package/src/ts/agent/a2a-connection/schema.json +5 -0
  885. package/src/ts/agent/files/a2a/index.ts.template +5 -12
  886. package/src/ts/agent/files/ag-ui/index.ts.template +29 -14
  887. package/src/ts/agent/files/common/agent.ts.template +11 -2
  888. package/src/ts/agent/files/common/session.ts.template +43 -0
  889. package/src/ts/agent/files/common-express/middleware/session-id-middleware.ts.template +16 -0
  890. package/src/ts/agent/files/deploy/Dockerfile.template +20 -2
  891. package/src/ts/agent/files/http/client.ts.template +2 -2
  892. package/src/ts/agent/files/http/index.ts.template +2 -2
  893. package/src/ts/agent/files/http/router.ts.template +5 -5
  894. package/src/ts/agent/gateway-connection/__snapshots__/generator.spec.ts.snap +222 -0
  895. package/src/ts/agent/gateway-connection/files/agent-connection/app/__gatewayKebabCase__-client-strands.ts.template +30 -0
  896. package/src/ts/agent/gateway-connection/generator.d.ts +47 -0
  897. package/src/ts/agent/gateway-connection/generator.js +144 -0
  898. package/src/ts/agent/gateway-connection/generator.js.map +1 -0
  899. package/src/ts/agent/gateway-connection/schema.d.js +6 -0
  900. package/src/ts/agent/gateway-connection/schema.d.js.map +1 -0
  901. package/src/ts/agent/gateway-connection/schema.d.ts +13 -0
  902. package/src/ts/agent/gateway-connection/schema.json +31 -0
  903. package/src/ts/agent/generator.d.ts +206 -1
  904. package/src/ts/agent/generator.js +342 -159
  905. package/src/ts/agent/generator.js.map +1 -1
  906. package/src/ts/agent/mcp-connection/__snapshots__/generator.spec.ts.snap +194 -114
  907. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client-strands.ts.template +23 -0
  908. package/src/ts/agent/mcp-connection/generator.d.ts +38 -1
  909. package/src/ts/agent/mcp-connection/generator.js +88 -65
  910. package/src/ts/agent/mcp-connection/generator.js.map +1 -1
  911. package/src/ts/agent/mcp-connection/schema.d.js +8 -0
  912. package/src/ts/agent/mcp-connection/schema.d.js.map +1 -0
  913. package/src/ts/agent/mcp-connection/schema.d.ts +2 -1
  914. package/src/ts/agent/mcp-connection/schema.json +5 -0
  915. package/src/ts/agent/react-connection/__snapshots__/generator.spec.ts.snap +8 -4
  916. package/src/ts/agent/react-connection/files/src/components/__agentNameClassName__AgentClientProvider.tsx.template +2 -1
  917. package/src/ts/agent/react-connection/generator.d.ts +204 -3
  918. package/src/ts/agent/react-connection/generator.js +158 -99
  919. package/src/ts/agent/react-connection/generator.js.map +1 -1
  920. package/src/ts/agent/react-connection/local-dev.d.ts +13 -0
  921. package/src/ts/agent/react-connection/local-dev.js +17 -0
  922. package/src/ts/agent/react-connection/local-dev.js.map +1 -0
  923. package/src/ts/agent/react-connection/schema.d.js +8 -0
  924. package/src/ts/agent/react-connection/schema.d.js.map +1 -0
  925. package/src/ts/agent/react-connection/schema.d.ts +2 -1
  926. package/src/ts/agent/react-connection/schema.json +5 -0
  927. package/src/ts/agent/schema.d.js +6 -0
  928. package/src/ts/agent/schema.d.js.map +1 -0
  929. package/src/ts/agent/schema.d.ts +5 -1
  930. package/src/ts/agent/schema.json +14 -0
  931. package/src/ts/api/generator.d.ts +1 -1
  932. package/src/ts/api/generator.js +16 -16
  933. package/src/ts/api/generator.js.map +1 -1
  934. package/src/ts/api/schema.d.js +6 -0
  935. package/src/ts/api/schema.d.js.map +1 -0
  936. package/src/ts/api/schema.d.ts +2 -1
  937. package/src/ts/api/schema.json +5 -0
  938. package/src/ts/astro-docs/__snapshots__/generator.spec.ts.snap +22 -8
  939. package/src/ts/astro-docs/files/base/src/content/docs/en/index.mdx.template +2 -2
  940. package/src/ts/astro-docs/files/base/src/content.config.ts.template +4 -4
  941. package/src/ts/astro-docs/files/translation/scripts/translate.ts.template +272 -150
  942. package/src/ts/astro-docs/generator.d.ts +41 -1
  943. package/src/ts/astro-docs/generator.js +133 -59
  944. package/src/ts/astro-docs/generator.js.map +1 -1
  945. package/src/ts/astro-docs/schema.d.js +6 -0
  946. package/src/ts/astro-docs/schema.d.js.map +1 -0
  947. package/src/ts/astro-docs/schema.d.ts +2 -2
  948. package/src/ts/astro-docs/schema.json +3 -3
  949. package/src/ts/dcr-proxy/__snapshots__/generator.spec.ts.snap +986 -0
  950. package/src/ts/dcr-proxy/generator.d.ts +34 -0
  951. package/src/ts/dcr-proxy/generator.js +115 -0
  952. package/src/ts/dcr-proxy/generator.js.map +1 -0
  953. package/src/ts/dcr-proxy/schema.d.js +6 -0
  954. package/src/ts/dcr-proxy/schema.d.js.map +1 -0
  955. package/src/ts/dcr-proxy/schema.d.ts +13 -0
  956. package/src/ts/dcr-proxy/schema.json +44 -0
  957. package/src/ts/docs/generator.d.ts +1 -1
  958. package/src/ts/docs/generator.js +10 -10
  959. package/src/ts/docs/generator.js.map +1 -1
  960. package/src/ts/docs/schema.d.js +6 -0
  961. package/src/ts/docs/schema.d.js.map +1 -0
  962. package/src/ts/docs/schema.d.ts +1 -4
  963. package/src/ts/docs/schema.json +3 -3
  964. package/src/ts/dynamodb/__snapshots__/generator.spec.ts.snap +481 -527
  965. package/src/ts/dynamodb/agent-connection/__snapshots__/generator.spec.ts.snap +23 -5
  966. package/src/ts/dynamodb/agent-connection/generator.d.ts +1 -1
  967. package/src/ts/dynamodb/agent-connection/generator.js +27 -23
  968. package/src/ts/dynamodb/agent-connection/generator.js.map +1 -1
  969. package/src/ts/dynamodb/agent-connection/schema.d.js +8 -0
  970. package/src/ts/dynamodb/agent-connection/schema.d.js.map +1 -0
  971. package/src/ts/dynamodb/agent-connection/schema.d.ts +2 -1
  972. package/src/ts/dynamodb/agent-connection/schema.json +5 -0
  973. package/src/ts/dynamodb/files/config.json.template +24 -0
  974. package/src/ts/dynamodb/files/src/client.ts.template +30 -11
  975. package/src/ts/dynamodb/files/src/entities/example.ts.template +1 -1
  976. package/src/ts/dynamodb/files/src/entities/index.ts.template +1 -1
  977. package/src/ts/dynamodb/files/src/index.ts.template +2 -11
  978. package/src/ts/dynamodb/generator.d.ts +42 -1
  979. package/src/ts/dynamodb/generator.js +110 -64
  980. package/src/ts/dynamodb/generator.js.map +1 -1
  981. package/src/ts/dynamodb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +23 -5
  982. package/src/ts/dynamodb/mcp-server-connection/generator.d.ts +1 -1
  983. package/src/ts/dynamodb/mcp-server-connection/generator.js +27 -23
  984. package/src/ts/dynamodb/mcp-server-connection/generator.js.map +1 -1
  985. package/src/ts/dynamodb/mcp-server-connection/schema.d.js +8 -0
  986. package/src/ts/dynamodb/mcp-server-connection/schema.d.js.map +1 -0
  987. package/src/ts/dynamodb/mcp-server-connection/schema.d.ts +2 -1
  988. package/src/ts/dynamodb/mcp-server-connection/schema.json +5 -0
  989. package/src/ts/dynamodb/schema.d.js +6 -0
  990. package/src/ts/dynamodb/schema.d.js.map +1 -0
  991. package/src/ts/dynamodb/schema.d.ts +3 -1
  992. package/src/ts/dynamodb/schema.json +26 -2
  993. package/src/ts/dynamodb/smithy-connection/__snapshots__/generator.spec.ts.snap +12 -3
  994. package/src/ts/dynamodb/smithy-connection/generator.d.ts +1 -1
  995. package/src/ts/dynamodb/smithy-connection/generator.js +22 -22
  996. package/src/ts/dynamodb/smithy-connection/generator.js.map +1 -1
  997. package/src/ts/dynamodb/smithy-connection/schema.d.js +8 -0
  998. package/src/ts/dynamodb/smithy-connection/schema.d.js.map +1 -0
  999. package/src/ts/dynamodb/smithy-connection/schema.d.ts +1 -0
  1000. package/src/ts/dynamodb/smithy-connection/schema.json +5 -0
  1001. package/src/ts/dynamodb/trpc-connection/__snapshots__/generator.spec.ts.snap +12 -3
  1002. package/src/ts/dynamodb/trpc-connection/generator.d.ts +1 -1
  1003. package/src/ts/dynamodb/trpc-connection/generator.js +22 -22
  1004. package/src/ts/dynamodb/trpc-connection/generator.js.map +1 -1
  1005. package/src/ts/dynamodb/trpc-connection/schema.d.js +8 -0
  1006. package/src/ts/dynamodb/trpc-connection/schema.d.js.map +1 -0
  1007. package/src/ts/dynamodb/trpc-connection/schema.d.ts +1 -0
  1008. package/src/ts/dynamodb/trpc-connection/schema.json +5 -0
  1009. package/src/ts/lambda-function/__snapshots__/generator.spec.ts.snap +19 -9
  1010. package/src/ts/lambda-function/files/handler/__lambdaFunctionKebabCase__.ts.template +2 -1
  1011. package/src/ts/lambda-function/generator.d.ts +39 -1
  1012. package/src/ts/lambda-function/generator.js +98 -65
  1013. package/src/ts/lambda-function/generator.js.map +1 -1
  1014. package/src/ts/lambda-function/io.js +83 -52
  1015. package/src/ts/lambda-function/io.js.map +1 -1
  1016. package/src/ts/lambda-function/schema.d.js +6 -0
  1017. package/src/ts/lambda-function/schema.d.js.map +1 -0
  1018. package/src/ts/lambda-function/schema.d.ts +2 -1
  1019. package/src/ts/lambda-function/schema.json +5 -0
  1020. package/src/ts/lib/__snapshots__/generator.spec.ts.snap +83 -36
  1021. package/src/ts/lib/__snapshots__/vitest.spec.ts.snap +2 -2
  1022. package/src/ts/lib/biome.d.ts +1 -1
  1023. package/src/ts/lib/biome.js +71 -38
  1024. package/src/ts/lib/biome.js.map +1 -1
  1025. package/src/ts/lib/generator.d.ts +24 -1
  1026. package/src/ts/lib/generator.js +128 -94
  1027. package/src/ts/lib/generator.js.map +1 -1
  1028. package/src/ts/lib/grit/vitest-pass-with-no-tests.grit +1 -4
  1029. package/src/ts/lib/schema.d.js +6 -0
  1030. package/src/ts/lib/schema.d.js.map +1 -0
  1031. package/src/ts/lib/schema.d.ts +1 -1
  1032. package/src/ts/lib/schema.json +5 -0
  1033. package/src/ts/lib/ts-project-utils.d.ts +4 -2
  1034. package/src/ts/lib/ts-project-utils.js +85 -74
  1035. package/src/ts/lib/ts-project-utils.js.map +1 -1
  1036. package/src/ts/lib/types.d.ts +6 -0
  1037. package/src/ts/lib/types.js +5 -2
  1038. package/src/ts/lib/types.js.map +1 -1
  1039. package/src/ts/lib/vitest.d.ts +22 -2
  1040. package/src/ts/lib/vitest.js +83 -26
  1041. package/src/ts/lib/vitest.js.map +1 -1
  1042. package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +225 -44
  1043. package/src/ts/mcp-server/files/Dockerfile.template +20 -2
  1044. package/src/ts/mcp-server/generator.d.ts +111 -1
  1045. package/src/ts/mcp-server/generator.js +234 -168
  1046. package/src/ts/mcp-server/generator.js.map +1 -1
  1047. package/src/ts/mcp-server/schema.d.js +6 -0
  1048. package/src/ts/mcp-server/schema.d.js.map +1 -0
  1049. package/src/ts/mcp-server/schema.d.ts +2 -1
  1050. package/src/ts/mcp-server/schema.json +6 -0
  1051. package/src/ts/nx-generator/__snapshots__/generator.spec.ts.snap +28 -13
  1052. package/src/ts/nx-generator/files/common/schema.d.ts.template +1 -0
  1053. package/src/ts/nx-generator/files/common/schema.json.template +5 -0
  1054. package/src/ts/nx-generator/files/local/generator.spec.ts.template +1 -1
  1055. package/src/ts/nx-generator/files/local/generator.ts.template +3 -3
  1056. package/src/ts/nx-generator/files/nx-plugin-for-aws/generator/generator.ts.template +6 -7
  1057. package/src/ts/nx-generator/generator.d.ts +3 -0
  1058. package/src/ts/nx-generator/generator.js +122 -75
  1059. package/src/ts/nx-generator/generator.js.map +1 -1
  1060. package/src/ts/nx-generator/schema.d.js +6 -0
  1061. package/src/ts/nx-generator/schema.d.js.map +1 -0
  1062. package/src/ts/nx-generator/schema.d.ts +1 -0
  1063. package/src/ts/nx-generator/schema.json +5 -0
  1064. package/src/ts/nx-migration/files/migration.spec.ts.template +26 -0
  1065. package/src/ts/nx-migration/files/migration.ts.template +65 -0
  1066. package/src/ts/nx-migration/files/prompt.md.template +46 -0
  1067. package/src/ts/nx-migration/generator.d.ts +27 -0
  1068. package/src/ts/nx-migration/generator.js +147 -0
  1069. package/src/ts/nx-migration/generator.js.map +1 -0
  1070. package/src/ts/nx-migration/schema.d.js +6 -0
  1071. package/src/ts/nx-migration/schema.d.js.map +1 -0
  1072. package/src/ts/nx-migration/schema.d.ts +13 -0
  1073. package/src/ts/nx-migration/schema.json +63 -0
  1074. package/src/ts/nx-plugin/__snapshots__/generator.spec.ts.snap +36 -25
  1075. package/src/ts/nx-plugin/files/mcp-server/resources/GENERAL_GUIDANCE.md.template +5 -6
  1076. package/src/ts/nx-plugin/files/mcp-server/server.ts.template +5 -5
  1077. package/src/ts/nx-plugin/files/mcp-server/tools/create-workspace-command.ts.template +2 -2
  1078. package/src/ts/nx-plugin/files/mcp-server/tools/general-guidance.ts.template +1 -1
  1079. package/src/ts/nx-plugin/files/mcp-server/tools/generator-guide.ts.template +2 -2
  1080. package/src/ts/nx-plugin/files/mcp-server/tools/list-generators.ts.template +2 -2
  1081. package/src/ts/nx-plugin/files/mcp-server/utils.ts.template +4 -4
  1082. package/src/ts/nx-plugin/generator.d.ts +4 -1
  1083. package/src/ts/nx-plugin/generator.js +64 -48
  1084. package/src/ts/nx-plugin/generator.js.map +1 -1
  1085. package/src/ts/nx-plugin/schema.d.js +9 -0
  1086. package/src/ts/nx-plugin/schema.d.js.map +1 -0
  1087. package/src/ts/nx-plugin/schema.json +5 -0
  1088. package/src/ts/nx-plugin/utils.d.ts +27 -2
  1089. package/src/ts/nx-plugin/utils.js +66 -57
  1090. package/src/ts/nx-plugin/utils.js.map +1 -1
  1091. package/src/ts/rdb/__snapshots__/generator.spec.ts.snap +711 -877
  1092. package/src/ts/rdb/agent-connection/__snapshots__/generator.spec.ts.snap +16 -6
  1093. package/src/ts/rdb/agent-connection/generator.d.ts +1 -1
  1094. package/src/ts/rdb/agent-connection/generator.js +44 -39
  1095. package/src/ts/rdb/agent-connection/generator.js.map +1 -1
  1096. package/src/ts/rdb/agent-connection/schema.d.js +8 -0
  1097. package/src/ts/rdb/agent-connection/schema.d.js.map +1 -0
  1098. package/src/ts/rdb/agent-connection/schema.d.ts +2 -1
  1099. package/src/ts/rdb/agent-connection/schema.json +5 -0
  1100. package/src/ts/rdb/files/Dockerfile.template +19 -1
  1101. package/src/ts/rdb/files/prisma.config.ts.template +6 -5
  1102. package/src/ts/rdb/files/src/create-db-user-handler.ts.template +9 -11
  1103. package/src/ts/rdb/files/src/migration-handler.ts.template +5 -30
  1104. package/src/ts/rdb/files/src/prisma.ts.template +33 -25
  1105. package/src/ts/rdb/files/src/utils.ts.template +31 -1
  1106. package/src/ts/rdb/generator.d.ts +118 -5
  1107. package/src/ts/rdb/generator.js +272 -127
  1108. package/src/ts/rdb/generator.js.map +1 -1
  1109. package/src/ts/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +16 -6
  1110. package/src/ts/rdb/mcp-server-connection/generator.d.ts +1 -1
  1111. package/src/ts/rdb/mcp-server-connection/generator.js +42 -37
  1112. package/src/ts/rdb/mcp-server-connection/generator.js.map +1 -1
  1113. package/src/ts/rdb/mcp-server-connection/schema.d.js +8 -0
  1114. package/src/ts/rdb/mcp-server-connection/schema.d.js.map +1 -0
  1115. package/src/ts/rdb/mcp-server-connection/schema.d.ts +2 -1
  1116. package/src/ts/rdb/mcp-server-connection/schema.json +5 -0
  1117. package/src/ts/rdb/schema.d.js +6 -0
  1118. package/src/ts/rdb/schema.d.js.map +1 -0
  1119. package/src/ts/rdb/schema.d.ts +2 -1
  1120. package/src/ts/rdb/schema.json +7 -1
  1121. package/src/ts/rdb/smithy-connection/__snapshots__/generator.spec.ts.snap +18 -9
  1122. package/src/ts/rdb/smithy-connection/generator.d.ts +1 -1
  1123. package/src/ts/rdb/smithy-connection/generator.js +48 -43
  1124. package/src/ts/rdb/smithy-connection/generator.js.map +1 -1
  1125. package/src/ts/rdb/smithy-connection/schema.d.js +8 -0
  1126. package/src/ts/rdb/smithy-connection/schema.d.js.map +1 -0
  1127. package/src/ts/rdb/smithy-connection/schema.d.ts +1 -0
  1128. package/src/ts/rdb/smithy-connection/schema.json +5 -0
  1129. package/src/ts/rdb/trpc-connection/__snapshots__/generator.spec.ts.snap +12 -3
  1130. package/src/ts/rdb/trpc-connection/generator.d.ts +1 -1
  1131. package/src/ts/rdb/trpc-connection/generator.js +37 -31
  1132. package/src/ts/rdb/trpc-connection/generator.js.map +1 -1
  1133. package/src/ts/rdb/trpc-connection/schema.d.js +8 -0
  1134. package/src/ts/rdb/trpc-connection/schema.d.js.map +1 -0
  1135. package/src/ts/rdb/trpc-connection/schema.d.ts +1 -0
  1136. package/src/ts/rdb/trpc-connection/schema.json +5 -0
  1137. package/src/ts/rdb/utils.js +9 -11
  1138. package/src/ts/rdb/utils.js.map +1 -1
  1139. package/src/ts/react-website/agui/files/common/src/hooks/useAgui__agentNameClassName__.tsx.template +17 -16
  1140. package/src/ts/react-website/agui/generator.d.ts +97 -0
  1141. package/src/ts/react-website/agui/generator.js +114 -67
  1142. package/src/ts/react-website/agui/generator.js.map +1 -1
  1143. package/src/ts/react-website/app/__snapshots__/generator.spec.ts.snap +1705 -717
  1144. package/src/ts/react-website/app/files/app/common/README.md.template +1 -1
  1145. package/src/ts/react-website/app/generator.d.ts +146 -3
  1146. package/src/ts/react-website/app/generator.js +363 -209
  1147. package/src/ts/react-website/app/generator.js.map +1 -1
  1148. package/src/ts/react-website/app/schema.d.js +6 -0
  1149. package/src/ts/react-website/app/schema.d.js.map +1 -0
  1150. package/src/ts/react-website/app/schema.d.ts +3 -3
  1151. package/src/ts/react-website/app/schema.json +12 -6
  1152. package/src/ts/react-website/cognito-auth/__snapshots__/generator.spec.ts.snap +225 -31
  1153. package/src/ts/react-website/cognito-auth/__snapshots__/generator.terraform.spec.ts.snap +78 -12
  1154. package/src/ts/react-website/cognito-auth/files/app/components/CognitoAuth/index.tsx.template +2 -2
  1155. package/src/ts/react-website/cognito-auth/generator.d.ts +26 -2
  1156. package/src/ts/react-website/cognito-auth/generator.js +79 -61
  1157. package/src/ts/react-website/cognito-auth/generator.js.map +1 -1
  1158. package/src/ts/react-website/cognito-auth/schema.d.js +6 -0
  1159. package/src/ts/react-website/cognito-auth/schema.d.js.map +1 -0
  1160. package/src/ts/react-website/cognito-auth/schema.d.ts +2 -1
  1161. package/src/ts/react-website/cognito-auth/schema.json +5 -0
  1162. package/src/ts/react-website/cognito-auth/utils.js +34 -32
  1163. package/src/ts/react-website/cognito-auth/utils.js.map +1 -1
  1164. package/src/ts/react-website/runtime-config/__snapshots__/generator.spec.ts.snap +2 -2
  1165. package/src/ts/react-website/runtime-config/files/app/components/RuntimeConfig/index.tsx.template +2 -2
  1166. package/src/ts/react-website/runtime-config/generator.d.ts +1 -1
  1167. package/src/ts/react-website/runtime-config/generator.js +29 -31
  1168. package/src/ts/react-website/runtime-config/generator.js.map +1 -1
  1169. package/src/ts/react-website/runtime-config/schema.d.js +6 -0
  1170. package/src/ts/react-website/runtime-config/schema.d.js.map +1 -0
  1171. package/src/ts/react-website/runtime-config/schema.d.ts +1 -0
  1172. package/src/ts/react-website/runtime-config/schema.json +5 -0
  1173. package/src/ts/sync/generator.d.ts +1 -1
  1174. package/src/ts/sync/generator.js +154 -60
  1175. package/src/ts/sync/generator.js.map +1 -1
  1176. package/src/ts/website/app/generator.d.ts +1 -1
  1177. package/src/ts/website/app/generator.js +10 -10
  1178. package/src/ts/website/app/generator.js.map +1 -1
  1179. package/src/ts/website/app/schema.d.js +6 -0
  1180. package/src/ts/website/app/schema.d.js.map +1 -0
  1181. package/src/ts/website/app/schema.d.ts +3 -3
  1182. package/src/ts/website/app/schema.json +11 -6
  1183. package/src/ts/website/auth/generator.d.ts +2 -2
  1184. package/src/ts/website/auth/generator.js +11 -10
  1185. package/src/ts/website/auth/generator.js.map +1 -1
  1186. package/src/ts/website/auth/schema.d.js +6 -0
  1187. package/src/ts/website/auth/schema.d.js.map +1 -0
  1188. package/src/ts/website/auth/schema.d.ts +2 -1
  1189. package/src/ts/website/auth/schema.json +5 -0
  1190. package/src/utils/__snapshots__/shared-constructs.spec.ts.snap +21 -0
  1191. package/src/utils/add-dependencies.d.ts +38 -0
  1192. package/src/utils/add-dependencies.js +83 -0
  1193. package/src/utils/add-dependencies.js.map +1 -0
  1194. package/src/utils/agent-chat/agent-chat.d.ts +31 -0
  1195. package/src/utils/agent-chat/agent-chat.js +31 -0
  1196. package/src/utils/agent-chat/agent-chat.js.map +1 -0
  1197. package/src/utils/agent-chat/files/a2a/chat.ts.template +33 -0
  1198. package/src/utils/agent-chat/files/ag-ui/chat.ts.template +17 -0
  1199. package/src/utils/agent-chat/files/common/agentcore.ts.template +81 -0
  1200. package/src/utils/agent-chat/files/http-py/chat.ts.template +43 -0
  1201. package/src/utils/agent-chat/files/http-ts/chat.ts.template +54 -0
  1202. package/src/utils/agent-connection/agent-connection.d.ts +149 -26
  1203. package/src/utils/agent-connection/agent-connection.js +510 -108
  1204. package/src/utils/agent-connection/agent-connection.js.map +1 -1
  1205. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client-config.ts.template +93 -0
  1206. package/src/utils/agent-connection/files/core-auth/agentcore-endpoints.ts.template +37 -0
  1207. package/src/utils/agent-connection/files/core-auth/agentcore-fetch.ts.template +54 -0
  1208. package/src/utils/agent-connection/files/core-gateway/agentcore-gateway-mcp-transport.ts.template +41 -0
  1209. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-transport.ts.template +70 -0
  1210. package/src/utils/agent-connection/files/core-runtime-config/runtime-config.ts.template +35 -33
  1211. package/src/utils/agent-connection/files/core-shared/agentcore-transport.ts.template +39 -0
  1212. package/src/utils/agent-connection/files/core-strands/a2a/agentcore-a2a-client-strands.ts.template +61 -0
  1213. package/src/utils/agent-connection/files/{core-runtime-config/model-errors.ts.template → core-strands/base/model-errors-strands.ts.template} +26 -15
  1214. package/src/utils/agent-connection/files/core-strands/base/tool-errors-strands.ts.template +29 -0
  1215. package/src/utils/agent-connection/files/{core-runtime-config/with-session-id.ts.template → core-strands/base/with-session-id-strands.ts.template} +1 -1
  1216. package/src/utils/agent-connection/files/core-strands/gateway/agentcore-gateway-mcp-client-strands.ts.template +26 -0
  1217. package/src/utils/agent-connection/files/core-strands/mcp/agentcore-mcp-client-strands.ts.template +27 -0
  1218. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client_config.py.template +43 -0
  1219. package/src/utils/agent-connection/files/py-core-auth/agentcore_endpoints.py.template +47 -0
  1220. package/src/utils/agent-connection/files/py-core-auth/auth/session.py.template +51 -0
  1221. package/src/utils/agent-connection/files/py-core-gateway/agentcore_gateway_mcp_transport.py.template +28 -0
  1222. package/src/utils/agent-connection/files/py-core-langchain/a2a/agentcore_a2a_client_langchain.py.template +105 -0
  1223. package/src/utils/agent-connection/files/py-core-langchain/gateway/agentcore_gateway_mcp_client_langchain.py.template +57 -0
  1224. package/src/utils/agent-connection/files/py-core-langchain/mcp/agentcore_mcp_client_langchain.py.template +64 -0
  1225. package/src/utils/agent-connection/files/py-core-langchain/s3/s3_checkpoint_saver_langchain.py.template +360 -0
  1226. package/src/utils/agent-connection/files/py-core-mcp/agentcore_mcp_transport.py.template +34 -0
  1227. package/src/utils/agent-connection/files/py-core-runtime-config/runtime_config.py.template +4 -18
  1228. package/src/utils/agent-connection/files/py-core-runtime-config/session_context.py.template +2 -2
  1229. package/src/utils/agent-connection/files/py-core-shared/agentcore_transport.py.template +40 -0
  1230. package/src/utils/agent-connection/files/py-core-strands/a2a/agentcore_a2a_client_strands.py.template +111 -0
  1231. package/src/utils/agent-connection/files/py-core-strands/base/tool_errors_strands.py.template +24 -0
  1232. package/src/utils/agent-connection/files/{py-core-runtime-config/with_session_id.py.template → py-core-strands/base/with_session_id_strands.py.template} +2 -2
  1233. package/src/utils/agent-connection/files/py-core-strands/gateway/agentcore_gateway_mcp_client_strands.py.template +22 -0
  1234. package/src/utils/agent-connection/files/py-core-strands/mcp/agentcore_mcp_client_strands.py.template +30 -0
  1235. package/src/utils/agent-core-constructs/agent-core-constructs.d.ts +88 -2
  1236. package/src/utils/agent-core-constructs/agent-core-constructs.js +227 -30
  1237. package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
  1238. package/src/utils/agent-core-constructs/files/cdk/app/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +273 -9
  1239. package/src/utils/agent-core-constructs/files/cdk/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.ts.template +87 -0
  1240. package/src/utils/agent-core-constructs/files/cdk/app/agentcore-harness/__nameKebabCase__/__nameKebabCase__.ts.template +404 -0
  1241. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/agentcore-gateway.ts.template +624 -0
  1242. package/src/utils/agent-core-constructs/files/cdk/core/agentcore-gateway/readiness-probe/index.js.template +55 -0
  1243. package/src/utils/agent-core-constructs/files/terraform/app/agent-core/__nameKebabCase__/__nameKebabCase__.tf.template +288 -1
  1244. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/__nameKebabCase__.tf.template +576 -0
  1245. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-gateway/__nameKebabCase__/render-cedar.cjs.template +13 -0
  1246. package/src/utils/agent-core-constructs/files/terraform/app/agentcore-harness/__nameKebabCase__/__nameKebabCase__.tf.template +516 -0
  1247. package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +163 -13
  1248. package/src/utils/agent-core-constructs/files/terraform/core/agentcore-gateway/gateway.tf.template +14 -0
  1249. package/src/utils/api-constructs/api-constructs.d.ts +31 -3
  1250. package/src/utils/api-constructs/api-constructs.js +96 -32
  1251. package/src/utils/api-constructs/api-constructs.js.map +1 -1
  1252. package/src/utils/api-constructs/files/cdk/app/apis/http/__apiNameKebabCase__.ts.template +24 -19
  1253. package/src/utils/api-constructs/files/cdk/app/apis/rest/__apiNameKebabCase__.ts.template +28 -20
  1254. package/src/utils/api-constructs/files/cdk/core/api/http/http-api.ts.template +26 -9
  1255. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account/index.js.template +70 -0
  1256. package/src/utils/api-constructs/files/cdk/core/api/rest/api-gateway-account.ts.template +82 -0
  1257. package/src/utils/api-constructs/files/cdk/core/api/rest/rest-api.ts.template +56 -17
  1258. package/src/utils/api-constructs/files/cdk/core/api/trpc/trpc-utils.ts.template +1 -1
  1259. package/src/utils/api-constructs/files/cdk/core/api/utils/utils.ts.template +61 -7
  1260. package/src/utils/api-constructs/files/terraform/app/apis/http/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +356 -19
  1261. package/src/utils/api-constructs/files/terraform/app/apis/rest/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +635 -14
  1262. package/src/utils/api-constructs/files/terraform/core/api/http/http-api/http-api.tf.template +1 -1
  1263. package/src/utils/api-constructs/files/terraform/core/api/rest/api-gateway-account/api-gateway-account.tf.template +83 -0
  1264. package/src/utils/api-constructs/files/terraform/core/api/rest/rest-api/rest-api.tf.template +65 -18
  1265. package/src/utils/api-constructs/open-api-metadata.d.ts +21 -4
  1266. package/src/utils/api-constructs/open-api-metadata.js +74 -39
  1267. package/src/utils/api-constructs/open-api-metadata.js.map +1 -1
  1268. package/src/utils/api-constructs/trpc-operations-metadata.d.ts +21 -0
  1269. package/src/utils/api-constructs/trpc-operations-metadata.js +61 -0
  1270. package/src/utils/api-constructs/trpc-operations-metadata.js.map +1 -0
  1271. package/src/utils/ast/website.js +17 -19
  1272. package/src/utils/ast/website.js.map +1 -1
  1273. package/src/utils/ast.d.ts +47 -0
  1274. package/src/utils/ast.js +185 -96
  1275. package/src/utils/ast.js.map +1 -1
  1276. package/src/utils/base-tsconfig.d.ts +30 -0
  1277. package/src/utils/base-tsconfig.js +32 -0
  1278. package/src/utils/base-tsconfig.js.map +1 -0
  1279. package/src/utils/bundle/bundle.d.ts +6 -1
  1280. package/src/utils/bundle/bundle.js +70 -48
  1281. package/src/utils/bundle/bundle.js.map +1 -1
  1282. package/src/utils/commands.d.ts +14 -3
  1283. package/src/utils/commands.js +83 -28
  1284. package/src/utils/commands.js.map +1 -1
  1285. package/src/utils/config/index.d.ts +22 -6
  1286. package/src/utils/config/index.js +5 -4
  1287. package/src/utils/config/index.js.map +1 -1
  1288. package/src/utils/config/utils.d.ts +9 -3
  1289. package/src/utils/config/utils.js +56 -59
  1290. package/src/utils/config/utils.js.map +1 -1
  1291. package/src/utils/connection/open-api/files/components/__apiNameClassName__Provider.tsx.template +16 -3
  1292. package/src/utils/connection/open-api/react.d.ts +31 -5
  1293. package/src/utils/connection/open-api/react.js +106 -86
  1294. package/src/utils/connection/open-api/react.js.map +1 -1
  1295. package/src/utils/containers.js +22 -23
  1296. package/src/utils/containers.js.map +1 -1
  1297. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.d.ts +38 -0
  1298. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.js +95 -0
  1299. package/src/utils/dcr-proxy-constructs/dcr-proxy-constructs.js.map +1 -0
  1300. package/src/utils/dcr-proxy-constructs/files/cdk/app/dcr-proxies/__nameKebabCase__/__nameKebabCase__.ts.template +227 -0
  1301. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/authorization-server-metadata.ts.template +39 -0
  1302. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/authorize.ts.template +26 -0
  1303. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/mcp-proxy.ts.template +89 -0
  1304. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/protected-resource-metadata.ts.template +13 -0
  1305. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/register.ts.template +70 -0
  1306. package/src/utils/dcr-proxy-constructs/files/project/src/handlers/token.ts.template +75 -0
  1307. package/src/utils/dcr-proxy-constructs/files/terraform/app/dcr-proxies/__nameKebabCase__/__nameKebabCase__.tf.template +414 -0
  1308. package/src/utils/declared-dependencies.d.ts +140 -0
  1309. package/src/utils/declared-dependencies.js +64 -0
  1310. package/src/utils/declared-dependencies.js.map +1 -0
  1311. package/src/utils/dependencies.d.ts +18 -0
  1312. package/src/utils/dependencies.js +206 -0
  1313. package/src/utils/dependencies.js.map +1 -0
  1314. package/src/utils/docker.d.ts +101 -0
  1315. package/src/utils/docker.js +135 -0
  1316. package/src/utils/docker.js.map +1 -0
  1317. package/src/utils/dynamodb-constructs/dynamodb-constructs.d.ts +2 -2
  1318. package/src/utils/dynamodb-constructs/dynamodb-constructs.js +39 -33
  1319. package/src/utils/dynamodb-constructs/dynamodb-constructs.js.map +1 -1
  1320. package/src/utils/dynamodb-constructs/files/cdk/app/dynamodb/__nameKebabCase__.ts.template +18 -5
  1321. package/src/utils/dynamodb-constructs/files/cdk/core/dynamodb.ts.template +24 -4
  1322. package/src/utils/dynamodb-constructs/files/terraform/app/dynamodb/__nameKebabCase__/__nameKebabCase__.tf.template +66 -18
  1323. package/src/utils/dynamodb-constructs/files/terraform/core/dynamodb/dynamodb.tf.template +46 -6
  1324. package/src/utils/files/common/constructs/src/core/cloudfront.ts.template +14 -0
  1325. package/src/utils/files/common/constructs/src/core/index.ts.template +5 -4
  1326. package/src/utils/files/common/constructs/src/index.ts.template +2 -2
  1327. package/src/utils/files/common/infra-config/src/index.ts.template +3 -3
  1328. package/src/utils/files/common/infra-config/src/resolve-stage.ts.template +2 -2
  1329. package/src/utils/files/common/infra-config/src/stages.config.ts.template +1 -1
  1330. package/src/{ts/dynamodb/files/scripts → utils/files/common/scripts/src/dynamodb}/create-local-table.ts.template +65 -31
  1331. package/src/utils/files/common/scripts/src/dynamodb/pull-image.ts.template +13 -0
  1332. package/src/{ts/dynamodb/files/scripts → utils/files/common/scripts/src/dynamodb}/start-container.ts.template +29 -22
  1333. package/src/utils/files/common/scripts/src/infra/infra-deploy.ts.template +2 -0
  1334. package/src/utils/files/common/scripts/src/infra/infra-destroy.ts.template +2 -0
  1335. package/src/utils/files/common/scripts/src/infra/stage-credentials/cdk-command.ts.template +25 -0
  1336. package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/run.ts.template +3 -3
  1337. package/src/utils/files/common/scripts/src/rdb/mysql/wait-for-mysql-db.ts.template +32 -0
  1338. package/src/utils/files/common/scripts/src/rdb/postgres/wait-for-postgres-db.ts.template +32 -0
  1339. package/src/utils/files/common/scripts/src/rdb/shared/pull-image.ts.template +16 -0
  1340. package/src/utils/files/common/scripts/src/rdb/shared/start-container.ts.template +100 -0
  1341. package/src/utils/files/common/shadcn/readme/README.md.template +3 -3
  1342. package/src/utils/files/common/shadcn/src/index.ts.template +2 -2
  1343. package/src/utils/files/shadcn/components.json.template +1 -1
  1344. package/src/utils/files/terraform/src/core/asset-bucket/asset-bucket.tf.template +63 -72
  1345. package/src/utils/files/terraform/src/core/runtime-config/appconfig/appconfig.tf.template +3 -3
  1346. package/src/utils/files/terraform/src/core/runtime-config/appconfig-deployment/appconfig-deployment.tf.template +13 -7
  1347. package/src/utils/files/terraform/src/core/runtime-config/entry/entry.tf.template +1 -1
  1348. package/src/utils/files/terraform/src/core/runtime-config/read/read.tf.template +9 -4
  1349. package/src/utils/files/terraform/src/metrics/providers.tf.template +12 -0
  1350. package/src/utils/files/website/hooks/sigv4/useSigV4.tsx.template +1 -1
  1351. package/src/utils/format.d.ts +44 -4
  1352. package/src/utils/format.js +323 -198
  1353. package/src/utils/format.js.map +1 -1
  1354. package/src/utils/fs.d.ts +24 -5
  1355. package/src/utils/fs.js +40 -15
  1356. package/src/utils/fs.js.map +1 -1
  1357. package/src/utils/function-constructs/files/cdk/app/lambda-functions/__nameKebabCase__.ts.template +1 -1
  1358. package/src/utils/function-constructs/files/terraform/app/lambda-functions/__nameKebabCase__/__nameKebabCase__.tf.template +6 -2
  1359. package/src/utils/function-constructs/function-constructs.d.ts +1 -1
  1360. package/src/utils/function-constructs/function-constructs.js +24 -27
  1361. package/src/utils/function-constructs/function-constructs.js.map +1 -1
  1362. package/src/utils/generators.d.ts +33 -0
  1363. package/src/utils/generators.js +33 -20
  1364. package/src/utils/generators.js.map +1 -1
  1365. package/src/utils/git.js +19 -34
  1366. package/src/utils/git.js.map +1 -1
  1367. package/src/utils/iac-providers.js +5 -5
  1368. package/src/utils/iac-providers.js.map +1 -1
  1369. package/src/utils/iac.d.ts +2 -2
  1370. package/src/utils/iac.js +12 -14
  1371. package/src/utils/iac.js.map +1 -1
  1372. package/src/utils/identity-constructs/files/cdk/core/user-identity.ts.template +218 -30
  1373. package/src/utils/identity-constructs/files/terraform/core/user-identity/add-callback-url/add-callback-url.tf.template +32 -9
  1374. package/src/utils/identity-constructs/files/terraform/core/user-identity/identity/identity.tf.template +226 -25
  1375. package/src/utils/identity-constructs/files/terraform/core/user-identity/main.tf.template +33 -0
  1376. package/src/utils/identity-constructs/identity-constructs.d.ts +11 -1
  1377. package/src/utils/identity-constructs/identity-constructs.js +52 -31
  1378. package/src/utils/identity-constructs/identity-constructs.js.map +1 -1
  1379. package/src/utils/init.d.ts +73 -0
  1380. package/src/utils/init.js +300 -0
  1381. package/src/utils/init.js.map +1 -0
  1382. package/src/utils/install.d.ts +32 -0
  1383. package/src/utils/install.js +58 -0
  1384. package/src/utils/install.js.map +1 -0
  1385. package/src/utils/js.js +27 -20
  1386. package/src/utils/js.js.map +1 -1
  1387. package/src/utils/lambda-runtime-resolution.d.ts +53 -0
  1388. package/src/utils/lambda-runtime-resolution.js +83 -0
  1389. package/src/utils/lambda-runtime-resolution.js.map +1 -0
  1390. package/src/utils/mcp.d.ts +9 -0
  1391. package/src/utils/mcp.js +42 -41
  1392. package/src/utils/mcp.js.map +1 -1
  1393. package/src/utils/metrics.d.ts +1 -1
  1394. package/src/utils/metrics.js +30 -45
  1395. package/src/utils/metrics.js.map +1 -1
  1396. package/src/utils/migration-manifest.d.ts +58 -0
  1397. package/src/utils/migration-manifest.js +76 -0
  1398. package/src/utils/migration-manifest.js.map +1 -0
  1399. package/src/utils/migration-versions.d.ts +145 -0
  1400. package/src/utils/migration-versions.js +250 -0
  1401. package/src/utils/migration-versions.js.map +1 -0
  1402. package/src/utils/mock-project-graph.js +12 -13
  1403. package/src/utils/mock-project-graph.js.map +1 -1
  1404. package/src/utils/module-format.d.ts +25 -0
  1405. package/src/utils/module-format.js +45 -0
  1406. package/src/utils/module-format.js.map +1 -0
  1407. package/src/utils/names.d.ts +22 -0
  1408. package/src/utils/names.js +44 -48
  1409. package/src/utils/names.js.map +1 -1
  1410. package/src/utils/npm-scope.d.ts +0 -4
  1411. package/src/utils/npm-scope.js +7 -20
  1412. package/src/utils/npm-scope.js.map +1 -1
  1413. package/src/utils/nx.d.ts +91 -6
  1414. package/src/utils/nx.js +186 -74
  1415. package/src/utils/nx.js.map +1 -1
  1416. package/src/utils/nxlv-python.js +27 -15
  1417. package/src/utils/nxlv-python.js.map +1 -1
  1418. package/src/utils/object.js +5 -11
  1419. package/src/utils/object.js.map +1 -1
  1420. package/src/utils/open-api-codegen-target.d.ts +28 -0
  1421. package/src/utils/open-api-codegen-target.js +31 -0
  1422. package/src/utils/open-api-codegen-target.js.map +1 -0
  1423. package/src/utils/paths.js +11 -15
  1424. package/src/utils/paths.js.map +1 -1
  1425. package/src/utils/pkg-manager.d.ts +1 -1
  1426. package/src/utils/pkg-manager.js +4 -9
  1427. package/src/utils/pkg-manager.js.map +1 -1
  1428. package/src/utils/pnpm-workspace.d.ts +1 -12
  1429. package/src/utils/pnpm-workspace.js +16 -43
  1430. package/src/utils/pnpm-workspace.js.map +1 -1
  1431. package/src/utils/port.d.ts +6 -5
  1432. package/src/utils/port.js +31 -39
  1433. package/src/utils/port.js.map +1 -1
  1434. package/src/utils/project-package-json.d.ts +39 -0
  1435. package/src/utils/project-package-json.js +119 -0
  1436. package/src/utils/project-package-json.js.map +1 -0
  1437. package/src/utils/py.d.ts +18 -4
  1438. package/src/utils/py.js +64 -46
  1439. package/src/utils/py.js.map +1 -1
  1440. package/src/utils/rdb-constructs/files/cdk/app/dbs/__nameKebabCase__.ts.template +72 -18
  1441. package/src/utils/rdb-constructs/files/cdk/core/rdb/aurora.ts.template +130 -88
  1442. package/src/utils/rdb-constructs/files/terraform/app/dbs/__nameKebabCase__/__nameKebabCase__.tf.template +132 -66
  1443. package/src/utils/rdb-constructs/files/terraform/core/rdb/aurora/aurora.tf.template +78 -162
  1444. package/src/utils/rdb-constructs/rdb-constructs.d.ts +26 -3
  1445. package/src/utils/rdb-constructs/rdb-constructs.js +61 -33
  1446. package/src/utils/rdb-constructs/rdb-constructs.js.map +1 -1
  1447. package/src/utils/ruff.d.ts +59 -0
  1448. package/src/utils/ruff.js +140 -0
  1449. package/src/utils/ruff.js.map +1 -0
  1450. package/src/utils/shared-constructs-constants.d.ts +68 -4
  1451. package/src/utils/shared-constructs-constants.js +68 -15
  1452. package/src/utils/shared-constructs-constants.js.map +1 -1
  1453. package/src/utils/shared-constructs.d.ts +5 -2
  1454. package/src/utils/shared-constructs.js +62 -67
  1455. package/src/utils/shared-constructs.js.map +1 -1
  1456. package/src/utils/shared-dynamodb-scripts.d.ts +18 -0
  1457. package/src/utils/shared-dynamodb-scripts.js +35 -0
  1458. package/src/utils/shared-dynamodb-scripts.js.map +1 -0
  1459. package/src/utils/shared-infra-config.js +31 -30
  1460. package/src/utils/shared-infra-config.js.map +1 -1
  1461. package/src/utils/shared-infra-scripts.d.ts +26 -0
  1462. package/src/utils/shared-infra-scripts.js +58 -0
  1463. package/src/utils/shared-infra-scripts.js.map +1 -0
  1464. package/src/utils/shared-rdb-scripts.d.ts +27 -0
  1465. package/src/utils/shared-rdb-scripts.js +59 -0
  1466. package/src/utils/shared-rdb-scripts.js.map +1 -0
  1467. package/src/utils/shared-scripts.d.ts +1 -4
  1468. package/src/utils/shared-scripts.js +12 -38
  1469. package/src/utils/shared-scripts.js.map +1 -1
  1470. package/src/utils/shared-shadcn.d.ts +26 -1
  1471. package/src/utils/shared-shadcn.js +93 -67
  1472. package/src/utils/shared-shadcn.js.map +1 -1
  1473. package/src/utils/smithy.d.ts +59 -0
  1474. package/src/utils/smithy.js +73 -0
  1475. package/src/utils/smithy.js.map +1 -0
  1476. package/src/utils/test-git.d.ts +39 -0
  1477. package/src/utils/test-git.js +117 -0
  1478. package/src/utils/test-git.js.map +1 -0
  1479. package/src/utils/test.d.ts +10 -0
  1480. package/src/utils/test.js +44 -25
  1481. package/src/utils/test.js.map +1 -1
  1482. package/src/utils/toml.d.ts +5 -0
  1483. package/src/utils/toml.js +17 -15
  1484. package/src/utils/toml.js.map +1 -1
  1485. package/src/utils/version-upgrade-migration/migration.d.ts +14 -0
  1486. package/src/utils/version-upgrade-migration/migration.js +16 -0
  1487. package/src/utils/version-upgrade-migration/migration.js.map +1 -0
  1488. package/src/utils/version-upgrade-migration/nx-package-updates.d.ts +45 -0
  1489. package/src/utils/version-upgrade-migration/nx-package-updates.js +50 -0
  1490. package/src/utils/version-upgrade-migration/nx-package-updates.js.map +1 -0
  1491. package/src/utils/version-upgrade-migration/owned-dependencies.d.ts +76 -0
  1492. package/src/utils/version-upgrade-migration/owned-dependencies.js +146 -0
  1493. package/src/utils/version-upgrade-migration/owned-dependencies.js.map +1 -0
  1494. package/src/utils/version-upgrade-migration/register.d.ts +29 -0
  1495. package/src/utils/version-upgrade-migration/register.js +42 -0
  1496. package/src/utils/version-upgrade-migration/register.js.map +1 -0
  1497. package/src/utils/version-upgrade-migration/sync-embedded-versions.d.ts +26 -0
  1498. package/src/utils/version-upgrade-migration/sync-embedded-versions.js +352 -0
  1499. package/src/utils/version-upgrade-migration/sync-embedded-versions.js.map +1 -0
  1500. package/src/utils/version-upgrade-migration/sync-lambda-runtimes.d.ts +28 -0
  1501. package/src/utils/version-upgrade-migration/sync-lambda-runtimes.js +148 -0
  1502. package/src/utils/version-upgrade-migration/sync-lambda-runtimes.js.map +1 -0
  1503. package/src/utils/version-upgrade-migration/sync-metrics-version.d.ts +13 -0
  1504. package/src/utils/version-upgrade-migration/sync-metrics-version.js +33 -0
  1505. package/src/utils/version-upgrade-migration/sync-metrics-version.js.map +1 -0
  1506. package/src/utils/version-upgrade-migration/sync-python-language-version.d.ts +31 -0
  1507. package/src/utils/version-upgrade-migration/sync-python-language-version.js +110 -0
  1508. package/src/utils/version-upgrade-migration/sync-python-language-version.js.map +1 -0
  1509. package/src/utils/version-upgrade-migration/sync-vended-versions.d.ts +10 -0
  1510. package/src/utils/version-upgrade-migration/sync-vended-versions.js +547 -0
  1511. package/src/utils/version-upgrade-migration/sync-vended-versions.js.map +1 -0
  1512. package/src/utils/version-upgrade-migration/vended-upgrade.d.ts +14 -0
  1513. package/src/utils/version-upgrade-migration/vended-upgrade.js +40 -0
  1514. package/src/utils/version-upgrade-migration/vended-upgrade.js.map +1 -0
  1515. package/src/utils/versions.d.ts +300 -108
  1516. package/src/utils/versions.js +317 -121
  1517. package/src/utils/versions.js.map +1 -1
  1518. package/src/utils/website-constructs/files/cdk/app/static-websites/__websiteNameKebabCase__.ts.template +12 -3
  1519. package/src/utils/website-constructs/files/cdk/core/static-website.ts.template +252 -49
  1520. package/src/utils/website-constructs/files/terraform/app/static-websites/__websiteNameKebabCase__/__websiteNameKebabCase__.tf.template +56 -1
  1521. package/src/utils/website-constructs/files/terraform/core/static-website/static-website.tf.template +205 -107
  1522. package/src/utils/website-constructs/website-constructs.d.ts +12 -1
  1523. package/src/utils/website-constructs/website-constructs.js +49 -30
  1524. package/src/utils/website-constructs/website-constructs.js.map +1 -1
  1525. package/bin/aws-nx-mcp.d.ts +0 -2
  1526. package/bin/aws-nx-mcp.js +0 -17
  1527. package/bin/aws-nx-mcp.js.map +0 -1
  1528. package/sdk/connection.d.ts +0 -6
  1529. package/sdk/connection.js +0 -10
  1530. package/sdk/connection.js.map +0 -1
  1531. package/sdk/license.d.ts +0 -8
  1532. package/sdk/license.js +0 -13
  1533. package/sdk/license.js.map +0 -1
  1534. package/sdk/open-api.d.ts +0 -10
  1535. package/sdk/open-api.js +0 -15
  1536. package/sdk/open-api.js.map +0 -1
  1537. package/sdk/py.d.ts +0 -14
  1538. package/sdk/py.js +0 -18
  1539. package/sdk/py.js.map +0 -1
  1540. package/sdk/terraform.d.ts +0 -6
  1541. package/sdk/terraform.js +0 -11
  1542. package/sdk/terraform.js.map +0 -1
  1543. package/sdk/ts.d.ts +0 -29
  1544. package/sdk/ts.js +0 -47
  1545. package/sdk/ts.js.map +0 -1
  1546. package/sdk/utils/ast.js +0 -12
  1547. package/sdk/utils/ast.js.map +0 -1
  1548. package/sdk/utils/format.js +0 -10
  1549. package/sdk/utils/format.js.map +0 -1
  1550. package/sdk/utils/test.js +0 -10
  1551. package/sdk/utils/test.js.map +0 -1
  1552. package/src/connection/agent-serve-local.d.ts +0 -33
  1553. package/src/connection/agent-serve-local.js +0 -48
  1554. package/src/connection/agent-serve-local.js.map +0 -1
  1555. package/src/connection/serve-local.js +0 -41
  1556. package/src/connection/serve-local.js.map +0 -1
  1557. package/src/py/agent/__snapshots__/generator.spec.ts.snap +0 -771
  1558. package/src/py/agent/a2a-connection/files/agent-connection/app/__targetAgentSnakeCase___client.py.template +0 -22
  1559. package/src/py/agent/files/a2a/main.py.template +0 -54
  1560. package/src/py/agent/files/ag-ui/main.py.template +0 -37
  1561. package/src/py/agent/mcp-connection/files/agent-connection/app/__mcpServerSnakeCase___client.py.template +0 -22
  1562. package/src/py/agent/react-connection/serve-local.js +0 -30
  1563. package/src/py/agent/react-connection/serve-local.js.map +0 -1
  1564. package/src/py/agent/scripts/http/chat.ts.template +0 -38
  1565. package/src/ts/agent/a2a-connection/files/agent-connection/app/__targetAgentKebabCase__-client.ts.template +0 -19
  1566. package/src/ts/agent/mcp-connection/files/agent-connection/app/__mcpServerKebabCase__-client.ts.template +0 -19
  1567. package/src/ts/agent/react-connection/serve-local.d.ts +0 -13
  1568. package/src/ts/agent/react-connection/serve-local.js +0 -19
  1569. package/src/ts/agent/react-connection/serve-local.js.map +0 -1
  1570. package/src/ts/agent/scripts/http/chat.ts.template +0 -35
  1571. package/src/ts/dynamodb/files/scripts/pull-image.ts.template +0 -15
  1572. package/src/ts/dynamodb/files/src/constants.ts.template +0 -9
  1573. package/src/ts/dynamodb/files/src/gsi.ts.template +0 -14
  1574. package/src/ts/rdb/files/scripts/pull-image.ts.template +0 -15
  1575. package/src/ts/rdb/files/scripts/start-container.ts.template +0 -84
  1576. package/src/ts/rdb/files/scripts/wait-for-db.ts.template +0 -55
  1577. package/src/ts/rdb/files/src/constants.ts.template +0 -8
  1578. package/src/ts/rdb/files/src/index.ts.template +0 -2
  1579. package/src/utils/agent-connection/files/core-a2a/agentcore-a2a-client.ts.template +0 -123
  1580. package/src/utils/agent-connection/files/core-mcp/agentcore-mcp-client.ts.template +0 -128
  1581. package/src/utils/agent-connection/files/py-core-a2a/agentcore_a2a_client.py.template +0 -120
  1582. package/src/utils/agent-connection/files/py-core-mcp/agentcore_mcp_client.py.template +0 -89
  1583. package/src/utils/files/common/scripts/src/infra-deploy.ts.template +0 -2
  1584. package/src/utils/files/common/scripts/src/infra-destroy.ts.template +0 -2
  1585. package/src/utils/files/common/scripts/src/stage-credentials/cdk-command.ts.template +0 -18
  1586. package/src/utils/files/terraform/scripts/reset-runtime-config.ts.template +0 -25
  1587. /package/src/py/agent/files/{common → langchain/common}/__init__.py.template +0 -0
  1588. /package/src/smithy/project/files/{src → service/src}/main.smithy.template +0 -0
  1589. /package/src/utils/agent-connection/files/{py-core-runtime-config/model_errors.py.template → py-core-strands/base/model_errors_strands.py.template} +0 -0
  1590. /package/src/utils/files/common/scripts/src/{index.ts.template → infra/index.ts.template} +0 -0
  1591. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/credentials.ts.template +0 -0
  1592. /package/src/utils/files/common/scripts/src/{stage-credentials → infra/stage-credentials}/stage-parser.ts.template +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"general-guidance.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/mcp-server/tools/general-guidance.ts"],"names":[],"mappings":";;;AAMA,6DAA0D;AAC1D,sDAAoE;AACpE,sCAA6C;AAEhC,QAAA,oBAAoB,GAAG;;;;;gGAK4D,CAAC;AAEjG;;GAEG;AACI,MAAM,sBAAsB,GAAG,CACpC,MAAiB,EACjB,UAA6B,EAC7B,EAAE;IACF,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,oFAAoF;KACvF,EACD,KAAK,IAAI,EAAE,CAAC,CAAC;QACX,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE;;EAEd,4BAAoB;;;;2DAIqC,yBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;iFACL,6BAAa,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;EAOvG,yBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAA,+BAAc,EAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkC3E,MAAM,IAAA,gCAAe,EAAC,CAAC,WAAW,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,EAAE,UAAU,CAAC;;KAErF;aACI;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAtEW,QAAA,sBAAsB,0BAsEjC"}
1
+ {"version":3,"sources":["../../../../../../packages/nx-plugin/src/mcp-server/tools/general-guidance.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';\nimport type { NxGeneratorInfo } from '../../utils/generators.js';\nimport { IAC_PROVIDERS } from '../../utils/iac-providers.js';\nimport { buildNxCommand, fetchGuidePages } from '../generator-info.js';\nimport { PACKAGE_MANAGERS } from '../schema.js';\n\nexport const TOOL_SELECTION_GUIDE = `## Tool Selection Guide\n\n- Use the \\`general-guidance\\` tool for guidance and best practices for working with Nx and the Nx Plugin for AWS.\n- Use the \\`create-workspace-command\\` tool to discover how to create a workspace to start a new project.\n- Use the \\`add-to-existing-project\\` tool when adding the plugin to an existing Nx workspace or non-Nx monorepo, or when troubleshooting configuration errors in such a workspace.\n- Use the \\`upgrade-workspace\\` tool when upgrading Nx or the Nx Plugin for AWS to a newer version.\n- Use the \\`list-generators\\` tool to discover the available generators and how to run them.\n- Use the \\`generator-guide\\` tool to retrieve detailed information about a specific generator.`;\n\n/**\n * Add a tool which provides general guidance for using Nx and the Nx Plugin for AWS\n */\nexport const addGeneralGuidanceTool = (\n server: McpServer,\n generators: NxGeneratorInfo[],\n) => {\n server.registerTool(\n 'general-guidance',\n {\n title: 'General Guidance',\n description:\n 'Tool for guidance and best practices for working with Nx and the Nx Plugin for AWS',\n },\n async () => ({\n content: [\n {\n type: 'text' as const,\n text: `# Nx Plugin for AWS Guidance\n\n${TOOL_SELECTION_GUIDE}\n\n## Getting Started\n\n- Choose a package manager first. You can choose between ${PACKAGE_MANAGERS.join(', ')}. It's recommended to use \"pnpm\" if the user has no preference\n- Choose an infrastructure as code (IaC) provider next. You can choose between ${IAC_PROVIDERS.join(', ')}. It's recommended to use CDK if the user has no preference\n- Next, you must create an Nx workspace. Use the \\`create-workspace-command\\` tool for more details, and provide it with your chosen package manager\n- After this, you can start scaffolding the main components of your application using generators. Use the \\`list-generators\\` tool to discover available generators, and the \\`generator-guide\\` tool for more detailed information about a specific generator\n\n## Nx Primer\n\n- Prefix nx commands with the appropriate prefix for your package manager, for example:\n${PACKAGE_MANAGERS.map((pm) => buildNxCommand('<options>', pm)).join(' - \\n')}\n- Each project in your workspace has a file named \\`project.json\\` which contains important project information such as its name, and defines the \"targets\" which can be run for that project, for example building or testing the project\n- Use the command \\`nx reset\\` to reset the Nx daemon when unexpected issues arise\n- After adding dependencies between TypeScript projects, use \\`nx sync\\` to ensure project references are set up correctly\n\n## General Instructions\n\n- Each project declares the third-party runtime dependencies its source imports in its own \\`package.json\\`; shared build/test tooling (test runners, bundlers, etc.) is declared in the root \\`package.json\\` \\`devDependencies\\`. Versions follow a single version policy, recorded in the package manager's dependency catalog where supported (referenced as \\`catalog:\\`). Install with the appropriate command for your package manager:\n - Add a project runtime dependency: \\`pnpm add <package> --filter <project>\\` / \\`yarn workspace <project> add <package>\\` / \\`npm install <package> -w <project>\\` / \\`bun add <package> --cwd <project-directory>\\`\n - Add a shared dev tool at the root: \\`pnpm add -Dw <package>\\` / \\`yarn add -D <package>\\` / \\`npm install --legacy-peer-deps -D <package>\\` / \\`bun install -D <package>\\`\n- The \\`noUndeclaredDependencies\\` lint rule enforces that a project's source only imports packages declared in its own \\`package.json\\`\n- Projects in the same workspace can import one another directly by package name (eg \\`@workspace-name/project-name\\`) without declaring a dependency in \\`package.json\\` — TypeScript path aliases in \\`tsconfig.base.json\\` resolve these imports\n- When specifying project names as arguments to generators, prefer the _fully qualified_ project name, for example \\`@workspace-name/project-name\\`. Check the \\`project.json\\` file for the specific package to find its fully qualified name\n- When no generator exists for a specific framework required, use the base \\`ts#project\\` and \\`py#project\\` generators and build on top.\n- Leave the \\`--infra\\` option at its default value unless the user has explicitly instructed otherwise. Generators choose a sensible default type of infrastructure to deploy the project with, so only override \\`--infra\\` when the user has specified a particular requirement.\n\n## Useful Commands\n\n- Fix lint issues with \\`nx run-many --target lint --configuration=fix --all --output-style=stream\\`\n- Build all projects with \\`nx run-many --target build --all --output-style=stream\\`\n- Prefer importing the CDK constructs vended by generators in \\`packages/common/constructs\\` over writing your own\n\n## Best Practices\n\n- After running a generator, use the \\`nx show projects\\` command to check which projects have been added (if any)\n- Carefully examine the files that have been generated and always refer back to the generator guide when working in a generated project\n- Generate all projects into the \\`packages/\\` directory\n- After making changes to your projects, fix linting issues, then run a full build\n- When it's time to start testing a project, suggest to the user that infrastructure is deployed to AWS. For websites, if a runtime-config.json is needed, use the load-runtime-config target after a deployment to point a local website at a sandbox stack.\n- For CDK infrastructure projects, deploy the sandbox stage with the \\`deploy-sandbox\\` target (eg \\`nx deploy-sandbox infra\\`) rather than passing a stage pattern to \\`deploy\\` — it already targets the sandbox stage declared in \\`main.ts\\`. Likewise \\`destroy-sandbox\\` tears that stage back down.\n\n## Batching Generators\n\nWhen scaffolding several projects in one go, chain generators to avoid a slow dependency install after every generator:\n\n- **Chain generators** with \\`&&\\` in a single command. Pass \\`--prefer-install-dependencies=false\\` on each generator except the last so dependencies install once at the end, for example:\n\n${PACKAGE_MANAGERS.map(\n (pm) => ` \\`\\`\\`bash\n ${buildNxCommand('g @aws/nx-plugin:ts#trpc-api --no-interactive --name=my-app-api --auth=iam --prefer-install-dependencies=false', pm)} && \\\\\n ${buildNxCommand('g @aws/nx-plugin:ts#react-website --no-interactive --name=my-app-website --prefer-install-dependencies=false', pm)} && \\\\\n ${buildNxCommand('g @aws/nx-plugin:connection --no-interactive --sourceProject=@my-app/my-app-website --targetProject=@my-app/my-app-api --prefer-install-dependencies=false', pm)} && \\\\\n ${buildNxCommand('g @aws/nx-plugin:ts#infra --no-interactive --name=infra', pm)} && \\\\\n ${buildNxCommand('sync', pm)}\n \\`\\`\\``,\n).join('\\n')}\n\n- **\\`--prefer-install-dependencies=false\\`** asks a generator to defer its dependency install so the batch installs once at the end (the final generator above omits the flag and installs everything).\n- **\\`nx sync\\`** is required before building — generators modify TypeScript project references.\n\n## Detailed Guides\n\nPlease refer to the below documentation for important details regarding workspaces and working with TypeScript or Python projects.\n\n${await fetchGuidePages(['workspace', 'typescript-project', 'python-project'], generators)}\n\n `,\n },\n ],\n }),\n );\n};\n"],"names":["IAC_PROVIDERS","buildNxCommand","fetchGuidePages","PACKAGE_MANAGERS","TOOL_SELECTION_GUIDE","addGeneralGuidanceTool","server","generators","registerTool","title","description","content","type","text","join","map","pm"],"mappings":"AAAA;;;CAGC,GAGD,SAASA,aAAa,QAAQ,+BAA+B;AAC7D,SAASC,cAAc,EAAEC,eAAe,QAAQ,uBAAuB;AACvE,SAASC,gBAAgB,QAAQ,eAAe;AAEhD,OAAO,MAAMC,uBAAuB,CAAC;;;;;;;+FAO0D,CAAC,CAAC;AAEjG;;CAEC,GACD,OAAO,MAAMC,yBAAyB,CACpCC,QACAC;IAEAD,OAAOE,YAAY,CACjB,oBACA;QACEC,OAAO;QACPC,aACE;IACJ,GACA,UAAa,CAAA;YACXC,SAAS;gBACP;oBACEC,MAAM;oBACNC,MAAM,CAAC;;AAEjB,EAAET,qBAAqB;;;;yDAIkC,EAAED,iBAAiBW,IAAI,CAAC,MAAM;+EACR,EAAEd,cAAcc,IAAI,CAAC,MAAM;;;;;;;AAO1G,EAAEX,iBAAiBY,GAAG,CAAC,CAACC,KAAOf,eAAe,aAAae,KAAKF,IAAI,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqC9E,EAAEX,iBAAiBY,GAAG,CACpB,CAACC,KAAO,CAAC;EACT,EAAEf,eAAe,kHAAkHe,IAAI;IACrI,EAAEf,eAAe,gHAAgHe,IAAI;IACrI,EAAEf,eAAe,8JAA8Je,IAAI;IACnL,EAAEf,eAAe,2DAA2De,IAAI;IAChF,EAAEf,eAAe,QAAQe,IAAI;QACzB,CAAC,EACPF,IAAI,CAAC,MAAM;;;;;;;;;AASb,EAAE,MAAMZ,gBAAgB;wBAAC;wBAAa;wBAAsB;qBAAiB,EAAEK,YAAY;;IAEvF,CAAC;gBACG;aACD;QACH,CAAA;AAEJ,EAAE"}
@@ -3,7 +3,7 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
6
- import type { NxGeneratorInfo } from '../../utils/generators';
6
+ import type { NxGeneratorInfo } from '../../utils/generators.js';
7
7
  /**
8
8
  * Add a tool which provides a detailed guide for an individual generator.
9
9
  *
@@ -1,9 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addGeneratorGuideTool = void 0;
4
- const zod_1 = require("zod");
5
- const generator_info_1 = require("../generator-info");
6
- const schema_1 = require("../schema");
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ import { z } from "zod";
5
+ import { fetchGuidePagesForGenerator, renderGeneratorInfo } from "../generator-info.js";
6
+ import { PackageManagerSchema } from "../schema.js";
7
7
  /**
8
8
  * Add a tool which provides a detailed guide for an individual generator.
9
9
  *
@@ -12,55 +12,47 @@ const schema_1 = require("../schema");
12
12
  * — and the "unsupported combination" case, where it returns an explicit
13
13
  * warning instead of empty guide content. The tool description points
14
14
  * agents at `list-generators` for the list of filterable options.
15
- */
16
- const addGeneratorGuideTool = (server, generators) => {
15
+ */ export const addGeneratorGuideTool = (server, generators)=>{
17
16
  server.registerTool('generator-guide', {
18
- description: 'Tool to retrieve detailed information about a specific generator. ' +
19
- 'Pass `options` with the values you intend to use for any filterable option ' +
20
- '(e.g. infra, iac, auth, ux, protocol, sourceType, targetType) ' +
21
- 'to receive only the guide content relevant to those choices — this cuts noise ' +
22
- 'and avoids suggesting configuration from a different branch. The filterable keys ' +
23
- 'and their valid values for each generator are listed by the `list-generators` ' +
24
- 'tool; call it first if you are not sure which keys to pass. When the combination ' +
25
- 'you pick is not supported by the generator (e.g. connection from ts#trpc-api ' +
26
- 'to smithy), the tool returns an "Unsupported combination" warning with the ' +
27
- 'list of supported pairs. When `options` is omitted, every conditional section ' +
28
- 'is included and prefixed with a `> [!NOTE] Only when …` marker so you can see ' +
29
- 'the branching condition.',
17
+ description: 'Tool to retrieve detailed information about a specific generator. ' + 'Pass `options` with the values you intend to use for any filterable option ' + '(e.g. infra, iac, auth, ux, protocol, sourceType, targetType) ' + 'to receive only the guide content relevant to those choices — this cuts noise ' + 'and avoids suggesting configuration from a different branch. The filterable keys ' + 'and their valid values for each generator are listed by the `list-generators` ' + 'tool; call it first if you are not sure which keys to pass. When the combination ' + 'you pick is not supported by the generator (e.g. connection from ts#trpc-api ' + 'to smithy), the tool returns an "Unsupported combination" warning with the ' + 'list of supported pairs. When `options` is omitted, every conditional section ' + 'is included and prefixed with a `> [!NOTE] Only when …` marker so you can see ' + 'the branching condition.',
30
18
  inputSchema: {
31
- packageManager: schema_1.PackageManagerSchema,
32
- generator: zod_1.z.enum(generators.map((g) => g.id)),
33
- options: zod_1.z
34
- .record(zod_1.z.string(), zod_1.z.string())
35
- .optional()
36
- .describe('Optional map of generator option values (e.g. { infra: "rest-lambda", iac: "cdk" }) used to filter the guide to content that applies to those choices.'),
37
- },
38
- }, async ({ packageManager, generator: generatorId, options }) => {
39
- const generator = generators.find((g) => g.id === generatorId);
19
+ packageManager: PackageManagerSchema,
20
+ generator: z.enum(generators.map((g)=>g.id)),
21
+ options: z.record(z.string(), z.string()).optional().describe('Optional map of generator option values (e.g. { infra: "rest-lambda", iac: "cdk" }) used to filter the guide to content that applies to those choices.')
22
+ }
23
+ }, async ({ packageManager, generator: generatorId, options })=>{
24
+ const generator = generators.find((g)=>g.id === generatorId);
40
25
  if (!generator) {
41
- throw new Error(`No generator found with id ${generatorId}. Available generators: ${generators.map((g) => g.id).join(' ,')}`);
26
+ throw new Error(`No generator found with id ${generatorId}. Available generators: ${generators.map((g)=>g.id).join(' ,')}`);
42
27
  }
43
- const guide = await (0, generator_info_1.fetchGuidePagesForGenerator)(generator, generators, packageManager, undefined, options);
28
+ const guide = await fetchGuidePagesForGenerator(generator, generators, packageManager, undefined, options);
44
29
  // An unsupported combination renders its own self-contained warning
45
30
  // (leads with `## <id>` and lists the supported predicates), so
46
31
  // return it directly without the usual guide header.
47
32
  if (guide.kind === 'unsupported') {
48
- return { content: [{ type: 'text', text: guide.content }] };
33
+ return {
34
+ content: [
35
+ {
36
+ type: 'text',
37
+ text: guide.content
38
+ }
39
+ ]
40
+ };
49
41
  }
50
42
  return {
51
43
  content: [
52
44
  {
53
45
  type: 'text',
54
- text: `## ${(0, generator_info_1.renderGeneratorInfo)(packageManager, generator)}
46
+ text: `## ${renderGeneratorInfo(packageManager, generator)}
55
47
 
56
48
  # Guide
57
49
 
58
50
  ${guide.content}
59
- `,
60
- },
61
- ],
51
+ `
52
+ }
53
+ ]
62
54
  };
63
55
  });
64
56
  };
65
- exports.addGeneratorGuideTool = addGeneratorGuideTool;
57
+
66
58
  //# sourceMappingURL=generator-guide.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generator-guide.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/mcp-server/tools/generator-guide.ts"],"names":[],"mappings":";;;AAKA,6BAAwB;AAExB,sDAG2B;AAC3B,sCAAiD;AAEjD;;;;;;;;GAQG;AACI,MAAM,qBAAqB,GAAG,CACnC,MAAiB,EACjB,UAA6B,EAC7B,EAAE;IACF,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,WAAW,EACT,oEAAoE;YACpE,6EAA6E;YAC7E,gEAAgE;YAChE,gFAAgF;YAChF,mFAAmF;YACnF,gFAAgF;YAChF,mFAAmF;YACnF,+EAA+E;YAC/E,6EAA6E;YAC7E,gFAAgF;YAChF,gFAAgF;YAChF,0BAA0B;QAC5B,WAAW,EAAE;YACX,cAAc,EAAE,6BAAoB;YACpC,SAAS,EAAE,OAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC9C,OAAO,EAAE,OAAC;iBACP,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC;iBAC9B,QAAQ,EAAE;iBACV,QAAQ,CACP,wJAAwJ,CACzJ;SACJ;KACF,EACD,KAAK,EAAE,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE;QAC5D,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,CAAC;QAC/D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,8BAA8B,WAAW,2BAA2B,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC7G,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,IAAA,4CAA2B,EAC7C,SAAS,EACT,UAAU,EACV,cAAc,EACd,SAAS,EACT,OAAO,CACR,CAAC;QAEF,oEAAoE;QACpE,gEAAgE;QAChE,qDAAqD;QACrD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACjC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QACvE,CAAC;QAED,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,MAAM,IAAA,oCAAmB,EAAC,cAAc,EAAE,SAAS,CAAC;;;;EAIpE,KAAK,CAAC,OAAO;CACd;iBACU;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AArEW,QAAA,qBAAqB,yBAqEhC"}
1
+ {"version":3,"sources":["../../../../../../packages/nx-plugin/src/mcp-server/tools/generator-guide.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';\nimport { z } from 'zod';\nimport type { NxGeneratorInfo } from '../../utils/generators.js';\nimport {\n fetchGuidePagesForGenerator,\n renderGeneratorInfo,\n} from '../generator-info.js';\nimport { PackageManagerSchema } from '../schema.js';\n\n/**\n * Add a tool which provides a detailed guide for an individual generator.\n *\n * `fetchGuidePagesForGenerator` handles both the \"narrow by `options`\"\n * case — reading each page's frontmatter `when:` to pick matching variants\n * — and the \"unsupported combination\" case, where it returns an explicit\n * warning instead of empty guide content. The tool description points\n * agents at `list-generators` for the list of filterable options.\n */\nexport const addGeneratorGuideTool = (\n server: McpServer,\n generators: NxGeneratorInfo[],\n) => {\n server.registerTool(\n 'generator-guide',\n {\n description:\n 'Tool to retrieve detailed information about a specific generator. ' +\n 'Pass `options` with the values you intend to use for any filterable option ' +\n '(e.g. infra, iac, auth, ux, protocol, sourceType, targetType) ' +\n 'to receive only the guide content relevant to those choices — this cuts noise ' +\n 'and avoids suggesting configuration from a different branch. The filterable keys ' +\n 'and their valid values for each generator are listed by the `list-generators` ' +\n 'tool; call it first if you are not sure which keys to pass. When the combination ' +\n 'you pick is not supported by the generator (e.g. connection from ts#trpc-api ' +\n 'to smithy), the tool returns an \"Unsupported combination\" warning with the ' +\n 'list of supported pairs. When `options` is omitted, every conditional section ' +\n 'is included and prefixed with a `> [!NOTE] Only when …` marker so you can see ' +\n 'the branching condition.',\n inputSchema: {\n packageManager: PackageManagerSchema,\n generator: z.enum(generators.map((g) => g.id)),\n options: z\n .record(z.string(), z.string())\n .optional()\n .describe(\n 'Optional map of generator option values (e.g. { infra: \"rest-lambda\", iac: \"cdk\" }) used to filter the guide to content that applies to those choices.',\n ),\n },\n },\n async ({ packageManager, generator: generatorId, options }) => {\n const generator = generators.find((g) => g.id === generatorId);\n if (!generator) {\n throw new Error(\n `No generator found with id ${generatorId}. Available generators: ${generators.map((g) => g.id).join(' ,')}`,\n );\n }\n\n const guide = await fetchGuidePagesForGenerator(\n generator,\n generators,\n packageManager,\n undefined,\n options,\n );\n\n // An unsupported combination renders its own self-contained warning\n // (leads with `## <id>` and lists the supported predicates), so\n // return it directly without the usual guide header.\n if (guide.kind === 'unsupported') {\n return { content: [{ type: 'text' as const, text: guide.content }] };\n }\n\n return {\n content: [\n {\n type: 'text' as const,\n text: `## ${renderGeneratorInfo(packageManager, generator)}\n\n# Guide\n\n${guide.content}\n`,\n },\n ],\n };\n },\n );\n};\n"],"names":["z","fetchGuidePagesForGenerator","renderGeneratorInfo","PackageManagerSchema","addGeneratorGuideTool","server","generators","registerTool","description","inputSchema","packageManager","generator","enum","map","g","id","options","record","string","optional","describe","generatorId","find","Error","join","guide","undefined","kind","content","type","text"],"mappings":"AAAA;;;CAGC,GAED,SAASA,CAAC,QAAQ,MAAM;AAExB,SACEC,2BAA2B,EAC3BC,mBAAmB,QACd,uBAAuB;AAC9B,SAASC,oBAAoB,QAAQ,eAAe;AAEpD;;;;;;;;CAQC,GACD,OAAO,MAAMC,wBAAwB,CACnCC,QACAC;IAEAD,OAAOE,YAAY,CACjB,mBACA;QACEC,aACE,uEACA,gFACA,mEACA,mFACA,sFACA,mFACA,sFACA,kFACA,gFACA,mFACA,mFACA;QACFC,aAAa;YACXC,gBAAgBP;YAChBQ,WAAWX,EAAEY,IAAI,CAACN,WAAWO,GAAG,CAAC,CAACC,IAAMA,EAAEC,EAAE;YAC5CC,SAAShB,EACNiB,MAAM,CAACjB,EAAEkB,MAAM,IAAIlB,EAAEkB,MAAM,IAC3BC,QAAQ,GACRC,QAAQ,CACP;QAEN;IACF,GACA,OAAO,EAAEV,cAAc,EAAEC,WAAWU,WAAW,EAAEL,OAAO,EAAE;QACxD,MAAML,YAAYL,WAAWgB,IAAI,CAAC,CAACR,IAAMA,EAAEC,EAAE,KAAKM;QAClD,IAAI,CAACV,WAAW;YACd,MAAM,IAAIY,MACR,CAAC,2BAA2B,EAAEF,YAAY,wBAAwB,EAAEf,WAAWO,GAAG,CAAC,CAACC,IAAMA,EAAEC,EAAE,EAAES,IAAI,CAAC,OAAO;QAEhH;QAEA,MAAMC,QAAQ,MAAMxB,4BAClBU,WACAL,YACAI,gBACAgB,WACAV;QAGF,oEAAoE;QACpE,gEAAgE;QAChE,qDAAqD;QACrD,IAAIS,MAAME,IAAI,KAAK,eAAe;YAChC,OAAO;gBAAEC,SAAS;oBAAC;wBAAEC,MAAM;wBAAiBC,MAAML,MAAMG,OAAO;oBAAC;iBAAE;YAAC;QACrE;QAEA,OAAO;YACLA,SAAS;gBACP;oBACEC,MAAM;oBACNC,MAAM,CAAC,GAAG,EAAE5B,oBAAoBQ,gBAAgBC,WAAW;;;;AAIvE,EAAEc,MAAMG,OAAO,CAAC;AAChB,CAAC;gBACS;aACD;QACH;IACF;AAEJ,EAAE"}
@@ -3,7 +3,7 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
6
- import type { NxGeneratorInfo } from '../../utils/generators';
6
+ import type { NxGeneratorInfo } from '../../utils/generators.js';
7
7
  /**
8
8
  * Adds a tool which lists details about the available generators.
9
9
  *
@@ -1,8 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addListGeneratorsTool = void 0;
4
- const generator_info_1 = require("../generator-info");
5
- const schema_1 = require("../schema");
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ import { renderFilterableOptionsAsync, renderGeneratorInfo } from "../generator-info.js";
5
+ import { PackageManagerSchema } from "../schema.js";
6
6
  /**
7
7
  * Adds a tool which lists details about the available generators.
8
8
  *
@@ -14,34 +14,28 @@ const schema_1 = require("../schema");
14
14
  * - The union of `when:` frontmatter keys across the generator's guide
15
15
  * pages (lets multi-variant generators like `connection` surface
16
16
  * `sourceType` / `targetType` / `protocol` without any bespoke config).
17
- */
18
- const addListGeneratorsTool = (server, generators) => {
17
+ */ export const addListGeneratorsTool = (server, generators)=>{
19
18
  server.registerTool('list-generators', {
20
- description: 'Tool to discover the available generators and how to run them. ' +
21
- 'Each entry includes a "Filterable options" section — pass those ' +
22
- 'keys to `generator-guide` before invoking a generator so the guide ' +
23
- 'is narrowed to the variant you intend to scaffold.',
24
- inputSchema: { packageManager: schema_1.PackageManagerSchema },
25
- }, async ({ packageManager }) => {
26
- const entries = await Promise.all(generators.map(async (g) => {
27
- const info = (0, generator_info_1.renderGeneratorInfo)(packageManager, g);
28
- const filterable = await (0, generator_info_1.renderFilterableOptionsAsync)(g);
19
+ description: 'Tool to discover the available generators and how to run them. ' + 'Each entry includes a "Filterable options" section — pass those ' + 'keys to `generator-guide` before invoking a generator so the guide ' + 'is narrowed to the variant you intend to scaffold.',
20
+ inputSchema: {
21
+ packageManager: PackageManagerSchema
22
+ }
23
+ }, async ({ packageManager })=>{
24
+ const entries = await Promise.all(generators.map(async (g)=>{
25
+ const info = renderGeneratorInfo(packageManager, g);
26
+ const filterable = await renderFilterableOptionsAsync(g);
29
27
  return `### ${info}${filterable ? `\n${filterable}\n` : ''}`;
30
28
  }));
31
- const guidance = 'Before running any generator below, call `generator-guide` with the ' +
32
- "generator's id and `options` populated from its `generator-guide options` " +
33
- 'list — the guide is returned narrowed to the branches that apply to ' +
34
- 'those choices, which keeps you from mixing configuration from a ' +
35
- 'different variant.';
29
+ const guidance = 'Before running any generator below, call `generator-guide` with the ' + "generator's id and `options` populated from its `generator-guide options` " + 'list — the guide is returned narrowed to the branches that apply to ' + 'those choices, which keeps you from mixing configuration from a ' + 'different variant.';
36
30
  return {
37
31
  content: [
38
32
  {
39
33
  type: 'text',
40
- text: `## Available Generators\n\n${guidance}\n\n${entries.join('\n\n')}\n`,
41
- },
42
- ],
34
+ text: `## Available Generators\n\n${guidance}\n\n${entries.join('\n\n')}\n`
35
+ }
36
+ ]
43
37
  };
44
38
  });
45
39
  };
46
- exports.addListGeneratorsTool = addListGeneratorsTool;
40
+
47
41
  //# sourceMappingURL=list-generators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-generators.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/mcp-server/tools/list-generators.ts"],"names":[],"mappings":";;;AAMA,sDAG2B;AAC3B,sCAAiD;AAEjD;;;;;;;;;;;GAWG;AACI,MAAM,qBAAqB,GAAG,CACnC,MAAiB,EACjB,UAA6B,EAC7B,EAAE;IACF,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,WAAW,EACT,iEAAiE;YACjE,kEAAkE;YAClE,qEAAqE;YACrE,oDAAoD;QACtD,WAAW,EAAE,EAAE,cAAc,EAAE,6BAAoB,EAAE;KACtD,EACD,KAAK,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE;QAC3B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACzB,MAAM,IAAI,GAAG,IAAA,oCAAmB,EAAC,cAAc,EAAE,CAAC,CAAC,CAAC;YACpD,MAAM,UAAU,GAAG,MAAM,IAAA,6CAA4B,EAAC,CAAC,CAAC,CAAC;YACzD,OAAO,OAAO,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC/D,CAAC,CAAC,CACH,CAAC;QACF,MAAM,QAAQ,GACZ,sEAAsE;YACtE,4EAA4E;YAC5E,sEAAsE;YACtE,kEAAkE;YAClE,oBAAoB,CAAC;QACvB,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,8BAA8B,QAAQ,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI;iBAC5E;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAtCW,QAAA,qBAAqB,yBAsChC"}
1
+ {"version":3,"sources":["../../../../../../packages/nx-plugin/src/mcp-server/tools/list-generators.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';\nimport type { NxGeneratorInfo } from '../../utils/generators.js';\nimport {\n renderFilterableOptionsAsync,\n renderGeneratorInfo,\n} from '../generator-info.js';\nimport { PackageManagerSchema } from '../schema.js';\n\n/**\n * Adds a tool which lists details about the available generators.\n *\n * Each entry carries a \"Filterable options\" section that tells the agent\n * which keys it can pass to `generator-guide` to narrow the guide response\n * to only the branches relevant to its selection. The keys come from two\n * sources, merged transparently:\n * - Enum properties from the generator's JSON schema.\n * - The union of `when:` frontmatter keys across the generator's guide\n * pages (lets multi-variant generators like `connection` surface\n * `sourceType` / `targetType` / `protocol` without any bespoke config).\n */\nexport const addListGeneratorsTool = (\n server: McpServer,\n generators: NxGeneratorInfo[],\n) => {\n server.registerTool(\n 'list-generators',\n {\n description:\n 'Tool to discover the available generators and how to run them. ' +\n 'Each entry includes a \"Filterable options\" section — pass those ' +\n 'keys to `generator-guide` before invoking a generator so the guide ' +\n 'is narrowed to the variant you intend to scaffold.',\n inputSchema: { packageManager: PackageManagerSchema },\n },\n async ({ packageManager }) => {\n const entries = await Promise.all(\n generators.map(async (g) => {\n const info = renderGeneratorInfo(packageManager, g);\n const filterable = await renderFilterableOptionsAsync(g);\n return `### ${info}${filterable ? `\\n${filterable}\\n` : ''}`;\n }),\n );\n const guidance =\n 'Before running any generator below, call `generator-guide` with the ' +\n \"generator's id and `options` populated from its `generator-guide options` \" +\n 'list — the guide is returned narrowed to the branches that apply to ' +\n 'those choices, which keeps you from mixing configuration from a ' +\n 'different variant.';\n return {\n content: [\n {\n type: 'text' as const,\n text: `## Available Generators\\n\\n${guidance}\\n\\n${entries.join('\\n\\n')}\\n`,\n },\n ],\n };\n },\n );\n};\n"],"names":["renderFilterableOptionsAsync","renderGeneratorInfo","PackageManagerSchema","addListGeneratorsTool","server","generators","registerTool","description","inputSchema","packageManager","entries","Promise","all","map","g","info","filterable","guidance","content","type","text","join"],"mappings":"AAAA;;;CAGC,GAGD,SACEA,4BAA4B,EAC5BC,mBAAmB,QACd,uBAAuB;AAC9B,SAASC,oBAAoB,QAAQ,eAAe;AAEpD;;;;;;;;;;;CAWC,GACD,OAAO,MAAMC,wBAAwB,CACnCC,QACAC;IAEAD,OAAOE,YAAY,CACjB,mBACA;QACEC,aACE,oEACA,qEACA,wEACA;QACFC,aAAa;YAAEC,gBAAgBP;QAAqB;IACtD,GACA,OAAO,EAAEO,cAAc,EAAE;QACvB,MAAMC,UAAU,MAAMC,QAAQC,GAAG,CAC/BP,WAAWQ,GAAG,CAAC,OAAOC;YACpB,MAAMC,OAAOd,oBAAoBQ,gBAAgBK;YACjD,MAAME,aAAa,MAAMhB,6BAA6Bc;YACtD,OAAO,CAAC,IAAI,EAAEC,OAAOC,aAAa,CAAC,EAAE,EAAEA,WAAW,EAAE,CAAC,GAAG,IAAI;QAC9D;QAEF,MAAMC,WACJ,yEACA,+EACA,yEACA,qEACA;QACF,OAAO;YACLC,SAAS;gBACP;oBACEC,MAAM;oBACNC,MAAM,CAAC,2BAA2B,EAAEH,SAAS,IAAI,EAAEP,QAAQW,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC7E;aACD;QACH;IACF;AAEJ,EAAE"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
6
+ import type { NxGeneratorInfo } from '../../utils/generators.js';
7
+ /**
8
+ * Add a tool which guides an agent through upgrading Nx and @aws/nx-plugin in a
9
+ * workspace, returning the `upgrading` docs page.
10
+ */
11
+ export declare const addUpgradeWorkspaceTool: (server: McpServer, generators: NxGeneratorInfo[]) => void;
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ import { fetchGuidePages } from "../generator-info.js";
5
+ import { PackageManagerSchema } from "../schema.js";
6
+ /** The guide page backing this tool, so it never drifts from the docs. */ const UPGRADING_GUIDE = 'upgrading';
7
+ /**
8
+ * Add a tool which guides an agent through upgrading Nx and @aws/nx-plugin in a
9
+ * workspace, returning the `upgrading` docs page.
10
+ */ export const addUpgradeWorkspaceTool = (server, generators)=>{
11
+ server.registerTool('upgrade-workspace', {
12
+ title: 'Upgrade Workspace',
13
+ description: 'Tool for upgrading Nx and the Nx Plugin for AWS in a workspace. Use this when a user wants to update @aws/nx-plugin or Nx to a newer version, or asks how to run migrations with nx migrate.',
14
+ inputSchema: {
15
+ packageManager: PackageManagerSchema.optional()
16
+ }
17
+ }, async ({ packageManager })=>{
18
+ const guide = await fetchGuidePages([
19
+ UPGRADING_GUIDE
20
+ ], generators, packageManager);
21
+ return {
22
+ content: [
23
+ {
24
+ type: 'text',
25
+ text: guide
26
+ }
27
+ ]
28
+ };
29
+ });
30
+ };
31
+
32
+ //# sourceMappingURL=upgrade-workspace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/nx-plugin/src/mcp-server/tools/upgrade-workspace.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';\nimport type { NxGeneratorInfo } from '../../utils/generators.js';\nimport { fetchGuidePages } from '../generator-info.js';\nimport { PackageManagerSchema } from '../schema.js';\n\n/** The guide page backing this tool, so it never drifts from the docs. */\nconst UPGRADING_GUIDE = 'upgrading';\n\n/**\n * Add a tool which guides an agent through upgrading Nx and @aws/nx-plugin in a\n * workspace, returning the `upgrading` docs page.\n */\nexport const addUpgradeWorkspaceTool = (\n server: McpServer,\n generators: NxGeneratorInfo[],\n) => {\n server.registerTool(\n 'upgrade-workspace',\n {\n title: 'Upgrade Workspace',\n description:\n 'Tool for upgrading Nx and the Nx Plugin for AWS in a workspace. Use this when a user wants to update @aws/nx-plugin or Nx to a newer version, or asks how to run migrations with nx migrate.',\n inputSchema: {\n packageManager: PackageManagerSchema.optional(),\n },\n },\n async ({ packageManager }) => {\n const guide = await fetchGuidePages(\n [UPGRADING_GUIDE],\n generators,\n packageManager,\n );\n return {\n content: [\n {\n type: 'text' as const,\n text: guide,\n },\n ],\n };\n },\n );\n};\n"],"names":["fetchGuidePages","PackageManagerSchema","UPGRADING_GUIDE","addUpgradeWorkspaceTool","server","generators","registerTool","title","description","inputSchema","packageManager","optional","guide","content","type","text"],"mappings":"AAAA;;;CAGC,GAGD,SAASA,eAAe,QAAQ,uBAAuB;AACvD,SAASC,oBAAoB,QAAQ,eAAe;AAEpD,wEAAwE,GACxE,MAAMC,kBAAkB;AAExB;;;CAGC,GACD,OAAO,MAAMC,0BAA0B,CACrCC,QACAC;IAEAD,OAAOE,YAAY,CACjB,qBACA;QACEC,OAAO;QACPC,aACE;QACFC,aAAa;YACXC,gBAAgBT,qBAAqBU,QAAQ;QAC/C;IACF,GACA,OAAO,EAAED,cAAc,EAAE;QACvB,MAAME,QAAQ,MAAMZ,gBAClB;YAACE;SAAgB,EACjBG,YACAK;QAEF,OAAO;YACLG,SAAS;gBACP;oBACEC,MAAM;oBACNC,MAAMH;gBACR;aACD;QACH;IACF;AAEJ,EAAE"}
@@ -0,0 +1,3 @@
1
+ {
2
+ "description": "Add an assemble target as the artifact-only sibling of build, point the deploy targets at it, and narrow compile targets depending on ^build to ^compile"
3
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { type MigrationReturnObject, type Tree } from '@nx/devkit';
6
+ export default function migration(tree: Tree): Promise<MigrationReturnObject>;
@@ -0,0 +1,241 @@
1
+ /**
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */ import { getProjects, updateProjectConfiguration } from "@nx/devkit";
5
+ import { INFRA_APP_GENERATOR_INFO } from "../../../infra/app/generator.js";
6
+ import { TERRAFORM_PROJECT_GENERATOR_INFO } from "../../../terraform/project/generator.js";
7
+ import { REACT_WEBSITE_APP_GENERATOR_INFO } from "../../../ts/react-website/app/generator.js";
8
+ import { formatFilesInSubtree } from "../../../utils/format.js";
9
+ import { normalizeTargetKeyOrder } from "../../../utils/nx.js";
10
+ import { sortObjectKeys } from "../../../utils/object.js";
11
+ /**
12
+ * `build` runs everything: it produces a project's deployable artifacts and runs
13
+ * its quality gates (lint, test, typecheck). The deploy targets depended on
14
+ * `^build`, so deploying pulled in every upstream project's gates too — work a
15
+ * deploy does not need.
16
+ *
17
+ * `assemble` is the artifact-only sibling of `build`, which the deploy targets
18
+ * depend on instead. `build` is untouched, so it remains the target that runs
19
+ * everything.
20
+ *
21
+ * Each project's `assemble` is derived from what its own `build` declares rather
22
+ * than from the generator that created it, so a project whose build has been
23
+ * extended with an extra artifact target keeps producing it. Anything this
24
+ * migration cannot classify is reported via `nextSteps` and left alone.
25
+ *
26
+ * A `compile` target depending on `^build` is also narrowed to `^compile`, which
27
+ * is what keeps `^assemble` from pulling the upstream quality gates back in.
28
+ *
29
+ * How to write a migration:
30
+ * - https://nx.dev/docs/kb/migration-generators
31
+ * - What `nextSteps` means: https://nx.dev/docs/reference/devkit/MigrationReturnObject
32
+ */ /**
33
+ * Targets that produce a deployable artifact, so they belong on `assemble`.
34
+ *
35
+ * `bundle-migration` and `bundle-create-db-user` are the RDB bundles, which the
36
+ * generator registers on `build` directly as well as on `bundle`.
37
+ */ const ARTIFACT_TARGETS = [
38
+ 'compile',
39
+ 'bundle',
40
+ 'bundle-migration',
41
+ 'bundle-create-db-user',
42
+ 'docker',
43
+ 'openapi',
44
+ 'operations',
45
+ 'synth',
46
+ 'generate-ssdk'
47
+ ];
48
+ /**
49
+ * Targets that check the code rather than produce an artifact. Listed so an
50
+ * unrecognised entry is reported rather than silently classified either way.
51
+ *
52
+ * `fmt` is the Terraform formatter, and `checkov` scans what the build has
53
+ * already produced, so neither produces an artifact of its own.
54
+ */ const QUALITY_GATES = [
55
+ 'lint',
56
+ 'format',
57
+ 'fmt',
58
+ 'test',
59
+ 'typecheck',
60
+ 'checkov'
61
+ ];
62
+ /** The CDK targets whose `^build` becomes `^assemble`. */ const CDK_DEPLOY_TARGETS = [
63
+ 'synth',
64
+ 'deploy',
65
+ 'deploy-sandbox',
66
+ 'destroy',
67
+ 'destroy-sandbox'
68
+ ];
69
+ /** True when the project was created by the given generator. */ const generatedBy = (project, id)=>project.metadata?.generator === id;
70
+ /**
71
+ * `generate:<name>` targets write generated source (an API client, operations
72
+ * metadata) that the infrastructure reads, so they produce artifacts.
73
+ */ const isGenerateTarget = (target)=>target.startsWith('generate:') || target === 'generate';
74
+ /**
75
+ * The `assemble` dependencies derived from a project's `build`.
76
+ *
77
+ * Returns `'unclassifiable'` when `build` declares something this migration
78
+ * cannot classify, so the caller reports it rather than guessing. A `build` that
79
+ * declares nothing at all is not unclassifiable — it yields an empty list, and
80
+ * the project gets a no-op `assemble`.
81
+ */ const assembleDependenciesFor = (build)=>{
82
+ const dependsOn = build?.dependsOn;
83
+ if (dependsOn === undefined) return [];
84
+ if (!Array.isArray(dependsOn)) return 'unclassifiable';
85
+ const dependencies = [];
86
+ for (const dependency of dependsOn){
87
+ // The object form is valid Nx, and this plugin emits it. It names another
88
+ // project's target explicitly, so it is classified on that target.
89
+ if (typeof dependency !== 'string') {
90
+ const objectTarget = dependency?.target;
91
+ if (typeof objectTarget !== 'string') return 'unclassifiable';
92
+ if (objectTarget === 'build') {
93
+ dependencies.push({
94
+ ...dependency,
95
+ target: 'assemble'
96
+ });
97
+ continue;
98
+ }
99
+ if (ARTIFACT_TARGETS.includes(objectTarget) || isGenerateTarget(objectTarget)) {
100
+ dependencies.push(dependency);
101
+ continue;
102
+ }
103
+ if (QUALITY_GATES.includes(objectTarget)) continue;
104
+ return 'unclassifiable';
105
+ }
106
+ const [, crossProjectTarget] = dependency.match(/^.+:([^:]+)$/) ?? [];
107
+ if (crossProjectTarget === 'build') {
108
+ // Mirror the cross-project edge against the consumed project's own
109
+ // `assemble`, which keeps the artifact-only chain closed.
110
+ dependencies.push(dependency.replace(/:build$/, ':assemble'));
111
+ continue;
112
+ }
113
+ if (ARTIFACT_TARGETS.includes(crossProjectTarget)) {
114
+ // Already names an artifact target on the other project, so it carries
115
+ // over unchanged.
116
+ dependencies.push(dependency);
117
+ continue;
118
+ }
119
+ if (crossProjectTarget && QUALITY_GATES.includes(crossProjectTarget)) {
120
+ continue;
121
+ }
122
+ if (ARTIFACT_TARGETS.includes(dependency) || isGenerateTarget(dependency)) {
123
+ dependencies.push(dependency);
124
+ continue;
125
+ }
126
+ if (QUALITY_GATES.includes(dependency)) continue;
127
+ return 'unclassifiable';
128
+ }
129
+ return dependencies;
130
+ };
131
+ /**
132
+ * Adds the project's `assemble`, derived from its `build`. Returns whether the
133
+ * project was changed.
134
+ */ const addAssembleTarget = (projectName, project, nextSteps)=>{
135
+ // Already migrated. A project's own `package` target is deliberately left
136
+ // alone: that name is for publishing to a package manager, a different job.
137
+ if (project.targets.assemble) return false;
138
+ // Nothing to derive an `assemble` from, so there is nothing to do. Consumers
139
+ // reference `<project>:build`, which is untouched.
140
+ if (!project.targets.build) return false;
141
+ const dependencies = assembleDependenciesFor(project.targets.build);
142
+ if (dependencies === 'unclassifiable') {
143
+ // Consumers have already been repointed at this project's `assemble`, and Nx
144
+ // silently skips a dependency whose target does not exist, so say so: an
145
+ // unmigrated project here means its artifacts stop being built for a deploy.
146
+ nextSteps.push(`Add an 'assemble' target to ${projectName} by hand — its 'build' target declares dependencies this migration does not recognise. It should depend on whichever of build's dependencies produce deployable artifacts, and on none of its lint/test/typecheck gates. Projects that consume ${projectName} now depend on '${projectName}:assemble', and Nx silently skips a dependency on a target that does not exist, so until you add it a deploy will not rebuild this project's artifacts.`);
147
+ return false;
148
+ }
149
+ project.targets.assemble = normalizeTargetKeyOrder(dependencies.length > 0 ? {
150
+ dependsOn: dependencies
151
+ } : {
152
+ executor: 'nx:noop'
153
+ });
154
+ return true;
155
+ };
156
+ /** Repoints one entry of a target's `dependsOn`. */ const repoint = (target, from, to)=>{
157
+ const dependsOn = target?.dependsOn;
158
+ if (!Array.isArray(dependsOn)) return 'diverged';
159
+ if (dependsOn.includes(to)) return 'already';
160
+ const index = dependsOn.indexOf(from);
161
+ if (index === -1) return 'diverged';
162
+ dependsOn[index] = to;
163
+ return 'repointed';
164
+ };
165
+ /** Points a CDK infrastructure project's deploy targets at `^assemble`. */ const migrateCdkDeployTargets = (projectName, project, nextSteps)=>{
166
+ let changed = false;
167
+ const diverged = [];
168
+ for (const name of CDK_DEPLOY_TARGETS){
169
+ if (!project.targets[name]) continue;
170
+ const result = repoint(project.targets[name], '^build', '^assemble');
171
+ if (result === 'repointed') changed = true;
172
+ if (result === 'diverged') diverged.push(name);
173
+ }
174
+ if (diverged.length > 0) {
175
+ const targets = diverged.map((t)=>`'${t}'`).join(', ');
176
+ const singular = diverged.length === 1;
177
+ nextSteps.push(`Point ${targets} on ${projectName} at '^assemble' by hand — ${singular ? 'it does' : 'they do'} not depend on '^build' as the generator left ${singular ? 'it' : 'them'}.`);
178
+ }
179
+ return changed;
180
+ };
181
+ /**
182
+ * Points a Terraform application's `plan` at `assemble`, so planning no longer
183
+ * runs the module tests.
184
+ */ const migrateTerraformPlanTarget = (projectName, project, nextSteps)=>{
185
+ const result = repoint(project.targets.plan, 'build', 'assemble');
186
+ if (result === 'diverged') {
187
+ nextSteps.push(`Point 'plan' on ${projectName} at 'assemble' by hand — it does not depend on 'build' as the generator left it.`);
188
+ }
189
+ return result === 'repointed';
190
+ };
191
+ /**
192
+ * A website's `compile` needs its dependencies' declarations, which `compile`
193
+ * emits — not their lint or test results. Narrowing it is what keeps `^assemble`
194
+ * from pulling the upstream quality gates back in.
195
+ *
196
+ * Keyed off the target's shape rather than the generator, so a project that
197
+ * adopted the same `^build` compile is narrowed too. A project the plugin did
198
+ * not generate is reported, since its `compile` may depend on `^build` for a
199
+ * reason this migration cannot see.
200
+ */ const narrowCompileTarget = (projectName, project, nextSteps)=>{
201
+ if (repoint(project.targets.compile, '^build', '^compile') !== 'repointed') {
202
+ return false;
203
+ }
204
+ if (!generatedBy(project, REACT_WEBSITE_APP_GENERATOR_INFO.id)) {
205
+ nextSteps.push(`Narrowed 'compile' on ${projectName} from '^build' to '^compile', so it no longer waits for its dependencies' lint and test targets. Revert it if that project's compile relied on an upstream step that only 'build' runs.`);
206
+ }
207
+ return true;
208
+ };
209
+ export default async function migration(tree) {
210
+ const nextSteps = [];
211
+ for (const [projectName, project] of getProjects(tree)){
212
+ project.targets ??= {};
213
+ let changed = addAssembleTarget(projectName, project, nextSteps);
214
+ if (generatedBy(project, INFRA_APP_GENERATOR_INFO.id)) {
215
+ // `synth` is the cloud assembly, so it belongs on `assemble`; `checkov`
216
+ // scans that assembly and stays a `build`-only gate.
217
+ const assemble = project.targets.assemble;
218
+ if (assemble?.dependsOn && !assemble.dependsOn.includes('synth')) {
219
+ assemble.dependsOn.push('synth');
220
+ changed = true;
221
+ }
222
+ changed = migrateCdkDeployTargets(projectName, project, nextSteps) || changed;
223
+ }
224
+ if (generatedBy(project, TERRAFORM_PROJECT_GENERATOR_INFO.id) && project.projectType === 'application') {
225
+ changed = migrateTerraformPlanTarget(projectName, project, nextSteps) || changed;
226
+ }
227
+ changed = narrowCompileTarget(projectName, project, nextSteps) || changed;
228
+ if (changed) {
229
+ updateProjectConfiguration(tree, projectName, {
230
+ ...project,
231
+ targets: sortObjectKeys(project.targets)
232
+ });
233
+ }
234
+ }
235
+ await formatFilesInSubtree(tree);
236
+ return {
237
+ nextSteps
238
+ };
239
+ }
240
+
241
+ //# sourceMappingURL=migration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../packages/nx-plugin/src/migrations/latest/add-assemble-target/migration.ts"],"sourcesContent":["/**\n * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n * SPDX-License-Identifier: Apache-2.0\n */\nimport {\n getProjects,\n type MigrationReturnObject,\n type ProjectConfiguration,\n type Tree,\n updateProjectConfiguration,\n} from '@nx/devkit';\nimport { INFRA_APP_GENERATOR_INFO } from '../../../infra/app/generator.js';\nimport { TERRAFORM_PROJECT_GENERATOR_INFO } from '../../../terraform/project/generator.js';\nimport { REACT_WEBSITE_APP_GENERATOR_INFO } from '../../../ts/react-website/app/generator.js';\nimport { formatFilesInSubtree } from '../../../utils/format.js';\nimport {\n normalizeTargetKeyOrder,\n type TargetDependency,\n} from '../../../utils/nx.js';\nimport { sortObjectKeys } from '../../../utils/object.js';\n\n/**\n * `build` runs everything: it produces a project's deployable artifacts and runs\n * its quality gates (lint, test, typecheck). The deploy targets depended on\n * `^build`, so deploying pulled in every upstream project's gates too — work a\n * deploy does not need.\n *\n * `assemble` is the artifact-only sibling of `build`, which the deploy targets\n * depend on instead. `build` is untouched, so it remains the target that runs\n * everything.\n *\n * Each project's `assemble` is derived from what its own `build` declares rather\n * than from the generator that created it, so a project whose build has been\n * extended with an extra artifact target keeps producing it. Anything this\n * migration cannot classify is reported via `nextSteps` and left alone.\n *\n * A `compile` target depending on `^build` is also narrowed to `^compile`, which\n * is what keeps `^assemble` from pulling the upstream quality gates back in.\n *\n * How to write a migration:\n * - https://nx.dev/docs/kb/migration-generators\n * - What `nextSteps` means: https://nx.dev/docs/reference/devkit/MigrationReturnObject\n */\n\n/**\n * Targets that produce a deployable artifact, so they belong on `assemble`.\n *\n * `bundle-migration` and `bundle-create-db-user` are the RDB bundles, which the\n * generator registers on `build` directly as well as on `bundle`.\n */\nconst ARTIFACT_TARGETS = [\n 'compile',\n 'bundle',\n 'bundle-migration',\n 'bundle-create-db-user',\n 'docker',\n 'openapi',\n 'operations',\n 'synth',\n 'generate-ssdk',\n];\n\n/**\n * Targets that check the code rather than produce an artifact. Listed so an\n * unrecognised entry is reported rather than silently classified either way.\n *\n * `fmt` is the Terraform formatter, and `checkov` scans what the build has\n * already produced, so neither produces an artifact of its own.\n */\nconst QUALITY_GATES = ['lint', 'format', 'fmt', 'test', 'typecheck', 'checkov'];\n\n/** The CDK targets whose `^build` becomes `^assemble`. */\nconst CDK_DEPLOY_TARGETS = [\n 'synth',\n 'deploy',\n 'deploy-sandbox',\n 'destroy',\n 'destroy-sandbox',\n];\n\n/** True when the project was created by the given generator. */\nconst generatedBy = (project: ProjectConfiguration, id: string): boolean =>\n (project.metadata as { generator?: string } | undefined)?.generator === id;\n\n/**\n * `generate:<name>` targets write generated source (an API client, operations\n * metadata) that the infrastructure reads, so they produce artifacts.\n */\nconst isGenerateTarget = (target: string): boolean =>\n target.startsWith('generate:') || target === 'generate';\n\n/**\n * The `assemble` dependencies derived from a project's `build`.\n *\n * Returns `'unclassifiable'` when `build` declares something this migration\n * cannot classify, so the caller reports it rather than guessing. A `build` that\n * declares nothing at all is not unclassifiable — it yields an empty list, and\n * the project gets a no-op `assemble`.\n */\nconst assembleDependenciesFor = (\n build: ProjectConfiguration['targets'][string] | undefined,\n): TargetDependency[] | 'unclassifiable' => {\n const dependsOn = build?.dependsOn;\n if (dependsOn === undefined) return [];\n if (!Array.isArray(dependsOn)) return 'unclassifiable';\n\n const dependencies: TargetDependency[] = [];\n for (const dependency of dependsOn) {\n // The object form is valid Nx, and this plugin emits it. It names another\n // project's target explicitly, so it is classified on that target.\n if (typeof dependency !== 'string') {\n const objectTarget = (dependency as { target?: unknown })?.target;\n if (typeof objectTarget !== 'string') return 'unclassifiable';\n if (objectTarget === 'build') {\n dependencies.push({ ...dependency, target: 'assemble' });\n continue;\n }\n if (\n ARTIFACT_TARGETS.includes(objectTarget) ||\n isGenerateTarget(objectTarget)\n ) {\n dependencies.push(dependency);\n continue;\n }\n if (QUALITY_GATES.includes(objectTarget)) continue;\n return 'unclassifiable';\n }\n const [, crossProjectTarget] = dependency.match(/^.+:([^:]+)$/) ?? [];\n if (crossProjectTarget === 'build') {\n // Mirror the cross-project edge against the consumed project's own\n // `assemble`, which keeps the artifact-only chain closed.\n dependencies.push(dependency.replace(/:build$/, ':assemble'));\n continue;\n }\n if (ARTIFACT_TARGETS.includes(crossProjectTarget)) {\n // Already names an artifact target on the other project, so it carries\n // over unchanged.\n dependencies.push(dependency);\n continue;\n }\n if (crossProjectTarget && QUALITY_GATES.includes(crossProjectTarget)) {\n continue;\n }\n if (ARTIFACT_TARGETS.includes(dependency) || isGenerateTarget(dependency)) {\n dependencies.push(dependency);\n continue;\n }\n if (QUALITY_GATES.includes(dependency)) continue;\n return 'unclassifiable';\n }\n return dependencies;\n};\n\n/**\n * Adds the project's `assemble`, derived from its `build`. Returns whether the\n * project was changed.\n */\nconst addAssembleTarget = (\n projectName: string,\n project: ProjectConfiguration,\n nextSteps: string[],\n): boolean => {\n // Already migrated. A project's own `package` target is deliberately left\n // alone: that name is for publishing to a package manager, a different job.\n if (project.targets.assemble) return false;\n\n // Nothing to derive an `assemble` from, so there is nothing to do. Consumers\n // reference `<project>:build`, which is untouched.\n if (!project.targets.build) return false;\n\n const dependencies = assembleDependenciesFor(project.targets.build);\n\n if (dependencies === 'unclassifiable') {\n // Consumers have already been repointed at this project's `assemble`, and Nx\n // silently skips a dependency whose target does not exist, so say so: an\n // unmigrated project here means its artifacts stop being built for a deploy.\n nextSteps.push(\n `Add an 'assemble' target to ${projectName} by hand — its 'build' target declares dependencies this migration does not recognise. It should depend on whichever of build's dependencies produce deployable artifacts, and on none of its lint/test/typecheck gates. Projects that consume ${projectName} now depend on '${projectName}:assemble', and Nx silently skips a dependency on a target that does not exist, so until you add it a deploy will not rebuild this project's artifacts.`,\n );\n return false;\n }\n\n project.targets.assemble = normalizeTargetKeyOrder(\n dependencies.length > 0\n ? { dependsOn: dependencies }\n : { executor: 'nx:noop' },\n );\n return true;\n};\n\n/** Repoints one entry of a target's `dependsOn`. */\nconst repoint = (\n target: ProjectConfiguration['targets'][string] | undefined,\n from: string,\n to: string,\n): 'repointed' | 'already' | 'diverged' => {\n const dependsOn = target?.dependsOn;\n if (!Array.isArray(dependsOn)) return 'diverged';\n if (dependsOn.includes(to)) return 'already';\n const index = dependsOn.indexOf(from);\n if (index === -1) return 'diverged';\n dependsOn[index] = to;\n return 'repointed';\n};\n\n/** Points a CDK infrastructure project's deploy targets at `^assemble`. */\nconst migrateCdkDeployTargets = (\n projectName: string,\n project: ProjectConfiguration,\n nextSteps: string[],\n): boolean => {\n let changed = false;\n const diverged: string[] = [];\n\n for (const name of CDK_DEPLOY_TARGETS) {\n if (!project.targets[name]) continue;\n const result = repoint(project.targets[name], '^build', '^assemble');\n if (result === 'repointed') changed = true;\n if (result === 'diverged') diverged.push(name);\n }\n\n if (diverged.length > 0) {\n const targets = diverged.map((t) => `'${t}'`).join(', ');\n const singular = diverged.length === 1;\n nextSteps.push(\n `Point ${targets} on ${projectName} at '^assemble' by hand — ${singular ? 'it does' : 'they do'} not depend on '^build' as the generator left ${singular ? 'it' : 'them'}.`,\n );\n }\n return changed;\n};\n\n/**\n * Points a Terraform application's `plan` at `assemble`, so planning no longer\n * runs the module tests.\n */\nconst migrateTerraformPlanTarget = (\n projectName: string,\n project: ProjectConfiguration,\n nextSteps: string[],\n): boolean => {\n const result = repoint(project.targets.plan, 'build', 'assemble');\n if (result === 'diverged') {\n nextSteps.push(\n `Point 'plan' on ${projectName} at 'assemble' by hand — it does not depend on 'build' as the generator left it.`,\n );\n }\n return result === 'repointed';\n};\n\n/**\n * A website's `compile` needs its dependencies' declarations, which `compile`\n * emits — not their lint or test results. Narrowing it is what keeps `^assemble`\n * from pulling the upstream quality gates back in.\n *\n * Keyed off the target's shape rather than the generator, so a project that\n * adopted the same `^build` compile is narrowed too. A project the plugin did\n * not generate is reported, since its `compile` may depend on `^build` for a\n * reason this migration cannot see.\n */\nconst narrowCompileTarget = (\n projectName: string,\n project: ProjectConfiguration,\n nextSteps: string[],\n): boolean => {\n if (repoint(project.targets.compile, '^build', '^compile') !== 'repointed') {\n return false;\n }\n if (!generatedBy(project, REACT_WEBSITE_APP_GENERATOR_INFO.id)) {\n nextSteps.push(\n `Narrowed 'compile' on ${projectName} from '^build' to '^compile', so it no longer waits for its dependencies' lint and test targets. Revert it if that project's compile relied on an upstream step that only 'build' runs.`,\n );\n }\n return true;\n};\n\nexport default async function migration(\n tree: Tree,\n): Promise<MigrationReturnObject> {\n const nextSteps: string[] = [];\n\n for (const [projectName, project] of getProjects(tree)) {\n project.targets ??= {};\n\n let changed = addAssembleTarget(projectName, project, nextSteps);\n\n if (generatedBy(project, INFRA_APP_GENERATOR_INFO.id)) {\n // `synth` is the cloud assembly, so it belongs on `assemble`; `checkov`\n // scans that assembly and stays a `build`-only gate.\n const assemble = project.targets.assemble;\n if (assemble?.dependsOn && !assemble.dependsOn.includes('synth')) {\n assemble.dependsOn.push('synth');\n changed = true;\n }\n changed =\n migrateCdkDeployTargets(projectName, project, nextSteps) || changed;\n }\n\n if (\n generatedBy(project, TERRAFORM_PROJECT_GENERATOR_INFO.id) &&\n project.projectType === 'application'\n ) {\n changed =\n migrateTerraformPlanTarget(projectName, project, nextSteps) || changed;\n }\n\n changed = narrowCompileTarget(projectName, project, nextSteps) || changed;\n\n if (changed) {\n updateProjectConfiguration(tree, projectName, {\n ...project,\n targets: sortObjectKeys(project.targets),\n });\n }\n }\n\n await formatFilesInSubtree(tree);\n\n return { nextSteps };\n}\n"],"names":["getProjects","updateProjectConfiguration","INFRA_APP_GENERATOR_INFO","TERRAFORM_PROJECT_GENERATOR_INFO","REACT_WEBSITE_APP_GENERATOR_INFO","formatFilesInSubtree","normalizeTargetKeyOrder","sortObjectKeys","ARTIFACT_TARGETS","QUALITY_GATES","CDK_DEPLOY_TARGETS","generatedBy","project","id","metadata","generator","isGenerateTarget","target","startsWith","assembleDependenciesFor","build","dependsOn","undefined","Array","isArray","dependencies","dependency","objectTarget","push","includes","crossProjectTarget","match","replace","addAssembleTarget","projectName","nextSteps","targets","assemble","length","executor","repoint","from","to","index","indexOf","migrateCdkDeployTargets","changed","diverged","name","result","map","t","join","singular","migrateTerraformPlanTarget","plan","narrowCompileTarget","compile","migration","tree","projectType"],"mappings":"AAAA;;;CAGC,GACD,SACEA,WAAW,EAIXC,0BAA0B,QACrB,aAAa;AACpB,SAASC,wBAAwB,QAAQ,kCAAkC;AAC3E,SAASC,gCAAgC,QAAQ,0CAA0C;AAC3F,SAASC,gCAAgC,QAAQ,6CAA6C;AAC9F,SAASC,oBAAoB,QAAQ,2BAA2B;AAChE,SACEC,uBAAuB,QAElB,uBAAuB;AAC9B,SAASC,cAAc,QAAQ,2BAA2B;AAE1D;;;;;;;;;;;;;;;;;;;;;CAqBC,GAED;;;;;CAKC,GACD,MAAMC,mBAAmB;IACvB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AAED;;;;;;CAMC,GACD,MAAMC,gBAAgB;IAAC;IAAQ;IAAU;IAAO;IAAQ;IAAa;CAAU;AAE/E,wDAAwD,GACxD,MAAMC,qBAAqB;IACzB;IACA;IACA;IACA;IACA;CACD;AAED,8DAA8D,GAC9D,MAAMC,cAAc,CAACC,SAA+BC,KAClD,AAACD,QAAQE,QAAQ,EAAyCC,cAAcF;AAE1E;;;CAGC,GACD,MAAMG,mBAAmB,CAACC,SACxBA,OAAOC,UAAU,CAAC,gBAAgBD,WAAW;AAE/C;;;;;;;CAOC,GACD,MAAME,0BAA0B,CAC9BC;IAEA,MAAMC,YAAYD,OAAOC;IACzB,IAAIA,cAAcC,WAAW,OAAO,EAAE;IACtC,IAAI,CAACC,MAAMC,OAAO,CAACH,YAAY,OAAO;IAEtC,MAAMI,eAAmC,EAAE;IAC3C,KAAK,MAAMC,cAAcL,UAAW;QAClC,0EAA0E;QAC1E,mEAAmE;QACnE,IAAI,OAAOK,eAAe,UAAU;YAClC,MAAMC,eAAgBD,YAAqCT;YAC3D,IAAI,OAAOU,iBAAiB,UAAU,OAAO;YAC7C,IAAIA,iBAAiB,SAAS;gBAC5BF,aAAaG,IAAI,CAAC;oBAAE,GAAGF,UAAU;oBAAET,QAAQ;gBAAW;gBACtD;YACF;YACA,IACET,iBAAiBqB,QAAQ,CAACF,iBAC1BX,iBAAiBW,eACjB;gBACAF,aAAaG,IAAI,CAACF;gBAClB;YACF;YACA,IAAIjB,cAAcoB,QAAQ,CAACF,eAAe;YAC1C,OAAO;QACT;QACA,MAAM,GAAGG,mBAAmB,GAAGJ,WAAWK,KAAK,CAAC,mBAAmB,EAAE;QACrE,IAAID,uBAAuB,SAAS;YAClC,mEAAmE;YACnE,0DAA0D;YAC1DL,aAAaG,IAAI,CAACF,WAAWM,OAAO,CAAC,WAAW;YAChD;QACF;QACA,IAAIxB,iBAAiBqB,QAAQ,CAACC,qBAAqB;YACjD,uEAAuE;YACvE,kBAAkB;YAClBL,aAAaG,IAAI,CAACF;YAClB;QACF;QACA,IAAII,sBAAsBrB,cAAcoB,QAAQ,CAACC,qBAAqB;YACpE;QACF;QACA,IAAItB,iBAAiBqB,QAAQ,CAACH,eAAeV,iBAAiBU,aAAa;YACzED,aAAaG,IAAI,CAACF;YAClB;QACF;QACA,IAAIjB,cAAcoB,QAAQ,CAACH,aAAa;QACxC,OAAO;IACT;IACA,OAAOD;AACT;AAEA;;;CAGC,GACD,MAAMQ,oBAAoB,CACxBC,aACAtB,SACAuB;IAEA,0EAA0E;IAC1E,4EAA4E;IAC5E,IAAIvB,QAAQwB,OAAO,CAACC,QAAQ,EAAE,OAAO;IAErC,6EAA6E;IAC7E,mDAAmD;IACnD,IAAI,CAACzB,QAAQwB,OAAO,CAAChB,KAAK,EAAE,OAAO;IAEnC,MAAMK,eAAeN,wBAAwBP,QAAQwB,OAAO,CAAChB,KAAK;IAElE,IAAIK,iBAAiB,kBAAkB;QACrC,6EAA6E;QAC7E,yEAAyE;QACzE,6EAA6E;QAC7EU,UAAUP,IAAI,CACZ,CAAC,4BAA4B,EAAEM,YAAY,+OAA+O,EAAEA,YAAY,gBAAgB,EAAEA,YAAY,uJAAuJ,CAAC;QAEhe,OAAO;IACT;IAEAtB,QAAQwB,OAAO,CAACC,QAAQ,GAAG/B,wBACzBmB,aAAaa,MAAM,GAAG,IAClB;QAAEjB,WAAWI;IAAa,IAC1B;QAAEc,UAAU;IAAU;IAE5B,OAAO;AACT;AAEA,kDAAkD,GAClD,MAAMC,UAAU,CACdvB,QACAwB,MACAC;IAEA,MAAMrB,YAAYJ,QAAQI;IAC1B,IAAI,CAACE,MAAMC,OAAO,CAACH,YAAY,OAAO;IACtC,IAAIA,UAAUQ,QAAQ,CAACa,KAAK,OAAO;IACnC,MAAMC,QAAQtB,UAAUuB,OAAO,CAACH;IAChC,IAAIE,UAAU,CAAC,GAAG,OAAO;IACzBtB,SAAS,CAACsB,MAAM,GAAGD;IACnB,OAAO;AACT;AAEA,yEAAyE,GACzE,MAAMG,0BAA0B,CAC9BX,aACAtB,SACAuB;IAEA,IAAIW,UAAU;IACd,MAAMC,WAAqB,EAAE;IAE7B,KAAK,MAAMC,QAAQtC,mBAAoB;QACrC,IAAI,CAACE,QAAQwB,OAAO,CAACY,KAAK,EAAE;QAC5B,MAAMC,SAAST,QAAQ5B,QAAQwB,OAAO,CAACY,KAAK,EAAE,UAAU;QACxD,IAAIC,WAAW,aAAaH,UAAU;QACtC,IAAIG,WAAW,YAAYF,SAASnB,IAAI,CAACoB;IAC3C;IAEA,IAAID,SAAST,MAAM,GAAG,GAAG;QACvB,MAAMF,UAAUW,SAASG,GAAG,CAAC,CAACC,IAAM,CAAC,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAEC,IAAI,CAAC;QACnD,MAAMC,WAAWN,SAAST,MAAM,KAAK;QACrCH,UAAUP,IAAI,CACZ,CAAC,MAAM,EAAEQ,QAAQ,IAAI,EAAEF,YAAY,0BAA0B,EAAEmB,WAAW,YAAY,UAAU,8CAA8C,EAAEA,WAAW,OAAO,OAAO,CAAC,CAAC;IAE/K;IACA,OAAOP;AACT;AAEA;;;CAGC,GACD,MAAMQ,6BAA6B,CACjCpB,aACAtB,SACAuB;IAEA,MAAMc,SAAST,QAAQ5B,QAAQwB,OAAO,CAACmB,IAAI,EAAE,SAAS;IACtD,IAAIN,WAAW,YAAY;QACzBd,UAAUP,IAAI,CACZ,CAAC,gBAAgB,EAAEM,YAAY,gFAAgF,CAAC;IAEpH;IACA,OAAOe,WAAW;AACpB;AAEA;;;;;;;;;CASC,GACD,MAAMO,sBAAsB,CAC1BtB,aACAtB,SACAuB;IAEA,IAAIK,QAAQ5B,QAAQwB,OAAO,CAACqB,OAAO,EAAE,UAAU,gBAAgB,aAAa;QAC1E,OAAO;IACT;IACA,IAAI,CAAC9C,YAAYC,SAASR,iCAAiCS,EAAE,GAAG;QAC9DsB,UAAUP,IAAI,CACZ,CAAC,sBAAsB,EAAEM,YAAY,uLAAuL,CAAC;IAEjO;IACA,OAAO;AACT;AAEA,eAAe,eAAewB,UAC5BC,IAAU;IAEV,MAAMxB,YAAsB,EAAE;IAE9B,KAAK,MAAM,CAACD,aAAatB,QAAQ,IAAIZ,YAAY2D,MAAO;QACtD/C,QAAQwB,OAAO,KAAK,CAAC;QAErB,IAAIU,UAAUb,kBAAkBC,aAAatB,SAASuB;QAEtD,IAAIxB,YAAYC,SAASV,yBAAyBW,EAAE,GAAG;YACrD,wEAAwE;YACxE,qDAAqD;YACrD,MAAMwB,WAAWzB,QAAQwB,OAAO,CAACC,QAAQ;YACzC,IAAIA,UAAUhB,aAAa,CAACgB,SAAShB,SAAS,CAACQ,QAAQ,CAAC,UAAU;gBAChEQ,SAAShB,SAAS,CAACO,IAAI,CAAC;gBACxBkB,UAAU;YACZ;YACAA,UACED,wBAAwBX,aAAatB,SAASuB,cAAcW;QAChE;QAEA,IACEnC,YAAYC,SAAST,iCAAiCU,EAAE,KACxDD,QAAQgD,WAAW,KAAK,eACxB;YACAd,UACEQ,2BAA2BpB,aAAatB,SAASuB,cAAcW;QACnE;QAEAA,UAAUU,oBAAoBtB,aAAatB,SAASuB,cAAcW;QAElE,IAAIA,SAAS;YACX7C,2BAA2B0D,MAAMzB,aAAa;gBAC5C,GAAGtB,OAAO;gBACVwB,SAAS7B,eAAeK,QAAQwB,OAAO;YACzC;QACF;IACF;IAEA,MAAM/B,qBAAqBsD;IAE3B,OAAO;QAAExB;IAAU;AACrB"}
@@ -0,0 +1,3 @@
1
+ {
2
+ "description": "Add a destroy-sandbox target to CDK infrastructure projects which destroys the sandbox stage, and drop the --require-approval flag from cdk destroy, which has no such option"
3
+ }