@automaton-labs/aib 0.0.6 → 0.0.8

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 (586) hide show
  1. package/README.md +36 -257
  2. package/config/agent-dx-policy.default.json +31 -0
  3. package/config/control-plane-client.default.json +3 -0
  4. package/dist/agent-dx/agent-dx.js +805 -0
  5. package/dist/agent-dx/presentation.js +32 -0
  6. package/dist/alias-advisor/analyze.js +982 -0
  7. package/dist/alias-advisor/exact-text-cost.js +74 -0
  8. package/dist/alias-advisor/lexical.js +240 -0
  9. package/dist/alias-advisor/model.js +2 -0
  10. package/dist/alias-advisor/path-identity.js +49 -0
  11. package/dist/alias-advisor/ranking.js +171 -0
  12. package/dist/alias-advisor/token-estimator.js +85 -0
  13. package/dist/bin/aib.js +5 -1
  14. package/dist/bin/cli.js +811 -2
  15. package/dist/commands/add-missing-imports-preview-cache.js +99 -2
  16. package/dist/commands/add-missing-imports.js +241 -2
  17. package/dist/commands/apply-module-plan.js +1319 -3
  18. package/dist/commands/background-command.js +378 -0
  19. package/dist/commands/captured-input.js +74 -2
  20. package/dist/commands/config-command.js +314 -2
  21. package/dist/commands/config-output.js +357 -10
  22. package/dist/commands/control-plane-command.js +183 -0
  23. package/dist/commands/declaration-command.js +1209 -0
  24. package/dist/commands/declaration-execution-cache.js +79 -0
  25. package/dist/commands/declaration-format.js +221 -0
  26. package/dist/commands/declaration-preview-cache.js +114 -0
  27. package/dist/commands/diagnostics-command.js +70 -3
  28. package/dist/commands/doctor.js +137 -2
  29. package/dist/commands/execution-command.js +117 -1
  30. package/dist/commands/exports-star-collapse-command.js +178 -0
  31. package/dist/commands/exports-star-command.js +252 -0
  32. package/dist/commands/exports-star-preview-cache.js +84 -0
  33. package/dist/commands/feedback-command.js +176 -3
  34. package/dist/commands/file-move-to-dir-execution-cache.js +92 -0
  35. package/dist/commands/file-move-to-dir-preview-cache.js +125 -0
  36. package/dist/commands/file-move-to-dir-worker.js +54 -0
  37. package/dist/commands/file-move-to-dir.js +1073 -0
  38. package/dist/commands/file-mutation-runtime.js +102 -0
  39. package/dist/commands/file-mutation-worker-apply.js +180 -0
  40. package/dist/commands/file-refactor-batch-execution-cache.js +90 -0
  41. package/dist/commands/file-refactor-batch-preview-cache.js +125 -0
  42. package/dist/commands/file-refactor-batch-worker.js +54 -0
  43. package/dist/commands/file-refactor-batch.js +1154 -0
  44. package/dist/commands/file-rename-execution-cache.js +92 -0
  45. package/dist/commands/file-rename-preview-cache.js +125 -0
  46. package/dist/commands/file-rename-worker.js +54 -0
  47. package/dist/commands/file-rename.js +1053 -0
  48. package/dist/commands/file-text-edit-executor.js +205 -0
  49. package/dist/commands/find-importers.js +52 -1
  50. package/dist/commands/find-unused-imports.js +55 -1
  51. package/dist/commands/generate-docs-command.js +244 -6
  52. package/dist/commands/help-command.js +460 -7
  53. package/dist/commands/import-specifier-policy.js +391 -0
  54. package/dist/commands/imports-command.js +68 -1
  55. package/dist/commands/imports-rebase.js +1138 -0
  56. package/dist/commands/init-skill-usage.js +92 -3
  57. package/dist/commands/init-workspace.js +30 -1
  58. package/dist/commands/inspect-alias-candidates.js +413 -0
  59. package/dist/commands/inspect-cycles.js +811 -5
  60. package/dist/commands/inspect-direct-usages.js +98 -0
  61. package/dist/commands/inspect-duplicates-format.js +229 -0
  62. package/dist/commands/inspect-format-primitives.js +127 -0
  63. package/dist/commands/inspect-format.js +1590 -18
  64. package/dist/commands/inspect-graph.js +1553 -9
  65. package/dist/commands/inspect-imports.js +339 -2
  66. package/dist/commands/inspect-mixed-format.js +524 -0
  67. package/dist/commands/inspect-module-plan-format.js +216 -0
  68. package/dist/commands/inspect-module-plan-serialization.js +402 -0
  69. package/dist/commands/inspect-reference-path-format.js +157 -0
  70. package/dist/commands/inspect-request-values.js +599 -0
  71. package/dist/commands/inspect-selector-kind.js +21 -0
  72. package/dist/commands/inspect-selector.js +50 -0
  73. package/dist/commands/inspect-symbol-format.js +90 -0
  74. package/dist/commands/inspect-topology.js +435 -0
  75. package/dist/commands/inspect-tree.js +827 -5
  76. package/dist/commands/inspect-usages-detail.js +793 -0
  77. package/dist/commands/inspect-usages-evidence.js +31 -0
  78. package/dist/commands/inspect-usages-format.js +367 -0
  79. package/dist/commands/inspect.js +1450 -16
  80. package/dist/commands/internal-command.js +64 -0
  81. package/dist/commands/json-file-input.js +60 -1
  82. package/dist/commands/module-plan-cache.js +156 -2
  83. package/dist/commands/module-plan-standalone.js +208 -0
  84. package/dist/commands/module-plan-timeout.js +77 -1
  85. package/dist/commands/move-preview-cache.js +101 -2
  86. package/dist/commands/mutate-aggregate-output.js +996 -0
  87. package/dist/commands/mutate-child-execution.js +374 -0
  88. package/dist/commands/mutate-command.js +1394 -0
  89. package/dist/commands/mutate-declaration-output.js +313 -0
  90. package/dist/commands/mutate-domain-adapters.js +638 -0
  91. package/dist/commands/mutate-execution-cache.js +114 -0
  92. package/dist/commands/mutate-execution-status.js +598 -0
  93. package/dist/commands/mutate-failure-output.js +531 -0
  94. package/dist/commands/mutate-file-view.js +151 -0
  95. package/dist/commands/mutate-object-output.js +91 -0
  96. package/dist/commands/mutate-output-values.js +97 -0
  97. package/dist/commands/mutate-preview-cache.js +86 -0
  98. package/dist/commands/mutate-response-replay.js +153 -0
  99. package/dist/commands/mutate-result-projection.js +818 -0
  100. package/dist/commands/mutation-eta.js +28 -0
  101. package/dist/commands/mutation-execution-cache.js +140 -3
  102. package/dist/commands/mutation-recovery-journal.js +195 -0
  103. package/dist/commands/normalize-imports.js +1120 -4
  104. package/dist/commands/object-pack-command.js +546 -0
  105. package/dist/commands/object-pack-preview-cache.js +88 -0
  106. package/dist/commands/observability-command.js +47 -3
  107. package/dist/commands/ota-command.js +403 -0
  108. package/dist/commands/print-config.js +10 -1
  109. package/dist/commands/quick-read.js +1113 -11
  110. package/dist/commands/refactor-batch-builder.js +265 -1
  111. package/dist/commands/refactor-batch-execution-cache.js +85 -1
  112. package/dist/commands/refactor-batch-preview-cache.js +96 -2
  113. package/dist/commands/refactor-batch.js +461 -4
  114. package/dist/commands/rename-entities.js +794 -4
  115. package/dist/commands/rename-execution-cache.js +49 -1
  116. package/dist/commands/rename-input.js +22 -1
  117. package/dist/commands/rename-polling-policy.js +68 -0
  118. package/dist/commands/rename-preview-cache.js +96 -2
  119. package/dist/commands/result-view.js +993 -6
  120. package/dist/commands/reveal-command.js +445 -5
  121. package/dist/commands/selector-suggestions.js +93 -0
  122. package/dist/commands/session-workspace.js +1836 -31
  123. package/dist/commands/shared.js +2 -1
  124. package/dist/commands/skills-command.js +315 -0
  125. package/dist/commands/sync-command.js +59 -2
  126. package/dist/commands/worker-command.js +173 -0
  127. package/dist/commands/workspace-cache.js +55 -1
  128. package/dist/config/defaults.js +26 -1
  129. package/dist/config/env-vars.js +77 -1
  130. package/dist/config/glob-match.js +44 -1
  131. package/dist/config/import-rules.js +165 -1
  132. package/dist/config/local-config.js +293 -3
  133. package/dist/config/mutation-comments.js +51 -1
  134. package/dist/config/path-aliases.js +165 -1
  135. package/dist/config/path-display.js +84 -1
  136. package/dist/config/product-storage.js +37 -1
  137. package/dist/config/request-env.js +21 -0
  138. package/dist/config/request-routing-context.js +23 -0
  139. package/dist/config/resolve-command-alias.js +74 -1
  140. package/dist/config/resolve.js +24 -1
  141. package/dist/config/tsconfig-discovery.js +113 -1
  142. package/dist/config/typescript-preferences.js +131 -0
  143. package/dist/config/workspace-root.js +310 -3
  144. package/dist/config/workspace-state.js +254 -1
  145. package/dist/content/content-bundle.js +88 -1
  146. package/dist/diagnostics/module-plan-timeline.js +75 -2
  147. package/dist/diagnostics/readiness-text.js +45 -8
  148. package/dist/dsl/aib-dsl.js +838 -1
  149. package/dist/dsl/declaration-dsl.js +264 -0
  150. package/dist/dsl/file-move-to-dir-dsl.js +123 -0
  151. package/dist/dsl/file-refactor-batch-dsl.js +203 -0
  152. package/dist/dsl/file-rename-dsl.js +135 -0
  153. package/dist/dsl/mutate-dsl.js +746 -0
  154. package/dist/help/bootstrap.bash.md +742 -0
  155. package/dist/help/bootstrap.md +236 -437
  156. package/dist/help/bootstrap.pwsh.md +742 -0
  157. package/dist/help/docs/basics.md +1 -1
  158. package/dist/help/docs/config-setup.import-normalize.md +65 -65
  159. package/dist/help/docs/config-setup.import-rules.md +6 -5
  160. package/dist/help/docs/dsl.md +4 -3
  161. package/dist/help/docs/first-setup.md +6 -5
  162. package/dist/help/docs/help-protocol.md +4 -3
  163. package/dist/help/docs/import.base.md +38 -0
  164. package/dist/help/docs/import.rebase.md +85 -0
  165. package/dist/help/docs/inspect.aliasCandidates.md +39 -0
  166. package/dist/help/docs/inspect.code.md +5 -11
  167. package/dist/help/docs/inspect.deps.md +7 -7
  168. package/dist/help/docs/inspect.file.md +10 -18
  169. package/dist/help/docs/inspect.graph.md +6 -20
  170. package/dist/help/docs/{inspect.md → inspect.shared.md} +18 -17
  171. package/dist/help/docs/modulePlan.md +24 -28
  172. package/dist/help/docs/move.md +19 -22
  173. package/dist/help/docs/moveToDir.md +46 -0
  174. package/dist/help/docs/mutate.mixed.md +34 -0
  175. package/dist/help/docs/mutation.shared.md +55 -0
  176. package/dist/help/docs/patterns.md +3 -16
  177. package/dist/help/docs/qr.md +13 -22
  178. package/dist/help/docs/quick-map.md +36 -23
  179. package/dist/help/docs/recipe.file-layout.md +15 -0
  180. package/dist/help/docs/recipe.import-boundary.md +92 -0
  181. package/dist/help/docs/recipe.safe-artifact-probing.md +68 -0
  182. package/dist/help/docs/recipe.unfamiliar-area.md +64 -0
  183. package/dist/help/docs/recipes.md +20 -0
  184. package/dist/help/docs/rename.md +19 -27
  185. package/dist/help/docs/renameFile.md +36 -0
  186. package/dist/help/docs/rg.md +22 -0
  187. package/dist/help/docs/rules.md +26 -0
  188. package/dist/help/docs/selectors.md +3 -2
  189. package/dist/help/docs/session.md +1 -1
  190. package/dist/help/dsl/bootstrap.bash.md +742 -0
  191. package/dist/help/dsl/bootstrap.md +236 -437
  192. package/dist/help/dsl/bootstrap.pwsh.md +742 -0
  193. package/dist/help/dsl/docs/basics.md +1 -1
  194. package/dist/help/dsl/docs/config-setup.import-normalize.md +65 -65
  195. package/dist/help/dsl/docs/config-setup.import-rules.md +6 -5
  196. package/dist/help/dsl/docs/dsl.md +4 -3
  197. package/dist/help/dsl/docs/first-setup.md +6 -5
  198. package/dist/help/dsl/docs/help-protocol.md +4 -3
  199. package/dist/help/dsl/docs/import.base.md +38 -0
  200. package/dist/help/dsl/docs/import.rebase.md +85 -0
  201. package/dist/help/dsl/docs/inspect.aliasCandidates.md +39 -0
  202. package/dist/help/dsl/docs/inspect.code.md +5 -11
  203. package/dist/help/dsl/docs/inspect.deps.md +7 -7
  204. package/dist/help/dsl/docs/inspect.file.md +10 -18
  205. package/dist/help/dsl/docs/inspect.graph.md +6 -20
  206. package/dist/help/dsl/docs/{inspect.md → inspect.shared.md} +18 -17
  207. package/dist/help/dsl/docs/modulePlan.md +24 -28
  208. package/dist/help/dsl/docs/move.md +19 -22
  209. package/dist/help/dsl/docs/moveToDir.md +46 -0
  210. package/dist/help/dsl/docs/mutate.mixed.md +34 -0
  211. package/dist/help/dsl/docs/mutation.shared.md +55 -0
  212. package/dist/help/dsl/docs/patterns.md +3 -16
  213. package/dist/help/dsl/docs/qr.md +13 -22
  214. package/dist/help/dsl/docs/quick-map.md +36 -23
  215. package/dist/help/dsl/docs/recipe.file-layout.md +15 -0
  216. package/dist/help/dsl/docs/recipe.import-boundary.md +92 -0
  217. package/dist/help/dsl/docs/recipe.safe-artifact-probing.md +68 -0
  218. package/dist/help/dsl/docs/recipe.unfamiliar-area.md +64 -0
  219. package/dist/help/dsl/docs/recipes.md +20 -0
  220. package/dist/help/dsl/docs/rename.md +19 -27
  221. package/dist/help/dsl/docs/renameFile.md +36 -0
  222. package/dist/help/dsl/docs/rg.md +22 -0
  223. package/dist/help/dsl/docs/rules.md +26 -0
  224. package/dist/help/dsl/docs/selectors.md +3 -2
  225. package/dist/help/dsl/docs/session.md +1 -1
  226. package/dist/help/dsl/full.md +236 -437
  227. package/dist/help/dsl/help-index.md +49 -0
  228. package/dist/help/dsl/snippets/agents.md +2 -2
  229. package/dist/help/dsl/tokens/qr.inline.examples.md +2 -0
  230. package/dist/help/dsl/tokens/stdin.examples.bash.md +8 -0
  231. package/dist/help/dsl/tokens/stdin.examples.pwsh.md +8 -0
  232. package/dist/help/dsl/tokens/stdin.examples.with-qr.bash.md +12 -0
  233. package/dist/help/dsl/tokens/stdin.examples.with-qr.pwsh.md +12 -0
  234. package/dist/help/dsl/topics/basics.md +1 -1
  235. package/dist/help/dsl/topics/config-setup.import-normalize.md +65 -65
  236. package/dist/help/dsl/topics/config-setup.import-rules.md +6 -5
  237. package/dist/help/dsl/topics/dsl.md +4 -3
  238. package/dist/help/dsl/topics/first-setup.md +6 -5
  239. package/dist/help/dsl/topics/help-protocol.md +4 -3
  240. package/dist/help/dsl/topics/import.base.md +36 -0
  241. package/dist/help/dsl/topics/import.rebase.md +83 -0
  242. package/dist/help/dsl/topics/inspect.aliasCandidates.md +37 -0
  243. package/dist/help/dsl/topics/inspect.code.md +5 -11
  244. package/dist/help/dsl/topics/inspect.deps.md +7 -7
  245. package/dist/help/dsl/topics/inspect.file.md +10 -18
  246. package/dist/help/dsl/topics/inspect.graph.md +6 -20
  247. package/dist/help/dsl/topics/{inspect.md → inspect.shared.md} +18 -17
  248. package/dist/help/dsl/topics/modulePlan.md +21 -26
  249. package/dist/help/dsl/topics/move.md +17 -18
  250. package/dist/help/dsl/topics/moveToDir.md +44 -0
  251. package/dist/help/dsl/topics/mutate.mixed.md +32 -0
  252. package/dist/help/dsl/topics/mutation.shared.md +53 -0
  253. package/dist/help/dsl/topics/patterns.md +3 -16
  254. package/dist/help/dsl/topics/qr.md +13 -22
  255. package/dist/help/dsl/topics/quick-map.md +36 -23
  256. package/dist/help/dsl/topics/recipe.file-layout.md +13 -0
  257. package/dist/help/dsl/topics/recipe.import-boundary.md +90 -0
  258. package/dist/help/dsl/topics/recipe.safe-artifact-probing.md +66 -0
  259. package/dist/help/dsl/topics/recipe.unfamiliar-area.md +62 -0
  260. package/dist/help/dsl/topics/recipes.md +18 -0
  261. package/dist/help/dsl/topics/rename.md +15 -15
  262. package/dist/help/dsl/topics/renameFile.md +34 -0
  263. package/dist/help/dsl/topics/rg.md +20 -0
  264. package/dist/help/dsl/topics/rules.md +24 -0
  265. package/dist/help/dsl/topics/selectors.md +3 -2
  266. package/dist/help/dsl/topics/session.md +1 -1
  267. package/dist/help/full.md +236 -437
  268. package/dist/help/help-index.md +49 -0
  269. package/dist/help/help-meta.json +114 -48
  270. package/dist/help/index.md +76 -87
  271. package/dist/help/snippets/agents.md +2 -2
  272. package/dist/help/tokens/qr.inline.examples.md +2 -0
  273. package/dist/help/tokens/stdin.examples.bash.md +8 -0
  274. package/dist/help/tokens/stdin.examples.pwsh.md +8 -0
  275. package/dist/help/tokens/stdin.examples.with-qr.bash.md +12 -0
  276. package/dist/help/tokens/stdin.examples.with-qr.pwsh.md +12 -0
  277. package/dist/help/topics/basics.md +1 -1
  278. package/dist/help/topics/config-setup.import-normalize.md +65 -65
  279. package/dist/help/topics/config-setup.import-rules.md +6 -5
  280. package/dist/help/topics/dsl.md +4 -3
  281. package/dist/help/topics/first-setup.md +6 -5
  282. package/dist/help/topics/help-protocol.md +4 -3
  283. package/dist/help/topics/import.base.md +36 -0
  284. package/dist/help/topics/import.rebase.md +83 -0
  285. package/dist/help/topics/inspect.aliasCandidates.md +37 -0
  286. package/dist/help/topics/inspect.code.md +5 -11
  287. package/dist/help/topics/inspect.deps.md +7 -7
  288. package/dist/help/topics/inspect.file.md +10 -18
  289. package/dist/help/topics/inspect.graph.md +6 -20
  290. package/dist/help/topics/{inspect.md → inspect.shared.md} +18 -17
  291. package/dist/help/topics/modulePlan.md +21 -26
  292. package/dist/help/topics/move.md +17 -18
  293. package/dist/help/topics/moveToDir.md +44 -0
  294. package/dist/help/topics/mutate.mixed.md +32 -0
  295. package/dist/help/topics/mutation.shared.md +53 -0
  296. package/dist/help/topics/patterns.md +3 -16
  297. package/dist/help/topics/qr.md +13 -22
  298. package/dist/help/topics/quick-map.md +36 -23
  299. package/dist/help/topics/recipe.file-layout.md +13 -0
  300. package/dist/help/topics/recipe.import-boundary.md +90 -0
  301. package/dist/help/topics/recipe.safe-artifact-probing.md +66 -0
  302. package/dist/help/topics/recipe.unfamiliar-area.md +62 -0
  303. package/dist/help/topics/recipes.md +18 -0
  304. package/dist/help/topics/rename.md +15 -15
  305. package/dist/help/topics/renameFile.md +34 -0
  306. package/dist/help/topics/rg.md +20 -0
  307. package/dist/help/topics/rules.md +24 -0
  308. package/dist/help/topics/selectors.md +3 -2
  309. package/dist/help/topics/session.md +1 -1
  310. package/dist/host/capabilities.js +56 -0
  311. package/dist/imports/standalone-import-analysis.js +602 -0
  312. package/dist/imports/standalone-import-model.js +2 -0
  313. package/dist/imports/standalone-import-process.js +66 -0
  314. package/dist/imports/standalone-import-worker.js +27 -0
  315. package/dist/imports/standalone-ts-project.js +147 -0
  316. package/dist/inspect/inspect-duplicates-service.js +526 -0
  317. package/dist/inspect/inspect-reverse-module-closure.js +338 -0
  318. package/dist/inspect/inspect-source-ranges.js +82 -0
  319. package/dist/inspect/inspect-source-shape.js +649 -0
  320. package/dist/inspect/standalone-inspect-analysis.js +319 -0
  321. package/dist/inspect/standalone-inspect-model.js +9 -0
  322. package/dist/inspect/standalone-inspect-process.js +55 -0
  323. package/dist/inspect/standalone-inspect-usages.js +274 -0
  324. package/dist/inspect/standalone-inspect-worker.js +13 -0
  325. package/dist/metrics/central-metrics.js +101 -2
  326. package/dist/mutation/concrete-edit-plan.js +157 -0
  327. package/dist/mutation/exports-star-collapse-preview.js +361 -0
  328. package/dist/mutation/exports-star-expand-apply.js +373 -0
  329. package/dist/mutation/exports-star-expand-preview.js +807 -0
  330. package/dist/mutation/file-impact-scan.js +182 -0
  331. package/dist/mutation/file-mutation-discovery.js +674 -0
  332. package/dist/mutation/file-mutation-eta.js +99 -0
  333. package/dist/mutation/file-mutation-standalone-apply.js +584 -0
  334. package/dist/mutation/file-mutation-standalone-planner.js +500 -0
  335. package/dist/mutation/file-mutation-tsserver-session.js +473 -0
  336. package/dist/mutation/mutation-estimate.js +45 -0
  337. package/dist/mutation/mutation-plan.js +467 -0
  338. package/dist/mutation/object-mutation-foundation.js +2 -0
  339. package/dist/mutation/object-mutation-partition.js +148 -0
  340. package/dist/mutation/object-pack-semantic-apply.js +507 -0
  341. package/dist/mutation/object-pack-semantic-preview.js +984 -0
  342. package/dist/mutation/object-unpack-semantic-preview.js +993 -0
  343. package/dist/mutation/package-manifest-impact.js +176 -0
  344. package/dist/mutation/rename-owner-worker-child.js +37 -0
  345. package/dist/mutation/rename-owner-worker.js +122 -0
  346. package/dist/mutation/runtime-cycle-query.js +66 -0
  347. package/dist/mutation/semantic-execution-progress.js +63 -0
  348. package/dist/mutation/semantic-export-index.js +474 -0
  349. package/dist/mutation/semantic-impact-scan.js +434 -0
  350. package/dist/mutation/semantic-model.js +2 -0
  351. package/dist/mutation/semantic-move-best-effort-planner.js +209 -0
  352. package/dist/mutation/semantic-move-config-worker-child.js +61 -0
  353. package/dist/mutation/semantic-move-config-worker.js +449 -0
  354. package/dist/mutation/semantic-move-declarations.js +94 -0
  355. package/dist/mutation/semantic-move-metrics.js +119 -0
  356. package/dist/mutation/semantic-move-model.js +2 -0
  357. package/dist/mutation/semantic-move-owner-authority.js +122 -0
  358. package/dist/mutation/semantic-move-owner-candidates.js +300 -0
  359. package/dist/mutation/semantic-move-owner-divergence-harness.js +474 -0
  360. package/dist/mutation/semantic-move-owner-divergence-runner.js +162 -0
  361. package/dist/mutation/semantic-move-plan-hash.js +56 -0
  362. package/dist/mutation/semantic-move-policy.js +360 -0
  363. package/dist/mutation/semantic-move-process.js +218 -0
  364. package/dist/mutation/semantic-move-provider-diagnostics.js +27 -0
  365. package/dist/mutation/semantic-move-standalone-engine.js +919 -0
  366. package/dist/mutation/semantic-move-standalone-planner.js +1553 -0
  367. package/dist/mutation/semantic-move-transaction.js +639 -0
  368. package/dist/mutation/semantic-mutation-engine.js +478 -0
  369. package/dist/mutation/semantic-mutation-runtime.js +521 -0
  370. package/dist/mutation/semantic-planner-retry.js +26 -0
  371. package/dist/mutation/semantic-program-roots.js +69 -0
  372. package/dist/mutation/semantic-rename-commonjs.js +229 -0
  373. package/dist/mutation/semantic-rename-config-worker-child.js +46 -0
  374. package/dist/mutation/semantic-rename-config-worker.js +498 -0
  375. package/dist/mutation/semantic-rename-locations.js +192 -0
  376. package/dist/mutation/semantic-rename-model.js +2 -0
  377. package/dist/mutation/semantic-rename-process.js +210 -0
  378. package/dist/mutation/semantic-rename-standalone-engine.js +302 -0
  379. package/dist/mutation/semantic-rename-standalone-planner.js +567 -0
  380. package/dist/mutation/semantic-rename-transaction.js +333 -0
  381. package/dist/mutation/semantic-unused-import-cleanup.js +248 -0
  382. package/dist/mutation/semantic-worker-retry.js +40 -0
  383. package/dist/mutation/semantic-workspace.js +804 -0
  384. package/dist/mutation/targeted-import-canonicalizer.js +359 -0
  385. package/dist/observability/config.js +206 -1
  386. package/dist/observability/context.js +59 -1
  387. package/dist/observability/failure-snapshot.js +124 -2
  388. package/dist/observability/recent.js +63 -2
  389. package/dist/payloads/read-stdin-json.js +212 -1
  390. package/dist/rg-wrapper/core.js +714 -0
  391. package/dist/rg-wrapper/options.js +125 -0
  392. package/dist/rtk-wrapper/core.js +144 -0
  393. package/dist/rtk-wrapper/git-safety.js +203 -0
  394. package/dist/rtk-wrapper/output-adapter.js +106 -0
  395. package/dist/runtime/buffered-process.js +114 -0
  396. package/dist/runtime/bundled-node.js +97 -1
  397. package/dist/runtime/command-lifecycle.js +2 -0
  398. package/dist/runtime/input-source.js +238 -1
  399. package/dist/runtime/node-cli-identity.js +37 -0
  400. package/dist/runtime/run-command.js +191 -1
  401. package/dist/selectors/parse-entities.js +84 -1
  402. package/dist/semantic/semantic-context-pool.js +830 -0
  403. package/dist/semantic/semantic-context-provider.js +416 -0
  404. package/dist/semantic/semantic-resident-admission.js +38 -0
  405. package/dist/semantic/semantic-worker-child.js +40 -0
  406. package/dist/semantic/semantic-worker-manager.js +460 -0
  407. package/dist/semantic/semantic-worker-protocol.js +2 -0
  408. package/dist/semantic/semantic-worker-runtime.js +38 -0
  409. package/dist/semantic/workspace-semantic-context-pools.js +136 -0
  410. package/dist/session/client.js +359 -1
  411. package/dist/session/daemon-state.js +185 -0
  412. package/dist/session/external-tool-coordinator.js +88 -0
  413. package/dist/session/external-tool-request.js +52 -0
  414. package/dist/session/lane-owner.js +116 -0
  415. package/dist/session/paths.js +71 -1
  416. package/dist/session/runtime-lifecycle.js +225 -0
  417. package/dist/session/runtime-shutdown.js +95 -0
  418. package/dist/session/server.js +1194 -8
  419. package/dist/session/session-health.js +27 -0
  420. package/dist/shared/agent-text.js +29 -1
  421. package/dist/shared/errors.js +496 -30
  422. package/dist/shared/event-loop.js +6 -1
  423. package/dist/shared/hints.js +37 -1
  424. package/dist/shared/metrics.js +43 -1
  425. package/dist/shared/presentation.js +69 -4
  426. package/dist/shared/stdin-examples.js +77 -3
  427. package/dist/shared/stdout.js +6 -2
  428. package/dist/shared/types.js +23 -1
  429. package/dist/tool-runtime/runtime-tools.js +120 -0
  430. package/dist/topology/availability.js +663 -0
  431. package/dist/topology/cache.js +130 -0
  432. package/dist/topology/candidates.js +372 -0
  433. package/dist/topology/core.js +903 -0
  434. package/dist/topology/dependency-snapshot.js +189 -0
  435. package/dist/topology/model.js +2 -0
  436. package/dist/topology/scope.js +100 -0
  437. package/dist/topology/ts-oracle-batch.js +529 -0
  438. package/dist/topology/ts-oracle-host.js +69 -0
  439. package/dist/topology/ts-oracle-model.js +2 -0
  440. package/dist/topology/ts-oracle.js +224 -0
  441. package/dist/topology/tsconfig-loader.js +105 -0
  442. package/dist/topology/workspace-project-index.js +542 -0
  443. package/dist/tracing/config.js +192 -2
  444. package/dist/tracing/failure-summary.js +100 -0
  445. package/dist/tracing/trace.js +318 -5
  446. package/dist/tsc-wrapper/core.js +697 -0
  447. package/dist/workers/control-plane/aib-control-plane-worker.cjs +80 -0
  448. package/dist/workers/control-plane/client-config.default.json +3 -0
  449. package/dist/workers/lexical-worker-child.js +27 -0
  450. package/dist/workers/lexical-worker-manager.js +394 -0
  451. package/dist/workers/lexical-worker-protocol.js +2 -0
  452. package/dist/workers/lexical-worker-runtime.js +25 -0
  453. package/dist/workers/owned-one-shot-process.js +115 -0
  454. package/dist/workers/product-storage.js +23 -0
  455. package/dist/workers/registry.js +241 -0
  456. package/package.json +8 -11
  457. package/runtimes/tools/rg/darwin-arm64/rg +0 -0
  458. package/runtimes/tools/rg/darwin-x64/rg +0 -0
  459. package/runtimes/tools/rg/linux-arm64/rg +0 -0
  460. package/runtimes/tools/rg/linux-x64/rg +0 -0
  461. package/runtimes/tools/rg/manifest.json +36 -0
  462. package/runtimes/tools/rg/win32-x64/rg.exe +0 -0
  463. package/runtimes/tools/rtk/darwin-arm64/rtk +0 -0
  464. package/runtimes/tools/rtk/darwin-x64/rtk +0 -0
  465. package/runtimes/tools/rtk/linux-arm64/rtk +0 -0
  466. package/runtimes/tools/rtk/linux-x64/rtk +0 -0
  467. package/runtimes/tools/rtk/manifest.json +36 -0
  468. package/runtimes/tools/rtk/win32-x64/rtk.exe +0 -0
  469. package/scripts/postinstall.cjs +29 -29
  470. package/scripts/provision-runtime.cjs +411 -459
  471. package/dist/client/http-client.js +0 -1
  472. package/dist/client/transport-options.js +0 -1
  473. package/dist/client/websocket-client.js +0 -1
  474. package/dist/commands/entity-resolution.js +0 -1
  475. package/dist/commands/inspect-symbol-query.js +0 -1
  476. package/dist/commands/list-instances.js +0 -1
  477. package/dist/commands/module-plan-command.js +0 -1
  478. package/dist/commands/move-command.js +0 -1
  479. package/dist/commands/move-to-file.js +0 -2
  480. package/dist/commands/ping.js +0 -1
  481. package/dist/commands/refactor-command.js +0 -1
  482. package/dist/commands/rename-command.js +0 -1
  483. package/dist/commands/runtime-command.js +0 -4
  484. package/dist/commands/runtime-info.js +0 -1
  485. package/dist/commands/validate-module-plan.js +0 -2
  486. package/dist/compatibility/policy.js +0 -1
  487. package/dist/config/auto-start-ide.js +0 -1
  488. package/dist/discovery/registry.js +0 -1
  489. package/dist/discovery/select-instance.js +0 -1
  490. package/dist/help/docs/mutation.md +0 -50
  491. package/dist/help/docs/refactor.batch.md +0 -44
  492. package/dist/help/dsl/docs/mutation.md +0 -50
  493. package/dist/help/dsl/docs/refactor.batch.md +0 -44
  494. package/dist/help/dsl/topics/mutation.md +0 -48
  495. package/dist/help/dsl/topics/refactor.batch.md +0 -33
  496. package/dist/help/json/bootstrap.md +0 -1085
  497. package/dist/help/json/docs/basics.md +0 -15
  498. package/dist/help/json/docs/config-setup.aliases.md +0 -56
  499. package/dist/help/json/docs/config-setup.excludes.md +0 -45
  500. package/dist/help/json/docs/config-setup.import-normalize.md +0 -86
  501. package/dist/help/json/docs/config-setup.import-rules.md +0 -96
  502. package/dist/help/json/docs/config-setup.tsconfigs.md +0 -33
  503. package/dist/help/json/docs/dsl.md +0 -25
  504. package/dist/help/json/docs/first-setup.md +0 -292
  505. package/dist/help/json/docs/help-format.md +0 -9
  506. package/dist/help/json/docs/help-protocol.md +0 -26
  507. package/dist/help/json/docs/imports.normalize.md +0 -47
  508. package/dist/help/json/docs/inspect.code.md +0 -41
  509. package/dist/help/json/docs/inspect.cycles.md +0 -38
  510. package/dist/help/json/docs/inspect.deps.md +0 -46
  511. package/dist/help/json/docs/inspect.duplicates.md +0 -65
  512. package/dist/help/json/docs/inspect.exports.md +0 -40
  513. package/dist/help/json/docs/inspect.file.md +0 -38
  514. package/dist/help/json/docs/inspect.graph.md +0 -139
  515. package/dist/help/json/docs/inspect.imports.md +0 -15
  516. package/dist/help/json/docs/inspect.md +0 -88
  517. package/dist/help/json/docs/inspect.members.md +0 -32
  518. package/dist/help/json/docs/inspect.tree.md +0 -32
  519. package/dist/help/json/docs/inspect.usages.md +0 -61
  520. package/dist/help/json/docs/modulePlan.md +0 -73
  521. package/dist/help/json/docs/move.md +0 -56
  522. package/dist/help/json/docs/mutation.md +0 -65
  523. package/dist/help/json/docs/patterns.md +0 -76
  524. package/dist/help/json/docs/prefs.md +0 -40
  525. package/dist/help/json/docs/qr.md +0 -37
  526. package/dist/help/json/docs/quick-map.md +0 -30
  527. package/dist/help/json/docs/refactor.batch.md +0 -72
  528. package/dist/help/json/docs/rename.md +0 -47
  529. package/dist/help/json/docs/reveal.md +0 -30
  530. package/dist/help/json/docs/selectors.md +0 -23
  531. package/dist/help/json/docs/session.md +0 -77
  532. package/dist/help/json/docs/view.md +0 -30
  533. package/dist/help/json/full.md +0 -1085
  534. package/dist/help/json/snippets/agents.md +0 -14
  535. package/dist/help/json/topics/basics.md +0 -13
  536. package/dist/help/json/topics/config-setup.aliases.md +0 -54
  537. package/dist/help/json/topics/config-setup.excludes.md +0 -43
  538. package/dist/help/json/topics/config-setup.import-normalize.md +0 -84
  539. package/dist/help/json/topics/config-setup.import-rules.md +0 -94
  540. package/dist/help/json/topics/config-setup.tsconfigs.md +0 -31
  541. package/dist/help/json/topics/dsl.md +0 -23
  542. package/dist/help/json/topics/first-setup.md +0 -290
  543. package/dist/help/json/topics/help-format.md +0 -7
  544. package/dist/help/json/topics/help-protocol.md +0 -24
  545. package/dist/help/json/topics/imports.normalize.md +0 -45
  546. package/dist/help/json/topics/inspect.code.md +0 -39
  547. package/dist/help/json/topics/inspect.cycles.md +0 -36
  548. package/dist/help/json/topics/inspect.deps.md +0 -44
  549. package/dist/help/json/topics/inspect.duplicates.md +0 -37
  550. package/dist/help/json/topics/inspect.exports.md +0 -38
  551. package/dist/help/json/topics/inspect.file.md +0 -36
  552. package/dist/help/json/topics/inspect.graph.md +0 -137
  553. package/dist/help/json/topics/inspect.imports.md +0 -13
  554. package/dist/help/json/topics/inspect.md +0 -86
  555. package/dist/help/json/topics/inspect.members.md +0 -30
  556. package/dist/help/json/topics/inspect.tree.md +0 -22
  557. package/dist/help/json/topics/inspect.usages.md +0 -59
  558. package/dist/help/json/topics/modulePlan.md +0 -60
  559. package/dist/help/json/topics/move.md +0 -46
  560. package/dist/help/json/topics/mutation.md +0 -63
  561. package/dist/help/json/topics/patterns.md +0 -74
  562. package/dist/help/json/topics/prefs.md +0 -38
  563. package/dist/help/json/topics/qr.md +0 -35
  564. package/dist/help/json/topics/quick-map.md +0 -28
  565. package/dist/help/json/topics/refactor.batch.md +0 -61
  566. package/dist/help/json/topics/rename.md +0 -42
  567. package/dist/help/json/topics/reveal.md +0 -28
  568. package/dist/help/json/topics/selectors.md +0 -21
  569. package/dist/help/json/topics/session.md +0 -59
  570. package/dist/help/json/topics/view.md +0 -28
  571. package/dist/help/topics/mutation.md +0 -48
  572. package/dist/help/topics/refactor.batch.md +0 -33
  573. package/dist/ide-launch/common.cjs +0 -162
  574. package/dist/managed-host/extension-vsix-resolver.js +0 -1
  575. package/dist/managed-host/manage-serve-web-host.cjs +0 -141
  576. package/dist/managed-host/serve-web-autostart.js +0 -1
  577. package/dist/managed-host/serve-web-host.cjs +0 -1904
  578. package/dist/runtime/managed-runtime-provisioning.js +0 -1
  579. package/dist/shared/diagnostic-catalog.js +0 -1
  580. package/dist/shared/diagnostics.js +0 -1
  581. package/dist/shared/operations.js +0 -1
  582. package/dist/shared/protocol.js +0 -1
  583. package/dist/shared/routes.js +0 -1
  584. package/extension/vscode-refactor-bridge-extension.vsix +0 -0
  585. package/runtimes/launcher/linux-x64/aib +0 -0
  586. package/runtimes/launcher/win-x64/aib.exe +0 -0
@@ -1 +1,117 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.runExecutionCommand=R;const d=require("./apply-module-plan"),p=require("./module-plan-cache"),f=require("./refactor-batch"),h=require("./refactor-batch-execution-cache"),m=require("./rename-entities"),_=require("./rename-execution-cache"),E=require("../shared/errors");function R(t,e){const[n="status",...a]=e;if(n==="status"){const c=N(a,"--execution")??y(a)??"last";return P(t,c)}throw new E.CliError("UNKNOWN_EXECUTION_COMMAND",`Unknown execution command: ${n}`,{availableCommands:["execution status"]})}function P(t,e){if(e==="last"){const r=x(t,"last"),o=(0,h.tryReadRefactorBatchExecutionStatus)(t,"last"),u=(0,_.tryReadRenameExecutionStatus)(t,"last");if(r||o||u){const s=r?Date.parse(r.updatedAt):0,i=o?Date.parse(o.updatedAt):0,l=u?Date.parse(u.updatedAt):0;return l>s&&l>i?(0,m.readCachedRenameExecution)(t,"last"):i>s?(0,f.readCachedRefactorBatchExecution)(t,"last"):(0,d.readCachedModulePlanExecution)(t,"last")}C(e)}if((0,_.tryReadRenameExecutionStatus)(t,e))return(0,m.readCachedRenameExecution)(t,e);if((0,h.tryReadRefactorBatchExecutionStatus)(t,e))return(0,f.readCachedRefactorBatchExecution)(t,e);if(x(t,e))return(0,d.readCachedModulePlanExecution)(t,e);C(e)}function x(t,e){try{return(0,p.readModulePlanExecutionStatus)(t,e)}catch{return null}}function C(t){throw new E.CliError("EXECUTION_NOT_FOUND",`Execution status not found: ${t}`,{executionId:t})}function N(t,e){const n=t.indexOf(e);if(n<0)return null;const a=t[n+1];return a&&!a.startsWith("--")?a:null}function y(t){return t.find(e=>!e.startsWith("--"))??null}
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runExecutionCommand = runExecutionCommand;
4
+ const apply_module_plan_1 = require("./apply-module-plan");
5
+ const file_refactor_batch_1 = require("./file-refactor-batch");
6
+ const file_refactor_batch_execution_cache_1 = require("./file-refactor-batch-execution-cache");
7
+ const declaration_command_1 = require("./declaration-command");
8
+ const file_rename_1 = require("./file-rename");
9
+ const file_rename_execution_cache_1 = require("./file-rename-execution-cache");
10
+ const file_move_to_dir_1 = require("./file-move-to-dir");
11
+ const file_move_to_dir_execution_cache_1 = require("./file-move-to-dir-execution-cache");
12
+ const module_plan_cache_1 = require("./module-plan-cache");
13
+ const refactor_batch_1 = require("./refactor-batch");
14
+ const refactor_batch_execution_cache_1 = require("./refactor-batch-execution-cache");
15
+ const mutate_execution_status_1 = require("./mutate-execution-status");
16
+ const mutate_execution_cache_1 = require("./mutate-execution-cache");
17
+ const rename_entities_1 = require("./rename-entities");
18
+ const rename_execution_cache_1 = require("./rename-execution-cache");
19
+ const errors_1 = require("../shared/errors");
20
+ function runExecutionCommand(cwd, restArgs) {
21
+ const [action = "status", ...actionArgs] = restArgs;
22
+ if (action === "status") {
23
+ const executionId = readFlagValue(actionArgs, "--execution") ?? firstPositional(actionArgs) ?? "last";
24
+ return readCachedExecution(cwd, executionId);
25
+ }
26
+ throw new errors_1.CliError("UNKNOWN_EXECUTION_COMMAND", `Unknown execution command: ${action}`, {
27
+ availableCommands: [
28
+ "execution status"
29
+ ]
30
+ });
31
+ }
32
+ function readCachedExecution(cwd, executionId) {
33
+ if (executionId === "last") {
34
+ const mutate = (0, mutate_execution_cache_1.tryReadMutateExecutionStatus)(cwd, "last");
35
+ const modulePlan = tryReadModulePlanExecutionStatus(cwd, "last");
36
+ const refactorBatch = (0, refactor_batch_execution_cache_1.tryReadRefactorBatchExecutionStatus)(cwd, "last");
37
+ const rename = (0, rename_execution_cache_1.tryReadRenameExecutionStatus)(cwd, "last");
38
+ const fileMoveToDir = (0, file_move_to_dir_execution_cache_1.tryReadFileMoveToDirExecutionStatus)(cwd, "last");
39
+ const fileRename = (0, file_rename_execution_cache_1.tryReadFileRenameExecutionStatus)(cwd, "last");
40
+ const fileRefactorBatch = (0, file_refactor_batch_execution_cache_1.tryReadFileRefactorBatchExecutionStatus)(cwd, "last");
41
+ const declaration = (0, declaration_command_1.tryReadDeclarationExecutionStatus)(cwd, "last");
42
+ const candidates = [
43
+ mutate ? { updatedAt: Date.parse(mutate.updatedAt), read: () => (0, mutate_execution_status_1.readCachedMutateExecution)(cwd, "last", { includeOperationHeader: true }) } : null,
44
+ modulePlan ? { updatedAt: Date.parse(modulePlan.updatedAt), read: () => (0, apply_module_plan_1.readCachedModulePlanExecution)(cwd, "last") } : null,
45
+ refactorBatch ? { updatedAt: Date.parse(refactorBatch.updatedAt), read: () => (0, refactor_batch_1.readCachedRefactorBatchExecution)(cwd, "last") } : null,
46
+ rename ? { updatedAt: Date.parse(rename.updatedAt), read: () => (0, rename_entities_1.readCachedRenameExecution)(cwd, "last") } : null,
47
+ fileMoveToDir ? { updatedAt: Date.parse(fileMoveToDir.updatedAt), read: () => (0, file_move_to_dir_1.readCachedFileMoveToDirExecution)(cwd, "last") } : null,
48
+ fileRename ? { updatedAt: Date.parse(fileRename.updatedAt), read: () => (0, file_rename_1.readCachedFileRenameExecution)(cwd, "last") } : null,
49
+ fileRefactorBatch ? { updatedAt: Date.parse(fileRefactorBatch.updatedAt), read: () => (0, file_refactor_batch_1.readCachedFileRefactorBatchExecution)(cwd, "last") } : null,
50
+ declaration ? { updatedAt: Date.parse(declaration.updatedAt), read: () => (0, declaration_command_1.readCachedDeclarationExecution)(cwd, "last") } : null
51
+ ].filter((candidate) => Boolean(candidate));
52
+ if (candidates.length > 0) {
53
+ const latest = candidates.sort((left, right) => right.updatedAt - left.updatedAt)[0];
54
+ if (latest) {
55
+ return latest.read();
56
+ }
57
+ }
58
+ throwExecutionNotFound(executionId);
59
+ }
60
+ const mutate = (0, mutate_execution_cache_1.tryReadMutateExecutionStatus)(cwd, executionId);
61
+ if (mutate) {
62
+ return (0, mutate_execution_status_1.readCachedMutateExecution)(cwd, executionId);
63
+ }
64
+ const fileMoveToDir = (0, file_move_to_dir_execution_cache_1.tryReadFileMoveToDirExecutionStatus)(cwd, executionId);
65
+ if (fileMoveToDir) {
66
+ return (0, file_move_to_dir_1.readCachedFileMoveToDirExecution)(cwd, executionId);
67
+ }
68
+ const fileRename = (0, file_rename_execution_cache_1.tryReadFileRenameExecutionStatus)(cwd, executionId);
69
+ if (fileRename) {
70
+ return (0, file_rename_1.readCachedFileRenameExecution)(cwd, executionId);
71
+ }
72
+ const fileRefactorBatch = (0, file_refactor_batch_execution_cache_1.tryReadFileRefactorBatchExecutionStatus)(cwd, executionId);
73
+ if (fileRefactorBatch) {
74
+ return (0, file_refactor_batch_1.readCachedFileRefactorBatchExecution)(cwd, executionId);
75
+ }
76
+ const rename = (0, rename_execution_cache_1.tryReadRenameExecutionStatus)(cwd, executionId);
77
+ if (rename) {
78
+ return (0, rename_entities_1.readCachedRenameExecution)(cwd, executionId);
79
+ }
80
+ const refactorBatch = (0, refactor_batch_execution_cache_1.tryReadRefactorBatchExecutionStatus)(cwd, executionId);
81
+ if (refactorBatch) {
82
+ return (0, refactor_batch_1.readCachedRefactorBatchExecution)(cwd, executionId);
83
+ }
84
+ const modulePlan = tryReadModulePlanExecutionStatus(cwd, executionId);
85
+ if (modulePlan) {
86
+ return (0, apply_module_plan_1.readCachedModulePlanExecution)(cwd, executionId);
87
+ }
88
+ const declaration = (0, declaration_command_1.tryReadDeclarationExecutionStatus)(cwd, executionId);
89
+ if (declaration) {
90
+ return (0, declaration_command_1.readCachedDeclarationExecution)(cwd, executionId);
91
+ }
92
+ throwExecutionNotFound(executionId);
93
+ }
94
+ function tryReadModulePlanExecutionStatus(cwd, executionId) {
95
+ try {
96
+ return (0, module_plan_cache_1.readModulePlanExecutionStatus)(cwd, executionId);
97
+ }
98
+ catch {
99
+ return null;
100
+ }
101
+ }
102
+ function throwExecutionNotFound(executionId) {
103
+ throw new errors_1.CliError("EXECUTION_NOT_FOUND", `Execution status not found: ${executionId}`, {
104
+ executionId
105
+ });
106
+ }
107
+ function readFlagValue(args, flag) {
108
+ const index = args.indexOf(flag);
109
+ if (index < 0) {
110
+ return null;
111
+ }
112
+ const value = args[index + 1];
113
+ return value && !value.startsWith("--") ? value : null;
114
+ }
115
+ function firstPositional(args) {
116
+ return args.find((arg) => !arg.startsWith("--")) ?? null;
117
+ }
@@ -0,0 +1,178 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.runExportsStarCollapseSegment = runExportsStarCollapseSegment;
37
+ exports.runExportsStarCollapsePreviewBatch = runExportsStarCollapsePreviewBatch;
38
+ exports.formatExportsStarCollapseBatchText = formatExportsStarCollapseBatchText;
39
+ exports.formatExportsStarCollapseWriteText = formatExportsStarCollapseWriteText;
40
+ exports.attachExportsStarCollapseWriteView = attachExportsStarCollapseWriteView;
41
+ const crypto = __importStar(require("node:crypto"));
42
+ const exports_star_collapse_preview_1 = require("../mutation/exports-star-collapse-preview");
43
+ const agent_text_1 = require("../shared/agent-text");
44
+ const session_workspace_1 = require("./session-workspace");
45
+ const exports_star_expand_apply_1 = require("../mutation/exports-star-expand-apply");
46
+ async function runExportsStarCollapseSegment(cwd, segment, action) {
47
+ if (action === "execute") {
48
+ const response = (0, exports_star_expand_apply_1.executeCurrentExportsStarCollapseBatch)(cwd, [intentFromSegment(segment)]);
49
+ const withView = attachExportsStarCollapseWriteView(cwd, response);
50
+ return (0, agent_text_1.attachAgentText)(withView, formatExportsStarCollapseWriteText("execute", withView));
51
+ }
52
+ return (await runExportsStarCollapsePreviewBatch(cwd, [segment]))[0];
53
+ }
54
+ async function runExportsStarCollapsePreviewBatch(cwd, segments, semanticContextPool, persistApplyPlan = false) {
55
+ const session = new exports_star_collapse_preview_1.ExportsStarCollapsePreviewSession(cwd, semanticContextPool);
56
+ try {
57
+ const results = segments.map((segment) => session.plan({
58
+ sourceFile: readString(segment.sourceFile) ?? "",
59
+ selectors: readStringArray(segment.selectors)
60
+ }));
61
+ const intents = segments.map(intentFromSegment);
62
+ const previewId = persistApplyPlan ? (0, exports_star_expand_apply_1.persistExportsStarCollapsePreview)(cwd, intents, results) : null;
63
+ const applyAvailable = Boolean(previewId);
64
+ const saved = (0, session_workspace_1.saveSessionResultViewJson)(cwd, `res_${crypto.randomBytes(4).toString("hex")}`, {
65
+ kind: "exportsStarCollapseBatch",
66
+ operation: "exports.star.collapse.preview",
67
+ applyAvailable,
68
+ ...(previewId ? { previewId } : {}),
69
+ barrelCount: results.length,
70
+ resources: session.resources,
71
+ barrels: results
72
+ });
73
+ return results.map((result) => {
74
+ const response = {
75
+ ...result,
76
+ applyAvailable,
77
+ ...(previewId ? { previewId, next: `aib mutate apply ${previewId}` } : {}),
78
+ ...(saved ? { view: saved.saved } : {})
79
+ };
80
+ return (0, agent_text_1.attachAgentText)(response, formatExportsStarCollapseAgentText(result, readString(response.view), previewId ?? undefined));
81
+ });
82
+ }
83
+ finally {
84
+ session.dispose();
85
+ }
86
+ }
87
+ function formatExportsStarCollapseBatchText(responses, action = "preview") {
88
+ const planned = responses.reduce((count, response) => count + (readNumber(response.plannedCount) ?? 0), 0);
89
+ const retained = responses.flatMap((response) => readObjectArray(response.retained));
90
+ const files = [...new Set(responses.flatMap((response) => readStringArray(response.filesTouched)))];
91
+ const view = responses.map((response) => readString(response.view)).find(Boolean);
92
+ const lines = [
93
+ `mutate.${action}${planned > 0 && retained.length > 0 ? " partial" : ""}: ${planned} ${noun(planned, "edge")} ${action === "preview" ? "planned" : "collapsed"} in ${files.length} ${noun(files.length, "file")}; ${retained.length} retained`
94
+ ];
95
+ if (files.length)
96
+ lines.push(`files: ${bounded(files, 4)}`);
97
+ appendRetained(lines, retained);
98
+ if (view)
99
+ lines.push(`view: ${view}`);
100
+ const previewId = responses.map((response) => readString(response.previewId)).find(Boolean);
101
+ lines.push(action === "preview" && previewId
102
+ ? `next: aib mutate apply ${previewId}`
103
+ : retained.length
104
+ ? "next: Review retained exports.star.collapse evidence and fix remaining edges manually or rerun with adjusted intent."
105
+ : action === "preview"
106
+ ? "next: Review retained exports.star.collapse evidence; no safe edits are available to apply."
107
+ : "next: Continue with the refactor or run focused checks.");
108
+ return lines.join("\n");
109
+ }
110
+ function formatExportsStarCollapseWriteText(action, response) {
111
+ if (response.ok === false) {
112
+ const code = readString(response.code) ?? "EXPORTS_STAR_COLLAPSE_FAILED";
113
+ const error = readString(response.error) ?? "exports.star.collapse could not be committed.";
114
+ const view = readString(response.view);
115
+ return [
116
+ `mutate.${action} failed`,
117
+ `${code}: ${error}`,
118
+ ...(view ? [`view: ${view}`] : []),
119
+ code.endsWith("ALREADY_APPLIED")
120
+ ? "next: Continue from the already-applied workspace state or run focused checks."
121
+ : "next: Rerun exports.star.collapse preview against the current workspace state."
122
+ ].join("\n");
123
+ }
124
+ return formatExportsStarCollapseBatchText([response], action);
125
+ }
126
+ function attachExportsStarCollapseWriteView(cwd, response) {
127
+ const saved = (0, session_workspace_1.saveSessionResultViewJson)(cwd, `res_${crypto.randomBytes(4).toString("hex")}`, {
128
+ kind: "exportsStarCollapseWrite",
129
+ ...response
130
+ });
131
+ return saved ? { ...response, view: saved.saved } : response;
132
+ }
133
+ function formatExportsStarCollapseAgentText(result, view, previewId) {
134
+ const lines = [
135
+ `exports.star.collapse preview${result.partial ? " partial" : ""}: ${result.plannedCount} ${noun(result.plannedCount, "edge")} planned in ${result.filesTouched.length} ${noun(result.filesTouched.length, "file")}; ${result.retainedCount} retained`
136
+ ];
137
+ if (result.filesTouched.length)
138
+ lines.push(`files: ${bounded(result.filesTouched, 4)}`);
139
+ appendRetained(lines, result.retained);
140
+ if (view)
141
+ lines.push(`view: ${view}`);
142
+ lines.push(`next: ${previewId ? `aib mutate apply ${previewId}` : result.next}`);
143
+ return lines.join("\n");
144
+ }
145
+ function intentFromSegment(segment) {
146
+ return { sourceFile: readString(segment.sourceFile) ?? "", selectors: readStringArray(segment.selectors) };
147
+ }
148
+ function appendRetained(lines, retained) {
149
+ if (!retained.length)
150
+ return;
151
+ lines.push("retained:");
152
+ for (const item of retained.slice(0, 4)) {
153
+ const selector = readString(item.selector) ?? "edge";
154
+ const reason = readString(item.reason) ?? readString(item.code) ?? "retained";
155
+ const candidates = readStringArray(item.candidates);
156
+ lines.push(`${selector}: ${reason}${candidates.length ? ` (${candidates.join(", ")})` : ""}`);
157
+ }
158
+ if (retained.length > 4)
159
+ lines.push(`+${retained.length - 4} retained`);
160
+ }
161
+ function readString(value) {
162
+ return typeof value === "string" && value.length > 0 ? value : undefined;
163
+ }
164
+ function readStringArray(value) {
165
+ return Array.isArray(value) ? value.filter((item) => typeof item === "string" && item.length > 0) : [];
166
+ }
167
+ function readObjectArray(value) {
168
+ return Array.isArray(value) ? value.filter((item) => Boolean(item) && typeof item === "object" && !Array.isArray(item)) : [];
169
+ }
170
+ function readNumber(value) {
171
+ return typeof value === "number" && Number.isFinite(value) ? value : undefined;
172
+ }
173
+ function bounded(values, limit) {
174
+ return values.length <= limit ? values.join(", ") : `${values.slice(0, limit).join(", ")} +${values.length - limit}`;
175
+ }
176
+ function noun(count, word) {
177
+ return count === 1 ? word : `${word}s`;
178
+ }
@@ -0,0 +1,252 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.runExportsStarSegment = runExportsStarSegment;
37
+ exports.runExportsStarPreviewBatch = runExportsStarPreviewBatch;
38
+ exports.applyExportsStarPreview = applyExportsStarPreview;
39
+ exports.consolidateExportsStarWriteViews = consolidateExportsStarWriteViews;
40
+ exports.formatExportsStarMutateText = formatExportsStarMutateText;
41
+ exports.formatExportsStarMutateBatchText = formatExportsStarMutateBatchText;
42
+ exports.formatExportsStarResponseForReplay = formatExportsStarResponseForReplay;
43
+ const crypto = __importStar(require("node:crypto"));
44
+ const agent_text_1 = require("../shared/agent-text");
45
+ const exports_star_expand_preview_1 = require("../mutation/exports-star-expand-preview");
46
+ const session_workspace_1 = require("./session-workspace");
47
+ const exports_star_expand_apply_1 = require("../mutation/exports-star-expand-apply");
48
+ const exports_star_collapse_command_1 = require("./exports-star-collapse-command");
49
+ async function runExportsStarSegment(cwd, segment, action) {
50
+ if (action === "execute") {
51
+ const response = (0, exports_star_expand_apply_1.executeCurrentExportsStarBatch)(cwd, [intentFromSegment(segment)]);
52
+ const withView = attachExportsStarWriteView(cwd, response);
53
+ return (0, agent_text_1.attachAgentText)(withView, formatExportsStarWriteText("execute", withView));
54
+ }
55
+ return (await runExportsStarPreviewBatch(cwd, [segment]))[0];
56
+ }
57
+ async function runExportsStarPreviewBatch(cwd, segments, semanticContextPool, persistApplyPlan = false) {
58
+ const session = new exports_star_expand_preview_1.ExportsStarPreviewSession(cwd, semanticContextPool);
59
+ try {
60
+ const intents = segments.map(intentFromSegment);
61
+ const results = intents.map((intent) => session.plan(intent));
62
+ const previewId = persistApplyPlan ? (0, exports_star_expand_apply_1.persistExportsStarPreview)(cwd, intents, results) : null;
63
+ const applyAvailable = Boolean(previewId);
64
+ const saved = (0, session_workspace_1.saveSessionResultViewJson)(cwd, `res_${crypto.randomBytes(4).toString("hex")}`, {
65
+ kind: "exportsStarExpandBatch",
66
+ operation: "exports.star.expand.preview",
67
+ applyAvailable,
68
+ ...(previewId ? { previewId } : {}),
69
+ barrelCount: results.length,
70
+ resources: session.resources,
71
+ barrels: results
72
+ });
73
+ return results.map((result) => {
74
+ const response = {
75
+ ...result,
76
+ applyAvailable,
77
+ ...(previewId ? { previewId } : {}),
78
+ next: previewId ? `aib mutate apply ${previewId}` : result.next,
79
+ ...(saved ? { view: saved.saved } : {})
80
+ };
81
+ return (0, agent_text_1.attachAgentText)(response, formatExportsStarAgentText(result, readString(response.view), previewId ?? undefined));
82
+ });
83
+ }
84
+ finally {
85
+ session.dispose();
86
+ }
87
+ }
88
+ function applyExportsStarPreview(cwd, previewId) {
89
+ const response = (0, exports_star_expand_apply_1.applyPersistedExportsStarPreview)(cwd, previewId);
90
+ if (isCollapseWriteResponse(response)) {
91
+ const withView = (0, exports_star_collapse_command_1.attachExportsStarCollapseWriteView)(cwd, response);
92
+ return (0, agent_text_1.attachAgentText)(withView, (0, exports_star_collapse_command_1.formatExportsStarCollapseWriteText)("apply", withView));
93
+ }
94
+ const withView = attachExportsStarWriteView(cwd, response);
95
+ return (0, agent_text_1.attachAgentText)(withView, formatExportsStarWriteText("apply", withView));
96
+ }
97
+ function consolidateExportsStarWriteViews(cwd, responses) {
98
+ if (responses.length === 0)
99
+ return [];
100
+ const collapse = responses.some(isCollapseWriteResponse);
101
+ const saved = (0, session_workspace_1.saveSessionResultViewJson)(cwd, `res_${crypto.randomBytes(4).toString("hex")}`, {
102
+ kind: collapse ? "exportsStarCollapseWriteBatch" : "exportsStarExpandWriteBatch",
103
+ operation: "mutate.execute",
104
+ results: responses
105
+ });
106
+ return saved ? responses.map((response) => ({ ...response, view: saved.saved })) : [...responses];
107
+ }
108
+ function isCollapseWriteResponse(response) {
109
+ return response.exportsStarOperation === "collapse" || readObjectArray(response.results).some((result) => readString(result.operation) === "exports.star.collapse.preview");
110
+ }
111
+ function formatExportsStarMutateText(response) {
112
+ const text = (0, agent_text_1.readAgentText)(response);
113
+ return text ? replaceFirstLine(text, "mutate.preview") : null;
114
+ }
115
+ function formatExportsStarMutateBatchText(responses, action = "preview") {
116
+ const planned = responses.reduce((count, response) => count + (readNumber(response.plannedCount) ?? 0), 0);
117
+ const retained = responses.flatMap((response) => readObjectArray(response.retained));
118
+ const files = [...new Set(responses.flatMap((response) => readStringArray(response.filesTouched)))];
119
+ const views = [...new Set(responses.map((response) => readString(response.view)).filter((item) => Boolean(item)))];
120
+ const lines = [
121
+ `mutate.${action}${planned > 0 && retained.length > 0 ? " partial" : ""}: ${planned} ${noun(planned, "edge")} ${action === "preview" ? "planned" : "expanded"} in ${files.length} ${noun(files.length, "file")}; ${retained.length} retained`
122
+ ];
123
+ if (files.length > 0)
124
+ lines.push(`files: ${bounded(files, 4)}`);
125
+ if (retained.length > 0) {
126
+ lines.push("retained:");
127
+ for (const item of retained.slice(0, 4)) {
128
+ const selector = readString(item.selector) ?? "edge";
129
+ const reason = readString(item.reason) ?? readString(item.code) ?? "retained";
130
+ const candidates = readStringArray(item.candidates);
131
+ lines.push(`${selector}: ${reason}${candidates.length ? ` (${candidates.join(", ")})` : ""}`);
132
+ }
133
+ if (retained.length > 4)
134
+ lines.push(`+${retained.length - 4} retained`);
135
+ }
136
+ if (views[0])
137
+ lines.push(`view: ${views[0]}`);
138
+ const previewId = responses.map((response) => readString(response.previewId)).find(Boolean);
139
+ lines.push(action === "preview" && previewId
140
+ ? `next: aib mutate apply ${previewId}`
141
+ : action === "preview"
142
+ ? "next: Review retained exports.star.expand evidence; no safe edits are available to apply."
143
+ : retained.length > 0
144
+ ? "next: Review retained exports.star.expand evidence and fix remaining edges manually or rerun with adjusted intent."
145
+ : "next: Continue with the refactor or run focused checks.");
146
+ return lines.join("\n");
147
+ }
148
+ function formatExportsStarResponseForReplay(response) {
149
+ const operation = readString(response.operation);
150
+ if (operation === "mutate.apply") {
151
+ const results = readObjectArray(response.results);
152
+ if (results.some((result) => readString(result.operation) === "exports.star.expand.preview")) {
153
+ return formatExportsStarWriteText("apply", response);
154
+ }
155
+ }
156
+ if (operation !== "mutate.preview" && operation !== "mutate.execute")
157
+ return null;
158
+ const aggregate = response.aggregate && typeof response.aggregate === "object" && !Array.isArray(response.aggregate)
159
+ ? response.aggregate
160
+ : {};
161
+ const operations = aggregate.operations && typeof aggregate.operations === "object" && !Array.isArray(aggregate.operations)
162
+ ? aggregate.operations
163
+ : {};
164
+ const expansions = readObjectArray(operations.exportStarExpansions);
165
+ if (expansions.length === 0)
166
+ return null;
167
+ const previewId = readString(response.previewId);
168
+ const projected = previewId
169
+ ? expansions.map((item) => ({ ...item, previewId }))
170
+ : expansions;
171
+ return formatExportsStarMutateBatchText(projected, operation === "mutate.preview" ? "preview" : "execute");
172
+ }
173
+ function formatExportsStarAgentText(result, view, previewId) {
174
+ const status = result.partial ? " partial" : "";
175
+ const lines = [
176
+ `exports.star.expand preview${status}: ${result.plannedCount} ${noun(result.plannedCount, "edge")} planned in ${result.filesTouched.length} ${noun(result.filesTouched.length, "file")}; ${result.retainedCount} retained`
177
+ ];
178
+ if (result.filesTouched.length > 0) {
179
+ lines.push(`files: ${bounded(result.filesTouched, 4)}`);
180
+ }
181
+ if (result.retained.length > 0) {
182
+ lines.push("retained:");
183
+ for (const item of result.retained.slice(0, 4)) {
184
+ const candidates = item.candidates?.length ? ` (${item.candidates.join(", ")})` : "";
185
+ lines.push(`${item.selector}: ${item.reason}${candidates}`);
186
+ }
187
+ if (result.retained.length > 4) {
188
+ lines.push(`+${result.retained.length - 4} retained`);
189
+ }
190
+ }
191
+ if (view) {
192
+ lines.push(`view: ${view}`);
193
+ }
194
+ lines.push(`next: ${previewId ? `aib mutate apply ${previewId}` : result.next}`);
195
+ return lines.join("\n");
196
+ }
197
+ function formatExportsStarWriteText(action, response) {
198
+ const plannedCount = readNumber(response.plannedCount) ?? 0;
199
+ const retained = readObjectArray(response.retained);
200
+ const files = readStringArray(response.filesWritten);
201
+ const lines = [`mutate.${action}${plannedCount > 0 && retained.length > 0 ? " partial" : ""}: ${plannedCount} ${noun(plannedCount, "edge")} expanded in ${files.length} ${noun(files.length, "file")}; ${retained.length} retained`];
202
+ if (files.length)
203
+ lines.push(`files: ${bounded(files, 4)}`);
204
+ if (retained.length) {
205
+ lines.push("retained:");
206
+ for (const item of retained.slice(0, 4))
207
+ lines.push(`${readString(item.selector) ?? "edge"}: ${readString(item.reason) ?? readString(item.code) ?? "retained"}`);
208
+ if (retained.length > 4)
209
+ lines.push(`+${retained.length - 4} retained`);
210
+ }
211
+ const view = readString(response.view);
212
+ if (view)
213
+ lines.push(`view: ${view}`);
214
+ lines.push(retained.length ? "next: Review retained exports.star.expand evidence and fix remaining edges manually or rerun with adjusted intent." : "next: Continue with the refactor or run focused checks.");
215
+ return lines.join("\n");
216
+ }
217
+ function attachExportsStarWriteView(cwd, response) {
218
+ const saved = (0, session_workspace_1.saveSessionResultViewJson)(cwd, `res_${crypto.randomBytes(4).toString("hex")}`, {
219
+ kind: "exportsStarExpandWrite",
220
+ ...response
221
+ });
222
+ return saved ? { ...response, view: saved.saved } : response;
223
+ }
224
+ function intentFromSegment(segment) {
225
+ return {
226
+ sourceFile: readString(segment.sourceFile) ?? "",
227
+ selectors: readStringArray(segment.selectors),
228
+ namespaceShape: readString(segment.namespaceShape) === "allow" ? "allow" : "retain"
229
+ };
230
+ }
231
+ function readString(value) {
232
+ return typeof value === "string" && value.length > 0 ? value : undefined;
233
+ }
234
+ function readStringArray(value) {
235
+ return Array.isArray(value) ? value.filter((item) => typeof item === "string" && item.length > 0) : [];
236
+ }
237
+ function readNumber(value) {
238
+ return typeof value === "number" && Number.isFinite(value) ? value : undefined;
239
+ }
240
+ function readObjectArray(value) {
241
+ return Array.isArray(value) ? value.filter((item) => Boolean(item) && typeof item === "object" && !Array.isArray(item)) : [];
242
+ }
243
+ function bounded(values, limit) {
244
+ return values.length <= limit ? values.join(", ") : `${values.slice(0, limit).join(", ")} +${values.length - limit}`;
245
+ }
246
+ function noun(count, word) {
247
+ return count === 1 ? word : `${word}s`;
248
+ }
249
+ function replaceFirstLine(text, firstLine) {
250
+ const newline = text.indexOf("\n");
251
+ return newline < 0 ? firstLine : `${firstLine}${text.slice(newline)}`;
252
+ }
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.buildExportsStarPreviewId = buildExportsStarPreviewId;
37
+ exports.buildExportsStarPreviewHash = buildExportsStarPreviewHash;
38
+ exports.readExportsStarPreviewRecord = readExportsStarPreviewRecord;
39
+ exports.writeExportsStarPreviewRecord = writeExportsStarPreviewRecord;
40
+ exports.stableExportsStarStringify = stableExportsStarStringify;
41
+ const crypto = __importStar(require("node:crypto"));
42
+ const fs = __importStar(require("node:fs"));
43
+ const path = __importStar(require("node:path"));
44
+ const errors_1 = require("../shared/errors");
45
+ const workspace_cache_1 = require("./workspace-cache");
46
+ function buildExportsStarPreviewId(normalizedIntents, fileHashes, evidenceHashes) {
47
+ return `exports_star_${sha256(stableStringify({ normalizedIntents, fileHashes, evidenceHashes })).slice(0, 10)}`;
48
+ }
49
+ function buildExportsStarPreviewHash(record) {
50
+ return `sha256:${sha256(stableStringify(record))}`;
51
+ }
52
+ function readExportsStarPreviewRecord(cwd, previewId) {
53
+ const filePath = recordPath(cwd, previewId);
54
+ if (!fs.existsSync(filePath)) {
55
+ throw new errors_1.CliError("EXPORTS_STAR_PREVIEW_NOT_FOUND", `Exports star preview not found: ${previewId}`, { previewId, expectedPath: filePath });
56
+ }
57
+ return JSON.parse(fs.readFileSync(filePath, "utf8"));
58
+ }
59
+ function writeExportsStarPreviewRecord(cwd, record) {
60
+ const filePath = recordPath(cwd, record.previewId);
61
+ fs.mkdirSync(path.dirname(filePath), { recursive: true });
62
+ const temporary = `${filePath}.${process.pid}.${Date.now()}.tmp`;
63
+ fs.writeFileSync(temporary, `${JSON.stringify(record, null, 2)}\n`);
64
+ fs.renameSync(temporary, filePath);
65
+ }
66
+ function stableExportsStarStringify(value) {
67
+ return stableStringify(value);
68
+ }
69
+ function recordPath(cwd, previewId) {
70
+ return (0, workspace_cache_1.workspaceCachePath)(cwd, "exports-star-previews", `${previewId.replace(/[^a-z0-9_-]+/gi, "-")}.json`);
71
+ }
72
+ function sha256(value) {
73
+ return crypto.createHash("sha256").update(value).digest("hex");
74
+ }
75
+ function stableStringify(value) {
76
+ if (value === null || typeof value !== "object")
77
+ return JSON.stringify(value);
78
+ if (Array.isArray(value))
79
+ return `[${value.map(stableStringify).join(",")}]`;
80
+ return `{${Object.entries(value)
81
+ .sort(([left], [right]) => left.localeCompare(right))
82
+ .map(([key, item]) => `${JSON.stringify(key)}:${stableStringify(item)}`)
83
+ .join(",")}}`;
84
+ }