@probelabs/visor 0.1.106 → 0.1.111
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +71 -2
- package/action.yml +1 -1
- package/defaults/code-refiner.yaml +114 -0
- package/defaults/{.visor.yaml → code-review.yaml} +35 -226
- package/defaults/override.yaml +52 -0
- package/defaults/task-refinement.yaml +624 -0
- package/defaults/visor.tests.yaml +685 -0
- package/defaults/visor.yaml +483 -0
- package/dist/action-cli-bridge.d.ts +11 -82
- package/dist/action-cli-bridge.d.ts.map +1 -1
- package/dist/ai-review-service.d.ts +28 -9
- package/dist/ai-review-service.d.ts.map +1 -1
- package/dist/check-execution-engine.d.ts +19 -331
- package/dist/check-execution-engine.d.ts.map +1 -1
- package/dist/cli-main.d.ts.map +1 -1
- package/dist/cli.d.ts +0 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/config.d.ts +16 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/cron-scheduler.d.ts +3 -3
- package/dist/cron-scheduler.d.ts.map +1 -1
- package/dist/debug-visualizer/ws-server.d.ts +7 -1
- package/dist/debug-visualizer/ws-server.d.ts.map +1 -1
- package/dist/defaults/code-refiner.yaml +114 -0
- package/dist/defaults/{.visor.yaml → code-review.yaml} +35 -226
- package/dist/defaults/override.yaml +52 -0
- package/dist/defaults/task-refinement.yaml +624 -0
- package/dist/defaults/visor.tests.yaml +685 -0
- package/dist/defaults/visor.yaml +483 -0
- package/dist/docs/DEPLOYMENT.md +118 -0
- package/dist/docs/GITHUB_CHECKS.md +280 -0
- package/dist/docs/NPM_USAGE.md +208 -0
- package/dist/docs/action-reference.md +19 -0
- package/dist/docs/advanced-ai.md +237 -0
- package/dist/docs/ai-configuration.md +535 -0
- package/dist/docs/ai-custom-tools-usage.md +261 -0
- package/dist/docs/ai-custom-tools.md +392 -0
- package/dist/docs/author-permissions.md +610 -0
- package/dist/docs/bot-transports-rfc.md +23 -0
- package/dist/docs/ci-cli-mode.md +34 -0
- package/dist/docs/claude-code.md +74 -0
- package/dist/docs/command-provider.md +559 -0
- package/dist/docs/commands.md +8 -0
- package/dist/docs/configuration.md +324 -0
- package/dist/docs/custom-tools.md +424 -0
- package/dist/docs/dashboards/README.md +23 -0
- package/dist/docs/dashboards/grafana-visor-diagrams.json +20 -0
- package/dist/docs/dashboards/grafana-visor-overview.json +33 -0
- package/dist/docs/debug-visualizer-progress.md +572 -0
- package/dist/docs/debug-visualizer-rfc.md +691 -0
- package/dist/docs/debug-visualizer.md +114 -0
- package/dist/docs/debugging.md +636 -0
- package/dist/docs/default-output-schema.md +28 -0
- package/dist/docs/dependencies.md +369 -0
- package/dist/docs/dev-playbook.md +9 -0
- package/dist/docs/engine-pause-resume-rfc.md +192 -0
- package/dist/docs/engine-state-machine-plan.md +333 -0
- package/dist/docs/event-driven-github-integration-rfc.md +743 -0
- package/dist/docs/event-triggers.md +292 -0
- package/dist/docs/execution-statistics-rfc.md +290 -0
- package/dist/docs/fact-validator-gap-analysis.md +178 -0
- package/dist/docs/fact-validator-implementation-plan.md +1235 -0
- package/dist/docs/fail-if.md +95 -0
- package/dist/docs/failure-conditions-implementation.md +271 -0
- package/dist/docs/failure-conditions-schema.md +173 -0
- package/dist/docs/failure-routing-rfc.md +193 -0
- package/dist/docs/failure-routing.md +507 -0
- package/dist/docs/foreach-dependency-propagation.md +473 -0
- package/dist/docs/github-ops.md +89 -0
- package/dist/docs/goto-forward-run-plan.md +113 -0
- package/dist/docs/guides/criticality-modes.md +332 -0
- package/dist/docs/guides/fault-management-and-contracts.md +738 -0
- package/dist/docs/guides/workflow-style-guide.md +224 -0
- package/dist/docs/http.md +299 -0
- package/dist/docs/human-input-provider.md +372 -0
- package/dist/docs/lifecycle-hooks.md +253 -0
- package/dist/docs/limits.md +64 -0
- package/dist/docs/liquid-templates.md +490 -0
- package/dist/docs/loop-routing-refactor.md +89 -0
- package/dist/docs/mcp-provider.md +557 -0
- package/dist/docs/mcp.md +124 -0
- package/dist/docs/memory.md +903 -0
- package/dist/docs/observability.md +12 -0
- package/dist/docs/output-formats.md +20 -0
- package/dist/docs/output-formatting.md +29 -0
- package/dist/docs/output-history.md +383 -0
- package/dist/docs/performance.md +6 -0
- package/dist/docs/pluggable.md +124 -0
- package/dist/docs/proposals/snapshot-scope-execution.md +236 -0
- package/dist/docs/providers/git-checkout.md +589 -0
- package/dist/docs/recipes.md +474 -0
- package/dist/docs/rfc/git-checkout-step.md +601 -0
- package/dist/docs/rfc/on_init-hook.md +1294 -0
- package/dist/docs/rfc/workspace-isolation.md +216 -0
- package/dist/docs/roadmap/criticality-implementation-tasks.md +92 -0
- package/dist/docs/router-patterns.md +339 -0
- package/dist/docs/schema-next-pr.md +10 -0
- package/dist/docs/schema-templates.md +68 -0
- package/dist/docs/script.md +34 -0
- package/dist/docs/sdk.md +222 -0
- package/dist/docs/security.md +7 -0
- package/dist/docs/suppressions.md +89 -0
- package/dist/docs/tag-filtering.md +258 -0
- package/dist/docs/telemetry-setup.md +119 -0
- package/dist/docs/telemetry-tracing-rfc.md +275 -0
- package/dist/docs/test-framework-rfc.md +680 -0
- package/dist/docs/testing/assertions.md +85 -0
- package/dist/docs/testing/ci.md +44 -0
- package/dist/docs/testing/cli.md +41 -0
- package/dist/docs/testing/cookbook.md +172 -0
- package/dist/docs/testing/dsl-reference.md +199 -0
- package/dist/docs/testing/fixtures-and-mocks.md +91 -0
- package/dist/docs/testing/flows.md +92 -0
- package/dist/docs/testing/getting-started.md +93 -0
- package/dist/docs/testing/troubleshooting.md +55 -0
- package/dist/docs/timeouts.md +50 -0
- package/dist/docs/troubleshooting.md +7 -0
- package/dist/docs/visor-sdk-rfc.md +186 -0
- package/dist/docs/workflows.md +569 -0
- package/dist/engine/on-finish/orchestrator.d.ts +19 -0
- package/dist/engine/on-finish/orchestrator.d.ts.map +1 -0
- package/dist/engine/on-finish/utils.d.ts +44 -0
- package/dist/engine/on-finish/utils.d.ts.map +1 -0
- package/dist/event-bus/event-bus.d.ts +13 -0
- package/dist/event-bus/event-bus.d.ts.map +1 -0
- package/dist/event-bus/types.d.ts +71 -0
- package/dist/event-bus/types.d.ts.map +1 -0
- package/dist/examples/.claude/agents/code-reviewer.md +69 -0
- package/dist/examples/.mcp.json +34 -0
- package/dist/examples/CALCULATOR-SDK.md +364 -0
- package/dist/examples/README.md +384 -0
- package/dist/examples/ai-custom-tools-example.yaml +206 -0
- package/dist/examples/ai-custom-tools-simple.yaml +76 -0
- package/dist/examples/ai-retry-fallback-config.yaml +180 -0
- package/dist/examples/ai-with-bash.yaml +126 -0
- package/dist/examples/ai-with-mcp.yaml +82 -0
- package/dist/examples/basic-human-input.yaml +15 -0
- package/dist/examples/bedrock-config.yaml +77 -0
- package/dist/examples/calculator-config.yaml +133 -0
- package/dist/examples/calculator-json-output-guide.md +311 -0
- package/dist/examples/calculator-sdk-automated.ts +340 -0
- package/dist/examples/calculator-sdk-example.ts +275 -0
- package/dist/examples/calculator-sdk-json.ts +331 -0
- package/dist/examples/calculator-sdk-real.ts +374 -0
- package/dist/examples/calculator-sdk-test.ts +148 -0
- package/dist/examples/claude-code-config.yaml +191 -0
- package/dist/examples/cron-webhook-config.yaml +215 -0
- package/dist/examples/custom-template.liquid +57 -0
- package/dist/examples/custom-tools-example.yaml +281 -0
- package/dist/examples/enhanced-config.yaml +165 -0
- package/dist/examples/environments/visor.base.yaml +92 -0
- package/dist/examples/environments/visor.dev.yaml +33 -0
- package/dist/examples/environments/visor.prod.yaml +95 -0
- package/dist/examples/environments/visor.staging.yaml +46 -0
- package/dist/examples/fact-validator.yaml +361 -0
- package/dist/examples/fail-if-simple.yaml +90 -0
- package/dist/examples/failure-conditions-advanced.yaml +136 -0
- package/dist/examples/failure-conditions-basic.yaml +48 -0
- package/dist/examples/failure-conditions-github-style.yaml +119 -0
- package/dist/examples/failure-conditions-migration.yaml +74 -0
- package/dist/examples/for-loop-example.yaml +176 -0
- package/dist/examples/forEach-example.yaml +120 -0
- package/dist/examples/git-checkout-basic.yaml +32 -0
- package/dist/examples/git-checkout-compare.yaml +59 -0
- package/dist/examples/git-checkout-cross-repo.yaml +76 -0
- package/dist/examples/github-workflow-with-tags.yml +163 -0
- package/dist/examples/http-integration-config.yaml +240 -0
- package/dist/examples/https-server-config.yaml +209 -0
- package/dist/examples/human-input-example.yaml +63 -0
- package/dist/examples/if-conditions.yaml +173 -0
- package/dist/examples/jira-simple-example.yaml +56 -0
- package/dist/examples/jira-single-issue-workflow.yaml +166 -0
- package/dist/examples/jira-workflow-mcp.yaml +182 -0
- package/dist/examples/mcp/analyzer.py +119 -0
- package/dist/examples/mcp-provider-example.yaml +301 -0
- package/dist/examples/memory-counter.yaml +99 -0
- package/dist/examples/memory-error-collection.yaml +104 -0
- package/dist/examples/memory-exec-js.yaml +247 -0
- package/dist/examples/memory-namespace-isolation.yaml +184 -0
- package/dist/examples/memory-retry-counter.yaml +65 -0
- package/dist/examples/memory-state-machine.yaml +170 -0
- package/dist/examples/on-init-import-demo.yaml +179 -0
- package/dist/examples/outputs-raw-basic.yaml +26 -0
- package/dist/examples/project-with-tools.yaml +174 -0
- package/dist/examples/prompts/architecture-analysis.liquid +116 -0
- package/dist/examples/prompts/security-comprehensive.liquid +107 -0
- package/dist/examples/quick-start-tags.yaml +53 -0
- package/dist/examples/reusable-tools.yaml +92 -0
- package/dist/examples/reusable-workflows.yaml +88 -0
- package/dist/examples/routing-basic.yaml +35 -0
- package/dist/examples/routing-dynamic-js.yaml +46 -0
- package/dist/examples/routing-foreach.yaml +34 -0
- package/dist/examples/routing-goto-event.yaml +34 -0
- package/dist/examples/routing-on-success.yaml +25 -0
- package/dist/examples/run-calculator-demo.sh +71 -0
- package/dist/examples/sdk-basic.mjs +10 -0
- package/dist/examples/sdk-cjs.cjs +10 -0
- package/dist/examples/sdk-comprehensive.mjs +175 -0
- package/dist/examples/sdk-manual-config.mjs +65 -0
- package/dist/examples/sdk-typescript.js +81 -0
- package/dist/examples/sdk-typescript.ts +92 -0
- package/dist/examples/session-reuse-config.yaml +151 -0
- package/dist/examples/session-reuse-self.yaml +81 -0
- package/dist/examples/slack-simple-chat.yaml +775 -0
- package/dist/examples/templates/security-report.liquid +137 -0
- package/dist/examples/tools-library.yaml +281 -0
- package/dist/examples/transform-example.yaml +199 -0
- package/dist/examples/visor-with-tags.yaml +198 -0
- package/dist/examples/webhook-pipeline-config.yaml +218 -0
- package/dist/examples/workflows/calculator-workflow.yaml +163 -0
- package/dist/examples/workflows/code-quality.yaml +222 -0
- package/dist/examples/workflows/quick-pr-check.yaml +90 -0
- package/dist/examples/workflows/workflow-composition-example.yaml +130 -0
- package/dist/failure-condition-evaluator.d.ts +3 -0
- package/dist/failure-condition-evaluator.d.ts.map +1 -1
- package/dist/frontends/github-frontend.d.ts +58 -0
- package/dist/frontends/github-frontend.d.ts.map +1 -0
- package/dist/frontends/host.d.ts +47 -0
- package/dist/frontends/host.d.ts.map +1 -0
- package/dist/frontends/ndjson-sink.d.ts +12 -0
- package/dist/frontends/ndjson-sink.d.ts.map +1 -0
- package/dist/frontends/slack-frontend.d.ts +58 -0
- package/dist/frontends/slack-frontend.d.ts.map +1 -0
- package/dist/generated/config-schema.d.ts +967 -57
- package/dist/generated/config-schema.d.ts.map +1 -1
- package/dist/generated/config-schema.json +1033 -56
- package/dist/github-check-service.d.ts +4 -6
- package/dist/github-check-service.d.ts.map +1 -1
- package/dist/github-comments.d.ts +2 -4
- package/dist/github-comments.d.ts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +134327 -99004
- package/dist/liquid-extensions.d.ts.map +1 -1
- package/dist/logger.d.ts +2 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/memory-store.d.ts +6 -0
- package/dist/memory-store.d.ts.map +1 -1
- package/dist/output/assistant-json/template.liquid +0 -0
- package/dist/output/traces/run-2026-01-20T19-22-58-043Z.ndjson +138 -0
- package/dist/output/traces/run-2026-01-20T19-23-52-175Z.ndjson +1067 -0
- package/dist/output-formatters.d.ts +1 -1
- package/dist/output-formatters.d.ts.map +1 -1
- package/dist/providers/ai-check-provider.d.ts +12 -0
- package/dist/providers/ai-check-provider.d.ts.map +1 -1
- package/dist/providers/check-provider-registry.d.ts +6 -0
- package/dist/providers/check-provider-registry.d.ts.map +1 -1
- package/dist/providers/check-provider.interface.d.ts +43 -1
- package/dist/providers/check-provider.interface.d.ts.map +1 -1
- package/dist/providers/claude-code-check-provider.d.ts.map +1 -1
- package/dist/providers/command-check-provider.d.ts +1 -1
- package/dist/providers/command-check-provider.d.ts.map +1 -1
- package/dist/providers/custom-tool-executor.d.ts +61 -0
- package/dist/providers/custom-tool-executor.d.ts.map +1 -0
- package/dist/providers/git-checkout-provider.d.ts +25 -0
- package/dist/providers/git-checkout-provider.d.ts.map +1 -0
- package/dist/providers/github-ops-provider.d.ts.map +1 -1
- package/dist/providers/http-client-provider.d.ts +4 -4
- package/dist/providers/http-client-provider.d.ts.map +1 -1
- package/dist/providers/human-input-check-provider.d.ts +5 -0
- package/dist/providers/human-input-check-provider.d.ts.map +1 -1
- package/dist/providers/index.d.ts +1 -0
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/log-check-provider.d.ts +2 -5
- package/dist/providers/log-check-provider.d.ts.map +1 -1
- package/dist/providers/mcp-check-provider.d.ts +10 -4
- package/dist/providers/mcp-check-provider.d.ts.map +1 -1
- package/dist/providers/mcp-custom-sse-server.d.ts +66 -0
- package/dist/providers/mcp-custom-sse-server.d.ts.map +1 -0
- package/dist/providers/memory-check-provider.d.ts +2 -8
- package/dist/providers/memory-check-provider.d.ts.map +1 -1
- package/dist/providers/script-check-provider.d.ts +25 -0
- package/dist/providers/script-check-provider.d.ts.map +1 -0
- package/dist/providers/workflow-check-provider.d.ts +56 -0
- package/dist/providers/workflow-check-provider.d.ts.map +1 -0
- package/dist/reviewer.d.ts +2 -1
- package/dist/reviewer.d.ts.map +1 -1
- package/dist/sdk/check-provider-registry-534KL5HT.mjs +27 -0
- package/dist/sdk/chunk-23L3QRYX.mjs +16872 -0
- package/dist/sdk/chunk-23L3QRYX.mjs.map +1 -0
- package/dist/sdk/{chunk-TUTOLSFV.mjs → chunk-3OMWVM6J.mjs} +11 -1
- package/dist/sdk/chunk-3OMWVM6J.mjs.map +1 -0
- package/dist/sdk/chunk-7UK3NIIT.mjs +482 -0
- package/dist/sdk/chunk-7UK3NIIT.mjs.map +1 -0
- package/dist/sdk/chunk-AGIZJ4UZ.mjs +173 -0
- package/dist/sdk/chunk-AGIZJ4UZ.mjs.map +1 -0
- package/dist/sdk/chunk-AIVFBIS4.mjs +1371 -0
- package/dist/sdk/chunk-AIVFBIS4.mjs.map +1 -0
- package/dist/sdk/chunk-AK6BVWIT.mjs +426 -0
- package/dist/sdk/chunk-AK6BVWIT.mjs.map +1 -0
- package/dist/sdk/chunk-AUT26LHW.mjs +139 -0
- package/dist/sdk/chunk-AUT26LHW.mjs.map +1 -0
- package/dist/sdk/chunk-BOVFH3LI.mjs +232 -0
- package/dist/sdk/chunk-BOVFH3LI.mjs.map +1 -0
- package/dist/sdk/chunk-CNX7V5JK.mjs +89 -0
- package/dist/sdk/chunk-CNX7V5JK.mjs.map +1 -0
- package/dist/sdk/chunk-HTOKWMPO.mjs +157 -0
- package/dist/sdk/chunk-HTOKWMPO.mjs.map +1 -0
- package/dist/sdk/chunk-NAW3DB3I.mjs +197 -0
- package/dist/sdk/chunk-NAW3DB3I.mjs.map +1 -0
- package/dist/sdk/chunk-O5EZDNYL.mjs +274 -0
- package/dist/sdk/chunk-O5EZDNYL.mjs.map +1 -0
- package/dist/sdk/chunk-QR7MOMJH.mjs +558 -0
- package/dist/sdk/chunk-QR7MOMJH.mjs.map +1 -0
- package/dist/sdk/chunk-QY2XYPEV.mjs +3556 -0
- package/dist/sdk/chunk-QY2XYPEV.mjs.map +1 -0
- package/dist/sdk/chunk-S2RUE2RG.mjs +145 -0
- package/dist/sdk/chunk-S2RUE2RG.mjs.map +1 -0
- package/dist/sdk/chunk-SIWNBRTK.mjs +800 -0
- package/dist/sdk/chunk-SIWNBRTK.mjs.map +1 -0
- package/dist/sdk/chunk-YSN4G6CI.mjs +146 -0
- package/dist/sdk/chunk-YSN4G6CI.mjs.map +1 -0
- package/dist/sdk/chunk-ZYAUYXSW.mjs +206 -0
- package/dist/sdk/chunk-ZYAUYXSW.mjs.map +1 -0
- package/dist/sdk/command-executor-TYUV6HUS.mjs +14 -0
- package/dist/sdk/config-YNC2EOOT.mjs +16 -0
- package/dist/sdk/config-merger-PX3WIT57.mjs +10 -0
- package/dist/sdk/event-bus-5BEVPQ6T.mjs +35 -0
- package/dist/sdk/event-bus-5BEVPQ6T.mjs.map +1 -0
- package/dist/sdk/failure-condition-evaluator-YGTF2GHG.mjs +17 -0
- package/dist/sdk/git-repository-analyzer-HJC4MYW4.mjs +458 -0
- package/dist/sdk/git-repository-analyzer-HJC4MYW4.mjs.map +1 -0
- package/dist/sdk/github-frontend-SIAEOCON.mjs +1420 -0
- package/dist/sdk/github-frontend-SIAEOCON.mjs.map +1 -0
- package/dist/sdk/host-DXUYTNMU.mjs +52 -0
- package/dist/sdk/host-DXUYTNMU.mjs.map +1 -0
- package/dist/sdk/{liquid-extensions-KVL4MKRH.mjs → liquid-extensions-PKWCKK7E.mjs} +8 -2
- package/dist/sdk/memory-store-XGBB7LX7.mjs +12 -0
- package/dist/sdk/memory-store-XGBB7LX7.mjs.map +1 -0
- package/dist/sdk/metrics-7PP3EJUH.mjs +29 -0
- package/dist/sdk/metrics-7PP3EJUH.mjs.map +1 -0
- package/dist/sdk/ndjson-sink-B4V4NTAQ.mjs +44 -0
- package/dist/sdk/ndjson-sink-B4V4NTAQ.mjs.map +1 -0
- package/dist/sdk/prompt-state-YRJY6QAL.mjs +16 -0
- package/dist/sdk/prompt-state-YRJY6QAL.mjs.map +1 -0
- package/dist/sdk/renderer-schema-LPKN5UJS.mjs +51 -0
- package/dist/sdk/renderer-schema-LPKN5UJS.mjs.map +1 -0
- package/dist/sdk/routing-6N45MJ4F.mjs +24 -0
- package/dist/sdk/routing-6N45MJ4F.mjs.map +1 -0
- package/dist/sdk/sdk.d.mts +541 -22
- package/dist/sdk/sdk.d.ts +541 -22
- package/dist/sdk/sdk.js +27963 -16505
- package/dist/sdk/sdk.js.map +1 -1
- package/dist/sdk/sdk.mjs +1116 -2169
- package/dist/sdk/sdk.mjs.map +1 -1
- package/dist/sdk/session-registry-4E6YRQ77.mjs +10 -0
- package/dist/sdk/session-registry-4E6YRQ77.mjs.map +1 -0
- package/dist/sdk/slack-frontend-BVKW3GD5.mjs +735 -0
- package/dist/sdk/slack-frontend-BVKW3GD5.mjs.map +1 -0
- package/dist/sdk/trace-helpers-VP6QYVBX.mjs +23 -0
- package/dist/sdk/trace-helpers-VP6QYVBX.mjs.map +1 -0
- package/dist/sdk/{tracer-init-WC75N5NW.mjs → tracer-init-GSLPPLCD.mjs} +2 -2
- package/dist/sdk/tracer-init-GSLPPLCD.mjs.map +1 -0
- package/dist/sdk/workflow-registry-R6KSACFR.mjs +12 -0
- package/dist/sdk/workflow-registry-R6KSACFR.mjs.map +1 -0
- package/dist/sdk.d.ts.map +1 -1
- package/dist/slack/adapter.d.ts +36 -0
- package/dist/slack/adapter.d.ts.map +1 -0
- package/dist/slack/cache-prewarmer.d.ts +31 -0
- package/dist/slack/cache-prewarmer.d.ts.map +1 -0
- package/dist/slack/client.d.ts +77 -0
- package/dist/slack/client.d.ts.map +1 -0
- package/dist/slack/markdown.d.ts +45 -0
- package/dist/slack/markdown.d.ts.map +1 -0
- package/dist/slack/prompt-state.d.ts +33 -0
- package/dist/slack/prompt-state.d.ts.map +1 -0
- package/dist/slack/rate-limiter.d.ts +56 -0
- package/dist/slack/rate-limiter.d.ts.map +1 -0
- package/dist/slack/signature.d.ts +2 -0
- package/dist/slack/signature.d.ts.map +1 -0
- package/dist/slack/socket-runner.d.ts +42 -0
- package/dist/slack/socket-runner.d.ts.map +1 -0
- package/dist/slack/thread-cache.d.ts +51 -0
- package/dist/slack/thread-cache.d.ts.map +1 -0
- package/dist/snapshot-store.d.ts +59 -0
- package/dist/snapshot-store.d.ts.map +1 -0
- package/dist/state-machine/context/build-engine-context.d.ts +17 -0
- package/dist/state-machine/context/build-engine-context.d.ts.map +1 -0
- package/dist/state-machine/dispatch/dependency-gating.d.ts +12 -0
- package/dist/state-machine/dispatch/dependency-gating.d.ts.map +1 -0
- package/dist/state-machine/dispatch/execution-invoker.d.ts +14 -0
- package/dist/state-machine/dispatch/execution-invoker.d.ts.map +1 -0
- package/dist/state-machine/dispatch/foreach-processor.d.ts +8 -0
- package/dist/state-machine/dispatch/foreach-processor.d.ts.map +1 -0
- package/dist/state-machine/dispatch/history-snapshot.d.ts +8 -0
- package/dist/state-machine/dispatch/history-snapshot.d.ts.map +1 -0
- package/dist/state-machine/dispatch/on-init-handlers.d.ts +43 -0
- package/dist/state-machine/dispatch/on-init-handlers.d.ts.map +1 -0
- package/dist/state-machine/dispatch/renderer-schema.d.ts +8 -0
- package/dist/state-machine/dispatch/renderer-schema.d.ts.map +1 -0
- package/dist/state-machine/dispatch/stats-manager.d.ts +15 -0
- package/dist/state-machine/dispatch/stats-manager.d.ts.map +1 -0
- package/dist/state-machine/dispatch/template-renderer.d.ts +7 -0
- package/dist/state-machine/dispatch/template-renderer.d.ts.map +1 -0
- package/dist/state-machine/execution/summary.d.ts +8 -0
- package/dist/state-machine/execution/summary.d.ts.map +1 -0
- package/dist/state-machine/runner.d.ts +79 -0
- package/dist/state-machine/runner.d.ts.map +1 -0
- package/dist/state-machine/states/check-running.d.ts +14 -0
- package/dist/state-machine/states/check-running.d.ts.map +1 -0
- package/dist/state-machine/states/completed.d.ts +12 -0
- package/dist/state-machine/states/completed.d.ts.map +1 -0
- package/dist/state-machine/states/error.d.ts +11 -0
- package/dist/state-machine/states/error.d.ts.map +1 -0
- package/dist/state-machine/states/init.d.ts +11 -0
- package/dist/state-machine/states/init.d.ts.map +1 -0
- package/dist/state-machine/states/level-dispatch.d.ts +17 -0
- package/dist/state-machine/states/level-dispatch.d.ts.map +1 -0
- package/dist/state-machine/states/plan-ready.d.ts +12 -0
- package/dist/state-machine/states/plan-ready.d.ts.map +1 -0
- package/dist/state-machine/states/routing.d.ts +52 -0
- package/dist/state-machine/states/routing.d.ts.map +1 -0
- package/dist/state-machine/states/wave-planning.d.ts +14 -0
- package/dist/state-machine/states/wave-planning.d.ts.map +1 -0
- package/dist/state-machine/workflow-projection.d.ts +47 -0
- package/dist/state-machine/workflow-projection.d.ts.map +1 -0
- package/dist/state-machine-execution-engine.d.ts +159 -0
- package/dist/state-machine-execution-engine.d.ts.map +1 -0
- package/dist/telemetry/opentelemetry.d.ts.map +1 -1
- package/dist/telemetry/state-capture.d.ts +5 -0
- package/dist/telemetry/state-capture.d.ts.map +1 -1
- package/dist/test-runner/assertions.d.ts +59 -0
- package/dist/test-runner/assertions.d.ts.map +1 -0
- package/dist/test-runner/core/environment.d.ts +8 -0
- package/dist/test-runner/core/environment.d.ts.map +1 -0
- package/dist/test-runner/core/fixture.d.ts +3 -0
- package/dist/test-runner/core/fixture.d.ts.map +1 -0
- package/dist/test-runner/core/flow-stage.d.ts +32 -0
- package/dist/test-runner/core/flow-stage.d.ts.map +1 -0
- package/dist/test-runner/core/mocks.d.ts +8 -0
- package/dist/test-runner/core/mocks.d.ts.map +1 -0
- package/dist/test-runner/core/test-execution-wrapper.d.ts +18 -0
- package/dist/test-runner/core/test-execution-wrapper.d.ts.map +1 -0
- package/dist/test-runner/evaluators.d.ts +45 -0
- package/dist/test-runner/evaluators.d.ts.map +1 -0
- package/dist/test-runner/fixture-loader.d.ts +30 -0
- package/dist/test-runner/fixture-loader.d.ts.map +1 -0
- package/dist/test-runner/index.d.ts +127 -0
- package/dist/test-runner/index.d.ts.map +1 -0
- package/dist/test-runner/recorders/github-recorder.d.ts +23 -0
- package/dist/test-runner/recorders/github-recorder.d.ts.map +1 -0
- package/dist/test-runner/recorders/global-recorder.d.ts +4 -0
- package/dist/test-runner/recorders/global-recorder.d.ts.map +1 -0
- package/dist/test-runner/recorders/slack-recorder.d.ts +17 -0
- package/dist/test-runner/recorders/slack-recorder.d.ts.map +1 -0
- package/dist/test-runner/utils/selectors.d.ts +2 -0
- package/dist/test-runner/utils/selectors.d.ts.map +1 -0
- package/dist/test-runner/validator.d.ts +8 -0
- package/dist/test-runner/validator.d.ts.map +1 -0
- package/dist/traces/run-2026-01-20T19-22-58-043Z.ndjson +138 -0
- package/dist/traces/run-2026-01-20T19-23-52-175Z.ndjson +1067 -0
- package/dist/types/bot.d.ts +109 -0
- package/dist/types/bot.d.ts.map +1 -0
- package/dist/types/cli.d.ts +8 -1
- package/dist/types/cli.d.ts.map +1 -1
- package/dist/types/config.d.ts +459 -9
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/engine.d.ts +177 -0
- package/dist/types/engine.d.ts.map +1 -0
- package/dist/types/execution.d.ts +73 -0
- package/dist/types/execution.d.ts.map +1 -0
- package/dist/types/git-checkout.d.ts +76 -0
- package/dist/types/git-checkout.d.ts.map +1 -0
- package/dist/types/github.d.ts +51 -0
- package/dist/types/github.d.ts.map +1 -0
- package/dist/types/workflow.d.ts +237 -0
- package/dist/types/workflow.d.ts.map +1 -0
- package/dist/utils/command-executor.d.ts +43 -0
- package/dist/utils/command-executor.d.ts.map +1 -0
- package/dist/utils/comment-metadata.d.ts +21 -0
- package/dist/utils/comment-metadata.d.ts.map +1 -0
- package/dist/utils/config-loader.d.ts.map +1 -1
- package/dist/utils/config-merger.d.ts.map +1 -1
- package/dist/utils/env-exposure.d.ts +3 -0
- package/dist/utils/env-exposure.d.ts.map +1 -0
- package/dist/utils/file-exclusion.d.ts.map +1 -1
- package/dist/utils/interactive-prompt.d.ts +1 -1
- package/dist/utils/interactive-prompt.d.ts.map +1 -1
- package/dist/utils/json-text-extractor.d.ts +17 -0
- package/dist/utils/json-text-extractor.d.ts.map +1 -0
- package/dist/utils/sandbox.d.ts +10 -0
- package/dist/utils/sandbox.d.ts.map +1 -1
- package/dist/utils/script-memory-ops.d.ts +21 -0
- package/dist/utils/script-memory-ops.d.ts.map +1 -0
- package/dist/utils/template-context.d.ts +8 -0
- package/dist/utils/template-context.d.ts.map +1 -0
- package/dist/utils/tracer-init.d.ts.map +1 -1
- package/dist/utils/workspace-manager.d.ts +118 -0
- package/dist/utils/workspace-manager.d.ts.map +1 -0
- package/dist/utils/worktree-cleanup.d.ts +33 -0
- package/dist/utils/worktree-cleanup.d.ts.map +1 -0
- package/dist/utils/worktree-manager.d.ts +153 -0
- package/dist/utils/worktree-manager.d.ts.map +1 -0
- package/dist/webhook-server.d.ts +3 -3
- package/dist/webhook-server.d.ts.map +1 -1
- package/dist/workflow-executor.d.ts +81 -0
- package/dist/workflow-executor.d.ts.map +1 -0
- package/dist/workflow-registry.d.ts +79 -0
- package/dist/workflow-registry.d.ts.map +1 -0
- package/package.json +12 -5
- package/dist/output/traces/run-2025-10-22T18-22-56-873Z.ndjson +0 -218
- package/dist/sdk/check-execution-engine-2YYKUUSH.mjs +0 -11
- package/dist/sdk/check-execution-engine-6QJXYYON.mjs +0 -11
- package/dist/sdk/check-execution-engine-PJZ4ZOKG.mjs +0 -11
- package/dist/sdk/chunk-33QVZ2D4.mjs +0 -316
- package/dist/sdk/chunk-33QVZ2D4.mjs.map +0 -1
- package/dist/sdk/chunk-B5QBV2QJ.mjs +0 -752
- package/dist/sdk/chunk-B5QBV2QJ.mjs.map +0 -1
- package/dist/sdk/chunk-BVFNRCHT.mjs +0 -14129
- package/dist/sdk/chunk-BVFNRCHT.mjs.map +0 -1
- package/dist/sdk/chunk-KWZW23FG.mjs +0 -14129
- package/dist/sdk/chunk-KWZW23FG.mjs.map +0 -1
- package/dist/sdk/chunk-O4RP4BRH.mjs +0 -14092
- package/dist/sdk/chunk-O4RP4BRH.mjs.map +0 -1
- package/dist/sdk/chunk-TUTOLSFV.mjs.map +0 -1
- package/dist/sdk/chunk-U5D2LY66.mjs +0 -245
- package/dist/sdk/chunk-U5D2LY66.mjs.map +0 -1
- package/dist/sdk/chunk-U7X54EMV.mjs +0 -331
- package/dist/sdk/chunk-U7X54EMV.mjs.map +0 -1
- package/dist/sdk/config-merger-TWUBWFC2.mjs +0 -8
- package/dist/sdk/mermaid-telemetry-SN6A2TKW.mjs +0 -61
- package/dist/sdk/mermaid-telemetry-SN6A2TKW.mjs.map +0 -1
- package/dist/sdk/mermaid-telemetry-YCTIG76M.mjs +0 -61
- package/dist/sdk/mermaid-telemetry-YCTIG76M.mjs.map +0 -1
- package/dist/traces/run-2025-10-22T18-22-56-873Z.ndjson +0 -218
- /package/dist/sdk/{check-execution-engine-2YYKUUSH.mjs.map → check-provider-registry-534KL5HT.mjs.map} +0 -0
- /package/dist/sdk/{check-execution-engine-6QJXYYON.mjs.map → command-executor-TYUV6HUS.mjs.map} +0 -0
- /package/dist/sdk/{check-execution-engine-PJZ4ZOKG.mjs.map → config-YNC2EOOT.mjs.map} +0 -0
- /package/dist/sdk/{config-merger-TWUBWFC2.mjs.map → config-merger-PX3WIT57.mjs.map} +0 -0
- /package/dist/sdk/{liquid-extensions-KVL4MKRH.mjs.map → failure-condition-evaluator-YGTF2GHG.mjs.map} +0 -0
- /package/dist/sdk/{tracer-init-WC75N5NW.mjs.map → liquid-extensions-PKWCKK7E.mjs.map} +0 -0
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
-
"$ref": "#/definitions/
|
|
3
|
+
"$ref": "#/definitions/VisorConfigSchema",
|
|
4
4
|
"definitions": {
|
|
5
|
-
"
|
|
5
|
+
"VisorConfigSchema": {
|
|
6
6
|
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
7
8
|
"properties": {
|
|
9
|
+
"hooks": {
|
|
10
|
+
"$ref": "#/definitions/Record%3Cstring%2Cunknown%3E"
|
|
11
|
+
},
|
|
8
12
|
"version": {
|
|
9
13
|
"type": "string",
|
|
10
14
|
"description": "Configuration version"
|
|
@@ -23,6 +27,45 @@
|
|
|
23
27
|
],
|
|
24
28
|
"description": "Extends from other configurations - can be file path, HTTP(S) URL, or \"default\""
|
|
25
29
|
},
|
|
30
|
+
"include": {
|
|
31
|
+
"anyOf": [
|
|
32
|
+
{
|
|
33
|
+
"type": "string"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"type": "array",
|
|
37
|
+
"items": {
|
|
38
|
+
"type": "string"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
],
|
|
42
|
+
"description": "Alias for extends - include from other configurations (backward compatibility)"
|
|
43
|
+
},
|
|
44
|
+
"tools": {
|
|
45
|
+
"$ref": "#/definitions/Record%3Cstring%2CCustomToolDefinition%3E",
|
|
46
|
+
"description": "Custom tool definitions that can be used in MCP blocks"
|
|
47
|
+
},
|
|
48
|
+
"imports": {
|
|
49
|
+
"type": "array",
|
|
50
|
+
"items": {
|
|
51
|
+
"type": "string"
|
|
52
|
+
},
|
|
53
|
+
"description": "Import workflow definitions from external files or URLs"
|
|
54
|
+
},
|
|
55
|
+
"inputs": {
|
|
56
|
+
"type": "array",
|
|
57
|
+
"items": {
|
|
58
|
+
"$ref": "#/definitions/WorkflowInput"
|
|
59
|
+
},
|
|
60
|
+
"description": "Workflow inputs (for standalone reusable workflows)"
|
|
61
|
+
},
|
|
62
|
+
"outputs": {
|
|
63
|
+
"type": "array",
|
|
64
|
+
"items": {
|
|
65
|
+
"$ref": "#/definitions/WorkflowOutput"
|
|
66
|
+
},
|
|
67
|
+
"description": "Workflow outputs (for standalone reusable workflows)"
|
|
68
|
+
},
|
|
26
69
|
"steps": {
|
|
27
70
|
"$ref": "#/definitions/Record%3Cstring%2CCheckConfig%3E",
|
|
28
71
|
"description": "Step configurations (recommended)"
|
|
@@ -33,7 +76,7 @@
|
|
|
33
76
|
},
|
|
34
77
|
"output": {
|
|
35
78
|
"$ref": "#/definitions/OutputConfig",
|
|
36
|
-
"description": "Output configuration"
|
|
79
|
+
"description": "Output configuration (optional - defaults provided)"
|
|
37
80
|
},
|
|
38
81
|
"http_server": {
|
|
39
82
|
"$ref": "#/definitions/HttpServerConfig",
|
|
@@ -82,14 +125,207 @@
|
|
|
82
125
|
"routing": {
|
|
83
126
|
"$ref": "#/definitions/RoutingDefaults",
|
|
84
127
|
"description": "Optional routing defaults for retry/goto/run policies"
|
|
128
|
+
},
|
|
129
|
+
"limits": {
|
|
130
|
+
"$ref": "#/definitions/LimitsConfig",
|
|
131
|
+
"description": "Global execution limits"
|
|
132
|
+
},
|
|
133
|
+
"frontends": {
|
|
134
|
+
"type": "array",
|
|
135
|
+
"items": {
|
|
136
|
+
"type": "object",
|
|
137
|
+
"properties": {
|
|
138
|
+
"name": {
|
|
139
|
+
"type": "string",
|
|
140
|
+
"description": "Frontend name, e.g., 'ndjson-sink', 'github'"
|
|
141
|
+
},
|
|
142
|
+
"config": {
|
|
143
|
+
"description": "Frontend-specific configuration"
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
"required": [
|
|
147
|
+
"name"
|
|
148
|
+
],
|
|
149
|
+
"additionalProperties": false
|
|
150
|
+
},
|
|
151
|
+
"description": "Optional integrations: event-driven frontends (e.g., ndjson-sink, github)"
|
|
152
|
+
},
|
|
153
|
+
"workspace": {
|
|
154
|
+
"$ref": "#/definitions/WorkspaceConfig",
|
|
155
|
+
"description": "Workspace isolation configuration for sandboxed execution"
|
|
156
|
+
},
|
|
157
|
+
"slack": {
|
|
158
|
+
"$ref": "#/definitions/SlackConfig",
|
|
159
|
+
"description": "Slack configuration"
|
|
85
160
|
}
|
|
86
161
|
},
|
|
87
162
|
"required": [
|
|
88
|
-
"version"
|
|
89
|
-
|
|
163
|
+
"version"
|
|
164
|
+
],
|
|
165
|
+
"patternProperties": {
|
|
166
|
+
"^x-": {}
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
"Record<string,unknown>": {
|
|
170
|
+
"type": "object",
|
|
171
|
+
"additionalProperties": {}
|
|
172
|
+
},
|
|
173
|
+
"Record<string,CustomToolDefinition>": {
|
|
174
|
+
"type": "object",
|
|
175
|
+
"additionalProperties": {
|
|
176
|
+
"$ref": "#/definitions/CustomToolDefinition"
|
|
177
|
+
}
|
|
178
|
+
},
|
|
179
|
+
"CustomToolDefinition": {
|
|
180
|
+
"type": "object",
|
|
181
|
+
"properties": {
|
|
182
|
+
"name": {
|
|
183
|
+
"type": "string",
|
|
184
|
+
"description": "Tool name - used to reference the tool in MCP blocks"
|
|
185
|
+
},
|
|
186
|
+
"description": {
|
|
187
|
+
"type": "string",
|
|
188
|
+
"description": "Description of what the tool does"
|
|
189
|
+
},
|
|
190
|
+
"inputSchema": {
|
|
191
|
+
"type": "object",
|
|
192
|
+
"properties": {
|
|
193
|
+
"type": {
|
|
194
|
+
"type": "string",
|
|
195
|
+
"const": "object"
|
|
196
|
+
},
|
|
197
|
+
"properties": {
|
|
198
|
+
"$ref": "#/definitions/Record%3Cstring%2Cunknown%3E"
|
|
199
|
+
},
|
|
200
|
+
"required": {
|
|
201
|
+
"type": "array",
|
|
202
|
+
"items": {
|
|
203
|
+
"type": "string"
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
"additionalProperties": {
|
|
207
|
+
"type": "boolean"
|
|
208
|
+
}
|
|
209
|
+
},
|
|
210
|
+
"required": [
|
|
211
|
+
"type"
|
|
212
|
+
],
|
|
213
|
+
"additionalProperties": false,
|
|
214
|
+
"description": "Input schema for the tool (JSON Schema format)",
|
|
215
|
+
"patternProperties": {
|
|
216
|
+
"^x-": {}
|
|
217
|
+
}
|
|
218
|
+
},
|
|
219
|
+
"exec": {
|
|
220
|
+
"type": "string",
|
|
221
|
+
"description": "Command to execute - supports Liquid template"
|
|
222
|
+
},
|
|
223
|
+
"stdin": {
|
|
224
|
+
"type": "string",
|
|
225
|
+
"description": "Optional stdin input - supports Liquid template"
|
|
226
|
+
},
|
|
227
|
+
"transform": {
|
|
228
|
+
"type": "string",
|
|
229
|
+
"description": "Transform the raw output - supports Liquid template"
|
|
230
|
+
},
|
|
231
|
+
"transform_js": {
|
|
232
|
+
"type": "string",
|
|
233
|
+
"description": "Transform the output using JavaScript - alternative to transform"
|
|
234
|
+
},
|
|
235
|
+
"cwd": {
|
|
236
|
+
"type": "string",
|
|
237
|
+
"description": "Working directory for command execution"
|
|
238
|
+
},
|
|
239
|
+
"env": {
|
|
240
|
+
"$ref": "#/definitions/Record%3Cstring%2Cstring%3E",
|
|
241
|
+
"description": "Environment variables for the command"
|
|
242
|
+
},
|
|
243
|
+
"timeout": {
|
|
244
|
+
"type": "number",
|
|
245
|
+
"description": "Timeout in milliseconds"
|
|
246
|
+
},
|
|
247
|
+
"parseJson": {
|
|
248
|
+
"type": "boolean",
|
|
249
|
+
"description": "Whether to parse output as JSON automatically"
|
|
250
|
+
},
|
|
251
|
+
"outputSchema": {
|
|
252
|
+
"$ref": "#/definitions/Record%3Cstring%2Cunknown%3E",
|
|
253
|
+
"description": "Expected output schema for validation"
|
|
254
|
+
}
|
|
255
|
+
},
|
|
256
|
+
"required": [
|
|
257
|
+
"name",
|
|
258
|
+
"exec"
|
|
90
259
|
],
|
|
91
260
|
"additionalProperties": false,
|
|
92
|
-
"description": "
|
|
261
|
+
"description": "Custom tool definition for use in MCP blocks",
|
|
262
|
+
"patternProperties": {
|
|
263
|
+
"^x-": {}
|
|
264
|
+
}
|
|
265
|
+
},
|
|
266
|
+
"Record<string,string>": {
|
|
267
|
+
"type": "object",
|
|
268
|
+
"additionalProperties": {
|
|
269
|
+
"type": "string"
|
|
270
|
+
}
|
|
271
|
+
},
|
|
272
|
+
"WorkflowInput": {
|
|
273
|
+
"type": "object",
|
|
274
|
+
"properties": {
|
|
275
|
+
"name": {
|
|
276
|
+
"type": "string",
|
|
277
|
+
"description": "Input parameter name"
|
|
278
|
+
},
|
|
279
|
+
"schema": {
|
|
280
|
+
"$ref": "#/definitions/Record%3Cstring%2Cunknown%3E",
|
|
281
|
+
"description": "JSON Schema for the input"
|
|
282
|
+
},
|
|
283
|
+
"required": {
|
|
284
|
+
"type": "boolean",
|
|
285
|
+
"description": "Whether this input is required"
|
|
286
|
+
},
|
|
287
|
+
"default": {
|
|
288
|
+
"description": "Default value if not provided"
|
|
289
|
+
},
|
|
290
|
+
"description": {
|
|
291
|
+
"type": "string",
|
|
292
|
+
"description": "Human-readable description"
|
|
293
|
+
}
|
|
294
|
+
},
|
|
295
|
+
"required": [
|
|
296
|
+
"name"
|
|
297
|
+
],
|
|
298
|
+
"additionalProperties": false,
|
|
299
|
+
"description": "Workflow input definition for standalone reusable workflows",
|
|
300
|
+
"patternProperties": {
|
|
301
|
+
"^x-": {}
|
|
302
|
+
}
|
|
303
|
+
},
|
|
304
|
+
"WorkflowOutput": {
|
|
305
|
+
"type": "object",
|
|
306
|
+
"properties": {
|
|
307
|
+
"name": {
|
|
308
|
+
"type": "string",
|
|
309
|
+
"description": "Output name"
|
|
310
|
+
},
|
|
311
|
+
"description": {
|
|
312
|
+
"type": "string",
|
|
313
|
+
"description": "Human-readable description"
|
|
314
|
+
},
|
|
315
|
+
"value": {
|
|
316
|
+
"type": "string",
|
|
317
|
+
"description": "Value using Liquid template syntax (references step outputs)"
|
|
318
|
+
},
|
|
319
|
+
"value_js": {
|
|
320
|
+
"type": "string",
|
|
321
|
+
"description": "Value using JavaScript expression (alternative to value)"
|
|
322
|
+
}
|
|
323
|
+
},
|
|
324
|
+
"required": [
|
|
325
|
+
"name"
|
|
326
|
+
],
|
|
327
|
+
"additionalProperties": false,
|
|
328
|
+
"description": "Workflow output definition for standalone reusable workflows",
|
|
93
329
|
"patternProperties": {
|
|
94
330
|
"^x-": {}
|
|
95
331
|
}
|
|
@@ -151,6 +387,10 @@
|
|
|
151
387
|
"type": "string",
|
|
152
388
|
"description": "Transform using JavaScript expressions (evaluated in secure sandbox) - optional"
|
|
153
389
|
},
|
|
390
|
+
"content": {
|
|
391
|
+
"type": "string",
|
|
392
|
+
"description": "Script content to execute for script checks"
|
|
393
|
+
},
|
|
154
394
|
"schedule": {
|
|
155
395
|
"type": "string",
|
|
156
396
|
"description": "Cron schedule expression (e.g., \"0 2 * * *\") - optional for any check type"
|
|
@@ -189,10 +429,33 @@
|
|
|
189
429
|
"type": "string",
|
|
190
430
|
"description": "AI provider to use for this check - overrides global setting"
|
|
191
431
|
},
|
|
432
|
+
"ai_persona": {
|
|
433
|
+
"type": "string",
|
|
434
|
+
"description": "Optional persona hint, prepended to the prompt as 'Persona: <value>'"
|
|
435
|
+
},
|
|
436
|
+
"ai_prompt_type": {
|
|
437
|
+
"type": "string",
|
|
438
|
+
"description": "Probe promptType for this check (underscore style)"
|
|
439
|
+
},
|
|
440
|
+
"ai_system_prompt": {
|
|
441
|
+
"type": "string",
|
|
442
|
+
"description": "System prompt for this check (underscore style)"
|
|
443
|
+
},
|
|
444
|
+
"ai_custom_prompt": {
|
|
445
|
+
"type": "string",
|
|
446
|
+
"description": "Legacy customPrompt (underscore style) — deprecated, use ai_system_prompt"
|
|
447
|
+
},
|
|
192
448
|
"ai_mcp_servers": {
|
|
193
449
|
"$ref": "#/definitions/Record%3Cstring%2CMcpServerConfig%3E",
|
|
194
450
|
"description": "MCP servers for this AI check - overrides global setting"
|
|
195
451
|
},
|
|
452
|
+
"ai_custom_tools": {
|
|
453
|
+
"type": "array",
|
|
454
|
+
"items": {
|
|
455
|
+
"type": "string"
|
|
456
|
+
},
|
|
457
|
+
"description": "List of custom tool names to expose to this AI check via ephemeral SSE MCP server"
|
|
458
|
+
},
|
|
196
459
|
"claude_code": {
|
|
197
460
|
"$ref": "#/definitions/ClaudeCodeConfig",
|
|
198
461
|
"description": "Claude Code configuration (for claude-code type checks)"
|
|
@@ -206,11 +469,18 @@
|
|
|
206
469
|
"description": "Timeout in seconds for command execution (default: 60)"
|
|
207
470
|
},
|
|
208
471
|
"depends_on": {
|
|
209
|
-
"
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
472
|
+
"anyOf": [
|
|
473
|
+
{
|
|
474
|
+
"type": "string"
|
|
475
|
+
},
|
|
476
|
+
{
|
|
477
|
+
"type": "array",
|
|
478
|
+
"items": {
|
|
479
|
+
"type": "string"
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
],
|
|
483
|
+
"description": "Check IDs that this check depends on (optional). Accepts single string or array."
|
|
214
484
|
},
|
|
215
485
|
"group": {
|
|
216
486
|
"type": "string",
|
|
@@ -227,6 +497,10 @@
|
|
|
227
497
|
],
|
|
228
498
|
"description": "Schema type for template rendering (e.g., \"code-review\", \"markdown\") or inline JSON schema object - optional"
|
|
229
499
|
},
|
|
500
|
+
"output_schema": {
|
|
501
|
+
"$ref": "#/definitions/Record%3Cstring%2Cunknown%3E",
|
|
502
|
+
"description": "Optional JSON Schema to validate the produced output. If omitted and `schema` is an object, the engine will treat that object as the output_schema for validation purposes while still using string schemas (e.g., 'code-review') for template selection."
|
|
503
|
+
},
|
|
230
504
|
"template": {
|
|
231
505
|
"$ref": "#/definitions/CustomTemplateConfig",
|
|
232
506
|
"description": "Custom template configuration - optional"
|
|
@@ -265,10 +539,40 @@
|
|
|
265
539
|
},
|
|
266
540
|
"description": "Tags for categorizing and filtering checks (e.g., [\"local\", \"fast\", \"security\"])"
|
|
267
541
|
},
|
|
542
|
+
"criticality": {
|
|
543
|
+
"type": "string",
|
|
544
|
+
"enum": [
|
|
545
|
+
"external",
|
|
546
|
+
"internal",
|
|
547
|
+
"policy",
|
|
548
|
+
"info"
|
|
549
|
+
],
|
|
550
|
+
"description": "Operational criticality of this step. Drives default safety policies (contracts, retries, loop budgets) at load time. Behavior can still be overridden explicitly per step via on_*, fail_if, assume/guarantee, etc.\n\n- 'external': interacts with external systems (side effects). Highest safety.\n- 'internal': modifies CI/config/state but not prod. High safety.\n- 'policy': organizational checks (linting, style, doc). Moderate safety.\n- 'info': informational checks. Lowest safety."
|
|
551
|
+
},
|
|
552
|
+
"continue_on_failure": {
|
|
553
|
+
"type": "boolean",
|
|
554
|
+
"description": "Allow dependents to run even if this step fails. Defaults to false (dependents are gated when this step fails). Similar to GitHub Actions' continue-on-error."
|
|
555
|
+
},
|
|
268
556
|
"forEach": {
|
|
269
557
|
"type": "boolean",
|
|
270
558
|
"description": "Process output as array and run dependent checks for each item"
|
|
271
559
|
},
|
|
560
|
+
"fanout": {
|
|
561
|
+
"type": "string",
|
|
562
|
+
"enum": [
|
|
563
|
+
"map",
|
|
564
|
+
"reduce"
|
|
565
|
+
],
|
|
566
|
+
"description": "Control scheduling behavior when this check is triggered via routing (run/goto) from a forEach scope.\n- 'map': schedule once per item (fan-out) using item scopes.\n- 'reduce': schedule a single run at the parent scope (aggregation). If unset, the current default is a single run (reduce) for backward compatibility."
|
|
567
|
+
},
|
|
568
|
+
"reduce": {
|
|
569
|
+
"type": "boolean",
|
|
570
|
+
"description": "Alias for fanout: 'reduce'"
|
|
571
|
+
},
|
|
572
|
+
"on_init": {
|
|
573
|
+
"$ref": "#/definitions/OnInitConfig",
|
|
574
|
+
"description": "Init routing configuration for this check (runs before execution/preprocessing)"
|
|
575
|
+
},
|
|
272
576
|
"on_fail": {
|
|
273
577
|
"$ref": "#/definitions/OnFailConfig",
|
|
274
578
|
"description": "Failure routing configuration for this check (retry/goto/run)"
|
|
@@ -277,6 +581,42 @@
|
|
|
277
581
|
"$ref": "#/definitions/OnSuccessConfig",
|
|
278
582
|
"description": "Success routing configuration for this check (post-actions and optional goto)"
|
|
279
583
|
},
|
|
584
|
+
"on_finish": {
|
|
585
|
+
"$ref": "#/definitions/OnFinishConfig",
|
|
586
|
+
"description": "Finish routing configuration for forEach checks (runs after ALL iterations complete)"
|
|
587
|
+
},
|
|
588
|
+
"assume": {
|
|
589
|
+
"anyOf": [
|
|
590
|
+
{
|
|
591
|
+
"type": "string"
|
|
592
|
+
},
|
|
593
|
+
{
|
|
594
|
+
"type": "array",
|
|
595
|
+
"items": {
|
|
596
|
+
"type": "string"
|
|
597
|
+
}
|
|
598
|
+
}
|
|
599
|
+
],
|
|
600
|
+
"description": "Preconditions that must hold before executing the check. If any expression evaluates to false, the check is skipped (skipReason='assume')."
|
|
601
|
+
},
|
|
602
|
+
"guarantee": {
|
|
603
|
+
"anyOf": [
|
|
604
|
+
{
|
|
605
|
+
"type": "string"
|
|
606
|
+
},
|
|
607
|
+
{
|
|
608
|
+
"type": "array",
|
|
609
|
+
"items": {
|
|
610
|
+
"type": "string"
|
|
611
|
+
}
|
|
612
|
+
}
|
|
613
|
+
],
|
|
614
|
+
"description": "Postconditions that should hold after executing the check. Expressions are evaluated against the produced result/output; violations are recorded as error issues with ruleId \"contract/guarantee_failed\"."
|
|
615
|
+
},
|
|
616
|
+
"max_runs": {
|
|
617
|
+
"type": "number",
|
|
618
|
+
"description": "Hard cap on how many times this check may execute within a single engine run. Overrides global limits.max_runs_per_check. Set to 0 or negative to disable for this step."
|
|
619
|
+
},
|
|
280
620
|
"message": {
|
|
281
621
|
"type": "string",
|
|
282
622
|
"description": "Message template for log checks"
|
|
@@ -303,6 +643,14 @@
|
|
|
303
643
|
"type": "boolean",
|
|
304
644
|
"description": "Include execution metadata in log output"
|
|
305
645
|
},
|
|
646
|
+
"output_format": {
|
|
647
|
+
"type": "string",
|
|
648
|
+
"enum": [
|
|
649
|
+
"json",
|
|
650
|
+
"text"
|
|
651
|
+
],
|
|
652
|
+
"description": "Output parsing hint for command provider (optional) When set to 'json', command stdout is expected to be JSON. When 'text', treat as plain text. Note: command provider attempts JSON parsing heuristically; this flag mainly suppresses schema warnings and may be used by providers to alter parsing behavior in the future."
|
|
653
|
+
},
|
|
306
654
|
"operation": {
|
|
307
655
|
"type": "string",
|
|
308
656
|
"enum": [
|
|
@@ -312,10 +660,9 @@
|
|
|
312
660
|
"increment",
|
|
313
661
|
"delete",
|
|
314
662
|
"clear",
|
|
315
|
-
"list"
|
|
316
|
-
"exec_js"
|
|
663
|
+
"list"
|
|
317
664
|
],
|
|
318
|
-
"description": "Memory operation to perform"
|
|
665
|
+
"description": "Memory operation to perform. Use `type: 'script'` for custom JavaScript."
|
|
319
666
|
},
|
|
320
667
|
"key": {
|
|
321
668
|
"type": "string",
|
|
@@ -328,10 +675,6 @@
|
|
|
328
675
|
"type": "string",
|
|
329
676
|
"description": "JavaScript expression to compute value dynamically"
|
|
330
677
|
},
|
|
331
|
-
"memory_js": {
|
|
332
|
-
"type": "string",
|
|
333
|
-
"description": "JavaScript code for exec_js operation with full memory access"
|
|
334
|
-
},
|
|
335
678
|
"namespace": {
|
|
336
679
|
"type": "string",
|
|
337
680
|
"description": "Override namespace for this check"
|
|
@@ -375,7 +718,7 @@
|
|
|
375
718
|
"type": "string",
|
|
376
719
|
"description": "Session ID for HTTP transport (optional, server may generate one)"
|
|
377
720
|
},
|
|
378
|
-
"
|
|
721
|
+
"command_args": {
|
|
379
722
|
"type": "array",
|
|
380
723
|
"items": {
|
|
381
724
|
"type": "string"
|
|
@@ -385,6 +728,117 @@
|
|
|
385
728
|
"workingDirectory": {
|
|
386
729
|
"type": "string",
|
|
387
730
|
"description": "Working directory (for stdio transport in MCP checks)"
|
|
731
|
+
},
|
|
732
|
+
"placeholder": {
|
|
733
|
+
"type": "string",
|
|
734
|
+
"description": "Placeholder text to show in input field"
|
|
735
|
+
},
|
|
736
|
+
"allow_empty": {
|
|
737
|
+
"type": "boolean",
|
|
738
|
+
"description": "Allow empty input (default: false)"
|
|
739
|
+
},
|
|
740
|
+
"multiline": {
|
|
741
|
+
"type": "boolean",
|
|
742
|
+
"description": "Support multiline input (default: false)"
|
|
743
|
+
},
|
|
744
|
+
"default": {
|
|
745
|
+
"type": "string",
|
|
746
|
+
"description": "Default value if timeout occurs or empty input when allow_empty is true"
|
|
747
|
+
},
|
|
748
|
+
"workflow": {
|
|
749
|
+
"type": "string",
|
|
750
|
+
"description": "Workflow ID or path to workflow file"
|
|
751
|
+
},
|
|
752
|
+
"args": {
|
|
753
|
+
"$ref": "#/definitions/Record%3Cstring%2Cunknown%3E",
|
|
754
|
+
"description": "Arguments/inputs for the workflow"
|
|
755
|
+
},
|
|
756
|
+
"overrides": {
|
|
757
|
+
"$ref": "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-40845%3E%3E",
|
|
758
|
+
"description": "Override specific step configurations in the workflow"
|
|
759
|
+
},
|
|
760
|
+
"output_mapping": {
|
|
761
|
+
"$ref": "#/definitions/Record%3Cstring%2Cstring%3E",
|
|
762
|
+
"description": "Map workflow outputs to check outputs"
|
|
763
|
+
},
|
|
764
|
+
"workflow_inputs": {
|
|
765
|
+
"$ref": "#/definitions/Record%3Cstring%2Cunknown%3E",
|
|
766
|
+
"description": "Alias for args - workflow inputs (backward compatibility)"
|
|
767
|
+
},
|
|
768
|
+
"config": {
|
|
769
|
+
"type": "string",
|
|
770
|
+
"description": "Config file path - alternative to workflow ID (loads a Visor config file as workflow)"
|
|
771
|
+
},
|
|
772
|
+
"workflow_overrides": {
|
|
773
|
+
"$ref": "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-40845%3E%3E",
|
|
774
|
+
"description": "Alias for overrides - workflow step overrides (backward compatibility)"
|
|
775
|
+
},
|
|
776
|
+
"ref": {
|
|
777
|
+
"type": "string",
|
|
778
|
+
"description": "Git reference to checkout (branch, tag, commit SHA) - supports templates"
|
|
779
|
+
},
|
|
780
|
+
"repository": {
|
|
781
|
+
"type": "string",
|
|
782
|
+
"description": "Repository URL or owner/repo format (defaults to current repository)"
|
|
783
|
+
},
|
|
784
|
+
"token": {
|
|
785
|
+
"type": "string",
|
|
786
|
+
"description": "GitHub token for private repositories (defaults to GITHUB_TOKEN env)"
|
|
787
|
+
},
|
|
788
|
+
"fetch_depth": {
|
|
789
|
+
"type": "number",
|
|
790
|
+
"description": "Number of commits to fetch (0 for full history, default: 1)"
|
|
791
|
+
},
|
|
792
|
+
"fetch_tags": {
|
|
793
|
+
"type": "boolean",
|
|
794
|
+
"description": "Whether to fetch tags (default: false)"
|
|
795
|
+
},
|
|
796
|
+
"submodules": {
|
|
797
|
+
"anyOf": [
|
|
798
|
+
{
|
|
799
|
+
"type": "boolean"
|
|
800
|
+
},
|
|
801
|
+
{
|
|
802
|
+
"type": "string",
|
|
803
|
+
"const": "recursive"
|
|
804
|
+
}
|
|
805
|
+
],
|
|
806
|
+
"description": "Checkout submodules: false, true, or 'recursive'"
|
|
807
|
+
},
|
|
808
|
+
"working_directory": {
|
|
809
|
+
"type": "string",
|
|
810
|
+
"description": "Working directory for the checkout (defaults to temp directory)"
|
|
811
|
+
},
|
|
812
|
+
"use_worktree": {
|
|
813
|
+
"type": "boolean",
|
|
814
|
+
"description": "Use git worktree for efficient parallel checkouts (default: true)"
|
|
815
|
+
},
|
|
816
|
+
"clean": {
|
|
817
|
+
"type": "boolean",
|
|
818
|
+
"description": "Clean the working directory before checkout (default: true)"
|
|
819
|
+
},
|
|
820
|
+
"sparse_checkout": {
|
|
821
|
+
"type": "array",
|
|
822
|
+
"items": {
|
|
823
|
+
"type": "string"
|
|
824
|
+
},
|
|
825
|
+
"description": "Sparse checkout paths - only checkout specific directories/files"
|
|
826
|
+
},
|
|
827
|
+
"lfs": {
|
|
828
|
+
"type": "boolean",
|
|
829
|
+
"description": "Enable Git LFS (Large File Storage)"
|
|
830
|
+
},
|
|
831
|
+
"clone_timeout_ms": {
|
|
832
|
+
"type": "number",
|
|
833
|
+
"description": "Timeout in ms for cloning the bare repository (default: 300000 = 5 min)"
|
|
834
|
+
},
|
|
835
|
+
"cleanup_on_failure": {
|
|
836
|
+
"type": "boolean",
|
|
837
|
+
"description": "Clean up worktree on failure (default: true)"
|
|
838
|
+
},
|
|
839
|
+
"persist_worktree": {
|
|
840
|
+
"type": "boolean",
|
|
841
|
+
"description": "Keep worktree after workflow completion (default: false)"
|
|
388
842
|
}
|
|
389
843
|
},
|
|
390
844
|
"additionalProperties": false,
|
|
@@ -398,6 +852,7 @@
|
|
|
398
852
|
"enum": [
|
|
399
853
|
"ai",
|
|
400
854
|
"command",
|
|
855
|
+
"script",
|
|
401
856
|
"http",
|
|
402
857
|
"http_input",
|
|
403
858
|
"http_client",
|
|
@@ -407,16 +862,12 @@
|
|
|
407
862
|
"github",
|
|
408
863
|
"claude-code",
|
|
409
864
|
"mcp",
|
|
410
|
-
"human-input"
|
|
865
|
+
"human-input",
|
|
866
|
+
"workflow",
|
|
867
|
+
"git-checkout"
|
|
411
868
|
],
|
|
412
869
|
"description": "Valid check types in configuration"
|
|
413
870
|
},
|
|
414
|
-
"Record<string,string>": {
|
|
415
|
-
"type": "object",
|
|
416
|
-
"additionalProperties": {
|
|
417
|
-
"type": "string"
|
|
418
|
-
}
|
|
419
|
-
},
|
|
420
871
|
"EventTrigger": {
|
|
421
872
|
"type": "string",
|
|
422
873
|
"enum": [
|
|
@@ -457,51 +908,270 @@
|
|
|
457
908
|
"type": "number",
|
|
458
909
|
"description": "Request timeout in milliseconds"
|
|
459
910
|
},
|
|
460
|
-
"debug": {
|
|
461
|
-
"type": "boolean",
|
|
462
|
-
"description": "Enable debug mode"
|
|
911
|
+
"debug": {
|
|
912
|
+
"type": "boolean",
|
|
913
|
+
"description": "Enable debug mode"
|
|
914
|
+
},
|
|
915
|
+
"prompt_type": {
|
|
916
|
+
"type": "string",
|
|
917
|
+
"description": "Probe promptType to use (e.g., engineer, code-review, architect)"
|
|
918
|
+
},
|
|
919
|
+
"system_prompt": {
|
|
920
|
+
"type": "string",
|
|
921
|
+
"description": "System prompt (baseline preamble). Replaces legacy custom_prompt."
|
|
922
|
+
},
|
|
923
|
+
"custom_prompt": {
|
|
924
|
+
"type": "string",
|
|
925
|
+
"description": "Probe customPrompt (baseline/system prompt) — deprecated, use system_prompt"
|
|
926
|
+
},
|
|
927
|
+
"skip_code_context": {
|
|
928
|
+
"type": "boolean",
|
|
929
|
+
"description": "Skip adding code context (diffs, files, PR info) to the prompt"
|
|
930
|
+
},
|
|
931
|
+
"skip_slack_context": {
|
|
932
|
+
"type": "boolean",
|
|
933
|
+
"description": "Skip adding Slack conversation context to the prompt (when running under Slack)"
|
|
934
|
+
},
|
|
935
|
+
"skip_transport_context": {
|
|
936
|
+
"type": "boolean",
|
|
937
|
+
"description": "Skip adding transport-specific context (e.g., GitHub PR/issue XML, Slack conversation XML) to the prompt. When true, this behaves like setting both skip_code_context and skip_slack_context to true, unless those are explicitly overridden."
|
|
938
|
+
},
|
|
939
|
+
"mcpServers": {
|
|
940
|
+
"$ref": "#/definitions/Record%3Cstring%2CMcpServerConfig%3E",
|
|
941
|
+
"description": "MCP servers configuration"
|
|
942
|
+
},
|
|
943
|
+
"enableDelegate": {
|
|
944
|
+
"type": "boolean",
|
|
945
|
+
"description": "Enable the delegate tool for task distribution to subagents"
|
|
946
|
+
},
|
|
947
|
+
"retry": {
|
|
948
|
+
"$ref": "#/definitions/AIRetryConfig",
|
|
949
|
+
"description": "Retry configuration for this provider"
|
|
950
|
+
},
|
|
951
|
+
"fallback": {
|
|
952
|
+
"$ref": "#/definitions/AIFallbackConfig",
|
|
953
|
+
"description": "Fallback configuration for provider failures"
|
|
954
|
+
},
|
|
955
|
+
"allowEdit": {
|
|
956
|
+
"type": "boolean",
|
|
957
|
+
"description": "Enable Edit and Create tools for file modification (disabled by default for security)"
|
|
958
|
+
},
|
|
959
|
+
"allowedTools": {
|
|
960
|
+
"type": "array",
|
|
961
|
+
"items": {
|
|
962
|
+
"type": "string"
|
|
963
|
+
},
|
|
964
|
+
"description": "Filter allowed tools - supports whitelist, exclusion (!prefix), or raw AI mode (empty array)"
|
|
965
|
+
},
|
|
966
|
+
"disableTools": {
|
|
967
|
+
"type": "boolean",
|
|
968
|
+
"description": "Disable all tools for raw AI mode (alternative to allowedTools: [])"
|
|
969
|
+
},
|
|
970
|
+
"allowBash": {
|
|
971
|
+
"type": "boolean",
|
|
972
|
+
"description": "Enable bash command execution (shorthand for bashConfig.enabled)"
|
|
973
|
+
},
|
|
974
|
+
"bashConfig": {
|
|
975
|
+
"$ref": "#/definitions/BashConfig",
|
|
976
|
+
"description": "Advanced bash command execution configuration"
|
|
977
|
+
},
|
|
978
|
+
"completion_prompt": {
|
|
979
|
+
"type": "string",
|
|
980
|
+
"description": "Completion prompt for post-completion validation/review (runs after attempt_completion)"
|
|
981
|
+
}
|
|
982
|
+
},
|
|
983
|
+
"additionalProperties": false,
|
|
984
|
+
"description": "AI provider configuration",
|
|
985
|
+
"patternProperties": {
|
|
986
|
+
"^x-": {}
|
|
987
|
+
}
|
|
988
|
+
},
|
|
989
|
+
"Record<string,McpServerConfig>": {
|
|
990
|
+
"type": "object",
|
|
991
|
+
"additionalProperties": {
|
|
992
|
+
"$ref": "#/definitions/McpServerConfig"
|
|
993
|
+
}
|
|
994
|
+
},
|
|
995
|
+
"McpServerConfig": {
|
|
996
|
+
"type": "object",
|
|
997
|
+
"properties": {
|
|
998
|
+
"command": {
|
|
999
|
+
"type": "string",
|
|
1000
|
+
"description": "Command to execute for the MCP server"
|
|
1001
|
+
},
|
|
1002
|
+
"args": {
|
|
1003
|
+
"type": "array",
|
|
1004
|
+
"items": {
|
|
1005
|
+
"type": "string"
|
|
1006
|
+
},
|
|
1007
|
+
"description": "Arguments to pass to the command"
|
|
1008
|
+
},
|
|
1009
|
+
"env": {
|
|
1010
|
+
"$ref": "#/definitions/Record%3Cstring%2Cstring%3E",
|
|
1011
|
+
"description": "Environment variables for the MCP server"
|
|
1012
|
+
}
|
|
1013
|
+
},
|
|
1014
|
+
"required": [
|
|
1015
|
+
"command"
|
|
1016
|
+
],
|
|
1017
|
+
"additionalProperties": false,
|
|
1018
|
+
"description": "MCP Server configuration",
|
|
1019
|
+
"patternProperties": {
|
|
1020
|
+
"^x-": {}
|
|
1021
|
+
}
|
|
1022
|
+
},
|
|
1023
|
+
"AIRetryConfig": {
|
|
1024
|
+
"type": "object",
|
|
1025
|
+
"properties": {
|
|
1026
|
+
"maxRetries": {
|
|
1027
|
+
"type": "number",
|
|
1028
|
+
"description": "Maximum retry attempts (0-50)"
|
|
1029
|
+
},
|
|
1030
|
+
"initialDelay": {
|
|
1031
|
+
"type": "number",
|
|
1032
|
+
"description": "Initial delay in milliseconds (0-60000)"
|
|
1033
|
+
},
|
|
1034
|
+
"maxDelay": {
|
|
1035
|
+
"type": "number",
|
|
1036
|
+
"description": "Maximum delay cap in milliseconds (0-300000)"
|
|
1037
|
+
},
|
|
1038
|
+
"backoffFactor": {
|
|
1039
|
+
"type": "number",
|
|
1040
|
+
"description": "Exponential backoff multiplier (1-10)"
|
|
1041
|
+
},
|
|
1042
|
+
"retryableErrors": {
|
|
1043
|
+
"type": "array",
|
|
1044
|
+
"items": {
|
|
1045
|
+
"type": "string"
|
|
1046
|
+
},
|
|
1047
|
+
"description": "Custom error patterns to retry on"
|
|
1048
|
+
}
|
|
1049
|
+
},
|
|
1050
|
+
"additionalProperties": false,
|
|
1051
|
+
"description": "Retry configuration for AI provider calls",
|
|
1052
|
+
"patternProperties": {
|
|
1053
|
+
"^x-": {}
|
|
1054
|
+
}
|
|
1055
|
+
},
|
|
1056
|
+
"AIFallbackConfig": {
|
|
1057
|
+
"type": "object",
|
|
1058
|
+
"properties": {
|
|
1059
|
+
"strategy": {
|
|
1060
|
+
"type": "string",
|
|
1061
|
+
"enum": [
|
|
1062
|
+
"same-model",
|
|
1063
|
+
"same-provider",
|
|
1064
|
+
"any",
|
|
1065
|
+
"custom"
|
|
1066
|
+
],
|
|
1067
|
+
"description": "Fallback strategy: 'same-model', 'same-provider', 'any', or 'custom'"
|
|
1068
|
+
},
|
|
1069
|
+
"providers": {
|
|
1070
|
+
"type": "array",
|
|
1071
|
+
"items": {
|
|
1072
|
+
"$ref": "#/definitions/AIFallbackProviderConfig"
|
|
1073
|
+
},
|
|
1074
|
+
"description": "Array of fallback provider configurations"
|
|
1075
|
+
},
|
|
1076
|
+
"maxTotalAttempts": {
|
|
1077
|
+
"type": "number",
|
|
1078
|
+
"description": "Maximum total attempts across all providers"
|
|
1079
|
+
},
|
|
1080
|
+
"auto": {
|
|
1081
|
+
"type": "boolean",
|
|
1082
|
+
"description": "Enable automatic fallback using available environment variables"
|
|
1083
|
+
}
|
|
1084
|
+
},
|
|
1085
|
+
"additionalProperties": false,
|
|
1086
|
+
"description": "Fallback configuration for AI providers",
|
|
1087
|
+
"patternProperties": {
|
|
1088
|
+
"^x-": {}
|
|
1089
|
+
}
|
|
1090
|
+
},
|
|
1091
|
+
"AIFallbackProviderConfig": {
|
|
1092
|
+
"type": "object",
|
|
1093
|
+
"properties": {
|
|
1094
|
+
"provider": {
|
|
1095
|
+
"type": "string",
|
|
1096
|
+
"enum": [
|
|
1097
|
+
"google",
|
|
1098
|
+
"anthropic",
|
|
1099
|
+
"openai",
|
|
1100
|
+
"bedrock"
|
|
1101
|
+
],
|
|
1102
|
+
"description": "AI provider to use"
|
|
1103
|
+
},
|
|
1104
|
+
"model": {
|
|
1105
|
+
"type": "string",
|
|
1106
|
+
"description": "Model name to use"
|
|
1107
|
+
},
|
|
1108
|
+
"apiKey": {
|
|
1109
|
+
"type": "string",
|
|
1110
|
+
"description": "API key for this provider"
|
|
1111
|
+
},
|
|
1112
|
+
"maxRetries": {
|
|
1113
|
+
"type": "number",
|
|
1114
|
+
"description": "Per-provider retry override"
|
|
1115
|
+
},
|
|
1116
|
+
"region": {
|
|
1117
|
+
"type": "string",
|
|
1118
|
+
"description": "AWS region (for Bedrock)"
|
|
1119
|
+
},
|
|
1120
|
+
"accessKeyId": {
|
|
1121
|
+
"type": "string",
|
|
1122
|
+
"description": "AWS access key ID (for Bedrock)"
|
|
463
1123
|
},
|
|
464
|
-
"
|
|
465
|
-
"
|
|
466
|
-
"description": "
|
|
1124
|
+
"secretAccessKey": {
|
|
1125
|
+
"type": "string",
|
|
1126
|
+
"description": "AWS secret access key (for Bedrock)"
|
|
467
1127
|
}
|
|
468
1128
|
},
|
|
1129
|
+
"required": [
|
|
1130
|
+
"provider",
|
|
1131
|
+
"model"
|
|
1132
|
+
],
|
|
469
1133
|
"additionalProperties": false,
|
|
470
|
-
"description": "
|
|
1134
|
+
"description": "Fallback provider configuration",
|
|
471
1135
|
"patternProperties": {
|
|
472
1136
|
"^x-": {}
|
|
473
1137
|
}
|
|
474
1138
|
},
|
|
475
|
-
"
|
|
476
|
-
"type": "object",
|
|
477
|
-
"additionalProperties": {
|
|
478
|
-
"$ref": "#/definitions/McpServerConfig"
|
|
479
|
-
}
|
|
480
|
-
},
|
|
481
|
-
"McpServerConfig": {
|
|
1139
|
+
"BashConfig": {
|
|
482
1140
|
"type": "object",
|
|
483
1141
|
"properties": {
|
|
484
|
-
"
|
|
485
|
-
"type": "
|
|
486
|
-
"
|
|
1142
|
+
"allow": {
|
|
1143
|
+
"type": "array",
|
|
1144
|
+
"items": {
|
|
1145
|
+
"type": "string"
|
|
1146
|
+
},
|
|
1147
|
+
"description": "Array of permitted command patterns (e.g., ['ls', 'git status'])"
|
|
487
1148
|
},
|
|
488
|
-
"
|
|
1149
|
+
"deny": {
|
|
489
1150
|
"type": "array",
|
|
490
1151
|
"items": {
|
|
491
1152
|
"type": "string"
|
|
492
1153
|
},
|
|
493
|
-
"description": "
|
|
1154
|
+
"description": "Array of blocked command patterns (e.g., ['rm -rf', 'sudo'])"
|
|
494
1155
|
},
|
|
495
|
-
"
|
|
496
|
-
"
|
|
497
|
-
"description": "
|
|
1156
|
+
"noDefaultAllow": {
|
|
1157
|
+
"type": "boolean",
|
|
1158
|
+
"description": "Disable default safe command list (use with caution)"
|
|
1159
|
+
},
|
|
1160
|
+
"noDefaultDeny": {
|
|
1161
|
+
"type": "boolean",
|
|
1162
|
+
"description": "Disable default dangerous command blocklist (use with extreme caution)"
|
|
1163
|
+
},
|
|
1164
|
+
"timeout": {
|
|
1165
|
+
"type": "number",
|
|
1166
|
+
"description": "Execution timeout in milliseconds"
|
|
1167
|
+
},
|
|
1168
|
+
"workingDirectory": {
|
|
1169
|
+
"type": "string",
|
|
1170
|
+
"description": "Default working directory for command execution"
|
|
498
1171
|
}
|
|
499
1172
|
},
|
|
500
|
-
"required": [
|
|
501
|
-
"command"
|
|
502
|
-
],
|
|
503
1173
|
"additionalProperties": false,
|
|
504
|
-
"description": "
|
|
1174
|
+
"description": "Bash command execution configuration for ProbeAgent Note: Use 'allowBash: true' in AIProviderConfig to enable bash execution",
|
|
505
1175
|
"patternProperties": {
|
|
506
1176
|
"^x-": {}
|
|
507
1177
|
}
|
|
@@ -532,6 +1202,10 @@
|
|
|
532
1202
|
"type": "string",
|
|
533
1203
|
"description": "Path to subagent script"
|
|
534
1204
|
},
|
|
1205
|
+
"enableDelegate": {
|
|
1206
|
+
"type": "boolean",
|
|
1207
|
+
"description": "Enable the delegate tool for task distribution to subagents"
|
|
1208
|
+
},
|
|
535
1209
|
"hooks": {
|
|
536
1210
|
"type": "object",
|
|
537
1211
|
"properties": {
|
|
@@ -572,10 +1246,6 @@
|
|
|
572
1246
|
},
|
|
573
1247
|
"description": "Environment variable reference configuration"
|
|
574
1248
|
},
|
|
575
|
-
"Record<string,unknown>": {
|
|
576
|
-
"type": "object",
|
|
577
|
-
"additionalProperties": {}
|
|
578
|
-
},
|
|
579
1249
|
"CustomTemplateConfig": {
|
|
580
1250
|
"type": "object",
|
|
581
1251
|
"properties": {
|
|
@@ -654,6 +1324,172 @@
|
|
|
654
1324
|
],
|
|
655
1325
|
"description": "Failure condition severity levels"
|
|
656
1326
|
},
|
|
1327
|
+
"OnInitConfig": {
|
|
1328
|
+
"type": "object",
|
|
1329
|
+
"properties": {
|
|
1330
|
+
"run": {
|
|
1331
|
+
"type": "array",
|
|
1332
|
+
"items": {
|
|
1333
|
+
"$ref": "#/definitions/OnInitRunItem"
|
|
1334
|
+
},
|
|
1335
|
+
"description": "Items to run before this check executes"
|
|
1336
|
+
},
|
|
1337
|
+
"run_js": {
|
|
1338
|
+
"type": "string",
|
|
1339
|
+
"description": "Dynamic init items: JS expression returning OnInitRunItem[]"
|
|
1340
|
+
},
|
|
1341
|
+
"transitions": {
|
|
1342
|
+
"type": "array",
|
|
1343
|
+
"items": {
|
|
1344
|
+
"$ref": "#/definitions/TransitionRule"
|
|
1345
|
+
},
|
|
1346
|
+
"description": "Declarative transitions (optional, for advanced use cases)"
|
|
1347
|
+
}
|
|
1348
|
+
},
|
|
1349
|
+
"additionalProperties": false,
|
|
1350
|
+
"description": "Init routing configuration per check Runs BEFORE the check executes (preprocessing/setup)",
|
|
1351
|
+
"patternProperties": {
|
|
1352
|
+
"^x-": {}
|
|
1353
|
+
}
|
|
1354
|
+
},
|
|
1355
|
+
"OnInitRunItem": {
|
|
1356
|
+
"anyOf": [
|
|
1357
|
+
{
|
|
1358
|
+
"$ref": "#/definitions/OnInitToolInvocation"
|
|
1359
|
+
},
|
|
1360
|
+
{
|
|
1361
|
+
"$ref": "#/definitions/OnInitStepInvocation"
|
|
1362
|
+
},
|
|
1363
|
+
{
|
|
1364
|
+
"$ref": "#/definitions/OnInitWorkflowInvocation"
|
|
1365
|
+
},
|
|
1366
|
+
{
|
|
1367
|
+
"type": "string"
|
|
1368
|
+
}
|
|
1369
|
+
],
|
|
1370
|
+
"description": "Unified on_init run item - can be tool, step, workflow, or plain string"
|
|
1371
|
+
},
|
|
1372
|
+
"OnInitToolInvocation": {
|
|
1373
|
+
"type": "object",
|
|
1374
|
+
"properties": {
|
|
1375
|
+
"tool": {
|
|
1376
|
+
"type": "string",
|
|
1377
|
+
"description": "Tool name (must exist in tools: section)"
|
|
1378
|
+
},
|
|
1379
|
+
"with": {
|
|
1380
|
+
"$ref": "#/definitions/Record%3Cstring%2Cunknown%3E",
|
|
1381
|
+
"description": "Arguments to pass to the tool (Liquid templates supported)"
|
|
1382
|
+
},
|
|
1383
|
+
"as": {
|
|
1384
|
+
"type": "string",
|
|
1385
|
+
"description": "Custom output name (defaults to tool name)"
|
|
1386
|
+
}
|
|
1387
|
+
},
|
|
1388
|
+
"required": [
|
|
1389
|
+
"tool"
|
|
1390
|
+
],
|
|
1391
|
+
"additionalProperties": false,
|
|
1392
|
+
"description": "Invoke a custom tool (from tools: section)",
|
|
1393
|
+
"patternProperties": {
|
|
1394
|
+
"^x-": {}
|
|
1395
|
+
}
|
|
1396
|
+
},
|
|
1397
|
+
"OnInitStepInvocation": {
|
|
1398
|
+
"type": "object",
|
|
1399
|
+
"properties": {
|
|
1400
|
+
"step": {
|
|
1401
|
+
"type": "string",
|
|
1402
|
+
"description": "Step name (must exist in steps: section)"
|
|
1403
|
+
},
|
|
1404
|
+
"with": {
|
|
1405
|
+
"$ref": "#/definitions/Record%3Cstring%2Cunknown%3E",
|
|
1406
|
+
"description": "Arguments to pass to the step (Liquid templates supported)"
|
|
1407
|
+
},
|
|
1408
|
+
"as": {
|
|
1409
|
+
"type": "string",
|
|
1410
|
+
"description": "Custom output name (defaults to step name)"
|
|
1411
|
+
}
|
|
1412
|
+
},
|
|
1413
|
+
"required": [
|
|
1414
|
+
"step"
|
|
1415
|
+
],
|
|
1416
|
+
"additionalProperties": false,
|
|
1417
|
+
"description": "Invoke a helper step (regular check)",
|
|
1418
|
+
"patternProperties": {
|
|
1419
|
+
"^x-": {}
|
|
1420
|
+
}
|
|
1421
|
+
},
|
|
1422
|
+
"OnInitWorkflowInvocation": {
|
|
1423
|
+
"type": "object",
|
|
1424
|
+
"properties": {
|
|
1425
|
+
"workflow": {
|
|
1426
|
+
"type": "string",
|
|
1427
|
+
"description": "Workflow ID or path"
|
|
1428
|
+
},
|
|
1429
|
+
"with": {
|
|
1430
|
+
"$ref": "#/definitions/Record%3Cstring%2Cunknown%3E",
|
|
1431
|
+
"description": "Workflow inputs (Liquid templates supported)"
|
|
1432
|
+
},
|
|
1433
|
+
"as": {
|
|
1434
|
+
"type": "string",
|
|
1435
|
+
"description": "Custom output name (defaults to workflow name)"
|
|
1436
|
+
},
|
|
1437
|
+
"overrides": {
|
|
1438
|
+
"$ref": "#/definitions/Record%3Cstring%2CPartial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-40845%3E%3E",
|
|
1439
|
+
"description": "Step overrides"
|
|
1440
|
+
},
|
|
1441
|
+
"output_mapping": {
|
|
1442
|
+
"$ref": "#/definitions/Record%3Cstring%2Cstring%3E",
|
|
1443
|
+
"description": "Output mapping"
|
|
1444
|
+
}
|
|
1445
|
+
},
|
|
1446
|
+
"required": [
|
|
1447
|
+
"workflow"
|
|
1448
|
+
],
|
|
1449
|
+
"additionalProperties": false,
|
|
1450
|
+
"description": "Invoke a reusable workflow",
|
|
1451
|
+
"patternProperties": {
|
|
1452
|
+
"^x-": {}
|
|
1453
|
+
}
|
|
1454
|
+
},
|
|
1455
|
+
"Record<string,Partial<interface-src_types_config.ts-11359-23556-src_types_config.ts-0-40845>>": {
|
|
1456
|
+
"type": "object",
|
|
1457
|
+
"additionalProperties": {
|
|
1458
|
+
"$ref": "#/definitions/Partial%3Cinterface-src_types_config.ts-11359-23556-src_types_config.ts-0-40845%3E"
|
|
1459
|
+
}
|
|
1460
|
+
},
|
|
1461
|
+
"Partial<interface-src_types_config.ts-11359-23556-src_types_config.ts-0-40845>": {
|
|
1462
|
+
"type": "object",
|
|
1463
|
+
"additionalProperties": false
|
|
1464
|
+
},
|
|
1465
|
+
"TransitionRule": {
|
|
1466
|
+
"type": "object",
|
|
1467
|
+
"properties": {
|
|
1468
|
+
"when": {
|
|
1469
|
+
"type": "string",
|
|
1470
|
+
"description": "JavaScript expression evaluated in the same sandbox as goto_js; truthy enables the rule."
|
|
1471
|
+
},
|
|
1472
|
+
"to": {
|
|
1473
|
+
"type": [
|
|
1474
|
+
"string",
|
|
1475
|
+
"null"
|
|
1476
|
+
],
|
|
1477
|
+
"description": "Target step ID, or null to explicitly prevent goto."
|
|
1478
|
+
},
|
|
1479
|
+
"goto_event": {
|
|
1480
|
+
"$ref": "#/definitions/EventTrigger",
|
|
1481
|
+
"description": "Optional event override when performing goto."
|
|
1482
|
+
}
|
|
1483
|
+
},
|
|
1484
|
+
"required": [
|
|
1485
|
+
"when"
|
|
1486
|
+
],
|
|
1487
|
+
"additionalProperties": false,
|
|
1488
|
+
"description": "Declarative transition rule for on_* blocks.",
|
|
1489
|
+
"patternProperties": {
|
|
1490
|
+
"^x-": {}
|
|
1491
|
+
}
|
|
1492
|
+
},
|
|
657
1493
|
"OnFailConfig": {
|
|
658
1494
|
"type": "object",
|
|
659
1495
|
"properties": {
|
|
@@ -683,6 +1519,13 @@
|
|
|
683
1519
|
"run_js": {
|
|
684
1520
|
"type": "string",
|
|
685
1521
|
"description": "Dynamic remediation list: JS expression returning string[]"
|
|
1522
|
+
},
|
|
1523
|
+
"transitions": {
|
|
1524
|
+
"type": "array",
|
|
1525
|
+
"items": {
|
|
1526
|
+
"$ref": "#/definitions/TransitionRule"
|
|
1527
|
+
},
|
|
1528
|
+
"description": "Declarative transitions. Evaluated in order; first matching rule wins. If a rule's `to` is null, no goto occurs. When omitted or none match, the engine falls back to goto_js/goto for backward compatibility."
|
|
686
1529
|
}
|
|
687
1530
|
},
|
|
688
1531
|
"additionalProperties": false,
|
|
@@ -756,6 +1599,13 @@
|
|
|
756
1599
|
"run_js": {
|
|
757
1600
|
"type": "string",
|
|
758
1601
|
"description": "Dynamic post-success steps: JS expression returning string[]"
|
|
1602
|
+
},
|
|
1603
|
+
"transitions": {
|
|
1604
|
+
"type": "array",
|
|
1605
|
+
"items": {
|
|
1606
|
+
"$ref": "#/definitions/TransitionRule"
|
|
1607
|
+
},
|
|
1608
|
+
"description": "Declarative transitions (see OnFailConfig.transitions)."
|
|
759
1609
|
}
|
|
760
1610
|
},
|
|
761
1611
|
"additionalProperties": false,
|
|
@@ -764,6 +1614,46 @@
|
|
|
764
1614
|
"^x-": {}
|
|
765
1615
|
}
|
|
766
1616
|
},
|
|
1617
|
+
"OnFinishConfig": {
|
|
1618
|
+
"type": "object",
|
|
1619
|
+
"properties": {
|
|
1620
|
+
"run": {
|
|
1621
|
+
"type": "array",
|
|
1622
|
+
"items": {
|
|
1623
|
+
"type": "string"
|
|
1624
|
+
},
|
|
1625
|
+
"description": "Post-finish steps to run"
|
|
1626
|
+
},
|
|
1627
|
+
"goto": {
|
|
1628
|
+
"type": "string",
|
|
1629
|
+
"description": "Optional jump back to ancestor step (by id)"
|
|
1630
|
+
},
|
|
1631
|
+
"goto_event": {
|
|
1632
|
+
"$ref": "#/definitions/EventTrigger",
|
|
1633
|
+
"description": "Simulate a different event when performing goto (e.g., 'pr_updated')"
|
|
1634
|
+
},
|
|
1635
|
+
"goto_js": {
|
|
1636
|
+
"type": "string",
|
|
1637
|
+
"description": "Dynamic goto: JS expression returning step id or null"
|
|
1638
|
+
},
|
|
1639
|
+
"run_js": {
|
|
1640
|
+
"type": "string",
|
|
1641
|
+
"description": "Dynamic post-finish steps: JS expression returning string[]"
|
|
1642
|
+
},
|
|
1643
|
+
"transitions": {
|
|
1644
|
+
"type": "array",
|
|
1645
|
+
"items": {
|
|
1646
|
+
"$ref": "#/definitions/TransitionRule"
|
|
1647
|
+
},
|
|
1648
|
+
"description": "Declarative transitions (see OnFailConfig.transitions)."
|
|
1649
|
+
}
|
|
1650
|
+
},
|
|
1651
|
+
"additionalProperties": false,
|
|
1652
|
+
"description": "Finish routing configuration for forEach checks Runs once after ALL iterations of forEach and ALL dependent checks complete",
|
|
1653
|
+
"patternProperties": {
|
|
1654
|
+
"^x-": {}
|
|
1655
|
+
}
|
|
1656
|
+
},
|
|
767
1657
|
"OutputConfig": {
|
|
768
1658
|
"type": "object",
|
|
769
1659
|
"properties": {
|
|
@@ -796,6 +1686,10 @@
|
|
|
796
1686
|
"PrCommentOutput": {
|
|
797
1687
|
"type": "object",
|
|
798
1688
|
"properties": {
|
|
1689
|
+
"enabled": {
|
|
1690
|
+
"type": "boolean",
|
|
1691
|
+
"description": "Whether PR comments are enabled"
|
|
1692
|
+
},
|
|
799
1693
|
"format": {
|
|
800
1694
|
"$ref": "#/definitions/ConfigOutputFormat",
|
|
801
1695
|
"description": "Format of the output"
|
|
@@ -1155,6 +2049,89 @@
|
|
|
1155
2049
|
"patternProperties": {
|
|
1156
2050
|
"^x-": {}
|
|
1157
2051
|
}
|
|
2052
|
+
},
|
|
2053
|
+
"LimitsConfig": {
|
|
2054
|
+
"type": "object",
|
|
2055
|
+
"properties": {
|
|
2056
|
+
"max_runs_per_check": {
|
|
2057
|
+
"type": "number",
|
|
2058
|
+
"description": "Maximum number of executions per check within a single engine run. Applies to each distinct scope independently for forEach item executions. Set to 0 or negative to disable. Default: 50."
|
|
2059
|
+
},
|
|
2060
|
+
"max_workflow_depth": {
|
|
2061
|
+
"type": "number",
|
|
2062
|
+
"description": "Maximum nesting depth for workflows executed by the state machine engine. Nested workflows are invoked by the workflow provider; this limit prevents accidental infinite recursion. Default: 3."
|
|
2063
|
+
}
|
|
2064
|
+
},
|
|
2065
|
+
"additionalProperties": false,
|
|
2066
|
+
"description": "Global engine limits",
|
|
2067
|
+
"patternProperties": {
|
|
2068
|
+
"^x-": {}
|
|
2069
|
+
}
|
|
2070
|
+
},
|
|
2071
|
+
"WorkspaceConfig": {
|
|
2072
|
+
"type": "object",
|
|
2073
|
+
"properties": {
|
|
2074
|
+
"enabled": {
|
|
2075
|
+
"type": "boolean",
|
|
2076
|
+
"description": "Enable workspace isolation (default: true when config present)"
|
|
2077
|
+
},
|
|
2078
|
+
"base_path": {
|
|
2079
|
+
"type": "string",
|
|
2080
|
+
"description": "Base path for workspaces (default: /tmp/visor-workspaces)"
|
|
2081
|
+
},
|
|
2082
|
+
"cleanup_on_exit": {
|
|
2083
|
+
"type": "boolean",
|
|
2084
|
+
"description": "Clean up workspace on exit (default: true)"
|
|
2085
|
+
}
|
|
2086
|
+
},
|
|
2087
|
+
"additionalProperties": false,
|
|
2088
|
+
"description": "Workspace isolation configuration",
|
|
2089
|
+
"patternProperties": {
|
|
2090
|
+
"^x-": {}
|
|
2091
|
+
}
|
|
2092
|
+
},
|
|
2093
|
+
"SlackConfig": {
|
|
2094
|
+
"type": "object",
|
|
2095
|
+
"properties": {
|
|
2096
|
+
"version": {
|
|
2097
|
+
"type": "string",
|
|
2098
|
+
"description": "Slack API version"
|
|
2099
|
+
},
|
|
2100
|
+
"mentions": {
|
|
2101
|
+
"type": "string",
|
|
2102
|
+
"description": "Mention handling: 'all', 'direct', etc."
|
|
2103
|
+
},
|
|
2104
|
+
"threads": {
|
|
2105
|
+
"type": "string",
|
|
2106
|
+
"description": "Thread handling: 'required', 'optional', etc."
|
|
2107
|
+
},
|
|
2108
|
+
"show_raw_output": {
|
|
2109
|
+
"type": "boolean",
|
|
2110
|
+
"description": "Show raw output in Slack responses"
|
|
2111
|
+
},
|
|
2112
|
+
"telemetry": {
|
|
2113
|
+
"$ref": "#/definitions/SlackTelemetryConfig",
|
|
2114
|
+
"description": "Append telemetry identifiers to Slack replies."
|
|
2115
|
+
}
|
|
2116
|
+
},
|
|
2117
|
+
"additionalProperties": false,
|
|
2118
|
+
"description": "Slack configuration",
|
|
2119
|
+
"patternProperties": {
|
|
2120
|
+
"^x-": {}
|
|
2121
|
+
}
|
|
2122
|
+
},
|
|
2123
|
+
"SlackTelemetryConfig": {
|
|
2124
|
+
"type": "object",
|
|
2125
|
+
"properties": {
|
|
2126
|
+
"enabled": {
|
|
2127
|
+
"type": "boolean",
|
|
2128
|
+
"description": "Enable telemetry ID suffix in Slack messages"
|
|
2129
|
+
}
|
|
2130
|
+
},
|
|
2131
|
+
"additionalProperties": false,
|
|
2132
|
+
"patternProperties": {
|
|
2133
|
+
"^x-": {}
|
|
2134
|
+
}
|
|
1158
2135
|
}
|
|
1159
2136
|
}
|
|
1160
2137
|
}
|