@mrclrchtr/supi-lsp 1.7.0 → 1.9.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 (251) hide show
  1. package/README.md +33 -10
  2. package/node_modules/@mrclrchtr/supi-code-runtime/README.md +13 -0
  3. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/README.md +97 -0
  4. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +53 -0
  5. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/api.ts +30 -0
  6. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config/config-settings.ts +76 -0
  7. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config/config.ts +186 -0
  8. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config.ts +11 -0
  9. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-messages.ts +119 -0
  10. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-provider-registry.ts +36 -0
  11. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-tag.ts +31 -0
  12. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context.ts +16 -0
  13. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/debug-registry.ts +255 -0
  14. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/index.ts +30 -0
  15. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path-utils.ts +40 -0
  16. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path.ts +2 -0
  17. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/project-roots.ts +170 -0
  18. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/project.ts +15 -0
  19. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/registry-utils.ts +86 -0
  20. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/session-utils.ts +29 -0
  21. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/session.ts +4 -0
  22. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-command.ts +15 -0
  23. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-registry.ts +41 -0
  24. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-ui.ts +226 -0
  25. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings-ui.ts +2 -0
  26. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings.ts +9 -0
  27. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +11 -0
  28. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/terminal.ts +60 -0
  29. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/tool-framework.ts +116 -0
  30. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/types.ts +2 -0
  31. package/node_modules/@mrclrchtr/supi-code-runtime/package.json +40 -0
  32. package/node_modules/@mrclrchtr/supi-code-runtime/src/api.ts +35 -0
  33. package/node_modules/@mrclrchtr/supi-code-runtime/src/capability/types.ts +68 -0
  34. package/node_modules/@mrclrchtr/supi-code-runtime/src/index.ts +31 -0
  35. package/node_modules/@mrclrchtr/supi-code-runtime/src/types.ts +110 -0
  36. package/node_modules/@mrclrchtr/supi-code-runtime/src/workspace/context.ts +41 -0
  37. package/node_modules/@mrclrchtr/supi-code-runtime/src/workspace/runtime.ts +170 -0
  38. package/node_modules/@mrclrchtr/supi-core/README.md +3 -13
  39. package/node_modules/@mrclrchtr/supi-core/package.json +13 -8
  40. package/node_modules/@mrclrchtr/supi-core/src/api.ts +26 -92
  41. package/node_modules/@mrclrchtr/supi-core/src/config.ts +11 -0
  42. package/node_modules/@mrclrchtr/supi-core/src/context.ts +16 -0
  43. package/node_modules/@mrclrchtr/supi-core/src/index.ts +26 -92
  44. package/node_modules/@mrclrchtr/supi-core/src/path.ts +2 -0
  45. package/node_modules/@mrclrchtr/supi-core/src/project.ts +15 -0
  46. package/node_modules/@mrclrchtr/supi-core/src/session.ts +4 -0
  47. package/node_modules/@mrclrchtr/supi-core/src/settings-ui.ts +2 -0
  48. package/node_modules/@mrclrchtr/supi-core/src/settings.ts +9 -0
  49. package/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +11 -0
  50. package/node_modules/@mrclrchtr/supi-core/src/types.ts +2 -0
  51. package/node_modules/vscode-jsonrpc/License.txt +11 -0
  52. package/node_modules/vscode-jsonrpc/README.md +69 -0
  53. package/node_modules/vscode-jsonrpc/browser.d.ts +6 -0
  54. package/node_modules/vscode-jsonrpc/browser.js +7 -0
  55. package/node_modules/vscode-jsonrpc/lib/browser/main.d.ts +17 -0
  56. package/node_modules/vscode-jsonrpc/lib/browser/main.js +76 -0
  57. package/node_modules/vscode-jsonrpc/lib/browser/ril.d.ts +12 -0
  58. package/node_modules/vscode-jsonrpc/lib/browser/ril.js +156 -0
  59. package/node_modules/vscode-jsonrpc/lib/common/api.d.ts +14 -0
  60. package/node_modules/vscode-jsonrpc/lib/common/api.js +81 -0
  61. package/node_modules/vscode-jsonrpc/lib/common/cancellation.d.ts +32 -0
  62. package/node_modules/vscode-jsonrpc/lib/common/cancellation.js +96 -0
  63. package/node_modules/vscode-jsonrpc/lib/common/connection.d.ts +358 -0
  64. package/node_modules/vscode-jsonrpc/lib/common/connection.js +1214 -0
  65. package/node_modules/vscode-jsonrpc/lib/common/disposable.d.ts +9 -0
  66. package/node_modules/vscode-jsonrpc/lib/common/disposable.js +16 -0
  67. package/node_modules/vscode-jsonrpc/lib/common/encoding.d.ts +52 -0
  68. package/node_modules/vscode-jsonrpc/lib/common/encoding.js +70 -0
  69. package/node_modules/vscode-jsonrpc/lib/common/events.d.ts +39 -0
  70. package/node_modules/vscode-jsonrpc/lib/common/events.js +128 -0
  71. package/node_modules/vscode-jsonrpc/lib/common/is.d.ts +7 -0
  72. package/node_modules/vscode-jsonrpc/lib/common/is.js +35 -0
  73. package/node_modules/vscode-jsonrpc/lib/common/linkedMap.d.ts +53 -0
  74. package/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +398 -0
  75. package/node_modules/vscode-jsonrpc/lib/common/messageBuffer.d.ts +18 -0
  76. package/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +152 -0
  77. package/node_modules/vscode-jsonrpc/lib/common/messageReader.d.ts +77 -0
  78. package/node_modules/vscode-jsonrpc/lib/common/messageReader.js +197 -0
  79. package/node_modules/vscode-jsonrpc/lib/common/messageWriter.d.ts +60 -0
  80. package/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +115 -0
  81. package/node_modules/vscode-jsonrpc/lib/common/messages.d.ts +369 -0
  82. package/node_modules/vscode-jsonrpc/lib/common/messages.js +306 -0
  83. package/node_modules/vscode-jsonrpc/lib/common/ral.d.ts +74 -0
  84. package/node_modules/vscode-jsonrpc/lib/common/ral.js +23 -0
  85. package/node_modules/vscode-jsonrpc/lib/common/semaphore.d.ts +10 -0
  86. package/node_modules/vscode-jsonrpc/lib/common/semaphore.js +68 -0
  87. package/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.d.ts +15 -0
  88. package/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +76 -0
  89. package/node_modules/vscode-jsonrpc/lib/node/main.d.ts +63 -0
  90. package/node_modules/vscode-jsonrpc/lib/node/main.js +257 -0
  91. package/node_modules/vscode-jsonrpc/lib/node/ril.d.ts +13 -0
  92. package/node_modules/vscode-jsonrpc/lib/node/ril.js +161 -0
  93. package/node_modules/vscode-jsonrpc/node.cmd +5 -0
  94. package/node_modules/vscode-jsonrpc/node.d.ts +6 -0
  95. package/node_modules/vscode-jsonrpc/node.js +7 -0
  96. package/node_modules/vscode-jsonrpc/package.json +45 -0
  97. package/node_modules/vscode-jsonrpc/thirdpartynotices.txt +16 -0
  98. package/node_modules/vscode-jsonrpc/typings/thenable.d.ts +5 -0
  99. package/node_modules/vscode-languageserver-protocol/License.txt +11 -0
  100. package/node_modules/vscode-languageserver-protocol/README.md +16 -0
  101. package/node_modules/vscode-languageserver-protocol/browser.d.ts +6 -0
  102. package/node_modules/vscode-languageserver-protocol/browser.js +7 -0
  103. package/node_modules/vscode-languageserver-protocol/lib/browser/main.d.ts +4 -0
  104. package/node_modules/vscode-languageserver-protocol/lib/browser/main.js +28 -0
  105. package/node_modules/vscode-languageserver-protocol/lib/common/api.d.ts +58 -0
  106. package/node_modules/vscode-languageserver-protocol/lib/common/api.js +77 -0
  107. package/node_modules/vscode-languageserver-protocol/lib/common/connection.d.ts +187 -0
  108. package/node_modules/vscode-languageserver-protocol/lib/common/connection.js +15 -0
  109. package/node_modules/vscode-languageserver-protocol/lib/common/messages.d.ts +51 -0
  110. package/node_modules/vscode-languageserver-protocol/lib/common/messages.js +44 -0
  111. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.$.d.ts +1 -0
  112. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.$.js +43 -0
  113. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.d.ts +86 -0
  114. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js +42 -0
  115. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.d.ts +66 -0
  116. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js +32 -0
  117. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.d.ts +35 -0
  118. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js +24 -0
  119. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.d.ts +3252 -0
  120. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.d.ts +37 -0
  121. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js +22 -0
  122. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.d.ts +341 -0
  123. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js +74 -0
  124. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.d.ts +306 -0
  125. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js +101 -0
  126. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.d.ts +109 -0
  127. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js +30 -0
  128. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.d.ts +38 -0
  129. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js +21 -0
  130. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.d.ts +110 -0
  131. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js +43 -0
  132. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.d.ts +57 -0
  133. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js +22 -0
  134. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.d.ts +86 -0
  135. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js +30 -0
  136. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.js +943 -0
  137. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.d.ts +52 -0
  138. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js +19 -0
  139. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.d.ts +106 -0
  140. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js +68 -0
  141. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.d.ts +400 -0
  142. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js +214 -0
  143. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.d.ts +107 -0
  144. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js +37 -0
  145. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.d.ts +41 -0
  146. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js +20 -0
  147. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.d.ts +223 -0
  148. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js +57 -0
  149. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.d.ts +72 -0
  150. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js +22 -0
  151. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.d.ts +38 -0
  152. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js +21 -0
  153. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.d.ts +83 -0
  154. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js +42 -0
  155. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.d.ts +74 -0
  156. package/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js +27 -0
  157. package/node_modules/vscode-languageserver-protocol/lib/common/utils/is.d.ts +9 -0
  158. package/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js +46 -0
  159. package/node_modules/vscode-languageserver-protocol/lib/node/main.d.ts +6 -0
  160. package/node_modules/vscode-languageserver-protocol/lib/node/main.js +28 -0
  161. package/node_modules/vscode-languageserver-protocol/metaModel.schema.json +783 -0
  162. package/node_modules/vscode-languageserver-protocol/node.cmd +5 -0
  163. package/node_modules/vscode-languageserver-protocol/node.d.ts +6 -0
  164. package/node_modules/vscode-languageserver-protocol/node.js +7 -0
  165. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/License.txt +11 -0
  166. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/README.md +69 -0
  167. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.d.ts +6 -0
  168. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.js +7 -0
  169. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.d.ts +17 -0
  170. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.js +76 -0
  171. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.d.ts +12 -0
  172. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.js +156 -0
  173. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.d.ts +14 -0
  174. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.js +81 -0
  175. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.d.ts +32 -0
  176. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.js +96 -0
  177. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.d.ts +358 -0
  178. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js +1212 -0
  179. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.d.ts +9 -0
  180. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.js +16 -0
  181. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/encoding.d.ts +52 -0
  182. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/encoding.js +70 -0
  183. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.d.ts +39 -0
  184. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.js +128 -0
  185. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.d.ts +7 -0
  186. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.js +35 -0
  187. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.d.ts +53 -0
  188. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +398 -0
  189. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.d.ts +18 -0
  190. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +152 -0
  191. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.d.ts +77 -0
  192. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.js +197 -0
  193. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.d.ts +60 -0
  194. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +115 -0
  195. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.d.ts +369 -0
  196. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.js +306 -0
  197. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.d.ts +74 -0
  198. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.js +23 -0
  199. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.d.ts +10 -0
  200. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.js +68 -0
  201. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.d.ts +15 -0
  202. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +76 -0
  203. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/main.d.ts +63 -0
  204. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/main.js +257 -0
  205. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/ril.d.ts +13 -0
  206. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/ril.js +161 -0
  207. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.cmd +5 -0
  208. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.d.ts +6 -0
  209. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.js +7 -0
  210. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/package.json +45 -0
  211. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/thirdpartynotices.txt +16 -0
  212. package/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/typings/thenable.d.ts +5 -0
  213. package/node_modules/vscode-languageserver-protocol/package.json +45 -0
  214. package/node_modules/vscode-languageserver-protocol/thirdpartynotices.txt +31 -0
  215. package/node_modules/vscode-languageserver-types/License.txt +11 -0
  216. package/node_modules/vscode-languageserver-types/README.md +17 -0
  217. package/node_modules/vscode-languageserver-types/lib/esm/main.d.ts +3139 -0
  218. package/node_modules/vscode-languageserver-types/lib/esm/main.js +2222 -0
  219. package/node_modules/vscode-languageserver-types/lib/esm/package.json +3 -0
  220. package/node_modules/vscode-languageserver-types/lib/umd/main.d.ts +3139 -0
  221. package/node_modules/vscode-languageserver-types/lib/umd/main.js +2272 -0
  222. package/node_modules/vscode-languageserver-types/package.json +38 -0
  223. package/node_modules/vscode-languageserver-types/thirdpartynotices.txt +16 -0
  224. package/package.json +9 -6
  225. package/src/config/config.ts +1 -1
  226. package/src/handlers/diagnostic-injection.ts +182 -0
  227. package/src/handlers/session-lifecycle.ts +149 -0
  228. package/src/handlers/status-command.ts +38 -0
  229. package/src/handlers/workspace-recovery.ts +92 -0
  230. package/src/lsp.ts +18 -414
  231. package/src/manager/capability-index.ts +24 -0
  232. package/src/manager/client-pool.ts +33 -0
  233. package/src/manager/diagnostic-store.ts +51 -0
  234. package/src/manager/manager-helpers.ts +1 -1
  235. package/src/manager/manager-workspace-symbol.ts +1 -1
  236. package/src/manager/manager.ts +1 -1
  237. package/src/manager/recovery-coordinator.ts +37 -0
  238. package/src/manager/workspace-router.ts +44 -0
  239. package/src/provider/lsp-semantic-provider.ts +156 -0
  240. package/src/session/runtime-registration.ts +39 -0
  241. package/src/session/scanner.ts +1 -1
  242. package/src/session/service-registry.ts +1 -1
  243. package/src/session/settings-registration.ts +1 -1
  244. package/src/tool/guidance.ts +5 -14
  245. package/src/tool/names.ts +12 -4
  246. package/src/tool/register-tools.ts +2 -4
  247. package/src/tool/service-actions.ts +141 -0
  248. package/src/tool/tool-specs.ts +93 -93
  249. package/src/utils.ts +1 -1
  250. package/src/workspace-change.ts +40 -0
  251. package/node_modules/@mrclrchtr/supi-core/src/extension.ts +0 -1
@@ -0,0 +1,156 @@
1
+ // LSP semantic provider adapter — wraps SessionLspService into the shared
2
+ // SemanticProvider contract from supi-code-runtime.
3
+
4
+ import type {
5
+ CodeLocation,
6
+ CodePosition,
7
+ CodeSymbol,
8
+ SemanticProvider,
9
+ } from "@mrclrchtr/supi-code-runtime/api";
10
+ import type { DocumentSymbol, Location, LocationLink, SymbolInformation } from "../config/types.ts";
11
+ import type { SessionLspService } from "../session/service-registry.ts";
12
+
13
+ /**
14
+ * Create a SemanticProvider backed by a SessionLspService.
15
+ * Maps LSP types into the shared code-runtime types.
16
+ */
17
+ export function createLspSemanticProvider(lsp: SessionLspService): SemanticProvider {
18
+ return {
19
+ async references(filePath: string, position: CodePosition): Promise<CodeLocation[] | null> {
20
+ const refResult = await lsp.references(filePath, position);
21
+ if (!refResult) return null;
22
+ const mapped: CodeLocation[] = [];
23
+ for (const item of refResult) {
24
+ const loc = toCodeLocation(item);
25
+ if (loc) mapped.push(loc);
26
+ }
27
+ return mapped;
28
+ },
29
+
30
+ async implementation(filePath: string, position: CodePosition): Promise<CodeLocation[] | null> {
31
+ const implResult = await lsp.implementation(filePath, position);
32
+ if (!implResult) return null;
33
+ const normalized = Array.isArray(implResult) ? implResult : [implResult];
34
+ const mapped: CodeLocation[] = [];
35
+ for (const item of normalized) {
36
+ const loc = toCodeLocation(item);
37
+ if (loc) mapped.push(loc);
38
+ }
39
+ return mapped;
40
+ },
41
+
42
+ async documentSymbols(filePath: string): Promise<CodeSymbol[] | null> {
43
+ const symbols = await lsp.documentSymbols(filePath);
44
+ if (!symbols) return null;
45
+ return flattenDocumentSymbols(symbols, filePath);
46
+ },
47
+
48
+ async workspaceSymbols(query: string): Promise<CodeSymbol[] | null> {
49
+ const results = await lsp.workspaceSymbol(query);
50
+ if (!results) return null;
51
+ return results.map((sym) => toCodeSymbol(sym as SymbolInformation));
52
+ },
53
+ };
54
+ }
55
+
56
+ // ── Type conversion helpers ───────────────────────────────────────────
57
+
58
+ function toCodeLocation(item: Location | LocationLink): CodeLocation | null {
59
+ const loc = item as Record<string, unknown>;
60
+ const uri = loc.uri ?? loc.targetUri;
61
+ if (typeof uri !== "string") return null;
62
+
63
+ // Prefer targetSelectionRange > targetRange > range
64
+ const range = loc.targetSelectionRange ?? loc.targetRange ?? loc.range;
65
+ if (!range || typeof range !== "object") return null;
66
+
67
+ const r = range as { start: Record<string, unknown>; end: Record<string, unknown> };
68
+ const start = r.start;
69
+ const end = r.end;
70
+ if (!start || !end) return null;
71
+
72
+ return {
73
+ uri,
74
+ range: {
75
+ start: { line: (start.line as number) ?? 0, character: (start.character as number) ?? 0 },
76
+ end: { line: (end.line as number) ?? 0, character: (end.character as number) ?? 0 },
77
+ },
78
+ };
79
+ }
80
+
81
+ const SYMBOL_KIND_NAMES: Record<number, string> = {
82
+ 1: "File",
83
+ 2: "Module",
84
+ 3: "Namespace",
85
+ 4: "Package",
86
+ 5: "Class",
87
+ 6: "Method",
88
+ 7: "Property",
89
+ 8: "Field",
90
+ 9: "Constructor",
91
+ 10: "Enum",
92
+ 11: "Interface",
93
+ 12: "Function",
94
+ 13: "Variable",
95
+ 14: "Constant",
96
+ 15: "String",
97
+ 16: "Number",
98
+ 17: "Boolean",
99
+ 18: "Array",
100
+ 19: "Object",
101
+ 20: "Key",
102
+ 21: "Null",
103
+ 22: "EnumMember",
104
+ 23: "Struct",
105
+ 24: "Event",
106
+ 25: "Operator",
107
+ 26: "TypeParameter",
108
+ };
109
+
110
+ function symbolKindName(kind: number): string {
111
+ return SYMBOL_KIND_NAMES[kind] ?? "Unknown";
112
+ }
113
+
114
+ function flattenDocumentSymbols(
115
+ symbols: DocumentSymbol[] | SymbolInformation[],
116
+ filePath: string,
117
+ container: string | null = null,
118
+ ): CodeSymbol[] {
119
+ const result: CodeSymbol[] = [];
120
+
121
+ for (const sym of symbols) {
122
+ // DocumentSymbol has selectionRange; SymbolInformation has location
123
+ const ds = sym as DocumentSymbol;
124
+ const si = sym as SymbolInformation;
125
+ const start = ds.selectionRange?.start ?? si.location?.range?.start;
126
+ if (!start) continue;
127
+
128
+ result.push({
129
+ name: sym.name,
130
+ kind: symbolKindName(sym.kind),
131
+ file: filePath,
132
+ line: start.line + 1,
133
+ character: start.character + 1,
134
+ container,
135
+ });
136
+
137
+ if (Array.isArray(ds.children) && ds.children.length > 0) {
138
+ result.push(...flattenDocumentSymbols(ds.children, filePath, sym.name));
139
+ }
140
+ }
141
+
142
+ return result;
143
+ }
144
+
145
+ function toCodeSymbol(sym: SymbolInformation): CodeSymbol {
146
+ const uri = sym.location?.uri ?? "";
147
+ const start = sym.location?.range?.start;
148
+ return {
149
+ name: sym.name,
150
+ kind: symbolKindName(sym.kind),
151
+ file: uri.startsWith("file://") ? decodeURIComponent(uri.slice(7)) : uri,
152
+ line: start ? start.line + 1 : 0,
153
+ character: start ? start.character + 1 : 0,
154
+ container: sym.containerName ?? null,
155
+ };
156
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * LSP-to-runtime capability registration.
3
+ *
4
+ * Adapts a SessionLspService into the runtime's SemanticProvider interface
5
+ * and registers/unregisters it with the shared WorkspaceRuntime at session
6
+ * lifecycle boundaries.
7
+ */
8
+
9
+ import type { WorkspaceRuntime } from "@mrclrchtr/supi-code-runtime/api";
10
+ import { createLspSemanticProvider } from "../provider/lsp-semantic-provider.ts";
11
+ import type { SessionLspService } from "./service-registry.ts";
12
+
13
+ /**
14
+ * Register LSP capabilities for a workspace cwd.
15
+ *
16
+ * Wraps SessionLspService into a SemanticProvider via the existing
17
+ * semantic adapter and publishes it into the shared workspace runtime
18
+ * so that code-intelligence and other consumers can discover semantic
19
+ * analysis availability.
20
+ */
21
+ export function registerLspCapabilities(
22
+ runtime: WorkspaceRuntime,
23
+ cwd: string,
24
+ service: SessionLspService,
25
+ ): void {
26
+ const provider = createLspSemanticProvider(service);
27
+ runtime.registerSemantic(cwd, provider);
28
+ }
29
+
30
+ /**
31
+ * Unregister LSP capabilities for a workspace cwd.
32
+ *
33
+ * Clears only the semantic capability slot — structural (tree-sitter)
34
+ * state is left intact so that a later tree-sitter session_start does
35
+ * not needlessly wipe LSP state on its own restart path.
36
+ */
37
+ export function unregisterLspCapabilities(runtime: WorkspaceRuntime, cwd: string): void {
38
+ runtime.clearSemantic(cwd);
39
+ }
@@ -1,6 +1,6 @@
1
1
  import * as fs from "node:fs";
2
2
  import * as path from "node:path";
3
- import { dedupeTopmostRoots, walkProject } from "@mrclrchtr/supi-core/api";
3
+ import { dedupeTopmostRoots, walkProject } from "@mrclrchtr/supi-core/project";
4
4
  import type {
5
5
  DetectedProjectServer,
6
6
  LspConfig,
@@ -2,7 +2,7 @@
2
2
  // Peer extensions can import `getSessionLspService` from the package root
3
3
  // to reuse the active LSP runtime without starting duplicate servers.
4
4
 
5
- import { createSessionStateRegistry } from "@mrclrchtr/supi-core/api";
5
+ import { createSessionStateRegistry } from "@mrclrchtr/supi-core/session";
6
6
  import type {
7
7
  CodeAction,
8
8
  Diagnostic,
@@ -7,7 +7,7 @@ import {
7
7
  loadSupiConfig,
8
8
  loadSupiConfigForScope,
9
9
  registerConfigSettings,
10
- } from "@mrclrchtr/supi-core/api";
10
+ } from "@mrclrchtr/supi-core/config";
11
11
  import { loadConfig } from "../config/config.ts";
12
12
 
13
13
  // ── Types ────────────────────────────────────────────────────
@@ -2,7 +2,7 @@
2
2
 
3
3
  import * as path from "node:path";
4
4
  import type { ProjectServerInfo } from "../config/server-config.ts";
5
- import { LSP_LOOKUP_TOOL, type LspToolName } from "./names.ts";
5
+ import { LSP_HOVER_TOOL, type LspToolName } from "./names.ts";
6
6
  import { LSP_TOOL_DEFINITION_SPECS } from "./tool-specs.ts";
7
7
 
8
8
  export interface LspToolPromptSurface {
@@ -28,7 +28,7 @@ export function buildLspToolPromptSurfaces(
28
28
  description: spec.description,
29
29
  promptSnippet: spec.promptSnippet,
30
30
  promptGuidelines:
31
- "includeCoverageGuidelines" in spec && spec.includeCoverageGuidelines
31
+ spec.name === LSP_HOVER_TOOL && coverageGuidelines.length > 0
32
32
  ? [...spec.basePromptGuidelines, ...coverageGuidelines]
33
33
  : [...spec.basePromptGuidelines],
34
34
  } satisfies LspToolPromptSurface,
@@ -43,8 +43,8 @@ function buildCoverageGuidelines(servers: ProjectServerInfo[], cwd: string): str
43
43
  const root = displayRoot(server.root, cwd);
44
44
  const fileTypes = server.fileTypes.map((entry) => `.${entry}`).join(",");
45
45
  const actions = server.supportedActions.join(",");
46
- const actionText = actions.length > 0 ? ` | actions: ${actions}` : "";
47
- return `lsp server coverage: ${server.name} | root: ${root} | files: ${fileTypes}${actionText}`;
46
+ const actionText = actions.length > 0 ? ` | actions:${actions}` : "";
47
+ return `lsp server coverage: ${server.name} | root:${root} | files:${fileTypes}${actionText}`;
48
48
  });
49
49
 
50
50
  const unavailable = servers
@@ -54,7 +54,7 @@ function buildCoverageGuidelines(servers: ProjectServerInfo[], cwd: string): str
54
54
  const dynamic = [...active];
55
55
  if (unavailable.length > 0) {
56
56
  dynamic.push(
57
- `lsp server unavailable: ${unavailable.join(",")} — install or enable to extend semantic coverage`,
57
+ `lsp server unavailable: ${unavailable.join(",")} — install or enable for more coverage`,
58
58
  );
59
59
  }
60
60
 
@@ -67,12 +67,3 @@ function displayRoot(root: string, cwd: string): string {
67
67
  if (relative.startsWith(`..${path.sep}`) || relative === "..") return root;
68
68
  return relative.replaceAll(path.sep, "/");
69
69
  }
70
-
71
- // Compatibility exports for older internal tests and helper imports.
72
- export const toolDescription = defaultLspToolPromptSurfaces[LSP_LOOKUP_TOOL].description;
73
- export const promptSnippet = defaultLspToolPromptSurfaces[LSP_LOOKUP_TOOL].promptSnippet;
74
- export const promptGuidelines = defaultLspToolPromptSurfaces[LSP_LOOKUP_TOOL].promptGuidelines;
75
-
76
- export function buildProjectGuidelines(servers: ProjectServerInfo[], cwd: string): string[] {
77
- return buildLspToolPromptSurfaces(servers, cwd)[LSP_LOOKUP_TOOL].promptGuidelines;
78
- }
package/src/tool/names.ts CHANGED
@@ -1,18 +1,26 @@
1
1
  // Stable LSP tool names shared across registration, guidance, and runtime state.
2
2
 
3
- export const LSP_LOOKUP_TOOL = "lsp_lookup";
3
+ export const LSP_HOVER_TOOL = "lsp_hover";
4
+ export const LSP_DEFINITION_TOOL = "lsp_definition";
5
+ export const LSP_REFERENCES_TOOL = "lsp_references";
6
+ export const LSP_IMPLEMENTATION_TOOL = "lsp_implementation";
4
7
  export const LSP_DOCUMENT_SYMBOLS_TOOL = "lsp_document_symbols";
5
8
  export const LSP_WORKSPACE_SYMBOLS_TOOL = "lsp_workspace_symbols";
6
9
  export const LSP_DIAGNOSTICS_TOOL = "lsp_diagnostics";
7
- export const LSP_REFACTOR_TOOL = "lsp_refactor";
10
+ export const LSP_RENAME_TOOL = "lsp_rename";
11
+ export const LSP_CODE_ACTIONS_TOOL = "lsp_code_actions";
8
12
  export const LSP_RECOVER_TOOL = "lsp_recover";
9
13
 
10
14
  export const LSP_TOOL_NAMES = [
11
- LSP_LOOKUP_TOOL,
15
+ LSP_HOVER_TOOL,
16
+ LSP_DEFINITION_TOOL,
17
+ LSP_REFERENCES_TOOL,
18
+ LSP_IMPLEMENTATION_TOOL,
12
19
  LSP_DOCUMENT_SYMBOLS_TOOL,
13
20
  LSP_WORKSPACE_SYMBOLS_TOOL,
14
21
  LSP_DIAGNOSTICS_TOOL,
15
- LSP_REFACTOR_TOOL,
22
+ LSP_RENAME_TOOL,
23
+ LSP_CODE_ACTIONS_TOOL,
16
24
  LSP_RECOVER_TOOL,
17
25
  ] as const;
18
26
 
@@ -47,14 +47,12 @@ function createToolExecutor(
47
47
  params: unknown,
48
48
  ) => Promise<string>,
49
49
  ) {
50
- // biome-ignore lint/complexity/useMaxParams: pi ToolDefinition.execute signature
51
50
  return async (
52
51
  _toolCallId: string,
53
52
  params: unknown,
54
- _signal: AbortSignal | undefined,
55
- _onUpdate: unknown,
56
- ctx: ExtensionContext,
53
+ ...rest: [AbortSignal | undefined, unknown, ExtensionContext]
57
54
  ) => {
55
+ const ctx = rest[2];
58
56
  const service = getReadyService(ctx.cwd);
59
57
  const text = service
60
58
  ? await run(service, ctx.cwd, params)
@@ -128,6 +128,147 @@ export async function executeLookup(
128
128
  }
129
129
  }
130
130
 
131
+ // ---------------------------------------------------------------------------
132
+ // Focused lookup tools (replacing the old multiplexed executeLookup)
133
+ // ---------------------------------------------------------------------------
134
+
135
+ export interface LspPositionToolParams {
136
+ file: string;
137
+ line: number;
138
+ character: number;
139
+ }
140
+
141
+ export interface LspRenameToolParams {
142
+ file: string;
143
+ line: number;
144
+ character: number;
145
+ newName: string;
146
+ }
147
+
148
+ export async function executeHover(
149
+ service: SessionLspService,
150
+ cwd: string,
151
+ params: LspPositionToolParams,
152
+ ): Promise<string> {
153
+ try {
154
+ const positionError = validatePositivePosition(params.line, params.character);
155
+ if (positionError) return positionError;
156
+ const fileError = validateFile(service, cwd, params.file);
157
+ if (fileError) return fileError;
158
+ const position = toZeroBased(params.line, params.character);
159
+ const hover = await service.hover(params.file, position);
160
+ return hover ? formatHover(hover) : "No hover information available at this position.";
161
+ } catch (error) {
162
+ return formatUnexpectedFailure("hover", error);
163
+ }
164
+ }
165
+
166
+ export async function executeDefinition(
167
+ service: SessionLspService,
168
+ cwd: string,
169
+ params: LspPositionToolParams,
170
+ ): Promise<string> {
171
+ try {
172
+ const positionError = validatePositivePosition(params.line, params.character);
173
+ if (positionError) return positionError;
174
+ const fileError = validateFile(service, cwd, params.file);
175
+ if (fileError) return fileError;
176
+ const position = toZeroBased(params.line, params.character);
177
+ const result = await service.definition(params.file, position);
178
+ if (!result) return "No definition found.";
179
+ const locations = normalizeLocations(result);
180
+ return locations.length > 0
181
+ ? formatLocations("Definition", locations, cwd)
182
+ : "No definition found.";
183
+ } catch (error) {
184
+ return formatUnexpectedFailure("definition", error);
185
+ }
186
+ }
187
+
188
+ export async function executeReferences(
189
+ service: SessionLspService,
190
+ cwd: string,
191
+ params: LspPositionToolParams,
192
+ ): Promise<string> {
193
+ try {
194
+ const positionError = validatePositivePosition(params.line, params.character);
195
+ if (positionError) return positionError;
196
+ const fileError = validateFile(service, cwd, params.file);
197
+ if (fileError) return fileError;
198
+ const position = toZeroBased(params.line, params.character);
199
+ const references = await service.references(params.file, position);
200
+ return references && references.length > 0
201
+ ? formatLocations("References", references, cwd)
202
+ : "No references found.";
203
+ } catch (error) {
204
+ return formatUnexpectedFailure("references", error);
205
+ }
206
+ }
207
+
208
+ export async function executeImplementation(
209
+ service: SessionLspService,
210
+ cwd: string,
211
+ params: LspPositionToolParams,
212
+ ): Promise<string> {
213
+ try {
214
+ const positionError = validatePositivePosition(params.line, params.character);
215
+ if (positionError) return positionError;
216
+ const fileError = validateFile(service, cwd, params.file);
217
+ if (fileError) return fileError;
218
+ const position = toZeroBased(params.line, params.character);
219
+ const result = await service.implementation(params.file, position);
220
+ if (!result) return "No implementation found.";
221
+ const locations = normalizeLocations(result);
222
+ return locations.length > 0
223
+ ? formatLocations("Implementation", locations, cwd)
224
+ : "No implementation found.";
225
+ } catch (error) {
226
+ return formatUnexpectedFailure("implementation", error);
227
+ }
228
+ }
229
+
230
+ export async function executeRename(
231
+ service: SessionLspService,
232
+ cwd: string,
233
+ params: LspRenameToolParams,
234
+ ): Promise<string> {
235
+ try {
236
+ const positionError = validatePositivePosition(params.line, params.character);
237
+ if (positionError) return positionError;
238
+ const fileError = validateFile(service, cwd, params.file);
239
+ if (fileError) return fileError;
240
+ const newName = params.newName?.trim();
241
+ if (!newName) {
242
+ return "Validation error: `newName` is required for rename.";
243
+ }
244
+ const position = toZeroBased(params.line, params.character);
245
+ const edit = await service.rename(params.file, position, newName);
246
+ return edit ? formatWorkspaceEdit(edit, cwd) : "Rename not available at this position.";
247
+ } catch (error) {
248
+ return formatUnexpectedFailure("rename", error);
249
+ }
250
+ }
251
+
252
+ export async function executeCodeActions(
253
+ service: SessionLspService,
254
+ cwd: string,
255
+ params: LspPositionToolParams,
256
+ ): Promise<string> {
257
+ try {
258
+ const positionError = validatePositivePosition(params.line, params.character);
259
+ if (positionError) return positionError;
260
+ const fileError = validateFile(service, cwd, params.file);
261
+ if (fileError) return fileError;
262
+ const position = toZeroBased(params.line, params.character);
263
+ const actions = await service.codeActions(params.file, position);
264
+ return actions && actions.length > 0
265
+ ? formatCodeActions(actions)
266
+ : "No code actions available at this position.";
267
+ } catch (error) {
268
+ return formatUnexpectedFailure("code actions", error);
269
+ }
270
+ }
271
+
131
272
  export async function executeDocumentSymbols(
132
273
  service: SessionLspService,
133
274
  cwd: string,