@burtson-labs/stealth-core-runtime 1.4.7

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 (415) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +46 -0
  3. package/dist/banditEngineProvider.d.ts +48 -0
  4. package/dist/banditEngineProvider.d.ts.map +1 -0
  5. package/dist/banditEngineProvider.js +1021 -0
  6. package/dist/banditEngineProvider.js.map +1 -0
  7. package/dist/embeddingCache.d.ts +23 -0
  8. package/dist/embeddingCache.d.ts.map +1 -0
  9. package/dist/embeddingCache.js +196 -0
  10. package/dist/embeddingCache.js.map +1 -0
  11. package/dist/embeddingClient.d.ts +35 -0
  12. package/dist/embeddingClient.d.ts.map +1 -0
  13. package/dist/embeddingClient.js +162 -0
  14. package/dist/embeddingClient.js.map +1 -0
  15. package/dist/executorAgent.d.ts +7 -0
  16. package/dist/executorAgent.d.ts.map +1 -0
  17. package/dist/executorAgent.js +95 -0
  18. package/dist/executorAgent.js.map +1 -0
  19. package/dist/extensionSystemPrompt.d.ts +80 -0
  20. package/dist/extensionSystemPrompt.d.ts.map +1 -0
  21. package/dist/extensionSystemPrompt.js +208 -0
  22. package/dist/extensionSystemPrompt.js.map +1 -0
  23. package/dist/gatewaySearchAdapter.d.ts +69 -0
  24. package/dist/gatewaySearchAdapter.d.ts.map +1 -0
  25. package/dist/gatewaySearchAdapter.js +131 -0
  26. package/dist/gatewaySearchAdapter.js.map +1 -0
  27. package/dist/goalInference.d.ts +26 -0
  28. package/dist/goalInference.d.ts.map +1 -0
  29. package/dist/goalInference.js +605 -0
  30. package/dist/goalInference.js.map +1 -0
  31. package/dist/hostTypes.d.ts +86 -0
  32. package/dist/hostTypes.d.ts.map +1 -0
  33. package/dist/hostTypes.js +3 -0
  34. package/dist/hostTypes.js.map +1 -0
  35. package/dist/index.d.ts +37 -0
  36. package/dist/index.d.ts.map +1 -0
  37. package/dist/index.js +83 -0
  38. package/dist/index.js.map +1 -0
  39. package/dist/internalTypes.d.ts +16 -0
  40. package/dist/internalTypes.d.ts.map +1 -0
  41. package/dist/internalTypes.js +20 -0
  42. package/dist/internalTypes.js.map +1 -0
  43. package/dist/ollamaEmbeddingClient.d.ts +45 -0
  44. package/dist/ollamaEmbeddingClient.d.ts.map +1 -0
  45. package/dist/ollamaEmbeddingClient.js +143 -0
  46. package/dist/ollamaEmbeddingClient.js.map +1 -0
  47. package/dist/pdfjsShim.d.ts +2 -0
  48. package/dist/pdfjsShim.d.ts.map +1 -0
  49. package/dist/pdfjsShim.js +80 -0
  50. package/dist/pdfjsShim.js.map +1 -0
  51. package/dist/runtime/actionRuntime.d.ts +13 -0
  52. package/dist/runtime/actionRuntime.d.ts.map +1 -0
  53. package/dist/runtime/actionRuntime.js +15 -0
  54. package/dist/runtime/actionRuntime.js.map +1 -0
  55. package/dist/runtime/actionServices.d.ts +72 -0
  56. package/dist/runtime/actionServices.d.ts.map +1 -0
  57. package/dist/runtime/actionServices.js +53 -0
  58. package/dist/runtime/actionServices.js.map +1 -0
  59. package/dist/runtime/adapters/connectorBus.d.ts +9 -0
  60. package/dist/runtime/adapters/connectorBus.d.ts.map +1 -0
  61. package/dist/runtime/adapters/connectorBus.js +20 -0
  62. package/dist/runtime/adapters/connectorBus.js.map +1 -0
  63. package/dist/runtime/adapters/fsAdapter.d.ts +6 -0
  64. package/dist/runtime/adapters/fsAdapter.d.ts.map +1 -0
  65. package/dist/runtime/adapters/fsAdapter.js +144 -0
  66. package/dist/runtime/adapters/fsAdapter.js.map +1 -0
  67. package/dist/runtime/adapters/llmAdapter.d.ts +4 -0
  68. package/dist/runtime/adapters/llmAdapter.d.ts.map +1 -0
  69. package/dist/runtime/adapters/llmAdapter.js +12 -0
  70. package/dist/runtime/adapters/llmAdapter.js.map +1 -0
  71. package/dist/runtime/adapters/shellAdapter.d.ts +6 -0
  72. package/dist/runtime/adapters/shellAdapter.d.ts.map +1 -0
  73. package/dist/runtime/adapters/shellAdapter.js +118 -0
  74. package/dist/runtime/adapters/shellAdapter.js.map +1 -0
  75. package/dist/runtime/additionalWrites.d.ts +22 -0
  76. package/dist/runtime/additionalWrites.d.ts.map +1 -0
  77. package/dist/runtime/additionalWrites.js +148 -0
  78. package/dist/runtime/additionalWrites.js.map +1 -0
  79. package/dist/runtime/artifactManager.d.ts +32 -0
  80. package/dist/runtime/artifactManager.d.ts.map +1 -0
  81. package/dist/runtime/artifactManager.js +154 -0
  82. package/dist/runtime/artifactManager.js.map +1 -0
  83. package/dist/runtime/autoHealer.d.ts +27 -0
  84. package/dist/runtime/autoHealer.d.ts.map +1 -0
  85. package/dist/runtime/autoHealer.js +583 -0
  86. package/dist/runtime/autoHealer.js.map +1 -0
  87. package/dist/runtime/changeTracker.d.ts +20 -0
  88. package/dist/runtime/changeTracker.d.ts.map +1 -0
  89. package/dist/runtime/changeTracker.js +147 -0
  90. package/dist/runtime/changeTracker.js.map +1 -0
  91. package/dist/runtime/contextBuilder.d.ts +85 -0
  92. package/dist/runtime/contextBuilder.d.ts.map +1 -0
  93. package/dist/runtime/contextBuilder.js +159 -0
  94. package/dist/runtime/contextBuilder.js.map +1 -0
  95. package/dist/runtime/coreRuntime.d.ts +7 -0
  96. package/dist/runtime/coreRuntime.d.ts.map +1 -0
  97. package/dist/runtime/coreRuntime.js +173 -0
  98. package/dist/runtime/coreRuntime.js.map +1 -0
  99. package/dist/runtime/createStealthRuntime.d.ts +4 -0
  100. package/dist/runtime/createStealthRuntime.d.ts.map +1 -0
  101. package/dist/runtime/createStealthRuntime.js +514 -0
  102. package/dist/runtime/createStealthRuntime.js.map +1 -0
  103. package/dist/runtime/diagnostics.d.ts +53 -0
  104. package/dist/runtime/diagnostics.d.ts.map +1 -0
  105. package/dist/runtime/diagnostics.js +396 -0
  106. package/dist/runtime/diagnostics.js.map +1 -0
  107. package/dist/runtime/diagnosticsServices.d.ts +51 -0
  108. package/dist/runtime/diagnosticsServices.d.ts.map +1 -0
  109. package/dist/runtime/diagnosticsServices.js +46 -0
  110. package/dist/runtime/diagnosticsServices.js.map +1 -0
  111. package/dist/runtime/diffManager.d.ts +20 -0
  112. package/dist/runtime/diffManager.d.ts.map +1 -0
  113. package/dist/runtime/diffManager.js +172 -0
  114. package/dist/runtime/diffManager.js.map +1 -0
  115. package/dist/runtime/diffPresenter.d.ts +8 -0
  116. package/dist/runtime/diffPresenter.d.ts.map +1 -0
  117. package/dist/runtime/diffPresenter.js +57 -0
  118. package/dist/runtime/diffPresenter.js.map +1 -0
  119. package/dist/runtime/embeddingClientResolver.d.ts +14 -0
  120. package/dist/runtime/embeddingClientResolver.d.ts.map +1 -0
  121. package/dist/runtime/embeddingClientResolver.js +54 -0
  122. package/dist/runtime/embeddingClientResolver.js.map +1 -0
  123. package/dist/runtime/embeddingManager.d.ts +22 -0
  124. package/dist/runtime/embeddingManager.d.ts.map +1 -0
  125. package/dist/runtime/embeddingManager.js +224 -0
  126. package/dist/runtime/embeddingManager.js.map +1 -0
  127. package/dist/runtime/eventBus.d.ts +7 -0
  128. package/dist/runtime/eventBus.d.ts.map +1 -0
  129. package/dist/runtime/eventBus.js +28 -0
  130. package/dist/runtime/eventBus.js.map +1 -0
  131. package/dist/runtime/executorServices.d.ts +46 -0
  132. package/dist/runtime/executorServices.d.ts.map +1 -0
  133. package/dist/runtime/executorServices.js +47 -0
  134. package/dist/runtime/executorServices.js.map +1 -0
  135. package/dist/runtime/extractionService.d.ts +11 -0
  136. package/dist/runtime/extractionService.d.ts.map +1 -0
  137. package/dist/runtime/extractionService.js +282 -0
  138. package/dist/runtime/extractionService.js.map +1 -0
  139. package/dist/runtime/feedbackService.d.ts +12 -0
  140. package/dist/runtime/feedbackService.d.ts.map +1 -0
  141. package/dist/runtime/feedbackService.js +111 -0
  142. package/dist/runtime/feedbackService.js.map +1 -0
  143. package/dist/runtime/goalEngine.d.ts +10 -0
  144. package/dist/runtime/goalEngine.d.ts.map +1 -0
  145. package/dist/runtime/goalEngine.js +429 -0
  146. package/dist/runtime/goalEngine.js.map +1 -0
  147. package/dist/runtime/goalFlowServices.d.ts +49 -0
  148. package/dist/runtime/goalFlowServices.d.ts.map +1 -0
  149. package/dist/runtime/goalFlowServices.js +45 -0
  150. package/dist/runtime/goalFlowServices.js.map +1 -0
  151. package/dist/runtime/goalReplay.d.ts +33 -0
  152. package/dist/runtime/goalReplay.d.ts.map +1 -0
  153. package/dist/runtime/goalReplay.js +58 -0
  154. package/dist/runtime/goalReplay.js.map +1 -0
  155. package/dist/runtime/goalRunner.d.ts +35 -0
  156. package/dist/runtime/goalRunner.d.ts.map +1 -0
  157. package/dist/runtime/goalRunner.js +42 -0
  158. package/dist/runtime/goalRunner.js.map +1 -0
  159. package/dist/runtime/healingEngine.d.ts +72 -0
  160. package/dist/runtime/healingEngine.d.ts.map +1 -0
  161. package/dist/runtime/healingEngine.js +969 -0
  162. package/dist/runtime/healingEngine.js.map +1 -0
  163. package/dist/runtime/healingServices.d.ts +62 -0
  164. package/dist/runtime/healingServices.d.ts.map +1 -0
  165. package/dist/runtime/healingServices.js +45 -0
  166. package/dist/runtime/healingServices.js.map +1 -0
  167. package/dist/runtime/helpers.d.ts +22 -0
  168. package/dist/runtime/helpers.d.ts.map +1 -0
  169. package/dist/runtime/helpers.js +694 -0
  170. package/dist/runtime/helpers.js.map +1 -0
  171. package/dist/runtime/hosts/actionHost.d.ts +82 -0
  172. package/dist/runtime/hosts/actionHost.d.ts.map +1 -0
  173. package/dist/runtime/hosts/actionHost.js +61 -0
  174. package/dist/runtime/hosts/actionHost.js.map +1 -0
  175. package/dist/runtime/hosts/baseServices.d.ts +51 -0
  176. package/dist/runtime/hosts/baseServices.d.ts.map +1 -0
  177. package/dist/runtime/hosts/baseServices.js +73 -0
  178. package/dist/runtime/hosts/baseServices.js.map +1 -0
  179. package/dist/runtime/hosts/embeddingServices.d.ts +25 -0
  180. package/dist/runtime/hosts/embeddingServices.d.ts.map +1 -0
  181. package/dist/runtime/hosts/embeddingServices.js +34 -0
  182. package/dist/runtime/hosts/embeddingServices.js.map +1 -0
  183. package/dist/runtime/hosts/goalFlowHost.d.ts +34 -0
  184. package/dist/runtime/hosts/goalFlowHost.d.ts.map +1 -0
  185. package/dist/runtime/hosts/goalFlowHost.js +35 -0
  186. package/dist/runtime/hosts/goalFlowHost.js.map +1 -0
  187. package/dist/runtime/hosts/goalFlowRuntime.d.ts +41 -0
  188. package/dist/runtime/hosts/goalFlowRuntime.d.ts.map +1 -0
  189. package/dist/runtime/hosts/goalFlowRuntime.js +31 -0
  190. package/dist/runtime/hosts/goalFlowRuntime.js.map +1 -0
  191. package/dist/runtime/hosts/providerHost.d.ts +19 -0
  192. package/dist/runtime/hosts/providerHost.d.ts.map +1 -0
  193. package/dist/runtime/hosts/providerHost.js +18 -0
  194. package/dist/runtime/hosts/providerHost.js.map +1 -0
  195. package/dist/runtime/hosts/rewriteHost.d.ts +84 -0
  196. package/dist/runtime/hosts/rewriteHost.d.ts.map +1 -0
  197. package/dist/runtime/hosts/rewriteHost.js +64 -0
  198. package/dist/runtime/hosts/rewriteHost.js.map +1 -0
  199. package/dist/runtime/hosts/workspaceHost.d.ts +113 -0
  200. package/dist/runtime/hosts/workspaceHost.d.ts.map +1 -0
  201. package/dist/runtime/hosts/workspaceHost.js +76 -0
  202. package/dist/runtime/hosts/workspaceHost.js.map +1 -0
  203. package/dist/runtime/index.d.ts +78 -0
  204. package/dist/runtime/index.d.ts.map +1 -0
  205. package/dist/runtime/index.js +95 -0
  206. package/dist/runtime/index.js.map +1 -0
  207. package/dist/runtime/insight.d.ts +16 -0
  208. package/dist/runtime/insight.d.ts.map +1 -0
  209. package/dist/runtime/insight.js +11 -0
  210. package/dist/runtime/insight.js.map +1 -0
  211. package/dist/runtime/internalActions.d.ts +16 -0
  212. package/dist/runtime/internalActions.d.ts.map +1 -0
  213. package/dist/runtime/internalActions.js +302 -0
  214. package/dist/runtime/internalActions.js.map +1 -0
  215. package/dist/runtime/modelBehavior.d.ts +69 -0
  216. package/dist/runtime/modelBehavior.d.ts.map +1 -0
  217. package/dist/runtime/modelBehavior.js +514 -0
  218. package/dist/runtime/modelBehavior.js.map +1 -0
  219. package/dist/runtime/modelCapabilities.d.ts +139 -0
  220. package/dist/runtime/modelCapabilities.d.ts.map +1 -0
  221. package/dist/runtime/modelCapabilities.js +458 -0
  222. package/dist/runtime/modelCapabilities.js.map +1 -0
  223. package/dist/runtime/modelsDevCatalog.d.ts +34 -0
  224. package/dist/runtime/modelsDevCatalog.d.ts.map +1 -0
  225. package/dist/runtime/modelsDevCatalog.js +263 -0
  226. package/dist/runtime/modelsDevCatalog.js.map +1 -0
  227. package/dist/runtime/pendingInference.d.ts +18 -0
  228. package/dist/runtime/pendingInference.d.ts.map +1 -0
  229. package/dist/runtime/pendingInference.js +121 -0
  230. package/dist/runtime/pendingInference.js.map +1 -0
  231. package/dist/runtime/persistence.d.ts +21 -0
  232. package/dist/runtime/persistence.d.ts.map +1 -0
  233. package/dist/runtime/persistence.js +73 -0
  234. package/dist/runtime/persistence.js.map +1 -0
  235. package/dist/runtime/planContext.d.ts +42 -0
  236. package/dist/runtime/planContext.d.ts.map +1 -0
  237. package/dist/runtime/planContext.js +246 -0
  238. package/dist/runtime/planContext.js.map +1 -0
  239. package/dist/runtime/planGenerator.d.ts +21 -0
  240. package/dist/runtime/planGenerator.d.ts.map +1 -0
  241. package/dist/runtime/planGenerator.js +89 -0
  242. package/dist/runtime/planGenerator.js.map +1 -0
  243. package/dist/runtime/planPreparation.d.ts +64 -0
  244. package/dist/runtime/planPreparation.d.ts.map +1 -0
  245. package/dist/runtime/planPreparation.js +173 -0
  246. package/dist/runtime/planPreparation.js.map +1 -0
  247. package/dist/runtime/projectSummary.d.ts +3 -0
  248. package/dist/runtime/projectSummary.d.ts.map +1 -0
  249. package/dist/runtime/projectSummary.js +42 -0
  250. package/dist/runtime/projectSummary.js.map +1 -0
  251. package/dist/runtime/providerSettings.d.ts +28 -0
  252. package/dist/runtime/providerSettings.d.ts.map +1 -0
  253. package/dist/runtime/providerSettings.js +93 -0
  254. package/dist/runtime/providerSettings.js.map +1 -0
  255. package/dist/runtime/pythonActions.d.ts +78 -0
  256. package/dist/runtime/pythonActions.d.ts.map +1 -0
  257. package/dist/runtime/pythonActions.js +392 -0
  258. package/dist/runtime/pythonActions.js.map +1 -0
  259. package/dist/runtime/pythonBridge.d.ts +13 -0
  260. package/dist/runtime/pythonBridge.d.ts.map +1 -0
  261. package/dist/runtime/pythonBridge.js +117 -0
  262. package/dist/runtime/pythonBridge.js.map +1 -0
  263. package/dist/runtime/rewriteEngine.d.ts +46 -0
  264. package/dist/runtime/rewriteEngine.d.ts.map +1 -0
  265. package/dist/runtime/rewriteEngine.js +259 -0
  266. package/dist/runtime/rewriteEngine.js.map +1 -0
  267. package/dist/runtime/rewriteGenerator.d.ts +29 -0
  268. package/dist/runtime/rewriteGenerator.d.ts.map +1 -0
  269. package/dist/runtime/rewriteGenerator.js +1527 -0
  270. package/dist/runtime/rewriteGenerator.js.map +1 -0
  271. package/dist/runtime/rewriteHydration.d.ts +22 -0
  272. package/dist/runtime/rewriteHydration.d.ts.map +1 -0
  273. package/dist/runtime/rewriteHydration.js +265 -0
  274. package/dist/runtime/rewriteHydration.js.map +1 -0
  275. package/dist/runtime/rewriteOrchestration.d.ts +105 -0
  276. package/dist/runtime/rewriteOrchestration.d.ts.map +1 -0
  277. package/dist/runtime/rewriteOrchestration.js +130 -0
  278. package/dist/runtime/rewriteOrchestration.js.map +1 -0
  279. package/dist/runtime/rewritePayload.d.ts +18 -0
  280. package/dist/runtime/rewritePayload.d.ts.map +1 -0
  281. package/dist/runtime/rewritePayload.js +166 -0
  282. package/dist/runtime/rewritePayload.js.map +1 -0
  283. package/dist/runtime/rewriteRuntime.d.ts +13 -0
  284. package/dist/runtime/rewriteRuntime.d.ts.map +1 -0
  285. package/dist/runtime/rewriteRuntime.js +21 -0
  286. package/dist/runtime/rewriteRuntime.js.map +1 -0
  287. package/dist/runtime/rewriteServices.d.ts +70 -0
  288. package/dist/runtime/rewriteServices.d.ts.map +1 -0
  289. package/dist/runtime/rewriteServices.js +50 -0
  290. package/dist/runtime/rewriteServices.js.map +1 -0
  291. package/dist/runtime/runtimeHelpers.d.ts +9 -0
  292. package/dist/runtime/runtimeHelpers.d.ts.map +1 -0
  293. package/dist/runtime/runtimeHelpers.js +86 -0
  294. package/dist/runtime/runtimeHelpers.js.map +1 -0
  295. package/dist/runtime/sessionData.d.ts +4 -0
  296. package/dist/runtime/sessionData.d.ts.map +1 -0
  297. package/dist/runtime/sessionData.js +45 -0
  298. package/dist/runtime/sessionData.js.map +1 -0
  299. package/dist/runtime/sessionRuntime.d.ts +47 -0
  300. package/dist/runtime/sessionRuntime.d.ts.map +1 -0
  301. package/dist/runtime/sessionRuntime.js +128 -0
  302. package/dist/runtime/sessionRuntime.js.map +1 -0
  303. package/dist/runtime/stealthRuntimeTypes.d.ts +12 -0
  304. package/dist/runtime/stealthRuntimeTypes.d.ts.map +1 -0
  305. package/dist/runtime/stealthRuntimeTypes.js +3 -0
  306. package/dist/runtime/stealthRuntimeTypes.js.map +1 -0
  307. package/dist/runtime/stepExecutor.d.ts +22 -0
  308. package/dist/runtime/stepExecutor.d.ts.map +1 -0
  309. package/dist/runtime/stepExecutor.js +83 -0
  310. package/dist/runtime/stepExecutor.js.map +1 -0
  311. package/dist/runtime/stepLifecycle.d.ts +29 -0
  312. package/dist/runtime/stepLifecycle.d.ts.map +1 -0
  313. package/dist/runtime/stepLifecycle.js +122 -0
  314. package/dist/runtime/stepLifecycle.js.map +1 -0
  315. package/dist/runtime/stepMetadata.d.ts +6 -0
  316. package/dist/runtime/stepMetadata.d.ts.map +1 -0
  317. package/dist/runtime/stepMetadata.js +87 -0
  318. package/dist/runtime/stepMetadata.js.map +1 -0
  319. package/dist/runtime/taskQueue.d.ts +16 -0
  320. package/dist/runtime/taskQueue.d.ts.map +1 -0
  321. package/dist/runtime/taskQueue.js +103 -0
  322. package/dist/runtime/taskQueue.js.map +1 -0
  323. package/dist/runtime/telemetry.d.ts +6 -0
  324. package/dist/runtime/telemetry.d.ts.map +1 -0
  325. package/dist/runtime/telemetry.js +42 -0
  326. package/dist/runtime/telemetry.js.map +1 -0
  327. package/dist/runtime/telemetryHub.d.ts +61 -0
  328. package/dist/runtime/telemetryHub.d.ts.map +1 -0
  329. package/dist/runtime/telemetryHub.js +190 -0
  330. package/dist/runtime/telemetryHub.js.map +1 -0
  331. package/dist/runtime/textSanitizer.d.ts +4 -0
  332. package/dist/runtime/textSanitizer.d.ts.map +1 -0
  333. package/dist/runtime/textSanitizer.js +86 -0
  334. package/dist/runtime/textSanitizer.js.map +1 -0
  335. package/dist/runtime/typeCheckRunner.d.ts +33 -0
  336. package/dist/runtime/typeCheckRunner.d.ts.map +1 -0
  337. package/dist/runtime/typeCheckRunner.js +357 -0
  338. package/dist/runtime/typeCheckRunner.js.map +1 -0
  339. package/dist/runtime/types.d.ts +334 -0
  340. package/dist/runtime/types.d.ts.map +1 -0
  341. package/dist/runtime/types.js +3 -0
  342. package/dist/runtime/types.js.map +1 -0
  343. package/dist/runtime/typescriptValidator.d.ts +18 -0
  344. package/dist/runtime/typescriptValidator.d.ts.map +1 -0
  345. package/dist/runtime/typescriptValidator.js +363 -0
  346. package/dist/runtime/typescriptValidator.js.map +1 -0
  347. package/dist/runtime/undoManager.d.ts +7 -0
  348. package/dist/runtime/undoManager.d.ts.map +1 -0
  349. package/dist/runtime/undoManager.js +56 -0
  350. package/dist/runtime/undoManager.js.map +1 -0
  351. package/dist/runtime/validationController.d.ts +11 -0
  352. package/dist/runtime/validationController.d.ts.map +1 -0
  353. package/dist/runtime/validationController.js +29 -0
  354. package/dist/runtime/validationController.js.map +1 -0
  355. package/dist/runtime/validationUtils.d.ts +17 -0
  356. package/dist/runtime/validationUtils.d.ts.map +1 -0
  357. package/dist/runtime/validationUtils.js +121 -0
  358. package/dist/runtime/validationUtils.js.map +1 -0
  359. package/dist/runtime/workspaceAssertions.d.ts +21 -0
  360. package/dist/runtime/workspaceAssertions.d.ts.map +1 -0
  361. package/dist/runtime/workspaceAssertions.js +183 -0
  362. package/dist/runtime/workspaceAssertions.js.map +1 -0
  363. package/dist/runtime/workspaceIndexService.d.ts +24 -0
  364. package/dist/runtime/workspaceIndexService.d.ts.map +1 -0
  365. package/dist/runtime/workspaceIndexService.js +133 -0
  366. package/dist/runtime/workspaceIndexService.js.map +1 -0
  367. package/dist/runtime/workspaceIndexer.d.ts +21 -0
  368. package/dist/runtime/workspaceIndexer.d.ts.map +1 -0
  369. package/dist/runtime/workspaceIndexer.js +95 -0
  370. package/dist/runtime/workspaceIndexer.js.map +1 -0
  371. package/dist/runtime/workspacePackages.d.ts +22 -0
  372. package/dist/runtime/workspacePackages.d.ts.map +1 -0
  373. package/dist/runtime/workspacePackages.js +198 -0
  374. package/dist/runtime/workspacePackages.js.map +1 -0
  375. package/dist/runtime/workspaceRuntime.d.ts +58 -0
  376. package/dist/runtime/workspaceRuntime.d.ts.map +1 -0
  377. package/dist/runtime/workspaceRuntime.js +86 -0
  378. package/dist/runtime/workspaceRuntime.js.map +1 -0
  379. package/dist/runtime/workspaceService.d.ts +14 -0
  380. package/dist/runtime/workspaceService.d.ts.map +1 -0
  381. package/dist/runtime/workspaceService.js +88 -0
  382. package/dist/runtime/workspaceService.js.map +1 -0
  383. package/dist/runtime/workspaceServices.d.ts +114 -0
  384. package/dist/runtime/workspaceServices.d.ts.map +1 -0
  385. package/dist/runtime/workspaceServices.js +114 -0
  386. package/dist/runtime/workspaceServices.js.map +1 -0
  387. package/dist/runtime/writeServices.d.ts +34 -0
  388. package/dist/runtime/writeServices.d.ts.map +1 -0
  389. package/dist/runtime/writeServices.js +32 -0
  390. package/dist/runtime/writeServices.js.map +1 -0
  391. package/dist/sharedPromptSections.d.ts +58 -0
  392. package/dist/sharedPromptSections.d.ts.map +1 -0
  393. package/dist/sharedPromptSections.js +94 -0
  394. package/dist/sharedPromptSections.js.map +1 -0
  395. package/dist/statusTypes.d.ts +13 -0
  396. package/dist/statusTypes.d.ts.map +1 -0
  397. package/dist/statusTypes.js +3 -0
  398. package/dist/statusTypes.js.map +1 -0
  399. package/dist/streamIdleTimeout.d.ts +38 -0
  400. package/dist/streamIdleTimeout.d.ts.map +1 -0
  401. package/dist/streamIdleTimeout.js +44 -0
  402. package/dist/streamIdleTimeout.js.map +1 -0
  403. package/dist/types/bandit.d.ts +113 -0
  404. package/dist/types/bandit.d.ts.map +1 -0
  405. package/dist/types/bandit.js +3 -0
  406. package/dist/types/bandit.js.map +1 -0
  407. package/dist/types.d.ts +152 -0
  408. package/dist/types.d.ts.map +1 -0
  409. package/dist/types.js +3 -0
  410. package/dist/types.js.map +1 -0
  411. package/dist/workspaceIndex.d.ts +44 -0
  412. package/dist/workspaceIndex.d.ts.map +1 -0
  413. package/dist/workspaceIndex.js +258 -0
  414. package/dist/workspaceIndex.js.map +1 -0
  415. package/package.json +36 -0
@@ -0,0 +1,263 @@
1
+ "use strict";
2
+ /**
3
+ * models.dev catalog adapter.
4
+ *
5
+ * https://models.dev/api.json is a community-maintained model metadata
6
+ * catalog (MIT-licensed, used by sst/opencode). Each provider entry
7
+ * lists every published model with context window, output cap,
8
+ * tool-calling support, vision support, and pricing. We use it to
9
+ * populate the runtime capability registry for openai-compatible
10
+ * upstreams (LM Studio, llama.cpp, vLLM, OpenRouter, Together, Groq,
11
+ * DeepSeek, OpenAI proper) that aren't in our hand-curated built-in
12
+ * profile list — without it those models inherit the conservative
13
+ * default and miss out on tier-tuned context budgets, output gates,
14
+ * vision routing, etc.
15
+ *
16
+ * Caching:
17
+ * - In-memory map for the lifetime of the process.
18
+ * - Disk cache at `~/.bandit/cache/models-dev.json` + an `.etag`
19
+ * sidecar; revalidated against the server with `If-None-Match`
20
+ * once per 24h. 304 Not Modified keeps the on-disk JSON.
21
+ * - First-run fetch downloads ~250 KB gzipped (~1.9 MB raw).
22
+ * Subsequent launches usually return 304 in <100 ms.
23
+ *
24
+ * Failures are silent: when the catalog is unreachable or the model
25
+ * isn't listed, lookupModelsDevCapabilities returns null and the
26
+ * caller falls back to whatever default it had.
27
+ */
28
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
29
+ if (k2 === undefined) k2 = k;
30
+ var desc = Object.getOwnPropertyDescriptor(m, k);
31
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
32
+ desc = { enumerable: true, get: function() { return m[k]; } };
33
+ }
34
+ Object.defineProperty(o, k2, desc);
35
+ }) : (function(o, m, k, k2) {
36
+ if (k2 === undefined) k2 = k;
37
+ o[k2] = m[k];
38
+ }));
39
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
40
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
41
+ }) : function(o, v) {
42
+ o["default"] = v;
43
+ });
44
+ var __importStar = (this && this.__importStar) || (function () {
45
+ var ownKeys = function(o) {
46
+ ownKeys = Object.getOwnPropertyNames || function (o) {
47
+ var ar = [];
48
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
49
+ return ar;
50
+ };
51
+ return ownKeys(o);
52
+ };
53
+ return function (mod) {
54
+ if (mod && mod.__esModule) return mod;
55
+ var result = {};
56
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
57
+ __setModuleDefault(result, mod);
58
+ return result;
59
+ };
60
+ })();
61
+ Object.defineProperty(exports, "__esModule", { value: true });
62
+ exports.queryModelsDevCapabilities = queryModelsDevCapabilities;
63
+ const fs = __importStar(require("fs"));
64
+ const os = __importStar(require("os"));
65
+ const path = __importStar(require("path"));
66
+ const CATALOG_URL = 'https://models.dev/api.json';
67
+ const REVALIDATE_AFTER_MS = 24 * 60 * 60 * 1000;
68
+ // Resolved lazily rather than at module load. `os.homedir()` / `path.join`
69
+ // are externalized to `undefined` in browser bundles (the Stealth Web host
70
+ // imports this module transitively via the capability registry). Computing
71
+ // these at top level executed `undefined()` on import and blanked the whole
72
+ // web app before React mounted. Inside the cache helpers they only run on a
73
+ // real Node host; in the browser the surrounding try/catch degrades to "no
74
+ // disk cache" and the in-memory + network paths still work.
75
+ function cachePaths() {
76
+ const dir = path.join(os.homedir(), '.bandit', 'cache');
77
+ return {
78
+ dir,
79
+ file: path.join(dir, 'models-dev.json'),
80
+ etag: path.join(dir, 'models-dev.etag'),
81
+ stamp: path.join(dir, 'models-dev.stamp')
82
+ };
83
+ }
84
+ let inMemoryCatalog = null;
85
+ let baseUrlIndex = null;
86
+ let inflightLoad = null;
87
+ /**
88
+ * Normalise an OpenAI-compatible base URL for matching against the
89
+ * `api` field models.dev publishes per provider. Strips trailing
90
+ * slashes and `/v1` suffixes since some providers list with `/v1` and
91
+ * some without.
92
+ */
93
+ function normalizeBaseUrl(url) {
94
+ let out = url.trim().toLowerCase().replace(/\/+$/, '');
95
+ if (out.endsWith('/v1'))
96
+ out = out.slice(0, -3);
97
+ return out;
98
+ }
99
+ function buildBaseUrlIndex(catalog) {
100
+ const map = new Map();
101
+ for (const [providerId, provider] of Object.entries(catalog)) {
102
+ if (!provider?.api)
103
+ continue;
104
+ map.set(normalizeBaseUrl(provider.api), providerId);
105
+ }
106
+ return map;
107
+ }
108
+ async function readDiskCache() {
109
+ try {
110
+ const { file, etag: etagPath, stamp: stampPath } = cachePaths();
111
+ const [raw, etag, stamp] = await Promise.all([
112
+ fs.promises.readFile(file, 'utf-8').catch(() => null),
113
+ fs.promises.readFile(etagPath, 'utf-8').catch(() => null),
114
+ fs.promises.readFile(stampPath, 'utf-8').catch(() => null)
115
+ ]);
116
+ if (!raw)
117
+ return { catalog: null, etag: null, stale: true };
118
+ const catalog = JSON.parse(raw);
119
+ const writtenAt = stamp ? parseInt(stamp.trim(), 10) : 0;
120
+ const stale = !Number.isFinite(writtenAt) || (Date.now() - writtenAt) > REVALIDATE_AFTER_MS;
121
+ return { catalog, etag: etag?.trim() || null, stale };
122
+ }
123
+ catch {
124
+ return { catalog: null, etag: null, stale: true };
125
+ }
126
+ }
127
+ async function writeDiskCache(catalog, etag) {
128
+ try {
129
+ const { dir, file, etag: etagPath, stamp: stampPath } = cachePaths();
130
+ await fs.promises.mkdir(dir, { recursive: true });
131
+ await Promise.all([
132
+ fs.promises.writeFile(file, JSON.stringify(catalog), 'utf-8'),
133
+ fs.promises.writeFile(etagPath, etag ?? '', 'utf-8'),
134
+ fs.promises.writeFile(stampPath, String(Date.now()), 'utf-8')
135
+ ]);
136
+ }
137
+ catch {
138
+ // Cache writes are best-effort. Inability to write to ~/.bandit/
139
+ // shouldn't break agent operation — the in-memory copy still works
140
+ // for the rest of this process.
141
+ }
142
+ }
143
+ async function loadCatalog() {
144
+ if (inMemoryCatalog)
145
+ return inMemoryCatalog;
146
+ if (inflightLoad)
147
+ return inflightLoad;
148
+ inflightLoad = (async () => {
149
+ const disk = await readDiskCache();
150
+ // Fast path: fresh on-disk copy, use it without a network round-trip.
151
+ if (disk.catalog && !disk.stale) {
152
+ inMemoryCatalog = disk.catalog;
153
+ baseUrlIndex = buildBaseUrlIndex(disk.catalog);
154
+ return disk.catalog;
155
+ }
156
+ // Otherwise revalidate against the server. If the server is
157
+ // unreachable or returns garbage, fall back to the stale on-disk
158
+ // copy when we have one — better than zero metadata.
159
+ try {
160
+ const headers = { Accept: 'application/json' };
161
+ if (disk.etag)
162
+ headers['If-None-Match'] = disk.etag;
163
+ const response = await fetch(CATALOG_URL, {
164
+ method: 'GET',
165
+ headers,
166
+ signal: AbortSignal.timeout(5000)
167
+ });
168
+ if (response.status === 304 && disk.catalog) {
169
+ // ETag still matches — refresh the stamp so we don't revalidate
170
+ // again for another 24h.
171
+ inMemoryCatalog = disk.catalog;
172
+ baseUrlIndex = buildBaseUrlIndex(disk.catalog);
173
+ await writeDiskCache(disk.catalog, disk.etag);
174
+ return disk.catalog;
175
+ }
176
+ if (!response.ok) {
177
+ if (disk.catalog) {
178
+ inMemoryCatalog = disk.catalog;
179
+ baseUrlIndex = buildBaseUrlIndex(disk.catalog);
180
+ return disk.catalog;
181
+ }
182
+ return null;
183
+ }
184
+ const fresh = (await response.json());
185
+ const newEtag = response.headers.get('etag');
186
+ inMemoryCatalog = fresh;
187
+ baseUrlIndex = buildBaseUrlIndex(fresh);
188
+ await writeDiskCache(fresh, newEtag);
189
+ return fresh;
190
+ }
191
+ catch {
192
+ if (disk.catalog) {
193
+ inMemoryCatalog = disk.catalog;
194
+ baseUrlIndex = buildBaseUrlIndex(disk.catalog);
195
+ return disk.catalog;
196
+ }
197
+ return null;
198
+ }
199
+ })();
200
+ try {
201
+ return await inflightLoad;
202
+ }
203
+ finally {
204
+ inflightLoad = null;
205
+ }
206
+ }
207
+ /**
208
+ * Map a models.dev model entry to our internal ModelCapabilities shape.
209
+ * Tier is derived from limit.context: <16K → small, <64K → medium,
210
+ * everything else → large. Matches the heuristic used by the built-in
211
+ * profile table.
212
+ */
213
+ function mapToCapabilities(modelId, model) {
214
+ const contextWindow = model.limit?.context ?? 8192;
215
+ const tier = contextWindow < 16384
216
+ ? 'small'
217
+ : contextWindow < 65536
218
+ ? 'medium'
219
+ : 'large';
220
+ const inputModalities = model.modalities?.input ?? [];
221
+ const supportsVision = inputModalities.includes('image') || model.attachment === true;
222
+ return {
223
+ contextWindow,
224
+ supportsJsonMode: true, // Most OpenAI-compatible providers do; conservative default for unknowns.
225
+ supportsToolCalling: model.tool_call === true,
226
+ supportsVision,
227
+ tier,
228
+ label: model.name ?? modelId
229
+ };
230
+ }
231
+ /**
232
+ * Resolve capabilities for `(baseUrl, modelId)` from the models.dev
233
+ * catalog. Returns null when the catalog is unavailable, the base URL
234
+ * doesn't match any known provider, or the model isn't listed.
235
+ */
236
+ async function queryModelsDevCapabilities(modelId, baseUrl) {
237
+ if (!modelId || !baseUrl)
238
+ return null;
239
+ const catalog = await loadCatalog();
240
+ if (!catalog)
241
+ return null;
242
+ if (!baseUrlIndex)
243
+ baseUrlIndex = buildBaseUrlIndex(catalog);
244
+ const providerId = baseUrlIndex.get(normalizeBaseUrl(baseUrl));
245
+ if (!providerId)
246
+ return null;
247
+ const provider = catalog[providerId];
248
+ if (!provider?.models)
249
+ return null;
250
+ // models.dev model IDs are sometimes case-sensitive (e.g. OpenRouter's
251
+ // `openai/gpt-4o` — the slash matters), so try the exact key first
252
+ // and only fall back to a case-insensitive scan if that misses.
253
+ const direct = provider.models[modelId];
254
+ if (direct)
255
+ return mapToCapabilities(modelId, direct);
256
+ const lower = modelId.toLowerCase();
257
+ for (const [id, model] of Object.entries(provider.models)) {
258
+ if (id.toLowerCase() === lower)
259
+ return mapToCapabilities(id, model);
260
+ }
261
+ return null;
262
+ }
263
+ //# sourceMappingURL=modelsDevCatalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modelsDevCatalog.js","sourceRoot":"","sources":["../../src/runtime/modelsDevCatalog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { InferredGoal } from '../internalTypes';
2
+ import type { AdditionalWrite } from '../internalTypes';
3
+ export interface PendingInferenceDeps {
4
+ getCurrentInsight(): InferredGoal | undefined;
5
+ getWorkspaceRoot(): string | undefined;
6
+ getWorkspaceFileIndex(): string[];
7
+ normalizeRelativePath(value: string): string | undefined;
8
+ workspaceFileExists(absPath: string): Promise<boolean>;
9
+ getPendingFiles(): string[];
10
+ setPendingFiles(files: string[]): void;
11
+ logWarning(message: string): Promise<void> | void;
12
+ }
13
+ export declare function createPendingInferenceTracker(deps: PendingInferenceDeps): {
14
+ flagMissingFiles: (relativePath: string, writes: AdditionalWrite[]) => Promise<void>;
15
+ computeMissingFiles: (relativePath: string, writes: AdditionalWrite[]) => Promise<string[]>;
16
+ resolvePendingFiles: () => Promise<string[]>;
17
+ };
18
+ //# sourceMappingURL=pendingInference.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pendingInference.d.ts","sourceRoot":"","sources":["../../src/runtime/pendingInference.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,IAAI,YAAY,GAAG,SAAS,CAAC;IAC9C,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAAC;IACvC,qBAAqB,IAAI,MAAM,EAAE,CAAC;IAClC,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACzD,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvD,eAAe,IAAI,MAAM,EAAE,CAAC;IAC5B,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACvC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACnD;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,oBAAoB;qCACxB,MAAM,UAAU,eAAe,EAAE,KAAG,OAAO,CAAC,IAAI,CAAC;wCAY9C,MAAM,UAAU,eAAe,EAAE,KAAG,OAAO,CAAC,MAAM,EAAE,CAAC;+BAqDhE,OAAO,CAAC,MAAM,EAAE,CAAC;EA8BxD"}
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.createPendingInferenceTracker = createPendingInferenceTracker;
37
+ const path = __importStar(require("path"));
38
+ function createPendingInferenceTracker(deps) {
39
+ async function flagMissingFiles(relativePath, writes) {
40
+ const missing = await computeMissingFiles(relativePath, writes);
41
+ deps.setPendingFiles(missing);
42
+ if (missing.length > 0) {
43
+ await deps.logWarning(`Goal inference expects these helper files to exist: ${missing.join(', ')}. Include them as FILE entries in the \`\`\`files block with full file contents.`);
44
+ }
45
+ }
46
+ async function computeMissingFiles(relativePath, writes) {
47
+ const insight = deps.getCurrentInsight();
48
+ const workspaceRoot = deps.getWorkspaceRoot();
49
+ if (!insight || !workspaceRoot) {
50
+ return [];
51
+ }
52
+ const created = new Set(writes
53
+ .map((write) => deps.normalizeRelativePath(write.path))
54
+ .filter((value) => Boolean(value)));
55
+ const originPath = deps.normalizeRelativePath(relativePath) ?? relativePath;
56
+ const candidates = new Set();
57
+ (insight.files ?? []).forEach((file) => {
58
+ const normalized = deps.normalizeRelativePath(file);
59
+ if (normalized) {
60
+ candidates.add(normalized);
61
+ }
62
+ });
63
+ (insight.tasks ?? []).forEach((task) => {
64
+ (task.files ?? []).forEach((file) => {
65
+ const normalized = deps.normalizeRelativePath(file);
66
+ if (normalized) {
67
+ candidates.add(normalized);
68
+ }
69
+ });
70
+ });
71
+ candidates.delete(originPath);
72
+ const missing = [];
73
+ const workspaceFiles = deps.getWorkspaceFileIndex();
74
+ for (const candidate of candidates) {
75
+ if (!candidate || created.has(candidate)) {
76
+ continue;
77
+ }
78
+ const absolute = pathJoin(workspaceRoot, candidate);
79
+ const exists = await deps.workspaceFileExists(absolute);
80
+ if (exists) {
81
+ continue;
82
+ }
83
+ const baseName = candidate.split('/').pop();
84
+ if (baseName &&
85
+ workspaceFiles.some((file) => file.endsWith(`/${baseName}`) || file === baseName)) {
86
+ continue;
87
+ }
88
+ missing.push(candidate);
89
+ }
90
+ return missing;
91
+ }
92
+ async function resolvePendingFiles() {
93
+ const pending = deps.getPendingFiles();
94
+ const workspaceRoot = deps.getWorkspaceRoot();
95
+ if (!pending.length || !workspaceRoot) {
96
+ return [];
97
+ }
98
+ const outstanding = [];
99
+ for (const file of pending) {
100
+ if (!file) {
101
+ continue;
102
+ }
103
+ const target = pathJoin(workspaceRoot, file);
104
+ const exists = await deps.workspaceFileExists(target);
105
+ if (!exists) {
106
+ outstanding.push(file);
107
+ }
108
+ }
109
+ deps.setPendingFiles(outstanding);
110
+ return outstanding;
111
+ }
112
+ function pathJoin(root, relative) {
113
+ return path.resolve(root, relative);
114
+ }
115
+ return {
116
+ flagMissingFiles,
117
+ computeMissingFiles,
118
+ resolvePendingFiles
119
+ };
120
+ }
121
+ //# sourceMappingURL=pendingInference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pendingInference.js","sourceRoot":"","sources":["../../src/runtime/pendingInference.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { IFsAdapter } from '../internalTypes';
2
+ export interface PersistenceSnapshot {
3
+ planId?: string;
4
+ goal?: string;
5
+ currentStep?: number;
6
+ pendingDiffs?: string[];
7
+ diagnostics?: unknown;
8
+ retryCount?: number;
9
+ metadata?: Record<string, unknown>;
10
+ updatedAt?: string;
11
+ }
12
+ export interface PersistenceManager {
13
+ save(workspaceRoot: string, snapshot: PersistenceSnapshot): Promise<void>;
14
+ load(workspaceRoot: string): Promise<PersistenceSnapshot | undefined>;
15
+ clear(workspaceRoot: string): Promise<void>;
16
+ }
17
+ export interface PersistenceDeps {
18
+ fs: Pick<IFsAdapter, 'ensureDir' | 'writeText' | 'readText' | 'remove' | 'exists'>;
19
+ }
20
+ export declare function createPersistenceManager(deps: PersistenceDeps): PersistenceManager;
21
+ //# sourceMappingURL=persistence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../src/runtime/persistence.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1E,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAAC;IACtE,KAAK,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC;CACpF;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,eAAe,GAAG,kBAAkB,CAiClF"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.createPersistenceManager = createPersistenceManager;
37
+ const path = __importStar(require("path"));
38
+ function createPersistenceManager(deps) {
39
+ async function save(workspaceRoot, snapshot) {
40
+ const target = resolveSessionFile(workspaceRoot);
41
+ const directory = path.dirname(target);
42
+ await deps.fs.ensureDir(directory);
43
+ const payload = {
44
+ ...snapshot,
45
+ updatedAt: new Date().toISOString()
46
+ };
47
+ await deps.fs.writeText(target, JSON.stringify(payload, null, 2));
48
+ }
49
+ async function load(workspaceRoot) {
50
+ const target = resolveSessionFile(workspaceRoot);
51
+ if (!(await deps.fs.exists(target))) {
52
+ return undefined;
53
+ }
54
+ try {
55
+ const content = await deps.fs.readText(target);
56
+ return JSON.parse(content);
57
+ }
58
+ catch {
59
+ return undefined;
60
+ }
61
+ }
62
+ async function clear(workspaceRoot) {
63
+ const target = resolveSessionFile(workspaceRoot);
64
+ if (await deps.fs.exists(target)) {
65
+ await deps.fs.remove(target, { force: true });
66
+ }
67
+ }
68
+ return { save, load, clear };
69
+ }
70
+ function resolveSessionFile(workspaceRoot) {
71
+ return path.join(workspaceRoot, '.bandit', 'sessions', 'current.json');
72
+ }
73
+ //# sourceMappingURL=persistence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../src/runtime/persistence.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,4DAiCC;AAzDD,2CAA6B;AAwB7B,SAAgB,wBAAwB,CAAC,IAAqB;IAC5D,KAAK,UAAU,IAAI,CAAC,aAAqB,EAAE,QAA6B;QACtE,MAAM,MAAM,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG;YACd,GAAG,QAAQ;YACX,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;QACF,MAAM,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,UAAU,IAAI,CAAC,aAAqB;QACvC,MAAM,MAAM,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;QACjD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACpC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAwB,CAAC;QACpD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,KAAK,UAAU,KAAK,CAAC,aAAqB;QACxC,MAAM,MAAM,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;QACjD,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,kBAAkB,CAAC,aAAqB;IAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;AACzE,CAAC"}
@@ -0,0 +1,42 @@
1
+ import type { AgentPlan as FrameworkAgentPlan } from '@burtson-labs/agent-core';
2
+ import type { Plan } from '../types';
3
+ import type { ITelemetry } from '../hostTypes';
4
+ import type { PlanUpdateState } from './types';
5
+ interface PlanUpdatePayload {
6
+ stepId: string;
7
+ state: PlanUpdateState;
8
+ meta?: {
9
+ summary?: string;
10
+ durationMs?: number;
11
+ tokens?: number;
12
+ };
13
+ }
14
+ export interface PlanContextDeps {
15
+ telemetry: ITelemetry;
16
+ postPlanUpdate(payload: PlanUpdatePayload): Promise<void> | void;
17
+ emitTaskProgress(progress: {
18
+ goalId?: string;
19
+ completed: number;
20
+ total: number;
21
+ }): Promise<void> | void;
22
+ }
23
+ export interface PlanContext {
24
+ mapAgentPlan(agentPlan: FrameworkAgentPlan): Plan;
25
+ applyPlanMetadata(plan: Plan): void;
26
+ resetTaskTracking(): void;
27
+ getTaskProgressSnapshot(): {
28
+ goalId?: string;
29
+ completed: number;
30
+ total: number;
31
+ };
32
+ postPlanUpdate(stepId: string, state: PlanUpdateState, meta?: {
33
+ summary?: string;
34
+ durationMs?: number;
35
+ tokens?: number;
36
+ }): Promise<void>;
37
+ resetPlanUpdates(): void;
38
+ flushPlanUpdates(): void;
39
+ }
40
+ export declare function createPlanContext(deps: PlanContextDeps): PlanContext;
41
+ export {};
42
+ //# sourceMappingURL=planContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planContext.d.ts","sourceRoot":"","sources":["../../src/runtime/planContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,IAAI,kBAAkB,EAGhC,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,IAAI,EAAwB,MAAM,UAAU,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C,UAAU,iBAAiB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,eAAe,CAAC;IACvB,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACnE;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,UAAU,CAAC;IACtB,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACjE,gBAAgB,CAAC,QAAQ,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACzG;AAED,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAClD,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IACpC,iBAAiB,IAAI,IAAI,CAAC;IAC1B,uBAAuB,IAAI;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACjF,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzI,gBAAgB,IAAI,IAAI,CAAC;IACzB,gBAAgB,IAAI,IAAI,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,WAAW,CA4QpE"}