@probelabs/visor 0.1.127 → 0.1.129
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/README.md +31 -1
- package/defaults/.visor.yaml +420 -0
- package/dist/ai-review-service.d.ts +1 -0
- package/dist/ai-review-service.d.ts.map +1 -1
- package/dist/cli-main.d.ts.map +1 -1
- package/dist/config.d.ts +4 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/daemon.js +19 -0
- package/dist/defaults/.visor.yaml +420 -0
- package/dist/docs/commands.md +1 -1
- package/dist/docs/debugging.md +133 -0
- package/dist/docs/dev-playbook.md +10 -0
- package/dist/docs/index.md +1 -0
- package/dist/docs/scheduler.md +503 -0
- package/dist/docs/slack-integration.md +21 -0
- package/dist/docs/timeouts.md +1 -1
- package/dist/docs/workflow-creation-guide.md +39 -0
- package/dist/examples/README.md +30 -0
- package/dist/examples/calculator-config.yaml +4 -4
- package/dist/examples/sandbox-basic.yaml +18 -0
- package/dist/examples/sandbox-cache.yaml +32 -0
- package/dist/examples/sandbox-dockerfile-inline.yaml +22 -0
- package/dist/examples/sandbox-env-passthrough.yaml +26 -0
- package/dist/examples/sandbox-multi-env.yaml +27 -0
- package/dist/examples/sandbox-read-only.yaml +33 -0
- package/dist/examples/scheduler-example.yaml +118 -0
- package/dist/frontends/host.d.ts.map +1 -1
- package/dist/frontends/slack-frontend.d.ts.map +1 -1
- package/dist/generated/config-schema.d.ts +230 -9
- package/dist/generated/config-schema.d.ts.map +1 -1
- package/dist/index.js +13676 -1604
- package/dist/mcp-server.d.ts +8 -8
- package/dist/{traces/run-2026-02-01T09-59-08-165Z.ndjson → output/traces/run-2026-02-08T18-16-04-160Z.ndjson} +84 -84
- package/dist/{traces/run-2026-02-01T09-59-52-595Z.ndjson → output/traces/run-2026-02-08T18-16-51-253Z.ndjson} +1029 -1029
- package/dist/providers/ai-check-provider.d.ts +16 -0
- package/dist/providers/ai-check-provider.d.ts.map +1 -1
- package/dist/providers/check-provider.interface.d.ts +5 -0
- package/dist/providers/check-provider.interface.d.ts.map +1 -1
- package/dist/providers/command-check-provider.d.ts.map +1 -1
- package/dist/providers/log-check-provider.d.ts.map +1 -1
- package/dist/providers/mcp-check-provider.d.ts +3 -0
- package/dist/providers/mcp-check-provider.d.ts.map +1 -1
- package/dist/providers/mcp-custom-sse-server.d.ts +22 -2
- package/dist/providers/mcp-custom-sse-server.d.ts.map +1 -1
- package/dist/providers/workflow-check-provider.d.ts.map +1 -1
- package/dist/providers/workflow-tool-executor.d.ts +2 -0
- package/dist/providers/workflow-tool-executor.d.ts.map +1 -1
- package/dist/sandbox/cache-volume-manager.d.ts +48 -0
- package/dist/sandbox/cache-volume-manager.d.ts.map +1 -0
- package/dist/sandbox/check-runner.d.ts +25 -0
- package/dist/sandbox/check-runner.d.ts.map +1 -0
- package/dist/sandbox/docker-compose-sandbox.d.ts +25 -0
- package/dist/sandbox/docker-compose-sandbox.d.ts.map +1 -0
- package/dist/sandbox/docker-image-sandbox.d.ts +32 -0
- package/dist/sandbox/docker-image-sandbox.d.ts.map +1 -0
- package/dist/sandbox/env-filter.d.ts +19 -0
- package/dist/sandbox/env-filter.d.ts.map +1 -0
- package/dist/sandbox/index.d.ts +9 -0
- package/dist/sandbox/index.d.ts.map +1 -0
- package/dist/sandbox/sandbox-manager.d.ts +39 -0
- package/dist/sandbox/sandbox-manager.d.ts.map +1 -0
- package/dist/sandbox/sandbox-telemetry.d.ts +9 -0
- package/dist/sandbox/sandbox-telemetry.d.ts.map +1 -0
- package/dist/sandbox/trace-ingester.d.ts +19 -0
- package/dist/sandbox/trace-ingester.d.ts.map +1 -0
- package/dist/sandbox/types.d.ts +149 -0
- package/dist/sandbox/types.d.ts.map +1 -0
- package/dist/scheduler/cli-handler.d.ts +6 -0
- package/dist/scheduler/cli-handler.d.ts.map +1 -0
- package/dist/scheduler/index.d.ts +14 -0
- package/dist/scheduler/index.d.ts.map +1 -0
- package/dist/scheduler/schedule-parser.d.ts +34 -0
- package/dist/scheduler/schedule-parser.d.ts.map +1 -0
- package/dist/scheduler/schedule-store.d.ts +182 -0
- package/dist/scheduler/schedule-store.d.ts.map +1 -0
- package/dist/scheduler/schedule-tool.d.ts +137 -0
- package/dist/scheduler/schedule-tool.d.ts.map +1 -0
- package/dist/scheduler/scheduler.d.ts +195 -0
- package/dist/scheduler/scheduler.d.ts.map +1 -0
- package/dist/sdk/check-provider-registry-ACRGIYOB.mjs +28 -0
- package/dist/sdk/check-provider-registry-VYHKFHK2.mjs +28 -0
- package/dist/sdk/{chunk-CNX7V5JK.mjs → chunk-25IC7KXZ.mjs} +2 -2
- package/dist/sdk/{chunk-IHZOSIF4.mjs → chunk-2KB35MB7.mjs} +3 -3
- package/dist/sdk/{chunk-HQL734ZI.mjs → chunk-6W75IMDC.mjs} +3 -3
- package/dist/sdk/{chunk-XWJPT5KQ.mjs → chunk-7YSOINAQ.mjs} +392 -18
- package/dist/sdk/chunk-7YSOINAQ.mjs.map +1 -0
- package/dist/sdk/{chunk-3OMWVM6J.mjs → chunk-B7BVQM5K.mjs} +2 -2
- package/dist/sdk/chunk-BDGUM6BA.mjs +38825 -0
- package/dist/sdk/chunk-BDGUM6BA.mjs.map +1 -0
- package/dist/sdk/{chunk-VW2GBXQT.mjs → chunk-D5KI4YQ4.mjs} +3 -3
- package/dist/sdk/chunk-DGZPPGJJ.mjs +38825 -0
- package/dist/sdk/chunk-DGZPPGJJ.mjs.map +1 -0
- package/dist/sdk/chunk-H5BOW5CR.mjs +91 -0
- package/dist/sdk/chunk-H5BOW5CR.mjs.map +1 -0
- package/dist/sdk/{chunk-YSN4G6CI.mjs → chunk-HEX3RL32.mjs} +81 -3
- package/dist/sdk/{chunk-YSN4G6CI.mjs.map → chunk-HEX3RL32.mjs.map} +1 -1
- package/dist/sdk/{chunk-ZYAUYXSW.mjs → chunk-J5RGJQ53.mjs} +14 -3
- package/dist/sdk/{chunk-ZYAUYXSW.mjs.map → chunk-J5RGJQ53.mjs.map} +1 -1
- package/dist/sdk/{chunk-WMJKH4XE.mjs → chunk-J7LXIPZS.mjs} +16 -1
- package/dist/sdk/{chunk-EXFGO4FX.mjs → chunk-KFKHU6CM.mjs} +2 -2
- package/dist/sdk/{chunk-MPS4HVQI.mjs → chunk-N7HO6KKC.mjs} +8 -8
- package/dist/sdk/{chunk-O5EZDNYL.mjs → chunk-NCWIZVOT.mjs} +2 -2
- package/dist/sdk/{chunk-3NMLT3YS.mjs → chunk-PO7X5XI7.mjs} +3 -3
- package/dist/sdk/{chunk-BHOKBQPB.mjs → chunk-R5Z7YWPB.mjs} +5 -5
- package/dist/sdk/{chunk-EORMDOZU.mjs → chunk-SGS2VMEL.mjs} +7 -7
- package/dist/sdk/{chunk-BOVFH3LI.mjs → chunk-VF6XIUE4.mjs} +21 -10
- package/dist/sdk/chunk-VF6XIUE4.mjs.map +1 -0
- package/dist/sdk/{chunk-J2QWVDXK.mjs → chunk-XDLQ3UNF.mjs} +3 -3
- package/dist/sdk/{chunk-S2RUE2RG.mjs → chunk-XR7XXGL7.mjs} +3 -3
- package/dist/sdk/{chunk-NAW3DB3I.mjs → chunk-XXAEN5KU.mjs} +3 -3
- package/dist/sdk/command-executor-DVVXERLR.mjs +14 -0
- package/dist/sdk/config-7VTT64SQ.mjs +16 -0
- package/dist/sdk/config-merger-RKCZJQ44.mjs +10 -0
- package/dist/sdk/event-bus-5K3Y2FCS.mjs +43 -0
- package/dist/sdk/{event-bus-5BEVPQ6T.mjs.map → event-bus-5K3Y2FCS.mjs.map} +1 -1
- package/dist/sdk/failure-condition-evaluator-4WMDF4Q3.mjs +17 -0
- package/dist/sdk/git-repository-analyzer-QFMW6WIS.mjs +471 -0
- package/dist/sdk/git-repository-analyzer-QFMW6WIS.mjs.map +1 -0
- package/dist/sdk/{github-frontend-5PCKKHVC.mjs → github-frontend-3N2NLO66.mjs} +520 -588
- package/dist/sdk/github-frontend-3N2NLO66.mjs.map +1 -0
- package/dist/sdk/host-ONVMEHAA.mjs +63 -0
- package/dist/sdk/host-ONVMEHAA.mjs.map +1 -0
- package/dist/sdk/{liquid-extensions-I7O7KMHF.mjs → liquid-extensions-5IZLTFSZ.mjs} +8 -8
- package/dist/sdk/memory-store-3N4AZCYB.mjs +12 -0
- package/dist/sdk/{metrics-7PP3EJUH.mjs → metrics-GXQ2EDXA.mjs} +4 -4
- package/dist/sdk/ndjson-sink-FD2PSXGD.mjs +52 -0
- package/dist/sdk/{ndjson-sink-B4V4NTAQ.mjs.map → ndjson-sink-FD2PSXGD.mjs.map} +1 -1
- package/dist/sdk/{prompt-state-EZYOUG75.mjs → prompt-state-YHGXB2OA.mjs} +5 -5
- package/dist/sdk/{renderer-schema-CKFB5NDB.mjs → renderer-schema-CMXOLNIG.mjs} +4 -4
- package/dist/sdk/routing-S3Y7T2X3.mjs +24 -0
- package/dist/sdk/sdk.d.mts +212 -4
- package/dist/sdk/sdk.d.ts +212 -4
- package/dist/sdk/sdk.js +26927 -6264
- package/dist/sdk/sdk.js.map +1 -1
- package/dist/sdk/sdk.mjs +23 -1278
- package/dist/sdk/sdk.mjs.map +1 -1
- package/dist/sdk/session-registry-6PV6SGEJ.mjs +10 -0
- package/dist/sdk/slack-frontend-R3M2CACB.mjs +899 -0
- package/dist/sdk/slack-frontend-R3M2CACB.mjs.map +1 -0
- package/dist/sdk/{trace-helpers-VP6QYVBX.mjs → trace-helpers-YHNPC7MR.mjs} +4 -4
- package/dist/sdk/tracer-init-XPRWKMZT.mjs +10 -0
- package/dist/sdk/tui-frontend-S546M7A7.mjs +281 -0
- package/dist/sdk/tui-frontend-S546M7A7.mjs.map +1 -0
- package/dist/sdk/workflow-check-provider-4F3432ZP.mjs +28 -0
- package/dist/sdk/workflow-check-provider-A44PBPG2.mjs +28 -0
- package/dist/sdk/workflow-check-provider-A44PBPG2.mjs.map +1 -0
- package/dist/sdk/workflow-registry-ZAYYXLEP.mjs +12 -0
- package/dist/sdk/workflow-registry-ZAYYXLEP.mjs.map +1 -0
- package/dist/slack/client.d.ts +28 -0
- package/dist/slack/client.d.ts.map +1 -1
- package/dist/slack/schedule-tool-handler.d.ts +46 -0
- package/dist/slack/schedule-tool-handler.d.ts.map +1 -0
- package/dist/slack/slack-output-adapter.d.ts +44 -0
- package/dist/slack/slack-output-adapter.d.ts.map +1 -0
- package/dist/slack/socket-runner.d.ts +22 -0
- package/dist/slack/socket-runner.d.ts.map +1 -1
- package/dist/state-machine/dispatch/execution-invoker.d.ts.map +1 -1
- package/dist/state-machine/dispatch/foreach-processor.d.ts.map +1 -1
- package/dist/state-machine/dispatch/sandbox-routing.d.ts +21 -0
- package/dist/state-machine/dispatch/sandbox-routing.d.ts.map +1 -0
- package/dist/state-machine/states/level-dispatch.d.ts.map +1 -1
- package/dist/state-machine-execution-engine.d.ts.map +1 -1
- package/dist/test-runner/index.d.ts +5 -0
- package/dist/test-runner/index.d.ts.map +1 -1
- package/dist/{output/traces/run-2026-02-01T09-59-08-165Z.ndjson → traces/run-2026-02-08T18-16-04-160Z.ndjson} +84 -84
- package/dist/{output/traces/run-2026-02-01T09-59-52-595Z.ndjson → traces/run-2026-02-08T18-16-51-253Z.ndjson} +1029 -1029
- package/dist/tui/chat-runner.d.ts +39 -0
- package/dist/tui/chat-runner.d.ts.map +1 -0
- package/dist/tui/chat-state.d.ts +56 -0
- package/dist/tui/chat-state.d.ts.map +1 -0
- package/dist/tui/chat-tui.d.ts +69 -0
- package/dist/tui/chat-tui.d.ts.map +1 -0
- package/dist/tui/components/chat-box.d.ts +33 -0
- package/dist/tui/components/chat-box.d.ts.map +1 -0
- package/dist/tui/components/input-bar.d.ts +50 -0
- package/dist/tui/components/input-bar.d.ts.map +1 -0
- package/dist/tui/components/status-bar.d.ts +31 -0
- package/dist/tui/components/status-bar.d.ts.map +1 -0
- package/dist/tui/components/trace-viewer.d.ts +73 -0
- package/dist/tui/components/trace-viewer.d.ts.map +1 -0
- package/dist/tui/index.d.ts +14 -0
- package/dist/tui/index.d.ts.map +1 -0
- package/dist/tui/tui-frontend.d.ts +29 -0
- package/dist/tui/tui-frontend.d.ts.map +1 -0
- package/dist/types/bot.d.ts +35 -0
- package/dist/types/bot.d.ts.map +1 -1
- package/dist/types/config.d.ts +152 -3
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/engine.d.ts +3 -0
- package/dist/types/engine.d.ts.map +1 -1
- package/dist/utils/sandbox.d.ts.map +1 -1
- package/dist/utils/workspace-manager.d.ts +22 -2
- package/dist/utils/workspace-manager.d.ts.map +1 -1
- package/dist/utils/worktree-manager.d.ts +2 -1
- package/dist/utils/worktree-manager.d.ts.map +1 -1
- package/package.json +4 -2
- package/dist/docs/NPM_USAGE.md +0 -281
- package/dist/generated/config-schema.json +0 -2161
- package/dist/sdk/check-provider-registry-CVUONJ5A.mjs +0 -28
- package/dist/sdk/chunk-BOVFH3LI.mjs.map +0 -1
- package/dist/sdk/chunk-TS6BUNAI.mjs +0 -17722
- package/dist/sdk/chunk-TS6BUNAI.mjs.map +0 -1
- package/dist/sdk/chunk-XWJPT5KQ.mjs.map +0 -1
- package/dist/sdk/command-executor-Q7MHJKZJ.mjs +0 -14
- package/dist/sdk/config-DXX64GD3.mjs +0 -16
- package/dist/sdk/config-merger-PX3WIT57.mjs +0 -10
- package/dist/sdk/event-bus-5BEVPQ6T.mjs +0 -35
- package/dist/sdk/failure-condition-evaluator-G4HMJPXF.mjs +0 -17
- package/dist/sdk/git-repository-analyzer-HJC4MYW4.mjs +0 -458
- package/dist/sdk/git-repository-analyzer-HJC4MYW4.mjs.map +0 -1
- package/dist/sdk/github-frontend-5PCKKHVC.mjs.map +0 -1
- package/dist/sdk/host-H3AWNZ2F.mjs +0 -52
- package/dist/sdk/host-H3AWNZ2F.mjs.map +0 -1
- package/dist/sdk/memory-store-RW5N2NGJ.mjs +0 -12
- package/dist/sdk/ndjson-sink-B4V4NTAQ.mjs +0 -44
- package/dist/sdk/routing-QHTGDIXF.mjs +0 -24
- package/dist/sdk/session-registry-4E6YRQ77.mjs +0 -10
- package/dist/sdk/slack-frontend-JUT3TYVC.mjs +0 -821
- package/dist/sdk/slack-frontend-JUT3TYVC.mjs.map +0 -1
- package/dist/sdk/tracer-init-GSLPPLCD.mjs +0 -10
- package/dist/sdk/workflow-check-provider-3IWBAZP7.mjs +0 -28
- package/dist/sdk/workflow-registry-KFWSDSLM.mjs +0 -12
- package/dist/tui.d.ts +0 -51
- package/dist/tui.d.ts.map +0 -1
- /package/dist/sdk/{check-provider-registry-CVUONJ5A.mjs.map → check-provider-registry-ACRGIYOB.mjs.map} +0 -0
- /package/dist/sdk/{chunk-WMJKH4XE.mjs.map → check-provider-registry-VYHKFHK2.mjs.map} +0 -0
- /package/dist/sdk/{chunk-CNX7V5JK.mjs.map → chunk-25IC7KXZ.mjs.map} +0 -0
- /package/dist/sdk/{chunk-IHZOSIF4.mjs.map → chunk-2KB35MB7.mjs.map} +0 -0
- /package/dist/sdk/{chunk-HQL734ZI.mjs.map → chunk-6W75IMDC.mjs.map} +0 -0
- /package/dist/sdk/{chunk-3OMWVM6J.mjs.map → chunk-B7BVQM5K.mjs.map} +0 -0
- /package/dist/sdk/{chunk-VW2GBXQT.mjs.map → chunk-D5KI4YQ4.mjs.map} +0 -0
- /package/dist/sdk/{command-executor-Q7MHJKZJ.mjs.map → chunk-J7LXIPZS.mjs.map} +0 -0
- /package/dist/sdk/{chunk-EXFGO4FX.mjs.map → chunk-KFKHU6CM.mjs.map} +0 -0
- /package/dist/sdk/{chunk-MPS4HVQI.mjs.map → chunk-N7HO6KKC.mjs.map} +0 -0
- /package/dist/sdk/{chunk-O5EZDNYL.mjs.map → chunk-NCWIZVOT.mjs.map} +0 -0
- /package/dist/sdk/{chunk-3NMLT3YS.mjs.map → chunk-PO7X5XI7.mjs.map} +0 -0
- /package/dist/sdk/{chunk-BHOKBQPB.mjs.map → chunk-R5Z7YWPB.mjs.map} +0 -0
- /package/dist/sdk/{chunk-EORMDOZU.mjs.map → chunk-SGS2VMEL.mjs.map} +0 -0
- /package/dist/sdk/{chunk-J2QWVDXK.mjs.map → chunk-XDLQ3UNF.mjs.map} +0 -0
- /package/dist/sdk/{chunk-S2RUE2RG.mjs.map → chunk-XR7XXGL7.mjs.map} +0 -0
- /package/dist/sdk/{chunk-NAW3DB3I.mjs.map → chunk-XXAEN5KU.mjs.map} +0 -0
- /package/dist/sdk/{config-DXX64GD3.mjs.map → command-executor-DVVXERLR.mjs.map} +0 -0
- /package/dist/sdk/{config-merger-PX3WIT57.mjs.map → config-7VTT64SQ.mjs.map} +0 -0
- /package/dist/sdk/{failure-condition-evaluator-G4HMJPXF.mjs.map → config-merger-RKCZJQ44.mjs.map} +0 -0
- /package/dist/sdk/{liquid-extensions-I7O7KMHF.mjs.map → failure-condition-evaluator-4WMDF4Q3.mjs.map} +0 -0
- /package/dist/sdk/{memory-store-RW5N2NGJ.mjs.map → liquid-extensions-5IZLTFSZ.mjs.map} +0 -0
- /package/dist/sdk/{metrics-7PP3EJUH.mjs.map → memory-store-3N4AZCYB.mjs.map} +0 -0
- /package/dist/sdk/{prompt-state-EZYOUG75.mjs.map → metrics-GXQ2EDXA.mjs.map} +0 -0
- /package/dist/sdk/{routing-QHTGDIXF.mjs.map → prompt-state-YHGXB2OA.mjs.map} +0 -0
- /package/dist/sdk/{renderer-schema-CKFB5NDB.mjs.map → renderer-schema-CMXOLNIG.mjs.map} +0 -0
- /package/dist/sdk/{session-registry-4E6YRQ77.mjs.map → routing-S3Y7T2X3.mjs.map} +0 -0
- /package/dist/sdk/{trace-helpers-VP6QYVBX.mjs.map → session-registry-6PV6SGEJ.mjs.map} +0 -0
- /package/dist/sdk/{tracer-init-GSLPPLCD.mjs.map → trace-helpers-YHNPC7MR.mjs.map} +0 -0
- /package/dist/sdk/{workflow-check-provider-3IWBAZP7.mjs.map → tracer-init-XPRWKMZT.mjs.map} +0 -0
- /package/dist/sdk/{workflow-registry-KFWSDSLM.mjs.map → workflow-check-provider-4F3432ZP.mjs.map} +0 -0
|
@@ -7,6 +7,7 @@ import { ReviewSummary } from '../reviewer';
|
|
|
7
7
|
export declare class AICheckProvider extends CheckProvider {
|
|
8
8
|
private aiReviewService;
|
|
9
9
|
private liquidEngine;
|
|
10
|
+
private sandbox;
|
|
10
11
|
constructor();
|
|
11
12
|
getName(): string;
|
|
12
13
|
getDescription(): string;
|
|
@@ -54,6 +55,21 @@ export declare class AICheckProvider extends CheckProvider {
|
|
|
54
55
|
* Returns an array of tool items (string names or workflow references)
|
|
55
56
|
*/
|
|
56
57
|
private getCustomToolsForAI;
|
|
58
|
+
/**
|
|
59
|
+
* Evaluate ai_custom_tools_js expression to dynamically compute custom tools.
|
|
60
|
+
* Returns an array of tool names or workflow references.
|
|
61
|
+
*/
|
|
62
|
+
private evaluateCustomToolsJs;
|
|
63
|
+
/**
|
|
64
|
+
* Evaluate ai_mcp_servers_js expression to dynamically compute MCP servers.
|
|
65
|
+
* Returns a record mapping server names to McpServerConfig objects.
|
|
66
|
+
*/
|
|
67
|
+
private evaluateMcpServersJs;
|
|
68
|
+
/**
|
|
69
|
+
* Build a safe subset of environment variables for sandbox access.
|
|
70
|
+
* Excludes sensitive keys like API keys, secrets, tokens.
|
|
71
|
+
*/
|
|
72
|
+
private buildSafeEnv;
|
|
57
73
|
/**
|
|
58
74
|
* Load custom tools from global configuration and workflow registry
|
|
59
75
|
* Supports both traditional custom tools and workflow-as-tool references
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-check-provider.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/ai-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-check-provider.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/ai-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AA6B5C;;GAEG;AACH,qBAAa,eAAgB,SAAQ,aAAa;IAChD,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAA0C;IAC9D,OAAO,CAAC,OAAO,CAAwB;;IAQvC,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIxB,8DAA8D;IAC9D,OAAO,CAAC,QAAQ;IAWhB,uFAAuF;IACvF,OAAO,CAAC,sBAAsB;IAgCxB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAkDvD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqB1B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAiB7B;;OAEG;YACW,aAAa;IA8B3B;;OAEG;YACW,UAAU;IAsExB;;OAEG;YACW,kBAAkB;IA0ChC;;OAEG;YACW,oBAAoB;IA6QlC;;;OAGG;YACW,YAAY;IA6IpB,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC/C,WAAW,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GACjE,OAAO,CAAC,aAAa,CAAC;YAiBX,iBAAiB;IA02B/B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IA0B3B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAsE7B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAgG5B;;;OAGG;IACH,OAAO,CAAC,YAAY;IAuBpB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAoDvB,sBAAsB,IAAI,MAAM,EAAE;IAuC5B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAYrC,eAAe,IAAI,MAAM,EAAE;CAQ5B"}
|
|
@@ -101,6 +101,11 @@ export interface ExecutionContext {
|
|
|
101
101
|
webhookData?: Map<string, unknown>;
|
|
102
102
|
eventType?: string;
|
|
103
103
|
};
|
|
104
|
+
/**
|
|
105
|
+
* Callback for capturing AI responses - used by scheduler to store previousResponse
|
|
106
|
+
* for recurring reminders. The text passed is the AI response before mrkdwn formatting.
|
|
107
|
+
*/
|
|
108
|
+
responseCapture?: (text: string) => void;
|
|
104
109
|
}
|
|
105
110
|
/**
|
|
106
111
|
* Abstract base class for all check providers
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-provider.interface.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/check-provider.interface.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"check-provider.interface.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/check-provider.interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-check-provider.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/command-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAe,MAAM,aAAa,CAAC;AAqBzD;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,aAAa;IACrD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAC,CAAU;;IAY1B,OAAO,CAAC,mBAAmB;IAI3B,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIlB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAejD,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC9C,OAAO,CAAC,EAAE,OAAO,4BAA4B,EAAE,gBAAgB,GAC9D,OAAO,CAAC,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"command-check-provider.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/command-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAe,MAAM,aAAa,CAAC;AAqBzD;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,aAAa;IACrD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAC,CAAU;;IAY1B,OAAO,CAAC,mBAAmB;IAI3B,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIlB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAejD,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC9C,OAAO,CAAC,EAAE,OAAO,4BAA4B,EAAE,gBAAgB,GAC9D,OAAO,CAAC,aAAa,CAAC;IAunCzB,OAAO,CAAC,kBAAkB;IAgC1B;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAgFrB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,mBAAmB;IAiD3B,OAAO,CAAC,iBAAiB;IAmBzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,2BAA2B;IAcnC,sBAAsB,IAAI,MAAM,EAAE;IAgB5B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAKrC,eAAe,IAAI,MAAM,EAAE;IAQ3B,OAAO,CAAC,uBAAuB;IAoF/B,OAAO,CAAC,uBAAuB;IAkB/B,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,cAAc;IAuFtB,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,QAAQ;YAWF,qBAAqB;IAwCnC,OAAO,CAAC,uBAAuB;CAqChC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log-check-provider.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/log-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAM5C;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D;;;GAGG;AACH,qBAAa,gBAAiB,SAAQ,aAAa;IACjD,OAAO,CAAC,MAAM,CAAS;;IAUvB,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIlB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAyBjD,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC9C,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"log-check-provider.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/log-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAM5C;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D;;;GAGG;AACH,qBAAa,gBAAiB,SAAQ,aAAa;IACjD,OAAO,CAAC,MAAM,CAAS;;IAUvB,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIlB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAyBjD,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC9C,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,aAAa,CAAC;IAwDzB,OAAO,CAAC,oBAAoB;IAqG5B,OAAO,CAAC,eAAe;IAyDvB,OAAO,CAAC,aAAa;IAerB,sBAAsB,IAAI,MAAM,EAAE;IAgB5B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAKrC,eAAe,IAAI,MAAM,EAAE;CAM5B"}
|
|
@@ -43,6 +43,9 @@ export declare class McpCheckProvider extends CheckProvider {
|
|
|
43
43
|
private liquid;
|
|
44
44
|
private sandbox?;
|
|
45
45
|
private customToolExecutor?;
|
|
46
|
+
private isRetryableError;
|
|
47
|
+
private isTimeoutError;
|
|
48
|
+
private getTimeoutSeverity;
|
|
46
49
|
constructor();
|
|
47
50
|
/**
|
|
48
51
|
* Set custom tools for this provider
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-check-provider.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/mcp-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAe,MAAM,aAAa,CAAC;AAYzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-check-provider.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/mcp-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAe,MAAM,aAAa,CAAC;AAYzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAyCvD;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,mBAAmB;IACzD,4GAA4G;IAC5G,SAAS,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;IAChD,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,kDAAkD;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,8CAA8C;IAC9C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iCAAiC;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yBAAyB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,qBAAa,gBAAiB,SAAQ,aAAa;IACjD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAC,CAAU;IAC1B,OAAO,CAAC,kBAAkB,CAAC,CAAqB;IAEhD,OAAO,CAAC,gBAAgB;IA8BxB,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,kBAAkB;;IAiB1B;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,IAAI;IAQjE;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAI3B,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIlB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IA+DjD,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC9C,WAAW,CAAC,EAAE,GAAG,GAChB,OAAO,CAAC,aAAa,CAAC;IAiKzB;;OAEG;YACW,gBAAgB;IAuD9B;;OAEG;YACW,oBAAoB;IAsGlC;;OAEG;YACW,kBAAkB;IAoBhC;;OAEG;YACW,gBAAgB;IAuB9B;;OAEG;YACW,iBAAiB;IAwB/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgB1B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAcnC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAuD/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAyDtB,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,QAAQ;IAWhB,sBAAsB,IAAI,MAAM,EAAE;IAwB5B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAKrC,eAAe,IAAI,MAAM,EAAE;CAG5B"}
|
|
@@ -5,7 +5,10 @@ import { WorkflowToolContext } from './workflow-tool-executor';
|
|
|
5
5
|
*/
|
|
6
6
|
export interface CustomMCPServer {
|
|
7
7
|
start(): Promise<number>;
|
|
8
|
-
stop(
|
|
8
|
+
stop(options?: {
|
|
9
|
+
graceMs?: number;
|
|
10
|
+
drainTimeoutMs?: number;
|
|
11
|
+
}): Promise<void>;
|
|
9
12
|
getUrl(): string;
|
|
10
13
|
}
|
|
11
14
|
/**
|
|
@@ -23,16 +26,32 @@ export declare class CustomToolsSSEServer implements CustomMCPServer {
|
|
|
23
26
|
private messageQueue;
|
|
24
27
|
private tools;
|
|
25
28
|
private workflowContext?;
|
|
29
|
+
private keepaliveInterval;
|
|
30
|
+
private activeToolCalls;
|
|
31
|
+
private lastActivityAt;
|
|
32
|
+
private static readonly KEEPALIVE_INTERVAL_MS;
|
|
26
33
|
constructor(tools: Map<string, CustomToolDefinition>, sessionId: string, debug?: boolean, workflowContext?: WorkflowToolContext);
|
|
27
34
|
/**
|
|
28
35
|
* Start the SSE server on an ephemeral port
|
|
29
36
|
* Returns the actual bound port number
|
|
30
37
|
*/
|
|
31
38
|
start(): Promise<number>;
|
|
39
|
+
/**
|
|
40
|
+
* Start sending periodic keepalive pings to all connections
|
|
41
|
+
* This prevents the SSE connection from being closed during long idle periods
|
|
42
|
+
*/
|
|
43
|
+
private startKeepalive;
|
|
44
|
+
/**
|
|
45
|
+
* Stop the keepalive interval
|
|
46
|
+
*/
|
|
47
|
+
private stopKeepalive;
|
|
32
48
|
/**
|
|
33
49
|
* Stop the server and cleanup resources
|
|
34
50
|
*/
|
|
35
|
-
stop(
|
|
51
|
+
stop(options?: {
|
|
52
|
+
graceMs?: number;
|
|
53
|
+
drainTimeoutMs?: number;
|
|
54
|
+
}): Promise<void>;
|
|
36
55
|
/**
|
|
37
56
|
* Get the SSE endpoint URL
|
|
38
57
|
*/
|
|
@@ -74,6 +93,7 @@ export declare class CustomToolsSSEServer implements CustomMCPServer {
|
|
|
74
93
|
* Handle tools/call MCP request
|
|
75
94
|
*/
|
|
76
95
|
private handleToolCall;
|
|
96
|
+
private getEnvNumber;
|
|
77
97
|
/**
|
|
78
98
|
* Send error response via SSE
|
|
79
99
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-custom-sse-server.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/mcp-custom-sse-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAKvD,OAAO,EAIL,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-custom-sse-server.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/mcp-custom-sse-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAKvD,OAAO,EAIL,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAsFlC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACzB,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7E,MAAM,IAAI,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,eAAe;IAC1D,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,eAAe,CAAC,CAAsB;IAC9C,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAS;gBAGpD,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,EACxC,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,OAAe,EACtB,eAAe,CAAC,EAAE,mBAAmB;IAwCvC;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAqD9B;;;OAGG;IACH,OAAO,CAAC,cAAc;IAgCtB;;OAEG;IACH,OAAO,CAAC,aAAa;IAOrB;;OAEG;IACG,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAoFlF;;OAEG;IACH,MAAM,IAAI,MAAM;IAOhB;;OAEG;YACW,aAAa;IAuC3B;;;OAGG;YACW,mBAAmB;IA4DjC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2C3B;;OAEG;YACW,aAAa;IAkE3B;;OAEG;IACH,OAAO,CAAC,UAAU;IAMlB;;OAEG;IACH,OAAO,CAAC,OAAO;IAwBf;;OAEG;YACW,gBAAgB;IAkE9B;;OAEG;YACW,eAAe;IA2B7B;;OAEG;YACW,cAAc;IAgN5B,OAAO,CAAC,YAAY;IAOpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAmB1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-check-provider.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/workflow-check-provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAW5C;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,aAAa;IACtD,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,MAAM,CAAS;;IASvB,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIlB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBjD,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC9C,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,aAAa,CAAC;IAiIzB,sBAAsB,IAAI,MAAM,EAAE;IAa5B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC,eAAe,IAAI,MAAM,EAAE;IAI3B;;OAEG;YACW,aAAa;IAiK3B;;OAEG;IACH,OAAO,CAAC,cAAc;IA4BtB;;OAEG;IACH,OAAO,CAAC,UAAU;IA0BlB;;OAEG;IACH;;OAEG;YACW,sBAAsB;IA+KpC;;OAEG;YACW,+BAA+B;
|
|
1
|
+
{"version":3,"file":"workflow-check-provider.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/workflow-check-provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAW5C;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,aAAa;IACtD,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,MAAM,CAAS;;IASvB,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIlB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBjD,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC9C,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,aAAa,CAAC;IAiIzB,sBAAsB,IAAI,MAAM,EAAE;IAa5B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC,eAAe,IAAI,MAAM,EAAE;IAI3B;;OAEG;YACW,aAAa;IAiK3B;;OAEG;IACH,OAAO,CAAC,cAAc;IA4BtB;;OAEG;IACH,OAAO,CAAC,UAAU;IA0BlB;;OAEG;IACH;;OAEG;YACW,sBAAsB;IA+KpC;;OAEG;YACW,+BAA+B;IAsI7C;;OAEG;IACH,OAAO,CAAC,oCAAoC;IA8B5C,OAAO,CAAC,oBAAoB;IA6C5B;;;OAGG;YACW,0BAA0B;CAuEzC"}
|
|
@@ -30,6 +30,8 @@ export interface WorkflowToolContext {
|
|
|
30
30
|
prInfo: PRInfo;
|
|
31
31
|
outputs?: Map<string, ReviewSummary>;
|
|
32
32
|
executionContext?: ExecutionContext;
|
|
33
|
+
/** Workspace manager for reference counting during async operations */
|
|
34
|
+
workspace?: import('../utils/workspace-manager').WorkspaceManager;
|
|
33
35
|
}
|
|
34
36
|
/**
|
|
35
37
|
* Workflow tool reference in ai_custom_tools config
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-tool-executor.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/workflow-tool-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEhF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAClE,wCAAwC;IACxC,gBAAgB,EAAE,IAAI,CAAC;IACvB,sBAAsB;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"workflow-tool-executor.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/providers/workflow-tool-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEhF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAClE,wCAAwC;IACxC,gBAAgB,EAAE,IAAI,CAAC;IACvB,sBAAsB;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,uEAAuE;IACvE,SAAS,CAAC,EAAE,OAAO,4BAA4B,EAAE,gBAAgB,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,CAAC,EAAE,kBAAkB,EAAE,GAC5B,oBAAoB,CAAC,aAAa,CAAC,CA6DrC;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,kBAAkB,EAC5B,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACtC,sBAAsB,CAwCxB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI,IAAI,sBAAsB,CAEzF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GACnC,IAAI,IAAI,qBAAqB,CAE/B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,mBAAmB,EAC5B,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACtC,OAAO,CAAC,OAAO,CAAC,CA6DlB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GACnC,sBAAsB,GAAG,SAAS,CAsBpC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Docker named volume management for sandbox caching.
|
|
3
|
+
* Creates, resolves, and evicts cache volumes based on sandbox configuration.
|
|
4
|
+
*/
|
|
5
|
+
import { SandboxCacheConfig } from './types';
|
|
6
|
+
export interface ResolvedVolume {
|
|
7
|
+
/** Docker volume name */
|
|
8
|
+
volumeName: string;
|
|
9
|
+
/** Mount spec for docker run -v flag: "volumeName:containerPath" */
|
|
10
|
+
mountSpec: string;
|
|
11
|
+
}
|
|
12
|
+
export declare class CacheVolumeManager {
|
|
13
|
+
/**
|
|
14
|
+
* Resolve cache config into Docker volume mount specs.
|
|
15
|
+
*
|
|
16
|
+
* Volume naming: visor-cache-<prefix>-<sandboxName>-<pathHash>
|
|
17
|
+
*
|
|
18
|
+
* @param sandboxName - Name of the sandbox
|
|
19
|
+
* @param cacheConfig - Cache configuration from sandbox config
|
|
20
|
+
* @param gitBranch - Current git branch (used as default prefix)
|
|
21
|
+
* @returns Array of volume mount specs for docker run -v
|
|
22
|
+
*/
|
|
23
|
+
resolveVolumes(sandboxName: string, cacheConfig: SandboxCacheConfig, gitBranch: string): Promise<ResolvedVolume[]>;
|
|
24
|
+
/**
|
|
25
|
+
* Check if a Docker volume exists
|
|
26
|
+
*/
|
|
27
|
+
private volumeExists;
|
|
28
|
+
/**
|
|
29
|
+
* Create a Docker named volume
|
|
30
|
+
*/
|
|
31
|
+
private createVolume;
|
|
32
|
+
/**
|
|
33
|
+
* Copy data from one volume to another using a temp container
|
|
34
|
+
*/
|
|
35
|
+
private copyVolume;
|
|
36
|
+
/**
|
|
37
|
+
* Update the last-used label on a volume.
|
|
38
|
+
* Docker doesn't support updating labels in-place, so we record via a temp file approach
|
|
39
|
+
* by simply re-creating volumes with updated labels if they don't exist.
|
|
40
|
+
* For existing volumes, we track usage time via the volume name pattern.
|
|
41
|
+
*/
|
|
42
|
+
private touchVolume;
|
|
43
|
+
/**
|
|
44
|
+
* Evict expired cache volumes for a sandbox
|
|
45
|
+
*/
|
|
46
|
+
evictExpired(sandboxName: string, ttl?: string, maxScopes?: number): Promise<void>;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=cache-volume-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache-volume-manager.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/sandbox/cache-volume-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AA6B7C,MAAM,WAAW,cAAc;IAC7B,yBAAyB;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,kBAAkB;IAC7B;;;;;;;;;OASG;IACG,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,kBAAkB,EAC/B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,EAAE,CAAC;IA4C5B;;OAEG;YACW,YAAY;IAY1B;;OAEG;YACW,YAAY;IAQ1B;;OAEG;YACW,UAAU;IAwBxB;;;;;OAKG;YACW,WAAW;IAOzB;;OAEG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAkFzF"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CheckRunner — serializes check execution into a sandbox container.
|
|
3
|
+
* Builds the CheckRunPayload, invokes child visor via sandbox exec,
|
|
4
|
+
* and parses the JSON result from stdout.
|
|
5
|
+
*/
|
|
6
|
+
import { PRInfo } from '../pr-analyzer';
|
|
7
|
+
import { ReviewSummary } from '../reviewer';
|
|
8
|
+
import { CheckConfig } from '../types/config';
|
|
9
|
+
import { SandboxManager } from './sandbox-manager';
|
|
10
|
+
import { SandboxConfig } from './types';
|
|
11
|
+
export declare class CheckRunner {
|
|
12
|
+
/**
|
|
13
|
+
* Execute a check inside a sandbox container.
|
|
14
|
+
*
|
|
15
|
+
* 1. Build CheckRunPayload JSON
|
|
16
|
+
* 2. Filter env vars through EnvFilter
|
|
17
|
+
* 3. Exec `node <visor_path>/cli-main.js --run-check` inside the sandbox
|
|
18
|
+
* 4. Parse CheckRunResult from stdout JSON
|
|
19
|
+
* 5. Return as ReviewSummary
|
|
20
|
+
*/
|
|
21
|
+
static runCheck(sandboxManager: SandboxManager, sandboxName: string, sandboxConfig: SandboxConfig, checkConfig: CheckConfig, prInfo: PRInfo, dependencyResults?: Map<string, ReviewSummary>, timeoutMs?: number, workspaceDefaults?: {
|
|
22
|
+
env_passthrough?: string[];
|
|
23
|
+
}): Promise<ReviewSummary>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=check-runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-runner.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/sandbox/check-runner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAmCxC,qBAAa,WAAW;IACtB;;;;;;;;OAQG;WACU,QAAQ,CACnB,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC9C,SAAS,CAAC,EAAE,MAAM,EAClB,iBAAiB,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GACjD,OAAO,CAAC,aAAa,CAAC;CAmL1B"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Docker Compose-based sandbox implementation.
|
|
3
|
+
* Supports multi-service environments (e.g., app + redis + postgres).
|
|
4
|
+
*/
|
|
5
|
+
import { SandboxConfig, SandboxExecOptions, SandboxExecResult, SandboxInstance } from './types';
|
|
6
|
+
export declare class DockerComposeSandbox implements SandboxInstance {
|
|
7
|
+
name: string;
|
|
8
|
+
config: SandboxConfig;
|
|
9
|
+
private projectName;
|
|
10
|
+
private started;
|
|
11
|
+
constructor(name: string, config: SandboxConfig);
|
|
12
|
+
/**
|
|
13
|
+
* Start the compose services
|
|
14
|
+
*/
|
|
15
|
+
start(): Promise<void>;
|
|
16
|
+
/**
|
|
17
|
+
* Execute a command inside the compose service
|
|
18
|
+
*/
|
|
19
|
+
exec(options: SandboxExecOptions): Promise<SandboxExecResult>;
|
|
20
|
+
/**
|
|
21
|
+
* Stop and tear down the compose project
|
|
22
|
+
*/
|
|
23
|
+
stop(): Promise<void>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=docker-compose-sandbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker-compose-sandbox.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/sandbox/docker-compose-sandbox.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAOhG,qBAAa,oBAAqB,YAAW,eAAe;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAS;gBAEZ,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa;IAM/C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB5B;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAkDnE;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAiB5B"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Docker image-based sandbox implementation.
|
|
3
|
+
* Supports three modes: pre-built image, Dockerfile, and inline Dockerfile.
|
|
4
|
+
*/
|
|
5
|
+
import { SandboxConfig, SandboxExecOptions, SandboxExecResult, SandboxInstance } from './types';
|
|
6
|
+
export declare class DockerImageSandbox implements SandboxInstance {
|
|
7
|
+
name: string;
|
|
8
|
+
config: SandboxConfig;
|
|
9
|
+
private containerId;
|
|
10
|
+
private containerName;
|
|
11
|
+
private repoPath;
|
|
12
|
+
private visorDistPath;
|
|
13
|
+
private cacheVolumeMounts;
|
|
14
|
+
constructor(name: string, config: SandboxConfig, repoPath: string, visorDistPath: string, cacheVolumeMounts?: string[]);
|
|
15
|
+
/**
|
|
16
|
+
* Build the Docker image if needed (dockerfile or dockerfile_inline mode)
|
|
17
|
+
*/
|
|
18
|
+
private buildImageIfNeeded;
|
|
19
|
+
/**
|
|
20
|
+
* Start the sandbox container
|
|
21
|
+
*/
|
|
22
|
+
start(): Promise<void>;
|
|
23
|
+
/**
|
|
24
|
+
* Execute a command inside the running container
|
|
25
|
+
*/
|
|
26
|
+
exec(options: SandboxExecOptions): Promise<SandboxExecResult>;
|
|
27
|
+
/**
|
|
28
|
+
* Stop and remove the container
|
|
29
|
+
*/
|
|
30
|
+
stop(): Promise<void>;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=docker-image-sandbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker-image-sandbox.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/sandbox/docker-image-sandbox.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAQhG,qBAAa,kBAAmB,YAAW,eAAe;IACxD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,iBAAiB,CAAW;gBAGlC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,iBAAiB,GAAE,MAAM,EAAO;IAUlC;;OAEG;YACW,kBAAkB;IAgEhC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsD5B;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmCnE;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAgB5B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Environment variable filtering for sandbox execution.
|
|
3
|
+
* Filters host environment variables based on passthrough patterns
|
|
4
|
+
* before forwarding them into sandbox containers.
|
|
5
|
+
*/
|
|
6
|
+
/** Built-in env vars forwarded into sandboxes (used when no workspace defaults are set) */
|
|
7
|
+
export declare const BUILTIN_PASSTHROUGH: string[];
|
|
8
|
+
/**
|
|
9
|
+
* Filter environment variables for sandbox forwarding.
|
|
10
|
+
*
|
|
11
|
+
* @param checkEnv - Check-level env overrides (always included)
|
|
12
|
+
* @param hostEnv - Host process.env to filter
|
|
13
|
+
* @param passthroughPatterns - Glob patterns from sandbox config env_passthrough
|
|
14
|
+
* @param defaultPatterns - Workspace-level defaults from sandbox_defaults.env_passthrough
|
|
15
|
+
* (replaces BUILTIN_PASSTHROUGH when provided)
|
|
16
|
+
* @returns Merged environment variables safe for the sandbox
|
|
17
|
+
*/
|
|
18
|
+
export declare function filterEnvForSandbox(checkEnv: Record<string, string | number | boolean> | undefined, hostEnv: Record<string, string | undefined>, passthroughPatterns?: string[], defaultPatterns?: string[]): Record<string, string>;
|
|
19
|
+
//# sourceMappingURL=env-filter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env-filter.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/sandbox/env-filter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,2FAA2F;AAC3F,eAAO,MAAM,mBAAmB,UAAqD,CAAC;AAetF;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,SAAS,EAC/D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAC3C,mBAAmB,CAAC,EAAE,MAAM,EAAE,EAC9B,eAAe,CAAC,EAAE,MAAM,EAAE,GACzB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAuBxB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sandbox module - Docker-based execution environments for Visor checks
|
|
3
|
+
*/
|
|
4
|
+
export type { SandboxConfig, SandboxCacheConfig, SandboxResourceConfig, SandboxExecOptions, SandboxExecResult, SandboxInstance, SerializedPRInfo, CheckRunPayload, CheckRunResult, } from './types';
|
|
5
|
+
export { filterEnvForSandbox } from './env-filter';
|
|
6
|
+
export { SandboxManager } from './sandbox-manager';
|
|
7
|
+
export { CheckRunner } from './check-runner';
|
|
8
|
+
export { CacheVolumeManager } from './cache-volume-manager';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/sandbox/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SandboxManager — lifecycle management for Docker sandbox environments.
|
|
3
|
+
* Handles lazy container startup, reuse, exec routing, and cleanup.
|
|
4
|
+
*/
|
|
5
|
+
import { SandboxConfig, SandboxInstance, SandboxExecOptions, SandboxExecResult } from './types';
|
|
6
|
+
export declare class SandboxManager {
|
|
7
|
+
private sandboxDefs;
|
|
8
|
+
private repoPath;
|
|
9
|
+
private gitBranch;
|
|
10
|
+
private instances;
|
|
11
|
+
private cacheManager;
|
|
12
|
+
private visorDistPath;
|
|
13
|
+
/** Get the resolved repository path (used by trace file relay) */
|
|
14
|
+
getRepoPath(): string;
|
|
15
|
+
constructor(sandboxDefs: Record<string, SandboxConfig>, repoPath: string, gitBranch: string);
|
|
16
|
+
/**
|
|
17
|
+
* Resolve which sandbox a check should use.
|
|
18
|
+
* Returns null if the check should run on the host.
|
|
19
|
+
*
|
|
20
|
+
* Resolution order:
|
|
21
|
+
* 1. Check-level sandbox: (explicit override)
|
|
22
|
+
* 2. Workspace-level sandbox: (default)
|
|
23
|
+
* 3. null → run on host
|
|
24
|
+
*/
|
|
25
|
+
resolveSandbox(checkSandbox: string | undefined, workspaceDefault: string | undefined): string | null;
|
|
26
|
+
/**
|
|
27
|
+
* Get or lazily start a sandbox instance by name.
|
|
28
|
+
*/
|
|
29
|
+
getOrStart(name: string): Promise<SandboxInstance>;
|
|
30
|
+
/**
|
|
31
|
+
* Execute a command inside a named sandbox
|
|
32
|
+
*/
|
|
33
|
+
exec(name: string, options: SandboxExecOptions): Promise<SandboxExecResult>;
|
|
34
|
+
/**
|
|
35
|
+
* Stop all running sandbox instances and run cache eviction
|
|
36
|
+
*/
|
|
37
|
+
stopAll(): Promise<void>;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=sandbox-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-manager.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/sandbox/sandbox-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAOhG,qBAAa,cAAc;IACzB,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAA2C;IAC5D,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,aAAa,CAAS;IAE9B,kEAAkE;IAClE,WAAW,IAAI,MAAM;gBAIT,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAc3F;;;;;;;;OAQG;IACH,cAAc,CACZ,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,gBAAgB,EAAE,MAAM,GAAG,SAAS,GACnC,MAAM,GAAG,IAAI;IAWhB;;OAEG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAuDxD;;OAEG;IACG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAiBjF;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CA0B/B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Telemetry helpers for sandbox modules.
|
|
3
|
+
* Wraps imports from ../telemetry/trace-helpers with graceful fallback
|
|
4
|
+
* when the telemetry module is not available (e.g., before merging with main).
|
|
5
|
+
*/
|
|
6
|
+
export declare function withActiveSpan<T>(name: string, attrs: Record<string, unknown> | undefined, fn: (span: unknown) => Promise<T>): Promise<T>;
|
|
7
|
+
export declare function addEvent(name: string, attrs?: Record<string, unknown>): void;
|
|
8
|
+
export declare function setSpanError(err: unknown): void;
|
|
9
|
+
//# sourceMappingURL=sandbox-telemetry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-telemetry.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/sandbox/sandbox-telemetry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA2BH,wBAAsB,cAAc,CAAC,CAAC,EACpC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC1C,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,GAChC,OAAO,CAAC,CAAC,CAAC,CAOZ;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAK5E;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAK/C"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Read child visor NDJSON trace file and re-emit spans
|
|
3
|
+
* into the parent's telemetry context as proper child spans.
|
|
4
|
+
*
|
|
5
|
+
* NDJSON format from FileSpanExporter:
|
|
6
|
+
* { traceId, spanId, parentSpanId?, name, startTime: [s,ns], endTime: [s,ns],
|
|
7
|
+
* status: { code, message? }, attributes, events?, kind }
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Ingest child trace NDJSON file and re-emit each span as a proper
|
|
11
|
+
* child span under the current active parent span.
|
|
12
|
+
*
|
|
13
|
+
* Spans are created with their original startTime/endTime so they
|
|
14
|
+
* appear with correct timing in the trace viewer.
|
|
15
|
+
*
|
|
16
|
+
* Gracefully degrades to no-op if OTel is not available.
|
|
17
|
+
*/
|
|
18
|
+
export declare function ingestChildTrace(filePath: string): void;
|
|
19
|
+
//# sourceMappingURL=trace-ingester.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace-ingester.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/sandbox/trace-ingester.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA8CH;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAuFvD"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types for Docker-based sandbox execution environments
|
|
3
|
+
*/
|
|
4
|
+
import type { ReviewIssue } from '../reviewer';
|
|
5
|
+
import type { CheckConfig } from '../types/config';
|
|
6
|
+
/**
|
|
7
|
+
* Cache configuration for sandbox volumes
|
|
8
|
+
*/
|
|
9
|
+
export interface SandboxCacheConfig {
|
|
10
|
+
/** Liquid template for cache scope prefix (default: git branch) */
|
|
11
|
+
prefix?: string;
|
|
12
|
+
/** Fallback prefix when current prefix has no cache */
|
|
13
|
+
fallback_prefix?: string;
|
|
14
|
+
/** Paths inside the container to cache */
|
|
15
|
+
paths: string[];
|
|
16
|
+
/** Time-to-live for cache volumes (e.g., "7d", "24h") */
|
|
17
|
+
ttl?: string;
|
|
18
|
+
/** Maximum number of cache scopes to keep */
|
|
19
|
+
max_scopes?: number;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Resource limits for sandbox containers
|
|
23
|
+
*/
|
|
24
|
+
export interface SandboxResourceConfig {
|
|
25
|
+
/** Memory limit (e.g., "512m", "2g") */
|
|
26
|
+
memory?: string;
|
|
27
|
+
/** CPU limit (e.g., 1.0, 0.5) */
|
|
28
|
+
cpu?: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Configuration for a single sandbox environment
|
|
32
|
+
*/
|
|
33
|
+
export interface SandboxConfig {
|
|
34
|
+
/** Docker image to use (e.g., "node:20-alpine") */
|
|
35
|
+
image?: string;
|
|
36
|
+
/** Path to Dockerfile (relative to config file or absolute) */
|
|
37
|
+
dockerfile?: string;
|
|
38
|
+
/** Inline Dockerfile content */
|
|
39
|
+
dockerfile_inline?: string;
|
|
40
|
+
/** Path to docker-compose file */
|
|
41
|
+
compose?: string;
|
|
42
|
+
/** Service name within the compose file */
|
|
43
|
+
service?: string;
|
|
44
|
+
/** Working directory inside container (default: /workspace) */
|
|
45
|
+
workdir?: string;
|
|
46
|
+
/** Glob patterns for host env vars to forward into sandbox */
|
|
47
|
+
env_passthrough?: string[];
|
|
48
|
+
/** Enable/disable network access (default: true) */
|
|
49
|
+
network?: boolean;
|
|
50
|
+
/** Mount repo as read-only (default: false) */
|
|
51
|
+
read_only?: boolean;
|
|
52
|
+
/** Resource limits */
|
|
53
|
+
resources?: SandboxResourceConfig;
|
|
54
|
+
/** Where visor is mounted inside container (default: /opt/visor) */
|
|
55
|
+
visor_path?: string;
|
|
56
|
+
/** Cache volume configuration */
|
|
57
|
+
cache?: SandboxCacheConfig;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Options for executing a command inside a sandbox
|
|
61
|
+
*/
|
|
62
|
+
export interface SandboxExecOptions {
|
|
63
|
+
/** Command to execute */
|
|
64
|
+
command: string;
|
|
65
|
+
/** Environment variables to set */
|
|
66
|
+
env: Record<string, string>;
|
|
67
|
+
/** Timeout in milliseconds */
|
|
68
|
+
timeoutMs: number;
|
|
69
|
+
/** Maximum output buffer size in bytes */
|
|
70
|
+
maxBuffer: number;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Result of a command executed inside a sandbox
|
|
74
|
+
*/
|
|
75
|
+
export interface SandboxExecResult {
|
|
76
|
+
/** Standard output */
|
|
77
|
+
stdout: string;
|
|
78
|
+
/** Standard error */
|
|
79
|
+
stderr: string;
|
|
80
|
+
/** Exit code of the command */
|
|
81
|
+
exitCode: number;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* A running sandbox instance
|
|
85
|
+
*/
|
|
86
|
+
export interface SandboxInstance {
|
|
87
|
+
/** Sandbox name (matches key in sandboxes config) */
|
|
88
|
+
name: string;
|
|
89
|
+
/** Sandbox configuration */
|
|
90
|
+
config: SandboxConfig;
|
|
91
|
+
/** Execute a command inside the sandbox */
|
|
92
|
+
exec(options: SandboxExecOptions): Promise<SandboxExecResult>;
|
|
93
|
+
/** Stop and remove the sandbox container */
|
|
94
|
+
stop(): Promise<void>;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Serialized PR info sent to child visor via --run-check
|
|
98
|
+
*/
|
|
99
|
+
export interface SerializedPRInfo {
|
|
100
|
+
number: number;
|
|
101
|
+
title: string;
|
|
102
|
+
body: string;
|
|
103
|
+
author: string;
|
|
104
|
+
base: string;
|
|
105
|
+
head: string;
|
|
106
|
+
files: Array<{
|
|
107
|
+
filename: string;
|
|
108
|
+
status: string;
|
|
109
|
+
additions: number;
|
|
110
|
+
deletions: number;
|
|
111
|
+
changes: number;
|
|
112
|
+
patch?: string;
|
|
113
|
+
}>;
|
|
114
|
+
totalAdditions: number;
|
|
115
|
+
totalDeletions: number;
|
|
116
|
+
eventType?: string;
|
|
117
|
+
fullDiff?: string;
|
|
118
|
+
commitDiff?: string;
|
|
119
|
+
isIncremental?: boolean;
|
|
120
|
+
isIssue?: boolean;
|
|
121
|
+
eventContext?: Record<string, unknown>;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Payload sent to child visor via --run-check
|
|
125
|
+
*/
|
|
126
|
+
export interface CheckRunPayload {
|
|
127
|
+
/** The check configuration to execute */
|
|
128
|
+
check: CheckConfig;
|
|
129
|
+
/** PR information for the check */
|
|
130
|
+
prInfo: SerializedPRInfo;
|
|
131
|
+
/** Results from dependency checks */
|
|
132
|
+
dependencyOutputs?: Record<string, unknown>;
|
|
133
|
+
/** Environment variables to set */
|
|
134
|
+
env?: Record<string, string>;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Result from child visor --run-check
|
|
138
|
+
*/
|
|
139
|
+
export interface CheckRunResult {
|
|
140
|
+
/** Structured issues found */
|
|
141
|
+
issues: ReviewIssue[];
|
|
142
|
+
/** Raw output from the check (for dependent checks) */
|
|
143
|
+
output?: unknown;
|
|
144
|
+
/** Rendered text content */
|
|
145
|
+
content?: string;
|
|
146
|
+
/** Debug information */
|
|
147
|
+
debug?: unknown;
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=types.d.ts.map
|