@probelabs/visor 0.1.186 → 0.1.187

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 (395) hide show
  1. package/defaults/assistant.yaml +31 -0
  2. package/defaults/code-talk.yaml +32 -0
  3. package/defaults/skills/code-explorer.yaml +6 -0
  4. package/dist/action-cli-bridge.d.ts.map +1 -1
  5. package/dist/agent-protocol/a2a-frontend.d.ts.map +1 -1
  6. package/dist/agent-protocol/index.d.ts.map +1 -1
  7. package/dist/agent-protocol/push-notification-manager.d.ts.map +1 -1
  8. package/dist/agent-protocol/state-transitions.d.ts.map +1 -1
  9. package/dist/agent-protocol/task-evaluator.d.ts.map +1 -1
  10. package/dist/agent-protocol/task-live-update-slack.d.ts +10 -0
  11. package/dist/agent-protocol/task-live-update-slack.d.ts.map +1 -1
  12. package/dist/agent-protocol/task-live-update-teams.d.ts.map +1 -1
  13. package/dist/agent-protocol/task-live-update-telegram.d.ts.map +1 -1
  14. package/dist/agent-protocol/task-live-updates.d.ts +10 -0
  15. package/dist/agent-protocol/task-live-updates.d.ts.map +1 -1
  16. package/dist/agent-protocol/task-progress-tool.d.ts.map +1 -1
  17. package/dist/agent-protocol/task-queue.d.ts.map +1 -1
  18. package/dist/agent-protocol/task-store.d.ts.map +1 -1
  19. package/dist/agent-protocol/task-stream-manager.d.ts.map +1 -1
  20. package/dist/agent-protocol/task-trace-resolution.d.ts.map +1 -1
  21. package/dist/agent-protocol/tasks-cli-handler.d.ts.map +1 -1
  22. package/dist/agent-protocol/tasks-tui.d.ts.map +1 -1
  23. package/dist/agent-protocol/trace-serializer.d.ts +43 -1
  24. package/dist/agent-protocol/trace-serializer.d.ts.map +1 -1
  25. package/dist/agent-protocol/track-execution.d.ts.map +1 -1
  26. package/dist/agent-protocol/types.d.ts.map +1 -1
  27. package/dist/ai-review-service.d.ts +22 -1
  28. package/dist/ai-review-service.d.ts.map +1 -1
  29. package/dist/check-execution-engine.d.ts.map +1 -1
  30. package/dist/cli-main.d.ts +1 -0
  31. package/dist/cli-main.d.ts.map +1 -1
  32. package/dist/cli.d.ts.map +1 -1
  33. package/dist/commands.d.ts.map +1 -1
  34. package/dist/config/cli-handler.d.ts.map +1 -1
  35. package/dist/config/config-reloader.d.ts.map +1 -1
  36. package/dist/config/config-snapshot-store.d.ts.map +1 -1
  37. package/dist/config/config-watcher.d.ts.map +1 -1
  38. package/dist/config/types.d.ts.map +1 -1
  39. package/dist/config.d.ts.map +1 -1
  40. package/dist/cron-scheduler.d.ts.map +1 -1
  41. package/dist/debug-visualizer/debug-span-exporter.d.ts.map +1 -1
  42. package/dist/debug-visualizer/trace-reader.d.ts.map +1 -1
  43. package/dist/debug-visualizer/ws-server.d.ts.map +1 -1
  44. package/dist/defaults/assistant.yaml +31 -0
  45. package/dist/defaults/code-talk.yaml +32 -0
  46. package/dist/defaults/skills/code-explorer.yaml +6 -0
  47. package/dist/dependency-resolver.d.ts.map +1 -1
  48. package/dist/docs/telemetry-setup.md +18 -2
  49. package/dist/email/adapter.d.ts.map +1 -1
  50. package/dist/email/client.d.ts.map +1 -1
  51. package/dist/email/markdown.d.ts.map +1 -1
  52. package/dist/email/polling-runner.d.ts +1 -0
  53. package/dist/email/polling-runner.d.ts.map +1 -1
  54. package/dist/engine/on-finish/orchestrator.d.ts.map +1 -1
  55. package/dist/engine/on-finish/utils.d.ts.map +1 -1
  56. package/dist/event-bus/event-bus.d.ts.map +1 -1
  57. package/dist/event-bus/types.d.ts.map +1 -1
  58. package/dist/event-mapper.d.ts.map +1 -1
  59. package/dist/failure-condition-evaluator.d.ts.map +1 -1
  60. package/dist/footer.d.ts.map +1 -1
  61. package/dist/frontends/email-frontend.d.ts.map +1 -1
  62. package/dist/frontends/github-frontend.d.ts.map +1 -1
  63. package/dist/frontends/host.d.ts.map +1 -1
  64. package/dist/frontends/ndjson-sink.d.ts.map +1 -1
  65. package/dist/frontends/slack-frontend.d.ts.map +1 -1
  66. package/dist/frontends/teams-frontend.d.ts.map +1 -1
  67. package/dist/frontends/telegram-frontend.d.ts.map +1 -1
  68. package/dist/frontends/whatsapp-frontend.d.ts.map +1 -1
  69. package/dist/generated/config-schema.d.ts +16 -8
  70. package/dist/generated/config-schema.d.ts.map +1 -1
  71. package/dist/git-repository-analyzer.d.ts.map +1 -1
  72. package/dist/github-auth.d.ts.map +1 -1
  73. package/dist/github-check-service.d.ts.map +1 -1
  74. package/dist/github-comments.d.ts.map +1 -1
  75. package/dist/github-reactions.d.ts.map +1 -1
  76. package/dist/index.d.ts +1 -0
  77. package/dist/index.d.ts.map +1 -1
  78. package/dist/index.js +7656 -1458
  79. package/dist/issue-filter.d.ts.map +1 -1
  80. package/dist/liquid-extensions.d.ts.map +1 -1
  81. package/dist/logger.d.ts.map +1 -1
  82. package/dist/mcp-job-manager.d.ts.map +1 -1
  83. package/dist/mcp-server.d.ts.map +1 -1
  84. package/dist/memory-store.d.ts.map +1 -1
  85. package/dist/output/traces/{run-2026-05-05T12-31-47-571Z.ndjson → run-2026-08-20T13-50-06-218Z.ndjson} +2699 -2699
  86. package/dist/output-formatters.d.ts.map +1 -1
  87. package/dist/policy/default-engine.d.ts.map +1 -1
  88. package/dist/policy/index.d.ts.map +1 -1
  89. package/dist/policy/policy-check-command.d.ts.map +1 -1
  90. package/dist/policy/types.d.ts.map +1 -1
  91. package/dist/pr-analyzer.d.ts.map +1 -1
  92. package/dist/pr-detector.d.ts.map +1 -1
  93. package/dist/providers/a2a-check-provider.d.ts.map +1 -1
  94. package/dist/providers/ai-check-provider.d.ts.map +1 -1
  95. package/dist/providers/api-tool-executor.d.ts.map +1 -1
  96. package/dist/providers/check-provider-registry.d.ts.map +1 -1
  97. package/dist/providers/check-provider.interface.d.ts.map +1 -1
  98. package/dist/providers/claude-code-check-provider.d.ts.map +1 -1
  99. package/dist/providers/claude-code-types.d.ts.map +1 -1
  100. package/dist/providers/command-check-provider.d.ts.map +1 -1
  101. package/dist/providers/custom-tool-executor.d.ts.map +1 -1
  102. package/dist/providers/git-checkout-provider.d.ts.map +1 -1
  103. package/dist/providers/github-ops-provider.d.ts.map +1 -1
  104. package/dist/providers/http-check-provider.d.ts.map +1 -1
  105. package/dist/providers/http-client-provider.d.ts.map +1 -1
  106. package/dist/providers/http-input-provider.d.ts.map +1 -1
  107. package/dist/providers/human-input-check-provider.d.ts.map +1 -1
  108. package/dist/providers/index.d.ts.map +1 -1
  109. package/dist/providers/log-check-provider.d.ts.map +1 -1
  110. package/dist/providers/mcp-check-provider.d.ts.map +1 -1
  111. package/dist/providers/mcp-custom-sse-server.d.ts.map +1 -1
  112. package/dist/providers/mcp-tools.d.ts.map +1 -1
  113. package/dist/providers/memory-check-provider.d.ts.map +1 -1
  114. package/dist/providers/noop-check-provider.d.ts.map +1 -1
  115. package/dist/providers/script-check-provider.d.ts.map +1 -1
  116. package/dist/providers/utcp-check-provider.d.ts.map +1 -1
  117. package/dist/providers/workflow-check-provider.d.ts.map +1 -1
  118. package/dist/providers/workflow-tool-executor.d.ts.map +1 -1
  119. package/dist/reviewer.d.ts.map +1 -1
  120. package/dist/runners/config-reload-runtime.d.ts.map +1 -1
  121. package/dist/runners/graceful-restart.d.ts.map +1 -1
  122. package/dist/runners/mcp-server-runner.d.ts.map +1 -1
  123. package/dist/runners/process-cli-handler.d.ts.map +1 -1
  124. package/dist/runners/process-discovery.d.ts.map +1 -1
  125. package/dist/runners/runner-factory.d.ts.map +1 -1
  126. package/dist/runners/runner-host.d.ts.map +1 -1
  127. package/dist/runners/runner.d.ts.map +1 -1
  128. package/dist/runners/telemetry-init.d.ts.map +1 -1
  129. package/dist/sandbox/bubblewrap-sandbox.d.ts.map +1 -1
  130. package/dist/sandbox/cache-volume-manager.d.ts.map +1 -1
  131. package/dist/sandbox/check-runner.d.ts.map +1 -1
  132. package/dist/sandbox/compose-generator.d.ts.map +1 -1
  133. package/dist/sandbox/docker-compose-sandbox.d.ts.map +1 -1
  134. package/dist/sandbox/docker-image-sandbox.d.ts.map +1 -1
  135. package/dist/sandbox/env-filter.d.ts.map +1 -1
  136. package/dist/sandbox/index.d.ts.map +1 -1
  137. package/dist/sandbox/sandbox-manager.d.ts.map +1 -1
  138. package/dist/sandbox/sandbox-telemetry.d.ts.map +1 -1
  139. package/dist/sandbox/seatbelt-sandbox.d.ts.map +1 -1
  140. package/dist/sandbox/trace-ingester.d.ts.map +1 -1
  141. package/dist/sandbox/types.d.ts.map +1 -1
  142. package/dist/scheduler/cli-handler.d.ts.map +1 -1
  143. package/dist/scheduler/index.d.ts.map +1 -1
  144. package/dist/scheduler/message-trigger.d.ts.map +1 -1
  145. package/dist/scheduler/schedule-parser.d.ts.map +1 -1
  146. package/dist/scheduler/schedule-store.d.ts.map +1 -1
  147. package/dist/scheduler/schedule-tool.d.ts.map +1 -1
  148. package/dist/scheduler/scheduler.d.ts.map +1 -1
  149. package/dist/scheduler/store/index.d.ts.map +1 -1
  150. package/dist/scheduler/store/json-migrator.d.ts.map +1 -1
  151. package/dist/scheduler/store/sqlite-store.d.ts.map +1 -1
  152. package/dist/scheduler/store/types.d.ts.map +1 -1
  153. package/dist/sdk/{a2a-frontend-L3TQ7QQ6.mjs → a2a-frontend-XCQ4CQUF.mjs} +3 -3
  154. package/dist/sdk/{check-provider-registry-RQYIEQLJ.mjs → check-provider-registry-2D3MCWP3.mjs} +14 -11
  155. package/dist/sdk/{chunk-WZQMTD7W.mjs → chunk-2LLKENYD.mjs} +3 -3
  156. package/dist/sdk/{chunk-WZQMTD7W.mjs.map → chunk-2LLKENYD.mjs.map} +1 -1
  157. package/dist/sdk/{chunk-XXAEN5KU.mjs → chunk-77AKSSW2.mjs} +43 -65
  158. package/dist/sdk/chunk-77AKSSW2.mjs.map +1 -0
  159. package/dist/sdk/chunk-7QI6F66G.mjs +145 -0
  160. package/dist/sdk/chunk-7QI6F66G.mjs.map +1 -0
  161. package/dist/sdk/{chunk-NEZY2MXM.mjs → chunk-B2LQT6QU.mjs} +4 -4
  162. package/dist/sdk/{chunk-NEZY2MXM.mjs.map → chunk-B2LQT6QU.mjs.map} +1 -1
  163. package/dist/sdk/{chunk-IY5PQ5EN.mjs → chunk-BVEATT5V.mjs} +822 -51
  164. package/dist/sdk/chunk-BVEATT5V.mjs.map +1 -0
  165. package/dist/sdk/{chunk-TSX3YS3F.mjs → chunk-HW4MPCOW.mjs} +5 -139
  166. package/dist/sdk/chunk-HW4MPCOW.mjs.map +1 -0
  167. package/dist/sdk/chunk-PGBV3VZB.mjs +122 -0
  168. package/dist/sdk/chunk-PGBV3VZB.mjs.map +1 -0
  169. package/dist/sdk/{chunk-PDQTEBOJ.mjs → chunk-QT766ZLD.mjs} +5 -1
  170. package/dist/sdk/chunk-QT766ZLD.mjs.map +1 -0
  171. package/dist/sdk/{chunk-5TXIAPRA.mjs → chunk-S3GSZRYC.mjs} +2 -2
  172. package/dist/sdk/{chunk-NPOVLLKH.mjs → chunk-TGQBEM3Y.mjs} +570 -259
  173. package/dist/sdk/chunk-TGQBEM3Y.mjs.map +1 -0
  174. package/dist/sdk/chunk-TL3ZTYFY.mjs +141 -0
  175. package/dist/sdk/chunk-TL3ZTYFY.mjs.map +1 -0
  176. package/dist/sdk/{chunk-4UMDSYC7.mjs → chunk-VS3JE2DL.mjs} +3 -3
  177. package/dist/sdk/{chunk-A4WHMRK2.mjs → chunk-YETG675X.mjs} +2 -2
  178. package/dist/sdk/{chunk-XX6WT332.mjs → chunk-YTG5DN72.mjs} +17 -9
  179. package/dist/sdk/chunk-YTG5DN72.mjs.map +1 -0
  180. package/dist/sdk/{chunk-SRU5TFNY.mjs → chunk-YU3VR5SZ.mjs} +145 -16
  181. package/dist/sdk/chunk-YU3VR5SZ.mjs.map +1 -0
  182. package/dist/sdk/{config-BCYAVJ5S.mjs → config-H5IOLBFA.mjs} +2 -2
  183. package/dist/sdk/{email-frontend-P7QE4UUJ.mjs → email-frontend-AE5TYWNC.mjs} +18 -3
  184. package/dist/sdk/{email-frontend-P7QE4UUJ.mjs.map → email-frontend-AE5TYWNC.mjs.map} +1 -1
  185. package/dist/sdk/{failure-condition-evaluator-ZBOSD574.mjs → failure-condition-evaluator-66PWLV3D.mjs} +4 -4
  186. package/dist/sdk/{github-frontend-4WHT5JEU.mjs → github-frontend-BBFKCY4M.mjs} +4 -4
  187. package/dist/sdk/{host-FKR7H26C.mjs → host-UQRZDLT7.mjs} +8 -8
  188. package/dist/sdk/oauth2-token-cache-OS7WHLDI.mjs +13 -0
  189. package/dist/sdk/{routing-IB2PXYFC.mjs → routing-Q647KUMO.mjs} +5 -5
  190. package/dist/sdk/{schedule-tool-LB33KL2W.mjs → schedule-tool-WMGSM6IT.mjs} +14 -11
  191. package/dist/sdk/{schedule-tool-handler-KYWZHKSS.mjs → schedule-tool-handler-JMDHCGZ2.mjs} +14 -11
  192. package/dist/sdk/sdk.d.mts +14 -2
  193. package/dist/sdk/sdk.d.ts +14 -2
  194. package/dist/sdk/sdk.js +1927 -643
  195. package/dist/sdk/sdk.js.map +1 -1
  196. package/dist/sdk/sdk.mjs +13 -10
  197. package/dist/sdk/sdk.mjs.map +1 -1
  198. package/dist/sdk/session-registry-CENXWIFR.mjs +12 -0
  199. package/dist/sdk/{slack-frontend-K3TPGERM.mjs → slack-frontend-JMX5MUVZ.mjs} +42 -12
  200. package/dist/sdk/slack-frontend-JMX5MUVZ.mjs.map +1 -0
  201. package/dist/sdk/{task-evaluator-H3BXC7SE.mjs → task-evaluator-4QG4CYQA.mjs} +7 -6
  202. package/dist/sdk/task-evaluator-4QG4CYQA.mjs.map +1 -0
  203. package/dist/sdk/{teams-frontend-6RRW533K.mjs → teams-frontend-6MDAN7OR.mjs} +17 -4
  204. package/dist/sdk/teams-frontend-6MDAN7OR.mjs.map +1 -0
  205. package/dist/sdk/{telegram-frontend-5UA77YAT.mjs → telegram-frontend-NLX2ZHS4.mjs} +17 -4
  206. package/dist/sdk/telegram-frontend-NLX2ZHS4.mjs.map +1 -0
  207. package/dist/sdk/{trace-helpers-AMZ2524G.mjs → trace-helpers-AIUGQLK5.mjs} +3 -3
  208. package/dist/sdk/{trace-serializer-EBHTHZYT.mjs → trace-serializer-4TOIAVQL.mjs} +10 -2
  209. package/dist/sdk/{track-execution-VW6P3OYO.mjs → track-execution-CFRZXMEC.mjs} +91 -20
  210. package/dist/sdk/track-execution-CFRZXMEC.mjs.map +1 -0
  211. package/dist/sdk/{utcp-check-provider-Q4PD5EP2.mjs → utcp-check-provider-WDTSQ7DZ.mjs} +3 -2
  212. package/dist/sdk/{whatsapp-frontend-72XEIUIR.mjs → whatsapp-frontend-3EMMNC7R.mjs} +15 -2
  213. package/dist/sdk/whatsapp-frontend-3EMMNC7R.mjs.map +1 -0
  214. package/dist/sdk/{workflow-check-provider-N6KSDPWU.mjs → workflow-check-provider-G7A67EPP.mjs} +14 -11
  215. package/dist/sdk/workflow-check-provider-G7A67EPP.mjs.map +1 -0
  216. package/dist/sdk.d.ts.map +1 -1
  217. package/dist/session-registry.d.ts +2 -7
  218. package/dist/session-registry.d.ts.map +1 -1
  219. package/dist/slack/adapter.d.ts.map +1 -1
  220. package/dist/slack/cache-prewarmer.d.ts.map +1 -1
  221. package/dist/slack/client.d.ts +8 -0
  222. package/dist/slack/client.d.ts.map +1 -1
  223. package/dist/slack/markdown.d.ts.map +1 -1
  224. package/dist/slack/prompt-state.d.ts.map +1 -1
  225. package/dist/slack/rate-limiter.d.ts.map +1 -1
  226. package/dist/slack/schedule-tool-handler.d.ts.map +1 -1
  227. package/dist/slack/signature.d.ts.map +1 -1
  228. package/dist/slack/slack-output-adapter.d.ts.map +1 -1
  229. package/dist/slack/socket-runner.d.ts +1 -0
  230. package/dist/slack/socket-runner.d.ts.map +1 -1
  231. package/dist/slack/thread-cache.d.ts.map +1 -1
  232. package/dist/snapshot-store.d.ts.map +1 -1
  233. package/dist/state-machine/context/build-engine-context.d.ts.map +1 -1
  234. package/dist/state-machine/context/workflow-inputs.d.ts.map +1 -1
  235. package/dist/state-machine/dispatch/debounce-manager.d.ts +44 -0
  236. package/dist/state-machine/dispatch/debounce-manager.d.ts.map +1 -0
  237. package/dist/state-machine/dispatch/dependency-gating.d.ts.map +1 -1
  238. package/dist/state-machine/dispatch/execution-invoker.d.ts.map +1 -1
  239. package/dist/state-machine/dispatch/foreach-processor.d.ts.map +1 -1
  240. package/dist/state-machine/dispatch/history-snapshot.d.ts.map +1 -1
  241. package/dist/state-machine/dispatch/on-init-handlers.d.ts.map +1 -1
  242. package/dist/state-machine/dispatch/policy-gate.d.ts.map +1 -1
  243. package/dist/state-machine/dispatch/renderer-schema.d.ts.map +1 -1
  244. package/dist/state-machine/dispatch/sandbox-routing.d.ts.map +1 -1
  245. package/dist/state-machine/dispatch/stats-manager.d.ts.map +1 -1
  246. package/dist/state-machine/dispatch/template-renderer.d.ts.map +1 -1
  247. package/dist/state-machine/execution/summary.d.ts.map +1 -1
  248. package/dist/state-machine/runner.d.ts.map +1 -1
  249. package/dist/state-machine/states/check-running.d.ts.map +1 -1
  250. package/dist/state-machine/states/completed.d.ts.map +1 -1
  251. package/dist/state-machine/states/error.d.ts.map +1 -1
  252. package/dist/state-machine/states/init.d.ts.map +1 -1
  253. package/dist/state-machine/states/level-dispatch.d.ts.map +1 -1
  254. package/dist/state-machine/states/plan-ready.d.ts.map +1 -1
  255. package/dist/state-machine/states/routing.d.ts.map +1 -1
  256. package/dist/state-machine/states/wave-planning.d.ts.map +1 -1
  257. package/dist/state-machine/workflow-projection.d.ts.map +1 -1
  258. package/dist/state-machine-execution-engine.d.ts +1 -0
  259. package/dist/state-machine-execution-engine.d.ts.map +1 -1
  260. package/dist/teams/adapter.d.ts.map +1 -1
  261. package/dist/teams/client.d.ts.map +1 -1
  262. package/dist/teams/markdown.d.ts.map +1 -1
  263. package/dist/teams/webhook-runner.d.ts +1 -0
  264. package/dist/teams/webhook-runner.d.ts.map +1 -1
  265. package/dist/telegram/adapter.d.ts.map +1 -1
  266. package/dist/telegram/client.d.ts.map +1 -1
  267. package/dist/telegram/markdown.d.ts.map +1 -1
  268. package/dist/telegram/polling-runner.d.ts +1 -0
  269. package/dist/telegram/polling-runner.d.ts.map +1 -1
  270. package/dist/telemetry/fallback-ndjson.d.ts.map +1 -1
  271. package/dist/telemetry/file-span-exporter.d.ts.map +1 -1
  272. package/dist/telemetry/lazy-otel.d.ts.map +1 -1
  273. package/dist/telemetry/metrics.d.ts.map +1 -1
  274. package/dist/telemetry/opentelemetry.d.ts.map +1 -1
  275. package/dist/telemetry/state-capture.d.ts.map +1 -1
  276. package/dist/telemetry/trace-helpers.d.ts.map +1 -1
  277. package/dist/telemetry/trace-report-exporter.d.ts.map +1 -1
  278. package/dist/test-runner/assertions.d.ts.map +1 -1
  279. package/dist/test-runner/conversation-sugar.d.ts.map +1 -1
  280. package/dist/test-runner/core/environment.d.ts.map +1 -1
  281. package/dist/test-runner/core/fixture.d.ts.map +1 -1
  282. package/dist/test-runner/core/flow-stage.d.ts.map +1 -1
  283. package/dist/test-runner/core/mocks.d.ts.map +1 -1
  284. package/dist/test-runner/core/test-execution-wrapper.d.ts.map +1 -1
  285. package/dist/test-runner/evaluators.d.ts.map +1 -1
  286. package/dist/test-runner/fixture-loader.d.ts.map +1 -1
  287. package/dist/test-runner/index.d.ts.map +1 -1
  288. package/dist/test-runner/llm-judge.d.ts.map +1 -1
  289. package/dist/test-runner/recorders/github-recorder.d.ts.map +1 -1
  290. package/dist/test-runner/recorders/global-recorder.d.ts.map +1 -1
  291. package/dist/test-runner/recorders/slack-recorder.d.ts.map +1 -1
  292. package/dist/test-runner/utils/selectors.d.ts.map +1 -1
  293. package/dist/test-runner/validator.d.ts.map +1 -1
  294. package/dist/traces/{run-2026-05-05T12-31-47-571Z.ndjson → run-2026-08-20T13-50-06-218Z.ndjson} +2699 -2699
  295. package/dist/tui/chat-runner.d.ts.map +1 -1
  296. package/dist/tui/chat-state.d.ts.map +1 -1
  297. package/dist/tui/chat-tui.d.ts.map +1 -1
  298. package/dist/tui/components/chat-box.d.ts.map +1 -1
  299. package/dist/tui/components/input-bar.d.ts.map +1 -1
  300. package/dist/tui/components/status-bar.d.ts.map +1 -1
  301. package/dist/tui/components/trace-viewer.d.ts.map +1 -1
  302. package/dist/tui/index.d.ts.map +1 -1
  303. package/dist/tui/tui-frontend.d.ts.map +1 -1
  304. package/dist/types/bot.d.ts.map +1 -1
  305. package/dist/types/cli.d.ts.map +1 -1
  306. package/dist/types/config.d.ts +14 -2
  307. package/dist/types/config.d.ts.map +1 -1
  308. package/dist/types/engine.d.ts.map +1 -1
  309. package/dist/types/execution.d.ts.map +1 -1
  310. package/dist/types/git-checkout.d.ts.map +1 -1
  311. package/dist/types/github.d.ts.map +1 -1
  312. package/dist/types/workflow.d.ts.map +1 -1
  313. package/dist/utils/author-permissions.d.ts.map +1 -1
  314. package/dist/utils/child-process-error-handler.d.ts +19 -0
  315. package/dist/utils/child-process-error-handler.d.ts.map +1 -0
  316. package/dist/utils/command-executor.d.ts.map +1 -1
  317. package/dist/utils/comment-metadata.d.ts.map +1 -1
  318. package/dist/utils/config-loader.d.ts.map +1 -1
  319. package/dist/utils/config-merger.d.ts.map +1 -1
  320. package/dist/utils/diff-processor.d.ts.map +1 -1
  321. package/dist/utils/env-exposure.d.ts.map +1 -1
  322. package/dist/utils/env-resolver.d.ts.map +1 -1
  323. package/dist/utils/fair-concurrency-limiter.d.ts.map +1 -1
  324. package/dist/utils/file-exclusion.d.ts.map +1 -1
  325. package/dist/utils/head-sha.d.ts.map +1 -1
  326. package/dist/utils/human-id.d.ts.map +1 -1
  327. package/dist/utils/instance-id.d.ts.map +1 -1
  328. package/dist/utils/interactive-prompt.d.ts.map +1 -1
  329. package/dist/utils/issue-normalizer.d.ts.map +1 -1
  330. package/dist/utils/json-text-extractor.d.ts.map +1 -1
  331. package/dist/utils/mermaid-telemetry.d.ts.map +1 -1
  332. package/dist/utils/oauth2-token-cache.d.ts.map +1 -1
  333. package/dist/utils/rate-limiter.d.ts.map +1 -1
  334. package/dist/utils/sandbox.d.ts.map +1 -1
  335. package/dist/utils/script-memory-ops.d.ts.map +1 -1
  336. package/dist/utils/script-tool-environment.d.ts.map +1 -1
  337. package/dist/utils/stdin-reader.d.ts.map +1 -1
  338. package/dist/utils/template-context.d.ts.map +1 -1
  339. package/dist/utils/tool-resolver.d.ts.map +1 -1
  340. package/dist/utils/toolkit-expander.d.ts.map +1 -1
  341. package/dist/utils/tracer-init.d.ts.map +1 -1
  342. package/dist/utils/ui-helpers.d.ts.map +1 -1
  343. package/dist/utils/user-facing-error.d.ts +4 -0
  344. package/dist/utils/user-facing-error.d.ts.map +1 -0
  345. package/dist/utils/workspace-manager.d.ts +5 -0
  346. package/dist/utils/workspace-manager.d.ts.map +1 -1
  347. package/dist/utils/worktree-cleanup.d.ts +28 -0
  348. package/dist/utils/worktree-cleanup.d.ts.map +1 -1
  349. package/dist/utils/worktree-manager.d.ts +6 -0
  350. package/dist/utils/worktree-manager.d.ts.map +1 -1
  351. package/dist/webhook-server.d.ts.map +1 -1
  352. package/dist/whatsapp/adapter.d.ts.map +1 -1
  353. package/dist/whatsapp/client.d.ts.map +1 -1
  354. package/dist/whatsapp/markdown.d.ts.map +1 -1
  355. package/dist/whatsapp/webhook-runner.d.ts +1 -0
  356. package/dist/whatsapp/webhook-runner.d.ts.map +1 -1
  357. package/dist/workflow-executor.d.ts +7 -0
  358. package/dist/workflow-executor.d.ts.map +1 -1
  359. package/dist/workflow-registry.d.ts.map +1 -1
  360. package/package.json +3 -3
  361. package/dist/output/traces/run-2026-05-05T12-31-09-587Z.ndjson +0 -252
  362. package/dist/sdk/chunk-IY5PQ5EN.mjs.map +0 -1
  363. package/dist/sdk/chunk-NPOVLLKH.mjs.map +0 -1
  364. package/dist/sdk/chunk-PDQTEBOJ.mjs.map +0 -1
  365. package/dist/sdk/chunk-SRU5TFNY.mjs.map +0 -1
  366. package/dist/sdk/chunk-TSX3YS3F.mjs.map +0 -1
  367. package/dist/sdk/chunk-XX6WT332.mjs.map +0 -1
  368. package/dist/sdk/chunk-XXAEN5KU.mjs.map +0 -1
  369. package/dist/sdk/session-registry-6PV6SGEJ.mjs +0 -10
  370. package/dist/sdk/slack-frontend-K3TPGERM.mjs.map +0 -1
  371. package/dist/sdk/task-evaluator-H3BXC7SE.mjs.map +0 -1
  372. package/dist/sdk/teams-frontend-6RRW533K.mjs.map +0 -1
  373. package/dist/sdk/telegram-frontend-5UA77YAT.mjs.map +0 -1
  374. package/dist/sdk/trace-reader-OVE4DL2D.mjs +0 -270
  375. package/dist/sdk/trace-reader-OVE4DL2D.mjs.map +0 -1
  376. package/dist/sdk/track-execution-VW6P3OYO.mjs.map +0 -1
  377. package/dist/sdk/whatsapp-frontend-72XEIUIR.mjs.map +0 -1
  378. package/dist/traces/run-2026-05-05T12-31-09-587Z.ndjson +0 -252
  379. /package/dist/sdk/{a2a-frontend-L3TQ7QQ6.mjs.map → a2a-frontend-XCQ4CQUF.mjs.map} +0 -0
  380. /package/dist/sdk/{check-provider-registry-RQYIEQLJ.mjs.map → check-provider-registry-2D3MCWP3.mjs.map} +0 -0
  381. /package/dist/sdk/{chunk-5TXIAPRA.mjs.map → chunk-S3GSZRYC.mjs.map} +0 -0
  382. /package/dist/sdk/{chunk-4UMDSYC7.mjs.map → chunk-VS3JE2DL.mjs.map} +0 -0
  383. /package/dist/sdk/{chunk-A4WHMRK2.mjs.map → chunk-YETG675X.mjs.map} +0 -0
  384. /package/dist/sdk/{config-BCYAVJ5S.mjs.map → config-H5IOLBFA.mjs.map} +0 -0
  385. /package/dist/sdk/{failure-condition-evaluator-ZBOSD574.mjs.map → failure-condition-evaluator-66PWLV3D.mjs.map} +0 -0
  386. /package/dist/sdk/{github-frontend-4WHT5JEU.mjs.map → github-frontend-BBFKCY4M.mjs.map} +0 -0
  387. /package/dist/sdk/{host-FKR7H26C.mjs.map → host-UQRZDLT7.mjs.map} +0 -0
  388. /package/dist/sdk/{routing-IB2PXYFC.mjs.map → oauth2-token-cache-OS7WHLDI.mjs.map} +0 -0
  389. /package/dist/sdk/{schedule-tool-LB33KL2W.mjs.map → routing-Q647KUMO.mjs.map} +0 -0
  390. /package/dist/sdk/{schedule-tool-handler-KYWZHKSS.mjs.map → schedule-tool-WMGSM6IT.mjs.map} +0 -0
  391. /package/dist/sdk/{session-registry-6PV6SGEJ.mjs.map → schedule-tool-handler-JMDHCGZ2.mjs.map} +0 -0
  392. /package/dist/sdk/{trace-helpers-AMZ2524G.mjs.map → session-registry-CENXWIFR.mjs.map} +0 -0
  393. /package/dist/sdk/{trace-serializer-EBHTHZYT.mjs.map → trace-helpers-AIUGQLK5.mjs.map} +0 -0
  394. /package/dist/sdk/{utcp-check-provider-Q4PD5EP2.mjs.map → trace-serializer-4TOIAVQL.mjs.map} +0 -0
  395. /package/dist/sdk/{workflow-check-provider-N6KSDPWU.mjs.map → utcp-check-provider-WDTSQ7DZ.mjs.map} +0 -0
@@ -0,0 +1,141 @@
1
+ import {
2
+ __esm
3
+ } from "./chunk-J7LXIPZS.mjs";
4
+
5
+ // src/utils/user-facing-error.ts
6
+ function normalizeWhitespace(text) {
7
+ return text.replace(/\s+/g, " ").trim();
8
+ }
9
+ function stripWrapperPrefixes(text) {
10
+ let cleaned = text.trim();
11
+ const wrapperPatterns = [
12
+ /^AI analysis failed:\s*/i,
13
+ /^Claude Code analysis failed:\s*/i,
14
+ /^ProbeAgent execution failed:\s*/i,
15
+ /^Workflow step '[^']+' failed:\s*/i,
16
+ /^Error:\s*/i
17
+ ];
18
+ let changed = true;
19
+ while (changed) {
20
+ changed = false;
21
+ for (const pattern of wrapperPatterns) {
22
+ const next = cleaned.replace(pattern, "");
23
+ if (next !== cleaned) {
24
+ cleaned = next.trim();
25
+ changed = true;
26
+ }
27
+ }
28
+ }
29
+ return cleaned;
30
+ }
31
+ function collectErrorStrings(value, seen = /* @__PURE__ */ new WeakSet(), depth = 0, out = []) {
32
+ if (value == null || depth > 3) return out;
33
+ if (typeof value === "string") {
34
+ if (value.trim()) out.push(value.trim());
35
+ return out;
36
+ }
37
+ if (typeof value !== "object") {
38
+ out.push(String(value));
39
+ return out;
40
+ }
41
+ if (seen.has(value)) return out;
42
+ seen.add(value);
43
+ const obj = value;
44
+ const candidateKeys = ["message", "responseBody", "error", "details", "body", "cause"];
45
+ for (const key of candidateKeys) {
46
+ if (key in obj) collectErrorStrings(obj[key], seen, depth + 1, out);
47
+ }
48
+ return out;
49
+ }
50
+ function matchUserFacingErrorMessage(raw) {
51
+ if (/no api key provided and neither claude nor codex command found/i.test(raw)) {
52
+ return "No API key provided and neither claude nor codex command found.";
53
+ }
54
+ if (/budget limit exceeded|budget exceeded/i.test(raw)) {
55
+ return "The AI provider budget limit was exceeded before a response could be generated. Please retry later or switch model/provider.";
56
+ }
57
+ if (/currently experiencing high demand|status.?unavailable|spikes in demand are usually temporary/i.test(
58
+ raw
59
+ )) {
60
+ return "The AI provider is currently experiencing high demand and did not generate a response. Please retry shortly.";
61
+ }
62
+ if (/rate limit/i.test(raw)) {
63
+ return "The AI provider rate limit was reached before a response could be generated. Please retry shortly.";
64
+ }
65
+ if (/401|authentication|api key|invalid api key|unauthorized/i.test(raw)) {
66
+ return "The AI provider request was rejected before a response could be generated. Please check credentials and provider access.";
67
+ }
68
+ if (/403|forbidden/i.test(raw)) {
69
+ return "The AI provider rejected the request before a response could be generated. This is usually caused by budget limits, access policy, or model permissions.";
70
+ }
71
+ if (/^request timed out$/i.test(raw) || /timed out|timeout/i.test(raw) && /(failed to get response from ai model|ai request|probeagent|provider|model|streamtext)/i.test(
72
+ raw
73
+ )) {
74
+ return "The AI request timed out before a response could be generated. Please retry.";
75
+ }
76
+ if (/no output generated|failed to get response from ai model/i.test(raw)) {
77
+ return "The AI provider failed before generating any response. This is usually caused by a provider-side limit, rate limit, or outage. Please retry.";
78
+ }
79
+ return null;
80
+ }
81
+ function formatUserFacingExecutionError(error) {
82
+ const collected = collectErrorStrings(error);
83
+ const raw = normalizeWhitespace(collected.join(" | ") || String(error ?? "Unknown error"));
84
+ const matched = matchUserFacingErrorMessage(raw);
85
+ if (matched) return matched;
86
+ const cleaned = normalizeWhitespace(stripWrapperPrefixes(raw));
87
+ return cleaned || "The request failed before a response could be generated. Please retry.";
88
+ }
89
+ function formatUserFacingExecutionMessage(message) {
90
+ return formatUserFacingExecutionError(message);
91
+ }
92
+ function issuePriority(issue) {
93
+ const ruleId = String(issue.ruleId || "");
94
+ const message = String(issue.message || "");
95
+ if (ruleId.startsWith("system/") || ruleId.endsWith("/error")) return 0;
96
+ if (ruleId.includes("timeout") || /timed out|timeout/i.test(message)) return 1;
97
+ if (ruleId.includes("contract/guarantee_failed") && /output\??\.\s*text|\btext\b.*length\s*>\s*0|\btext\b.*trim/i.test(message)) {
98
+ return 2;
99
+ }
100
+ return 3;
101
+ }
102
+ function formatGuaranteeFailureMessage(issue) {
103
+ const ruleId = String(issue.ruleId || "");
104
+ const message = String(issue.message || "");
105
+ if (!ruleId.includes("contract/guarantee_failed")) return null;
106
+ if (/output\??\.\s*text|\btext\b.*length\s*>\s*0|\btext\b.*trim/i.test(message)) {
107
+ return "The assistant failed to produce a response. This is usually caused by a provider-side limit, outage, or invalid structured output. Please retry.";
108
+ }
109
+ return null;
110
+ }
111
+ function summarizeUserFacingIssues(issues) {
112
+ if (!Array.isArray(issues) || issues.length === 0) return null;
113
+ const candidates = issues.filter(
114
+ (issue) => !!issue && typeof issue === "object" && String(issue.severity || "").toLowerCase() === "error"
115
+ );
116
+ if (candidates.length === 0) return null;
117
+ const prioritized = [...candidates].sort((a, b) => issuePriority(a) - issuePriority(b));
118
+ const seen = /* @__PURE__ */ new Set();
119
+ const messages = [];
120
+ for (const issue of prioritized) {
121
+ const formatted = formatGuaranteeFailureMessage(issue) || formatUserFacingExecutionMessage(String(issue.message || "Execution error"));
122
+ if (!formatted || seen.has(formatted)) continue;
123
+ seen.add(formatted);
124
+ messages.push(formatted);
125
+ if (messages.length >= 2) break;
126
+ }
127
+ return messages.length > 0 ? messages.join("\n") : null;
128
+ }
129
+ var init_user_facing_error = __esm({
130
+ "src/utils/user-facing-error.ts"() {
131
+ "use strict";
132
+ }
133
+ });
134
+
135
+ export {
136
+ formatUserFacingExecutionError,
137
+ formatUserFacingExecutionMessage,
138
+ summarizeUserFacingIssues,
139
+ init_user_facing_error
140
+ };
141
+ //# sourceMappingURL=chunk-TL3ZTYFY.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/user-facing-error.ts"],"sourcesContent":["function normalizeWhitespace(text: string): string {\n return text.replace(/\\s+/g, ' ').trim();\n}\n\nfunction stripWrapperPrefixes(text: string): string {\n let cleaned = text.trim();\n const wrapperPatterns = [\n /^AI analysis failed:\\s*/i,\n /^Claude Code analysis failed:\\s*/i,\n /^ProbeAgent execution failed:\\s*/i,\n /^Workflow step '[^']+' failed:\\s*/i,\n /^Error:\\s*/i,\n ];\n\n let changed = true;\n while (changed) {\n changed = false;\n for (const pattern of wrapperPatterns) {\n const next = cleaned.replace(pattern, '');\n if (next !== cleaned) {\n cleaned = next.trim();\n changed = true;\n }\n }\n }\n\n return cleaned;\n}\n\nfunction collectErrorStrings(\n value: unknown,\n seen = new WeakSet<object>(),\n depth = 0,\n out: string[] = []\n): string[] {\n if (value == null || depth > 3) return out;\n\n if (typeof value === 'string') {\n if (value.trim()) out.push(value.trim());\n return out;\n }\n\n if (typeof value !== 'object') {\n out.push(String(value));\n return out;\n }\n\n if (seen.has(value)) return out;\n seen.add(value);\n\n const obj = value as Record<string, unknown>;\n const candidateKeys = ['message', 'responseBody', 'error', 'details', 'body', 'cause'];\n\n for (const key of candidateKeys) {\n if (key in obj) collectErrorStrings(obj[key], seen, depth + 1, out);\n }\n\n return out;\n}\n\nfunction matchUserFacingErrorMessage(raw: string): string | null {\n if (/no api key provided and neither claude nor codex command found/i.test(raw)) {\n return 'No API key provided and neither claude nor codex command found.';\n }\n\n if (/budget limit exceeded|budget exceeded/i.test(raw)) {\n return 'The AI provider budget limit was exceeded before a response could be generated. Please retry later or switch model/provider.';\n }\n\n if (\n /currently experiencing high demand|status.?unavailable|spikes in demand are usually temporary/i.test(\n raw\n )\n ) {\n return 'The AI provider is currently experiencing high demand and did not generate a response. Please retry shortly.';\n }\n\n if (/rate limit/i.test(raw)) {\n return 'The AI provider rate limit was reached before a response could be generated. Please retry shortly.';\n }\n\n if (/401|authentication|api key|invalid api key|unauthorized/i.test(raw)) {\n return 'The AI provider request was rejected before a response could be generated. Please check credentials and provider access.';\n }\n\n if (/403|forbidden/i.test(raw)) {\n return 'The AI provider rejected the request before a response could be generated. This is usually caused by budget limits, access policy, or model permissions.';\n }\n\n if (\n /^request timed out$/i.test(raw) ||\n (/timed out|timeout/i.test(raw) &&\n /(failed to get response from ai model|ai request|probeagent|provider|model|streamtext)/i.test(\n raw\n ))\n ) {\n return 'The AI request timed out before a response could be generated. Please retry.';\n }\n\n if (/no output generated|failed to get response from ai model/i.test(raw)) {\n return 'The AI provider failed before generating any response. This is usually caused by a provider-side limit, rate limit, or outage. Please retry.';\n }\n\n return null;\n}\n\nexport function formatUserFacingExecutionError(error: unknown): string {\n const collected = collectErrorStrings(error);\n const raw = normalizeWhitespace(collected.join(' | ') || String(error ?? 'Unknown error'));\n const matched = matchUserFacingErrorMessage(raw);\n if (matched) return matched;\n\n const cleaned = normalizeWhitespace(stripWrapperPrefixes(raw));\n return cleaned || 'The request failed before a response could be generated. Please retry.';\n}\n\nexport function formatUserFacingExecutionMessage(message: string): string {\n return formatUserFacingExecutionError(message);\n}\n\ntype IssueLike = {\n ruleId?: string;\n message?: string;\n severity?: string;\n};\n\nfunction issuePriority(issue: IssueLike): number {\n const ruleId = String(issue.ruleId || '');\n const message = String(issue.message || '');\n\n if (ruleId.startsWith('system/') || ruleId.endsWith('/error')) return 0;\n if (ruleId.includes('timeout') || /timed out|timeout/i.test(message)) return 1;\n if (\n ruleId.includes('contract/guarantee_failed') &&\n /output\\??\\.\\s*text|\\btext\\b.*length\\s*>\\s*0|\\btext\\b.*trim/i.test(message)\n ) {\n return 2;\n }\n return 3;\n}\n\nfunction formatGuaranteeFailureMessage(issue: IssueLike): string | null {\n const ruleId = String(issue.ruleId || '');\n const message = String(issue.message || '');\n if (!ruleId.includes('contract/guarantee_failed')) return null;\n if (/output\\??\\.\\s*text|\\btext\\b.*length\\s*>\\s*0|\\btext\\b.*trim/i.test(message)) {\n return 'The assistant failed to produce a response. This is usually caused by a provider-side limit, outage, or invalid structured output. Please retry.';\n }\n return null;\n}\n\nexport function summarizeUserFacingIssues(issues: unknown): string | null {\n if (!Array.isArray(issues) || issues.length === 0) return null;\n\n const candidates = issues.filter(\n (issue): issue is IssueLike =>\n !!issue &&\n typeof issue === 'object' &&\n String((issue as IssueLike).severity || '').toLowerCase() === 'error'\n );\n if (candidates.length === 0) return null;\n\n const prioritized = [...candidates].sort((a, b) => issuePriority(a) - issuePriority(b));\n const seen = new Set<string>();\n const messages: string[] = [];\n\n for (const issue of prioritized) {\n const formatted =\n formatGuaranteeFailureMessage(issue) ||\n formatUserFacingExecutionMessage(String(issue.message || 'Execution error'));\n if (!formatted || seen.has(formatted)) continue;\n seen.add(formatted);\n messages.push(formatted);\n if (messages.length >= 2) break;\n }\n\n return messages.length > 0 ? messages.join('\\n') : null;\n}\n"],"mappings":"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","names":[]}
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  FailureConditionEvaluator,
3
3
  init_failure_condition_evaluator
4
- } from "./chunk-5TXIAPRA.mjs";
4
+ } from "./chunk-S3GSZRYC.mjs";
5
5
  import {
6
6
  addEvent,
7
7
  init_trace_helpers
8
- } from "./chunk-A4WHMRK2.mjs";
8
+ } from "./chunk-YETG675X.mjs";
9
9
  import {
10
10
  createExtendedLiquid,
11
11
  init_liquid_extensions
@@ -1499,4 +1499,4 @@ export {
1499
1499
  evaluateTransitions,
1500
1500
  init_routing
1501
1501
  };
1502
- //# sourceMappingURL=chunk-4UMDSYC7.mjs.map
1502
+ //# sourceMappingURL=chunk-VS3JE2DL.mjs.map
@@ -2,7 +2,7 @@ import {
2
2
  getInstanceId,
3
3
  init_instance_id,
4
4
  require_package
5
- } from "./chunk-NEZY2MXM.mjs";
5
+ } from "./chunk-B2LQT6QU.mjs";
6
6
  import {
7
7
  init_metrics,
8
8
  metrics_exports
@@ -1147,4 +1147,4 @@ export {
1147
1147
  trace_helpers_exports,
1148
1148
  init_trace_helpers
1149
1149
  };
1150
- //# sourceMappingURL=chunk-A4WHMRK2.mjs.map
1150
+ //# sourceMappingURL=chunk-YETG675X.mjs.map
@@ -1396,6 +1396,14 @@ var init_config_schema = __esm({
1396
1396
  },
1397
1397
  description: 'Tags for categorizing and filtering checks (e.g., ["local", "fast", "security"])'
1398
1398
  },
1399
+ debounce: {
1400
+ type: "number",
1401
+ description: "Debounce window in milliseconds. When set, multiple invocations of this step (across concurrent engine instances) within the window are coalesced \u2014 only the last invocation actually executes after the window expires. Useful for steps that should run once after a burst of triggers settles.\n\nThe debounce key defaults to the step's fully-qualified check ID. Use `debounce_key` to group different steps under the same debounce."
1402
+ },
1403
+ debounce_key: {
1404
+ type: "string",
1405
+ description: "Custom debounce key. Steps sharing the same key share the same debounce window."
1406
+ },
1399
1407
  criticality: {
1400
1408
  type: "string",
1401
1409
  enum: ["external", "internal", "policy", "info"],
@@ -1605,7 +1613,7 @@ var init_config_schema = __esm({
1605
1613
  description: "Arguments/inputs for the workflow"
1606
1614
  },
1607
1615
  overrides: {
1608
- $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-15521-30601-src_types_config.ts-0-62422%3E%3E",
1616
+ $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-15521-31208-src_types_config.ts-0-63102%3E%3E",
1609
1617
  description: "Override specific step configurations in the workflow"
1610
1618
  },
1611
1619
  output_mapping: {
@@ -1621,7 +1629,7 @@ var init_config_schema = __esm({
1621
1629
  description: "Config file path - alternative to workflow ID (loads a Visor config file as workflow)"
1622
1630
  },
1623
1631
  workflow_overrides: {
1624
- $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-15521-30601-src_types_config.ts-0-62422%3E%3E",
1632
+ $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-15521-31208-src_types_config.ts-0-63102%3E%3E",
1625
1633
  description: "Alias for overrides - workflow step overrides (backward compatibility)"
1626
1634
  },
1627
1635
  ref: {
@@ -2349,7 +2357,7 @@ var init_config_schema = __esm({
2349
2357
  description: "Custom output name (defaults to workflow name)"
2350
2358
  },
2351
2359
  overrides: {
2352
- $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-15521-30601-src_types_config.ts-0-62422%3E%3E",
2360
+ $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-15521-31208-src_types_config.ts-0-63102%3E%3E",
2353
2361
  description: "Step overrides"
2354
2362
  },
2355
2363
  output_mapping: {
@@ -2364,13 +2372,13 @@ var init_config_schema = __esm({
2364
2372
  "^x-": {}
2365
2373
  }
2366
2374
  },
2367
- "Record<string,Partial<interface-src_types_config.ts-15521-30601-src_types_config.ts-0-62422>>": {
2375
+ "Record<string,Partial<interface-src_types_config.ts-15521-31208-src_types_config.ts-0-63102>>": {
2368
2376
  type: "object",
2369
2377
  additionalProperties: {
2370
- $ref: "#/definitions/Partial%3Cinterface-src_types_config.ts-15521-30601-src_types_config.ts-0-62422%3E"
2378
+ $ref: "#/definitions/Partial%3Cinterface-src_types_config.ts-15521-31208-src_types_config.ts-0-63102%3E"
2371
2379
  }
2372
2380
  },
2373
- "Partial<interface-src_types_config.ts-15521-30601-src_types_config.ts-0-62422>": {
2381
+ "Partial<interface-src_types_config.ts-15521-31208-src_types_config.ts-0-63102>": {
2374
2382
  type: "object",
2375
2383
  additionalProperties: false
2376
2384
  },
@@ -3742,7 +3750,7 @@ var init_config_schema = __esm({
3742
3750
  },
3743
3751
  workflow: {
3744
3752
  type: "string",
3745
- description: "Workflow/check ID to run"
3753
+ description: "Workflow/check ID to run. Omit to treat inputs.text as a user message through the full pipeline."
3746
3754
  },
3747
3755
  inputs: {
3748
3756
  $ref: "#/definitions/Record%3Cstring%2Cunknown%3E",
@@ -3785,7 +3793,7 @@ var init_config_schema = __esm({
3785
3793
  description: "Timezone for schedule (default: UTC or scheduler default)"
3786
3794
  }
3787
3795
  },
3788
- required: ["schedule", "workflow"],
3796
+ required: ["schedule"],
3789
3797
  additionalProperties: false,
3790
3798
  description: "Static cron job defined in YAML configuration These are always executed by the scheduler daemon",
3791
3799
  patternProperties: {
@@ -6115,4 +6123,4 @@ export {
6115
6123
  config_exports,
6116
6124
  init_config
6117
6125
  };
6118
- //# sourceMappingURL=chunk-XX6WT332.mjs.map
6126
+ //# sourceMappingURL=chunk-YTG5DN72.mjs.map