@probelabs/visor 0.1.127 → 0.1.128

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/dist/ai-review-service.d.ts +1 -0
  2. package/dist/ai-review-service.d.ts.map +1 -1
  3. package/dist/docs/commands.md +1 -1
  4. package/dist/docs/timeouts.md +1 -1
  5. package/dist/generated/config-schema.d.ts +55 -9
  6. package/dist/generated/config-schema.d.ts.map +1 -1
  7. package/dist/generated/config-schema.json +59 -11
  8. package/dist/index.js +11247 -6695
  9. package/dist/output/traces/{run-2026-02-01T09-59-08-165Z.ndjson → run-2026-02-05T13-36-03-279Z.ndjson} +84 -84
  10. package/dist/output/traces/{run-2026-02-01T09-59-52-595Z.ndjson → run-2026-02-05T13-36-48-767Z.ndjson} +843 -1063
  11. package/dist/output/traces/run-2026-02-05T13-36-58-960Z.ndjson +17 -0
  12. package/dist/output/traces/run-2026-02-05T13-37-00-184Z.ndjson +205 -0
  13. package/dist/providers/ai-check-provider.d.ts +16 -0
  14. package/dist/providers/ai-check-provider.d.ts.map +1 -1
  15. package/dist/providers/command-check-provider.d.ts.map +1 -1
  16. package/dist/providers/mcp-check-provider.d.ts +3 -0
  17. package/dist/providers/mcp-check-provider.d.ts.map +1 -1
  18. package/dist/providers/mcp-custom-sse-server.d.ts +22 -2
  19. package/dist/providers/mcp-custom-sse-server.d.ts.map +1 -1
  20. package/dist/providers/workflow-check-provider.d.ts.map +1 -1
  21. package/dist/providers/workflow-tool-executor.d.ts +2 -0
  22. package/dist/providers/workflow-tool-executor.d.ts.map +1 -1
  23. package/dist/sdk/check-provider-registry-OB5FEBJU.mjs +28 -0
  24. package/dist/sdk/check-provider-registry-UC2LPSB4.mjs +28 -0
  25. package/dist/sdk/{chunk-CNX7V5JK.mjs → chunk-25IC7KXZ.mjs} +2 -2
  26. package/dist/sdk/{chunk-YSN4G6CI.mjs → chunk-4HVFUUNB.mjs} +2 -2
  27. package/dist/sdk/{chunk-3OMWVM6J.mjs → chunk-B7BVQM5K.mjs} +2 -2
  28. package/dist/sdk/{chunk-XWJPT5KQ.mjs → chunk-D55IQCUP.mjs} +63 -17
  29. package/dist/sdk/chunk-D55IQCUP.mjs.map +1 -0
  30. package/dist/sdk/{chunk-BOVFH3LI.mjs → chunk-EJN6Q4D3.mjs} +16 -7
  31. package/dist/sdk/chunk-EJN6Q4D3.mjs.map +1 -0
  32. package/dist/sdk/{chunk-WMJKH4XE.mjs → chunk-J7LXIPZS.mjs} +16 -1
  33. package/dist/sdk/{chunk-EXFGO4FX.mjs → chunk-KFKHU6CM.mjs} +2 -2
  34. package/dist/sdk/{chunk-BHOKBQPB.mjs → chunk-LMJSJQPP.mjs} +5 -5
  35. package/dist/sdk/{chunk-VW2GBXQT.mjs → chunk-N7IVCCGH.mjs} +3 -3
  36. package/dist/sdk/{chunk-O5EZDNYL.mjs → chunk-NCWIZVOT.mjs} +2 -2
  37. package/dist/sdk/{chunk-3NMLT3YS.mjs → chunk-P6YFV6N2.mjs} +3 -3
  38. package/dist/sdk/{chunk-HQL734ZI.mjs → chunk-QRXSDDYN.mjs} +3 -3
  39. package/dist/sdk/{chunk-J2QWVDXK.mjs → chunk-SIMCSNXO.mjs} +3 -3
  40. package/dist/sdk/{chunk-IHZOSIF4.mjs → chunk-UEWXVJ6C.mjs} +3 -3
  41. package/dist/sdk/{chunk-MPS4HVQI.mjs → chunk-UKG5UP5U.mjs} +8 -8
  42. package/dist/sdk/chunk-UPKHRMUA.mjs +35108 -0
  43. package/dist/sdk/chunk-UPKHRMUA.mjs.map +1 -0
  44. package/dist/sdk/chunk-V7RIRPO7.mjs +35108 -0
  45. package/dist/sdk/chunk-V7RIRPO7.mjs.map +1 -0
  46. package/dist/sdk/{chunk-EORMDOZU.mjs → chunk-VEROLBCD.mjs} +7 -7
  47. package/dist/sdk/{chunk-ZYAUYXSW.mjs → chunk-WVNQ56DO.mjs} +3 -3
  48. package/dist/sdk/{chunk-NAW3DB3I.mjs → chunk-XXAEN5KU.mjs} +3 -3
  49. package/dist/sdk/{chunk-S2RUE2RG.mjs → chunk-YCUWMIV5.mjs} +3 -3
  50. package/dist/sdk/command-executor-C4DGIQ4Q.mjs +14 -0
  51. package/dist/sdk/config-GYTBTHRZ.mjs +16 -0
  52. package/dist/sdk/config-merger-RKCZJQ44.mjs +10 -0
  53. package/dist/sdk/{event-bus-5BEVPQ6T.mjs → event-bus-XV2TOQFU.mjs} +2 -2
  54. package/dist/sdk/failure-condition-evaluator-KRFY4OLQ.mjs +17 -0
  55. package/dist/sdk/{git-repository-analyzer-HJC4MYW4.mjs → git-repository-analyzer-VO7OZMTM.mjs} +2 -2
  56. package/dist/sdk/{github-frontend-5PCKKHVC.mjs → github-frontend-UC326PMS.mjs} +11 -11
  57. package/dist/sdk/{host-H3AWNZ2F.mjs → host-H7MKML2H.mjs} +5 -5
  58. package/dist/sdk/{liquid-extensions-I7O7KMHF.mjs → liquid-extensions-WJAC7QKG.mjs} +8 -8
  59. package/dist/sdk/memory-store-LPOZWQ5E.mjs +12 -0
  60. package/dist/sdk/{metrics-7PP3EJUH.mjs → metrics-CSBGJEWW.mjs} +4 -4
  61. package/dist/sdk/{ndjson-sink-B4V4NTAQ.mjs → ndjson-sink-JQ2INHTS.mjs} +2 -2
  62. package/dist/sdk/{prompt-state-EZYOUG75.mjs → prompt-state-X2WDGSEM.mjs} +5 -5
  63. package/dist/sdk/{renderer-schema-CKFB5NDB.mjs → renderer-schema-FRCLA6KH.mjs} +4 -4
  64. package/dist/sdk/routing-745DOEKR.mjs +24 -0
  65. package/dist/sdk/sdk.d.mts +61 -3
  66. package/dist/sdk/sdk.d.ts +61 -3
  67. package/dist/sdk/sdk.js +17890 -375
  68. package/dist/sdk/sdk.js.map +1 -1
  69. package/dist/sdk/sdk.mjs +107 -34
  70. package/dist/sdk/sdk.mjs.map +1 -1
  71. package/dist/sdk/session-registry-6PV6SGEJ.mjs +10 -0
  72. package/dist/sdk/{slack-frontend-JUT3TYVC.mjs → slack-frontend-UPYUYCUQ.mjs} +5 -5
  73. package/dist/sdk/{trace-helpers-VP6QYVBX.mjs → trace-helpers-LUCR52GY.mjs} +4 -4
  74. package/dist/sdk/tracer-init-XPRWKMZT.mjs +10 -0
  75. package/dist/sdk/workflow-check-provider-AA3VNYUY.mjs +28 -0
  76. package/dist/sdk/workflow-check-provider-LQNQZUN5.mjs +28 -0
  77. package/dist/sdk/workflow-check-provider-LQNQZUN5.mjs.map +1 -0
  78. package/dist/sdk/workflow-registry-W7IEH7GK.mjs +12 -0
  79. package/dist/sdk/workflow-registry-W7IEH7GK.mjs.map +1 -0
  80. package/dist/test-runner/index.d.ts +5 -0
  81. package/dist/test-runner/index.d.ts.map +1 -1
  82. package/dist/traces/{run-2026-02-01T09-59-08-165Z.ndjson → run-2026-02-05T13-36-03-279Z.ndjson} +84 -84
  83. package/dist/traces/{run-2026-02-01T09-59-52-595Z.ndjson → run-2026-02-05T13-36-48-767Z.ndjson} +843 -1063
  84. package/dist/traces/run-2026-02-05T13-36-58-960Z.ndjson +17 -0
  85. package/dist/traces/run-2026-02-05T13-37-00-184Z.ndjson +205 -0
  86. package/dist/types/config.d.ts +61 -3
  87. package/dist/types/config.d.ts.map +1 -1
  88. package/dist/utils/sandbox.d.ts.map +1 -1
  89. package/dist/utils/workspace-manager.d.ts +22 -2
  90. package/dist/utils/workspace-manager.d.ts.map +1 -1
  91. package/dist/utils/worktree-manager.d.ts +2 -1
  92. package/dist/utils/worktree-manager.d.ts.map +1 -1
  93. package/package.json +3 -3
  94. package/dist/sdk/check-provider-registry-CVUONJ5A.mjs +0 -28
  95. package/dist/sdk/chunk-BOVFH3LI.mjs.map +0 -1
  96. package/dist/sdk/chunk-TS6BUNAI.mjs +0 -17722
  97. package/dist/sdk/chunk-TS6BUNAI.mjs.map +0 -1
  98. package/dist/sdk/chunk-XWJPT5KQ.mjs.map +0 -1
  99. package/dist/sdk/command-executor-Q7MHJKZJ.mjs +0 -14
  100. package/dist/sdk/config-DXX64GD3.mjs +0 -16
  101. package/dist/sdk/config-merger-PX3WIT57.mjs +0 -10
  102. package/dist/sdk/failure-condition-evaluator-G4HMJPXF.mjs +0 -17
  103. package/dist/sdk/memory-store-RW5N2NGJ.mjs +0 -12
  104. package/dist/sdk/routing-QHTGDIXF.mjs +0 -24
  105. package/dist/sdk/session-registry-4E6YRQ77.mjs +0 -10
  106. package/dist/sdk/tracer-init-GSLPPLCD.mjs +0 -10
  107. package/dist/sdk/workflow-check-provider-3IWBAZP7.mjs +0 -28
  108. package/dist/sdk/workflow-registry-KFWSDSLM.mjs +0 -12
  109. /package/dist/sdk/{check-provider-registry-CVUONJ5A.mjs.map → check-provider-registry-OB5FEBJU.mjs.map} +0 -0
  110. /package/dist/sdk/{chunk-WMJKH4XE.mjs.map → check-provider-registry-UC2LPSB4.mjs.map} +0 -0
  111. /package/dist/sdk/{chunk-CNX7V5JK.mjs.map → chunk-25IC7KXZ.mjs.map} +0 -0
  112. /package/dist/sdk/{chunk-YSN4G6CI.mjs.map → chunk-4HVFUUNB.mjs.map} +0 -0
  113. /package/dist/sdk/{chunk-3OMWVM6J.mjs.map → chunk-B7BVQM5K.mjs.map} +0 -0
  114. /package/dist/sdk/{command-executor-Q7MHJKZJ.mjs.map → chunk-J7LXIPZS.mjs.map} +0 -0
  115. /package/dist/sdk/{chunk-EXFGO4FX.mjs.map → chunk-KFKHU6CM.mjs.map} +0 -0
  116. /package/dist/sdk/{chunk-BHOKBQPB.mjs.map → chunk-LMJSJQPP.mjs.map} +0 -0
  117. /package/dist/sdk/{chunk-VW2GBXQT.mjs.map → chunk-N7IVCCGH.mjs.map} +0 -0
  118. /package/dist/sdk/{chunk-O5EZDNYL.mjs.map → chunk-NCWIZVOT.mjs.map} +0 -0
  119. /package/dist/sdk/{chunk-3NMLT3YS.mjs.map → chunk-P6YFV6N2.mjs.map} +0 -0
  120. /package/dist/sdk/{chunk-HQL734ZI.mjs.map → chunk-QRXSDDYN.mjs.map} +0 -0
  121. /package/dist/sdk/{chunk-J2QWVDXK.mjs.map → chunk-SIMCSNXO.mjs.map} +0 -0
  122. /package/dist/sdk/{chunk-IHZOSIF4.mjs.map → chunk-UEWXVJ6C.mjs.map} +0 -0
  123. /package/dist/sdk/{chunk-MPS4HVQI.mjs.map → chunk-UKG5UP5U.mjs.map} +0 -0
  124. /package/dist/sdk/{chunk-EORMDOZU.mjs.map → chunk-VEROLBCD.mjs.map} +0 -0
  125. /package/dist/sdk/{chunk-ZYAUYXSW.mjs.map → chunk-WVNQ56DO.mjs.map} +0 -0
  126. /package/dist/sdk/{chunk-NAW3DB3I.mjs.map → chunk-XXAEN5KU.mjs.map} +0 -0
  127. /package/dist/sdk/{chunk-S2RUE2RG.mjs.map → chunk-YCUWMIV5.mjs.map} +0 -0
  128. /package/dist/sdk/{config-DXX64GD3.mjs.map → command-executor-C4DGIQ4Q.mjs.map} +0 -0
  129. /package/dist/sdk/{config-merger-PX3WIT57.mjs.map → config-GYTBTHRZ.mjs.map} +0 -0
  130. /package/dist/sdk/{failure-condition-evaluator-G4HMJPXF.mjs.map → config-merger-RKCZJQ44.mjs.map} +0 -0
  131. /package/dist/sdk/{event-bus-5BEVPQ6T.mjs.map → event-bus-XV2TOQFU.mjs.map} +0 -0
  132. /package/dist/sdk/{liquid-extensions-I7O7KMHF.mjs.map → failure-condition-evaluator-KRFY4OLQ.mjs.map} +0 -0
  133. /package/dist/sdk/{git-repository-analyzer-HJC4MYW4.mjs.map → git-repository-analyzer-VO7OZMTM.mjs.map} +0 -0
  134. /package/dist/sdk/{github-frontend-5PCKKHVC.mjs.map → github-frontend-UC326PMS.mjs.map} +0 -0
  135. /package/dist/sdk/{host-H3AWNZ2F.mjs.map → host-H7MKML2H.mjs.map} +0 -0
  136. /package/dist/sdk/{memory-store-RW5N2NGJ.mjs.map → liquid-extensions-WJAC7QKG.mjs.map} +0 -0
  137. /package/dist/sdk/{metrics-7PP3EJUH.mjs.map → memory-store-LPOZWQ5E.mjs.map} +0 -0
  138. /package/dist/sdk/{prompt-state-EZYOUG75.mjs.map → metrics-CSBGJEWW.mjs.map} +0 -0
  139. /package/dist/sdk/{ndjson-sink-B4V4NTAQ.mjs.map → ndjson-sink-JQ2INHTS.mjs.map} +0 -0
  140. /package/dist/sdk/{routing-QHTGDIXF.mjs.map → prompt-state-X2WDGSEM.mjs.map} +0 -0
  141. /package/dist/sdk/{renderer-schema-CKFB5NDB.mjs.map → renderer-schema-FRCLA6KH.mjs.map} +0 -0
  142. /package/dist/sdk/{session-registry-4E6YRQ77.mjs.map → routing-745DOEKR.mjs.map} +0 -0
  143. /package/dist/sdk/{trace-helpers-VP6QYVBX.mjs.map → session-registry-6PV6SGEJ.mjs.map} +0 -0
  144. /package/dist/sdk/{slack-frontend-JUT3TYVC.mjs.map → slack-frontend-UPYUYCUQ.mjs.map} +0 -0
  145. /package/dist/sdk/{tracer-init-GSLPPLCD.mjs.map → trace-helpers-LUCR52GY.mjs.map} +0 -0
  146. /package/dist/sdk/{workflow-check-provider-3IWBAZP7.mjs.map → tracer-init-XPRWKMZT.mjs.map} +0 -0
  147. /package/dist/sdk/{workflow-registry-KFWSDSLM.mjs.map → workflow-check-provider-AA3VNYUY.mjs.map} +0 -0
@@ -5,7 +5,10 @@ import { WorkflowToolContext } from './workflow-tool-executor';
5
5
  */
6
6
  export interface CustomMCPServer {
7
7
  start(): Promise<number>;
8
- stop(): Promise<void>;
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(): Promise<void>;
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;AA8ElC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACzB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,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;gBAG5C,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;IAkD9B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAkD3B;;OAEG;IACH,MAAM,IAAI,MAAM;IAOhB;;OAEG;YACW,aAAa;IAkC3B;;;OAGG;YACW,mBAAmB;IAuDjC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAuC3B;;OAEG;YACW,aAAa;IA6D3B;;OAEG;IACH,OAAO,CAAC,UAAU;IAMlB;;OAEG;IACH,OAAO,CAAC,OAAO;IAYf;;OAEG;YACW,gBAAgB;IAwD9B;;OAEG;YACW,eAAe;IA2B7B;;OAEG;YACW,cAAc;IAoF5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAmB1B"}
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;AA8ElC;;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;IAmI5B,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;IAiE7C;;OAEG;IACH,OAAO,CAAC,oCAAoC;IA8B5C,OAAO,CAAC,oBAAoB;IA6C5B;;;OAGG;YACW,0BAA0B;CAuEzC"}
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;IA4H7C;;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;CACrC;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,CAkDlB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GACnC,sBAAsB,GAAG,SAAS,CAsBpC"}
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,28 @@
1
+ import {
2
+ CheckProviderRegistry,
3
+ init_check_provider_registry
4
+ } from "./chunk-UPKHRMUA.mjs";
5
+ import "./chunk-KFKHU6CM.mjs";
6
+ import "./chunk-XXAEN5KU.mjs";
7
+ import "./chunk-SIMCSNXO.mjs";
8
+ import "./chunk-N7IVCCGH.mjs";
9
+ import "./chunk-D55IQCUP.mjs";
10
+ import "./chunk-NCWIZVOT.mjs";
11
+ import "./chunk-QRXSDDYN.mjs";
12
+ import "./chunk-VEROLBCD.mjs";
13
+ import "./chunk-UKG5UP5U.mjs";
14
+ import "./chunk-WVNQ56DO.mjs";
15
+ import "./chunk-YCUWMIV5.mjs";
16
+ import "./chunk-LMJSJQPP.mjs";
17
+ import "./chunk-25IC7KXZ.mjs";
18
+ import "./chunk-EJN6Q4D3.mjs";
19
+ import "./chunk-UEWXVJ6C.mjs";
20
+ import "./chunk-P6YFV6N2.mjs";
21
+ import "./chunk-4HVFUUNB.mjs";
22
+ import "./chunk-B7BVQM5K.mjs";
23
+ import "./chunk-J7LXIPZS.mjs";
24
+ init_check_provider_registry();
25
+ export {
26
+ CheckProviderRegistry
27
+ };
28
+ //# sourceMappingURL=check-provider-registry-OB5FEBJU.mjs.map
@@ -0,0 +1,28 @@
1
+ import {
2
+ CheckProviderRegistry,
3
+ init_check_provider_registry
4
+ } from "./chunk-V7RIRPO7.mjs";
5
+ import "./chunk-KFKHU6CM.mjs";
6
+ import "./chunk-XXAEN5KU.mjs";
7
+ import "./chunk-SIMCSNXO.mjs";
8
+ import "./chunk-N7IVCCGH.mjs";
9
+ import "./chunk-D55IQCUP.mjs";
10
+ import "./chunk-NCWIZVOT.mjs";
11
+ import "./chunk-QRXSDDYN.mjs";
12
+ import "./chunk-VEROLBCD.mjs";
13
+ import "./chunk-UKG5UP5U.mjs";
14
+ import "./chunk-WVNQ56DO.mjs";
15
+ import "./chunk-YCUWMIV5.mjs";
16
+ import "./chunk-LMJSJQPP.mjs";
17
+ import "./chunk-25IC7KXZ.mjs";
18
+ import "./chunk-EJN6Q4D3.mjs";
19
+ import "./chunk-UEWXVJ6C.mjs";
20
+ import "./chunk-P6YFV6N2.mjs";
21
+ import "./chunk-4HVFUUNB.mjs";
22
+ import "./chunk-B7BVQM5K.mjs";
23
+ import "./chunk-J7LXIPZS.mjs";
24
+ init_check_provider_registry();
25
+ export {
26
+ CheckProviderRegistry
27
+ };
28
+ //# sourceMappingURL=check-provider-registry-UC2LPSB4.mjs.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  __esm
3
- } from "./chunk-WMJKH4XE.mjs";
3
+ } from "./chunk-J7LXIPZS.mjs";
4
4
 
5
5
  // src/utils/author-permissions.ts
6
6
  function getPermissionLevel(association) {
@@ -86,4 +86,4 @@ export {
86
86
  resolveAssociationFromEvent,
87
87
  init_author_permissions
88
88
  };
89
- //# sourceMappingURL=chunk-CNX7V5JK.mjs.map
89
+ //# sourceMappingURL=chunk-25IC7KXZ.mjs.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  __esm,
3
3
  __require
4
- } from "./chunk-WMJKH4XE.mjs";
4
+ } from "./chunk-J7LXIPZS.mjs";
5
5
 
6
6
  // src/telemetry/lazy-otel.ts
7
7
  function getOtelApi() {
@@ -143,4 +143,4 @@ export {
143
143
  SpanStatusCode,
144
144
  init_lazy_otel
145
145
  };
146
- //# sourceMappingURL=chunk-YSN4G6CI.mjs.map
146
+ //# sourceMappingURL=chunk-4HVFUUNB.mjs.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  __esm,
3
3
  __require
4
- } from "./chunk-WMJKH4XE.mjs";
4
+ } from "./chunk-J7LXIPZS.mjs";
5
5
 
6
6
  // src/utils/tracer-init.ts
7
7
  import * as path from "path";
@@ -79,4 +79,4 @@ export {
79
79
  initializeTracer,
80
80
  init_tracer_init
81
81
  };
82
- //# sourceMappingURL=chunk-3OMWVM6J.mjs.map
82
+ //# sourceMappingURL=chunk-B7BVQM5K.mjs.map
@@ -2,21 +2,21 @@ import {
2
2
  ConfigMerger,
3
3
  config_merger_exports,
4
4
  init_config_merger
5
- } from "./chunk-O5EZDNYL.mjs";
5
+ } from "./chunk-NCWIZVOT.mjs";
6
6
  import {
7
7
  init_sandbox,
8
8
  validateJsSyntax
9
- } from "./chunk-BOVFH3LI.mjs";
9
+ } from "./chunk-EJN6Q4D3.mjs";
10
10
  import {
11
11
  init_logger,
12
12
  logger
13
- } from "./chunk-3NMLT3YS.mjs";
13
+ } from "./chunk-P6YFV6N2.mjs";
14
14
  import {
15
15
  __esm,
16
16
  __export,
17
17
  __require,
18
18
  __toCommonJS
19
- } from "./chunk-WMJKH4XE.mjs";
19
+ } from "./chunk-J7LXIPZS.mjs";
20
20
 
21
21
  // src/utils/config-loader.ts
22
22
  import * as fs from "fs";
@@ -279,7 +279,7 @@ var init_config_loader = __esm({
279
279
  const parentConfig = await this.fetchConfig(source, this.loadedConfigs.size);
280
280
  parentConfigs.push(parentConfig);
281
281
  }
282
- const { ConfigMerger: ConfigMerger2 } = await import("./config-merger-PX3WIT57.mjs");
282
+ const { ConfigMerger: ConfigMerger2 } = await import("./config-merger-RKCZJQ44.mjs");
283
283
  const merger = new ConfigMerger2();
284
284
  let mergedParents = {};
285
285
  for (const parentConfig of parentConfigs) {
@@ -849,6 +849,10 @@ var init_config_schema = __esm({
849
849
  $ref: "#/definitions/Record%3Cstring%2CMcpServerConfig%3E",
850
850
  description: "MCP servers for this AI check - overrides global setting"
851
851
  },
852
+ ai_mcp_servers_js: {
853
+ type: "string",
854
+ description: 'JavaScript expression to dynamically compute MCP servers for this AI check. Expression has access to: outputs, inputs, pr, files, env, memory Must return an object mapping server names to McpServerConfig objects.\n\nExample: ``` const servers = {}; const tags = outputs[\'route-intent\']?.tags || []; if (tags.includes(\'jira\')) { servers.jira = { command: "npx", args: ["-y", "@aashari/mcp-server-atlassian-jira"], env: { ATLASSIAN_SITE_NAME: "mysite" } }; } return servers; ```'
855
+ },
852
856
  ai_custom_tools: {
853
857
  type: "array",
854
858
  items: {
@@ -856,6 +860,10 @@ var init_config_schema = __esm({
856
860
  },
857
861
  description: "List of custom tool names to expose to this AI check via ephemeral SSE MCP server"
858
862
  },
863
+ ai_custom_tools_js: {
864
+ type: "string",
865
+ description: "JavaScript expression to dynamically compute custom tools for this AI check. Expression has access to: outputs, inputs, pr, files, env, memory Must return an array of tool names (strings) or WorkflowToolReference objects ({ workflow: string, args?: Record<string, unknown> })\n\nExample: ``` const tools = []; if (outputs['route-intent'].intent === 'engineer') { tools.push({ workflow: 'engineer', args: { projects: ['tyk'] } }); } return tools; ```"
866
+ },
859
867
  claude_code: {
860
868
  $ref: "#/definitions/ClaudeCodeConfig",
861
869
  description: "Claude Code configuration (for claude-code type checks)"
@@ -1120,7 +1128,7 @@ var init_config_schema = __esm({
1120
1128
  description: "Arguments/inputs for the workflow"
1121
1129
  },
1122
1130
  overrides: {
1123
- $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11434-23754-src_types_config.ts-0-41453%3E%3E",
1131
+ $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-12605-26099-src_types_config.ts-0-43798%3E%3E",
1124
1132
  description: "Override specific step configurations in the workflow"
1125
1133
  },
1126
1134
  output_mapping: {
@@ -1136,7 +1144,7 @@ var init_config_schema = __esm({
1136
1144
  description: "Config file path - alternative to workflow ID (loads a Visor config file as workflow)"
1137
1145
  },
1138
1146
  workflow_overrides: {
1139
- $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11434-23754-src_types_config.ts-0-41453%3E%3E",
1147
+ $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-12605-26099-src_types_config.ts-0-43798%3E%3E",
1140
1148
  description: "Alias for overrides - workflow step overrides (backward compatibility)"
1141
1149
  },
1142
1150
  ref: {
@@ -1308,6 +1316,10 @@ var init_config_schema = __esm({
1308
1316
  type: "boolean",
1309
1317
  description: "Enable the delegate tool for task distribution to subagents"
1310
1318
  },
1319
+ enableTasks: {
1320
+ type: "boolean",
1321
+ description: "Enable task management for tracking multi-goal requests"
1322
+ },
1311
1323
  retry: {
1312
1324
  $ref: "#/definitions/AIRetryConfig",
1313
1325
  description: "Retry configuration for this provider"
@@ -1361,7 +1373,7 @@ var init_config_schema = __esm({
1361
1373
  properties: {
1362
1374
  command: {
1363
1375
  type: "string",
1364
- description: "Command to execute for the MCP server"
1376
+ description: "Command to execute (presence indicates stdio server)"
1365
1377
  },
1366
1378
  args: {
1367
1379
  type: "array",
@@ -1373,11 +1385,45 @@ var init_config_schema = __esm({
1373
1385
  env: {
1374
1386
  $ref: "#/definitions/Record%3Cstring%2Cstring%3E",
1375
1387
  description: "Environment variables for the MCP server"
1388
+ },
1389
+ url: {
1390
+ type: "string",
1391
+ description: "URL endpoint (presence indicates external server)"
1392
+ },
1393
+ transport: {
1394
+ type: "string",
1395
+ enum: ["stdio", "sse", "http"],
1396
+ description: "Transport type"
1397
+ },
1398
+ workflow: {
1399
+ type: "string",
1400
+ description: "Workflow ID or path (presence indicates workflow tool)"
1401
+ },
1402
+ inputs: {
1403
+ $ref: "#/definitions/Record%3Cstring%2Cunknown%3E",
1404
+ description: "Inputs to pass to workflow"
1405
+ },
1406
+ description: {
1407
+ type: "string",
1408
+ description: "Tool description for AI"
1409
+ },
1410
+ allowedMethods: {
1411
+ type: "array",
1412
+ items: {
1413
+ type: "string"
1414
+ },
1415
+ description: 'Whitelist specific methods from this MCP server (supports wildcards like "search_*")'
1416
+ },
1417
+ blockedMethods: {
1418
+ type: "array",
1419
+ items: {
1420
+ type: "string"
1421
+ },
1422
+ description: 'Block specific methods from this MCP server (supports wildcards like "*_delete")'
1376
1423
  }
1377
1424
  },
1378
- required: ["command"],
1379
1425
  additionalProperties: false,
1380
- description: "MCP Server configuration",
1426
+ description: "Unified MCP server/tool entry - type detected by which properties are present\n\nDetection logic (priority order): 1. Has `command` \u2192 stdio MCP server (external process) 2. Has `url` \u2192 SSE/HTTP MCP server (external endpoint) 3. Has `workflow` \u2192 workflow tool reference 4. Empty `{}` or just key \u2192 auto-detect from `tools:` section",
1381
1427
  patternProperties: {
1382
1428
  "^x-": {}
1383
1429
  }
@@ -1770,7 +1816,7 @@ var init_config_schema = __esm({
1770
1816
  description: "Custom output name (defaults to workflow name)"
1771
1817
  },
1772
1818
  overrides: {
1773
- $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11434-23754-src_types_config.ts-0-41453%3E%3E",
1819
+ $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-12605-26099-src_types_config.ts-0-43798%3E%3E",
1774
1820
  description: "Step overrides"
1775
1821
  },
1776
1822
  output_mapping: {
@@ -1785,13 +1831,13 @@ var init_config_schema = __esm({
1785
1831
  "^x-": {}
1786
1832
  }
1787
1833
  },
1788
- "Record<string,Partial<interface-src_types_config.ts-11434-23754-src_types_config.ts-0-41453>>": {
1834
+ "Record<string,Partial<interface-src_types_config.ts-12605-26099-src_types_config.ts-0-43798>>": {
1789
1835
  type: "object",
1790
1836
  additionalProperties: {
1791
- $ref: "#/definitions/Partial%3Cinterface-src_types_config.ts-11434-23754-src_types_config.ts-0-41453%3E"
1837
+ $ref: "#/definitions/Partial%3Cinterface-src_types_config.ts-12605-26099-src_types_config.ts-0-43798%3E"
1792
1838
  }
1793
1839
  },
1794
- "Partial<interface-src_types_config.ts-11434-23754-src_types_config.ts-0-41453>": {
1840
+ "Partial<interface-src_types_config.ts-12605-26099-src_types_config.ts-0-43798>": {
1795
1841
  type: "object",
1796
1842
  additionalProperties: false
1797
1843
  },
@@ -2781,7 +2827,7 @@ var init_config = __esm({
2781
2827
  * When a workflow YAML is run standalone, register the workflow and use its tests as checks
2782
2828
  */
2783
2829
  async convertWorkflowToConfig(workflowData, basePath) {
2784
- const { WorkflowRegistry } = await import("./workflow-registry-KFWSDSLM.mjs");
2830
+ const { WorkflowRegistry } = await import("./workflow-registry-W7IEH7GK.mjs");
2785
2831
  const registry = WorkflowRegistry.getInstance();
2786
2832
  const workflowId = workflowData.id;
2787
2833
  logger.info(`Detected standalone workflow file: ${workflowId}`);
@@ -2846,7 +2892,7 @@ ${errors}`);
2846
2892
  if (!config.imports || config.imports.length === 0) {
2847
2893
  return;
2848
2894
  }
2849
- const { WorkflowRegistry } = await import("./workflow-registry-KFWSDSLM.mjs");
2895
+ const { WorkflowRegistry } = await import("./workflow-registry-W7IEH7GK.mjs");
2850
2896
  const registry = WorkflowRegistry.getInstance();
2851
2897
  for (const source of config.imports) {
2852
2898
  const results = await registry.import(source, { basePath, validate: true });
@@ -3605,4 +3651,4 @@ export {
3605
3651
  config_exports,
3606
3652
  init_config
3607
3653
  };
3608
- //# sourceMappingURL=chunk-XWJPT5KQ.mjs.map
3654
+ //# sourceMappingURL=chunk-D55IQCUP.mjs.map