@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.
- package/LICENSE +201 -0
- package/README.md +46 -0
- package/dist/banditEngineProvider.d.ts +48 -0
- package/dist/banditEngineProvider.d.ts.map +1 -0
- package/dist/banditEngineProvider.js +1021 -0
- package/dist/banditEngineProvider.js.map +1 -0
- package/dist/embeddingCache.d.ts +23 -0
- package/dist/embeddingCache.d.ts.map +1 -0
- package/dist/embeddingCache.js +196 -0
- package/dist/embeddingCache.js.map +1 -0
- package/dist/embeddingClient.d.ts +35 -0
- package/dist/embeddingClient.d.ts.map +1 -0
- package/dist/embeddingClient.js +162 -0
- package/dist/embeddingClient.js.map +1 -0
- package/dist/executorAgent.d.ts +7 -0
- package/dist/executorAgent.d.ts.map +1 -0
- package/dist/executorAgent.js +95 -0
- package/dist/executorAgent.js.map +1 -0
- package/dist/extensionSystemPrompt.d.ts +80 -0
- package/dist/extensionSystemPrompt.d.ts.map +1 -0
- package/dist/extensionSystemPrompt.js +208 -0
- package/dist/extensionSystemPrompt.js.map +1 -0
- package/dist/gatewaySearchAdapter.d.ts +69 -0
- package/dist/gatewaySearchAdapter.d.ts.map +1 -0
- package/dist/gatewaySearchAdapter.js +131 -0
- package/dist/gatewaySearchAdapter.js.map +1 -0
- package/dist/goalInference.d.ts +26 -0
- package/dist/goalInference.d.ts.map +1 -0
- package/dist/goalInference.js +605 -0
- package/dist/goalInference.js.map +1 -0
- package/dist/hostTypes.d.ts +86 -0
- package/dist/hostTypes.d.ts.map +1 -0
- package/dist/hostTypes.js +3 -0
- package/dist/hostTypes.js.map +1 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +83 -0
- package/dist/index.js.map +1 -0
- package/dist/internalTypes.d.ts +16 -0
- package/dist/internalTypes.d.ts.map +1 -0
- package/dist/internalTypes.js +20 -0
- package/dist/internalTypes.js.map +1 -0
- package/dist/ollamaEmbeddingClient.d.ts +45 -0
- package/dist/ollamaEmbeddingClient.d.ts.map +1 -0
- package/dist/ollamaEmbeddingClient.js +143 -0
- package/dist/ollamaEmbeddingClient.js.map +1 -0
- package/dist/pdfjsShim.d.ts +2 -0
- package/dist/pdfjsShim.d.ts.map +1 -0
- package/dist/pdfjsShim.js +80 -0
- package/dist/pdfjsShim.js.map +1 -0
- package/dist/runtime/actionRuntime.d.ts +13 -0
- package/dist/runtime/actionRuntime.d.ts.map +1 -0
- package/dist/runtime/actionRuntime.js +15 -0
- package/dist/runtime/actionRuntime.js.map +1 -0
- package/dist/runtime/actionServices.d.ts +72 -0
- package/dist/runtime/actionServices.d.ts.map +1 -0
- package/dist/runtime/actionServices.js +53 -0
- package/dist/runtime/actionServices.js.map +1 -0
- package/dist/runtime/adapters/connectorBus.d.ts +9 -0
- package/dist/runtime/adapters/connectorBus.d.ts.map +1 -0
- package/dist/runtime/adapters/connectorBus.js +20 -0
- package/dist/runtime/adapters/connectorBus.js.map +1 -0
- package/dist/runtime/adapters/fsAdapter.d.ts +6 -0
- package/dist/runtime/adapters/fsAdapter.d.ts.map +1 -0
- package/dist/runtime/adapters/fsAdapter.js +144 -0
- package/dist/runtime/adapters/fsAdapter.js.map +1 -0
- package/dist/runtime/adapters/llmAdapter.d.ts +4 -0
- package/dist/runtime/adapters/llmAdapter.d.ts.map +1 -0
- package/dist/runtime/adapters/llmAdapter.js +12 -0
- package/dist/runtime/adapters/llmAdapter.js.map +1 -0
- package/dist/runtime/adapters/shellAdapter.d.ts +6 -0
- package/dist/runtime/adapters/shellAdapter.d.ts.map +1 -0
- package/dist/runtime/adapters/shellAdapter.js +118 -0
- package/dist/runtime/adapters/shellAdapter.js.map +1 -0
- package/dist/runtime/additionalWrites.d.ts +22 -0
- package/dist/runtime/additionalWrites.d.ts.map +1 -0
- package/dist/runtime/additionalWrites.js +148 -0
- package/dist/runtime/additionalWrites.js.map +1 -0
- package/dist/runtime/artifactManager.d.ts +32 -0
- package/dist/runtime/artifactManager.d.ts.map +1 -0
- package/dist/runtime/artifactManager.js +154 -0
- package/dist/runtime/artifactManager.js.map +1 -0
- package/dist/runtime/autoHealer.d.ts +27 -0
- package/dist/runtime/autoHealer.d.ts.map +1 -0
- package/dist/runtime/autoHealer.js +583 -0
- package/dist/runtime/autoHealer.js.map +1 -0
- package/dist/runtime/changeTracker.d.ts +20 -0
- package/dist/runtime/changeTracker.d.ts.map +1 -0
- package/dist/runtime/changeTracker.js +147 -0
- package/dist/runtime/changeTracker.js.map +1 -0
- package/dist/runtime/contextBuilder.d.ts +85 -0
- package/dist/runtime/contextBuilder.d.ts.map +1 -0
- package/dist/runtime/contextBuilder.js +159 -0
- package/dist/runtime/contextBuilder.js.map +1 -0
- package/dist/runtime/coreRuntime.d.ts +7 -0
- package/dist/runtime/coreRuntime.d.ts.map +1 -0
- package/dist/runtime/coreRuntime.js +173 -0
- package/dist/runtime/coreRuntime.js.map +1 -0
- package/dist/runtime/createStealthRuntime.d.ts +4 -0
- package/dist/runtime/createStealthRuntime.d.ts.map +1 -0
- package/dist/runtime/createStealthRuntime.js +514 -0
- package/dist/runtime/createStealthRuntime.js.map +1 -0
- package/dist/runtime/diagnostics.d.ts +53 -0
- package/dist/runtime/diagnostics.d.ts.map +1 -0
- package/dist/runtime/diagnostics.js +396 -0
- package/dist/runtime/diagnostics.js.map +1 -0
- package/dist/runtime/diagnosticsServices.d.ts +51 -0
- package/dist/runtime/diagnosticsServices.d.ts.map +1 -0
- package/dist/runtime/diagnosticsServices.js +46 -0
- package/dist/runtime/diagnosticsServices.js.map +1 -0
- package/dist/runtime/diffManager.d.ts +20 -0
- package/dist/runtime/diffManager.d.ts.map +1 -0
- package/dist/runtime/diffManager.js +172 -0
- package/dist/runtime/diffManager.js.map +1 -0
- package/dist/runtime/diffPresenter.d.ts +8 -0
- package/dist/runtime/diffPresenter.d.ts.map +1 -0
- package/dist/runtime/diffPresenter.js +57 -0
- package/dist/runtime/diffPresenter.js.map +1 -0
- package/dist/runtime/embeddingClientResolver.d.ts +14 -0
- package/dist/runtime/embeddingClientResolver.d.ts.map +1 -0
- package/dist/runtime/embeddingClientResolver.js +54 -0
- package/dist/runtime/embeddingClientResolver.js.map +1 -0
- package/dist/runtime/embeddingManager.d.ts +22 -0
- package/dist/runtime/embeddingManager.d.ts.map +1 -0
- package/dist/runtime/embeddingManager.js +224 -0
- package/dist/runtime/embeddingManager.js.map +1 -0
- package/dist/runtime/eventBus.d.ts +7 -0
- package/dist/runtime/eventBus.d.ts.map +1 -0
- package/dist/runtime/eventBus.js +28 -0
- package/dist/runtime/eventBus.js.map +1 -0
- package/dist/runtime/executorServices.d.ts +46 -0
- package/dist/runtime/executorServices.d.ts.map +1 -0
- package/dist/runtime/executorServices.js +47 -0
- package/dist/runtime/executorServices.js.map +1 -0
- package/dist/runtime/extractionService.d.ts +11 -0
- package/dist/runtime/extractionService.d.ts.map +1 -0
- package/dist/runtime/extractionService.js +282 -0
- package/dist/runtime/extractionService.js.map +1 -0
- package/dist/runtime/feedbackService.d.ts +12 -0
- package/dist/runtime/feedbackService.d.ts.map +1 -0
- package/dist/runtime/feedbackService.js +111 -0
- package/dist/runtime/feedbackService.js.map +1 -0
- package/dist/runtime/goalEngine.d.ts +10 -0
- package/dist/runtime/goalEngine.d.ts.map +1 -0
- package/dist/runtime/goalEngine.js +429 -0
- package/dist/runtime/goalEngine.js.map +1 -0
- package/dist/runtime/goalFlowServices.d.ts +49 -0
- package/dist/runtime/goalFlowServices.d.ts.map +1 -0
- package/dist/runtime/goalFlowServices.js +45 -0
- package/dist/runtime/goalFlowServices.js.map +1 -0
- package/dist/runtime/goalReplay.d.ts +33 -0
- package/dist/runtime/goalReplay.d.ts.map +1 -0
- package/dist/runtime/goalReplay.js +58 -0
- package/dist/runtime/goalReplay.js.map +1 -0
- package/dist/runtime/goalRunner.d.ts +35 -0
- package/dist/runtime/goalRunner.d.ts.map +1 -0
- package/dist/runtime/goalRunner.js +42 -0
- package/dist/runtime/goalRunner.js.map +1 -0
- package/dist/runtime/healingEngine.d.ts +72 -0
- package/dist/runtime/healingEngine.d.ts.map +1 -0
- package/dist/runtime/healingEngine.js +969 -0
- package/dist/runtime/healingEngine.js.map +1 -0
- package/dist/runtime/healingServices.d.ts +62 -0
- package/dist/runtime/healingServices.d.ts.map +1 -0
- package/dist/runtime/healingServices.js +45 -0
- package/dist/runtime/healingServices.js.map +1 -0
- package/dist/runtime/helpers.d.ts +22 -0
- package/dist/runtime/helpers.d.ts.map +1 -0
- package/dist/runtime/helpers.js +694 -0
- package/dist/runtime/helpers.js.map +1 -0
- package/dist/runtime/hosts/actionHost.d.ts +82 -0
- package/dist/runtime/hosts/actionHost.d.ts.map +1 -0
- package/dist/runtime/hosts/actionHost.js +61 -0
- package/dist/runtime/hosts/actionHost.js.map +1 -0
- package/dist/runtime/hosts/baseServices.d.ts +51 -0
- package/dist/runtime/hosts/baseServices.d.ts.map +1 -0
- package/dist/runtime/hosts/baseServices.js +73 -0
- package/dist/runtime/hosts/baseServices.js.map +1 -0
- package/dist/runtime/hosts/embeddingServices.d.ts +25 -0
- package/dist/runtime/hosts/embeddingServices.d.ts.map +1 -0
- package/dist/runtime/hosts/embeddingServices.js +34 -0
- package/dist/runtime/hosts/embeddingServices.js.map +1 -0
- package/dist/runtime/hosts/goalFlowHost.d.ts +34 -0
- package/dist/runtime/hosts/goalFlowHost.d.ts.map +1 -0
- package/dist/runtime/hosts/goalFlowHost.js +35 -0
- package/dist/runtime/hosts/goalFlowHost.js.map +1 -0
- package/dist/runtime/hosts/goalFlowRuntime.d.ts +41 -0
- package/dist/runtime/hosts/goalFlowRuntime.d.ts.map +1 -0
- package/dist/runtime/hosts/goalFlowRuntime.js +31 -0
- package/dist/runtime/hosts/goalFlowRuntime.js.map +1 -0
- package/dist/runtime/hosts/providerHost.d.ts +19 -0
- package/dist/runtime/hosts/providerHost.d.ts.map +1 -0
- package/dist/runtime/hosts/providerHost.js +18 -0
- package/dist/runtime/hosts/providerHost.js.map +1 -0
- package/dist/runtime/hosts/rewriteHost.d.ts +84 -0
- package/dist/runtime/hosts/rewriteHost.d.ts.map +1 -0
- package/dist/runtime/hosts/rewriteHost.js +64 -0
- package/dist/runtime/hosts/rewriteHost.js.map +1 -0
- package/dist/runtime/hosts/workspaceHost.d.ts +113 -0
- package/dist/runtime/hosts/workspaceHost.d.ts.map +1 -0
- package/dist/runtime/hosts/workspaceHost.js +76 -0
- package/dist/runtime/hosts/workspaceHost.js.map +1 -0
- package/dist/runtime/index.d.ts +78 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +95 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/insight.d.ts +16 -0
- package/dist/runtime/insight.d.ts.map +1 -0
- package/dist/runtime/insight.js +11 -0
- package/dist/runtime/insight.js.map +1 -0
- package/dist/runtime/internalActions.d.ts +16 -0
- package/dist/runtime/internalActions.d.ts.map +1 -0
- package/dist/runtime/internalActions.js +302 -0
- package/dist/runtime/internalActions.js.map +1 -0
- package/dist/runtime/modelBehavior.d.ts +69 -0
- package/dist/runtime/modelBehavior.d.ts.map +1 -0
- package/dist/runtime/modelBehavior.js +514 -0
- package/dist/runtime/modelBehavior.js.map +1 -0
- package/dist/runtime/modelCapabilities.d.ts +139 -0
- package/dist/runtime/modelCapabilities.d.ts.map +1 -0
- package/dist/runtime/modelCapabilities.js +458 -0
- package/dist/runtime/modelCapabilities.js.map +1 -0
- package/dist/runtime/modelsDevCatalog.d.ts +34 -0
- package/dist/runtime/modelsDevCatalog.d.ts.map +1 -0
- package/dist/runtime/modelsDevCatalog.js +263 -0
- package/dist/runtime/modelsDevCatalog.js.map +1 -0
- package/dist/runtime/pendingInference.d.ts +18 -0
- package/dist/runtime/pendingInference.d.ts.map +1 -0
- package/dist/runtime/pendingInference.js +121 -0
- package/dist/runtime/pendingInference.js.map +1 -0
- package/dist/runtime/persistence.d.ts +21 -0
- package/dist/runtime/persistence.d.ts.map +1 -0
- package/dist/runtime/persistence.js +73 -0
- package/dist/runtime/persistence.js.map +1 -0
- package/dist/runtime/planContext.d.ts +42 -0
- package/dist/runtime/planContext.d.ts.map +1 -0
- package/dist/runtime/planContext.js +246 -0
- package/dist/runtime/planContext.js.map +1 -0
- package/dist/runtime/planGenerator.d.ts +21 -0
- package/dist/runtime/planGenerator.d.ts.map +1 -0
- package/dist/runtime/planGenerator.js +89 -0
- package/dist/runtime/planGenerator.js.map +1 -0
- package/dist/runtime/planPreparation.d.ts +64 -0
- package/dist/runtime/planPreparation.d.ts.map +1 -0
- package/dist/runtime/planPreparation.js +173 -0
- package/dist/runtime/planPreparation.js.map +1 -0
- package/dist/runtime/projectSummary.d.ts +3 -0
- package/dist/runtime/projectSummary.d.ts.map +1 -0
- package/dist/runtime/projectSummary.js +42 -0
- package/dist/runtime/projectSummary.js.map +1 -0
- package/dist/runtime/providerSettings.d.ts +28 -0
- package/dist/runtime/providerSettings.d.ts.map +1 -0
- package/dist/runtime/providerSettings.js +93 -0
- package/dist/runtime/providerSettings.js.map +1 -0
- package/dist/runtime/pythonActions.d.ts +78 -0
- package/dist/runtime/pythonActions.d.ts.map +1 -0
- package/dist/runtime/pythonActions.js +392 -0
- package/dist/runtime/pythonActions.js.map +1 -0
- package/dist/runtime/pythonBridge.d.ts +13 -0
- package/dist/runtime/pythonBridge.d.ts.map +1 -0
- package/dist/runtime/pythonBridge.js +117 -0
- package/dist/runtime/pythonBridge.js.map +1 -0
- package/dist/runtime/rewriteEngine.d.ts +46 -0
- package/dist/runtime/rewriteEngine.d.ts.map +1 -0
- package/dist/runtime/rewriteEngine.js +259 -0
- package/dist/runtime/rewriteEngine.js.map +1 -0
- package/dist/runtime/rewriteGenerator.d.ts +29 -0
- package/dist/runtime/rewriteGenerator.d.ts.map +1 -0
- package/dist/runtime/rewriteGenerator.js +1527 -0
- package/dist/runtime/rewriteGenerator.js.map +1 -0
- package/dist/runtime/rewriteHydration.d.ts +22 -0
- package/dist/runtime/rewriteHydration.d.ts.map +1 -0
- package/dist/runtime/rewriteHydration.js +265 -0
- package/dist/runtime/rewriteHydration.js.map +1 -0
- package/dist/runtime/rewriteOrchestration.d.ts +105 -0
- package/dist/runtime/rewriteOrchestration.d.ts.map +1 -0
- package/dist/runtime/rewriteOrchestration.js +130 -0
- package/dist/runtime/rewriteOrchestration.js.map +1 -0
- package/dist/runtime/rewritePayload.d.ts +18 -0
- package/dist/runtime/rewritePayload.d.ts.map +1 -0
- package/dist/runtime/rewritePayload.js +166 -0
- package/dist/runtime/rewritePayload.js.map +1 -0
- package/dist/runtime/rewriteRuntime.d.ts +13 -0
- package/dist/runtime/rewriteRuntime.d.ts.map +1 -0
- package/dist/runtime/rewriteRuntime.js +21 -0
- package/dist/runtime/rewriteRuntime.js.map +1 -0
- package/dist/runtime/rewriteServices.d.ts +70 -0
- package/dist/runtime/rewriteServices.d.ts.map +1 -0
- package/dist/runtime/rewriteServices.js +50 -0
- package/dist/runtime/rewriteServices.js.map +1 -0
- package/dist/runtime/runtimeHelpers.d.ts +9 -0
- package/dist/runtime/runtimeHelpers.d.ts.map +1 -0
- package/dist/runtime/runtimeHelpers.js +86 -0
- package/dist/runtime/runtimeHelpers.js.map +1 -0
- package/dist/runtime/sessionData.d.ts +4 -0
- package/dist/runtime/sessionData.d.ts.map +1 -0
- package/dist/runtime/sessionData.js +45 -0
- package/dist/runtime/sessionData.js.map +1 -0
- package/dist/runtime/sessionRuntime.d.ts +47 -0
- package/dist/runtime/sessionRuntime.d.ts.map +1 -0
- package/dist/runtime/sessionRuntime.js +128 -0
- package/dist/runtime/sessionRuntime.js.map +1 -0
- package/dist/runtime/stealthRuntimeTypes.d.ts +12 -0
- package/dist/runtime/stealthRuntimeTypes.d.ts.map +1 -0
- package/dist/runtime/stealthRuntimeTypes.js +3 -0
- package/dist/runtime/stealthRuntimeTypes.js.map +1 -0
- package/dist/runtime/stepExecutor.d.ts +22 -0
- package/dist/runtime/stepExecutor.d.ts.map +1 -0
- package/dist/runtime/stepExecutor.js +83 -0
- package/dist/runtime/stepExecutor.js.map +1 -0
- package/dist/runtime/stepLifecycle.d.ts +29 -0
- package/dist/runtime/stepLifecycle.d.ts.map +1 -0
- package/dist/runtime/stepLifecycle.js +122 -0
- package/dist/runtime/stepLifecycle.js.map +1 -0
- package/dist/runtime/stepMetadata.d.ts +6 -0
- package/dist/runtime/stepMetadata.d.ts.map +1 -0
- package/dist/runtime/stepMetadata.js +87 -0
- package/dist/runtime/stepMetadata.js.map +1 -0
- package/dist/runtime/taskQueue.d.ts +16 -0
- package/dist/runtime/taskQueue.d.ts.map +1 -0
- package/dist/runtime/taskQueue.js +103 -0
- package/dist/runtime/taskQueue.js.map +1 -0
- package/dist/runtime/telemetry.d.ts +6 -0
- package/dist/runtime/telemetry.d.ts.map +1 -0
- package/dist/runtime/telemetry.js +42 -0
- package/dist/runtime/telemetry.js.map +1 -0
- package/dist/runtime/telemetryHub.d.ts +61 -0
- package/dist/runtime/telemetryHub.d.ts.map +1 -0
- package/dist/runtime/telemetryHub.js +190 -0
- package/dist/runtime/telemetryHub.js.map +1 -0
- package/dist/runtime/textSanitizer.d.ts +4 -0
- package/dist/runtime/textSanitizer.d.ts.map +1 -0
- package/dist/runtime/textSanitizer.js +86 -0
- package/dist/runtime/textSanitizer.js.map +1 -0
- package/dist/runtime/typeCheckRunner.d.ts +33 -0
- package/dist/runtime/typeCheckRunner.d.ts.map +1 -0
- package/dist/runtime/typeCheckRunner.js +357 -0
- package/dist/runtime/typeCheckRunner.js.map +1 -0
- package/dist/runtime/types.d.ts +334 -0
- package/dist/runtime/types.d.ts.map +1 -0
- package/dist/runtime/types.js +3 -0
- package/dist/runtime/types.js.map +1 -0
- package/dist/runtime/typescriptValidator.d.ts +18 -0
- package/dist/runtime/typescriptValidator.d.ts.map +1 -0
- package/dist/runtime/typescriptValidator.js +363 -0
- package/dist/runtime/typescriptValidator.js.map +1 -0
- package/dist/runtime/undoManager.d.ts +7 -0
- package/dist/runtime/undoManager.d.ts.map +1 -0
- package/dist/runtime/undoManager.js +56 -0
- package/dist/runtime/undoManager.js.map +1 -0
- package/dist/runtime/validationController.d.ts +11 -0
- package/dist/runtime/validationController.d.ts.map +1 -0
- package/dist/runtime/validationController.js +29 -0
- package/dist/runtime/validationController.js.map +1 -0
- package/dist/runtime/validationUtils.d.ts +17 -0
- package/dist/runtime/validationUtils.d.ts.map +1 -0
- package/dist/runtime/validationUtils.js +121 -0
- package/dist/runtime/validationUtils.js.map +1 -0
- package/dist/runtime/workspaceAssertions.d.ts +21 -0
- package/dist/runtime/workspaceAssertions.d.ts.map +1 -0
- package/dist/runtime/workspaceAssertions.js +183 -0
- package/dist/runtime/workspaceAssertions.js.map +1 -0
- package/dist/runtime/workspaceIndexService.d.ts +24 -0
- package/dist/runtime/workspaceIndexService.d.ts.map +1 -0
- package/dist/runtime/workspaceIndexService.js +133 -0
- package/dist/runtime/workspaceIndexService.js.map +1 -0
- package/dist/runtime/workspaceIndexer.d.ts +21 -0
- package/dist/runtime/workspaceIndexer.d.ts.map +1 -0
- package/dist/runtime/workspaceIndexer.js +95 -0
- package/dist/runtime/workspaceIndexer.js.map +1 -0
- package/dist/runtime/workspacePackages.d.ts +22 -0
- package/dist/runtime/workspacePackages.d.ts.map +1 -0
- package/dist/runtime/workspacePackages.js +198 -0
- package/dist/runtime/workspacePackages.js.map +1 -0
- package/dist/runtime/workspaceRuntime.d.ts +58 -0
- package/dist/runtime/workspaceRuntime.d.ts.map +1 -0
- package/dist/runtime/workspaceRuntime.js +86 -0
- package/dist/runtime/workspaceRuntime.js.map +1 -0
- package/dist/runtime/workspaceService.d.ts +14 -0
- package/dist/runtime/workspaceService.d.ts.map +1 -0
- package/dist/runtime/workspaceService.js +88 -0
- package/dist/runtime/workspaceService.js.map +1 -0
- package/dist/runtime/workspaceServices.d.ts +114 -0
- package/dist/runtime/workspaceServices.d.ts.map +1 -0
- package/dist/runtime/workspaceServices.js +114 -0
- package/dist/runtime/workspaceServices.js.map +1 -0
- package/dist/runtime/writeServices.d.ts +34 -0
- package/dist/runtime/writeServices.d.ts.map +1 -0
- package/dist/runtime/writeServices.js +32 -0
- package/dist/runtime/writeServices.js.map +1 -0
- package/dist/sharedPromptSections.d.ts +58 -0
- package/dist/sharedPromptSections.d.ts.map +1 -0
- package/dist/sharedPromptSections.js +94 -0
- package/dist/sharedPromptSections.js.map +1 -0
- package/dist/statusTypes.d.ts +13 -0
- package/dist/statusTypes.d.ts.map +1 -0
- package/dist/statusTypes.js +3 -0
- package/dist/statusTypes.js.map +1 -0
- package/dist/streamIdleTimeout.d.ts +38 -0
- package/dist/streamIdleTimeout.d.ts.map +1 -0
- package/dist/streamIdleTimeout.js +44 -0
- package/dist/streamIdleTimeout.js.map +1 -0
- package/dist/types/bandit.d.ts +113 -0
- package/dist/types/bandit.d.ts.map +1 -0
- package/dist/types/bandit.js +3 -0
- package/dist/types/bandit.js.map +1 -0
- package/dist/types.d.ts +152 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/workspaceIndex.d.ts +44 -0
- package/dist/workspaceIndex.d.ts.map +1 -0
- package/dist/workspaceIndex.js +258 -0
- package/dist/workspaceIndex.js.map +1 -0
- 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"}
|