@mrclrchtr/supi-code-intelligence 3.2.0 → 4.0.0

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 (556) hide show
  1. package/README.md +154 -435
  2. package/node_modules/@mrclrchtr/supi-code-runtime/README.md +8 -0
  3. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +2 -4
  4. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/api.ts +0 -4
  5. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/evidence-badge.ts +3 -2
  6. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/index.ts +0 -4
  7. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/llm.ts +0 -10
  8. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path-utils.ts +19 -15
  9. package/node_modules/@mrclrchtr/supi-code-runtime/package.json +2 -2
  10. package/node_modules/@mrclrchtr/supi-code-runtime/src/api.ts +10 -1
  11. package/node_modules/@mrclrchtr/supi-code-runtime/src/capability/types.ts +19 -29
  12. package/node_modules/@mrclrchtr/supi-code-runtime/src/index.ts +7 -1
  13. package/node_modules/@mrclrchtr/supi-code-runtime/src/query-result.ts +42 -0
  14. package/node_modules/@mrclrchtr/supi-code-runtime/src/types.ts +15 -10
  15. package/node_modules/@mrclrchtr/supi-core/package.json +2 -4
  16. package/node_modules/@mrclrchtr/supi-core/src/api.ts +0 -4
  17. package/node_modules/@mrclrchtr/supi-core/src/evidence-badge.ts +3 -2
  18. package/node_modules/@mrclrchtr/supi-core/src/index.ts +0 -4
  19. package/node_modules/@mrclrchtr/supi-core/src/llm.ts +0 -10
  20. package/node_modules/@mrclrchtr/supi-core/src/path-utils.ts +19 -15
  21. package/node_modules/@mrclrchtr/supi-lsp/README.md +72 -62
  22. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/README.md +8 -0
  23. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +2 -4
  24. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/api.ts +0 -4
  25. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/evidence-badge.ts +3 -2
  26. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/index.ts +0 -4
  27. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/llm.ts +0 -10
  28. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path-utils.ts +19 -15
  29. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/package.json +2 -2
  30. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/api.ts +10 -1
  31. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/capability/types.ts +19 -29
  32. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/index.ts +7 -1
  33. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/query-result.ts +42 -0
  34. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/types.ts +15 -10
  35. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/package.json +2 -4
  36. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/api.ts +0 -4
  37. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/evidence-badge.ts +3 -2
  38. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/index.ts +0 -4
  39. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/llm.ts +0 -10
  40. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/path-utils.ts +19 -15
  41. package/node_modules/@mrclrchtr/supi-lsp/package.json +4 -5
  42. package/node_modules/@mrclrchtr/supi-lsp/src/api.ts +9 -9
  43. package/node_modules/@mrclrchtr/supi-lsp/src/client/client.ts +70 -41
  44. package/node_modules/@mrclrchtr/supi-lsp/src/client/transport.ts +16 -13
  45. package/node_modules/@mrclrchtr/supi-lsp/src/config/config.ts +2 -2
  46. package/node_modules/@mrclrchtr/supi-lsp/src/config/lsp-settings.ts +0 -2
  47. package/node_modules/@mrclrchtr/supi-lsp/src/index.ts +6 -6
  48. package/node_modules/@mrclrchtr/supi-lsp/src/manager/manager-diagnostics.ts +5 -95
  49. package/node_modules/@mrclrchtr/supi-lsp/src/manager/manager-workspace-recovery.ts +4 -3
  50. package/node_modules/@mrclrchtr/supi-lsp/src/manager/manager-workspace-symbol.ts +44 -6
  51. package/node_modules/@mrclrchtr/supi-lsp/src/manager/manager.ts +47 -65
  52. package/node_modules/@mrclrchtr/supi-lsp/src/provider/lsp-semantic-provider.ts +132 -79
  53. package/node_modules/@mrclrchtr/supi-lsp/src/provider/refactor-planning.ts +6 -14
  54. package/node_modules/@mrclrchtr/supi-lsp/src/session/readiness.ts +38 -0
  55. package/node_modules/@mrclrchtr/supi-lsp/src/session/runtime-controller.ts +87 -75
  56. package/node_modules/@mrclrchtr/supi-lsp/src/session/runtime-registration.ts +5 -5
  57. package/node_modules/@mrclrchtr/supi-lsp/src/session/{service-registry.ts → runtime-registry.ts} +163 -71
  58. package/node_modules/@mrclrchtr/supi-tree-sitter/README.md +4 -0
  59. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/README.md +8 -0
  60. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +2 -4
  61. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/api.ts +0 -4
  62. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/evidence-badge.ts +3 -2
  63. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/index.ts +0 -4
  64. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/llm.ts +0 -10
  65. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path-utils.ts +19 -15
  66. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/package.json +2 -2
  67. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/api.ts +10 -1
  68. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/capability/types.ts +19 -29
  69. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/index.ts +7 -1
  70. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/query-result.ts +42 -0
  71. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/types.ts +15 -10
  72. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/package.json +2 -4
  73. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/api.ts +0 -4
  74. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/evidence-badge.ts +3 -2
  75. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/index.ts +0 -4
  76. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/llm.ts +0 -10
  77. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/path-utils.ts +19 -15
  78. package/node_modules/@mrclrchtr/supi-tree-sitter/package.json +4 -21
  79. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/bash/tree-sitter-bash.wasm +0 -0
  80. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/bash/tree-sitter-bash.wasm.json +2 -2
  81. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/c/tree-sitter-c.wasm +0 -0
  82. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/c/tree-sitter-c.wasm.json +2 -2
  83. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/go/tree-sitter-go.wasm +0 -0
  84. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/go/tree-sitter-go.wasm.json +2 -2
  85. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/javascript/tree-sitter-javascript.wasm +0 -0
  86. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/javascript/tree-sitter-javascript.wasm.json +2 -2
  87. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/kotlin/tree-sitter-kotlin.wasm +0 -0
  88. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/kotlin/tree-sitter-kotlin.wasm.json +2 -2
  89. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/python/tree-sitter-python.wasm +0 -0
  90. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/python/tree-sitter-python.wasm.json +2 -2
  91. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/r/tree-sitter-r.wasm +0 -0
  92. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/r/tree-sitter-r.wasm.json +2 -2
  93. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/rust/tree-sitter-rust.wasm.json +1 -1
  94. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/sql/tree-sitter-sql.wasm +0 -0
  95. package/node_modules/@mrclrchtr/supi-tree-sitter/resources/grammars/sql/tree-sitter-sql.wasm.json +3 -3
  96. package/node_modules/@mrclrchtr/supi-tree-sitter/scripts/generate-kotlin-wasm.mjs +6 -0
  97. package/node_modules/@mrclrchtr/supi-tree-sitter/scripts/generate-sql-wasm.mjs +18 -4
  98. package/node_modules/@mrclrchtr/supi-tree-sitter/scripts/vendor-wasm.mjs +17 -1
  99. package/node_modules/@mrclrchtr/supi-tree-sitter/src/api.ts +2 -0
  100. package/node_modules/@mrclrchtr/supi-tree-sitter/src/coordinates.ts +20 -41
  101. package/node_modules/@mrclrchtr/supi-tree-sitter/src/index.ts +2 -0
  102. package/node_modules/@mrclrchtr/supi-tree-sitter/src/language.ts +7 -0
  103. package/node_modules/@mrclrchtr/supi-tree-sitter/src/operation-support.ts +40 -0
  104. package/node_modules/@mrclrchtr/supi-tree-sitter/src/session/session.ts +9 -7
  105. package/node_modules/@mrclrchtr/supi-tree-sitter/src/tool/call-sites.ts +6 -1
  106. package/node_modules/@mrclrchtr/supi-tree-sitter/src/tool/callees.ts +76 -37
  107. package/node_modules/yaml/LICENSE +13 -0
  108. package/node_modules/yaml/README.md +172 -0
  109. package/node_modules/yaml/bin.mjs +11 -0
  110. package/node_modules/yaml/browser/dist/compose/compose-collection.js +88 -0
  111. package/node_modules/yaml/browser/dist/compose/compose-doc.js +43 -0
  112. package/node_modules/yaml/browser/dist/compose/compose-node.js +109 -0
  113. package/node_modules/yaml/browser/dist/compose/compose-scalar.js +86 -0
  114. package/node_modules/yaml/browser/dist/compose/composer.js +219 -0
  115. package/node_modules/yaml/browser/dist/compose/resolve-block-map.js +115 -0
  116. package/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +198 -0
  117. package/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +49 -0
  118. package/node_modules/yaml/browser/dist/compose/resolve-end.js +37 -0
  119. package/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +207 -0
  120. package/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +225 -0
  121. package/node_modules/yaml/browser/dist/compose/resolve-props.js +146 -0
  122. package/node_modules/yaml/browser/dist/compose/util-contains-newline.js +34 -0
  123. package/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +26 -0
  124. package/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +15 -0
  125. package/node_modules/yaml/browser/dist/compose/util-map-includes.js +13 -0
  126. package/node_modules/yaml/browser/dist/doc/Document.js +335 -0
  127. package/node_modules/yaml/browser/dist/doc/anchors.js +71 -0
  128. package/node_modules/yaml/browser/dist/doc/applyReviver.js +55 -0
  129. package/node_modules/yaml/browser/dist/doc/createNode.js +88 -0
  130. package/node_modules/yaml/browser/dist/doc/directives.js +176 -0
  131. package/node_modules/yaml/browser/dist/errors.js +57 -0
  132. package/node_modules/yaml/browser/dist/index.js +17 -0
  133. package/node_modules/yaml/browser/dist/log.js +11 -0
  134. package/node_modules/yaml/browser/dist/nodes/Alias.js +116 -0
  135. package/node_modules/yaml/browser/dist/nodes/Collection.js +147 -0
  136. package/node_modules/yaml/browser/dist/nodes/Node.js +38 -0
  137. package/node_modules/yaml/browser/dist/nodes/Pair.js +36 -0
  138. package/node_modules/yaml/browser/dist/nodes/Scalar.js +24 -0
  139. package/node_modules/yaml/browser/dist/nodes/YAMLMap.js +144 -0
  140. package/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +113 -0
  141. package/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +63 -0
  142. package/node_modules/yaml/browser/dist/nodes/identity.js +36 -0
  143. package/node_modules/yaml/browser/dist/nodes/toJS.js +37 -0
  144. package/node_modules/yaml/browser/dist/parse/cst-scalar.js +214 -0
  145. package/node_modules/yaml/browser/dist/parse/cst-stringify.js +61 -0
  146. package/node_modules/yaml/browser/dist/parse/cst-visit.js +97 -0
  147. package/node_modules/yaml/browser/dist/parse/cst.js +98 -0
  148. package/node_modules/yaml/browser/dist/parse/lexer.js +721 -0
  149. package/node_modules/yaml/browser/dist/parse/line-counter.js +39 -0
  150. package/node_modules/yaml/browser/dist/parse/parser.js +975 -0
  151. package/node_modules/yaml/browser/dist/public-api.js +102 -0
  152. package/node_modules/yaml/browser/dist/schema/Schema.js +37 -0
  153. package/node_modules/yaml/browser/dist/schema/common/map.js +17 -0
  154. package/node_modules/yaml/browser/dist/schema/common/null.js +15 -0
  155. package/node_modules/yaml/browser/dist/schema/common/seq.js +17 -0
  156. package/node_modules/yaml/browser/dist/schema/common/string.js +14 -0
  157. package/node_modules/yaml/browser/dist/schema/core/bool.js +19 -0
  158. package/node_modules/yaml/browser/dist/schema/core/float.js +43 -0
  159. package/node_modules/yaml/browser/dist/schema/core/int.js +38 -0
  160. package/node_modules/yaml/browser/dist/schema/core/schema.js +23 -0
  161. package/node_modules/yaml/browser/dist/schema/json/schema.js +62 -0
  162. package/node_modules/yaml/browser/dist/schema/tags.js +96 -0
  163. package/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +58 -0
  164. package/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +26 -0
  165. package/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +46 -0
  166. package/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +71 -0
  167. package/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +67 -0
  168. package/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +74 -0
  169. package/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +78 -0
  170. package/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +39 -0
  171. package/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +93 -0
  172. package/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +101 -0
  173. package/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +146 -0
  174. package/node_modules/yaml/browser/dist/stringify/stringify.js +129 -0
  175. package/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +153 -0
  176. package/node_modules/yaml/browser/dist/stringify/stringifyComment.js +20 -0
  177. package/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +85 -0
  178. package/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +25 -0
  179. package/node_modules/yaml/browser/dist/stringify/stringifyPair.js +150 -0
  180. package/node_modules/yaml/browser/dist/stringify/stringifyString.js +336 -0
  181. package/node_modules/yaml/browser/dist/util.js +11 -0
  182. package/node_modules/yaml/browser/dist/visit.js +233 -0
  183. package/node_modules/yaml/browser/index.js +5 -0
  184. package/node_modules/yaml/browser/package.json +3 -0
  185. package/node_modules/yaml/dist/cli.d.ts +8 -0
  186. package/node_modules/yaml/dist/cli.mjs +201 -0
  187. package/node_modules/yaml/dist/compose/compose-collection.d.ts +11 -0
  188. package/node_modules/yaml/dist/compose/compose-collection.js +90 -0
  189. package/node_modules/yaml/dist/compose/compose-doc.d.ts +7 -0
  190. package/node_modules/yaml/dist/compose/compose-doc.js +45 -0
  191. package/node_modules/yaml/dist/compose/compose-node.d.ts +29 -0
  192. package/node_modules/yaml/dist/compose/compose-node.js +112 -0
  193. package/node_modules/yaml/dist/compose/compose-scalar.d.ts +5 -0
  194. package/node_modules/yaml/dist/compose/compose-scalar.js +88 -0
  195. package/node_modules/yaml/dist/compose/composer.d.ts +63 -0
  196. package/node_modules/yaml/dist/compose/composer.js +224 -0
  197. package/node_modules/yaml/dist/compose/resolve-block-map.d.ts +6 -0
  198. package/node_modules/yaml/dist/compose/resolve-block-map.js +117 -0
  199. package/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +11 -0
  200. package/node_modules/yaml/dist/compose/resolve-block-scalar.js +200 -0
  201. package/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +6 -0
  202. package/node_modules/yaml/dist/compose/resolve-block-seq.js +51 -0
  203. package/node_modules/yaml/dist/compose/resolve-end.d.ts +6 -0
  204. package/node_modules/yaml/dist/compose/resolve-end.js +39 -0
  205. package/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +7 -0
  206. package/node_modules/yaml/dist/compose/resolve-flow-collection.js +209 -0
  207. package/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +10 -0
  208. package/node_modules/yaml/dist/compose/resolve-flow-scalar.js +227 -0
  209. package/node_modules/yaml/dist/compose/resolve-props.d.ts +23 -0
  210. package/node_modules/yaml/dist/compose/resolve-props.js +148 -0
  211. package/node_modules/yaml/dist/compose/util-contains-newline.d.ts +2 -0
  212. package/node_modules/yaml/dist/compose/util-contains-newline.js +36 -0
  213. package/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +2 -0
  214. package/node_modules/yaml/dist/compose/util-empty-scalar-position.js +28 -0
  215. package/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +3 -0
  216. package/node_modules/yaml/dist/compose/util-flow-indent-check.js +17 -0
  217. package/node_modules/yaml/dist/compose/util-map-includes.d.ts +4 -0
  218. package/node_modules/yaml/dist/compose/util-map-includes.js +15 -0
  219. package/node_modules/yaml/dist/doc/Document.d.ts +141 -0
  220. package/node_modules/yaml/dist/doc/Document.js +337 -0
  221. package/node_modules/yaml/dist/doc/anchors.d.ts +24 -0
  222. package/node_modules/yaml/dist/doc/anchors.js +76 -0
  223. package/node_modules/yaml/dist/doc/applyReviver.d.ts +9 -0
  224. package/node_modules/yaml/dist/doc/applyReviver.js +57 -0
  225. package/node_modules/yaml/dist/doc/createNode.d.ts +17 -0
  226. package/node_modules/yaml/dist/doc/createNode.js +90 -0
  227. package/node_modules/yaml/dist/doc/directives.d.ts +49 -0
  228. package/node_modules/yaml/dist/doc/directives.js +178 -0
  229. package/node_modules/yaml/dist/errors.d.ts +21 -0
  230. package/node_modules/yaml/dist/errors.js +62 -0
  231. package/node_modules/yaml/dist/index.d.ts +25 -0
  232. package/node_modules/yaml/dist/index.js +50 -0
  233. package/node_modules/yaml/dist/log.d.ts +3 -0
  234. package/node_modules/yaml/dist/log.js +19 -0
  235. package/node_modules/yaml/dist/nodes/Alias.d.ts +29 -0
  236. package/node_modules/yaml/dist/nodes/Alias.js +118 -0
  237. package/node_modules/yaml/dist/nodes/Collection.d.ts +73 -0
  238. package/node_modules/yaml/dist/nodes/Collection.js +151 -0
  239. package/node_modules/yaml/dist/nodes/Node.d.ts +53 -0
  240. package/node_modules/yaml/dist/nodes/Node.js +40 -0
  241. package/node_modules/yaml/dist/nodes/Pair.d.ts +22 -0
  242. package/node_modules/yaml/dist/nodes/Pair.js +39 -0
  243. package/node_modules/yaml/dist/nodes/Scalar.d.ts +47 -0
  244. package/node_modules/yaml/dist/nodes/Scalar.js +27 -0
  245. package/node_modules/yaml/dist/nodes/YAMLMap.d.ts +53 -0
  246. package/node_modules/yaml/dist/nodes/YAMLMap.js +147 -0
  247. package/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +60 -0
  248. package/node_modules/yaml/dist/nodes/YAMLSeq.js +115 -0
  249. package/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +4 -0
  250. package/node_modules/yaml/dist/nodes/addPairToJSMap.js +65 -0
  251. package/node_modules/yaml/dist/nodes/identity.d.ts +23 -0
  252. package/node_modules/yaml/dist/nodes/identity.js +53 -0
  253. package/node_modules/yaml/dist/nodes/toJS.d.ts +29 -0
  254. package/node_modules/yaml/dist/nodes/toJS.js +39 -0
  255. package/node_modules/yaml/dist/options.d.ts +350 -0
  256. package/node_modules/yaml/dist/parse/cst-scalar.d.ts +64 -0
  257. package/node_modules/yaml/dist/parse/cst-scalar.js +218 -0
  258. package/node_modules/yaml/dist/parse/cst-stringify.d.ts +8 -0
  259. package/node_modules/yaml/dist/parse/cst-stringify.js +63 -0
  260. package/node_modules/yaml/dist/parse/cst-visit.d.ts +39 -0
  261. package/node_modules/yaml/dist/parse/cst-visit.js +99 -0
  262. package/node_modules/yaml/dist/parse/cst.d.ts +109 -0
  263. package/node_modules/yaml/dist/parse/cst.js +112 -0
  264. package/node_modules/yaml/dist/parse/lexer.d.ts +87 -0
  265. package/node_modules/yaml/dist/parse/lexer.js +723 -0
  266. package/node_modules/yaml/dist/parse/line-counter.d.ts +22 -0
  267. package/node_modules/yaml/dist/parse/line-counter.js +41 -0
  268. package/node_modules/yaml/dist/parse/parser.d.ts +84 -0
  269. package/node_modules/yaml/dist/parse/parser.js +980 -0
  270. package/node_modules/yaml/dist/public-api.d.ts +44 -0
  271. package/node_modules/yaml/dist/public-api.js +107 -0
  272. package/node_modules/yaml/dist/schema/Schema.d.ts +17 -0
  273. package/node_modules/yaml/dist/schema/Schema.js +39 -0
  274. package/node_modules/yaml/dist/schema/common/map.d.ts +2 -0
  275. package/node_modules/yaml/dist/schema/common/map.js +19 -0
  276. package/node_modules/yaml/dist/schema/common/null.d.ts +4 -0
  277. package/node_modules/yaml/dist/schema/common/null.js +17 -0
  278. package/node_modules/yaml/dist/schema/common/seq.d.ts +2 -0
  279. package/node_modules/yaml/dist/schema/common/seq.js +19 -0
  280. package/node_modules/yaml/dist/schema/common/string.d.ts +2 -0
  281. package/node_modules/yaml/dist/schema/common/string.js +16 -0
  282. package/node_modules/yaml/dist/schema/core/bool.d.ts +4 -0
  283. package/node_modules/yaml/dist/schema/core/bool.js +21 -0
  284. package/node_modules/yaml/dist/schema/core/float.d.ts +4 -0
  285. package/node_modules/yaml/dist/schema/core/float.js +47 -0
  286. package/node_modules/yaml/dist/schema/core/int.d.ts +4 -0
  287. package/node_modules/yaml/dist/schema/core/int.js +42 -0
  288. package/node_modules/yaml/dist/schema/core/schema.d.ts +1 -0
  289. package/node_modules/yaml/dist/schema/core/schema.js +25 -0
  290. package/node_modules/yaml/dist/schema/json/schema.d.ts +2 -0
  291. package/node_modules/yaml/dist/schema/json/schema.js +64 -0
  292. package/node_modules/yaml/dist/schema/json-schema.d.ts +69 -0
  293. package/node_modules/yaml/dist/schema/tags.d.ts +48 -0
  294. package/node_modules/yaml/dist/schema/tags.js +99 -0
  295. package/node_modules/yaml/dist/schema/types.d.ts +92 -0
  296. package/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +2 -0
  297. package/node_modules/yaml/dist/schema/yaml-1.1/binary.js +70 -0
  298. package/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +7 -0
  299. package/node_modules/yaml/dist/schema/yaml-1.1/bool.js +29 -0
  300. package/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +4 -0
  301. package/node_modules/yaml/dist/schema/yaml-1.1/float.js +50 -0
  302. package/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +5 -0
  303. package/node_modules/yaml/dist/schema/yaml-1.1/int.js +76 -0
  304. package/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts +9 -0
  305. package/node_modules/yaml/dist/schema/yaml-1.1/merge.js +71 -0
  306. package/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +22 -0
  307. package/node_modules/yaml/dist/schema/yaml-1.1/omap.js +77 -0
  308. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +10 -0
  309. package/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +82 -0
  310. package/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +1 -0
  311. package/node_modules/yaml/dist/schema/yaml-1.1/schema.js +41 -0
  312. package/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +28 -0
  313. package/node_modules/yaml/dist/schema/yaml-1.1/set.js +96 -0
  314. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +6 -0
  315. package/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +105 -0
  316. package/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +34 -0
  317. package/node_modules/yaml/dist/stringify/foldFlowLines.js +151 -0
  318. package/node_modules/yaml/dist/stringify/stringify.d.ts +21 -0
  319. package/node_modules/yaml/dist/stringify/stringify.js +132 -0
  320. package/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +17 -0
  321. package/node_modules/yaml/dist/stringify/stringifyCollection.js +155 -0
  322. package/node_modules/yaml/dist/stringify/stringifyComment.d.ts +10 -0
  323. package/node_modules/yaml/dist/stringify/stringifyComment.js +24 -0
  324. package/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +4 -0
  325. package/node_modules/yaml/dist/stringify/stringifyDocument.js +87 -0
  326. package/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +2 -0
  327. package/node_modules/yaml/dist/stringify/stringifyNumber.js +27 -0
  328. package/node_modules/yaml/dist/stringify/stringifyPair.d.ts +3 -0
  329. package/node_modules/yaml/dist/stringify/stringifyPair.js +152 -0
  330. package/node_modules/yaml/dist/stringify/stringifyString.d.ts +9 -0
  331. package/node_modules/yaml/dist/stringify/stringifyString.js +338 -0
  332. package/node_modules/yaml/dist/test-events.d.ts +4 -0
  333. package/node_modules/yaml/dist/test-events.js +134 -0
  334. package/node_modules/yaml/dist/util.d.ts +16 -0
  335. package/node_modules/yaml/dist/util.js +28 -0
  336. package/node_modules/yaml/dist/visit.d.ts +102 -0
  337. package/node_modules/yaml/dist/visit.js +236 -0
  338. package/node_modules/yaml/package.json +97 -0
  339. package/node_modules/yaml/util.js +2 -0
  340. package/package.json +9 -8
  341. package/src/analysis/architecture/discovery.ts +213 -227
  342. package/src/analysis/architecture/manifest.ts +147 -0
  343. package/src/analysis/architecture/model.ts +119 -52
  344. package/src/analysis/architecture/workspace-config.ts +229 -0
  345. package/src/analysis/{coverage/coverage-warnings.ts → capability/capability-warnings.ts} +41 -78
  346. package/src/analysis/evidence.ts +22 -5
  347. package/src/analysis/health/diagnostics.ts +183 -0
  348. package/src/analysis/health/recovery.ts +39 -0
  349. package/src/analysis/health/signals.ts +20 -0
  350. package/src/analysis/instruction-files.ts +60 -48
  351. package/src/analysis/provider.ts +31 -12
  352. package/src/analysis/readiness.ts +29 -9
  353. package/src/{tool/refactor-apply → analysis/refactor}/apply.ts +120 -26
  354. package/src/analysis/refactor/position.ts +6 -0
  355. package/src/analysis/refactor/safety.ts +4 -11
  356. package/src/analysis/references/locations.ts +20 -0
  357. package/src/analysis/references/semantic-refs.ts +21 -11
  358. package/src/{tool/graph → analysis/relations}/implementations.ts +27 -23
  359. package/src/analysis/relations/provider-locations.ts +179 -0
  360. package/src/{tool/graph → analysis/relations}/references.ts +25 -21
  361. package/src/{tool/graph → analysis/relations}/types.ts +4 -19
  362. package/src/analysis/search/ast-scan.ts +376 -0
  363. package/src/analysis/search/call-name.ts +68 -0
  364. package/src/analysis/search/deadline.ts +84 -0
  365. package/src/analysis/search/paths.ts +88 -0
  366. package/src/analysis/search/pattern.ts +290 -246
  367. package/src/analysis/target/anchored.ts +72 -27
  368. package/src/analysis/target/file.ts +292 -132
  369. package/src/analysis/target/identity.ts +237 -0
  370. package/src/analysis/target/symbol.ts +169 -86
  371. package/src/analysis/target/types.ts +36 -4
  372. package/src/api.ts +21 -4
  373. package/src/app/app.ts +53 -46
  374. package/src/extension.ts +68 -66
  375. package/src/session/capability-adapter.ts +26 -118
  376. package/src/session/find-types.ts +38 -0
  377. package/src/session/find-workflow.ts +141 -0
  378. package/src/session/graph/collect.ts +181 -0
  379. package/src/session/graph-types.ts +77 -0
  380. package/src/session/graph-workflow.ts +152 -0
  381. package/src/session/health-types.ts +134 -0
  382. package/src/session/health-workflow.ts +341 -0
  383. package/src/session/input/common.ts +216 -0
  384. package/src/session/input/health-refactor.ts +169 -0
  385. package/src/session/input/workflows.ts +211 -0
  386. package/src/session/inspect/collect.ts +304 -0
  387. package/src/session/inspect/file-point.ts +69 -0
  388. package/src/session/inspect-types.ts +78 -0
  389. package/src/session/inspect-workflow.ts +157 -0
  390. package/src/session/orientation/collect.ts +718 -0
  391. package/src/session/orientation/context-facts.ts +319 -0
  392. package/src/session/orientation/context-sections.ts +352 -0
  393. package/src/session/orientation-types.ts +97 -0
  394. package/src/session/orientation-workflow.ts +307 -0
  395. package/src/session/refactor-plans.ts +1 -1
  396. package/src/session/refactor-types.ts +51 -0
  397. package/src/session/refactor-workflow.ts +263 -0
  398. package/src/session/session.ts +263 -234
  399. package/src/session/target-candidates.ts +60 -0
  400. package/src/session/target-input.ts +98 -0
  401. package/src/session/target-store.ts +132 -29
  402. package/src/session/target-workflow.ts +254 -302
  403. package/src/session/workflow-control.ts +35 -0
  404. package/src/substrate/lsp/lifecycle.ts +9 -22
  405. package/src/substrate/lsp/maintenance.ts +75 -0
  406. package/src/substrate/lsp/recovery.ts +41 -25
  407. package/src/substrate/lsp/settings.ts +1 -10
  408. package/src/substrate/lsp/state.ts +2 -13
  409. package/src/tool/find/ast-kinds.ts +35 -0
  410. package/src/tool/find/execute.ts +22 -113
  411. package/src/tool/find/markdown.ts +85 -221
  412. package/src/tool/find/modes.ts +5 -0
  413. package/src/tool/find/render.ts +57 -0
  414. package/src/tool/find/tui.ts +1 -1
  415. package/src/tool/graph/calls-md.ts +17 -30
  416. package/src/tool/graph/execute.ts +42 -103
  417. package/src/tool/graph/implementations-md.ts +32 -54
  418. package/src/tool/graph/markdown-base.ts +73 -196
  419. package/src/tool/graph/provider-location-md.ts +9 -0
  420. package/src/tool/graph/references-md.ts +34 -27
  421. package/src/tool/graph/tui.ts +8 -26
  422. package/src/tool/guidance.ts +31 -48
  423. package/src/tool/health/execute.ts +15 -56
  424. package/src/tool/health/markdown.ts +199 -148
  425. package/src/tool/health/semantic-state.ts +24 -0
  426. package/src/tool/health/tui.ts +262 -36
  427. package/src/tool/infra/error-results.ts +0 -2
  428. package/src/tool/infra/progress.ts +2 -2
  429. package/src/tool/infra/workflow-control.ts +11 -0
  430. package/src/tool/inspect/execute.ts +23 -63
  431. package/src/tool/inspect/markdown.ts +114 -95
  432. package/src/tool/inspect/tui.ts +7 -7
  433. package/src/tool/orientation/execute.ts +50 -37
  434. package/src/tool/orientation/markdown.ts +26 -31
  435. package/src/tool/orientation/tui.ts +41 -39
  436. package/src/tool/refactor-apply/execute.ts +23 -9
  437. package/src/tool/refactor-apply/tui.ts +7 -3
  438. package/src/tool/refactor-plan/execute.ts +44 -61
  439. package/src/tool/refactor-plan/markdown.ts +33 -56
  440. package/src/tool/refactor-plan/tui.ts +10 -11
  441. package/src/tool/register.ts +6 -5
  442. package/src/tool/resolve/execute.ts +23 -69
  443. package/src/tool/resolve/markdown.ts +125 -114
  444. package/src/tool/resolve/tui.ts +11 -9
  445. package/src/tool/result/assembly.ts +125 -0
  446. package/src/tool/result/errors.ts +20 -34
  447. package/src/tool/result/find.ts +107 -21
  448. package/src/tool/result/graph.ts +163 -64
  449. package/src/tool/result/health.ts +170 -73
  450. package/src/tool/result/inspect.ts +183 -41
  451. package/src/tool/result/orientation.ts +118 -16
  452. package/src/tool/result/refactor.ts +101 -21
  453. package/src/tool/result/resolve.ts +243 -80
  454. package/src/tool/result/types.ts +100 -56
  455. package/src/tool/schemas.ts +160 -231
  456. package/src/tool/specs.ts +57 -168
  457. package/src/types/details.ts +2 -4
  458. package/src/types/execution.ts +6 -15
  459. package/src/types/index.ts +2 -4
  460. package/src/types/tool-names.ts +1 -2
  461. package/src/ui/footer.ts +3 -3
  462. package/src/ui/markdown/gather.ts +17 -65
  463. package/src/ui/markdown/overview-data.ts +143 -21
  464. package/src/ui/markdown/overview.ts +27 -8
  465. package/src/ui/markdown/types.ts +12 -16
  466. package/src/ui/status-command.ts +39 -31
  467. package/src/ui/status-overlay.ts +23 -15
  468. package/src/ui/tui/common.ts +121 -74
  469. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/abort-utils.ts +0 -31
  470. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +0 -11
  471. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/types.ts +0 -2
  472. package/node_modules/@mrclrchtr/supi-core/src/abort-utils.ts +0 -31
  473. package/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +0 -11
  474. package/node_modules/@mrclrchtr/supi-core/src/types.ts +0 -2
  475. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/abort-utils.ts +0 -31
  476. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +0 -11
  477. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/types.ts +0 -2
  478. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/abort-utils.ts +0 -31
  479. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +0 -11
  480. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/types.ts +0 -2
  481. package/node_modules/@mrclrchtr/supi-lsp/src/diagnostics/diagnostic-augmentation.ts +0 -82
  482. package/node_modules/@mrclrchtr/supi-lsp/src/diagnostics/diagnostic-context.ts +0 -116
  483. package/node_modules/@mrclrchtr/supi-lsp/src/diagnostics/diagnostic-display.ts +0 -69
  484. package/node_modules/@mrclrchtr/supi-lsp/src/manager/capability-index.ts +0 -24
  485. package/node_modules/@mrclrchtr/supi-lsp/src/manager/client-pool.ts +0 -33
  486. package/node_modules/@mrclrchtr/supi-lsp/src/manager/diagnostic-store.ts +0 -51
  487. package/node_modules/@mrclrchtr/supi-lsp/src/manager/manager-stale-resync.ts +0 -47
  488. package/node_modules/@mrclrchtr/supi-lsp/src/manager/recovery-coordinator.ts +0 -37
  489. package/node_modules/@mrclrchtr/supi-lsp/src/manager/workspace-router.ts +0 -44
  490. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/abort-utils.ts +0 -31
  491. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +0 -11
  492. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/types.ts +0 -2
  493. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/abort-utils.ts +0 -31
  494. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +0 -11
  495. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/types.ts +0 -2
  496. package/src/analysis/brief/directory.ts +0 -324
  497. package/src/analysis/brief/enrich.ts +0 -157
  498. package/src/analysis/brief/file.ts +0 -84
  499. package/src/analysis/brief/inventory.ts +0 -177
  500. package/src/analysis/brief/main.ts +0 -176
  501. package/src/analysis/brief/models.ts +0 -75
  502. package/src/analysis/brief/public-brief.ts +0 -179
  503. package/src/analysis/brief/summarize.ts +0 -208
  504. package/src/analysis/brief/types.ts +0 -27
  505. package/src/analysis/brief/use-case.ts +0 -264
  506. package/src/analysis/search/ripgrep.ts +0 -558
  507. package/src/analysis/signals/git.ts +0 -89
  508. package/src/analysis/signals/project.ts +0 -189
  509. package/src/analysis/target/bridge.ts +0 -152
  510. package/src/analysis/target/file-resolution.ts +0 -125
  511. package/src/analysis/target/planner.ts +0 -92
  512. package/src/analysis/target/query.ts +0 -74
  513. package/src/analysis/target/resolve-common.ts +0 -115
  514. package/src/analysis/target/service.ts +0 -229
  515. package/src/analysis/tests/likely-tests.ts +0 -174
  516. package/src/analysis/tests/test-discovery.ts +0 -540
  517. package/src/analysis/tests/vitest.ts +0 -87
  518. package/src/app/manager.ts +0 -65
  519. package/src/substrate/lsp/diagnostic-injection.ts +0 -203
  520. package/src/substrate/lsp/overrides.ts +0 -132
  521. package/src/tool/find/orchestrate.ts +0 -317
  522. package/src/tool/find/semantic-search.ts +0 -128
  523. package/src/tool/graph/collect-relation.ts +0 -372
  524. package/src/tool/graph/orchestrate.ts +0 -259
  525. package/src/tool/health/orchestrate.ts +0 -151
  526. package/src/tool/health/sections/diagnostics.ts +0 -182
  527. package/src/tool/health/sections/recovery.ts +0 -89
  528. package/src/tool/health/sections/signals.ts +0 -89
  529. package/src/tool/impact/analysis.ts +0 -220
  530. package/src/tool/impact/change-set-impact.ts +0 -152
  531. package/src/tool/impact/execute.ts +0 -125
  532. package/src/tool/impact/file-level-impact.ts +0 -82
  533. package/src/tool/impact/markdown.ts +0 -283
  534. package/src/tool/impact/orchestrate.ts +0 -97
  535. package/src/tool/impact/result.ts +0 -2
  536. package/src/tool/impact/single-impact.ts +0 -90
  537. package/src/tool/impact/tui.ts +0 -39
  538. package/src/tool/impact/types.ts +0 -34
  539. package/src/tool/infra/cross-field.ts +0 -335
  540. package/src/tool/infra/pipeline.ts +0 -334
  541. package/src/tool/infra/readiness-message.ts +0 -5
  542. package/src/tool/inspect/orchestrate.ts +0 -154
  543. package/src/tool/orientation/deps.ts +0 -63
  544. package/src/tool/orientation/mode.ts +0 -139
  545. package/src/tool/orientation/orchestrate.ts +0 -475
  546. package/src/tool/orientation/precise-target.ts +0 -253
  547. package/src/tool/params.ts +0 -15
  548. package/src/tool/refactor-apply/markdown.ts +0 -118
  549. package/src/tool/refactor-apply/orchestrate.ts +0 -84
  550. package/src/tool/refactor-plan/orchestrate.ts +0 -355
  551. package/src/tool/resolve/orchestrate.ts +0 -38
  552. package/src/tool/result/impact.ts +0 -50
  553. package/src/ui/markdown/brief.ts +0 -218
  554. package/src/ui/message-renderer.ts +0 -121
  555. package/src/ui/tui/index.ts +0 -37
  556. /package/src/{tool/graph → analysis/relations}/callees.ts +0 -0
@@ -0,0 +1,35 @@
1
+ /** Execution controls shared by Workspace code-intelligence session workflows. */
2
+
3
+ /** Stable progress event emitted by a session-owned workflow. */
4
+ export interface WorkflowProgressEvent {
5
+ readonly intent:
6
+ | "resolve"
7
+ | "inspect"
8
+ | "orientation"
9
+ | "graph"
10
+ | "find"
11
+ | "health"
12
+ | "refactor-plan"
13
+ | "refactor-apply";
14
+ readonly phase: string;
15
+ readonly message: string;
16
+ }
17
+
18
+ /** Per-call cancellation and progress controls. */
19
+ export interface WorkflowControl {
20
+ readonly signal?: AbortSignal;
21
+ readonly progress?: (event: WorkflowProgressEvent) => void;
22
+ }
23
+
24
+ /** Emit one stable progress event when a sink is present. */
25
+ export function reportProgress(
26
+ control: WorkflowControl | undefined,
27
+ event: WorkflowProgressEvent,
28
+ ): void {
29
+ control?.progress?.(Object.freeze(event));
30
+ }
31
+
32
+ /** Throw the platform-standard cancellation reason before starting a phase. */
33
+ export function throwIfAborted(control: WorkflowControl | undefined): void {
34
+ control?.signal?.throwIfAborted();
35
+ }
@@ -5,11 +5,7 @@
5
5
 
6
6
  import type { ExtensionAPI, ExtensionContext } from "@earendil-works/pi-coding-agent";
7
7
  import { getDefaultWorkspaceRuntime } from "@mrclrchtr/supi-code-runtime/api";
8
- import {
9
- LspRuntimeController,
10
- loadLspSettings,
11
- scanWorkspaceSentinels,
12
- } from "@mrclrchtr/supi-lsp/api";
8
+ import { LspRuntimeController, scanWorkspaceSentinels } from "@mrclrchtr/supi-lsp/api";
13
9
  import { unregisterLspFooterContribution } from "../../ui/footer.ts";
14
10
  import type { LspAdapterState } from "./state.ts";
15
11
 
@@ -22,14 +18,16 @@ export function registerLspSessionLifecycle(pi: ExtensionAPI, state: LspAdapterS
22
18
  await state.controller.shutdown();
23
19
  state.controller = null;
24
20
  }
25
- resetDiagnosticContext(state);
26
21
  state.lspActive = false;
27
22
 
28
- const lspSettings = loadLspSettings(cwd);
29
- // Always-on policy: `lsp.enabled` is deprecated and ignored. Keep reading
30
- // settings for severity/exclude data, but let LspRuntimeController decide
31
- // startup and per-language disables.
32
- state.inlineSeverity = lspSettings.severity;
23
+ // Project-local LSP configuration may define custom commands; defer
24
+ // until the project is trusted so an untrusted repository cannot control
25
+ // spawned processes.
26
+ if (!ctx.isProjectTrusted()) {
27
+ state.controller = null;
28
+ state.lspActive = false;
29
+ return;
30
+ }
33
31
 
34
32
  const controller = new LspRuntimeController(cwd, runtime);
35
33
  const result = await controller.start();
@@ -40,7 +38,6 @@ export function registerLspSessionLifecycle(pi: ExtensionAPI, state: LspAdapterS
40
38
  state.sentinelSnapshot = scanWorkspaceSentinels(cwd);
41
39
  } else {
42
40
  state.controller = null;
43
- resetDiagnosticContext(state);
44
41
  state.lspActive = false;
45
42
  }
46
43
  });
@@ -50,17 +47,7 @@ export function registerLspSessionLifecycle(pi: ExtensionAPI, state: LspAdapterS
50
47
  await state.controller.shutdown();
51
48
  state.controller = null;
52
49
  }
53
- resetDiagnosticContext(state);
54
50
  state.lspActive = false;
55
51
  unregisterLspFooterContribution();
56
52
  });
57
53
  }
58
-
59
- /** Clear diagnostic context fields that could leak across sessions. */
60
- function resetDiagnosticContext(state: LspAdapterState): void {
61
- state.currentContextToken = null;
62
- state.lastDiagnosticsFingerprint = null;
63
- state.staleSuspected = false;
64
- state.lastWorkspaceChangeAt = 0;
65
- state.contextCounter = 0;
66
- }
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Runtime maintenance — sentinel-sync, stale-module resync, prune, and refresh.
3
+ *
4
+ * Extracted from the former diagnostic-injection.ts. These are non-presentational
5
+ * maintenance operations that keep LSP state fresh for explicit code_health and
6
+ * semantic tool queries.
7
+ */
8
+
9
+ import * as nodePath from "node:path";
10
+ import type { WorkspaceLspRuntime } from "@mrclrchtr/supi-lsp/api";
11
+ import {
12
+ clearTsconfigCache,
13
+ isLikelyStaleDiagnostic,
14
+ syncWorkspaceSentinelSnapshot,
15
+ } from "@mrclrchtr/supi-lsp/api";
16
+
17
+ /**
18
+ * Run sentinel-sync, stale-module resync, prune, and diagnostic refresh
19
+ * as a single maintenance pass. Call before explicit diagnostic queries
20
+ * (code_health with refresh:true) or semantic tool readiness checks.
21
+ */
22
+ export async function refreshLspMaintenance(
23
+ runtime: WorkspaceLspRuntime,
24
+ cwd: string,
25
+ sentinelSnapshot: Map<string, number>,
26
+ ): Promise<Map<string, number>> {
27
+ // Sentinel refresh: detect lockfile/tsconfig/d.ts changes from outside
28
+ // write/edit/code_refactor_apply.
29
+ const { snapshot, changes } = syncWorkspaceSentinelSnapshot(cwd, sentinelSnapshot);
30
+
31
+ if (changes.length > 0) {
32
+ clearTsconfigCache();
33
+ runtime.noteWorkspaceChanges(changes);
34
+ }
35
+
36
+ // Stale-module resync: force-reopen files with "Cannot find module" errors
37
+ await resyncStaleModuleFiles(runtime, cwd);
38
+
39
+ // Two-pass prune/refresh for diagnostics
40
+ runtime.pruneMissingFiles();
41
+ try {
42
+ await runtime.refreshOpenDiagnostics();
43
+ } catch {
44
+ /* best-effort */
45
+ }
46
+ runtime.pruneMissingFiles();
47
+
48
+ return snapshot;
49
+ }
50
+
51
+ /** Re-open files with stale module-resolution errors. */
52
+ async function resyncStaleModuleFiles(runtime: WorkspaceLspRuntime, cwd: string): Promise<void> {
53
+ const outstanding = runtime.getOutstandingDiagnostics(1);
54
+ const staleFiles: string[] = [];
55
+
56
+ for (const entry of outstanding) {
57
+ if (entry.diagnostics.some((d) => isLikelyStaleDiagnostic(d))) {
58
+ staleFiles.push(entry.file);
59
+ }
60
+ }
61
+
62
+ if (staleFiles.length === 0) return;
63
+
64
+ for (const file of staleFiles) {
65
+ const filePath = nodePath.resolve(cwd, file);
66
+ runtime.closeFile(filePath);
67
+ await runtime.trackFile(filePath);
68
+ }
69
+
70
+ try {
71
+ await runtime.refreshOpenDiagnostics({ quietMs: 300, maxWaitMs: 2000 });
72
+ } catch {
73
+ /* best-effort */
74
+ }
75
+ }
@@ -1,6 +1,8 @@
1
- // Workspace recovery handler — tool_result event that recovers LSP state after write/edit.
1
+ // Workspace recovery handler — tool_result event that recovers LSP state after
2
+ // file-mutating tool calls.
2
3
  //
3
- // Notifies the LSP manager about file changes so diagnostics stay fresh.
4
+ // Notifies the workspace LSP runtime about file changes so diagnostics stay fresh
5
+ // for explicit code_health and semantic tool queries.
4
6
 
5
7
  import * as nodePath from "node:path";
6
8
  import type {
@@ -8,40 +10,45 @@ import type {
8
10
  ExtensionContext,
9
11
  ToolResultEvent,
10
12
  } from "@earendil-works/pi-coding-agent";
13
+ import { fileToUri } from "@mrclrchtr/supi-core/path";
11
14
  import { clearTsconfigCache } from "@mrclrchtr/supi-lsp/api";
12
15
  import type { LspAdapterState } from "./state.ts";
13
16
 
17
+ /** Tool names whose successful results should trigger workspace change notifications. */
18
+ const MUTATING_TOOL_NAMES = new Set(["write", "edit", "code_refactor_apply"]);
19
+
14
20
  export function registerWorkspaceRecoveryHandler(pi: ExtensionAPI, state: LspAdapterState): void {
21
+ // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: handler branches per tool name; extracting helpers would add indirection
15
22
  pi.on("tool_result", async (event: ToolResultEvent, _ctx: ExtensionContext) => {
16
- const manager = state.controller?.manager;
17
- if (!manager || event.isError) return;
23
+ const runtime = state.controller?.workspaceRuntime;
24
+ if (!runtime || event.isError) return;
25
+ if (!MUTATING_TOOL_NAMES.has(event.toolName)) return;
18
26
 
19
- const filePath = getFilePathFromToolResult(event);
20
- if (!filePath) return;
27
+ const filePaths =
28
+ event.toolName === "code_refactor_apply"
29
+ ? getRefactorApplyPaths(event)
30
+ : [getFilePathFromToolResult(event)].filter((p): p is string => p !== null);
21
31
 
22
- // Normalize @-prefixed paths (pi's built-in file tool convention)
23
- const normalized = filePath.startsWith("@") ? filePath.slice(1) : filePath;
24
- const resolved = nodePath.resolve(state.controller?.cwd ?? "", normalized);
32
+ if (filePaths.length === 0) return;
25
33
 
26
- // Invalidate tsconfig cache when config files change
27
- const ext = nodePath.extname(resolved).toLowerCase();
28
- if (ext === ".json" || ext === ".jsonc") {
29
- clearTsconfigCache();
30
- }
34
+ const cwd = state.controller?.cwd ?? "";
35
+ for (const filePath of filePaths) {
36
+ // Normalize @-prefixed paths (pi's built-in file tool convention)
37
+ const normalized = filePath.startsWith("@") ? filePath.slice(1) : filePath;
38
+ const resolved = nodePath.resolve(cwd, normalized);
31
39
 
32
- manager.clearAllPullResultIds();
33
- manager.notifyWorkspaceFileChanges([{ uri: filePathToUri(resolved), type: 2 }]);
40
+ // Invalidate tsconfig cache when config files change
41
+ const ext = nodePath.extname(resolved).toLowerCase();
42
+ if (ext === ".json" || ext === ".jsonc") {
43
+ clearTsconfigCache();
44
+ }
34
45
 
35
- state.staleSuspected = true;
36
- state.lastDiagnosticsFingerprint = null;
37
- state.currentContextToken = null;
38
- state.lastWorkspaceChangeAt = Date.now();
46
+ runtime.noteWorkspaceChanges([{ uri: fileToUri(resolved), type: 2 }]);
47
+ }
39
48
  });
40
49
  }
41
50
 
42
51
  function getFilePathFromToolResult(event: ToolResultEvent): string | null {
43
- if (event.isError) return null;
44
- if (event.toolName !== "write" && event.toolName !== "edit") return null;
45
52
  const input = (event as { input?: Record<string, unknown> }).input;
46
53
  if (!input || typeof input !== "object") return null;
47
54
  const pathValue = input.path;
@@ -49,7 +56,16 @@ function getFilePathFromToolResult(event: ToolResultEvent): string | null {
49
56
  return pathValue;
50
57
  }
51
58
 
52
- function filePathToUri(filePath: string): string {
53
- const normalized = filePath.replace(/\\/g, "/");
54
- return `file://${normalized.startsWith("/") ? "" : "/"}${normalized}`;
59
+ /** Extract changed file paths emitted by a successful code_refactor_apply result. */
60
+ function getRefactorApplyPaths(event: ToolResultEvent): string[] {
61
+ const details = (event as { details?: unknown }).details as
62
+ | { data?: { changedFiles?: unknown } }
63
+ | undefined;
64
+ const changedFiles = details?.data?.changedFiles;
65
+ if (!Array.isArray(changedFiles)) return [];
66
+ return [
67
+ ...new Set(
68
+ changedFiles.filter((file): file is string => typeof file === "string" && file.length > 0),
69
+ ),
70
+ ];
55
71
  }
@@ -4,8 +4,7 @@
4
4
  // are deprecated and ignored. Per-language disable via
5
5
  // `lsp.servers.<language>.enabled: false` is the only supported opt-out.
6
6
  //
7
- // Uses the declarative settings schema with:
8
- // - severity: number with labeled values
7
+ // Registered fields:
9
8
  // - exclude: stringList
10
9
  // - disabled_servers: custom submenu that writes per-language disable config
11
10
 
@@ -23,7 +22,6 @@ import { type LspSettings, loadConfig } from "@mrclrchtr/supi-lsp/api";
23
22
 
24
23
  const LSP_DEFAULTS: LspSettings = {
25
24
  enabled: true,
26
- severity: 1,
27
25
  active: [],
28
26
  exclude: [],
29
27
  };
@@ -138,13 +136,6 @@ export function registerLspSettings(pi: ExtensionAPI): void {
138
136
  section: "lsp",
139
137
  defaults: LSP_DEFAULTS,
140
138
  fields: [
141
- {
142
- kind: "number" as const,
143
- key: "severity",
144
- label: "Inline Severity",
145
- description: "Minimum diagnostic severity to show inline (1=errors, 4=hints)",
146
- values: ["1", "2", "3", "4"],
147
- },
148
139
  {
149
140
  kind: "stringList" as const,
150
141
  key: "exclude",
@@ -15,32 +15,21 @@ export interface LspInspectorState {
15
15
  * In-memory state for the umbrella LSP adapter.
16
16
  *
17
17
  * Wraps the LspRuntimeController and tracks session-level state
18
- * for diagnostic injection, stale detection, and UI updates.
18
+ * for sentinel change detection and UI updates.
19
19
  */
20
20
  export interface LspAdapterState {
21
21
  controller: LspRuntimeController | null;
22
- inlineSeverity: number;
23
22
  inspector: LspInspectorState;
24
- lastDiagnosticsFingerprint: string | null;
25
- currentContextToken: string | null;
26
- contextCounter: number;
27
23
  lspActive: boolean;
28
- staleSuspected: boolean;
29
- lastWorkspaceChangeAt: number;
24
+ /** Snapshot of workspace sentinel files (package.json, tsconfig, lockfiles) for change detection. */
30
25
  sentinelSnapshot: Map<string, number>;
31
26
  }
32
27
 
33
28
  export function createLspAdapterState(): LspAdapterState {
34
29
  return {
35
30
  controller: null,
36
- inlineSeverity: 1,
37
31
  inspector: { handle: null, close: null },
38
- lastDiagnosticsFingerprint: null,
39
- currentContextToken: null,
40
- contextCounter: 0,
41
32
  lspActive: false,
42
- staleSuspected: false,
43
- lastWorkspaceChangeAt: 0,
44
33
  sentinelSnapshot: new Map(),
45
34
  };
46
35
  }
@@ -0,0 +1,35 @@
1
+ /** Canonical public AST-kind vocabulary for code_find. */
2
+ export const CODE_FIND_AST_KINDS = [
3
+ "definition",
4
+ "import",
5
+ "export",
6
+ "call",
7
+ "type",
8
+ "interface",
9
+ "class",
10
+ "method",
11
+ "enum",
12
+ ] as const;
13
+
14
+ /** One supported code_find AST search kind. */
15
+ export type CodeFindAstKind = (typeof CODE_FIND_AST_KINDS)[number];
16
+
17
+ const CODE_FIND_AST_KIND_SET = new Set<string>(CODE_FIND_AST_KINDS);
18
+
19
+ /** Return whether a direct caller supplied a supported code_find AST kind. */
20
+ export function isCodeFindAstKind(value: unknown): value is CodeFindAstKind {
21
+ return typeof value === "string" && CODE_FIND_AST_KIND_SET.has(value);
22
+ }
23
+
24
+ /** Exhaustive presentation labels keyed by the canonical AST-kind vocabulary. */
25
+ export const CODE_FIND_AST_KIND_LABELS = {
26
+ definition: "Definitions",
27
+ import: "Imports",
28
+ export: "Exports",
29
+ call: "Calls",
30
+ type: "Types",
31
+ interface: "Interfaces",
32
+ class: "Classes",
33
+ method: "Methods",
34
+ enum: "Enums",
35
+ } as const satisfies Record<CodeFindAstKind, string>;
@@ -1,131 +1,40 @@
1
- /**
2
- * Tool executor for code_find.
3
- *
4
- * Unified ranked code search with strict mode dispatch:
5
- * - text (default): literal ripgrep
6
- * - regex: ripgrep regex
7
- * - ast: tree-sitter structured search
8
- * - semantic: LSP workspace symbols
9
- *
10
- * Thin executor: validates params via pipeline, then delegates all
11
- * modes to the pattern use-case.
12
- */
1
+ /** Thin Pi adapter for the session-owned code_find workflow. */
13
2
 
3
+ import type { FindMode, FindWorkflowInput } from "../../session/find-types.ts";
14
4
  import type { CodeIntelResult, CodeIntelToolExecCtx } from "../../types/index.ts";
15
- import { findModeKindRules } from "../infra/cross-field.ts";
16
5
  import { unavailableSearchDetails } from "../infra/error-results.ts";
17
- import {
18
- gateSemanticReadiness,
19
- resolveScopeSetParam,
20
- runPipe,
21
- validateParams,
22
- } from "../infra/pipeline.ts";
23
- import { emitToolProgress } from "../infra/progress.ts";
24
- import { renderSemanticReadinessTimeout } from "../infra/readiness-message.ts";
25
- import { executePattern } from "./orchestrate.ts";
6
+ import { toWorkflowControl } from "../infra/workflow-control.ts";
7
+ import { assembleFindWorkflowResult } from "../result/find.ts";
8
+ import type { CodeFindAstKind } from "./ast-kinds.ts";
9
+ import { renderFindResult } from "./render.ts";
26
10
 
27
11
  export interface CodeFindToolParams {
28
12
  query: string;
29
- scope?: string | string[];
30
- mode?: "text" | "regex" | "ast" | "semantic";
31
- kind?:
32
- | "definition"
33
- | "import"
34
- | "export"
35
- | "call"
36
- | "type"
37
- | "interface"
38
- | "class"
39
- | "method"
40
- | "enum"
41
- | "test";
42
- contextLines?: number;
13
+ scope?: string[];
14
+ mode: FindMode;
15
+ kind?: CodeFindAstKind;
43
16
  maxResults?: number;
44
17
  }
45
18
 
46
- interface CodeFindPipelineParams extends CodeFindToolParams {
47
- _resolvedScopePaths?: string[];
48
- _resolvedScopeDisplay?: string | null;
49
- }
50
-
51
- function scopeForDetails(scope: CodeFindToolParams["scope"]): string | null {
52
- if (Array.isArray(scope)) return scope.join(", ");
53
- return scope ?? null;
54
- }
55
-
56
19
  export async function executeFindTool(
57
20
  params: CodeFindToolParams,
58
21
  ctx: CodeIntelToolExecCtx,
59
22
  ): Promise<CodeIntelResult> {
60
- if (!params.query || params.query.trim().length === 0) {
23
+ const outcome = await ctx.session.find(params as FindWorkflowInput, toWorkflowControl(ctx));
24
+ if (outcome.kind === "unavailable") throw new Error(outcome.reason);
25
+ if (outcome.kind === "invalid-input") {
61
26
  return {
62
- content: "**Error:** `code_find` requires a non-empty `query` parameter.",
63
- details: unavailableSearchDetails(scopeForDetails(params.scope), [
64
- "Provide a non-empty `query` parameter",
65
- ]),
27
+ content: `**Error:** ${outcome.message}`,
28
+ details: unavailableSearchDetails(
29
+ Array.isArray(params?.scope) ? params.scope.join(", ") : null,
30
+ ["Fix the search input and retry"],
31
+ ),
66
32
  };
67
33
  }
68
34
 
69
- emitToolProgress(ctx.onUpdate, `code_find: searching for "${params.query}"...`);
70
-
71
- const mode = params.mode ?? "text";
72
- const needsSemanticReadiness = mode === "semantic";
73
-
74
- const pipelineParams = params as CodeFindPipelineParams;
75
-
76
- return runPipe(
77
- pipelineParams,
78
- ctx,
79
- [
80
- validateParams(findModeKindRules(), (msg) => ({
81
- content: msg,
82
- details: unavailableSearchDetails(scopeForDetails(params.scope), [
83
- 'Use `mode: "ast"` with `kind`, or remove `kind` for text/regex/semantic search',
84
- ]),
85
- })),
86
- resolveScopeSetParam((reason) => ({
87
- content: `**Error:** ${reason}`,
88
- details: unavailableSearchDetails(scopeForDetails(params.scope), [
89
- "Verify each `scope` path exists and is within the workspace",
90
- ]),
91
- })),
92
- ...(needsSemanticReadiness
93
- ? [
94
- gateSemanticReadiness("code_find", {
95
- onTimeout: () => ({
96
- content: renderSemanticReadinessTimeout("code_find", 15_000),
97
- details: unavailableSearchDetails(scopeForDetails(params.scope), [
98
- "Retry shortly or check `code_health`",
99
- ]),
100
- }),
101
- throwOnUnavailable: true,
102
- }),
103
- ]
104
- : []),
105
- ],
106
- async (p, c) => {
107
- emitToolProgress(c.onUpdate, `code_find: ${mode} mode...`);
108
-
109
- // AST mode requires structural provider
110
- if (mode === "ast" && !c.session.getStructuralProvider()) {
111
- throw new Error(
112
- "code_find AST search is unavailable because no structural/tree-sitter provider is active for this workspace.",
113
- );
114
- }
115
-
116
- return executePattern(
117
- {
118
- pattern: p.query,
119
- paths: p._resolvedScopePaths ?? [c.cwd],
120
- scopeLabel: p._resolvedScopeDisplay ?? null,
121
- regex: mode === "regex",
122
- kind: p.kind,
123
- mode,
124
- maxResults: p.maxResults ?? 8,
125
- contextLines: p.contextLines ?? 1,
126
- },
127
- { cwd: c.cwd, provider: c.session.getProvider(), signal: c.signal },
128
- );
129
- },
130
- );
35
+ const assembly = assembleFindWorkflowResult(outcome);
36
+ return {
37
+ content: renderFindResult(assembly),
38
+ details: { type: "search", data: assembly.details },
39
+ };
131
40
  }