alchemy 2.0.0-beta.84 → 2.0.0-beta.85

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 (758) hide show
  1. package/THIRD_PARTY_LICENSES.md +2 -2
  2. package/bin/cli.js +14 -6
  3. package/bin/register-oxc.js +16 -12
  4. package/lib/AdoptPolicy.d.ts +73 -0
  5. package/lib/AdoptPolicy.d.ts.map +1 -1
  6. package/lib/AdoptPolicy.js +54 -0
  7. package/lib/AdoptPolicy.js.map +1 -1
  8. package/lib/Alchemist/AuthRegistry.d.ts +31 -0
  9. package/lib/Alchemist/AuthRegistry.d.ts.map +1 -0
  10. package/lib/Alchemist/AuthRegistry.js +95 -0
  11. package/lib/Alchemist/AuthRegistry.js.map +1 -0
  12. package/lib/Alchemist/Drift.d.ts +70 -0
  13. package/lib/Alchemist/Drift.d.ts.map +1 -0
  14. package/lib/Alchemist/Drift.js +54 -0
  15. package/lib/Alchemist/Drift.js.map +1 -0
  16. package/lib/Alchemist/Entrypoint.d.ts +27 -3
  17. package/lib/Alchemist/Entrypoint.d.ts.map +1 -1
  18. package/lib/Alchemist/Entrypoint.js +34 -3
  19. package/lib/Alchemist/Entrypoint.js.map +1 -1
  20. package/lib/Alchemist/Errors.d.ts +1 -1
  21. package/lib/Alchemist/Errors.d.ts.map +1 -1
  22. package/lib/Alchemist/Errors.js +1 -1
  23. package/lib/Alchemist/Errors.js.map +1 -1
  24. package/lib/Alchemist/Logs.d.ts +46 -0
  25. package/lib/Alchemist/Logs.d.ts.map +1 -0
  26. package/lib/Alchemist/{routes/logs.js → Logs.js} +21 -26
  27. package/lib/Alchemist/Logs.js.map +1 -0
  28. package/lib/Alchemist/Nuke.d.ts +69 -0
  29. package/lib/Alchemist/Nuke.d.ts.map +1 -0
  30. package/lib/Alchemist/Nuke.js +35 -0
  31. package/lib/Alchemist/Nuke.js.map +1 -0
  32. package/lib/Alchemist/Operations.d.ts +168 -0
  33. package/lib/Alchemist/Operations.d.ts.map +1 -0
  34. package/lib/Alchemist/Operations.js +165 -0
  35. package/lib/Alchemist/Operations.js.map +1 -0
  36. package/lib/Alchemist/Profile.d.ts +132 -0
  37. package/lib/Alchemist/Profile.d.ts.map +1 -0
  38. package/lib/Alchemist/{routes/profile.js → Profile.js} +20 -21
  39. package/lib/Alchemist/Profile.js.map +1 -0
  40. package/lib/Alchemist/{routes/provider.d.ts → Provider.d.ts} +4 -4
  41. package/lib/Alchemist/Provider.d.ts.map +1 -0
  42. package/lib/Alchemist/{routes/provider.js → Provider.js} +7 -6
  43. package/lib/Alchemist/Provider.js.map +1 -0
  44. package/lib/Alchemist/Runtime.d.ts +10 -6
  45. package/lib/Alchemist/Runtime.d.ts.map +1 -1
  46. package/lib/Alchemist/Runtime.js +38 -2
  47. package/lib/Alchemist/Runtime.js.map +1 -1
  48. package/lib/Alchemist/{routes/state.d.ts → State.d.ts} +36 -16
  49. package/lib/Alchemist/State.d.ts.map +1 -0
  50. package/lib/Alchemist/{routes/state.js → State.js} +50 -15
  51. package/lib/Alchemist/State.js.map +1 -0
  52. package/lib/Alchemist/index.d.ts +11 -10
  53. package/lib/Alchemist/index.d.ts.map +1 -1
  54. package/lib/Alchemist/index.js +10 -9
  55. package/lib/Alchemist/index.js.map +1 -1
  56. package/lib/Apply.d.ts +2 -8
  57. package/lib/Apply.d.ts.map +1 -1
  58. package/lib/Apply.js +364 -184
  59. package/lib/Apply.js.map +1 -1
  60. package/lib/Auth/AuthProvider.d.ts +24 -11
  61. package/lib/Auth/AuthProvider.d.ts.map +1 -1
  62. package/lib/Auth/AuthProvider.js +28 -12
  63. package/lib/Auth/AuthProvider.js.map +1 -1
  64. package/lib/Auth/BrowserOAuth.d.ts +6 -8
  65. package/lib/Auth/BrowserOAuth.d.ts.map +1 -1
  66. package/lib/Auth/BrowserOAuth.js +25 -41
  67. package/lib/Auth/BrowserOAuth.js.map +1 -1
  68. package/lib/Auth/Credentials.d.ts.map +1 -1
  69. package/lib/Auth/Credentials.js +2 -2
  70. package/lib/Auth/Credentials.js.map +1 -1
  71. package/lib/Auth/Demand.d.ts +4 -4
  72. package/lib/Auth/Demand.d.ts.map +1 -1
  73. package/lib/Auth/Demand.js +16 -10
  74. package/lib/Auth/Demand.js.map +1 -1
  75. package/lib/Auth/Env.d.ts +2 -1
  76. package/lib/Auth/Env.d.ts.map +1 -1
  77. package/lib/Auth/Env.js +4 -2
  78. package/lib/Auth/Env.js.map +1 -1
  79. package/lib/Auth/Inspect.d.ts +2 -2
  80. package/lib/Auth/Inspect.d.ts.map +1 -1
  81. package/lib/Auth/Inspect.js +3 -1
  82. package/lib/Auth/Inspect.js.map +1 -1
  83. package/lib/Auth/Lock.d.ts.map +1 -1
  84. package/lib/Auth/Lock.js +4 -8
  85. package/lib/Auth/Lock.js.map +1 -1
  86. package/lib/Auth/OAuthFlow.d.ts +3 -12
  87. package/lib/Auth/OAuthFlow.d.ts.map +1 -1
  88. package/lib/Auth/OAuthFlow.js +7 -17
  89. package/lib/Auth/OAuthFlow.js.map +1 -1
  90. package/lib/Auth/Paths.d.ts +2 -1
  91. package/lib/Auth/Paths.d.ts.map +1 -1
  92. package/lib/Auth/Paths.js +3 -2
  93. package/lib/Auth/Paths.js.map +1 -1
  94. package/lib/Auth/Profile.d.ts +10 -0
  95. package/lib/Auth/Profile.d.ts.map +1 -1
  96. package/lib/Auth/Profile.js +19 -2
  97. package/lib/Auth/Profile.js.map +1 -1
  98. package/lib/Auth/Registry.d.ts +20 -0
  99. package/lib/Auth/Registry.d.ts.map +1 -0
  100. package/lib/Auth/Registry.js +17 -0
  101. package/lib/Auth/Registry.js.map +1 -0
  102. package/lib/Auth/Resolve.d.ts +34 -2
  103. package/lib/Auth/Resolve.d.ts.map +1 -1
  104. package/lib/Auth/Resolve.js +51 -3
  105. package/lib/Auth/Resolve.js.map +1 -1
  106. package/lib/Auth/StoredAuthProvider.d.ts +1 -1
  107. package/lib/Auth/StoredAuthProvider.d.ts.map +1 -1
  108. package/lib/Auth/StoredAuthProvider.js +1 -2
  109. package/lib/Auth/StoredAuthProvider.js.map +1 -1
  110. package/lib/Binding.d.ts.map +1 -1
  111. package/lib/Binding.js +3 -1
  112. package/lib/Binding.js.map +1 -1
  113. package/lib/Bundle/Bundle.d.ts +5 -0
  114. package/lib/Bundle/Bundle.d.ts.map +1 -1
  115. package/lib/Bundle/Bundle.js +36 -6
  116. package/lib/Bundle/Bundle.js.map +1 -1
  117. package/lib/Bundle/NamespaceImportPlugin.d.ts +55 -0
  118. package/lib/Bundle/NamespaceImportPlugin.d.ts.map +1 -0
  119. package/lib/Bundle/NamespaceImportPlugin.js +226 -0
  120. package/lib/Bundle/NamespaceImportPlugin.js.map +1 -0
  121. package/lib/Bundle/index.d.ts +1 -0
  122. package/lib/Bundle/index.d.ts.map +1 -1
  123. package/lib/Bundle/index.js +1 -0
  124. package/lib/Bundle/index.js.map +1 -1
  125. package/lib/Cli/Format.d.ts.map +1 -1
  126. package/lib/Cli/Format.js +2 -1
  127. package/lib/Cli/Format.js.map +1 -1
  128. package/lib/Cli/GlobalLog.d.ts +72 -26
  129. package/lib/Cli/GlobalLog.d.ts.map +1 -1
  130. package/lib/Cli/GlobalLog.js +151 -59
  131. package/lib/Cli/GlobalLog.js.map +1 -1
  132. package/lib/Cli/LoggingCli.d.ts.map +1 -1
  133. package/lib/Cli/LoggingCli.js +24 -18
  134. package/lib/Cli/LoggingCli.js.map +1 -1
  135. package/lib/Cli/PlainCliFormatter.d.ts.map +1 -1
  136. package/lib/Cli/PlainCliFormatter.js +4 -1
  137. package/lib/Cli/PlainCliFormatter.js.map +1 -1
  138. package/lib/Cli/Present.d.ts +14 -0
  139. package/lib/Cli/Present.d.ts.map +1 -0
  140. package/lib/Cli/Present.js +22 -0
  141. package/lib/Cli/Present.js.map +1 -0
  142. package/lib/Cli/SigilRenderer.d.ts +58 -0
  143. package/lib/Cli/SigilRenderer.d.ts.map +1 -0
  144. package/lib/Cli/SigilRenderer.js +39 -0
  145. package/lib/Cli/SigilRenderer.js.map +1 -0
  146. package/lib/Cli/checkVersion.d.ts +11 -14
  147. package/lib/Cli/checkVersion.d.ts.map +1 -1
  148. package/lib/Cli/checkVersion.js +19 -77
  149. package/lib/Cli/checkVersion.js.map +1 -1
  150. package/lib/Cli/commands/confirm.d.ts +2 -2
  151. package/lib/Cli/commands/confirm.d.ts.map +1 -1
  152. package/lib/Cli/commands/confirm.js +3 -3
  153. package/lib/Cli/commands/confirm.js.map +1 -1
  154. package/lib/Cli/commands/deploy.d.ts +4 -4
  155. package/lib/Cli/commands/deploy.d.ts.map +1 -1
  156. package/lib/Cli/commands/deploy.js +40 -39
  157. package/lib/Cli/commands/deploy.js.map +1 -1
  158. package/lib/Cli/commands/dev.d.ts.map +1 -1
  159. package/lib/Cli/commands/dev.js +41 -3
  160. package/lib/Cli/commands/dev.js.map +1 -1
  161. package/lib/Cli/commands/drift.d.ts +2 -2
  162. package/lib/Cli/commands/drift.d.ts.map +1 -1
  163. package/lib/Cli/commands/drift.js +14 -13
  164. package/lib/Cli/commands/drift.js.map +1 -1
  165. package/lib/Cli/commands/errors.d.ts.map +1 -1
  166. package/lib/Cli/commands/errors.js +2 -1
  167. package/lib/Cli/commands/errors.js.map +1 -1
  168. package/lib/Cli/commands/instrument.d.ts +15 -5
  169. package/lib/Cli/commands/instrument.d.ts.map +1 -1
  170. package/lib/Cli/commands/instrument.js +33 -8
  171. package/lib/Cli/commands/instrument.js.map +1 -1
  172. package/lib/Cli/commands/logs.d.ts +1 -1
  173. package/lib/Cli/commands/logs.d.ts.map +1 -1
  174. package/lib/Cli/commands/logs.js +22 -22
  175. package/lib/Cli/commands/logs.js.map +1 -1
  176. package/lib/Cli/commands/nuke.d.ts +3 -2
  177. package/lib/Cli/commands/nuke.d.ts.map +1 -1
  178. package/lib/Cli/commands/nuke.js +19 -17
  179. package/lib/Cli/commands/nuke.js.map +1 -1
  180. package/lib/Cli/commands/profile/commands.d.ts +3 -2
  181. package/lib/Cli/commands/profile/commands.d.ts.map +1 -1
  182. package/lib/Cli/commands/profile/commands.js +26 -27
  183. package/lib/Cli/commands/profile/commands.js.map +1 -1
  184. package/lib/Cli/commands/profile/flows.d.ts +6 -5
  185. package/lib/Cli/commands/profile/flows.d.ts.map +1 -1
  186. package/lib/Cli/commands/profile/flows.js +19 -17
  187. package/lib/Cli/commands/profile/flows.js.map +1 -1
  188. package/lib/Cli/commands/profile/hub.d.ts +1 -2
  189. package/lib/Cli/commands/profile/hub.d.ts.map +1 -1
  190. package/lib/Cli/commands/profile/hub.js +15 -17
  191. package/lib/Cli/commands/profile/hub.js.map +1 -1
  192. package/lib/Cli/commands/provider.d.ts +3 -1
  193. package/lib/Cli/commands/provider.d.ts.map +1 -1
  194. package/lib/Cli/commands/provider.js +4 -4
  195. package/lib/Cli/commands/provider.js.map +1 -1
  196. package/lib/Cli/commands/render.d.ts +2 -4
  197. package/lib/Cli/commands/render.d.ts.map +1 -1
  198. package/lib/Cli/commands/render.js +33 -56
  199. package/lib/Cli/commands/render.js.map +1 -1
  200. package/lib/Cli/commands/state.d.ts +1 -2
  201. package/lib/Cli/commands/state.d.ts.map +1 -1
  202. package/lib/Cli/commands/state.js +74 -27
  203. package/lib/Cli/commands/state.js.map +1 -1
  204. package/lib/Cli/components/capabilities.d.ts +4 -0
  205. package/lib/Cli/components/capabilities.d.ts.map +1 -0
  206. package/lib/Cli/components/capabilities.js +18 -0
  207. package/lib/Cli/components/capabilities.js.map +1 -0
  208. package/lib/Cli/components/types.d.ts +2 -81
  209. package/lib/Cli/components/types.d.ts.map +1 -1
  210. package/lib/Cli/components/types.js +1 -3
  211. package/lib/Cli/components/types.js.map +1 -1
  212. package/lib/Cli/components/ui/Environment.d.ts +3 -3
  213. package/lib/Cli/components/ui/Environment.d.ts.map +1 -1
  214. package/lib/Cli/components/ui/Environment.js.map +1 -1
  215. package/lib/Cli/components/ui/Interactive.d.ts +17 -4
  216. package/lib/Cli/components/ui/Interactive.d.ts.map +1 -1
  217. package/lib/Cli/components/ui/Interactive.js +7 -11
  218. package/lib/Cli/components/ui/Interactive.js.map +1 -1
  219. package/lib/Cli/components/ui/Layout.d.ts +1 -1
  220. package/lib/Cli/components/ui/Layout.d.ts.map +1 -1
  221. package/lib/Cli/components/ui/Layout.js +1 -1
  222. package/lib/Cli/components/ui/Layout.js.map +1 -1
  223. package/lib/Cli/components/ui/Typography.d.ts +1 -1
  224. package/lib/Cli/components/ui/Typography.d.ts.map +1 -1
  225. package/lib/Cli/components/ui/Typography.js +1 -1
  226. package/lib/Cli/components/ui/Typography.js.map +1 -1
  227. package/lib/Cli/components/ui/index.d.ts +2 -2
  228. package/lib/Cli/components/ui/index.js +2 -2
  229. package/lib/Cli/components/view/ApprovePlan.d.ts +1 -1
  230. package/lib/Cli/components/view/ApprovePlan.d.ts.map +1 -1
  231. package/lib/Cli/components/view/ApprovePlan.js +2 -1
  232. package/lib/Cli/components/view/ApprovePlan.js.map +1 -1
  233. package/lib/Cli/components/view/Format.d.ts +5 -0
  234. package/lib/Cli/components/view/Format.d.ts.map +1 -0
  235. package/lib/Cli/components/view/Format.js +39 -0
  236. package/lib/Cli/components/view/Format.js.map +1 -0
  237. package/lib/Cli/components/view/Help.d.ts +2 -2
  238. package/lib/Cli/components/view/Help.d.ts.map +1 -1
  239. package/lib/Cli/components/view/Help.js +7 -5
  240. package/lib/Cli/components/view/Help.js.map +1 -1
  241. package/lib/Cli/components/view/Logo.js +1 -1
  242. package/lib/Cli/components/view/Logo.js.map +1 -1
  243. package/lib/Cli/components/view/Nuke.d.ts +8 -9
  244. package/lib/Cli/components/view/Nuke.d.ts.map +1 -1
  245. package/lib/Cli/components/view/Nuke.js +49 -52
  246. package/lib/Cli/components/view/Nuke.js.map +1 -1
  247. package/lib/Cli/components/view/PlanDecision.d.ts +1 -1
  248. package/lib/Cli/components/view/PlanDecision.d.ts.map +1 -1
  249. package/lib/Cli/components/view/PlanDecision.js +1 -1
  250. package/lib/Cli/components/view/PlanDecision.js.map +1 -1
  251. package/lib/Cli/components/view/PlanRow.js +1 -1
  252. package/lib/Cli/components/view/PlanRow.js.map +1 -1
  253. package/lib/Cli/components/view/PlanTree.d.ts +1 -1
  254. package/lib/Cli/components/view/PlanTree.d.ts.map +1 -1
  255. package/lib/Cli/components/view/PlanTree.js +1 -1
  256. package/lib/Cli/components/view/PlanView.js +1 -1
  257. package/lib/Cli/components/view/PlanView.js.map +1 -1
  258. package/lib/Cli/components/view/Profile.d.ts +1 -1
  259. package/lib/Cli/components/view/Profile.js +2 -2
  260. package/lib/Cli/components/view/Profile.js.map +1 -1
  261. package/lib/Cli/components/view/ProfileDashboard.d.ts +4 -4
  262. package/lib/Cli/components/view/ProfileDashboard.d.ts.map +1 -1
  263. package/lib/Cli/components/view/ProfileDashboard.js +9 -8
  264. package/lib/Cli/components/view/ProfileDashboard.js.map +1 -1
  265. package/lib/Cli/components/view/Prompts.d.ts +3 -3
  266. package/lib/Cli/components/view/Prompts.d.ts.map +1 -1
  267. package/lib/Cli/components/view/Prompts.js +11 -18
  268. package/lib/Cli/components/view/Prompts.js.map +1 -1
  269. package/lib/Cli/components/view/Runtime.d.ts +5 -5
  270. package/lib/Cli/components/view/Runtime.d.ts.map +1 -1
  271. package/lib/Cli/components/view/Runtime.js +136 -219
  272. package/lib/Cli/components/view/Runtime.js.map +1 -1
  273. package/lib/Cli/components/view/SigilCli.d.ts +2 -2
  274. package/lib/Cli/components/view/SigilCli.d.ts.map +1 -1
  275. package/lib/Cli/components/view/SigilCli.js +7 -7
  276. package/lib/Cli/components/view/SigilCli.js.map +1 -1
  277. package/lib/Cli/components/view/StateExplorer.d.ts +1 -1
  278. package/lib/Cli/components/view/StateExplorer.d.ts.map +1 -1
  279. package/lib/Cli/components/view/StateExplorer.js +2 -1
  280. package/lib/Cli/components/view/StateExplorer.js.map +1 -1
  281. package/lib/Cli/components/view/statusStyle.d.ts +2 -2
  282. package/lib/Cli/components/view/statusStyle.d.ts.map +1 -1
  283. package/lib/Cli/components/view/statusStyle.js +1 -1
  284. package/lib/Cli/components/view/statusStyle.js.map +1 -1
  285. package/lib/Cli/exec.d.ts +6 -1
  286. package/lib/Cli/exec.d.ts.map +1 -1
  287. package/lib/Cli/exec.js +29 -34
  288. package/lib/Cli/exec.js.map +1 -1
  289. package/lib/Cli/main.d.ts.map +1 -1
  290. package/lib/Cli/main.js +35 -26
  291. package/lib/Cli/main.js.map +1 -1
  292. package/lib/Cli/selectCli.d.ts +2 -2
  293. package/lib/Cli/selectCli.d.ts.map +1 -1
  294. package/lib/Cli/selectCli.js +2 -2
  295. package/lib/Cli/selectCli.js.map +1 -1
  296. package/lib/Command/Command.js +1 -1
  297. package/lib/Command/Command.js.map +1 -1
  298. package/lib/Command/Dev.d.ts +58 -4
  299. package/lib/Command/Dev.d.ts.map +1 -1
  300. package/lib/Command/Dev.js +87 -30
  301. package/lib/Command/Dev.js.map +1 -1
  302. package/lib/Command/Local.d.ts +1 -1
  303. package/lib/Command/Memo.js +1 -1
  304. package/lib/Command/Memo.js.map +1 -1
  305. package/lib/Command/Providers.d.ts +1 -1
  306. package/lib/Command/Providers.d.ts.map +1 -1
  307. package/lib/Contributions.d.ts +2 -3
  308. package/lib/Contributions.d.ts.map +1 -1
  309. package/lib/Contributions.js +38 -6
  310. package/lib/Contributions.js.map +1 -1
  311. package/lib/DNS/Adapter.d.ts +204 -0
  312. package/lib/DNS/Adapter.d.ts.map +1 -0
  313. package/lib/DNS/Adapter.js +112 -0
  314. package/lib/DNS/Adapter.js.map +1 -0
  315. package/lib/DNS/index.d.ts +2 -0
  316. package/lib/DNS/index.d.ts.map +1 -0
  317. package/lib/DNS/index.js +2 -0
  318. package/lib/DNS/index.js.map +1 -0
  319. package/lib/Deploy.d.ts +7 -2
  320. package/lib/Deploy.d.ts.map +1 -1
  321. package/lib/Deploy.js +8 -3
  322. package/lib/Deploy.js.map +1 -1
  323. package/lib/Destroy.d.ts +5 -8
  324. package/lib/Destroy.d.ts.map +1 -1
  325. package/lib/Destroy.js +10 -7
  326. package/lib/Destroy.js.map +1 -1
  327. package/lib/Diff.d.ts.map +1 -1
  328. package/lib/Diff.js +14 -4
  329. package/lib/Diff.js.map +1 -1
  330. package/lib/Drift.d.ts +7 -7
  331. package/lib/Drift.d.ts.map +1 -1
  332. package/lib/Drift.js +184 -101
  333. package/lib/Drift.js.map +1 -1
  334. package/lib/EvalStack.d.ts +23 -0
  335. package/lib/EvalStack.d.ts.map +1 -0
  336. package/lib/EvalStack.js +47 -0
  337. package/lib/EvalStack.js.map +1 -0
  338. package/lib/Events.d.ts +210 -0
  339. package/lib/Events.d.ts.map +1 -0
  340. package/lib/Events.js +244 -0
  341. package/lib/Events.js.map +1 -0
  342. package/lib/Interaction.d.ts +159 -48
  343. package/lib/Interaction.d.ts.map +1 -1
  344. package/lib/Interaction.js +139 -58
  345. package/lib/Interaction.js.map +1 -1
  346. package/lib/Local/LocalProvider.d.ts.map +1 -1
  347. package/lib/Local/LocalProvider.js +31 -9
  348. package/lib/Local/LocalProvider.js.map +1 -1
  349. package/lib/Local/RpcProvider.d.ts.map +1 -1
  350. package/lib/Local/RpcProvider.js +10 -1
  351. package/lib/Local/RpcProvider.js.map +1 -1
  352. package/lib/Local/RpcProviderProxy.d.ts +16 -0
  353. package/lib/Local/RpcProviderProxy.d.ts.map +1 -1
  354. package/lib/Local/RpcProviderProxy.js +19 -10
  355. package/lib/Local/RpcProviderProxy.js.map +1 -1
  356. package/lib/Local/RpcSerialization.d.ts +3 -2
  357. package/lib/Local/RpcSerialization.d.ts.map +1 -1
  358. package/lib/Local/RpcSerialization.js +13 -10
  359. package/lib/Local/RpcSerialization.js.map +1 -1
  360. package/lib/Local/RpcServer.d.ts +2 -1
  361. package/lib/Local/RpcServer.d.ts.map +1 -1
  362. package/lib/Local/RpcServer.js +19 -14
  363. package/lib/Local/RpcServer.js.map +1 -1
  364. package/lib/Local/RpcServerBun.d.ts.map +1 -1
  365. package/lib/Local/RpcServerBun.js +8 -4
  366. package/lib/Local/RpcServerBun.js.map +1 -1
  367. package/lib/Local/RpcServerEnvironment.d.ts +2 -3
  368. package/lib/Local/RpcServerEnvironment.d.ts.map +1 -1
  369. package/lib/Local/RpcServerEnvironment.js +2 -2
  370. package/lib/Local/RpcServerEnvironment.js.map +1 -1
  371. package/lib/Local/RpcServerNode.d.ts.map +1 -1
  372. package/lib/Local/RpcServerNode.js +5 -1
  373. package/lib/Local/RpcServerNode.js.map +1 -1
  374. package/lib/Local/RpcServerSession.d.ts +1 -1
  375. package/lib/Local/RpcServerSession.d.ts.map +1 -1
  376. package/lib/Local/RpcServerSession.js.map +1 -1
  377. package/lib/Local/RpcSpawner.d.ts +6 -8
  378. package/lib/Local/RpcSpawner.d.ts.map +1 -1
  379. package/lib/Local/RpcSpawner.js +45 -36
  380. package/lib/Local/RpcSpawner.js.map +1 -1
  381. package/lib/Local/Sidecar.d.ts +23 -0
  382. package/lib/Local/Sidecar.d.ts.map +1 -1
  383. package/lib/Local/Sidecar.js +14 -9
  384. package/lib/Local/Sidecar.js.map +1 -1
  385. package/lib/Nuke.d.ts +5 -23
  386. package/lib/Nuke.d.ts.map +1 -1
  387. package/lib/Nuke.js +48 -13
  388. package/lib/Nuke.js.map +1 -1
  389. package/lib/Output.d.ts +19 -1
  390. package/lib/Output.d.ts.map +1 -1
  391. package/lib/Output.js +96 -3
  392. package/lib/Output.js.map +1 -1
  393. package/lib/Plan.d.ts +5 -1
  394. package/lib/Plan.d.ts.map +1 -1
  395. package/lib/Plan.js +111 -33
  396. package/lib/Plan.js.map +1 -1
  397. package/lib/Platform.d.ts.map +1 -1
  398. package/lib/Platform.js +31 -7
  399. package/lib/Platform.js.map +1 -1
  400. package/lib/Provider.d.ts +45 -0
  401. package/lib/Provider.d.ts.map +1 -1
  402. package/lib/Provider.js +2 -2
  403. package/lib/Provider.js.map +1 -1
  404. package/lib/Report.d.ts +17 -195
  405. package/lib/Report.d.ts.map +1 -1
  406. package/lib/Report.js +39 -12
  407. package/lib/Report.js.map +1 -1
  408. package/lib/Runtime/ManagedHttpShutdown.d.ts +17 -0
  409. package/lib/Runtime/ManagedHttpShutdown.d.ts.map +1 -1
  410. package/lib/Runtime/ManagedHttpShutdown.js +11 -2
  411. package/lib/Runtime/ManagedHttpShutdown.js.map +1 -1
  412. package/lib/RuntimeContext.js +1 -1
  413. package/lib/RuntimeContext.js.map +1 -1
  414. package/lib/Stack.d.ts +49 -29
  415. package/lib/Stack.d.ts.map +1 -1
  416. package/lib/Stack.js +25 -31
  417. package/lib/Stack.js.map +1 -1
  418. package/lib/State/BucketState.d.ts.map +1 -1
  419. package/lib/State/BucketState.js +43 -14
  420. package/lib/State/BucketState.js.map +1 -1
  421. package/lib/State/LocalState.d.ts.map +1 -1
  422. package/lib/State/LocalState.js +3 -3
  423. package/lib/State/LocalState.js.map +1 -1
  424. package/lib/State/Provisioning.d.ts +5 -0
  425. package/lib/State/Provisioning.d.ts.map +1 -1
  426. package/lib/State/Provisioning.js +3 -1
  427. package/lib/State/Provisioning.js.map +1 -1
  428. package/lib/State/ResourceState.d.ts +2 -0
  429. package/lib/State/ResourceState.d.ts.map +1 -1
  430. package/lib/State/State.d.ts +26 -0
  431. package/lib/State/State.d.ts.map +1 -1
  432. package/lib/State/StateEncoding.d.ts +7 -0
  433. package/lib/State/StateEncoding.d.ts.map +1 -1
  434. package/lib/State/StateEncoding.js +19 -0
  435. package/lib/State/StateEncoding.js.map +1 -1
  436. package/lib/State/index.js +2 -2
  437. package/lib/State/index.js.map +1 -1
  438. package/lib/Telemetry/Layer.d.ts +2 -5
  439. package/lib/Telemetry/Layer.d.ts.map +1 -1
  440. package/lib/Telemetry/Layer.js +3 -23
  441. package/lib/Telemetry/Layer.js.map +1 -1
  442. package/lib/Telemetry/Metrics.d.ts +1 -1
  443. package/lib/Telemetry/Metrics.d.ts.map +1 -1
  444. package/lib/TelemetryRelay.js +1 -1
  445. package/lib/TelemetryRelay.js.map +1 -1
  446. package/lib/TelemetryRuntime.d.ts +1 -1
  447. package/lib/TelemetryRuntime.d.ts.map +1 -1
  448. package/lib/TelemetryRuntime.js +4 -3
  449. package/lib/TelemetryRuntime.js.map +1 -1
  450. package/lib/Util/ConsoleSink.d.ts +23 -2
  451. package/lib/Util/ConsoleSink.d.ts.map +1 -1
  452. package/lib/Util/ConsoleSink.js +54 -14
  453. package/lib/Util/ConsoleSink.js.map +1 -1
  454. package/lib/Util/LogAnnotation.d.ts +19 -0
  455. package/lib/Util/LogAnnotation.d.ts.map +1 -0
  456. package/lib/Util/LogAnnotation.js +19 -0
  457. package/lib/Util/LogAnnotation.js.map +1 -0
  458. package/lib/Util/LogRecord.d.ts +281 -0
  459. package/lib/Util/LogRecord.d.ts.map +1 -0
  460. package/lib/Util/LogRecord.js +267 -0
  461. package/lib/Util/LogRecord.js.map +1 -0
  462. package/lib/Util/Node.d.ts +9 -0
  463. package/lib/Util/Node.d.ts.map +1 -1
  464. package/lib/Util/Node.js +10 -6
  465. package/lib/Util/Node.js.map +1 -1
  466. package/lib/Util/PlatformServices.d.ts +3 -2
  467. package/lib/Util/PlatformServices.d.ts.map +1 -1
  468. package/lib/Util/PlatformServices.js +6 -2
  469. package/lib/Util/PlatformServices.js.map +1 -1
  470. package/lib/Util/ResourceOutput.d.ts +18 -10
  471. package/lib/Util/ResourceOutput.d.ts.map +1 -1
  472. package/lib/Util/ResourceOutput.js +22 -23
  473. package/lib/Util/ResourceOutput.js.map +1 -1
  474. package/lib/Util/Shutdown.d.ts +10 -0
  475. package/lib/Util/Shutdown.d.ts.map +1 -0
  476. package/lib/Util/Shutdown.js +32 -0
  477. package/lib/Util/Shutdown.js.map +1 -0
  478. package/lib/Util/Terminal.d.ts +2 -4
  479. package/lib/Util/Terminal.d.ts.map +1 -1
  480. package/lib/Util/Terminal.js +3 -11
  481. package/lib/Util/Terminal.js.map +1 -1
  482. package/lib/Util/TraceParent.d.ts +32 -0
  483. package/lib/Util/TraceParent.d.ts.map +1 -0
  484. package/lib/Util/TraceParent.js +42 -0
  485. package/lib/Util/TraceParent.js.map +1 -0
  486. package/lib/Util/base64.d.ts +7 -0
  487. package/lib/Util/base64.d.ts.map +1 -0
  488. package/lib/Util/base64.js +24 -0
  489. package/lib/Util/base64.js.map +1 -0
  490. package/lib/Util/cached-function.d.ts +5 -0
  491. package/lib/Util/cached-function.d.ts.map +1 -1
  492. package/lib/Util/cached-function.js +13 -8
  493. package/lib/Util/cached-function.js.map +1 -1
  494. package/lib/Util/data.d.ts +1 -1
  495. package/lib/Util/data.d.ts.map +1 -1
  496. package/lib/Util/data.js +1 -1
  497. package/lib/Util/data.js.map +1 -1
  498. package/lib/Util/equal.d.ts.map +1 -1
  499. package/lib/Util/equal.js +3 -2
  500. package/lib/Util/equal.js.map +1 -1
  501. package/lib/Util/extraFiles.d.ts.map +1 -1
  502. package/lib/Util/extraFiles.js +5 -5
  503. package/lib/Util/extraFiles.js.map +1 -1
  504. package/lib/Util/interactive.js +1 -1
  505. package/lib/Website/AstroOutput.d.ts +42 -0
  506. package/lib/Website/AstroOutput.d.ts.map +1 -0
  507. package/lib/Website/AstroOutput.js +34 -0
  508. package/lib/Website/AstroOutput.js.map +1 -0
  509. package/lib/Website/FrontendCore.d.ts +1 -1
  510. package/lib/Workflows.d.ts +9 -0
  511. package/lib/Workflows.d.ts.map +1 -1
  512. package/lib/Workflows.js +8 -0
  513. package/lib/Workflows.js.map +1 -1
  514. package/lib/index.d.ts +1 -0
  515. package/lib/index.d.ts.map +1 -1
  516. package/lib/index.js +1 -0
  517. package/lib/index.js.map +1 -1
  518. package/package.json +21 -28
  519. package/src/AdoptPolicy.ts +76 -0
  520. package/src/Alchemist/AuthRegistry.ts +164 -0
  521. package/src/Alchemist/Drift.ts +103 -0
  522. package/src/Alchemist/Entrypoint.ts +51 -3
  523. package/src/Alchemist/Errors.ts +1 -1
  524. package/src/Alchemist/{routes/logs.ts → Logs.ts} +28 -30
  525. package/src/Alchemist/Nuke.ts +90 -0
  526. package/src/Alchemist/Operations.ts +309 -0
  527. package/src/Alchemist/{routes/profile.ts → Profile.ts} +22 -22
  528. package/src/Alchemist/{routes/provider.ts → Provider.ts} +7 -6
  529. package/src/Alchemist/Runtime.ts +46 -12
  530. package/src/Alchemist/{routes/state.ts → State.ts} +78 -21
  531. package/src/Alchemist/index.ts +32 -15
  532. package/src/Apply.ts +513 -274
  533. package/src/Auth/AuthProvider.ts +76 -23
  534. package/src/Auth/BrowserOAuth.ts +37 -60
  535. package/src/Auth/Credentials.ts +2 -4
  536. package/src/Auth/Demand.ts +27 -18
  537. package/src/Auth/Env.ts +13 -8
  538. package/src/Auth/Inspect.ts +5 -2
  539. package/src/Auth/Lock.ts +4 -8
  540. package/src/Auth/OAuthFlow.ts +12 -26
  541. package/src/Auth/Paths.ts +3 -2
  542. package/src/Auth/Profile.ts +30 -2
  543. package/src/Auth/Registry.ts +27 -0
  544. package/src/Auth/Resolve.ts +75 -3
  545. package/src/Auth/StoredAuthProvider.ts +1 -2
  546. package/src/Binding.ts +3 -4
  547. package/src/Bundle/Bundle.ts +58 -7
  548. package/src/Bundle/NamespaceImportPlugin.ts +259 -0
  549. package/src/Bundle/index.ts +1 -0
  550. package/src/Cli/Format.ts +2 -1
  551. package/src/Cli/GlobalLog.ts +206 -68
  552. package/src/Cli/LoggingCli.ts +33 -20
  553. package/src/Cli/PlainCliFormatter.ts +4 -1
  554. package/src/Cli/Present.ts +34 -0
  555. package/src/Cli/SigilRenderer.ts +75 -0
  556. package/src/Cli/checkVersion.ts +25 -78
  557. package/src/Cli/commands/confirm.ts +3 -3
  558. package/src/Cli/commands/deploy.ts +53 -44
  559. package/src/Cli/commands/dev.ts +65 -7
  560. package/src/Cli/commands/drift.ts +20 -16
  561. package/src/Cli/commands/errors.ts +2 -3
  562. package/src/Cli/commands/instrument.ts +39 -8
  563. package/src/Cli/commands/logs.ts +22 -30
  564. package/src/Cli/commands/nuke.ts +25 -26
  565. package/src/Cli/commands/profile/commands.ts +34 -34
  566. package/src/Cli/commands/profile/flows.ts +26 -20
  567. package/src/Cli/commands/profile/hub.ts +16 -18
  568. package/src/Cli/commands/provider.ts +4 -4
  569. package/src/Cli/commands/render.ts +43 -71
  570. package/src/Cli/commands/state.ts +113 -33
  571. package/src/Cli/components/capabilities.ts +20 -0
  572. package/src/Cli/components/types.ts +13 -99
  573. package/src/Cli/components/ui/Environment.tsx +5 -5
  574. package/src/Cli/components/ui/Interactive.tsx +24 -15
  575. package/src/Cli/components/ui/Layout.tsx +1 -1
  576. package/src/Cli/components/ui/Typography.tsx +1 -1
  577. package/src/Cli/components/ui/index.ts +2 -2
  578. package/src/Cli/components/view/ApprovePlan.tsx +2 -1
  579. package/src/Cli/components/view/Format.tsx +58 -0
  580. package/src/Cli/components/view/Help.tsx +14 -17
  581. package/src/Cli/components/view/Logo.tsx +1 -1
  582. package/src/Cli/components/view/Nuke.tsx +74 -49
  583. package/src/Cli/components/view/PlanDecision.tsx +1 -1
  584. package/src/Cli/components/view/PlanRow.tsx +1 -1
  585. package/src/Cli/components/view/PlanTree.ts +2 -2
  586. package/src/Cli/components/view/PlanView.tsx +2 -2
  587. package/src/Cli/components/view/Profile.tsx +2 -2
  588. package/src/Cli/components/view/ProfileDashboard.tsx +12 -11
  589. package/src/Cli/components/view/Prompts.tsx +37 -75
  590. package/src/Cli/components/view/Runtime.tsx +132 -238
  591. package/src/Cli/components/view/SigilCli.tsx +12 -12
  592. package/src/Cli/components/view/StateExplorer.tsx +2 -1
  593. package/src/Cli/components/view/statusStyle.ts +2 -2
  594. package/src/Cli/exec.ts +48 -41
  595. package/src/Cli/main.ts +52 -33
  596. package/src/Cli/selectCli.ts +3 -3
  597. package/src/Command/Command.ts +1 -1
  598. package/src/Command/Dev.ts +129 -36
  599. package/src/Command/Memo.ts +1 -1
  600. package/src/Contributions.ts +42 -8
  601. package/src/DNS/Adapter.ts +289 -0
  602. package/src/DNS/index.ts +1 -0
  603. package/src/Deploy.ts +11 -3
  604. package/src/Destroy.ts +19 -13
  605. package/src/Diff.ts +17 -4
  606. package/src/Drift.ts +256 -127
  607. package/src/EvalStack.ts +97 -0
  608. package/src/Events.ts +296 -0
  609. package/src/Interaction.ts +332 -97
  610. package/src/Local/LocalProvider.ts +40 -9
  611. package/src/Local/RpcProvider.ts +11 -1
  612. package/src/Local/RpcProviderProxy.ts +29 -21
  613. package/src/Local/RpcSerialization.ts +32 -17
  614. package/src/Local/RpcServer.ts +25 -17
  615. package/src/Local/RpcServerBun.ts +10 -6
  616. package/src/Local/RpcServerEnvironment.ts +2 -2
  617. package/src/Local/RpcServerNode.ts +8 -1
  618. package/src/Local/RpcServerSession.ts +2 -2
  619. package/src/Local/RpcSpawner.ts +61 -37
  620. package/src/Local/Sidecar.ts +10 -1
  621. package/src/Nuke.ts +66 -43
  622. package/src/Output.ts +120 -7
  623. package/src/Plan.ts +140 -52
  624. package/src/Platform.ts +47 -18
  625. package/src/Provider.ts +48 -3
  626. package/src/Report.ts +77 -275
  627. package/src/Runtime/ManagedHttpShutdown.ts +21 -4
  628. package/src/RuntimeContext.ts +1 -1
  629. package/src/Stack.ts +113 -135
  630. package/src/State/BucketState.ts +53 -21
  631. package/src/State/LocalState.ts +7 -9
  632. package/src/State/Provisioning.ts +8 -1
  633. package/src/State/ResourceState.ts +2 -0
  634. package/src/State/State.ts +30 -0
  635. package/src/State/StateEncoding.ts +22 -0
  636. package/src/State/index.ts +2 -2
  637. package/src/Telemetry/Layer.ts +3 -24
  638. package/src/Telemetry/Metrics.ts +1 -1
  639. package/src/TelemetryRelay.ts +1 -1
  640. package/src/TelemetryRuntime.ts +8 -8
  641. package/src/Util/ConsoleSink.ts +76 -13
  642. package/src/Util/LogAnnotation.ts +18 -0
  643. package/src/Util/LogRecord.ts +386 -0
  644. package/src/Util/Node.ts +20 -6
  645. package/src/Util/PlatformServices.ts +17 -4
  646. package/src/Util/ResourceOutput.ts +26 -25
  647. package/src/Util/Shutdown.ts +52 -0
  648. package/src/Util/Terminal.ts +3 -20
  649. package/src/Util/TraceParent.ts +70 -0
  650. package/src/Util/base64.ts +22 -0
  651. package/src/Util/cached-function.ts +30 -19
  652. package/src/Util/data.ts +2 -2
  653. package/src/Util/equal.ts +3 -2
  654. package/src/Util/extraFiles.ts +9 -8
  655. package/src/Util/interactive.ts +1 -1
  656. package/src/Website/AstroOutput.ts +83 -0
  657. package/src/Workflows.ts +11 -0
  658. package/src/index.ts +1 -0
  659. package/lib/Alchemist/Progress.d.ts +0 -16
  660. package/lib/Alchemist/Progress.d.ts.map +0 -1
  661. package/lib/Alchemist/Progress.js +0 -123
  662. package/lib/Alchemist/Progress.js.map +0 -1
  663. package/lib/Alchemist/Session.d.ts +0 -116
  664. package/lib/Alchemist/Session.d.ts.map +0 -1
  665. package/lib/Alchemist/Session.js +0 -212
  666. package/lib/Alchemist/Session.js.map +0 -1
  667. package/lib/Alchemist/routes/drift.d.ts +0 -55
  668. package/lib/Alchemist/routes/drift.d.ts.map +0 -1
  669. package/lib/Alchemist/routes/drift.js +0 -52
  670. package/lib/Alchemist/routes/drift.js.map +0 -1
  671. package/lib/Alchemist/routes/logs.d.ts +0 -41
  672. package/lib/Alchemist/routes/logs.d.ts.map +0 -1
  673. package/lib/Alchemist/routes/logs.js.map +0 -1
  674. package/lib/Alchemist/routes/nuke.d.ts +0 -46
  675. package/lib/Alchemist/routes/nuke.d.ts.map +0 -1
  676. package/lib/Alchemist/routes/nuke.js +0 -80
  677. package/lib/Alchemist/routes/nuke.js.map +0 -1
  678. package/lib/Alchemist/routes/profile.d.ts +0 -133
  679. package/lib/Alchemist/routes/profile.d.ts.map +0 -1
  680. package/lib/Alchemist/routes/profile.js.map +0 -1
  681. package/lib/Alchemist/routes/provider.d.ts.map +0 -1
  682. package/lib/Alchemist/routes/provider.js.map +0 -1
  683. package/lib/Alchemist/routes/stack.d.ts +0 -95
  684. package/lib/Alchemist/routes/stack.d.ts.map +0 -1
  685. package/lib/Alchemist/routes/stack.js +0 -73
  686. package/lib/Alchemist/routes/stack.js.map +0 -1
  687. package/lib/Alchemist/routes/state.d.ts.map +0 -1
  688. package/lib/Alchemist/routes/state.js.map +0 -1
  689. package/lib/Cli/CliKit/CliKit.d.ts +0 -92
  690. package/lib/Cli/CliKit/CliKit.d.ts.map +0 -1
  691. package/lib/Cli/CliKit/CliKit.js +0 -27
  692. package/lib/Cli/CliKit/CliKit.js.map +0 -1
  693. package/lib/Cli/CliKit/index.d.ts +0 -9
  694. package/lib/Cli/CliKit/index.d.ts.map +0 -1
  695. package/lib/Cli/CliKit/index.js +0 -9
  696. package/lib/Cli/CliKit/index.js.map +0 -1
  697. package/lib/Cli/CliKit/interaction.d.ts +0 -13
  698. package/lib/Cli/CliKit/interaction.d.ts.map +0 -1
  699. package/lib/Cli/CliKit/interaction.js +0 -17
  700. package/lib/Cli/CliKit/interaction.js.map +0 -1
  701. package/lib/Cli/CliKit/layer.d.ts +0 -7
  702. package/lib/Cli/CliKit/layer.d.ts.map +0 -1
  703. package/lib/Cli/CliKit/layer.js +0 -33
  704. package/lib/Cli/CliKit/layer.js.map +0 -1
  705. package/lib/Local/DevLog.d.ts +0 -32
  706. package/lib/Local/DevLog.d.ts.map +0 -1
  707. package/lib/Local/DevLog.js +0 -112
  708. package/lib/Local/DevLog.js.map +0 -1
  709. package/lib/Test/Alchemy.d.ts +0 -79
  710. package/lib/Test/Alchemy.d.ts.map +0 -1
  711. package/lib/Test/Alchemy.js +0 -193
  712. package/lib/Test/Alchemy.js.map +0 -1
  713. package/lib/Test/Bun.d.ts +0 -69
  714. package/lib/Test/Bun.d.ts.map +0 -1
  715. package/lib/Test/Bun.js +0 -126
  716. package/lib/Test/Bun.js.map +0 -1
  717. package/lib/Test/Core.d.ts +0 -277
  718. package/lib/Test/Core.d.ts.map +0 -1
  719. package/lib/Test/Core.js +0 -362
  720. package/lib/Test/Core.js.map +0 -1
  721. package/lib/Test/Http.d.ts +0 -109
  722. package/lib/Test/Http.d.ts.map +0 -1
  723. package/lib/Test/Http.js +0 -123
  724. package/lib/Test/Http.js.map +0 -1
  725. package/lib/Test/TestState.d.ts +0 -12
  726. package/lib/Test/TestState.d.ts.map +0 -1
  727. package/lib/Test/TestState.js +0 -15
  728. package/lib/Test/TestState.js.map +0 -1
  729. package/lib/Test/Vitest.d.ts +0 -60
  730. package/lib/Test/Vitest.d.ts.map +0 -1
  731. package/lib/Test/Vitest.js +0 -132
  732. package/lib/Test/Vitest.js.map +0 -1
  733. package/lib/Test/index.d.ts +0 -3
  734. package/lib/Test/index.d.ts.map +0 -1
  735. package/lib/Test/index.js +0 -3
  736. package/lib/Test/index.js.map +0 -1
  737. package/lib/Util/FileLogger.d.ts +0 -7
  738. package/lib/Util/FileLogger.d.ts.map +0 -1
  739. package/lib/Util/FileLogger.js +0 -16
  740. package/lib/Util/FileLogger.js.map +0 -1
  741. package/src/Alchemist/Progress.ts +0 -167
  742. package/src/Alchemist/Session.ts +0 -415
  743. package/src/Alchemist/routes/drift.ts +0 -87
  744. package/src/Alchemist/routes/nuke.ts +0 -131
  745. package/src/Alchemist/routes/stack.ts +0 -173
  746. package/src/Cli/CliKit/CliKit.ts +0 -159
  747. package/src/Cli/CliKit/index.ts +0 -41
  748. package/src/Cli/CliKit/interaction.ts +0 -19
  749. package/src/Cli/CliKit/layer.ts +0 -44
  750. package/src/Local/DevLog.ts +0 -122
  751. package/src/Test/Alchemy.ts +0 -334
  752. package/src/Test/Bun.ts +0 -230
  753. package/src/Test/Core.ts +0 -785
  754. package/src/Test/Http.ts +0 -201
  755. package/src/Test/TestState.ts +0 -35
  756. package/src/Test/Vitest.ts +0 -239
  757. package/src/Test/index.ts +0 -2
  758. package/src/Util/FileLogger.ts +0 -20
@@ -1,123 +0,0 @@
1
- import * as Clock from "effect/Clock";
2
- import * as Effect from "effect/Effect";
3
- import {} from "../Report.js";
4
- // The event contract itself lives in Report.ts (one flat `_tag` union, the
5
- // `Progress` reference the engine emits into). This module adds the
6
- // Alchemist-side plumbing: the OTEL span-event bridge routes wrap their
7
- // reporter with, and the adapter to the engine's apply-session contract.
8
- export { Progress, } from "../Report.js";
9
- /**
10
- * The OTEL span-event shape of one {@link ProgressEvent}, or `undefined`
11
- * for events that are renderer-only. Per-node plan events are deliberately
12
- * excluded: a plan emits one per resource *including noops* on every
13
- * (re)plan — dev-watch replans would flood the collector with rows that
14
- * mostly say "noop", and the node's own `plan.diff.resource` span already
15
- * carries the diff. The phase markers are enough to know planning started
16
- * and where the time went.
17
- */
18
- const spanEventOf = (event) => {
19
- switch (event._tag) {
20
- case "plan.phase":
21
- return {
22
- name: "alchemy.plan.phase",
23
- attributes: { "alchemy.plan.phase": event.phase },
24
- };
25
- case "plan.resource.started":
26
- case "plan.resource.completed":
27
- case "plan.action.completed":
28
- return undefined;
29
- case "apply.resource.status":
30
- return {
31
- name: "alchemy.apply.resource.status",
32
- attributes: {
33
- "alchemy.resource.fqn": event.fqn,
34
- "alchemy.resource.logical_id": event.id,
35
- "alchemy.resource.type": event.type,
36
- "alchemy.apply.resource.status": event.status,
37
- ...(event.message === undefined ? {} : { "alchemy.apply.message": event.message }),
38
- },
39
- };
40
- case "apply.resource.note":
41
- return {
42
- name: "alchemy.apply.resource.note",
43
- attributes: {
44
- "alchemy.resource.fqn": event.fqn,
45
- "alchemy.resource.logical_id": event.id,
46
- "alchemy.apply.message": event.message,
47
- ...(event.kind === undefined ? {} : { "alchemy.apply.note.kind": event.kind }),
48
- },
49
- };
50
- case "state.bootstrap.started":
51
- case "state.bootstrap.completed":
52
- return {
53
- name: `alchemy.${event._tag}`,
54
- attributes: { "alchemy.state_store.name": event.store },
55
- };
56
- case "nuke.scan.started":
57
- return {
58
- name: "alchemy.nuke.scan.started",
59
- attributes: { "alchemy.nuke.providers": event.total },
60
- };
61
- case "nuke.pass.started":
62
- return {
63
- name: "alchemy.nuke.pass.started",
64
- attributes: { "alchemy.nuke.pass": event.pass },
65
- };
66
- case "nuke.scan.provider.started":
67
- return {
68
- name: "alchemy.nuke.scan.provider.started",
69
- attributes: { "alchemy.provider": event.provider },
70
- };
71
- case "nuke.scan.provider.completed":
72
- return {
73
- name: "alchemy.nuke.scan.provider.completed",
74
- attributes: {
75
- "alchemy.provider": event.provider,
76
- "alchemy.nuke.resources": event.resources,
77
- ...(event.error === undefined ? {} : { "alchemy.nuke.message": event.error }),
78
- },
79
- };
80
- case "nuke.resource.deleted":
81
- return {
82
- name: "alchemy.nuke.resource.deleted",
83
- attributes: { "alchemy.resource.display_name": event.resource },
84
- };
85
- case "nuke.resource.failed":
86
- return {
87
- name: "alchemy.nuke.resource.failed",
88
- attributes: {
89
- "alchemy.resource.display_name": event.resource,
90
- "alchemy.nuke.message": event.message,
91
- },
92
- };
93
- case "provider.configure.started":
94
- case "provider.configure.completed":
95
- case "provider.refresh.started":
96
- case "provider.refresh.completed":
97
- return {
98
- name: `alchemy.${event._tag}`,
99
- attributes: { "alchemy.provider": event.provider },
100
- };
101
- }
102
- };
103
- /**
104
- * Decorate a reporter so a {@link ProgressEvent} with a span-event shape is
105
- * also recorded on the currently active span before it reaches the
106
- * renderer. Emission happens inside the engine's instrumented fibers, so
107
- * apply events land on `apply.resource` / `provider.<op>` spans — giving
108
- * traces a within-span timeline of status transitions. A no-op when no
109
- * span is active (tracing disabled), and independent of whether a renderer
110
- * is attached, so `--yes` and CI runs still produce the events.
111
- */
112
- export const withSpanEvents = (report) => (event) => {
113
- const spanEvent = spanEventOf(event);
114
- if (spanEvent === undefined)
115
- return report(event);
116
- return Effect.currentSpan.pipe(Effect.flatMap((span) => Effect.flatMap(Clock.currentTimeNanos, (now) => Effect.sync(() => span.event(spanEvent.name, now, spanEvent.attributes)))), Effect.ignore, Effect.andThen(report(event)));
117
- };
118
- /** Adapt the ambient reporter to the engine's apply-session contract. */
119
- export const applySession = (report) => ({
120
- emit: (event) => report(event),
121
- done: () => Effect.void,
122
- });
123
- //# sourceMappingURL=Progress.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Progress.js","sourceRoot":"","sources":["../../src/Alchemist/Progress.ts"],"names":[],"mappings":"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"}
@@ -1,116 +0,0 @@
1
- import * as Context from "effect/Context";
2
- import * as Effect from "effect/Effect";
3
- import * as FileSystem from "effect/FileSystem";
4
- import * as Layer from "effect/Layer";
5
- import * as Option from "effect/Option";
6
- import { AlchemyContext } from "../AlchemyContext.ts";
7
- import { ArtifactStore } from "../Artifacts.ts";
8
- import { AuthError, AuthProviders } from "../Auth/AuthProvider.ts";
9
- import * as Contributions from "../Contributions.ts";
10
- import * as Stack from "../Stack.ts";
11
- import { Stage } from "../Stage.ts";
12
- import { DEFAULT_ENTRYPOINT, resolveStackEntrypoint, StackEntrypointError } from "./Entrypoint.ts";
13
- export { DEFAULT_ENTRYPOINT, resolveStackEntrypoint, StackEntrypointError };
14
- /** Stage used by routes that inspect a project without addressing a deployment. */
15
- export declare const PLACEHOLDER_STAGE = "placeholder";
16
- /**
17
- * The default export of an `alchemy.run.ts` entrypoint: the stack effect
18
- * `Alchemy.Stack(...)` returns, carrying the metadata the factory attaches.
19
- */
20
- export type StackModule = ReturnType<ReturnType<typeof Stack.make>> & {
21
- readonly stackName: string;
22
- readonly providers: Layer.Layer<never> | undefined;
23
- readonly state: Layer.Layer<never> | undefined;
24
- readonly secrets: Stack.StackSecrets | undefined;
25
- };
26
- export interface StackModuleLoader {
27
- readonly import: (url: string) => Promise<{
28
- readonly default?: unknown;
29
- }>;
30
- }
31
- export declare const StackModuleLoader: Context.Reference<StackModuleLoader>;
32
- export declare const importStack: (main: string) => Effect.Effect<StackModule, import("effect/PlatformError").PlatformError | StackEntrypointError, FileSystem.FileSystem | import("effect/Path").Path>;
33
- /**
34
- * Which project, stage, and credentials a route acts under. Every route that
35
- * touches the user's program takes one of these; the optional fields fall back
36
- * to the same defaults the CLI uses.
37
- */
38
- export interface Target {
39
- /** Stack entrypoint. @default "alchemy.run.ts" */
40
- readonly entrypoint?: string;
41
- /** Stage the run addresses. @default "placeholder" (routes that never deploy) */
42
- readonly stage?: string;
43
- /** Profile whose credentials the run uses. Falls back to the active profile. */
44
- readonly profile?: string;
45
- /** `.env` file layered under the process environment. */
46
- readonly envFile?: string;
47
- }
48
- /** A {@link Target} for a route that genuinely acts on one stack instance. */
49
- export interface StackTarget extends Target {
50
- readonly entrypoint: string;
51
- readonly stage: string;
52
- }
53
- export interface OpenOptions {
54
- /** Run local (emulated) providers instead of the real cloud. */
55
- readonly dev?: boolean;
56
- /** Adopt pre-existing cloud resources instead of failing on conflict. */
57
- readonly adopt?: boolean;
58
- /** Upgrade an out-of-date state store without prompting. */
59
- readonly updateStateStore?: boolean;
60
- }
61
- export interface CollectAuthProvidersOptions {
62
- readonly main: string;
63
- readonly envFile: Option.Option<string>;
64
- readonly profile: string;
65
- }
66
- /** Memoize stack sessions and auth registries for one command or API scope. */
67
- export declare const routeCacheLayer: Layer.Layer<never, never, never>;
68
- /**
69
- * Import the user's stack module and build the services its resources run
70
- * under. This is the one place that decides what a stack run sees — plan,
71
- * apply, drift, logs, and state inspection all come through here.
72
- *
73
- * The session lives in the surrounding `Scope`; run stack-scoped effects by
74
- * providing `session.context` (`Effect.provide(effect, session.context)`).
75
- */
76
- declare const openUncached: (target: Target, options?: OpenOptions | undefined) => Effect.Effect<{
77
- stack: Stack.CompiledStack<unknown, unknown>;
78
- /**
79
- * Everything a stack-scoped effect runs under: the stack's own providers
80
- * and state store over this session's services.
81
- */
82
- context: Context.Context<unknown>;
83
- }, unknown, AlchemyContext | import("effect/process/ChildProcessSpawner").ChildProcessSpawner | import("../Auth/Credentials.ts").CredentialsStore | import("effect/Crypto").Crypto | FileSystem.FileSystem | import("effect/http/HttpClient").HttpClient | import("../Interaction.ts").Interaction | import("effect/Path").Path | import("../Auth/Profile.ts").ProfileStore | import("effect/Scope").Scope>;
84
- /** An imported, fully-configured stack instance. */
85
- export type Session = Effect.Success<ReturnType<typeof openUncached>>;
86
- export declare const open: (target: Target, options?: OpenOptions | undefined) => Effect.Effect<{
87
- stack: Stack.CompiledStack<unknown, unknown>;
88
- /**
89
- * Everything a stack-scoped effect runs under: the stack's own providers
90
- * and state store over this session's services.
91
- */
92
- context: Context.Context<unknown>;
93
- }, unknown, AlchemyContext | import("effect/process/ChildProcessSpawner").ChildProcessSpawner | import("../Auth/Credentials.ts").CredentialsStore | import("effect/Crypto").Crypto | FileSystem.FileSystem | import("effect/http/HttpClient").HttpClient | import("../Interaction.ts").Interaction | import("effect/Path").Path | import("../Auth/Profile.ts").ProfileStore | import("effect/Scope").Scope>;
94
- export interface BuildStackProvidersOptions {
95
- readonly main: string;
96
- readonly envFile: Option.Option<string>;
97
- readonly profile?: string;
98
- readonly registry?: AuthProviders["Service"];
99
- readonly logger?: Layer.Layer<never, never, never>;
100
- readonly extra?: Layer.Layer<never, never, never>;
101
- }
102
- export declare const buildStackProviders: (options: BuildStackProvidersOptions) => Effect.Effect<{
103
- authProviders: {
104
- [providerName: string]: import("../Auth/AuthProvider.ts").AuthProvider<{
105
- method: string;
106
- }, unknown>;
107
- };
108
- context: Context.Context<AuthProviders | Stack.Stack | Stage>;
109
- stackEffect: StackModule;
110
- }, import("effect/Config").ConfigError | import("effect/PlatformError").PlatformError | StackEntrypointError, AlchemyContext | ArtifactStore | import("effect/process/ChildProcessSpawner").ChildProcessSpawner | import("../Auth/Credentials.ts").CredentialsStore | import("effect/Crypto").Crypto | FileSystem.FileSystem | import("effect/http/HttpClient").HttpClient | import("../Interaction.ts").Interaction | import("effect/Path").Path | import("../Auth/Profile.ts").ProfileStore | import("effect/Scope").Scope>;
111
- export declare const collectAuthProviders: (options: CollectAuthProvidersOptions) => Effect.Effect<{
112
- [providerName: string]: import("../Auth/AuthProvider.ts").AuthProvider<{
113
- method: string;
114
- }, unknown>;
115
- }, AuthError | Contributions.ContributionError | import("effect/PlatformError").PlatformError, AlchemyContext | ArtifactStore | import("effect/process/ChildProcessSpawner").ChildProcessSpawner | import("../Auth/Credentials.ts").CredentialsStore | import("effect/Crypto").Crypto | FileSystem.FileSystem | import("effect/http/HttpClient").HttpClient | import("../Interaction.ts").Interaction | import("effect/Path").Path | import("../Auth/Profile.ts").ProfileStore | import("effect/Scope").Scope>;
116
- //# sourceMappingURL=Session.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../src/Alchemist/Session.ts"],"names":[],"mappings":"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"}
@@ -1,212 +0,0 @@
1
- var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
2
- if (typeof path === "string" && /^\.\.?\//.test(path)) {
3
- return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
4
- return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
5
- });
6
- }
7
- return path;
8
- };
9
- import { pathToFileURL } from "node:url";
10
- import * as Cause from "effect/Cause";
11
- import * as ConfigProvider from "effect/ConfigProvider";
12
- import * as Context from "effect/Context";
13
- import * as Duration from "effect/Duration";
14
- import * as Effect from "effect/Effect";
15
- import * as FileSystem from "effect/FileSystem";
16
- import * as Layer from "effect/Layer";
17
- import * as Logger from "effect/Logger";
18
- import * as Option from "effect/Option";
19
- import * as Predicate from "effect/Predicate";
20
- import * as Schema from "effect/Schema";
21
- import * as Semaphore from "effect/Semaphore";
22
- import { AdoptPolicy } from "../AdoptPolicy.js";
23
- import { AlchemyContext } from "../AlchemyContext.js";
24
- import { ArtifactStore, createArtifactStore } from "../Artifacts.js";
25
- import { AuthError, AuthProviders } from "../Auth/AuthProvider.js";
26
- import { SuppressMissingProviderConfig } from "../Auth/Profile.js";
27
- import { withProfileOverride } from "../Auth/Resolve.js";
28
- import * as Contributions from "../Contributions.js";
29
- import * as Stack from "../Stack.js";
30
- import { Stage } from "../Stage.js";
31
- import { loadConfigProvider, stackConfigLayer, StackConfigOverrides, } from "../Util/ConfigProvider.js";
32
- import { fileLogger } from "../Util/FileLogger.js";
33
- import { DEFAULT_ENTRYPOINT, resolveStackEntrypoint, StackEntrypointError } from "./Entrypoint.js";
34
- import { Progress } from "./Progress.js";
35
- export { DEFAULT_ENTRYPOINT, resolveStackEntrypoint, StackEntrypointError };
36
- /** Stage used by routes that inspect a project without addressing a deployment. */
37
- export const PLACEHOLDER_STAGE = "placeholder";
38
- export const StackModuleLoader = Context.Reference("Alchemy/Alchemist/StackModuleLoader", { defaultValue: () => ({ import: (url) => import(__rewriteRelativeImportExtension(url)) }) });
39
- export const importStack = Effect.fn(function* (main) {
40
- const absolutePath = yield* resolveStackEntrypoint(main);
41
- const loader = yield* StackModuleLoader;
42
- const module = yield* Effect.promise(() => loader.import(pathToFileURL(absolutePath).href));
43
- if (!Effect.isEffect(module.default) ||
44
- !Predicate.hasProperty(module.default, "stackName") ||
45
- typeof module.default.stackName !== "string") {
46
- return yield* new StackEntrypointError({
47
- message: `Stack entrypoint '${main}' must export a default stack definition (export default Alchemy.Stack({...})).`,
48
- });
49
- }
50
- // oxlint-disable-next-line effecttsgo/unsafe-effect-type-assertion -- default export shape validated at runtime above
51
- return module.default;
52
- });
53
- /** Shared config and logging services used by every stack/auth build path. */
54
- const sessionServices = Effect.fn("sessionServices")(function* (options) {
55
- const commandConfig = yield* loadConfigProvider(options.envFile);
56
- // `--env-file` only steers a stack's default secrets list and `--profile`
57
- // pins the profile inside it; see stackConfigLayer.
58
- return Layer.mergeAll(Layer.succeed(StackConfigOverrides, {
59
- envFile: Option.getOrUndefined(options.envFile),
60
- profile: options.profile,
61
- }), ConfigProvider.layer(withProfileOverride(commandConfig, options.profile)), options.logger ?? Logger.layer([fileLogger("out")], { mergeWithExisting: true }), options.extra ?? Layer.empty);
62
- });
63
- const RouteCache = Context.Reference("Alchemy/Alchemist/RouteCache", {
64
- defaultValue: () => ({
65
- open: (target, options) => openUncached(target, options),
66
- authProviders: collectAuthProvidersUncached,
67
- }),
68
- });
69
- const stackSessionKey = (target, options) => JSON.stringify([
70
- target.entrypoint ?? DEFAULT_ENTRYPOINT,
71
- target.stage ?? PLACEHOLDER_STAGE,
72
- target.profile ?? null,
73
- target.envFile ?? null,
74
- options.dev ?? false,
75
- options.adopt ?? false,
76
- options.updateStateStore ?? false,
77
- ]);
78
- const authRegistryKey = (options) => JSON.stringify([options.main, Option.getOrNull(options.envFile), options.profile]);
79
- const cached = (lock, entries, key, load) => Semaphore.withPermits(lock, 1)(Effect.suspend(() => {
80
- const existing = entries.get(key);
81
- if (existing !== undefined)
82
- return Effect.succeed(existing);
83
- return Effect.cached(load).pipe(Effect.tap((effect) => Effect.sync(() => {
84
- entries.set(key, effect);
85
- })));
86
- })).pipe(Effect.flatten);
87
- /** Memoize stack sessions and auth registries for one command or API scope. */
88
- export const routeCacheLayer = Layer.effect(RouteCache, Effect.sync(() => {
89
- const lock = Semaphore.makeUnsafe(1);
90
- const sessions = new Map();
91
- const registries = new Map();
92
- return {
93
- open: (target, options) => cached(lock, sessions, stackSessionKey(target, options), openUncached(target, options)),
94
- authProviders: (options) => cached(lock, registries, authRegistryKey(options), collectAuthProvidersUncached(options)),
95
- };
96
- }));
97
- /**
98
- * Import the user's stack module and build the services its resources run
99
- * under. This is the one place that decides what a stack run sees — plan,
100
- * apply, drift, logs, and state inspection all come through here.
101
- *
102
- * The session lives in the surrounding `Scope`; run stack-scoped effects by
103
- * providing `session.context` (`Effect.provide(effect, session.context)`).
104
- */
105
- const openUncached = Effect.fn("openStackSessionUncached")(function* (target, options = {}) {
106
- // Phases are emitted here, at the actual work boundaries, rather than by
107
- // callers around `open` — the import and the service build both happen
108
- // inside this function, so only it can time them honestly.
109
- const report = yield* Progress;
110
- yield* report({ _tag: "plan.phase", phase: "importing-module" });
111
- const stackEffect = yield* importStack(target.entrypoint ?? DEFAULT_ENTRYPOINT);
112
- yield* report({ _tag: "plan.phase", phase: "resolving-services" });
113
- const shared = yield* sessionServices({
114
- envFile: Option.fromNullishOr(target.envFile),
115
- profile: target.profile,
116
- });
117
- const services = Layer.mergeAll(Layer.effect(AlchemyContext, Effect.map(AlchemyContext, (context) => ({
118
- ...context,
119
- dev: options.dev ?? context.dev,
120
- adopt: options.adopt ?? false,
121
- updateStateStore: options.updateStateStore ?? false,
122
- }))), Layer.succeedContext(Context.make(AdoptPolicy, options.adopt ?? false).pipe(Context.add(ArtifactStore, createArtifactStore()), Context.add(AuthProviders, yield* Effect.serviceOption(AuthProviders).pipe(Effect.map(Option.getOrElse(() => ({}))))), Context.add(Stage, target.stage ?? PLACEHOLDER_STAGE))), shared);
123
- const sessionContext = yield* Layer.build(services);
124
- const stack = yield* Effect.provide(stackEffect, sessionContext);
125
- return {
126
- stack,
127
- /**
128
- * Everything a stack-scoped effect runs under: the stack's own providers
129
- * and state store over this session's services.
130
- */
131
- context: Context.merge(sessionContext, stack.services),
132
- };
133
- });
134
- export const open = Effect.fn("openStackSession")(function* (target, options = {}) {
135
- return yield* (yield* RouteCache).open(target, options);
136
- });
137
- const placeholderStack = (name) => ({
138
- actions: {},
139
- bindings: {},
140
- name,
141
- resources: {},
142
- stage: PLACEHOLDER_STAGE,
143
- });
144
- export const buildStackProviders = Effect.fn("buildStackProviders")(function* (options) {
145
- const authProviders = options.registry ?? {};
146
- const stackEffect = yield* importStack(options.main);
147
- const shared = yield* sessionServices(options);
148
- const valueServices = Layer.succeedContext(Context.make(AuthProviders, authProviders).pipe(Context.add(Stage, PLACEHOLDER_STAGE), Context.add(Stack.Stack, placeholderStack(stackEffect.stackName))));
149
- const context = yield* Layer.build((stackEffect.providers ?? Layer.empty).pipe(Layer.provideMerge(stackEffect.state ?? Layer.empty), Layer.provideMerge(stackConfigLayer(stackEffect.secrets)), Layer.provideMerge(Layer.mergeAll(valueServices, shared))));
150
- return { authProviders, context, stackEffect };
151
- });
152
- /**
153
- * Every provider's auth provider, merged into one registering layer. One
154
- * provider whose auth fails to load is skipped with a warning, so it can't
155
- * take every other provider's auth down with it.
156
- */
157
- const contributedAuth = Effect.fn("contributedAuth")(function* () {
158
- const layers = yield* Effect.forEach(yield* Contributions.load(), (provider) => provider.auth
159
- ? Contributions.resolve(provider, "auth", provider.auth).pipe(Effect.catch((error) => Effect.as(Effect.logWarning(error.message), undefined)))
160
- : Effect.void, { concurrency: "unbounded" });
161
- return Layer.mergeAll(Layer.empty, ...layers.filter((layer) => layer !== undefined));
162
- });
163
- const buildContributedAuthProviders = Effect.fn("buildContributedAuthProviders")(function* (options) {
164
- const authProviders = options.registry ?? {};
165
- const shared = yield* sessionServices(options);
166
- yield* Layer.build(Layer.provide(yield* contributedAuth(), Layer.mergeAll(Layer.succeed(AuthProviders, authProviders), shared)));
167
- return authProviders;
168
- });
169
- const isMissingProviderConfig = Schema.is(Schema.Struct({ _tag: Schema.Literals(["MissingProviderConfig"]) }));
170
- /**
171
- * Every auth provider reachable from the current project: the built-ins, plus
172
- * whatever the user's stack module registers when it is importable.
173
- */
174
- const collectAuthProvidersUncached = Effect.fn("collectAuthProvidersUncached")(function* (options) {
175
- const authProviders = {};
176
- yield* buildContributedAuthProviders({
177
- envFile: options.envFile,
178
- profile: options.profile,
179
- registry: authProviders,
180
- });
181
- const fs = yield* FileSystem.FileSystem;
182
- const entrypointExists = yield* fs.exists(options.main);
183
- const missingDefault = options.main === DEFAULT_ENTRYPOINT && !entrypointExists;
184
- if (!entrypointExists && !missingDefault) {
185
- return yield* AuthError.make({
186
- message: `Stack entrypoint '${options.main}' does not exist.`,
187
- });
188
- }
189
- if (!missingDefault) {
190
- yield* buildStackProviders({ ...options, registry: authProviders }).pipe(Effect.timeoutOption(Duration.seconds(15)), Effect.catchCause((cause) => {
191
- const suppressed = cause.reasons.some((reason) => {
192
- const error = Cause.isFailReason(reason)
193
- ? reason.error
194
- : Cause.isDieReason(reason)
195
- ? reason.defect
196
- : undefined;
197
- return isMissingProviderConfig(error);
198
- });
199
- return suppressed
200
- ? Effect.void
201
- : Effect.fail(AuthError.make({
202
- message: `Could not load auth providers from '${options.main}'.`,
203
- cause,
204
- }));
205
- }));
206
- }
207
- return authProviders;
208
- }, Effect.provideService(SuppressMissingProviderConfig, true));
209
- export const collectAuthProviders = Effect.fn("collectAuthProviders")(function* (options) {
210
- return yield* (yield* RouteCache).authProviders(options);
211
- });
212
- //# sourceMappingURL=Session.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Session.js","sourceRoot":"","sources":["../../src/Alchemist/Session.ts"],"names":[],"mappings":"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"}
@@ -1,55 +0,0 @@
1
- import * as Effect from "effect/Effect";
2
- import * as EngineDrift from "../../Drift.ts";
3
- import type { Plan } from "../../Plan.ts";
4
- import { type Session, type StackTarget } from "../Session.ts";
5
- import * as Stack from "./stack.ts";
6
- export interface DriftedResource {
7
- readonly fqn: string;
8
- readonly logicalId: string;
9
- readonly resourceType: string;
10
- readonly status: "in-sync" | "drifted" | "missing";
11
- readonly actual?: unknown;
12
- }
13
- export interface DriftSnapshot {
14
- readonly stack: {
15
- readonly name: string;
16
- readonly stage: string;
17
- };
18
- readonly resources: ReadonlyArray<DriftedResource>;
19
- readonly repairPlan: {
20
- readonly summary: Stack.PlanSummary;
21
- readonly native: Plan;
22
- };
23
- /** The session drift was inspected under; {@link repair} runs in it. */
24
- readonly session: Session;
25
- }
26
- /** Whether the drift check found anything worth repairing. */
27
- export declare const hasDrift: (snapshot: DriftSnapshot) => boolean;
28
- /** Compare deployed state against the real cloud and plan the repair. */
29
- export declare const inspect: (target: StackTarget) => Effect.Effect<{
30
- stack: {
31
- name: string;
32
- stage: string;
33
- };
34
- resources: {
35
- fqn: string;
36
- logicalId: string;
37
- resourceType: string;
38
- status: "drifted" | "in-sync" | "missing";
39
- actual: any;
40
- }[];
41
- repairPlan: {
42
- summary: Stack.PlanSummary;
43
- native: Plan;
44
- };
45
- session: {
46
- stack: import("../../Stack.ts").CompiledStack<unknown, unknown>;
47
- context: import("effect/Context").Context<unknown>;
48
- };
49
- }, any, import("../../AlchemyContext.ts").AlchemyContext | import("effect/process/ChildProcessSpawner").ChildProcessSpawner | import("../../Auth/Credentials.ts").CredentialsStore | import("effect/Crypto").Crypto | import("effect/FileSystem").FileSystem | import("effect/http/HttpClient").HttpClient | import("../../Interaction.ts").Interaction | import("effect/Path").Path | import("../../Auth/Profile.ts").ProfileStore | import("effect/Scope").Scope>;
50
- /**
51
- * Converge state back to the cloud's actual shape. Engine apply events are
52
- * reported through {@link Progress}.
53
- */
54
- export declare const repair: (snapshot: DriftSnapshot) => Effect.Effect<EngineDrift.DriftResult, any, never>;
55
- //# sourceMappingURL=drift.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drift.d.ts","sourceRoot":"","sources":["../../../src/Alchemist/routes/drift.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAQ,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAEpC,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IACnD,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAClE,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IACnD,QAAQ,CAAC,UAAU,EAAE;QACnB,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC;QACpC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;KACvB,CAAC;IACF,wEAAwE;IACxE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,8DAA8D;AAC9D,eAAO,MAAM,QAAQ,aAAc,aAAa,KAAG,OAGhD,CAAC;AASJ,yEAAyE;AACzE,eAAO,MAAM,OAAO;;;;;;;;;;;;;QA4BF,OAAO;QAAyB,MAAM;;;;;;mcAGtD,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,MAAM,iFASjB,CAAC"}
@@ -1,52 +0,0 @@
1
- import * as Effect from "effect/Effect";
2
- import * as EngineDrift from "../../Drift.js";
3
- import { applySession, Progress, withSpanEvents } from "../Progress.js";
4
- import { open } from "../Session.js";
5
- import * as Stack from "./stack.js";
6
- /** Whether the drift check found anything worth repairing. */
7
- export const hasDrift = (snapshot) => snapshot.resources.some((resource) => resource.status === "drifted" || resource.status === "missing");
8
- const status = (action) => action === "unchanged"
9
- ? "in-sync"
10
- : action === "missing"
11
- ? "missing"
12
- : "drifted";
13
- /** Compare deployed state against the real cloud and plan the repair. */
14
- export const inspect = Effect.fn("Alchemist.drift.inspect")(function* (target) {
15
- const report = withSpanEvents(yield* Progress);
16
- // `open` emits importing-module / resolving-services at the real work
17
- // boundaries; hand it the wrapped reporter so they land in traces too.
18
- const session = yield* open(target).pipe(Effect.provideService(Progress, report));
19
- const identity = {
20
- name: session.stack.name,
21
- stage: session.stack.stage,
22
- };
23
- const { result, plan } = yield* EngineDrift.plan(identity).pipe(
24
- // The engine's phase and per-resource observation events flow through
25
- // the same wrapped reporter; drift-flavored wording is the renderer's
26
- // job (renderPlanning's computingLabel).
27
- Effect.provideService(Progress, report), Effect.provide(session.context));
28
- yield* report({ _tag: "plan.phase", phase: "plan-ready" });
29
- return {
30
- stack: identity,
31
- resources: Object.values(result.resources)
32
- .filter((resource) => resource.action !== "skipped")
33
- .map((resource) => ({
34
- fqn: resource.fqn,
35
- logicalId: resource.logicalId,
36
- resourceType: resource.resourceType,
37
- status: status(resource.action),
38
- actual: resource.attr,
39
- })),
40
- repairPlan: { summary: Stack.summarize(plan), native: plan },
41
- session,
42
- };
43
- });
44
- /**
45
- * Converge state back to the cloud's actual shape. Engine apply events are
46
- * reported through {@link Progress}.
47
- */
48
- export const repair = Effect.fn("Alchemist.drift.repair")(function* (snapshot) {
49
- const report = withSpanEvents(yield* Progress);
50
- return yield* Effect.provide(EngineDrift.repair({ name: snapshot.stack.name, stage: snapshot.stack.stage }, { session: applySession(report) }), snapshot.session.context);
51
- });
52
- //# sourceMappingURL=drift.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drift.js","sourceRoot":"","sources":["../../../src/Alchemist/routes/drift.ts"],"names":[],"mappings":"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"}