@probelabs/visor 0.1.124 → 0.1.126

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 (195) hide show
  1. package/dist/config.d.ts.map +1 -1
  2. package/dist/docs/DEPLOYMENT.md +117 -11
  3. package/dist/docs/GITHUB_CHECKS.md +18 -4
  4. package/dist/docs/NPM_USAGE.md +112 -39
  5. package/dist/docs/action-reference.md +63 -9
  6. package/dist/docs/advanced-ai.md +58 -51
  7. package/dist/docs/ai-configuration.md +99 -11
  8. package/dist/docs/ai-custom-tools-usage.md +70 -33
  9. package/dist/docs/ai-custom-tools.md +50 -27
  10. package/dist/docs/architecture.md +1232 -0
  11. package/dist/docs/bot-transports-rfc.md +13 -3
  12. package/dist/docs/ci-cli-mode.md +116 -8
  13. package/dist/docs/claude-code.md +111 -41
  14. package/dist/docs/command-provider.md +37 -15
  15. package/dist/docs/commands.md +252 -6
  16. package/dist/docs/configuration.md +138 -4
  17. package/dist/docs/contributing.md +737 -0
  18. package/dist/docs/custom-tools.md +39 -8
  19. package/dist/docs/dashboards/README.md +33 -19
  20. package/dist/docs/debug-visualizer-progress.md +14 -13
  21. package/dist/docs/debug-visualizer-rfc.md +14 -13
  22. package/dist/docs/debug-visualizer.md +30 -5
  23. package/dist/docs/debugging.md +73 -8
  24. package/dist/docs/default-output-schema.md +24 -20
  25. package/dist/docs/dependencies.md +75 -21
  26. package/dist/docs/dev-playbook.md +85 -9
  27. package/dist/docs/engine-pause-resume-rfc.md +11 -11
  28. package/dist/docs/engine-state-machine-plan.md +10 -3
  29. package/dist/docs/event-driven-github-integration-rfc.md +20 -11
  30. package/dist/docs/event-triggers.md +95 -6
  31. package/dist/docs/execution-statistics-rfc.md +16 -4
  32. package/dist/docs/fact-validator-gap-analysis.md +12 -1
  33. package/dist/docs/fact-validator-implementation-plan.md +19 -11
  34. package/dist/docs/fail-if.md +116 -11
  35. package/dist/docs/failure-conditions-implementation.md +40 -6
  36. package/dist/docs/failure-conditions-schema.md +243 -87
  37. package/dist/docs/failure-routing-rfc.md +43 -18
  38. package/dist/docs/failure-routing.md +80 -23
  39. package/dist/docs/faq.md +836 -0
  40. package/dist/docs/foreach-dependency-propagation.md +32 -15
  41. package/dist/docs/github-ops.md +6 -5
  42. package/dist/docs/glossary.md +322 -0
  43. package/dist/docs/goto-forward-run-plan.md +23 -10
  44. package/dist/docs/guides/criticality-modes.md +15 -13
  45. package/dist/docs/guides/fault-management-and-contracts.md +8 -5
  46. package/dist/docs/guides/workflow-style-guide.md +17 -8
  47. package/dist/docs/http.md +102 -3
  48. package/dist/docs/human-input-provider.md +20 -36
  49. package/dist/docs/index.md +206 -0
  50. package/dist/docs/lifecycle-hooks.md +322 -2
  51. package/dist/docs/limits.md +20 -5
  52. package/dist/docs/liquid-templates.md +86 -14
  53. package/dist/docs/loop-routing-refactor.md +4 -2
  54. package/dist/docs/mcp-provider.md +53 -19
  55. package/dist/docs/mcp.md +27 -1
  56. package/dist/docs/memory.md +7 -2
  57. package/dist/docs/migration.md +596 -0
  58. package/dist/docs/observability.md +227 -6
  59. package/dist/docs/output-formats.md +388 -9
  60. package/dist/docs/output-history.md +36 -6
  61. package/dist/docs/performance.md +510 -4
  62. package/dist/docs/pluggable.md +95 -4
  63. package/dist/docs/proposals/snapshot-scope-execution.md +6 -5
  64. package/dist/docs/providers/git-checkout.md +16 -14
  65. package/dist/docs/providers/noop.md +696 -0
  66. package/dist/docs/recipes.md +8 -9
  67. package/dist/docs/rfc/git-checkout-step.md +3 -1
  68. package/dist/docs/rfc/on_init-hook.md +18 -5
  69. package/dist/docs/rfc/workspace-isolation.md +16 -0
  70. package/dist/docs/roadmap/criticality-implementation-tasks.md +27 -27
  71. package/dist/docs/router-patterns.md +155 -43
  72. package/dist/docs/schema-templates.md +51 -15
  73. package/dist/docs/script.md +162 -13
  74. package/dist/docs/sdk.md +46 -12
  75. package/dist/docs/security.md +464 -5
  76. package/dist/docs/slack-integration.md +481 -0
  77. package/dist/docs/tag-filtering.md +60 -20
  78. package/dist/docs/telemetry-setup.md +157 -46
  79. package/dist/docs/test-framework-rfc.md +37 -36
  80. package/dist/docs/testing/assertions.md +92 -4
  81. package/dist/docs/testing/ci.md +56 -7
  82. package/dist/docs/testing/cli.md +57 -15
  83. package/dist/docs/testing/cookbook.md +53 -20
  84. package/dist/docs/testing/dsl-reference.md +110 -9
  85. package/dist/docs/testing/fixtures-and-mocks.md +28 -3
  86. package/dist/docs/testing/flows.md +59 -4
  87. package/dist/docs/testing/getting-started.md +14 -13
  88. package/dist/docs/testing/troubleshooting.md +39 -2
  89. package/dist/docs/timeouts.md +174 -18
  90. package/dist/docs/troubleshooting.md +176 -6
  91. package/dist/docs/workflow-creation-guide.md +101 -3
  92. package/dist/docs/workflows.md +138 -41
  93. package/dist/examples/README.md +169 -4
  94. package/dist/examples/ai-custom-tools-simple.yaml +2 -3
  95. package/dist/examples/cron-webhook-config.yaml +15 -0
  96. package/dist/examples/forEach-example.yaml +6 -0
  97. package/dist/examples/git-checkout-basic.yaml +4 -0
  98. package/dist/examples/git-checkout-compare.yaml +6 -0
  99. package/dist/examples/git-checkout-cross-repo.yaml +7 -0
  100. package/dist/examples/http-integration-config.yaml +30 -0
  101. package/dist/examples/https-server-config.yaml +15 -0
  102. package/dist/examples/mcp-provider-example.yaml +10 -10
  103. package/dist/examples/transform-example.yaml +3 -0
  104. package/dist/examples/webhook-pipeline-config.yaml +18 -0
  105. package/dist/examples/workflows/workflow-composition-example.yaml +4 -0
  106. package/dist/frontends/slack-frontend.d.ts +2 -0
  107. package/dist/frontends/slack-frontend.d.ts.map +1 -1
  108. package/dist/generated/config-schema.d.ts +11 -7
  109. package/dist/generated/config-schema.d.ts.map +1 -1
  110. package/dist/generated/config-schema.json +11 -7
  111. package/dist/index.js +3127 -974
  112. package/dist/output/traces/{run-2026-01-28T16-15-24-569Z.ndjson → run-2026-01-31T16-37-22-321Z.ndjson} +84 -84
  113. package/dist/output/traces/{run-2026-01-28T16-16-09-757Z.ndjson → run-2026-01-31T16-38-06-031Z.ndjson} +1013 -1013
  114. package/dist/providers/ai-check-provider.d.ts +9 -2
  115. package/dist/providers/ai-check-provider.d.ts.map +1 -1
  116. package/dist/providers/command-check-provider.d.ts.map +1 -1
  117. package/dist/providers/mcp-custom-sse-server.d.ts +17 -1
  118. package/dist/providers/mcp-custom-sse-server.d.ts.map +1 -1
  119. package/dist/providers/workflow-check-provider.d.ts.map +1 -1
  120. package/dist/providers/workflow-tool-executor.d.ts +68 -0
  121. package/dist/providers/workflow-tool-executor.d.ts.map +1 -0
  122. package/dist/sdk/{check-provider-registry-AQ3JETBG.mjs → check-provider-registry-3KI5RKXT.mjs} +6 -5
  123. package/dist/sdk/check-provider-registry-IYILYY35.mjs +28 -0
  124. package/dist/sdk/chunk-2CPMMNIX.mjs +1459 -0
  125. package/dist/sdk/chunk-2CPMMNIX.mjs.map +1 -0
  126. package/dist/sdk/chunk-5LI6T4O3.mjs +3600 -0
  127. package/dist/sdk/chunk-5LI6T4O3.mjs.map +1 -0
  128. package/dist/sdk/{chunk-YLQ4UN62.mjs → chunk-A4PGHURG.mjs} +6838 -6257
  129. package/dist/sdk/chunk-A4PGHURG.mjs.map +1 -0
  130. package/dist/sdk/chunk-EXFGO4FX.mjs +147 -0
  131. package/dist/sdk/chunk-EXFGO4FX.mjs.map +1 -0
  132. package/dist/sdk/chunk-PJ7K5UFC.mjs +17732 -0
  133. package/dist/sdk/chunk-PJ7K5UFC.mjs.map +1 -0
  134. package/dist/sdk/{chunk-BHZ4CKUS.mjs → chunk-PXFIALUH.mjs} +77 -8
  135. package/dist/sdk/chunk-PXFIALUH.mjs.map +1 -0
  136. package/dist/sdk/{chunk-PVITVJ6J.mjs → chunk-RTKJXNZS.mjs} +32 -9
  137. package/dist/sdk/chunk-RTKJXNZS.mjs.map +1 -0
  138. package/dist/sdk/chunk-VW2GBXQT.mjs +606 -0
  139. package/dist/sdk/chunk-VW2GBXQT.mjs.map +1 -0
  140. package/dist/sdk/{config-RQQPMLRD.mjs → config-5AUYQFHE.mjs} +2 -2
  141. package/dist/sdk/config-6CUVEH7H.mjs +16 -0
  142. package/dist/sdk/config-6CUVEH7H.mjs.map +1 -0
  143. package/dist/sdk/{github-frontend-6Q4BISZX.mjs → github-frontend-BZ4N3BFZ.mjs} +7 -3
  144. package/dist/sdk/github-frontend-BZ4N3BFZ.mjs.map +1 -0
  145. package/dist/sdk/host-4MT3EW2I.mjs +52 -0
  146. package/dist/sdk/{host-P5NQICP7.mjs → host-NYWXLIFC.mjs} +2 -2
  147. package/dist/sdk/host-NYWXLIFC.mjs.map +1 -0
  148. package/dist/sdk/{routing-DEY2AIXM.mjs → routing-6R42GXUO.mjs} +2 -2
  149. package/dist/sdk/routing-6R42GXUO.mjs.map +1 -0
  150. package/dist/sdk/routing-7FXPULTO.mjs +24 -0
  151. package/dist/sdk/routing-7FXPULTO.mjs.map +1 -0
  152. package/dist/sdk/sdk.d.mts +3 -1
  153. package/dist/sdk/sdk.d.ts +3 -1
  154. package/dist/sdk/sdk.js +12163 -11204
  155. package/dist/sdk/sdk.js.map +1 -1
  156. package/dist/sdk/sdk.mjs +14 -10
  157. package/dist/sdk/sdk.mjs.map +1 -1
  158. package/dist/sdk/slack-frontend-JUT3TYVC.mjs +821 -0
  159. package/dist/sdk/slack-frontend-JUT3TYVC.mjs.map +1 -0
  160. package/dist/sdk/workflow-check-provider-H3CUOLUD.mjs +28 -0
  161. package/dist/sdk/workflow-check-provider-H3CUOLUD.mjs.map +1 -0
  162. package/dist/sdk/workflow-check-provider-YUNNF4KC.mjs +28 -0
  163. package/dist/sdk/workflow-check-provider-YUNNF4KC.mjs.map +1 -0
  164. package/dist/sdk/workflow-registry-KFWSDSLM.mjs +12 -0
  165. package/dist/sdk/workflow-registry-KFWSDSLM.mjs.map +1 -0
  166. package/dist/slack/socket-runner.d.ts +2 -0
  167. package/dist/slack/socket-runner.d.ts.map +1 -1
  168. package/dist/state-machine/context/workflow-inputs.d.ts +20 -0
  169. package/dist/state-machine/context/workflow-inputs.d.ts.map +1 -0
  170. package/dist/state-machine/dispatch/execution-invoker.d.ts.map +1 -1
  171. package/dist/state-machine/dispatch/foreach-processor.d.ts.map +1 -1
  172. package/dist/state-machine/dispatch/stats-manager.d.ts.map +1 -1
  173. package/dist/state-machine/states/level-dispatch.d.ts.map +1 -1
  174. package/dist/state-machine/states/routing.d.ts +2 -1
  175. package/dist/state-machine/states/routing.d.ts.map +1 -1
  176. package/dist/traces/{run-2026-01-28T16-15-24-569Z.ndjson → run-2026-01-31T16-37-22-321Z.ndjson} +84 -84
  177. package/dist/traces/{run-2026-01-28T16-16-09-757Z.ndjson → run-2026-01-31T16-38-06-031Z.ndjson} +1013 -1013
  178. package/dist/types/config.d.ts +3 -1
  179. package/dist/types/config.d.ts.map +1 -1
  180. package/dist/utils/human-id.d.ts +12 -0
  181. package/dist/utils/human-id.d.ts.map +1 -0
  182. package/dist/utils/worktree-manager.d.ts +3 -0
  183. package/dist/utils/worktree-manager.d.ts.map +1 -1
  184. package/dist/workflow-executor.d.ts.map +1 -1
  185. package/dist/workflow-registry.d.ts +1 -0
  186. package/dist/workflow-registry.d.ts.map +1 -1
  187. package/package.json +2 -2
  188. package/dist/sdk/chunk-BHZ4CKUS.mjs.map +0 -1
  189. package/dist/sdk/chunk-PVITVJ6J.mjs.map +0 -1
  190. package/dist/sdk/chunk-YLQ4UN62.mjs.map +0 -1
  191. package/dist/sdk/github-frontend-6Q4BISZX.mjs.map +0 -1
  192. /package/dist/sdk/{check-provider-registry-AQ3JETBG.mjs.map → check-provider-registry-3KI5RKXT.mjs.map} +0 -0
  193. /package/dist/sdk/{config-RQQPMLRD.mjs.map → check-provider-registry-IYILYY35.mjs.map} +0 -0
  194. /package/dist/sdk/{routing-DEY2AIXM.mjs.map → config-5AUYQFHE.mjs.map} +0 -0
  195. /package/dist/sdk/{host-P5NQICP7.mjs.map → host-4MT3EW2I.mjs.map} +0 -0
@@ -23,6 +23,9 @@ steps:
23
23
  # Fetch repository statistics from GitHub API
24
24
  github-stats:
25
25
  type: http_client
26
+ criticality: external
27
+ assume: "pr.base"
28
+ schema: plain
26
29
  url: "https://api.github.com/repos/{{ pr.base | split: '/' | last }}/stats/contributors"
27
30
  headers:
28
31
  Authorization: "token ${GITHUB_TOKEN}"
@@ -38,6 +41,9 @@ steps:
38
41
  # Fetch build status from CI/CD system
39
42
  ci-status:
40
43
  type: http_client
44
+ criticality: external
45
+ assume: "pr.head"
46
+ schema: plain
41
47
  url: "${CI_API_URL}/builds/{{ pr.head }}"
42
48
  method: GET
43
49
  headers:
@@ -52,6 +58,9 @@ steps:
52
58
  # Poll external service with POST request
53
59
  vulnerability-check:
54
60
  type: http_client
61
+ criticality: external
62
+ assume: "pr.base"
63
+ schema: plain
55
64
  url: "${SECURITY_API_URL}/scan"
56
65
  method: POST
57
66
  body: |
@@ -74,6 +83,9 @@ steps:
74
83
  # Receive GitHub webhook events
75
84
  github-webhook-receiver:
76
85
  type: http_input
86
+ criticality: external
87
+ assume: "true"
88
+ schema: plain
77
89
  endpoint: "/github/webhook"
78
90
  on: [webhook_received]
79
91
  transform: |
@@ -86,6 +98,9 @@ steps:
86
98
  # Receive monitoring health checks
87
99
  health-check-receiver:
88
100
  type: http_input
101
+ criticality: external
102
+ assume: "true"
103
+ schema: plain
89
104
  endpoint: "/monitoring/health"
90
105
  on: [webhook_received]
91
106
 
@@ -142,6 +157,9 @@ steps:
142
157
  # Send analysis to Slack
143
158
  slack-notification:
144
159
  type: http
160
+ criticality: external
161
+ assume: "outputs['contributor-analysis'] && outputs['build-analysis']"
162
+ schema: plain
145
163
  depends_on: [contributor-analysis, build-analysis]
146
164
  url: "${SLACK_WEBHOOK_URL}"
147
165
  method: POST
@@ -165,6 +183,9 @@ steps:
165
183
  # Send metrics to monitoring system
166
184
  metrics-export:
167
185
  type: http
186
+ criticality: external
187
+ assume: "outputs['github-stats'] && outputs['ci-status']"
188
+ schema: plain
168
189
  depends_on: [github-stats, ci-status]
169
190
  url: "${METRICS_ENDPOINT}"
170
191
  method: POST
@@ -185,6 +206,9 @@ steps:
185
206
  # Create JIRA ticket for critical vulnerabilities
186
207
  jira-ticket:
187
208
  type: http
209
+ criticality: external
210
+ assume: "outputs['vulnerability-check']"
211
+ schema: plain
188
212
  depends_on: [vulnerability-check]
189
213
  if: "outputs['vulnerability-check'].suggestions | first | parse_json: 'risk_score' > 7"
190
214
  url: "${JIRA_API_URL}/rest/api/2/issue"
@@ -208,6 +232,9 @@ steps:
208
232
  # Daily summary that combines multiple data sources
209
233
  daily-report:
210
234
  type: http_client
235
+ criticality: external
236
+ assume: "true"
237
+ schema: plain
211
238
  schedule: "0 18 * * *" # 6 PM daily
212
239
  url: "${ANALYTICS_API}/daily-summary"
213
240
  method: GET
@@ -220,6 +247,9 @@ steps:
220
247
  # Send daily report via email service
221
248
  email-report:
222
249
  type: http
250
+ criticality: external
251
+ assume: "outputs['daily-report']"
252
+ schema: plain
223
253
  depends_on: [daily-report]
224
254
  url: "${EMAIL_SERVICE_URL}/send"
225
255
  method: POST
@@ -56,6 +56,9 @@ steps:
56
56
 
57
57
  github-webhook:
58
58
  type: http_input
59
+ criticality: external
60
+ assume: "true"
61
+ schema: plain
59
62
  endpoint: "/webhook/github"
60
63
  on: [webhook_received]
61
64
  transform: |
@@ -68,6 +71,9 @@ steps:
68
71
 
69
72
  jenkins-webhook:
70
73
  type: http_input
74
+ criticality: external
75
+ assume: "true"
76
+ schema: plain
71
77
  endpoint: "/webhook/jenkins"
72
78
  on: [webhook_received]
73
79
  transform: |
@@ -80,6 +86,9 @@ steps:
80
86
 
81
87
  datadog-alert:
82
88
  type: http_input
89
+ criticality: external
90
+ assume: "true"
91
+ schema: plain
83
92
  endpoint: "/webhook/datadog"
84
93
  on: [webhook_received]
85
94
  transform: |
@@ -136,6 +145,9 @@ steps:
136
145
  # Send to secure internal API using HTTPS
137
146
  internal-api-notification:
138
147
  type: http
148
+ criticality: external
149
+ assume: "outputs['github-analysis'] && outputs['jenkins-build-analysis']"
150
+ schema: plain
139
151
  depends_on: [github-analysis, jenkins-build-analysis]
140
152
  url: "https://internal-api.example.com/notifications"
141
153
  method: POST
@@ -156,6 +168,9 @@ steps:
156
168
  # Fetch from secure API endpoint
157
169
  secure-api-fetch:
158
170
  type: http_client
171
+ criticality: external
172
+ assume: "true"
173
+ schema: plain
159
174
  url: "https://secure-api.example.com/data"
160
175
  method: GET
161
176
  headers:
@@ -12,7 +12,7 @@ steps:
12
12
  type: mcp
13
13
  transport: stdio
14
14
  command: npx
15
- args: ["-y", "@semgrep/mcp"]
15
+ command_args: ["-y", "@semgrep/mcp"]
16
16
  method: scan
17
17
  methodArgs:
18
18
  paths: "{{ files | map: 'filename' | json }}"
@@ -27,7 +27,7 @@ steps:
27
27
  type: mcp
28
28
  transport: stdio
29
29
  command: npx
30
- args: ["-y", "@modelcontextprotocol/server-github"]
30
+ command_args: ["-y", "@modelcontextprotocol/server-github"]
31
31
  method: search_issues
32
32
  methodArgs:
33
33
  query: "{{ pr.title | split: ' ' | slice: 0, 3 | join: ' ' }}"
@@ -54,7 +54,7 @@ steps:
54
54
  type: mcp
55
55
  transport: stdio
56
56
  command: npx
57
- args: ["-y", "@modelcontextprotocol/server-puppeteer"]
57
+ command_args: ["-y", "@modelcontextprotocol/server-puppeteer"]
58
58
  method: navigate
59
59
  # Only run on markdown/doc files
60
60
  if: "files.some(f => f.filename.endsWith('.md'))"
@@ -85,7 +85,7 @@ steps:
85
85
  type: mcp
86
86
  transport: stdio
87
87
  command: npx
88
- args: ["-y", "@modelcontextprotocol/server-postgres"]
88
+ command_args: ["-y", "@modelcontextprotocol/server-postgres"]
89
89
  # Only run if SQL files changed
90
90
  if: "files.some(f => f.filename.includes('migrations/'))"
91
91
  method: query
@@ -114,7 +114,7 @@ steps:
114
114
  type: mcp
115
115
  transport: stdio
116
116
  command: npx
117
- args: ["-y", "@modelcontextprotocol/server-filesystem", "/workspace"]
117
+ command_args: ["-y", "@modelcontextprotocol/server-filesystem", "/workspace"]
118
118
  method: read_file
119
119
  forEach:
120
120
  items: "{{ files | map: 'filename' | json }}"
@@ -153,7 +153,7 @@ steps:
153
153
  depends_on: [count-critical-issues]
154
154
  transport: stdio
155
155
  command: npx
156
- args: ["-y", "@modelcontextprotocol/server-slack"]
156
+ command_args: ["-y", "@modelcontextprotocol/server-slack"]
157
157
  # Only notify if critical issues found
158
158
  if: "outputs['semgrep-security-scan']?.issues?.filter(i => i.severity === 'error').length > 0"
159
159
  method: post_message
@@ -171,7 +171,7 @@ steps:
171
171
  type: mcp
172
172
  transport: stdio
173
173
  command: npx
174
- args: ["-y", "@modelcontextprotocol/server-git", "."]
174
+ command_args: ["-y", "@modelcontextprotocol/server-git", "."]
175
175
  method: log
176
176
  # Only check if sensitive files changed
177
177
  if: "files.some(f => f.filename.match(/(env|secret|key|password)/))"
@@ -199,7 +199,7 @@ steps:
199
199
  type: mcp
200
200
  transport: stdio
201
201
  command: npx
202
- args: ["-y", "@mendable/firecrawl-mcp"]
202
+ command_args: ["-y", "@mendable/firecrawl-mcp"]
203
203
  # Only run on API-related changes
204
204
  if: "files.some(f => f.filename.includes('api/') || f.filename.includes('swagger'))"
205
205
  method: scrape
@@ -227,7 +227,7 @@ steps:
227
227
  type: mcp
228
228
  transport: stdio
229
229
  command: npx
230
- args: ["-y", "@atlassian/mcp-server-jira"]
230
+ command_args: ["-y", "@atlassian/mcp-server-jira"]
231
231
  method: get_issue
232
232
  argsTransform: |
233
233
  {
@@ -268,7 +268,7 @@ steps:
268
268
  type: mcp
269
269
  transport: stdio
270
270
  command: npx
271
- args: ["-y", "@modelcontextprotocol/server-brave-search"]
271
+ command_args: ["-y", "@modelcontextprotocol/server-brave-search"]
272
272
  # Only run if package files changed
273
273
  if: "files.some(f => f.filename.match(/package\\.json|requirements\\.txt|go\\.mod/))"
274
274
  method: search
@@ -87,6 +87,9 @@ steps:
87
87
  # Example 7: Extract nested array from API response
88
88
  fetch-pr-comments:
89
89
  type: http_client
90
+ criticality: external
91
+ assume: "pr.repo && pr.number"
92
+ schema: plain
90
93
  url: "https://api.github.com/repos/{{ pr.repo }}/pulls/{{ pr.number }}/comments"
91
94
  transform: |
92
95
  [
@@ -37,6 +37,9 @@ steps:
37
37
  # Receive GitHub push events
38
38
  github-push-receiver:
39
39
  type: http_input
40
+ criticality: external
41
+ assume: "true"
42
+ schema: plain
40
43
  endpoint: "/github/push"
41
44
  on: [webhook_received]
42
45
 
@@ -62,6 +65,9 @@ steps:
62
65
  # Notify development team about push analysis
63
66
  notify-dev-team:
64
67
  type: http
68
+ criticality: external
69
+ assume: "outputs['push-code-analysis']"
70
+ schema: plain
65
71
  depends_on: [push-code-analysis]
66
72
  url: "${DEV_TEAM_WEBHOOK}" # Read from DEV_TEAM_WEBHOOK environment variable
67
73
  body: |
@@ -105,6 +111,9 @@ steps:
105
111
  # Create GitHub issue if critical problems found
106
112
  create-github-issue:
107
113
  type: http
114
+ criticality: external
115
+ assume: "outputs['push-code-analysis']"
116
+ schema: plain
108
117
  depends_on: [push-code-analysis]
109
118
  if: "outputs['push-code-analysis'].criticalIssues > 0"
110
119
  url: "https://api.github.com/repos/{{ outputs['github-push-receiver'].repository }}/issues"
@@ -125,6 +134,9 @@ steps:
125
134
  # Receive JIRA webhook events
126
135
  jira-receiver:
127
136
  type: http_input
137
+ criticality: external
138
+ assume: "true"
139
+ schema: plain
128
140
  endpoint: "/jira/issue"
129
141
  on: [webhook_received]
130
142
 
@@ -148,6 +160,9 @@ steps:
148
160
  # Update team dashboard
149
161
  update-dashboard:
150
162
  type: http
163
+ criticality: external
164
+ assume: "outputs['jira-code-impact']"
165
+ schema: plain
151
166
  depends_on: [jira-code-impact]
152
167
  url: "${DASHBOARD_WEBHOOK}" # Read from DASHBOARD_WEBHOOK environment variable
153
168
  method: PUT
@@ -182,6 +197,9 @@ steps:
182
197
  # Send daily summary to multiple channels
183
198
  broadcast-summary:
184
199
  type: http
200
+ criticality: external
201
+ assume: "outputs['daily-summary']"
202
+ schema: plain
185
203
  depends_on: [daily-summary]
186
204
  url: "${BROADCAST_WEBHOOK}" # Read from BROADCAST_WEBHOOK environment variable
187
205
  body: |
@@ -24,6 +24,8 @@ checks:
24
24
  use_calculator:
25
25
  type: workflow
26
26
  workflow: calculator
27
+ criticality: internal
28
+ assume: "outputs.parent_state_setup"
27
29
  depends_on: [parent_state_setup]
28
30
  args:
29
31
  operation: multiply
@@ -80,6 +82,8 @@ checks:
80
82
  use_calculator_again:
81
83
  type: workflow
82
84
  workflow: calculator
85
+ criticality: internal
86
+ assume: "outputs.test_state_isolation"
83
87
  depends_on: [test_state_isolation]
84
88
  args:
85
89
  operation: add
@@ -47,6 +47,8 @@ export declare class SlackFrontend implements Frontend {
47
47
  private getInboundSlackEvent;
48
48
  private isTelemetryEnabled;
49
49
  private maybePostError;
50
+ private isExecutionFailureIssue;
51
+ private maybePostExecutionFailure;
50
52
  private ensureAcknowledgement;
51
53
  private finalizeReactions;
52
54
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"slack-frontend.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/frontends/slack-frontend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAUxD,KAAK,mBAAmB,GAAG;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE;QACV,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH,CAAC;AAEF,qBAAa,aAAc,YAAW,QAAQ;IAC5C,SAAgB,IAAI,WAAW;IAC/B,OAAO,CAAC,IAAI,CAAsC;IAClD,OAAO,CAAC,GAAG,CAAsB;IAEjC,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,MAAM,CAAgD;IAC9D,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,aAAa,CAAkB;gBAE3B,MAAM,CAAC,EAAE,mBAAmB;IAIxC,KAAK,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI;IA8IjC,IAAI,IAAI,IAAI;IAKZ,OAAO,CAAC,QAAQ;IAchB,OAAO,CAAC,sBAAsB;IAY9B,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,kBAAkB;YAcZ,cAAc;YAmCd,qBAAqB;YAmCrB,iBAAiB;IA6B/B;;;;OAIG;YACW,oBAAoB;IAgKlC,OAAO,CAAC,YAAY;CAWrB"}
1
+ {"version":3,"file":"slack-frontend.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/frontends/slack-frontend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAUxD,KAAK,mBAAmB,GAAG;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE;QACV,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH,CAAC;AAEF,qBAAa,aAAc,YAAW,QAAQ;IAC5C,SAAgB,IAAI,WAAW;IAC/B,OAAO,CAAC,IAAI,CAAsC;IAClD,OAAO,CAAC,GAAG,CAAsB;IAEjC,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,MAAM,CAAgD;IAC9D,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,aAAa,CAAkB;gBAE3B,MAAM,CAAC,EAAE,mBAAmB;IAIxC,KAAK,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI;IAgJjC,IAAI,IAAI,IAAI;IAKZ,OAAO,CAAC,QAAQ;IAchB,OAAO,CAAC,sBAAsB;IAY9B,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,kBAAkB;YAcZ,cAAc;IAoC5B,OAAO,CAAC,uBAAuB;YAcjB,yBAAyB;YAgCzB,qBAAqB;YAkCrB,iBAAiB;IA6B/B;;;;OAIG;YACW,oBAAoB;IAgKlC,OAAO,CAAC,YAAY;CAWrB"}
@@ -447,7 +447,7 @@ export declare const configSchema: {
447
447
  };
448
448
  readonly timeout: {
449
449
  readonly type: "number";
450
- readonly description: "Timeout in seconds for command execution (default: 60)";
450
+ readonly description: "Timeout in milliseconds for command execution (default: 60000, i.e., 60 seconds)";
451
451
  };
452
452
  readonly depends_on: {
453
453
  readonly anyOf: readonly [{
@@ -686,7 +686,7 @@ export declare const configSchema: {
686
686
  readonly description: "Arguments/inputs for the workflow";
687
687
  };
688
688
  readonly overrides: {
689
- readonly $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156%3E%3E";
689
+ readonly $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281%3E%3E";
690
690
  readonly description: "Override specific step configurations in the workflow";
691
691
  };
692
692
  readonly output_mapping: {
@@ -702,7 +702,7 @@ export declare const configSchema: {
702
702
  readonly description: "Config file path - alternative to workflow ID (loads a Visor config file as workflow)";
703
703
  };
704
704
  readonly workflow_overrides: {
705
- readonly $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156%3E%3E";
705
+ readonly $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281%3E%3E";
706
706
  readonly description: "Alias for overrides - workflow step overrides (backward compatibility)";
707
707
  };
708
708
  readonly ref: {
@@ -1296,7 +1296,7 @@ export declare const configSchema: {
1296
1296
  readonly description: "Custom output name (defaults to workflow name)";
1297
1297
  };
1298
1298
  readonly overrides: {
1299
- readonly $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156%3E%3E";
1299
+ readonly $ref: "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281%3E%3E";
1300
1300
  readonly description: "Step overrides";
1301
1301
  };
1302
1302
  readonly output_mapping: {
@@ -1311,13 +1311,13 @@ export declare const configSchema: {
1311
1311
  readonly '^x-': {};
1312
1312
  };
1313
1313
  };
1314
- readonly 'Record<string,Partial<interface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156>>': {
1314
+ readonly 'Record<string,Partial<interface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281>>': {
1315
1315
  readonly type: "object";
1316
1316
  readonly additionalProperties: {
1317
- readonly $ref: "#/definitions/Partial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156%3E";
1317
+ readonly $ref: "#/definitions/Partial%3Cinterface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281%3E";
1318
1318
  };
1319
1319
  };
1320
- readonly 'Partial<interface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156>': {
1320
+ readonly 'Partial<interface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281>': {
1321
1321
  readonly type: "object";
1322
1322
  readonly additionalProperties: false;
1323
1323
  };
@@ -1920,6 +1920,10 @@ export declare const configSchema: {
1920
1920
  readonly type: "string";
1921
1921
  readonly description: "Thread handling: 'required', 'optional', etc.";
1922
1922
  };
1923
+ readonly allow_bot_messages: {
1924
+ readonly type: "boolean";
1925
+ readonly description: "Allow bot_message events to trigger runs (default: false)";
1926
+ };
1923
1927
  readonly show_raw_output: {
1924
1928
  readonly type: "boolean";
1925
1929
  readonly description: "Show raw output in Slack responses";
@@ -1 +1 @@
1
- {"version":3,"file":"config-schema.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/generated/config-schema.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8gEf,CAAC;AACX,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"config-schema.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/generated/config-schema.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmhEf,CAAC;AACX,eAAe,YAAY,CAAC"}
@@ -466,7 +466,7 @@
466
466
  },
467
467
  "timeout": {
468
468
  "type": "number",
469
- "description": "Timeout in seconds for command execution (default: 60)"
469
+ "description": "Timeout in milliseconds for command execution (default: 60000, i.e., 60 seconds)"
470
470
  },
471
471
  "depends_on": {
472
472
  "anyOf": [
@@ -754,7 +754,7 @@
754
754
  "description": "Arguments/inputs for the workflow"
755
755
  },
756
756
  "overrides": {
757
- "$ref": "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156%3E%3E",
757
+ "$ref": "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281%3E%3E",
758
758
  "description": "Override specific step configurations in the workflow"
759
759
  },
760
760
  "output_mapping": {
@@ -770,7 +770,7 @@
770
770
  "description": "Config file path - alternative to workflow ID (loads a Visor config file as workflow)"
771
771
  },
772
772
  "workflow_overrides": {
773
- "$ref": "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156%3E%3E",
773
+ "$ref": "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281%3E%3E",
774
774
  "description": "Alias for overrides - workflow step overrides (backward compatibility)"
775
775
  },
776
776
  "ref": {
@@ -1435,7 +1435,7 @@
1435
1435
  "description": "Custom output name (defaults to workflow name)"
1436
1436
  },
1437
1437
  "overrides": {
1438
- "$ref": "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156%3E%3E",
1438
+ "$ref": "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281%3E%3E",
1439
1439
  "description": "Step overrides"
1440
1440
  },
1441
1441
  "output_mapping": {
@@ -1452,13 +1452,13 @@
1452
1452
  "^x-": {}
1453
1453
  }
1454
1454
  },
1455
- "Record<string,Partial<interface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156>>": {
1455
+ "Record<string,Partial<interface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281>>": {
1456
1456
  "type": "object",
1457
1457
  "additionalProperties": {
1458
- "$ref": "#/definitions/Partial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156%3E"
1458
+ "$ref": "#/definitions/Partial%3Cinterface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281%3E"
1459
1459
  }
1460
1460
  },
1461
- "Partial<interface-src_types_config.ts-11359-23556-src_types_config.ts-0-41156>": {
1461
+ "Partial<interface-src_types_config.ts-11359-23582-src_types_config.ts-0-41281>": {
1462
1462
  "type": "object",
1463
1463
  "additionalProperties": false
1464
1464
  },
@@ -2117,6 +2117,10 @@
2117
2117
  "type": "string",
2118
2118
  "description": "Thread handling: 'required', 'optional', etc."
2119
2119
  },
2120
+ "allow_bot_messages": {
2121
+ "type": "boolean",
2122
+ "description": "Allow bot_message events to trigger runs (default: false)"
2123
+ },
2120
2124
  "show_raw_output": {
2121
2125
  "type": "boolean",
2122
2126
  "description": "Show raw output in Slack responses"