@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
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildSessionHealthPayload = buildSessionHealthPayload;
4
+ exports.isReusableSessionHealth = isReusableSessionHealth;
5
+ exports.isDrainingSessionHealth = isDrainingSessionHealth;
6
+ function buildSessionHealthPayload(pid, runtime) {
7
+ return {
8
+ ok: true,
9
+ pid,
10
+ runtime
11
+ };
12
+ }
13
+ /** Old daemons without runtime diagnostics remain reusable. */
14
+ function isReusableSessionHealth(health) {
15
+ if (health?.ok !== true)
16
+ return false;
17
+ const runtime = readRuntime(health);
18
+ return runtime?.acceptingRequests !== false;
19
+ }
20
+ function isDrainingSessionHealth(health) {
21
+ return readRuntime(health)?.acceptingRequests === false;
22
+ }
23
+ function readRuntime(health) {
24
+ return health?.runtime && typeof health.runtime === "object" && !Array.isArray(health.runtime)
25
+ ? health.runtime
26
+ : null;
27
+ }
@@ -1 +1,29 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AGENT_TEXT_FIELD=void 0,exports.attachAgentText=T,exports.readAgentText=n,exports.stripAgentText=r,exports.AGENT_TEXT_FIELD="__aibText";function T(t,e){return e?{...t,[exports.AGENT_TEXT_FIELD]:e}:t}function n(t){const e=t[exports.AGENT_TEXT_FIELD];return typeof e=="string"&&e!==""?e:null}function r(t){if(t[exports.AGENT_TEXT_FIELD]===void 0)return t;const e={...t};return delete e[exports.AGENT_TEXT_FIELD],e}
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AGENT_TEXT_FIELD = void 0;
4
+ exports.attachAgentText = attachAgentText;
5
+ exports.readAgentText = readAgentText;
6
+ exports.stripAgentText = stripAgentText;
7
+ const presentation_1 = require("../agent-dx/presentation");
8
+ exports.AGENT_TEXT_FIELD = "__aibText";
9
+ function attachAgentText(payload, text) {
10
+ if (!text) {
11
+ return payload;
12
+ }
13
+ return {
14
+ ...payload,
15
+ [exports.AGENT_TEXT_FIELD]: (0, presentation_1.appendAgentDxText)(text, payload)
16
+ };
17
+ }
18
+ function readAgentText(payload) {
19
+ const value = payload[exports.AGENT_TEXT_FIELD];
20
+ return typeof value === "string" && value !== "" ? value : null;
21
+ }
22
+ function stripAgentText(payload) {
23
+ if (payload[exports.AGENT_TEXT_FIELD] === undefined) {
24
+ return payload;
25
+ }
26
+ const copy = { ...payload };
27
+ delete copy[exports.AGENT_TEXT_FIELD];
28
+ return copy;
29
+ }
@@ -1,30 +1,496 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CliError=void 0,exports.errorPayload=g;const p=require("./agent-text"),m=require("./stdin-examples");class f extends Error{code;details;constructor(n,i,s){super(i),this.code=n,this.details=s}}exports.CliError=f;function _(e){return Array.isArray(e)&&e.every(n=>n!==null&&typeof n=="object"&&typeof n.kind=="string"&&typeof n.description=="string")}function l(e){return e===null||typeof e=="string"||typeof e=="number"||typeof e=="boolean"?e:Array.isArray(e)?e.map(n=>l(n)):e&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([n,i])=>[n,l(i)])):String(e)}function A(e){if(!e||typeof e!="object"||Array.isArray(e))return null;const n=e.hints;return _(n)?l(n):null}function I(e){return!!(e&&typeof e=="object"&&Array.isArray(e.issues))}function N(e){return!e||e.length===0?"<root>":e.map(n=>String(n)).join(".")}function h(e){return e.issues.map(n=>({path:N(n.path),message:typeof n.message=="string"?n.message:"Invalid value.",...typeof n.code=="string"?{code:n.code}:{}}))}function g(e){if(e instanceof f){const n={ok:!1,code:e.code,error:e.message,details:e.details?l(e.details):null},i=S(e);i&&(n[p.AGENT_TEXT_FIELD]=i);const s=A(e.details);return s?{...n,hints:s}:n}return I(e)?{ok:!1,code:"INVALID_INPUT",error:"Input JSON does not match the expected command shape.",details:{issues:h(e)}}:{ok:!1,code:"UNEXPECTED_ERROR",error:e instanceof Error?e.message:String(e),details:null}}function S(e){if(e.code==="EMPTY_STDIN")return["stdin payload is empty","",(0,m.formatStdinExamples)({includeQr:!0})].join(`
2
- `);if(e.code==="INVALID_STDIN_DSL"){const n=o(e.details),i=c(n.cause);return["invalid DSL stdin",...i?["",i]:[],"","Fix the DSL line and rerun the command."].join(`
3
- `)}if(e.code==="INVALID_STDIN_FORMAT")return["invalid stdin format","","Use:","--stdin-format auto","--stdin-format dsl"].join(`
4
- `);if(e.code==="INPUT_SOURCE_CONFLICT"||e.code.endsWith("_INPUT_SOURCE_CONFLICT"))return["input source conflict","","Use only one input source:","--stdin","--from <handle-or-file>","--from-json <file>","--from-dsl <file>"].join(`
5
- `);if(e.code==="INPUT_FROM_UNSUPPORTED")return["file input is not supported for this command","","Run the command without --from."].join(`
6
- `);if(e.code==="INPUT_STDIN_UNSUPPORTED")return["stdin input is not supported for this command","","Run the command without --stdin."].join(`
7
- `);if(e.code==="STDIN_DSL_COMMAND_MISMATCH")return["DSL command mismatch","",e.message,"","Run the command that matches the DSL intent, or change the DSL operation."].join(`
8
- `);if(e.code==="STDIN_DSL_UNSUPPORTED")return["DSL stdin is not supported for this command","","Use JSON input for this command, or run a DSL-capable command."].join(`
9
- `);if(e.code.startsWith("INVALID_")&&e.code.endsWith("_JSON_FILE")){const n=o(e.details),i=c(n.file);return["input file could not be read",...i?["",`file: ${i}`]:[],"","Check the path or saved input handle."].join(`
10
- `)}if(e.code==="UNKNOWN_COMMAND"){const n=o(e.details),i=Array.isArray(n.availableCommands)?n.availableCommands.filter(a=>typeof a=="string"):[],s=["help","config","sync","inspect","modulePlan","move","rename","imports","session","feedback"],t=i.length>0?s.filter(a=>a==="config"||i.includes(a)):s;return[e.message.replace(/^Unknown command:/,"unknown command:"),...t.length>0?["",`Common commands: ${t.join(", ")}`]:[],"","Run:","aib help"].join(`
11
- `)}if(e.code==="HELP_TOPIC_NOT_FOUND")return e.message;if(e.code==="INVALID_INSPECT_OP")return["invalid inspect operation","","Use: file, imports, exports, members, code, deps, usages, duplicates, graph, tree, cycles","","Example:","aib inspect file src/service.ts"].join(`
12
- `);if(e.code==="MODULE_PLAN_SOURCE_REQUIRED")return["modulePlan needs a source file","","DSL:","@source src/large-service.ts","module src/large-service.core.ts: LargeService createLargeService"].join(`
13
- `);if(e.code==="MODULE_PLAN_MODULES_REQUIRED")return["modulePlan needs at least one target module","","DSL:","@source src/large-service.ts","module src/large-service.core.ts: LargeService createLargeService"].join(`
14
- `);if(e.code==="NORMALIZE_IMPORTS_SCOPE_REQUIRED")return["imports normalize needs a file or directory scope","","DSL:","imports.normalize scope=src/features to=shortestAlias","","CLI:","aib imports normalize preview src/features"].join(`
15
- `);if(e.code==="INVALID_NORMALIZE_IMPORTS_MODE")return["imports normalize --to expects relative, alias, or shortestAlias","","Example:","aib imports normalize preview src/features --to shortestAlias"].join(`
16
- `);if(e.code==="WORKSPACE_ROOT_NOT_INITIALIZED")return["aib workspace not initialized","","No aib.json was found.","","If you are a user:","ask your agent to set up AIB for this repo:","aib help first-setup","","If you are an agent:","run:","aib help first-setup","","Then follow the setup from the intended repository root."].join(`
17
- `);if(e.code==="CONFIG_UPGRADE_CONFIG_NOT_FOUND")return["aib config upgrade skipped","","There is no aib.json config to upgrade in this directory tree.","","If this is the wrong directory:","go into the repository that already has aib.json, then run:","aib config upgrade","","If this is the repository you want to set up:","ask your agent:","Set up AIB in this repo. Start with `aib help first-setup`."].join(`
18
- `);if(e.code==="EXECUTION_NOT_FOUND"||e.code==="MODULE_PLAN_EXECUTION_NOT_FOUND"||e.code==="REFACTOR_BATCH_EXECUTION_NOT_FOUND"){const n=o(e.details);return[`execution not found: ${c(n.executionId)??"last"}`,"","No execution status exists for this id.","Run a long mutation first, or check the execution id."].join(`
19
- `)}if(e.code==="SESSION_HANDLE_NOT_FOUND"||e.code==="SESSION_RESULT_NOT_FOUND"){const n=o(e.details),i=c(n.handle)??"unknown",s=c(n.sessionDir);return[`handle not found: ${i}`,...s?["",`session: ${s}`]:[],"","The artifact may have been cleared or was never saved."].join(`
20
- `)}if(e.code==="SESSION_WORKSPACE_NOT_INITIALIZED")return["Session workspace is not initialized.","","Create a session:","aib session init --name <name>","","Refresh session guidance:","aib help session"].join(`
21
- `);if(e.code==="AMBIGUOUS_ENTITY_SELECTOR")return E(e);if(e.code==="INVALID_PATH_ALIAS_TARGET"||e.code==="SESSION_ALIASES_SET_USAGE")return["invalid path alias","","Use:","aib session aliases set <name> <path>","","Example:","aib session aliases set svc src/services"].join(`
22
- `);if(e.code==="AIB_CONFIG_INVALID"||e.code==="INVALID_PATH_ALIASES"||e.code==="INVALID_PATH_ALIAS_NAME"||e.code==="INVALID_PATH_ALIAS_TARGET"||e.code==="RESERVED_PATH_ALIAS_NAME")return y(e);if(e.code==="UNKNOWN_SESSION_PREF"){const n=o(e.details),i=Array.isArray(n.available)?n.available.filter(s=>typeof s=="string"):[];return[e.message.toLowerCase(),...i.length>0?["","Available prefs:",...i.slice(0,12).map(s=>`- ${s}`),...i.length>12?[`+ ${i.length-12} more`]:[]]:[],"","Run:","aib session prefs get --all"].join(`
23
- `)}if(e.code==="INVALID_SESSION_PREF_VALUE")return["invalid session preference value","",e.message,"","Run:","aib session prefs get --all"].join(`
24
- `);if(e.code==="UNKNOWN_SESSION_PREFS_COMMAND")return["unknown session prefs command","","Use:","aib session prefs get","aib session prefs set <key> <value>","aib session prefs clear [key]"].join(`
25
- `);if(e.code==="UNKNOWN_SESSION_ALIASES_COMMAND")return["unknown session aliases command","","Use:","aib session aliases get","aib session aliases set <name> <path>","aib session aliases clear [name]"].join(`
26
- `);if(e.code==="UNKNOWN_PATH_ALIAS"){const n=o(e.details),i=c(n.alias),s=Array.isArray(n.available)?n.available.filter(t=>typeof t=="string"):[];return[`unknown AIB path alias: @${i??""}`,"",s.length>0?`Available aliases: ${s.map(t=>`@${t}`).join(", ")}`:"No AIB path aliases are configured.",...s.length>0?["Run:","aib sync"]:["Check config:","aib config","or run:","aib sync"]].join(`
27
- `)}return null}function E(e){const n=o(e.details),i=Array.isArray(n.ambiguities)?n.ambiguities.filter(t=>t!==null&&typeof t=="object"&&!Array.isArray(t)):[];if(i.length>0){const t=i.map(r=>c(r.entity)).filter(r=>r!==null),a=[t.length===1?`ambiguous entity: ${t[0]}`:`ambiguous entities: ${t.join(", ")}`,"","Use available:"];for(const r of i){const d=Array.isArray(r.suggestions)?r.suggestions.filter(u=>typeof u=="string"&&u.length>0):[];d.length>0&&a.push(`- ${d.join(", ")}`)}return a.join(`
28
- `)}const s=Array.isArray(n.suggestions)?n.suggestions.filter(t=>typeof t=="string"&&t.length>0):[];return[e.message,...s.length>0?["","Use available:",`- ${s.join(", ")}`]:[]].join(`
29
- `)}function y(e){const n=["aib config invalid","",e.message];if(e.code==="INVALID_PATH_ALIAS_NAME"&&n.push("Use alias names without @, for example:",'"pathAliases": {',' "svc": "src/services"',"}"),e.code==="RESERVED_PATH_ALIAS_NAME"){const i=o(e.details),s=Array.isArray(i.reserved)?i.reserved.filter(t=>typeof t=="string"):[];s.length>0&&n.push(`Reserved aliases: ${s.join(", ")}`)}return n.push("","Edit aib.json, then run:","aib sync"),n.join(`
30
- `)}function o(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}function c(e){return typeof e=="string"&&e.length>0?e:null}
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CliError = void 0;
4
+ exports.errorPayload = errorPayload;
5
+ const agent_text_1 = require("./agent-text");
6
+ const stdin_examples_1 = require("./stdin-examples");
7
+ class CliError extends Error {
8
+ code;
9
+ details;
10
+ constructor(code, message, details) {
11
+ super(message);
12
+ this.code = code;
13
+ this.details = details;
14
+ }
15
+ }
16
+ exports.CliError = CliError;
17
+ function isHintArray(value) {
18
+ return Array.isArray(value) && value.every((item) => item !== null &&
19
+ typeof item === "object" &&
20
+ typeof item.kind === "string" &&
21
+ typeof item.description === "string");
22
+ }
23
+ function toJsonValue(value) {
24
+ if (value === null || typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
25
+ return value;
26
+ }
27
+ if (Array.isArray(value)) {
28
+ return value.map((item) => toJsonValue(item));
29
+ }
30
+ if (value && typeof value === "object") {
31
+ return Object.fromEntries(Object.entries(value).map(([key, item]) => [key, toJsonValue(item)]));
32
+ }
33
+ return String(value);
34
+ }
35
+ function extractHints(details) {
36
+ if (!details || typeof details !== "object" || Array.isArray(details)) {
37
+ return null;
38
+ }
39
+ const hints = details.hints;
40
+ return isHintArray(hints) ? toJsonValue(hints) : null;
41
+ }
42
+ function isZodLikeError(error) {
43
+ return Boolean(error &&
44
+ typeof error === "object" &&
45
+ Array.isArray(error.issues));
46
+ }
47
+ function formatZodPath(path) {
48
+ if (!path || path.length === 0) {
49
+ return "<root>";
50
+ }
51
+ return path.map((part) => String(part)).join(".");
52
+ }
53
+ function formatZodIssues(error) {
54
+ return error.issues.map((issue) => ({
55
+ path: formatZodPath(issue.path),
56
+ message: typeof issue.message === "string" ? issue.message : "Invalid value.",
57
+ ...(typeof issue.code === "string" ? { code: issue.code } : {})
58
+ }));
59
+ }
60
+ function errorPayload(error) {
61
+ if (error instanceof CliError) {
62
+ const payload = {
63
+ ok: false,
64
+ code: error.code,
65
+ error: error.message,
66
+ details: error.details ? toJsonValue(error.details) : null
67
+ };
68
+ const agentText = formatErrorAgentText(error);
69
+ if (agentText) {
70
+ payload[agent_text_1.AGENT_TEXT_FIELD] = agentText;
71
+ }
72
+ const hints = extractHints(error.details);
73
+ return hints ? { ...payload, hints } : payload;
74
+ }
75
+ if (isZodLikeError(error)) {
76
+ return {
77
+ ok: false,
78
+ code: "INVALID_INPUT",
79
+ error: "Input JSON does not match the expected command shape.",
80
+ details: {
81
+ issues: formatZodIssues(error)
82
+ }
83
+ };
84
+ }
85
+ return {
86
+ ok: false,
87
+ code: "UNEXPECTED_ERROR",
88
+ error: error instanceof Error ? error.message : String(error),
89
+ details: null
90
+ };
91
+ }
92
+ function formatErrorAgentText(error) {
93
+ if (error.code === "INSPECT_TREE_SCOPE_REQUIRED") {
94
+ return error.message;
95
+ }
96
+ if (error.code === "EMPTY_STDIN") {
97
+ return [
98
+ "stdin payload is empty",
99
+ "",
100
+ (0, stdin_examples_1.formatStdinExamples)({ includeQr: true })
101
+ ].join("\n");
102
+ }
103
+ if (error.code === "INVALID_STDIN_DSL") {
104
+ const details = readDetailsObject(error.details);
105
+ const cause = readString(details.cause);
106
+ return [
107
+ "invalid DSL stdin",
108
+ ...(cause ? ["", cause] : []),
109
+ "",
110
+ "Fix the DSL line and rerun the command."
111
+ ].join("\n");
112
+ }
113
+ if (error.code === "INVALID_STDIN_FORMAT") {
114
+ return [
115
+ "invalid stdin format",
116
+ "",
117
+ "Use:",
118
+ "--stdin-format auto",
119
+ "--stdin-format dsl"
120
+ ].join("\n");
121
+ }
122
+ if (error.code === "INPUT_SOURCE_CONFLICT" || error.code.endsWith("_INPUT_SOURCE_CONFLICT")) {
123
+ return [
124
+ "input source conflict",
125
+ "",
126
+ "Use only one input source:",
127
+ "--stdin",
128
+ "--from <handle-or-file>",
129
+ "--from-json <file>",
130
+ "--from-dsl <file>"
131
+ ].join("\n");
132
+ }
133
+ if (error.code === "INPUT_FROM_UNSUPPORTED") {
134
+ return [
135
+ "file input is not supported for this command",
136
+ "",
137
+ "Run the command without --from."
138
+ ].join("\n");
139
+ }
140
+ if (error.code === "INPUT_STDIN_UNSUPPORTED") {
141
+ return [
142
+ "stdin input is not supported for this command",
143
+ "",
144
+ "Run the command without --stdin."
145
+ ].join("\n");
146
+ }
147
+ if (error.code === "STDIN_DSL_COMMAND_MISMATCH") {
148
+ return [
149
+ "DSL command mismatch",
150
+ "",
151
+ error.message,
152
+ "",
153
+ "Run the command that matches the DSL intent, or change the DSL operation."
154
+ ].join("\n");
155
+ }
156
+ if (error.code === "STDIN_DSL_UNSUPPORTED") {
157
+ return [
158
+ "DSL stdin is not supported for this command",
159
+ "",
160
+ "Use JSON input for this command, or run a DSL-capable command."
161
+ ].join("\n");
162
+ }
163
+ if (error.code.startsWith("INVALID_") && error.code.endsWith("_JSON_FILE")) {
164
+ const details = readDetailsObject(error.details);
165
+ const file = readString(details.file);
166
+ return [
167
+ "input file could not be read",
168
+ ...(file ? ["", `file: ${file}`] : []),
169
+ "",
170
+ "Check the path or saved input handle."
171
+ ].join("\n");
172
+ }
173
+ if (error.code === "UNKNOWN_COMMAND") {
174
+ const details = readDetailsObject(error.details);
175
+ const available = Array.isArray(details.availableCommands)
176
+ ? details.availableCommands.filter((item) => typeof item === "string")
177
+ : [];
178
+ const commonCommands = [
179
+ "help",
180
+ "config",
181
+ "sync",
182
+ "inspect",
183
+ "modulePlan",
184
+ "move",
185
+ "rename",
186
+ "mutate",
187
+ "imports",
188
+ "session",
189
+ "feedback"
190
+ ];
191
+ const visible = available.length > 0
192
+ ? commonCommands.filter((item) => item === "config" || available.includes(item))
193
+ : commonCommands;
194
+ return [
195
+ error.message.replace(/^Unknown command:/, "unknown command:"),
196
+ ...(visible.length > 0 ? ["", `Common commands: ${visible.join(", ")}`] : []),
197
+ "",
198
+ "Run:",
199
+ "aib help"
200
+ ].join("\n");
201
+ }
202
+ if (error.code === "HELP_TOPIC_NOT_FOUND") {
203
+ return error.message;
204
+ }
205
+ if (error.code === "INVALID_INSPECT_OP") {
206
+ return [
207
+ "invalid inspect operation",
208
+ "",
209
+ "Use: file, imports, exports, members, code, deps, usages, duplicates, graph, tree, cycles",
210
+ "",
211
+ "Example:",
212
+ "aib inspect file src/service.ts"
213
+ ].join("\n");
214
+ }
215
+ if (error.code === "MODULE_PLAN_SOURCE_REQUIRED") {
216
+ return [
217
+ "modulePlan needs a source file",
218
+ "",
219
+ "DSL:",
220
+ "@source src/large-service.ts",
221
+ "module src/large-service.core.ts: LargeService createLargeService"
222
+ ].join("\n");
223
+ }
224
+ if (error.code === "MODULE_PLAN_MODULES_REQUIRED") {
225
+ return [
226
+ "modulePlan needs at least one target module",
227
+ "",
228
+ "DSL:",
229
+ "@source src/large-service.ts",
230
+ "module src/large-service.core.ts: LargeService createLargeService"
231
+ ].join("\n");
232
+ }
233
+ if (error.code === "NORMALIZE_IMPORTS_SCOPE_REQUIRED") {
234
+ return [
235
+ "imports.normalize needs a file or directory scope",
236
+ "",
237
+ "Input:",
238
+ "@scope src/features",
239
+ "imports.normalize to=shortestAlias",
240
+ "",
241
+ "Run:",
242
+ "aib mutate preview --stdin",
243
+ "aib mutate execute --stdin"
244
+ ].join("\n");
245
+ }
246
+ if (error.code === "IMPORTS_NORMALIZE_MUTATE_ONLY") {
247
+ return [
248
+ "imports.normalize is available through aib mutate.",
249
+ "",
250
+ "Input:",
251
+ "@scope src/features",
252
+ "imports.normalize to=shortestAlias",
253
+ "",
254
+ "Run:",
255
+ "aib mutate preview --stdin",
256
+ "aib mutate execute --stdin"
257
+ ].join("\n");
258
+ }
259
+ if (error.code === "INVALID_NORMALIZE_IMPORTS_MODE") {
260
+ return [
261
+ "imports.normalize to= expects relative, alias, or shortestAlias",
262
+ "",
263
+ "Input:",
264
+ "@scope src/features",
265
+ "imports.normalize to=shortestAlias",
266
+ "",
267
+ "Run:",
268
+ "aib mutate preview --stdin"
269
+ ].join("\n");
270
+ }
271
+ if (error.code === "IMPORT_REBASE_BARREL_AMBIGUOUS") {
272
+ const details = readDetailsObject(error.details);
273
+ const candidates = Array.isArray(details.candidates)
274
+ ? details.candidates.filter((item) => typeof item === "string" && item.length > 0)
275
+ : [];
276
+ return [
277
+ error.message,
278
+ ...(candidates.length > 0
279
+ ? ["", "Choose an explicit barrel file:", ...candidates]
280
+ : []),
281
+ "",
282
+ "Pass the exact barrel file path."
283
+ ].join("\n");
284
+ }
285
+ if (error.code === "WORKSPACE_ROOT_NOT_INITIALIZED") {
286
+ return [
287
+ "aib workspace not initialized",
288
+ "",
289
+ "No aib.json was found.",
290
+ "",
291
+ "If you are a user:",
292
+ "ask your agent to set up AIB for this repo:",
293
+ "aib help first-setup",
294
+ "",
295
+ "If you are an agent:",
296
+ "run:",
297
+ "aib help first-setup",
298
+ "",
299
+ "Then follow the setup from the intended repository root."
300
+ ].join("\n");
301
+ }
302
+ if (error.code === "CONFIG_UPGRADE_CONFIG_NOT_FOUND") {
303
+ return [
304
+ "aib config upgrade skipped",
305
+ "",
306
+ "There is no aib.json config to upgrade in this directory tree.",
307
+ "",
308
+ "If this is the wrong directory:",
309
+ "go into the repository that already has aib.json, then run:",
310
+ "aib config upgrade",
311
+ "",
312
+ "If this is the repository you want to set up:",
313
+ "ask your agent:",
314
+ "Set up AIB in this repo. Start with `aib help first-setup`."
315
+ ].join("\n");
316
+ }
317
+ if (error.code === "EXECUTION_NOT_FOUND" || error.code === "MODULE_PLAN_EXECUTION_NOT_FOUND" || error.code === "REFACTOR_BATCH_EXECUTION_NOT_FOUND") {
318
+ const details = readDetailsObject(error.details);
319
+ const executionId = readString(details.executionId) ?? "last";
320
+ return [
321
+ `execution not found: ${executionId}`,
322
+ "",
323
+ "No execution status exists for this id.",
324
+ "Run a long mutation first, or check the execution id."
325
+ ].join("\n");
326
+ }
327
+ if (error.code === "SESSION_HANDLE_NOT_FOUND" || error.code === "SESSION_RESULT_NOT_FOUND") {
328
+ const details = readDetailsObject(error.details);
329
+ const handle = readString(details.handle) ?? "unknown";
330
+ const sessionDir = readString(details.sessionDir);
331
+ return [
332
+ `handle not found: ${handle}`,
333
+ ...(sessionDir ? ["", `session: ${sessionDir}`] : []),
334
+ "",
335
+ "The artifact may have been cleared or was never saved."
336
+ ].join("\n");
337
+ }
338
+ if (error.code === "SESSION_WORKSPACE_NOT_INITIALIZED") {
339
+ return [
340
+ "Session workspace is not initialized.",
341
+ "",
342
+ "Create a session:",
343
+ "aib session init --name <name>",
344
+ "",
345
+ "Refresh session guidance:",
346
+ "aib help session"
347
+ ].join("\n");
348
+ }
349
+ if (error.code === "AMBIGUOUS_ENTITY_SELECTOR") {
350
+ return formatAmbiguousEntitySelectorText(error);
351
+ }
352
+ if (error.code === "INVALID_PATH_ALIAS_TARGET" || error.code === "SESSION_ALIASES_SET_USAGE") {
353
+ return [
354
+ "invalid path alias",
355
+ "",
356
+ "Use:",
357
+ "aib session aliases set <name> <path>",
358
+ "",
359
+ "Example:",
360
+ "aib session aliases set svc src/services"
361
+ ].join("\n");
362
+ }
363
+ if (error.code === "AIB_CONFIG_INVALID" ||
364
+ error.code === "INVALID_PATH_ALIASES" ||
365
+ error.code === "INVALID_PATH_ALIAS_NAME" ||
366
+ error.code === "INVALID_PATH_ALIAS_TARGET" ||
367
+ error.code === "RESERVED_PATH_ALIAS_NAME") {
368
+ return formatConfigErrorText(error);
369
+ }
370
+ if (error.code === "UNKNOWN_SESSION_PREF") {
371
+ const details = readDetailsObject(error.details);
372
+ const available = Array.isArray(details.available)
373
+ ? details.available.filter((item) => typeof item === "string")
374
+ : [];
375
+ return [
376
+ error.message.toLowerCase(),
377
+ ...(available.length > 0
378
+ ? ["", "Available prefs:", ...available.slice(0, 12).map((item) => `- ${item}`), ...(available.length > 12 ? [`+ ${available.length - 12} more`] : [])]
379
+ : []),
380
+ "",
381
+ "Run:",
382
+ "aib session prefs get --all"
383
+ ].join("\n");
384
+ }
385
+ if (error.code === "INVALID_SESSION_PREF_VALUE") {
386
+ return [
387
+ "invalid session preference value",
388
+ "",
389
+ error.message,
390
+ "",
391
+ "Run:",
392
+ "aib session prefs get --all"
393
+ ].join("\n");
394
+ }
395
+ if (error.code === "UNKNOWN_SESSION_PREFS_COMMAND") {
396
+ return [
397
+ "unknown session prefs command",
398
+ "",
399
+ "Use:",
400
+ "aib session prefs get",
401
+ "aib session prefs set <key> <value>",
402
+ "aib session prefs clear [key]"
403
+ ].join("\n");
404
+ }
405
+ if (error.code === "UNKNOWN_SESSION_ALIASES_COMMAND") {
406
+ return [
407
+ "unknown session aliases command",
408
+ "",
409
+ "Use:",
410
+ "aib session aliases get",
411
+ "aib session aliases set <name> <path>",
412
+ "aib session aliases clear [name]"
413
+ ].join("\n");
414
+ }
415
+ if (error.code === "UNKNOWN_PATH_ALIAS") {
416
+ const details = readDetailsObject(error.details);
417
+ const alias = readString(details.alias);
418
+ const available = Array.isArray(details.available)
419
+ ? details.available.filter((item) => typeof item === "string")
420
+ : [];
421
+ return [
422
+ `unknown AIB path alias: @${alias ?? ""}`,
423
+ "",
424
+ available.length > 0
425
+ ? `Available aliases: ${available.map((item) => `@${item}`).join(", ")}`
426
+ : "No AIB path aliases are configured.",
427
+ ...(available.length > 0
428
+ ? ["Run:", "aib sync"]
429
+ : ["Check config:", "aib config", "or run:", "aib sync"])
430
+ ].join("\n");
431
+ }
432
+ return null;
433
+ }
434
+ function formatAmbiguousEntitySelectorText(error) {
435
+ const details = readDetailsObject(error.details);
436
+ const ambiguities = Array.isArray(details.ambiguities)
437
+ ? details.ambiguities.filter((item) => item !== null && typeof item === "object" && !Array.isArray(item))
438
+ : [];
439
+ if (ambiguities.length > 0) {
440
+ const entities = ambiguities
441
+ .map((item) => readString(item.entity))
442
+ .filter((item) => item !== null);
443
+ const lines = [
444
+ entities.length === 1
445
+ ? `ambiguous entity: ${entities[0]}`
446
+ : `ambiguous entities: ${entities.join(", ")}`,
447
+ "",
448
+ "Use available:"
449
+ ];
450
+ for (const item of ambiguities) {
451
+ const suggestions = Array.isArray(item.suggestions)
452
+ ? item.suggestions.filter((suggestion) => typeof suggestion === "string" && suggestion.length > 0)
453
+ : [];
454
+ if (suggestions.length > 0) {
455
+ lines.push(`- ${suggestions.join(", ")}`);
456
+ }
457
+ }
458
+ return lines.join("\n");
459
+ }
460
+ const suggestions = Array.isArray(details.suggestions)
461
+ ? details.suggestions.filter((suggestion) => typeof suggestion === "string" && suggestion.length > 0)
462
+ : [];
463
+ return [
464
+ error.message,
465
+ ...(suggestions.length > 0 ? ["", "Use available:", `- ${suggestions.join(", ")}`] : [])
466
+ ].join("\n");
467
+ }
468
+ function formatConfigErrorText(error) {
469
+ const lines = [
470
+ "aib config invalid",
471
+ "",
472
+ error.message
473
+ ];
474
+ if (error.code === "INVALID_PATH_ALIAS_NAME") {
475
+ lines.push("Use alias names without @, for example:", `"pathAliases": {`, ` "svc": "src/services"`, `}`);
476
+ }
477
+ if (error.code === "RESERVED_PATH_ALIAS_NAME") {
478
+ const details = readDetailsObject(error.details);
479
+ const reserved = Array.isArray(details.reserved)
480
+ ? details.reserved.filter((item) => typeof item === "string")
481
+ : [];
482
+ if (reserved.length > 0) {
483
+ lines.push(`Reserved aliases: ${reserved.join(", ")}`);
484
+ }
485
+ }
486
+ lines.push("", "Edit aib.json, then run:", "aib sync");
487
+ return lines.join("\n");
488
+ }
489
+ function readDetailsObject(details) {
490
+ return details && typeof details === "object" && !Array.isArray(details)
491
+ ? details
492
+ : {};
493
+ }
494
+ function readString(value) {
495
+ return typeof value === "string" && value.length > 0 ? value : null;
496
+ }
@@ -1 +1,6 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.yieldToEventLoop=t;async function t(){await new Promise(e=>setImmediate(e))}
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.yieldToEventLoop = yieldToEventLoop;
4
+ async function yieldToEventLoop() {
5
+ await new Promise((resolve) => setImmediate(resolve));
6
+ }
@@ -1 +1,37 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.commandHint=e,exports.actionHint=i,exports.docsHint=a,exports.configHint=c,exports.buildUpgradeExtensionHints=s;function e(n,t){return{kind:"command",command:n,description:t}}function i(n){return{kind:"action",description:n}}function a(n,t){return{kind:"docs",path:n,description:t}}function c(n,t,o){const r={kind:"config",name:n,description:t};return o!==void 0&&(r.value=o),r}function s(){return[i("Install a newer extension VSIX that supports the requested operation."),e("npm --prefix packages/extension run package:vsix","Build a fresh local VSIX artifact."),i("Reload the IDE window after installing the latest extension."),e("aib listInstances","Check which IDE instances are currently registered.")]}
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.commandHint = commandHint;
4
+ exports.actionHint = actionHint;
5
+ exports.docsHint = docsHint;
6
+ exports.configHint = configHint;
7
+ function commandHint(command, description) {
8
+ return {
9
+ kind: "command",
10
+ command,
11
+ description
12
+ };
13
+ }
14
+ function actionHint(description) {
15
+ return {
16
+ kind: "action",
17
+ description
18
+ };
19
+ }
20
+ function docsHint(path, description) {
21
+ return {
22
+ kind: "docs",
23
+ path,
24
+ description
25
+ };
26
+ }
27
+ function configHint(name, description, value) {
28
+ const hint = {
29
+ kind: "config",
30
+ name,
31
+ description
32
+ };
33
+ if (value !== undefined) {
34
+ hint.value = value;
35
+ }
36
+ return hint;
37
+ }