@desplega.ai/agent-swarm 1.165.0 → 1.167.0
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/dist/acp-adapter-zpvy6321.js +34 -0
- package/dist/{actions-jna0b3wm.js → actions-fq2zrwtf.js} +30 -34
- package/dist/{amp-adapter-0eve81pz.js → amp-adapter-5gbk7501.js} +7 -7
- package/dist/{anthropic-messages-hst62ws9.js → anthropic-messages-13yn502s.js} +4 -4
- package/dist/{app-75hm5cfa.js → app-nctetn1e.js} +11 -11
- package/dist/{assistant-yzd51j33.js → assistant-0aq8gjvj.js} +31 -35
- package/dist/{azure-openai-responses-mh8tvf78.js → azure-openai-responses-9st34pfz.js} +5 -5
- package/dist/{boot-reembed-z158xq32.js → boot-reembed-1ze5853n.js} +14 -16
- package/dist/{boot-reembed-2ex2mcsh.js → boot-reembed-fmp5ww69.js} +15 -16
- package/dist/boot-scrub-sweep-cbp8xd4e.js +212 -0
- package/dist/{boot-seeds-2bmnh18p.js → boot-seeds-22tx8a53.js} +13 -12
- package/dist/{claude-adapter-jbj1mycz.js → claude-adapter-0jhgeh1d.js} +25 -25
- package/dist/{claude-managed-adapter-17ggz09t.js → claude-managed-adapter-tzwxy803.js} +5 -5
- package/dist/{claude-managed-setup-ptm1nzm2.js → claude-managed-setup-nrhfx5b0.js} +5 -5
- package/dist/{claude-sdk-session-9re1g7r2.js → claude-sdk-session-wh77rh83.js} +2632 -2614
- package/dist/{cli-zsh093hk.js → cli-014vns2y.js} +63 -1
- package/dist/{cli-qvfk83fy.js → cli-13xwcqvj.js} +2 -2
- package/dist/{cli-8gpbwy09.js → cli-1yrcfa5s.js} +5 -5
- package/dist/{cli-xtgtyafv.js → cli-577bxkf6.js} +212 -451
- package/dist/{cli-ma3zvh39.js → cli-5qkcdv8c.js} +6118 -5874
- package/dist/{cli-cwxhbf43.js → cli-5t5my0h8.js} +85 -2
- package/dist/{cli-zvckv750.js → cli-69egj654.js} +2 -2
- package/dist/{cli-9xb89xca.js → cli-6bpvv8h4.js} +9 -9
- package/dist/{cli-90v942q1.js → cli-6qxmjpem.js} +8 -8
- package/dist/{cli-9866bd07.js → cli-6vfz44sr.js} +1 -1
- package/dist/{cli-32bca7nr.js → cli-7avy4v8w.js} +1 -1
- package/dist/{cli-xb3c6aat.js → cli-7mhy3ths.js} +21 -18
- package/dist/{cli-q38n4bq0.js → cli-95zs84qw.js} +3 -3
- package/dist/cli-a35hzdve.js +33 -0
- package/dist/{cli-x3x0qwky.js → cli-bxqez1p0.js} +51 -23
- package/dist/{cli-prt9emct.js → cli-c2tpw9ck.js} +3 -3
- package/dist/{cli-0n4fasz0.js → cli-c8r99akr.js} +16 -16
- package/dist/{cli-5anb0ev3.js → cli-cexctgn5.js} +89 -26
- package/dist/{cli-bns5c8k9.js → cli-cf2vgn9d.js} +105 -91
- package/dist/{cli-ng97fjq7.js → cli-cmxkbzzs.js} +33 -7
- package/dist/{cli-nexwh8zg.js → cli-g7k7zbcz.js} +12 -5
- package/dist/{cli-mmzwwptd.js → cli-hf5s9pgf.js} +1 -1
- package/dist/{cli-nvvfd8bq.js → cli-jbzbr36n.js} +4091 -3793
- package/dist/{cli-zn2v3t8v.js → cli-jvmtxqtc.js} +27 -15
- package/dist/{cli-pkke6geq.js → cli-km4x66j0.js} +83 -65
- package/dist/cli-kw0jcfje.js +516 -0
- package/dist/{cli-28smfvbn.js → cli-m7vmeepg.js} +32 -19
- package/dist/{cli-hpryr6em.js → cli-mb75wpxf.js} +1 -1
- package/dist/{cli-qdv8kgz7.js → cli-mkdsy1nq.js} +14018 -3333
- package/dist/{cli-b0f70z24.js → cli-mn8qkd8v.js} +1 -1
- package/dist/{cli-420bdgw0.js → cli-mv2520nm.js} +1 -1
- package/dist/{cli-n9ehc28t.js → cli-mxry91sa.js} +31 -10
- package/dist/{cli-wfajtmf7.js → cli-mxvnnv5q.js} +596 -13
- package/dist/cli-nkqjj42q.js +104 -0
- package/dist/{cli-e7t4snpa.js → cli-p8rt8spp.js} +5 -5
- package/dist/{cli-gh5yqzpe.js → cli-pkj1w46r.js} +12 -7
- package/dist/cli-q1vnz8wv.js +96 -0
- package/dist/{cli-fj86xr3c.js → cli-qd97v6z2.js} +2 -2
- package/dist/{cli-ba66wyhy.js → cli-qzmzwegq.js} +60 -20
- package/dist/{cli-5b2fjjzh.js → cli-r7eeddkq.js} +14 -9
- package/dist/{cli-8ssjez7e.js → cli-rhy7z1rp.js} +22 -11
- package/dist/{cli-4mevd1hf.js → cli-s9y81s7j.js} +5 -5
- package/dist/{cli-59jn5twa.js → cli-tc5zec7v.js} +7 -7
- package/dist/{cli-ttbsse3f.js → cli-tmhsxhb8.js} +1 -1
- package/dist/{cli-k6xx3pve.js → cli-tx2zvn23.js} +4 -4
- package/dist/{cli-pjxnr1jn.js → cli-ty4bzkqr.js} +5 -5
- package/dist/{cli-nfygw434.js → cli-v1pwxreq.js} +55 -52
- package/dist/{cli-ftry7975.js → cli-v1w7pbd8.js} +3 -2
- package/dist/{cli-10zmp1p7.js → cli-vr5avem2.js} +27 -32
- package/dist/{cli-bzr0ftht.js → cli-wnb9b2g3.js} +19 -0
- package/dist/cli-wt7ccy4r.js +2654 -0
- package/dist/{cli-50eg13rj.js → cli-wydz3feg.js} +549 -321
- package/dist/{cli-krqm5f11.js → cli-xezn9nkh.js} +16 -13
- package/dist/{cli-8kt0bmgx.js → cli-xf713zz0.js} +2 -2
- package/dist/{cli-x7afk5wm.js → cli-xvc3q9br.js} +1 -1
- package/dist/{cli-9s3h836g.js → cli-xvdgasgy.js} +1 -1
- package/dist/{cli-j0pdrmwg.js → cli-y0kjpfm9.js} +3 -3
- package/dist/{cli-6zcfw0x7.js → cli-y195hv1a.js} +1 -1
- package/dist/{cli-amwhs8h2.js → cli-ykt8f7va.js} +22 -9
- package/dist/{cli-1kzfvd1z.js → cli-ymmc1zxg.js} +15 -11
- package/dist/{cli-xnzrzets.js → cli-ypgba1a8.js} +2 -2
- package/dist/{cli-bdv39kgj.js → cli-z1dqhc9y.js} +31 -20
- package/dist/{cli-fw6vdcq5.js → cli-zp67qg5x.js} +34 -1
- package/dist/{cli-qbksc292.js → cli-zy39d433.js} +2 -0
- package/dist/cli.js +36 -32
- package/dist/{cloudflare-workers-ai-system-one-tt484t61.js → cloudflare-workers-ai-system-one-sta45jf9.js} +7 -5
- package/dist/{codex-adapter-3qnxshje.js → codex-adapter-cgesnjkr.js} +20 -20
- package/dist/{codex-login-brkxhhdg.js → codex-login-g1cyt5zm.js} +2 -2
- package/dist/{codex-session-runner-612wnapp.js → codex-session-runner-8kd7ddhr.js} +20 -20
- package/dist/{commands-2ybfcxkj.js → commands-h6zaaxym.js} +11 -10
- package/dist/{cursor-adapter-p3jgdehv.js → cursor-adapter-v8mm6bp5.js} +7 -7
- package/dist/{db-f4ans0jj.js → db-qg3myn53.js} +13 -10
- package/dist/{devin-adapter-dhzt01ff.js → devin-adapter-bffjj5n4.js} +2 -2
- package/dist/{dispatcher-pk182apd.js → dispatcher-7vnwj9qw.js} +28 -32
- package/dist/{dsh-adapter-7twaeps1.js → dsh-adapter-tz6hfp5r.js} +7 -7
- package/dist/{e2b-y8t3jzyz.js → e2b-nd50eccg.js} +1 -1
- package/dist/{easter-egg-3d-mtpnw06s.js → easter-egg-3d-66zxervv.js} +2 -2
- package/dist/{event-bus-w7ac4n3c.js → event-bus-vnfthafg.js} +2 -2
- package/dist/{execute-s4ccjq3n.js → execute-h4jgevyw.js} +61 -11
- package/dist/{google-generative-ai-d6nphg3q.js → google-generative-ai-b8zxrpax.js} +5 -5
- package/dist/{google-vertex-cpshkref.js → google-vertex-nrdd697t.js} +5 -5
- package/dist/grok-adapter-jdt2dz2s.js +39 -0
- package/dist/{handlers-g2wnr4t9.js → handlers-2qtkpncr.js} +31 -35
- package/dist/{hook-f7jt9vnm.js → hook-51yfcgsv.js} +48 -39
- package/dist/{hook-bbdpnkb4.js → hook-qnbdgwvd.js} +15 -17
- package/dist/{http-w40q4w94.js → http-jsmtag08.js} +536 -231
- package/dist/{index-056j5kzn.js → index-2t9kesn1.js} +13 -12
- package/dist/{index-cj1r9q83.js → index-bt8wkv1w.js} +29 -33
- package/dist/{index-7n70jwbb.js → index-cx1sb9bq.js} +42 -35
- package/dist/{index-9bfssf54.js → index-ekywyv2v.js} +28 -32
- package/dist/{index-fdk1t4d6.js → index-n0rxa4ca.js} +11962 -9900
- package/dist/{index-k8xc083e.js → index-t4g06w93.js} +28 -32
- package/dist/{keepalive-1tj10tf4.js → keepalive-4aezx4bj.js} +16 -12
- package/dist/{lead-st0bg7v4.js → lead-r44bkpm5.js} +52 -56
- package/dist/{llama-cpp-classify-tgj35k8d.js → llama-cpp-classify-6erb7wwv.js} +3 -1
- package/dist/{maintenance-nz71zats.js → maintenance-grz5jrzh.js} +12 -13
- package/dist/{mistral-conversations-8445ddjn.js → mistral-conversations-059y51zt.js} +4 -4
- package/dist/{node-f0ykebbv.js → node-qm9eb6z0.js} +25 -7
- package/dist/{oauth-refresh-sweep-aefzwvvq.js → oauth-refresh-sweep-wm4ctjfj.js} +15 -11
- package/dist/{onboard-kgpr9mbn.js → onboard-v60zgqf0.js} +2 -2
- package/dist/{openai-codex-responses-9ynm88zy.js → openai-codex-responses-jzxkta9b.js} +8 -7
- package/dist/{openai-completions-nhqwjmaw.js → openai-completions-663yncfq.js} +4 -4
- package/dist/openai-decisions-vj9nkpf8.js +162 -0
- package/dist/{openai-responses-xx1c4kgm.js → openai-responses-m3g43rrt.js} +5 -5
- package/dist/{opencode-adapter-0c8e70dk.js → opencode-adapter-yjyqynzf.js} +8 -8
- package/dist/{openrouter-images-8yx3487g.js → openrouter-images-kr60n6b9.js} +1 -1
- package/dist/{otel-impl-x8zp4y5a.js → otel-impl-ghh4dyf8.js} +2 -2
- package/dist/{pi-messages-vxdt8v7j.js → pi-messages-xszk613n.js} +1 -1
- package/dist/{pi-mono-adapter-t280ah5c.js → pi-mono-adapter-0eg8kw2c.js} +69 -52
- package/dist/{pricing-refresh-9e0q7cwk.js → pricing-refresh-mjrqvnvw.js} +12 -11
- package/dist/{rbac-roles-790j3ga8.js → rbac-roles-axv4d74x.js} +11 -10
- package/dist/{rbac-roles-kcp6zge2.js → rbac-roles-fd5tskj9.js} +11 -10
- package/dist/{render-v2-tch4nefj.js → render-v2-k50j33qd.js} +11 -11
- package/dist/{runtime-v2t1r79e.js → runtime-h9ha1mq6.js} +4 -4
- package/dist/{setup-rcm303ns.js → setup-4syh0pd2.js} +2 -2
- package/dist/{typesafe-system-one-datfr82p.js → typesafe-system-one-e988vty7.js} +7 -5
- package/dist/{virtual-modules-wm8mxdxx.js → virtual-modules-ftr9kwe8.js} +11 -11
- package/dist/{work-objects-ctg7t70w.js → work-objects-jcdbg8rr.js} +32 -36
- package/dist/{worker-5dp0xm55.js → worker-x8j8c9sx.js} +52 -56
- package/dist/{x-v3yw66zs.js → x-ma4gnfgy.js} +2 -2
- package/openapi.json +5 -2
- package/package.json +15 -11
- package/src/be/automation-preflight.ts +9 -4
- package/src/be/boot-scrub-sweep.ts +302 -0
- package/src/be/crypto/key-bootstrap.ts +1 -1
- package/src/be/db/approvals.ts +15 -1
- package/src/be/db/codex-oauth-device-flows.ts +40 -0
- package/src/be/db/config-secrets.ts +31 -0
- package/src/be/db/runtime.ts +4 -0
- package/src/be/db/script-runs.ts +15 -0
- package/src/be/db/tasks/write.ts +1 -1
- package/src/be/db-queries/mcp-oauth.ts +5 -0
- package/src/be/db-queries/oauth.ts +77 -0
- package/src/be/db.ts +162 -59
- package/src/be/events.ts +17 -1
- package/src/be/memory/index-content.ts +2 -2
- package/src/be/memory/providers/openai-embedding.ts +7 -2
- package/src/be/memory/providers/sqlite-store.ts +63 -11
- package/src/be/memory/raters/llm-summarizer.ts +7 -2
- package/src/be/memory/types.ts +14 -0
- package/src/be/migrations/201_workflow_replay_columns.sql +10 -0
- package/src/be/migrations/202_codex_oauth_device_flows.sql +24 -0
- package/src/be/modelsdev-cache.json +61 -0
- package/src/be/scripts/db.ts +28 -4
- package/src/be/scripts/source-secrets.ts +37 -0
- package/src/be/scrub-json.ts +32 -0
- package/src/be/sealed-json.ts +59 -0
- package/src/be/secret-registry.ts +131 -0
- package/src/be/seed-pricing.ts +84 -53
- package/src/be/swarm-config-guard.ts +13 -0
- package/src/be/workflow-replay.ts +77 -0
- package/src/commands/provider-credentials.ts +28 -5
- package/src/commands/runner.ts +7 -12
- package/src/heartbeat/heartbeat.ts +91 -19
- package/src/hooks/hook.ts +72 -27
- package/src/http/codex-oauth-device.ts +8 -10
- package/src/http/db-query-bounded.ts +3 -0
- package/src/http/db-query-shared.ts +107 -15
- package/src/http/db-query.ts +10 -2
- package/src/http/index.ts +23 -6
- package/src/http/mcp.ts +5 -0
- package/src/http/onboarding.ts +2 -0
- package/src/http/script-runs.ts +9 -1
- package/src/http/scripts.ts +15 -0
- package/src/http/workflows.ts +3 -2
- package/src/oauth/mcp-wrapper.ts +1 -1
- package/src/providers/acp-adapter.ts +25 -11
- package/src/providers/acp-target-catalog.ts +35 -1
- package/src/providers/acp-targets.ts +78 -7
- package/src/providers/amp-adapter.ts +1 -1
- package/src/providers/claude-adapter.ts +26 -0
- package/src/providers/codex-adapter.ts +30 -3
- package/src/providers/codex-oauth/auth-json.ts +21 -4
- package/src/providers/codex-oauth/types.ts +2 -0
- package/src/providers/cursor-adapter.ts +1 -1
- package/src/providers/dsh-adapter.ts +10 -1
- package/src/providers/grok-adapter.ts +18 -2
- package/src/providers/opencode-adapter.ts +21 -5
- package/src/providers/pi-mono-extension.ts +56 -25
- package/src/providers/pricing-sources.md +2 -0
- package/src/script-workflows/supervisor.ts +11 -2
- package/src/scripts-runtime/eval-harness.ts +2 -12
- package/src/scripts-runtime/executors/quickjs-bundle.ts +152 -0
- package/src/scripts-runtime/executors/quickjs-prelude.ts +285 -0
- package/src/scripts-runtime/executors/quickjs-runner.ts +580 -0
- package/src/scripts-runtime/executors/quickjs-worker.ts +81 -0
- package/src/scripts-runtime/executors/quickjs.ts +196 -0
- package/src/scripts-runtime/executors/registry.ts +2 -0
- package/src/scripts-runtime/executors/sourcemap.ts +79 -0
- package/src/scripts-runtime/script-error-hints.ts +14 -0
- package/src/server.ts +66 -4
- package/src/tests/acp-adapter.test.ts +277 -12
- package/src/tests/boot-scrub-sweep.test.ts +390 -0
- package/src/tests/check-text-columns.test.ts +145 -0
- package/src/tests/ci-unit-test-report.test.ts +73 -0
- package/src/tests/claude-default-route.test.ts +75 -0
- package/src/tests/claude-hook-output.test.ts +233 -0
- package/src/tests/claude-sdk-process.fixture.ts +13 -2
- package/src/tests/codex-adapter-pool-auth-revalidate.test.ts +4 -2
- package/src/tests/codex-adapter.test.ts +166 -26
- package/src/tests/codex-oauth-auth-timestamps.test.ts +76 -0
- package/src/tests/codex-oauth-device.test.ts +23 -37
- package/src/tests/codex-oauth.test.ts +4 -1
- package/src/tests/context-window.test.ts +2 -2
- package/src/tests/credential-check.test.ts +51 -1
- package/src/tests/db-query-denylist.test.ts +202 -0
- package/src/tests/db-task-read-contract.test.ts +1 -0
- package/src/tests/db-task-write-contract.test.ts +1 -0
- package/src/tests/dsh-adapter.test.ts +23 -1
- package/src/tests/enabled-tools.test.ts +269 -0
- package/src/tests/entrypoint-acp-target-binary.test.ts +31 -1
- package/src/tests/entrypoint-codex-oauth-seed.test.ts +12 -0
- package/src/tests/events-scrub.test.ts +88 -0
- package/src/tests/fixtures/secret-corpus.ts +320 -0
- package/src/tests/grok-adapter.test.ts +13 -0
- package/src/tests/haiku-5-5-pricing.test.ts +38 -0
- package/src/tests/heartbeat-checklist.test.ts +158 -1
- package/src/tests/onboarding.test.ts +44 -0
- package/src/tests/opencode-adapter.test.ts +66 -3
- package/src/tests/opencode-plugin.test.ts +37 -0
- package/src/tests/openrouter-attribution-call-sites.test.ts +204 -0
- package/src/tests/openrouter-base-url.test.ts +30 -39
- package/src/tests/pi-mono-extension.test.ts +161 -2
- package/src/tests/pricing-refresh.test.ts +70 -1
- package/src/tests/reasoning-effort.test.ts +3 -1
- package/src/tests/script-connections.test.ts +5 -0
- package/src/tests/script-executor-conformance.test.ts +3 -0
- package/src/tests/script-executor-quickjs.test.ts +442 -0
- package/src/tests/script-executor-registry.test.ts +6 -1
- package/src/tests/script-runs-http.test.ts +88 -1
- package/src/tests/script-runs-scrub.test.ts +275 -0
- package/src/tests/scripts-http.test.ts +82 -1
- package/src/tests/scrubbed-text-12e.test.ts +289 -0
- package/src/tests/sealed-key-guard.test.ts +166 -0
- package/src/tests/secret-canary-sweep.test.ts +958 -0
- package/src/tests/secret-registry.test.ts +355 -0
- package/src/tests/secret-rules.test.ts +230 -0
- package/src/tests/secret-scrubber.test.ts +3 -2
- package/src/tests/telemetry-trigger.test.ts +12 -1
- package/src/tests/workflow-llm.test.ts +14 -0
- package/src/tests/workflow-replay.test.ts +518 -0
- package/src/tests/workflow-scrub.test.ts +242 -0
- package/src/tests/workflow-system-one-decision-providers.test.ts +33 -0
- package/src/tools/db-query.ts +1 -1
- package/src/tools/inject-learning.ts +1 -1
- package/src/tools/request-human-input.ts +7 -2
- package/src/tools/workflows/get-workflow-run.ts +3 -2
- package/src/types.ts +1 -1
- package/src/utils/enabled-tools.ts +27 -0
- package/src/utils/internal-ai/complete-structured.ts +11 -3
- package/src/utils/openrouter-base-url.ts +23 -0
- package/src/utils/secret-rules.generated.ts +2055 -0
- package/src/utils/secret-scrubber.ts +363 -29
- package/src/workflows/engine.ts +39 -4
- package/src/workflows/executors/raw-llm.ts +1 -0
- package/src/workflows/executors/system-one-decision.ts +2 -0
- package/src/workflows/executors/validate.ts +1 -0
- package/src/workflows/executors/workflow-llm.ts +9 -2
- package/src/workflows/recovery.ts +10 -1
- package/src/workflows/resume.ts +62 -3
- package/src/workflows/retry-poller.ts +3 -0
- package/templates/skills/agent-browser/SKILL.md +2 -0
- package/templates/skills/agent-browser/content.md +2 -0
- package/templates/skills/code-quality/content.md +1 -0
- package/templates/skills/heartbeat-runbook/content.md +1 -1
- package/templates/skills/work-on-task/SKILL.md +4 -0
- package/templates/skills/work-on-task/content.md +4 -0
- package/templates/skills/workflow-iterate/content.md +9 -0
- package/dist/acp-adapter-w6zws6me.js +0 -23
- package/dist/boot-scrub-logs-246yn076.js +0 -99
- package/dist/cli-3a4m1aws.js +0 -572
- package/dist/cli-3dpj7atn.js +0 -11
- package/dist/cli-a87b04k8.js +0 -951
- package/dist/cli-cvk6yzw5.js +0 -40
- package/dist/cli-gvcgmx69.js +0 -183
- package/dist/cli-h1spv8v4.js +0 -427
- package/dist/cli-jqt9hrnz.js +0 -168
- package/dist/cli-yhmwmv0g.js +0 -9281
- package/dist/grok-adapter-yt9pab3k.js +0 -29
- package/src/be/boot-scrub-logs.ts +0 -132
- package/dist/{codex-hook-d2rkvf39.js → codex-hook-15dgc4cb.js} +1 -1
|
@@ -2,12 +2,12 @@ import {
|
|
|
2
2
|
COMPOSIO_HTTP_METHODS,
|
|
3
3
|
composioArgsFromParts,
|
|
4
4
|
executeComposioRequest
|
|
5
|
-
} from "./cli-
|
|
5
|
+
} from "./cli-xvc3q9br.js";
|
|
6
6
|
import {
|
|
7
7
|
ampModelError,
|
|
8
8
|
ampPinCatalogError,
|
|
9
9
|
ampPinProviderError
|
|
10
|
-
} from "./cli-
|
|
10
|
+
} from "./cli-mv2520nm.js";
|
|
11
11
|
import {
|
|
12
12
|
LlmRater,
|
|
13
13
|
REFERENCES_SOURCE_MAX_LENGTH,
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
import {
|
|
21
21
|
ensurePricingSeeded,
|
|
22
22
|
ensureRbacSeeded
|
|
23
|
-
} from "./cli-
|
|
23
|
+
} from "./cli-tx2zvn23.js";
|
|
24
24
|
import {
|
|
25
25
|
buildCatalogEntries,
|
|
26
26
|
getCatalogGeneration,
|
|
@@ -30,10 +30,10 @@ import {
|
|
|
30
30
|
requestModelCatalogRefresh,
|
|
31
31
|
startPricingRefreshLoop,
|
|
32
32
|
upsertModelCatalogOverlay
|
|
33
|
-
} from "./cli-
|
|
33
|
+
} from "./cli-p8rt8spp.js";
|
|
34
34
|
import {
|
|
35
35
|
loadModelsDevCache
|
|
36
|
-
} from "./cli-
|
|
36
|
+
} from "./cli-v1pwxreq.js";
|
|
37
37
|
import {
|
|
38
38
|
AppDefinitionSchema,
|
|
39
39
|
AppElementsSchema,
|
|
@@ -64,7 +64,6 @@ import {
|
|
|
64
64
|
decodeAppDefinition,
|
|
65
65
|
definitionNodeIds,
|
|
66
66
|
deleteApp,
|
|
67
|
-
deleteScript,
|
|
68
67
|
disableCredentialBinding,
|
|
69
68
|
extractArgsJsonSchema,
|
|
70
69
|
extractScriptSignature,
|
|
@@ -75,12 +74,9 @@ import {
|
|
|
75
74
|
getOAuthBindingTokenStatus,
|
|
76
75
|
getOAuthProviderConfig,
|
|
77
76
|
getSavedScriptOwnerAgentId,
|
|
78
|
-
getScript,
|
|
79
77
|
getScriptApiConnectionDescriptors,
|
|
80
|
-
getScriptById,
|
|
81
78
|
getScriptConnectionById,
|
|
82
79
|
getScriptMcpConnectionDescriptors,
|
|
83
|
-
getScriptVersion,
|
|
84
80
|
getSuccessors,
|
|
85
81
|
isIso8601Date,
|
|
86
82
|
listApps,
|
|
@@ -95,7 +91,6 @@ import {
|
|
|
95
91
|
resolveSyncRunAs,
|
|
96
92
|
resolveValidationPort,
|
|
97
93
|
resolveWorkflowLlmConfig,
|
|
98
|
-
restoreScratchScriptLastUsedIfUnchanged,
|
|
99
94
|
runSavedScriptAsAgent,
|
|
100
95
|
runScript,
|
|
101
96
|
sandboxSpawnEnv,
|
|
@@ -103,17 +98,15 @@ import {
|
|
|
103
98
|
snapshotCapped,
|
|
104
99
|
systemOneRetryViolations,
|
|
105
100
|
systemOneUnresolvedError,
|
|
106
|
-
touchScratchScriptLastUsed,
|
|
107
101
|
typecheckScript,
|
|
108
102
|
updateApp,
|
|
109
103
|
upgradeAppDefinition,
|
|
110
104
|
upsertCredentialBinding,
|
|
111
|
-
upsertScriptByName,
|
|
112
105
|
upsertScriptConnection,
|
|
113
106
|
validateDefinition,
|
|
114
107
|
validateScriptImports,
|
|
115
108
|
writeBareImportShim
|
|
116
|
-
} from "./cli-
|
|
109
|
+
} from "./cli-577bxkf6.js";
|
|
117
110
|
import {
|
|
118
111
|
getApiKey
|
|
119
112
|
} from "./cli-f14fvzag.js";
|
|
@@ -122,51 +115,18 @@ import {
|
|
|
122
115
|
registerProcessGroup,
|
|
123
116
|
terminateProcessGroup
|
|
124
117
|
} from "./cli-zt3w1cn1.js";
|
|
125
|
-
import {
|
|
126
|
-
AgentFsProvider,
|
|
127
|
-
getFileStorageProvider,
|
|
128
|
-
providerPath
|
|
129
|
-
} from "./cli-mzfth0bp.js";
|
|
130
|
-
import {
|
|
131
|
-
embedScript
|
|
132
|
-
} from "./cli-jqt9hrnz.js";
|
|
133
|
-
import {
|
|
134
|
-
CANDIDATE_SET_MULTIPLIER,
|
|
135
|
-
LONGTERM_ROOT,
|
|
136
|
-
MEMORY_KEY_MAX_LENGTH,
|
|
137
|
-
MEMORY_KEY_PATTERN,
|
|
138
|
-
MEMORY_KEY_PATTERN_MESSAGE,
|
|
139
|
-
computeScore,
|
|
140
|
-
consolidatedKeyMessage,
|
|
141
|
-
getEmbeddingProvider,
|
|
142
|
-
getMemoryStore,
|
|
143
|
-
init_constants as init_constants2,
|
|
144
|
-
init_key_paths,
|
|
145
|
-
init_reranker,
|
|
146
|
-
init_sqlite_store,
|
|
147
|
-
isConsolidatedKey,
|
|
148
|
-
isGraphExpansionEnabled,
|
|
149
|
-
isLongtermKey,
|
|
150
|
-
longtermKeyError,
|
|
151
|
-
rerank,
|
|
152
|
-
resolveStoreKey,
|
|
153
|
-
rowToCandidate
|
|
154
|
-
} from "./cli-yhmwmv0g.js";
|
|
155
118
|
import {
|
|
156
119
|
buildAuthorizationUrl,
|
|
157
|
-
createOAuthApp,
|
|
158
120
|
ensureAuthorizationTokenOrThrow,
|
|
159
121
|
ensureToken,
|
|
160
122
|
ensureTokenOrThrow,
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
upsertOAuthApp
|
|
169
|
-
} from "./cli-a87b04k8.js";
|
|
123
|
+
onAuthorizationRefreshed
|
|
124
|
+
} from "./cli-kw0jcfje.js";
|
|
125
|
+
import {
|
|
126
|
+
AgentFsProvider,
|
|
127
|
+
getFileStorageProvider,
|
|
128
|
+
providerPath
|
|
129
|
+
} from "./cli-mzfth0bp.js";
|
|
170
130
|
import {
|
|
171
131
|
ZodFirstPartyTypeKind,
|
|
172
132
|
objectType
|
|
@@ -196,16 +156,11 @@ import {
|
|
|
196
156
|
taskCitationWarnings,
|
|
197
157
|
upsertTaskCitations,
|
|
198
158
|
withSpan
|
|
199
|
-
} from "./cli-
|
|
200
|
-
import {
|
|
201
|
-
init_task_attachment_links,
|
|
202
|
-
taskAttachmentDisplayUrl,
|
|
203
|
-
taskAttachmentFetchCommand
|
|
204
|
-
} from "./cli-cvk6yzw5.js";
|
|
159
|
+
} from "./cli-c8r99akr.js";
|
|
205
160
|
import {
|
|
206
161
|
getUserGrant,
|
|
207
162
|
init_rbac_roles
|
|
208
|
-
} from "./cli-
|
|
163
|
+
} from "./cli-ypgba1a8.js";
|
|
209
164
|
import {
|
|
210
165
|
can,
|
|
211
166
|
decideAdmission,
|
|
@@ -217,16 +172,23 @@ import {
|
|
|
217
172
|
} from "./cli-rfphkzh5.js";
|
|
218
173
|
import {
|
|
219
174
|
API_DRAIN_MAX_MS_LIMIT,
|
|
175
|
+
CANDIDATE_SET_MULTIPLIER,
|
|
220
176
|
CredentialBindingSchema,
|
|
221
177
|
EXTENSION_AGENT_ROLE,
|
|
222
178
|
KvTypeCollisionError,
|
|
179
|
+
LONGTERM_ROOT,
|
|
223
180
|
MAX_EMPTY_POLLS,
|
|
181
|
+
MEMORY_KEY_MAX_LENGTH,
|
|
182
|
+
MEMORY_KEY_PATTERN,
|
|
183
|
+
MEMORY_KEY_PATTERN_MESSAGE,
|
|
224
184
|
SteeringRequestError,
|
|
185
|
+
WorkflowReplayStateError,
|
|
225
186
|
acceptTask,
|
|
226
187
|
agentContextKey,
|
|
227
188
|
agentmailContextKey,
|
|
228
189
|
azureDevOpsContextKey,
|
|
229
190
|
beginRequestAuthScope,
|
|
191
|
+
breaksJsonValidity,
|
|
230
192
|
buildJiraContextKey,
|
|
231
193
|
buildRoutingAffinityFromAgent,
|
|
232
194
|
cancelApprovalRequestById,
|
|
@@ -238,6 +200,8 @@ import {
|
|
|
238
200
|
claimTask,
|
|
239
201
|
completeTask,
|
|
240
202
|
computeContentHash,
|
|
203
|
+
computeScore,
|
|
204
|
+
consolidatedKeyMessage,
|
|
241
205
|
countKv,
|
|
242
206
|
createAgent,
|
|
243
207
|
createAgentMailInboxMapping,
|
|
@@ -248,6 +212,7 @@ import {
|
|
|
248
212
|
createMcpServer,
|
|
249
213
|
createMetric,
|
|
250
214
|
createMetricVersion,
|
|
215
|
+
createOAuthApp,
|
|
251
216
|
createPage,
|
|
252
217
|
createPageVersion,
|
|
253
218
|
createScheduledTask,
|
|
@@ -265,6 +230,7 @@ import {
|
|
|
265
230
|
deletePage,
|
|
266
231
|
deletePromptTemplate,
|
|
267
232
|
deleteScheduledTask,
|
|
233
|
+
deleteScript,
|
|
268
234
|
deleteService,
|
|
269
235
|
deleteSkill,
|
|
270
236
|
deleteSkillFile,
|
|
@@ -272,6 +238,7 @@ import {
|
|
|
272
238
|
deleteUser,
|
|
273
239
|
deleteWorkflow,
|
|
274
240
|
detachTaskFromWorkflowRunStep,
|
|
241
|
+
embedScript,
|
|
275
242
|
emitMcpServerConnectedTelemetry,
|
|
276
243
|
exports_db,
|
|
277
244
|
extensionAgentAssignmentError,
|
|
@@ -299,6 +266,7 @@ import {
|
|
|
299
266
|
getAppVersion,
|
|
300
267
|
getAppVersions,
|
|
301
268
|
getApprovalRequestById,
|
|
269
|
+
getAuthorizationById,
|
|
302
270
|
getBudget,
|
|
303
271
|
getChannelById,
|
|
304
272
|
getChannelByName,
|
|
@@ -315,6 +283,7 @@ import {
|
|
|
315
283
|
getDependentTasks,
|
|
316
284
|
getDueScheduledTasks,
|
|
317
285
|
getDueWaitStates,
|
|
286
|
+
getEmbeddingProvider,
|
|
318
287
|
getInProgressTasksByContextKey,
|
|
319
288
|
getInboxMessageById,
|
|
320
289
|
getInboxSummary,
|
|
@@ -328,10 +297,15 @@ import {
|
|
|
328
297
|
getLogsByTaskIdChronological,
|
|
329
298
|
getMcpServerById,
|
|
330
299
|
getMcpServerByName,
|
|
300
|
+
getMemoryStore,
|
|
331
301
|
getMentionsForAgent,
|
|
332
302
|
getMetric,
|
|
333
303
|
getMetricBySlug,
|
|
334
304
|
getMetricVersions,
|
|
305
|
+
getOAuthApp,
|
|
306
|
+
getOAuthAppById,
|
|
307
|
+
getOAuthAppIdByProvider,
|
|
308
|
+
getOAuthTokens,
|
|
335
309
|
getOfferedTasksForAgent,
|
|
336
310
|
getPage,
|
|
337
311
|
getPageBySlug,
|
|
@@ -349,6 +323,9 @@ import {
|
|
|
349
323
|
getScheduledTaskById,
|
|
350
324
|
getScheduledTaskByName,
|
|
351
325
|
getScheduledTasks,
|
|
326
|
+
getScript,
|
|
327
|
+
getScriptById,
|
|
328
|
+
getScriptVersion,
|
|
352
329
|
getServiceByAgentAndName,
|
|
353
330
|
getServiceById,
|
|
354
331
|
getSessionLogsByTaskId,
|
|
@@ -389,39 +366,55 @@ import {
|
|
|
389
366
|
incrementEmptyPollCount,
|
|
390
367
|
initDb,
|
|
391
368
|
init_api_drain,
|
|
369
|
+
init_constants as init_constants2,
|
|
392
370
|
init_context_key,
|
|
393
371
|
init_credential_broker,
|
|
394
372
|
init_date_utils,
|
|
395
373
|
init_db,
|
|
374
|
+
init_db1 as init_db2,
|
|
396
375
|
init_db_client,
|
|
376
|
+
init_embeddings,
|
|
377
|
+
init_enabled_tools,
|
|
378
|
+
init_key_paths,
|
|
379
|
+
init_memory,
|
|
397
380
|
init_model_tier_keys,
|
|
381
|
+
init_oauth,
|
|
398
382
|
init_request_auth_context,
|
|
383
|
+
init_reranker,
|
|
384
|
+
init_scrub_json,
|
|
399
385
|
init_slack_routing,
|
|
386
|
+
init_sqlite_store,
|
|
400
387
|
init_steering,
|
|
401
388
|
init_swarm_config_guard,
|
|
402
389
|
init_task_lifecycle_events,
|
|
403
390
|
init_telemetry,
|
|
404
391
|
init_telemetry_identity,
|
|
405
392
|
init_templates1 as init_templates,
|
|
393
|
+
init_workflow_replay,
|
|
406
394
|
insertTaskAttachment,
|
|
407
395
|
installMcpServer,
|
|
408
396
|
installSkill,
|
|
409
397
|
internalConfigKeyError,
|
|
410
398
|
isAgentEligibleForTask,
|
|
399
|
+
isConsolidatedKey,
|
|
411
400
|
isExtensionAgent,
|
|
401
|
+
isGraphExpansionEnabled,
|
|
412
402
|
isInTransaction,
|
|
413
403
|
isInternalConfigKey,
|
|
414
404
|
isLinearTrackerContextKey,
|
|
405
|
+
isLongtermKey,
|
|
415
406
|
isReservedConfigKey,
|
|
416
407
|
isSteeringEnabled,
|
|
417
408
|
kvPrefixUpperBound,
|
|
418
409
|
linearContextKey,
|
|
410
|
+
listAuthorizationsForApp,
|
|
419
411
|
listCancelledApprovalRequestsForRun,
|
|
420
412
|
listKv,
|
|
421
413
|
listMcpServers,
|
|
422
414
|
listSkills,
|
|
423
415
|
listWorkflowRunsPage,
|
|
424
416
|
listWorkflows,
|
|
417
|
+
longtermKeyError,
|
|
425
418
|
markInboxMessageResponded,
|
|
426
419
|
markSteeringHandled,
|
|
427
420
|
markTaskSlackReplySent,
|
|
@@ -432,6 +425,7 @@ import {
|
|
|
432
425
|
onTaskStarted,
|
|
433
426
|
overwriteTerminalTaskResultText,
|
|
434
427
|
pageContextKey,
|
|
428
|
+
parseEnabledTools,
|
|
435
429
|
placeholderForConfigKey,
|
|
436
430
|
postMessage,
|
|
437
431
|
promoteDraftTask,
|
|
@@ -443,14 +437,19 @@ import {
|
|
|
443
437
|
releaseMentionProcessing,
|
|
444
438
|
releaseTask,
|
|
445
439
|
requestSteering,
|
|
440
|
+
rerank,
|
|
446
441
|
reservedKeyError,
|
|
447
442
|
resetEmptyPollCount,
|
|
448
443
|
resolveApprovalRequest,
|
|
449
444
|
resolveSqliteVecExtensionPath,
|
|
445
|
+
resolveStoreKey,
|
|
450
446
|
resolveWaitState,
|
|
447
|
+
restoreScratchScriptLastUsedIfUnchanged,
|
|
448
|
+
rowToCandidate,
|
|
451
449
|
runWithoutRequestAuth,
|
|
452
450
|
scheduleContextKey,
|
|
453
451
|
scheduleOrgDomainRecompute,
|
|
452
|
+
scrubJsonValue,
|
|
454
453
|
searchSkills,
|
|
455
454
|
setBudgetRefusalFollowUpTaskId,
|
|
456
455
|
setRequestAuth,
|
|
@@ -459,6 +458,7 @@ import {
|
|
|
459
458
|
sweepExpiredKvPrefix,
|
|
460
459
|
telemetry,
|
|
461
460
|
tierConfigKey,
|
|
461
|
+
touchScratchScriptLastUsed,
|
|
462
462
|
uninstallMcpServer,
|
|
463
463
|
uninstallSkill,
|
|
464
464
|
updateAgentMaxTasks,
|
|
@@ -480,13 +480,15 @@ import {
|
|
|
480
480
|
updateWorkflowRun,
|
|
481
481
|
updateWorkflowRunStep,
|
|
482
482
|
upsertKv,
|
|
483
|
+
upsertOAuthApp,
|
|
483
484
|
upsertPromptTemplate,
|
|
485
|
+
upsertScriptByName,
|
|
484
486
|
upsertService,
|
|
485
487
|
upsertSkillFiles,
|
|
486
488
|
upsertSwarmConfig,
|
|
487
489
|
validateConfigValue,
|
|
488
490
|
workflowContextKey
|
|
489
|
-
} from "./cli-
|
|
491
|
+
} from "./cli-mkdsy1nq.js";
|
|
490
492
|
import {
|
|
491
493
|
$OpenAPIRegistry,
|
|
492
494
|
$OpenApiGeneratorV31,
|
|
@@ -546,18 +548,32 @@ import {
|
|
|
546
548
|
parseAssetKey,
|
|
547
549
|
parseModelTier,
|
|
548
550
|
splitLegacyModelAlias
|
|
549
|
-
} from "./cli-
|
|
551
|
+
} from "./cli-xvdgasgy.js";
|
|
550
552
|
import {
|
|
551
553
|
generateDefaultClaudeMd,
|
|
552
554
|
generateDefaultIdentityMd,
|
|
553
555
|
generateDefaultSoulMd,
|
|
554
|
-
init_defaults
|
|
555
|
-
|
|
556
|
+
init_defaults,
|
|
557
|
+
init_task_attachment_links,
|
|
558
|
+
taskAttachmentDisplayUrl,
|
|
559
|
+
taskAttachmentFetchCommand
|
|
560
|
+
} from "./cli-mxvnnv5q.js";
|
|
556
561
|
import {
|
|
557
562
|
getSlackConfiguration,
|
|
558
563
|
init_config,
|
|
559
564
|
isSlackConfigured
|
|
560
565
|
} from "./cli-dmtrxqhg.js";
|
|
566
|
+
import {
|
|
567
|
+
deepInterpolate,
|
|
568
|
+
findInterpolationTokens,
|
|
569
|
+
getTemplateDefinition,
|
|
570
|
+
init_registry,
|
|
571
|
+
init_resolver,
|
|
572
|
+
init_template,
|
|
573
|
+
interpolate,
|
|
574
|
+
registerTemplate,
|
|
575
|
+
resolveTemplate
|
|
576
|
+
} from "./cli-5c2j5yvx.js";
|
|
561
577
|
import {
|
|
562
578
|
MAX_PROFILE_FILE_LENGTH,
|
|
563
579
|
getAgentFsDefaultDriveId,
|
|
@@ -570,17 +586,6 @@ import {
|
|
|
570
586
|
init_constants,
|
|
571
587
|
isCombEnabled
|
|
572
588
|
} from "./cli-gd4favx9.js";
|
|
573
|
-
import {
|
|
574
|
-
deepInterpolate,
|
|
575
|
-
findInterpolationTokens,
|
|
576
|
-
getTemplateDefinition,
|
|
577
|
-
init_registry,
|
|
578
|
-
init_resolver,
|
|
579
|
-
init_template,
|
|
580
|
-
interpolate,
|
|
581
|
-
registerTemplate,
|
|
582
|
-
resolveTemplate
|
|
583
|
-
} from "./cli-5c2j5yvx.js";
|
|
584
589
|
import {
|
|
585
590
|
init_env_flag,
|
|
586
591
|
isEnvFlagEnabled,
|
|
@@ -598,7 +603,7 @@ import {
|
|
|
598
603
|
modelFamilyKey,
|
|
599
604
|
parseAlias,
|
|
600
605
|
resolveAlias
|
|
601
|
-
} from "./cli-
|
|
606
|
+
} from "./cli-014vns2y.js";
|
|
602
607
|
import {
|
|
603
608
|
exports_zod,
|
|
604
609
|
init_zod
|
|
@@ -647,11 +652,11 @@ import {
|
|
|
647
652
|
import {
|
|
648
653
|
init_package,
|
|
649
654
|
package_default
|
|
650
|
-
} from "./cli-
|
|
655
|
+
} from "./cli-ymmc1zxg.js";
|
|
651
656
|
import {
|
|
652
657
|
init_event_bus,
|
|
653
658
|
workflowEventBus
|
|
654
|
-
} from "./cli-
|
|
659
|
+
} from "./cli-mb75wpxf.js";
|
|
655
660
|
import {
|
|
656
661
|
init_bus,
|
|
657
662
|
realtimeBus
|
|
@@ -664,7 +669,7 @@ import {
|
|
|
664
669
|
registerVolatileSecret,
|
|
665
670
|
scrubObject,
|
|
666
671
|
scrubSecrets
|
|
667
|
-
} from "./cli-
|
|
672
|
+
} from "./cli-wt7ccy4r.js";
|
|
668
673
|
import {
|
|
669
674
|
__callDispose,
|
|
670
675
|
__commonJS,
|
|
@@ -14387,7 +14392,7 @@ async function notifyAutomationPreflightFailure(preflight) {
|
|
|
14387
14392
|
return;
|
|
14388
14393
|
}
|
|
14389
14394
|
try {
|
|
14390
|
-
const { getSlackApp: getSlackApp2 } = await import("./app-
|
|
14395
|
+
const { getSlackApp: getSlackApp2 } = await import("./app-nctetn1e.js");
|
|
14391
14396
|
const app = getSlackApp2();
|
|
14392
14397
|
if (!app) {
|
|
14393
14398
|
console.warn("[Automation Preflight] Slack not available, cannot send notification");
|
|
@@ -14412,7 +14417,10 @@ Fix setup: ${getAppUrl()}${preflight.fixUrl}`),
|
|
|
14412
14417
|
// src/be/automation-preflight.ts
|
|
14413
14418
|
init_config();
|
|
14414
14419
|
init_env_flag();
|
|
14415
|
-
|
|
14420
|
+
init_secret_scrubber();
|
|
14421
|
+
init_db2();
|
|
14422
|
+
init_oauth();
|
|
14423
|
+
init_scrub_json();
|
|
14416
14424
|
var NEEDS_SETUP_PREFIX = "needs_setup:";
|
|
14417
14425
|
function hasValue(value) {
|
|
14418
14426
|
if (value == null)
|
|
@@ -14623,16 +14631,17 @@ function utcDayBounds(now) {
|
|
|
14623
14631
|
return { start: start.toISOString(), end: new Date(start.getTime() + 86400000).toISOString() };
|
|
14624
14632
|
}
|
|
14625
14633
|
async function recordSchedulePreflightFailure(scheduleId, failureReason, now = new Date) {
|
|
14634
|
+
const message = scrubSecrets(failureReason);
|
|
14626
14635
|
return await getDbClient().transaction(async (tx) => {
|
|
14627
14636
|
const row = await tx.get("SELECT lastErrorAt, lastErrorMessage FROM scheduled_tasks WHERE id = ?", [scheduleId]);
|
|
14628
14637
|
if (!row)
|
|
14629
14638
|
return false;
|
|
14630
|
-
if (row.lastErrorMessage ===
|
|
14639
|
+
if (row.lastErrorMessage === message && row.lastErrorAt?.slice(0, 10) === now.toISOString().slice(0, 10)) {
|
|
14631
14640
|
return false;
|
|
14632
14641
|
}
|
|
14633
14642
|
await tx.run(`UPDATE scheduled_tasks
|
|
14634
14643
|
SET lastErrorAt = ?, lastErrorMessage = ?, lastUpdatedAt = ?
|
|
14635
|
-
WHERE id = ?`, [now.toISOString(),
|
|
14644
|
+
WHERE id = ?`, [now.toISOString(), message, now.toISOString(), scheduleId]);
|
|
14636
14645
|
return true;
|
|
14637
14646
|
});
|
|
14638
14647
|
}
|
|
@@ -14656,8 +14665,8 @@ async function recordWorkflowPreflightFailure(input) {
|
|
|
14656
14665
|
runId,
|
|
14657
14666
|
input.workflowId,
|
|
14658
14667
|
input.triggerType,
|
|
14659
|
-
input.triggerData === undefined ? null :
|
|
14660
|
-
input.failureReason,
|
|
14668
|
+
input.triggerData === undefined ? null : scrubJsonValue(input.triggerData),
|
|
14669
|
+
scrubSecrets(input.failureReason),
|
|
14661
14670
|
input.createdBy ?? null,
|
|
14662
14671
|
timestamp,
|
|
14663
14672
|
timestamp,
|
|
@@ -14668,11 +14677,12 @@ async function recordWorkflowPreflightFailure(input) {
|
|
|
14668
14677
|
}
|
|
14669
14678
|
|
|
14670
14679
|
// src/workflows/engine.ts
|
|
14671
|
-
|
|
14680
|
+
init_db2();
|
|
14681
|
+
init_workflow_replay();
|
|
14672
14682
|
init_telemetry();
|
|
14673
14683
|
|
|
14674
14684
|
// src/workflows/checkpoint.ts
|
|
14675
|
-
|
|
14685
|
+
init_db2();
|
|
14676
14686
|
async function checkpointStep(runId, stepId, nodeId, result, ctx) {
|
|
14677
14687
|
await getDbClient().transaction(async () => {
|
|
14678
14688
|
await updateWorkflowRunStep(stepId, {
|
|
@@ -14759,10 +14769,10 @@ function calculateBackoff(policy, attempt) {
|
|
|
14759
14769
|
}
|
|
14760
14770
|
|
|
14761
14771
|
// src/workflows/completed-step-routing.ts
|
|
14762
|
-
|
|
14772
|
+
init_db2();
|
|
14763
14773
|
|
|
14764
14774
|
// src/workflows/foreach-join.ts
|
|
14765
|
-
|
|
14775
|
+
init_db2();
|
|
14766
14776
|
var FOREACH_TERMINAL_STEP_STATUSES = new Set([
|
|
14767
14777
|
"completed",
|
|
14768
14778
|
"failed",
|
|
@@ -14859,7 +14869,7 @@ async function loadCompletedStepRouting(def, runId, completedNodeIds) {
|
|
|
14859
14869
|
}
|
|
14860
14870
|
|
|
14861
14871
|
// src/workflows/cooldown.ts
|
|
14862
|
-
|
|
14872
|
+
init_db2();
|
|
14863
14873
|
function cooldownToMs(cooldown) {
|
|
14864
14874
|
let ms = 0;
|
|
14865
14875
|
if (cooldown.hours)
|
|
@@ -14889,7 +14899,7 @@ async function shouldSkipCooldown(workflowId, cooldown) {
|
|
|
14889
14899
|
}
|
|
14890
14900
|
|
|
14891
14901
|
// src/workflows/input.ts
|
|
14892
|
-
|
|
14902
|
+
init_db2();
|
|
14893
14903
|
init_secret_scrubber();
|
|
14894
14904
|
async function resolveInputs(input) {
|
|
14895
14905
|
const resolved = {};
|
|
@@ -15297,6 +15307,22 @@ async function startWorkflowExecution(workflow, triggerData, registry, options =
|
|
|
15297
15307
|
}
|
|
15298
15308
|
var activeWalks = new Map;
|
|
15299
15309
|
var executingSteps = new Set;
|
|
15310
|
+
async function failRunOnUnreadableReplay(runId, err, stepId) {
|
|
15311
|
+
if (!(err instanceof WorkflowReplayStateError))
|
|
15312
|
+
return false;
|
|
15313
|
+
const finishedAt = new Date().toISOString();
|
|
15314
|
+
console.error(`[workflow] ${err.message}`);
|
|
15315
|
+
if (stepId) {
|
|
15316
|
+
await updateWorkflowRunStep(stepId, {
|
|
15317
|
+
status: "failed",
|
|
15318
|
+
error: err.message,
|
|
15319
|
+
finishedAt,
|
|
15320
|
+
nextRetryAt: null
|
|
15321
|
+
});
|
|
15322
|
+
}
|
|
15323
|
+
await updateWorkflowRun(runId, { status: "failed", error: err.message, finishedAt });
|
|
15324
|
+
return true;
|
|
15325
|
+
}
|
|
15300
15326
|
function isWorkflowRunActive(runId) {
|
|
15301
15327
|
return activeWalks.has(runId);
|
|
15302
15328
|
}
|
|
@@ -15318,6 +15344,9 @@ async function walkGraph(def, runId, ctx, startNodes, registry, workflowId, secr
|
|
|
15318
15344
|
const release = holdWorkflowRun(runId);
|
|
15319
15345
|
try {
|
|
15320
15346
|
await walkGraphOwned(def, runId, ctx, startNodes, registry, workflowId, secretKeys, options);
|
|
15347
|
+
} catch (err) {
|
|
15348
|
+
if (!await failRunOnUnreadableReplay(runId, err))
|
|
15349
|
+
throw err;
|
|
15321
15350
|
} finally {
|
|
15322
15351
|
release();
|
|
15323
15352
|
}
|
|
@@ -15373,10 +15402,10 @@ async function walkGraphOwned(def, runId, ctx, startNodes, registry, workflowId,
|
|
|
15373
15402
|
});
|
|
15374
15403
|
return;
|
|
15375
15404
|
}
|
|
15376
|
-
const results = await Promise.all(pendingNodes.map((node) => executeStep(def, runId, ctx, node, registry, workflowId, secretKeys, options).catch((
|
|
15377
|
-
|
|
15378
|
-
successors: []
|
|
15379
|
-
})))
|
|
15405
|
+
const results = await Promise.all(pendingNodes.map((node) => executeStep(def, runId, ctx, node, registry, workflowId, secretKeys, options).catch(async (err) => {
|
|
15406
|
+
await failRunOnUnreadableReplay(runId, err);
|
|
15407
|
+
return { outcome: "failed", successors: [] };
|
|
15408
|
+
})));
|
|
15380
15409
|
const nextBatch = new Map;
|
|
15381
15410
|
let hasWaiting = false;
|
|
15382
15411
|
for (let i = 0;i < results.length; i++) {
|
|
@@ -15590,6 +15619,11 @@ async function executeStep(def, runId, ctx, node, registry, workflowId, secretKe
|
|
|
15590
15619
|
}
|
|
15591
15620
|
try {
|
|
15592
15621
|
return await runClaimedStep(def, runId, ctx, node, registry, dedup.existingStep, dedup.stepId, workflowId, options);
|
|
15622
|
+
} catch (err) {
|
|
15623
|
+
if (await failRunOnUnreadableReplay(runId, err, dedup.stepId)) {
|
|
15624
|
+
return { outcome: "failed", successors: [] };
|
|
15625
|
+
}
|
|
15626
|
+
throw err;
|
|
15593
15627
|
} finally {
|
|
15594
15628
|
executingSteps.delete(dedup.stepId);
|
|
15595
15629
|
}
|
|
@@ -15877,7 +15911,7 @@ function timeoutPromise(ms) {
|
|
|
15877
15911
|
init_event_bus();
|
|
15878
15912
|
|
|
15879
15913
|
// src/workflows/recovery.ts
|
|
15880
|
-
|
|
15914
|
+
init_db2();
|
|
15881
15915
|
|
|
15882
15916
|
// src/workflows/approval-resolution.ts
|
|
15883
15917
|
function shapeApprovalResolution(registry, definition, nodeId, parkedOutput, approval) {
|
|
@@ -15901,7 +15935,7 @@ function shapeApprovalResolution(registry, definition, nodeId, parkedOutput, app
|
|
|
15901
15935
|
var FAILED_TASK_OUTPUT_PREFIX = "[FAILED:";
|
|
15902
15936
|
|
|
15903
15937
|
// src/workflows/resume.ts
|
|
15904
|
-
|
|
15938
|
+
init_db2();
|
|
15905
15939
|
init_secret_scrubber();
|
|
15906
15940
|
init_event_bus();
|
|
15907
15941
|
|
|
@@ -16182,7 +16216,7 @@ function computeNextPort(mode, status) {
|
|
|
16182
16216
|
}
|
|
16183
16217
|
|
|
16184
16218
|
// src/workflows/task-step-routing.ts
|
|
16185
|
-
|
|
16219
|
+
init_db2();
|
|
16186
16220
|
init_types();
|
|
16187
16221
|
async function isTaskBoundToStep(taskId, stepId) {
|
|
16188
16222
|
const task = await getTaskById(taskId);
|
|
@@ -16336,7 +16370,18 @@ function setupWorkflowResumeListener(eventBus, registry) {
|
|
|
16336
16370
|
eventBus.off("approval.resolved", onApprovalResolved);
|
|
16337
16371
|
};
|
|
16338
16372
|
}
|
|
16373
|
+
async function failClosedOnUnreadableReplay(runId, stepId, resume) {
|
|
16374
|
+
try {
|
|
16375
|
+
await resume();
|
|
16376
|
+
} catch (err) {
|
|
16377
|
+
if (!await failRunOnUnreadableReplay(runId, err, stepId))
|
|
16378
|
+
throw err;
|
|
16379
|
+
}
|
|
16380
|
+
}
|
|
16339
16381
|
async function resumeFromTaskCompletion(event, registry) {
|
|
16382
|
+
await failClosedOnUnreadableReplay(event.workflowRunId, event.workflowRunStepId, () => resumeFromTaskCompletionUnguarded(event, registry));
|
|
16383
|
+
}
|
|
16384
|
+
async function resumeFromTaskCompletionUnguarded(event, registry) {
|
|
16340
16385
|
const run = await getWorkflowRun(event.workflowRunId);
|
|
16341
16386
|
if (!run || run.status !== "waiting" && run.status !== "running")
|
|
16342
16387
|
return;
|
|
@@ -16391,6 +16436,9 @@ async function finalizeOrWait(runId) {
|
|
|
16391
16436
|
});
|
|
16392
16437
|
}
|
|
16393
16438
|
async function handleTaskFailure(event, reason, registry, options) {
|
|
16439
|
+
await failClosedOnUnreadableReplay(event.workflowRunId, event.workflowRunStepId, () => handleTaskFailureUnguarded(event, reason, registry, options));
|
|
16440
|
+
}
|
|
16441
|
+
async function handleTaskFailureUnguarded(event, reason, registry, options) {
|
|
16394
16442
|
const run = await getWorkflowRun(event.workflowRunId);
|
|
16395
16443
|
if (!run || run.status !== "waiting" && run.status !== "running")
|
|
16396
16444
|
return;
|
|
@@ -16533,6 +16581,9 @@ async function cancelWorkflowRun(runId, reason) {
|
|
|
16533
16581
|
await postApprovalCancellationUpdates(cancelledApprovals, applied ? cancelReason : latestRun?.error ?? cancelReason);
|
|
16534
16582
|
}
|
|
16535
16583
|
async function resumeFromApprovalResolution(event, registry) {
|
|
16584
|
+
await failClosedOnUnreadableReplay(event.workflowRunId, event.workflowRunStepId, () => resumeFromApprovalResolutionUnguarded(event, registry));
|
|
16585
|
+
}
|
|
16586
|
+
async function resumeFromApprovalResolutionUnguarded(event, registry) {
|
|
16536
16587
|
const run = await getWorkflowRun(event.workflowRunId);
|
|
16537
16588
|
if (!run || run.status !== "waiting" && run.status !== "running")
|
|
16538
16589
|
return;
|
|
@@ -16542,11 +16593,11 @@ async function resumeFromApprovalResolution(event, registry) {
|
|
|
16542
16593
|
const workflow = await getWorkflow(run.workflowId);
|
|
16543
16594
|
if (!workflow)
|
|
16544
16595
|
return;
|
|
16545
|
-
const ctx = run.context ?? {};
|
|
16546
16596
|
if (event.status === "cancelled") {
|
|
16547
16597
|
console.warn(`[workflows] approval ${event.requestId} is cancelled; step ${event.workflowRunStepId} stays waiting for the run cancel path`);
|
|
16548
16598
|
return;
|
|
16549
16599
|
}
|
|
16600
|
+
const ctx = run.context ?? {};
|
|
16550
16601
|
const { output: stepOutput, nextPort } = shapeApprovalResolution(registry, workflow.definition, step.nodeId, step.output, { requestId: event.requestId, status: event.status, responses: event.responses });
|
|
16551
16602
|
const routing = await checkpointPortStepAndResolveSuccessors(workflow.definition, run.id, step.id, step.nodeId, stepOutput, nextPort, ctx);
|
|
16552
16603
|
if (!routing.claimed)
|
|
@@ -16565,6 +16616,9 @@ async function resumeWaitState(waitId, status, payload, registry) {
|
|
|
16565
16616
|
if (!result.updated || !result.row)
|
|
16566
16617
|
return;
|
|
16567
16618
|
const waitRow = result.row;
|
|
16619
|
+
await failClosedOnUnreadableReplay(waitRow.workflowRunId, waitRow.workflowRunStepId, () => resumeClaimedWait(waitRow, status, cappedPayload, registry));
|
|
16620
|
+
}
|
|
16621
|
+
async function resumeClaimedWait(waitRow, status, cappedPayload, registry) {
|
|
16568
16622
|
const run = await getWorkflowRun(waitRow.workflowRunId);
|
|
16569
16623
|
if (!run || run.status !== "waiting" && run.status !== "running")
|
|
16570
16624
|
return;
|
|
@@ -16749,6 +16803,8 @@ async function recoverRunningRuns(registry) {
|
|
|
16749
16803
|
}
|
|
16750
16804
|
recovered++;
|
|
16751
16805
|
} catch (err) {
|
|
16806
|
+
if (await failRunOnUnreadableReplay(runId, err))
|
|
16807
|
+
continue;
|
|
16752
16808
|
console.error(`[workflows] Failed to recover running run ${runId}:`, err);
|
|
16753
16809
|
}
|
|
16754
16810
|
}
|
|
@@ -16834,6 +16890,8 @@ async function recoverWaitingRuns(registry) {
|
|
|
16834
16890
|
}
|
|
16835
16891
|
recovered++;
|
|
16836
16892
|
} catch (err) {
|
|
16893
|
+
if (await failRunOnUnreadableReplay(stuck.runId, err))
|
|
16894
|
+
continue;
|
|
16837
16895
|
console.error(`[workflows] Failed to recover waiting run ${stuck.runId}:`, err);
|
|
16838
16896
|
}
|
|
16839
16897
|
}
|
|
@@ -16888,6 +16946,8 @@ async function recoverApprovalWaitingRuns(registry) {
|
|
|
16888
16946
|
}
|
|
16889
16947
|
recovered++;
|
|
16890
16948
|
} catch (err) {
|
|
16949
|
+
if (await failRunOnUnreadableReplay(stuck.runId, err))
|
|
16950
|
+
continue;
|
|
16891
16951
|
console.error(`[workflows] Failed to recover approval-waiting run ${stuck.runId}:`, err);
|
|
16892
16952
|
}
|
|
16893
16953
|
}
|
|
@@ -16911,6 +16971,8 @@ async function recoverWaitStates(registry) {
|
|
|
16911
16971
|
await resumeWaitState(stuck.waitId, resumeStatus, payload, registry);
|
|
16912
16972
|
recovered++;
|
|
16913
16973
|
} catch (err) {
|
|
16974
|
+
if (await failRunOnUnreadableReplay(stuck.runId, err))
|
|
16975
|
+
continue;
|
|
16914
16976
|
console.error(`[workflows] Failed to recover wait-state ${stuck.waitId}:`, err);
|
|
16915
16977
|
}
|
|
16916
16978
|
}
|
|
@@ -16928,7 +16990,7 @@ async function getRunIdsByStatus(status) {
|
|
|
16928
16990
|
return rows.map((r) => r.id);
|
|
16929
16991
|
}
|
|
16930
16992
|
// src/workflows/retry-poller.ts
|
|
16931
|
-
|
|
16993
|
+
init_db2();
|
|
16932
16994
|
var pollerTimeout = null;
|
|
16933
16995
|
function startRetryPoller(registry, intervalMs = 5000) {
|
|
16934
16996
|
if (pollerTimeout !== null)
|
|
@@ -17017,11 +17079,15 @@ function startRetryPoller(registry, intervalMs = 5000) {
|
|
|
17017
17079
|
}
|
|
17018
17080
|
}
|
|
17019
17081
|
} catch (err) {
|
|
17082
|
+
if (await failRunOnUnreadableReplay(run.id, err, step.id))
|
|
17083
|
+
continue;
|
|
17020
17084
|
const errorMsg = err instanceof Error ? err.message : String(err);
|
|
17021
17085
|
const retryPolicy = node.retry || executor.retryPolicy;
|
|
17022
17086
|
await checkpointStepFailure(run.id, step.id, errorMsg, step.retryCount, retryPolicy);
|
|
17023
17087
|
}
|
|
17024
17088
|
} catch (err) {
|
|
17089
|
+
if (await failRunOnUnreadableReplay(step.runId, err, step.id))
|
|
17090
|
+
continue;
|
|
17025
17091
|
console.error(`[workflows] Retry failed for step ${step.id}:`, err);
|
|
17026
17092
|
} finally {
|
|
17027
17093
|
release?.();
|
|
@@ -17129,7 +17195,7 @@ function replaceStringPlaceholders(template, variables) {
|
|
|
17129
17195
|
});
|
|
17130
17196
|
}
|
|
17131
17197
|
// src/workflows/triggers.ts
|
|
17132
|
-
|
|
17198
|
+
init_db2();
|
|
17133
17199
|
import crypto2 from "node:crypto";
|
|
17134
17200
|
var DEFAULT_HMAC_HEADER = "X-Hub-Signature-256";
|
|
17135
17201
|
var FALLBACK_HMAC_HEADERS = ["x-hub-signature-256", "x-signature", "x-webhook-signature"];
|
|
@@ -17397,7 +17463,7 @@ class WebhookError extends Error {
|
|
|
17397
17463
|
}
|
|
17398
17464
|
}
|
|
17399
17465
|
// src/workflows/version.ts
|
|
17400
|
-
|
|
17466
|
+
init_db2();
|
|
17401
17467
|
async function snapshotWorkflow(workflowId, changedByAgentId) {
|
|
17402
17468
|
const workflow = await getWorkflow(workflowId);
|
|
17403
17469
|
if (!workflow) {
|
|
@@ -17443,7 +17509,7 @@ async function snapshotAndUpdateWorkflow(workflowId, updates, opts = {}) {
|
|
|
17443
17509
|
});
|
|
17444
17510
|
}
|
|
17445
17511
|
// src/workflows/wait-poller.ts
|
|
17446
|
-
|
|
17512
|
+
init_db2();
|
|
17447
17513
|
var pollerTimeout2 = null;
|
|
17448
17514
|
function startWaitPoller(registry, intervalMs = 5000) {
|
|
17449
17515
|
if (pollerTimeout2 !== null)
|
|
@@ -17474,7 +17540,7 @@ function stopWaitPoller() {
|
|
|
17474
17540
|
}
|
|
17475
17541
|
|
|
17476
17542
|
// src/workflows/index.ts
|
|
17477
|
-
|
|
17543
|
+
init_db2();
|
|
17478
17544
|
init_secret_scrubber();
|
|
17479
17545
|
init_event_bus();
|
|
17480
17546
|
|
|
@@ -17486,18 +17552,18 @@ init_zod();
|
|
|
17486
17552
|
|
|
17487
17553
|
// src/be/model-validation.ts
|
|
17488
17554
|
init_src();
|
|
17489
|
-
|
|
17555
|
+
init_db2();
|
|
17490
17556
|
|
|
17491
17557
|
// src/be/model-tier-resolution.ts
|
|
17492
17558
|
init_src();
|
|
17493
17559
|
init_zod();
|
|
17494
17560
|
init_types();
|
|
17495
|
-
|
|
17561
|
+
init_db2();
|
|
17496
17562
|
|
|
17497
17563
|
// src/be/harness-model-support.ts
|
|
17498
17564
|
init_src();
|
|
17499
17565
|
init_secret_scrubber();
|
|
17500
|
-
|
|
17566
|
+
init_db2();
|
|
17501
17567
|
var CLI_PINNED_HARNESSES = new Set(["claude", "codex"]);
|
|
17502
17568
|
async function getHarnessModelSupport(harness, cliVersion, modelId) {
|
|
17503
17569
|
const row = await getDbClient().get("SELECT status FROM harness_model_support WHERE harness = ? AND cliVersion = ? AND modelId = ?", [harness, cliVersion, modelId]);
|
|
@@ -18005,19 +18071,20 @@ ${issues.join(`
|
|
|
18005
18071
|
|
|
18006
18072
|
// src/scheduler/scheduler.ts
|
|
18007
18073
|
var import_cron_parser = __toESM(require_dist2(), 1);
|
|
18074
|
+
init_db2();
|
|
18008
18075
|
init_db();
|
|
18009
18076
|
init_telemetry();
|
|
18010
18077
|
|
|
18011
18078
|
// src/scheduler/deferred-task-waits.ts
|
|
18012
|
-
|
|
18079
|
+
init_db2();
|
|
18013
18080
|
init_event_bus();
|
|
18014
18081
|
|
|
18015
18082
|
// src/scheduler/schedule-task.ts
|
|
18016
|
-
|
|
18083
|
+
init_db2();
|
|
18017
18084
|
init_context_key();
|
|
18018
18085
|
|
|
18019
18086
|
// src/tasks/sibling-awareness.ts
|
|
18020
|
-
|
|
18087
|
+
init_db2();
|
|
18021
18088
|
|
|
18022
18089
|
// src/tasks/errors.ts
|
|
18023
18090
|
class TaskCreationBlockedError extends Error {
|
|
@@ -18777,7 +18844,9 @@ async function runScheduleNow(scheduleId) {
|
|
|
18777
18844
|
}
|
|
18778
18845
|
|
|
18779
18846
|
// src/be/extensions/assets.ts
|
|
18847
|
+
init_db2();
|
|
18780
18848
|
init_db();
|
|
18849
|
+
init_embeddings();
|
|
18781
18850
|
|
|
18782
18851
|
// src/be/skill-parser.ts
|
|
18783
18852
|
function parseSkillContent(content) {
|
|
@@ -19436,7 +19505,7 @@ async function removeAssets(extensionId) {
|
|
|
19436
19505
|
}
|
|
19437
19506
|
|
|
19438
19507
|
// src/be/extensions/db.ts
|
|
19439
|
-
|
|
19508
|
+
init_db2();
|
|
19440
19509
|
|
|
19441
19510
|
class ExtensionOwnershipError extends Error {
|
|
19442
19511
|
}
|
|
@@ -19904,17 +19973,34 @@ function normalizeObjectSchema(schema) {
|
|
|
19904
19973
|
}
|
|
19905
19974
|
return;
|
|
19906
19975
|
}
|
|
19976
|
+
function getDotPath(path) {
|
|
19977
|
+
if (path.length === 0) {
|
|
19978
|
+
return "object root";
|
|
19979
|
+
}
|
|
19980
|
+
return path.reduce((acc, seg, index) => {
|
|
19981
|
+
if (index === 0) {
|
|
19982
|
+
return String(seg);
|
|
19983
|
+
}
|
|
19984
|
+
if (typeof seg === "number") {
|
|
19985
|
+
return `${acc}[${seg}]`;
|
|
19986
|
+
}
|
|
19987
|
+
return `${acc}.${seg}`;
|
|
19988
|
+
}, "");
|
|
19989
|
+
}
|
|
19907
19990
|
function getParseErrorMessage(error) {
|
|
19908
19991
|
if (error && typeof error === "object") {
|
|
19992
|
+
if ("issues" in error && Array.isArray(error.issues) && error.issues.length > 0) {
|
|
19993
|
+
return error.issues.map((i) => {
|
|
19994
|
+
if (!i.path?.length) {
|
|
19995
|
+
return i.message;
|
|
19996
|
+
}
|
|
19997
|
+
return `${i.message} at ${getDotPath(i.path)}`;
|
|
19998
|
+
}).join(`
|
|
19999
|
+
`);
|
|
20000
|
+
}
|
|
19909
20001
|
if ("message" in error && typeof error.message === "string") {
|
|
19910
20002
|
return error.message;
|
|
19911
20003
|
}
|
|
19912
|
-
if ("issues" in error && Array.isArray(error.issues) && error.issues.length > 0) {
|
|
19913
|
-
const firstIssue = error.issues[0];
|
|
19914
|
-
if (firstIssue && typeof firstIssue === "object" && "message" in firstIssue) {
|
|
19915
|
-
return String(firstIssue.message);
|
|
19916
|
-
}
|
|
19917
|
-
}
|
|
19918
20004
|
try {
|
|
19919
20005
|
return JSON.stringify(error);
|
|
19920
20006
|
} catch {
|
|
@@ -23139,16 +23225,7 @@ class Server extends Protocol {
|
|
|
23139
23225
|
if (!methodSchema) {
|
|
23140
23226
|
throw new Error("Schema is missing a method literal");
|
|
23141
23227
|
}
|
|
23142
|
-
|
|
23143
|
-
if (isZ4Schema(methodSchema)) {
|
|
23144
|
-
const v4Schema = methodSchema;
|
|
23145
|
-
const v4Def = v4Schema._zod?.def;
|
|
23146
|
-
methodValue = v4Def?.value ?? v4Schema.value;
|
|
23147
|
-
} else {
|
|
23148
|
-
const v3Schema = methodSchema;
|
|
23149
|
-
const legacyDef = v3Schema._def;
|
|
23150
|
-
methodValue = legacyDef?.value ?? v3Schema.value;
|
|
23151
|
-
}
|
|
23228
|
+
const methodValue = getLiteralValue(methodSchema);
|
|
23152
23229
|
if (typeof methodValue !== "string") {
|
|
23153
23230
|
throw new Error("Schema method literal must be a string");
|
|
23154
23231
|
}
|
|
@@ -24241,7 +24318,7 @@ var EMPTY_COMPLETION_RESULT = {
|
|
|
24241
24318
|
|
|
24242
24319
|
// src/server.ts
|
|
24243
24320
|
init_package();
|
|
24244
|
-
|
|
24321
|
+
init_db2();
|
|
24245
24322
|
init_steering();
|
|
24246
24323
|
|
|
24247
24324
|
// src/github/task-reactions.ts
|
|
@@ -24593,11 +24670,11 @@ function verifyAgentMailWebhook(rawBody, headers) {
|
|
|
24593
24670
|
}
|
|
24594
24671
|
}
|
|
24595
24672
|
// src/agentmail/handlers.ts
|
|
24596
|
-
|
|
24673
|
+
init_db2();
|
|
24597
24674
|
|
|
24598
24675
|
// src/be/users.ts
|
|
24599
24676
|
init_telemetry_identity();
|
|
24600
|
-
|
|
24677
|
+
init_db2();
|
|
24601
24678
|
import { createHash, randomBytes, randomUUID } from "node:crypto";
|
|
24602
24679
|
function actorString(actor) {
|
|
24603
24680
|
return `${actor.kind}:${actor.id}`;
|
|
@@ -25514,7 +25591,7 @@ async function likeAzureDevOpsComment(ref, threadId, commentId) {
|
|
|
25514
25591
|
}
|
|
25515
25592
|
}
|
|
25516
25593
|
// src/azure-devops/handlers.ts
|
|
25517
|
-
|
|
25594
|
+
init_db2();
|
|
25518
25595
|
init_resolver();
|
|
25519
25596
|
init_context_key();
|
|
25520
25597
|
|
|
@@ -25908,10 +25985,10 @@ _Note: There's an active task (${existingTask.id}) for this PR #${pr.pullRequest
|
|
|
25908
25985
|
return { created: true, taskId: task.id };
|
|
25909
25986
|
}
|
|
25910
25987
|
// src/http/core.ts
|
|
25911
|
-
|
|
25988
|
+
init_db2();
|
|
25912
25989
|
|
|
25913
25990
|
// src/be/multi-runtime.ts
|
|
25914
|
-
|
|
25991
|
+
init_db2();
|
|
25915
25992
|
var AGENT_MAX_TASKS_CONFIG_KEY = "AGENT_MAX_TASKS";
|
|
25916
25993
|
function parseAgentMaxTasksValue(raw) {
|
|
25917
25994
|
const str = raw.trim();
|
|
@@ -26094,7 +26171,7 @@ async function expireStaleRuntimeInstances() {
|
|
|
26094
26171
|
|
|
26095
26172
|
// src/be/rbac-audit.ts
|
|
26096
26173
|
init_env_flag();
|
|
26097
|
-
|
|
26174
|
+
init_db2();
|
|
26098
26175
|
import { AsyncLocalStorage } from "node:async_hooks";
|
|
26099
26176
|
var FLUSH_INTERVAL_MS = 2000;
|
|
26100
26177
|
var FLUSH_MAX_ROWS = 200;
|
|
@@ -26279,7 +26356,7 @@ function stopAuditGc() {
|
|
|
26279
26356
|
// src/http/core.ts
|
|
26280
26357
|
init_rbac_roles();
|
|
26281
26358
|
// src/github/handlers.ts
|
|
26282
|
-
|
|
26359
|
+
init_db2();
|
|
26283
26360
|
init_resolver();
|
|
26284
26361
|
init_context_key();
|
|
26285
26362
|
|
|
@@ -27629,7 +27706,7 @@ function resetGitLab() {
|
|
|
27629
27706
|
gitlabUrl = "https://gitlab.com";
|
|
27630
27707
|
}
|
|
27631
27708
|
// src/gitlab/handlers.ts
|
|
27632
|
-
|
|
27709
|
+
init_db2();
|
|
27633
27710
|
init_resolver();
|
|
27634
27711
|
init_context_key();
|
|
27635
27712
|
|
|
@@ -28232,12 +28309,13 @@ function extractMentions(adf) {
|
|
|
28232
28309
|
return ids;
|
|
28233
28310
|
}
|
|
28234
28311
|
// src/jira/app.ts
|
|
28312
|
+
init_oauth();
|
|
28235
28313
|
init_constants();
|
|
28236
28314
|
init_env_flag();
|
|
28237
28315
|
|
|
28238
28316
|
// src/be/db-queries/tracker.ts
|
|
28239
28317
|
init_date_utils();
|
|
28240
|
-
|
|
28318
|
+
init_db2();
|
|
28241
28319
|
function normalizeTrackerSync(row) {
|
|
28242
28320
|
return {
|
|
28243
28321
|
...row,
|
|
@@ -28381,8 +28459,12 @@ async function createTrackerAgentMapping(data) {
|
|
|
28381
28459
|
init_secret_scrubber();
|
|
28382
28460
|
init_event_bus();
|
|
28383
28461
|
|
|
28462
|
+
// src/jira/client.ts
|
|
28463
|
+
init_oauth();
|
|
28464
|
+
|
|
28384
28465
|
// src/jira/metadata.ts
|
|
28385
|
-
|
|
28466
|
+
init_db2();
|
|
28467
|
+
init_oauth();
|
|
28386
28468
|
async function getJiraMetadata() {
|
|
28387
28469
|
const app = await getOAuthApp("jira");
|
|
28388
28470
|
if (!app)
|
|
@@ -28675,10 +28757,11 @@ Original issue: {{issue_key}} — {{issue_summary}}`,
|
|
|
28675
28757
|
});
|
|
28676
28758
|
|
|
28677
28759
|
// src/jira/sync.ts
|
|
28678
|
-
|
|
28760
|
+
init_db2();
|
|
28761
|
+
init_oauth();
|
|
28679
28762
|
|
|
28680
28763
|
// src/be/unmapped-identities.ts
|
|
28681
|
-
|
|
28764
|
+
init_db2();
|
|
28682
28765
|
var TTL_MS = 30 * 24 * 60 * 60 * 1000;
|
|
28683
28766
|
function namespace(kind) {
|
|
28684
28767
|
return `integration:unmapped:${kind}`;
|
|
@@ -29097,7 +29180,7 @@ async function notifySlack(text) {
|
|
|
29097
29180
|
return;
|
|
29098
29181
|
}
|
|
29099
29182
|
try {
|
|
29100
|
-
const { getSlackApp: getSlackApp2 } = await import("./app-
|
|
29183
|
+
const { getSlackApp: getSlackApp2 } = await import("./app-nctetn1e.js");
|
|
29101
29184
|
const app = getSlackApp2();
|
|
29102
29185
|
if (!app) {
|
|
29103
29186
|
console.warn("[Jira webhook keepalive] Slack not available, cannot send notification");
|
|
@@ -29168,7 +29251,7 @@ async function deleteJiraWebhook(webhookId) {
|
|
|
29168
29251
|
console.log(`[Jira webhook keepalive] Deleted webhook id=${webhookId}`);
|
|
29169
29252
|
}
|
|
29170
29253
|
async function overwriteWebhookIds(next) {
|
|
29171
|
-
const { getDbClient: getDbClient2 } = await import("./db-
|
|
29254
|
+
const { getDbClient: getDbClient2 } = await import("./db-qg3myn53.js");
|
|
29172
29255
|
await getDbClient2().transaction(async (tx) => {
|
|
29173
29256
|
const row = await tx.get("SELECT metadata FROM oauth_apps WHERE provider = 'jira'");
|
|
29174
29257
|
if (!row) {
|
|
@@ -29408,6 +29491,7 @@ async function dispatchAndRecord(event, body, deliveryId) {
|
|
|
29408
29491
|
}
|
|
29409
29492
|
}
|
|
29410
29493
|
// src/linear/app.ts
|
|
29494
|
+
init_oauth();
|
|
29411
29495
|
init_constants();
|
|
29412
29496
|
init_env_flag();
|
|
29413
29497
|
|
|
@@ -100886,6 +100970,7 @@ var LinearClient = class extends LinearSdk {
|
|
|
100886
100970
|
};
|
|
100887
100971
|
|
|
100888
100972
|
// src/linear/client.ts
|
|
100973
|
+
init_oauth();
|
|
100889
100974
|
var linearClient = null;
|
|
100890
100975
|
async function getLinearClient() {
|
|
100891
100976
|
const tokens = await getOAuthTokens("linear");
|
|
@@ -100905,7 +100990,8 @@ init_secret_scrubber();
|
|
|
100905
100990
|
init_event_bus();
|
|
100906
100991
|
|
|
100907
100992
|
// src/linear/sync.ts
|
|
100908
|
-
|
|
100993
|
+
init_db2();
|
|
100994
|
+
init_oauth();
|
|
100909
100995
|
init_resolver();
|
|
100910
100996
|
init_context_key();
|
|
100911
100997
|
init_types();
|
|
@@ -102055,7 +102141,7 @@ async function getFileInfo(client, fileId) {
|
|
|
102055
102141
|
}
|
|
102056
102142
|
}
|
|
102057
102143
|
// src/slack/router.ts
|
|
102058
|
-
|
|
102144
|
+
init_db2();
|
|
102059
102145
|
init_env_flag();
|
|
102060
102146
|
function hasOtherUserMention(text, botUserId) {
|
|
102061
102147
|
const mentions = text.match(/<@([A-Z0-9]+)>/g) ?? [];
|
|
@@ -102120,7 +102206,7 @@ init_request_auth_context();
|
|
|
102120
102206
|
init_secret_scrubber();
|
|
102121
102207
|
|
|
102122
102208
|
// src/http/auth.ts
|
|
102123
|
-
|
|
102209
|
+
init_db2();
|
|
102124
102210
|
|
|
102125
102211
|
// src/utils/page-session.ts
|
|
102126
102212
|
import { createHmac, randomBytes as randomBytes2, timingSafeEqual as timingSafeEqual2 } from "node:crypto";
|
|
@@ -102366,7 +102452,7 @@ init_zod();
|
|
|
102366
102452
|
init_secret_scrubber();
|
|
102367
102453
|
|
|
102368
102454
|
// src/http/utils.ts
|
|
102369
|
-
|
|
102455
|
+
init_db2();
|
|
102370
102456
|
init_env_flag();
|
|
102371
102457
|
init_secret_scrubber();
|
|
102372
102458
|
var DEFAULT_ALLOWED_ORIGINS = [
|
|
@@ -102970,7 +103056,7 @@ async function reloadGlobalConfigsAndIntegrations() {
|
|
|
102970
103056
|
return runWithoutRequestAuth(() => reloadGlobalConfigsAndIntegrationsInner());
|
|
102971
103057
|
}
|
|
102972
103058
|
async function reloadGlobalConfigsAndIntegrationsInner() {
|
|
102973
|
-
const { getEmbeddingProvider: getEmbeddingProvider2, resetEmbeddingProvider } = await import("./index-
|
|
103059
|
+
const { getEmbeddingProvider: getEmbeddingProvider2, resetEmbeddingProvider } = await import("./index-2t9kesn1.js");
|
|
102974
103060
|
const wasEmbeddingsConfigured = getEmbeddingProvider2().isConfigured();
|
|
102975
103061
|
const updated = await loadGlobalConfigsIntoEnv(true);
|
|
102976
103062
|
await stopSlackApp();
|
|
@@ -102983,10 +103069,10 @@ async function reloadGlobalConfigsAndIntegrationsInner() {
|
|
|
102983
103069
|
integrations.push("embeddings");
|
|
102984
103070
|
}
|
|
102985
103071
|
if (!wasEmbeddingsConfigured && isEmbeddingsConfigured) {
|
|
102986
|
-
import("./boot-reembed-
|
|
103072
|
+
import("./boot-reembed-fmp5ww69.js").then(({ runBootReembed }) => runBootReembed()).catch((err) => {
|
|
102987
103073
|
console.error("[config-reload] memory backfill failed (non-fatal):", err);
|
|
102988
103074
|
});
|
|
102989
|
-
import("./boot-reembed-
|
|
103075
|
+
import("./boot-reembed-1ze5853n.js").then(({ runBootReembedScripts }) => runBootReembedScripts()).catch((err) => {
|
|
102990
103076
|
console.error("[config-reload] script backfill failed (non-fatal):", err);
|
|
102991
103077
|
});
|
|
102992
103078
|
}
|
|
@@ -103317,14 +103403,14 @@ init_config();
|
|
|
103317
103403
|
|
|
103318
103404
|
// src/tools/accept-steer.ts
|
|
103319
103405
|
init_zod();
|
|
103320
|
-
|
|
103406
|
+
init_db2();
|
|
103321
103407
|
|
|
103322
103408
|
// src/tools/task-tool-ctx.ts
|
|
103323
103409
|
init_rbac();
|
|
103324
103410
|
|
|
103325
103411
|
// src/tools/utils.ts
|
|
103326
103412
|
init_zod();
|
|
103327
|
-
|
|
103413
|
+
init_db2();
|
|
103328
103414
|
|
|
103329
103415
|
// src/kv-overflow.ts
|
|
103330
103416
|
var MCP_OVERFLOW_NAMESPACE = "mcp:overflow";
|
|
@@ -104104,7 +104190,7 @@ function setPreloadedTools(server, names) {
|
|
|
104104
104190
|
async function applyPreToolCall(name, args, requestInfo, inputSchema) {
|
|
104105
104191
|
if (requestInfo.callOrigin !== "mcp")
|
|
104106
104192
|
return { args };
|
|
104107
|
-
const dispatcher = await import("./dispatcher-
|
|
104193
|
+
const dispatcher = await import("./dispatcher-7vnwj9qw.js");
|
|
104108
104194
|
const result = await dispatcher.dispatchPre("pre.tool.call", { tool: name, args, requestInfo }, inputSchema ? {
|
|
104109
104195
|
validateModify: async (data) => {
|
|
104110
104196
|
const schema = normalizeObjectSchema(inputSchema) ?? inputSchema;
|
|
@@ -104318,15 +104404,15 @@ var registerAcceptSteerTool = (server) => {
|
|
|
104318
104404
|
init_zod();
|
|
104319
104405
|
|
|
104320
104406
|
// src/apps/version.ts
|
|
104321
|
-
|
|
104407
|
+
init_db2();
|
|
104322
104408
|
|
|
104323
104409
|
// src/apps/schema-migrate.ts
|
|
104324
104410
|
init_zod();
|
|
104325
|
-
|
|
104411
|
+
init_db2();
|
|
104326
104412
|
init_secret_scrubber();
|
|
104327
104413
|
|
|
104328
104414
|
// src/apps/row-store.ts
|
|
104329
|
-
|
|
104415
|
+
init_db2();
|
|
104330
104416
|
init_db_client();
|
|
104331
104417
|
class AppRowValidationError extends Error {
|
|
104332
104418
|
issues;
|
|
@@ -104705,6 +104791,7 @@ function purgeAppRows(appId2, models, afterPurge) {
|
|
|
104705
104791
|
|
|
104706
104792
|
// src/apps/sync.ts
|
|
104707
104793
|
init_zod();
|
|
104794
|
+
init_db2();
|
|
104708
104795
|
init_db();
|
|
104709
104796
|
init_types();
|
|
104710
104797
|
init_secret_scrubber();
|
|
@@ -106115,12 +106202,12 @@ async function rollbackApp(input) {
|
|
|
106115
106202
|
}
|
|
106116
106203
|
|
|
106117
106204
|
// src/tools/app-diff.ts
|
|
106118
|
-
|
|
106205
|
+
init_db2();
|
|
106119
106206
|
init_rbac();
|
|
106120
106207
|
|
|
106121
106208
|
// src/tools/context-diff.ts
|
|
106122
106209
|
init_zod();
|
|
106123
|
-
|
|
106210
|
+
init_db2();
|
|
106124
106211
|
init_rbac();
|
|
106125
106212
|
import { tmpdir } from "node:os";
|
|
106126
106213
|
import { join } from "node:path";
|
|
@@ -106302,13 +106389,13 @@ var registerAppDiffTool = (server) => {
|
|
|
106302
106389
|
|
|
106303
106390
|
// src/tools/app-get.ts
|
|
106304
106391
|
init_zod();
|
|
106305
|
-
|
|
106392
|
+
init_db2();
|
|
106306
106393
|
|
|
106307
106394
|
// src/http/apps.ts
|
|
106308
106395
|
init_zod();
|
|
106309
106396
|
|
|
106310
106397
|
// src/apps/user-config.ts
|
|
106311
|
-
|
|
106398
|
+
init_db2();
|
|
106312
106399
|
var USER_CONFIG_THEME_KEY = "$theme";
|
|
106313
106400
|
var RESERVED_KEY_PATTERNS = {
|
|
106314
106401
|
[USER_CONFIG_THEME_KEY]: /^[a-z][a-z0-9-]{0,39}$/
|
|
@@ -106390,6 +106477,7 @@ async function upsertAppUserConfigValues(appId2, scope, values) {
|
|
|
106390
106477
|
|
|
106391
106478
|
// src/http/apps.ts
|
|
106392
106479
|
init_key();
|
|
106480
|
+
init_db2();
|
|
106393
106481
|
init_db();
|
|
106394
106482
|
init_resolver();
|
|
106395
106483
|
init_rbac();
|
|
@@ -106399,7 +106487,7 @@ init_secret_scrubber();
|
|
|
106399
106487
|
|
|
106400
106488
|
// src/be/audit-user.ts
|
|
106401
106489
|
init_request_auth_context();
|
|
106402
|
-
|
|
106490
|
+
init_db2();
|
|
106403
106491
|
async function resolveTaskAuditUserId(sourceTaskId, callerAgentId) {
|
|
106404
106492
|
if (!callerAgentId)
|
|
106405
106493
|
return null;
|
|
@@ -107950,7 +108038,7 @@ var registerAppQueryTool = (server) => {
|
|
|
107950
108038
|
|
|
107951
108039
|
// src/tools/app-history.ts
|
|
107952
108040
|
init_zod();
|
|
107953
|
-
|
|
108041
|
+
init_db2();
|
|
107954
108042
|
init_rbac();
|
|
107955
108043
|
function escapeTableCell2(value) {
|
|
107956
108044
|
return String(value ?? "—").replaceAll("\\", "\\\\").replaceAll("|", "\\|").replace(/\r\n|\r|\n/g, "<br>");
|
|
@@ -108055,7 +108143,7 @@ var registerAppListTool = (server) => {
|
|
|
108055
108143
|
|
|
108056
108144
|
// src/tools/app-patch.ts
|
|
108057
108145
|
init_zod();
|
|
108058
|
-
|
|
108146
|
+
init_db2();
|
|
108059
108147
|
init_rbac();
|
|
108060
108148
|
var registerAppPatchTool = (server) => {
|
|
108061
108149
|
createToolRegistrar(server)("app-patch", {
|
|
@@ -108176,7 +108264,7 @@ var registerAppPatchTool = (server) => {
|
|
|
108176
108264
|
};
|
|
108177
108265
|
// src/tools/app-rollback.ts
|
|
108178
108266
|
init_zod();
|
|
108179
|
-
|
|
108267
|
+
init_db2();
|
|
108180
108268
|
init_rbac();
|
|
108181
108269
|
var registerAppRollbackTool = (server) => {
|
|
108182
108270
|
createToolRegistrar(server)("app-rollback", {
|
|
@@ -108256,7 +108344,7 @@ var registerAppRollbackTool = (server) => {
|
|
|
108256
108344
|
|
|
108257
108345
|
// src/tools/app-sync.ts
|
|
108258
108346
|
init_zod();
|
|
108259
|
-
|
|
108347
|
+
init_db2();
|
|
108260
108348
|
init_rbac();
|
|
108261
108349
|
function cell(value) {
|
|
108262
108350
|
return String(value ?? "—").replaceAll("\\", "\\\\").replaceAll("|", "\\|").replace(/\r\n|\r|\n/g, "<br>");
|
|
@@ -108343,7 +108431,7 @@ var registerAppSyncTool = (server) => {
|
|
|
108343
108431
|
|
|
108344
108432
|
// src/tools/app-upsert.ts
|
|
108345
108433
|
init_zod();
|
|
108346
|
-
|
|
108434
|
+
init_db2();
|
|
108347
108435
|
init_rbac();
|
|
108348
108436
|
var registerAppUpsertTool = (server) => {
|
|
108349
108437
|
createToolRegistrar(server)("app-upsert", {
|
|
@@ -108487,10 +108575,10 @@ var registerAppUpsertTool = (server) => {
|
|
|
108487
108575
|
|
|
108488
108576
|
// src/tools/cancel-approval-request.ts
|
|
108489
108577
|
init_zod();
|
|
108490
|
-
|
|
108578
|
+
init_db2();
|
|
108491
108579
|
|
|
108492
108580
|
// src/workflows/approval-cancel.ts
|
|
108493
|
-
|
|
108581
|
+
init_db2();
|
|
108494
108582
|
init_rbac();
|
|
108495
108583
|
var LIVE_RUN_STATUSES = new Set(["running", "waiting"]);
|
|
108496
108584
|
async function cancelApprovalRequest(input) {
|
|
@@ -108630,12 +108718,12 @@ var registerCancelApprovalRequestTool = (server) => {
|
|
|
108630
108718
|
|
|
108631
108719
|
// src/tools/cancel-task.ts
|
|
108632
108720
|
init_zod();
|
|
108633
|
-
|
|
108721
|
+
init_db2();
|
|
108634
108722
|
init_rbac();
|
|
108635
108723
|
|
|
108636
108724
|
// src/tools/get-task-details.ts
|
|
108637
108725
|
init_zod();
|
|
108638
|
-
|
|
108726
|
+
init_db2();
|
|
108639
108727
|
init_types();
|
|
108640
108728
|
|
|
108641
108729
|
// src/utils/requester-comms.ts
|
|
@@ -108948,7 +109036,7 @@ var registerCancelTaskTool = (server) => {
|
|
|
108948
109036
|
|
|
108949
109037
|
// src/tools/context-history.ts
|
|
108950
109038
|
init_zod();
|
|
108951
|
-
|
|
109039
|
+
init_db2();
|
|
108952
109040
|
init_rbac();
|
|
108953
109041
|
var registerContextHistoryTool = (server) => {
|
|
108954
109042
|
createToolRegistrar(server)("context-history", {
|
|
@@ -109024,7 +109112,7 @@ var registerContextHistoryTool = (server) => {
|
|
|
109024
109112
|
|
|
109025
109113
|
// src/tools/create-channel.ts
|
|
109026
109114
|
init_zod();
|
|
109027
|
-
|
|
109115
|
+
init_db2();
|
|
109028
109116
|
init_types();
|
|
109029
109117
|
var ChannelOutputSchema = looseObject({
|
|
109030
109118
|
id: string().optional(),
|
|
@@ -109081,16 +109169,17 @@ var registerCreateChannelTool = (server) => {
|
|
|
109081
109169
|
|
|
109082
109170
|
// src/tools/create-metric.ts
|
|
109083
109171
|
init_zod();
|
|
109084
|
-
|
|
109172
|
+
init_db2();
|
|
109085
109173
|
|
|
109086
109174
|
// src/http/db-query.ts
|
|
109087
109175
|
init_zod();
|
|
109176
|
+
init_secret_scrubber();
|
|
109088
109177
|
|
|
109089
109178
|
// src/http/db-query-bounded.ts
|
|
109090
|
-
|
|
109179
|
+
init_db2();
|
|
109091
109180
|
|
|
109092
109181
|
// src/http/db-query-shared.ts
|
|
109093
|
-
|
|
109182
|
+
init_db2();
|
|
109094
109183
|
init_env_flag();
|
|
109095
109184
|
import { Database } from "bun:sqlite";
|
|
109096
109185
|
class DbQueryTimeoutError extends Error {
|
|
@@ -109115,19 +109204,91 @@ function assertSingleStatement(sql) {
|
|
|
109115
109204
|
throw new Error("Only one SQL statement is allowed");
|
|
109116
109205
|
}
|
|
109117
109206
|
}
|
|
109118
|
-
|
|
109119
|
-
|
|
109207
|
+
var DB_QUERY_DENIED_TABLES = new Set([
|
|
109208
|
+
"oauth_authorizations",
|
|
109209
|
+
"oauth_apps",
|
|
109210
|
+
"oauth_pending",
|
|
109211
|
+
"user_tokens",
|
|
109212
|
+
"session_tokens",
|
|
109213
|
+
"script_apis",
|
|
109214
|
+
"codex_oauth_device_flows"
|
|
109215
|
+
]);
|
|
109216
|
+
|
|
109217
|
+
class DbQueryDeniedTableError extends Error {
|
|
109218
|
+
tables;
|
|
109219
|
+
constructor(tables) {
|
|
109220
|
+
super(`db-query cannot read ${tables.join(", ")}: ${tables.length === 1 ? "this table holds" : "these tables hold"} credentials. ` + "Use the dedicated OAuth, token or config tools instead.");
|
|
109221
|
+
this.tables = tables;
|
|
109222
|
+
this.name = "DbQueryDeniedTableError";
|
|
109223
|
+
}
|
|
109224
|
+
}
|
|
109225
|
+
var CURSOR_OPEN_OPCODES = new Set(["OpenRead", "ReopenIdx", "OpenWrite"]);
|
|
109226
|
+
function openReadOnlyReader() {
|
|
109120
109227
|
const database = getDb();
|
|
109121
109228
|
const reader = !database.filename || database.filename === ":memory:" ? Database.deserialize(database.serialize(), { readonly: true }) : new Database(database.filename, { readonly: true });
|
|
109229
|
+
const vecExtensionPath = resolveSqliteVecExtensionPath();
|
|
109230
|
+
if (vecExtensionPath) {
|
|
109231
|
+
try {
|
|
109232
|
+
reader.loadExtension(vecExtensionPath);
|
|
109233
|
+
} catch {}
|
|
109234
|
+
}
|
|
109235
|
+
return reader;
|
|
109236
|
+
}
|
|
109237
|
+
function assertNoDeniedTables(sql, reader) {
|
|
109238
|
+
const statement = stripTrailingSemicolon(sql);
|
|
109239
|
+
if (/^explain\b/i.test(stripLeadingComments(statement)))
|
|
109240
|
+
return;
|
|
109241
|
+
const db = reader ?? openReadOnlyReader();
|
|
109122
109242
|
try {
|
|
109123
109243
|
let __stack = [];
|
|
109124
109244
|
try {
|
|
109125
|
-
const
|
|
109126
|
-
|
|
109127
|
-
|
|
109128
|
-
|
|
109129
|
-
|
|
109245
|
+
const rootPages = new Map;
|
|
109246
|
+
for (const row of db.query("SELECT rootpage, tbl_name FROM main.sqlite_master WHERE rootpage > 0").all()) {
|
|
109247
|
+
rootPages.set(row.rootpage, row.tbl_name.toLowerCase());
|
|
109248
|
+
}
|
|
109249
|
+
const program = __using(__stack, db.prepare(`EXPLAIN ${statement}`), 0);
|
|
109250
|
+
const denied = new Set;
|
|
109251
|
+
for (const op of program.all()) {
|
|
109252
|
+
if (!CURSOR_OPEN_OPCODES.has(op.opcode) || op.p3 !== 0)
|
|
109253
|
+
continue;
|
|
109254
|
+
const table = rootPages.get(op.p2);
|
|
109255
|
+
if (table && DB_QUERY_DENIED_TABLES.has(table))
|
|
109256
|
+
denied.add(table);
|
|
109130
109257
|
}
|
|
109258
|
+
if (denied.size > 0)
|
|
109259
|
+
throw new DbQueryDeniedTableError([...denied].sort());
|
|
109260
|
+
} catch (_catch) {
|
|
109261
|
+
var _err = _catch, _hasErr = 1;
|
|
109262
|
+
} finally {
|
|
109263
|
+
__callDispose(__stack, _err, _hasErr);
|
|
109264
|
+
}
|
|
109265
|
+
} finally {
|
|
109266
|
+
if (!reader)
|
|
109267
|
+
db.close();
|
|
109268
|
+
}
|
|
109269
|
+
}
|
|
109270
|
+
function stripLeadingComments(sql) {
|
|
109271
|
+
let rest = sql.trimStart();
|
|
109272
|
+
for (;; ) {
|
|
109273
|
+
if (rest.startsWith("--")) {
|
|
109274
|
+
const end = rest.indexOf(`
|
|
109275
|
+
`);
|
|
109276
|
+
rest = end === -1 ? "" : rest.slice(end + 1).trimStart();
|
|
109277
|
+
} else if (rest.startsWith("/*")) {
|
|
109278
|
+
const end = rest.indexOf("*/");
|
|
109279
|
+
rest = end === -1 ? "" : rest.slice(end + 2).trimStart();
|
|
109280
|
+
} else {
|
|
109281
|
+
return rest;
|
|
109282
|
+
}
|
|
109283
|
+
}
|
|
109284
|
+
}
|
|
109285
|
+
function executeReadOnlyQuery(sql, params = [], maxRows) {
|
|
109286
|
+
assertSingleStatement(sql);
|
|
109287
|
+
const reader = openReadOnlyReader();
|
|
109288
|
+
try {
|
|
109289
|
+
let __stack = [];
|
|
109290
|
+
try {
|
|
109291
|
+
assertNoDeniedTables(sql, reader);
|
|
109131
109292
|
const stmt = __using(__stack, reader.prepare(sql), 0);
|
|
109132
109293
|
if (stmt.columnNames.length === 0) {
|
|
109133
109294
|
throw new Error("Only read-only queries are allowed");
|
|
@@ -109276,6 +109437,7 @@ function releaseBoundedQuerySlot() {
|
|
|
109276
109437
|
}
|
|
109277
109438
|
async function executeReadOnlyQueryBounded(sql, params = [], budgetMs, maxRows) {
|
|
109278
109439
|
assertSingleStatement(sql);
|
|
109440
|
+
assertNoDeniedTables(sql);
|
|
109279
109441
|
acquireBoundedQuerySlot();
|
|
109280
109442
|
try {
|
|
109281
109443
|
return await runBoundedQueryChild(sql, params, budgetMs, maxRows);
|
|
@@ -109399,7 +109561,9 @@ var dbQueryRoute = route({
|
|
|
109399
109561
|
rowLimit: exports_external.number().nullable()
|
|
109400
109562
|
})
|
|
109401
109563
|
},
|
|
109402
|
-
400: {
|
|
109564
|
+
400: {
|
|
109565
|
+
description: "Invalid or disallowed SQL, including queries that read credential tables"
|
|
109566
|
+
},
|
|
109403
109567
|
408: { description: "Query exceeded its wall-clock budget and was terminated" },
|
|
109404
109568
|
429: { description: "Too many concurrent bounded db-query executions; retry shortly" }
|
|
109405
109569
|
},
|
|
@@ -109414,7 +109578,7 @@ async function handleDbQuery(req, res, pathSegments, queryParams) {
|
|
|
109414
109578
|
return true;
|
|
109415
109579
|
try {
|
|
109416
109580
|
const result = await executeReadOnlyQueryGated(resolveDbQuerySql(parsed.body), parsed.body.params, getDbQueryHttpBudgetMs(), getDbQueryHttpMaxRows());
|
|
109417
|
-
dbQueryRoute.respond(res, 200, result);
|
|
109581
|
+
dbQueryRoute.respond(res, 200, scrubObject(result));
|
|
109418
109582
|
} catch (err) {
|
|
109419
109583
|
if (err instanceof DbQueryConcurrencyCapError) {
|
|
109420
109584
|
res.setHeader("Retry-After", "1");
|
|
@@ -109432,7 +109596,7 @@ async function handleDbQuery(req, res, pathSegments, queryParams) {
|
|
|
109432
109596
|
}
|
|
109433
109597
|
|
|
109434
109598
|
// src/metrics/version.ts
|
|
109435
|
-
|
|
109599
|
+
init_db2();
|
|
109436
109600
|
async function snapshotMetric(metricId, changedByAgentId) {
|
|
109437
109601
|
const metric = await getMetric(metricId);
|
|
109438
109602
|
if (!metric) {
|
|
@@ -109582,10 +109746,10 @@ async function authorizeAssetKeyWrite(input, trustedUserId) {
|
|
|
109582
109746
|
}
|
|
109583
109747
|
|
|
109584
109748
|
// src/tools/create-page.ts
|
|
109585
|
-
|
|
109749
|
+
init_db2();
|
|
109586
109750
|
|
|
109587
109751
|
// src/pages/version.ts
|
|
109588
|
-
|
|
109752
|
+
init_db2();
|
|
109589
109753
|
async function snapshotPage(pageId, changedByAgentId) {
|
|
109590
109754
|
const page = await getPage(pageId);
|
|
109591
109755
|
if (!page) {
|
|
@@ -109745,7 +109909,8 @@ var registerCreatePageTool = (server) => {
|
|
|
109745
109909
|
|
|
109746
109910
|
// src/tools/credential-bindings/tool.ts
|
|
109747
109911
|
init_zod();
|
|
109748
|
-
|
|
109912
|
+
init_db2();
|
|
109913
|
+
init_oauth();
|
|
109749
109914
|
|
|
109750
109915
|
// src/oauth/app-validation.ts
|
|
109751
109916
|
function assertOAuthAppUrlsSafe(input) {
|
|
@@ -110300,7 +110465,7 @@ var DbQueryToolInputSchema = object({
|
|
|
110300
110465
|
var registerDbQueryTool = (server) => {
|
|
110301
110466
|
createToolRegistrar(server)("db-query", {
|
|
110302
110467
|
title: "Execute database query",
|
|
110303
|
-
description: "Execute a read-only SQL query against the swarm database (SQLite). Available to all authenticated agents
|
|
110468
|
+
description: "Execute a read-only SQL query against the swarm database (SQLite). Available to all authenticated agents. Queries that read credential tables (OAuth authorizations, apps and pending flows, user and session tokens, script API bearers, Codex device-login state) are rejected, and secret-shaped values in results are redacted. Runs in a short-lived child process with a wall-clock budget by default (fails gracefully with a timeout or a 429-style concurrency error rather than freezing); results capped at a default row count (operator-configurable via `DB_QUERY_MCP_MAX_ROWS`) regardless of how many the query matched. See the sql parameter's description for which tables are unsafe to read whole, and the db-query-guidance skill for config knobs.",
|
|
110304
110469
|
annotations: { readOnlyHint: true },
|
|
110305
110470
|
inputSchema: DbQueryToolInputSchema,
|
|
110306
110471
|
outputSchema: swarmToolOutputSchema({
|
|
@@ -110340,13 +110505,14 @@ ${result.total} rows in ${result.elapsed}ms`;
|
|
|
110340
110505
|
|
|
110341
110506
|
// src/tools/defer-task.ts
|
|
110342
110507
|
init_zod();
|
|
110343
|
-
|
|
110508
|
+
init_db2();
|
|
110344
110509
|
|
|
110345
110510
|
// src/tasks/task-terminal-effects.ts
|
|
110346
|
-
|
|
110511
|
+
init_db2();
|
|
110512
|
+
init_memory();
|
|
110347
110513
|
|
|
110348
110514
|
// src/be/memory/raters/retrieval.ts
|
|
110349
|
-
|
|
110515
|
+
init_db2();
|
|
110350
110516
|
function dedupeMemoryDocumentIds(memories) {
|
|
110351
110517
|
const documents = new Map;
|
|
110352
110518
|
for (const memory of memories) {
|
|
@@ -110497,7 +110663,7 @@ function getRaterWeightMultiplier(name) {
|
|
|
110497
110663
|
}
|
|
110498
110664
|
|
|
110499
110665
|
// src/be/memory/raters/store.ts
|
|
110500
|
-
|
|
110666
|
+
init_db2();
|
|
110501
110667
|
class ExplicitSelfDuplicateError extends Error {
|
|
110502
110668
|
event;
|
|
110503
110669
|
constructor(message, event) {
|
|
@@ -110698,7 +110864,7 @@ var shouldPersistTaskCompletionMemory = shouldPersistAutomaticTaskMemory;
|
|
|
110698
110864
|
|
|
110699
110865
|
// src/tasks/worker-follow-up.ts
|
|
110700
110866
|
init_zod();
|
|
110701
|
-
|
|
110867
|
+
init_db2();
|
|
110702
110868
|
init_resolver();
|
|
110703
110869
|
init_types();
|
|
110704
110870
|
init_env_flag();
|
|
@@ -111162,7 +111328,7 @@ ${taskContent}`,
|
|
|
111162
111328
|
}
|
|
111163
111329
|
|
|
111164
111330
|
// src/tasks/terminal-result-guard.ts
|
|
111165
|
-
|
|
111331
|
+
init_db2();
|
|
111166
111332
|
init_types();
|
|
111167
111333
|
init_secret_scrubber();
|
|
111168
111334
|
function getTaskOutputValidationError(outputSchema, output) {
|
|
@@ -111519,7 +111685,7 @@ Deferred until ${nextRunAt} (schedule ${schedule.id}). Pending: ${note}${checksB
|
|
|
111519
111685
|
|
|
111520
111686
|
// src/tools/delete-channel.ts
|
|
111521
111687
|
init_zod();
|
|
111522
|
-
|
|
111688
|
+
init_db2();
|
|
111523
111689
|
init_rbac();
|
|
111524
111690
|
var GENERAL_CHANNEL_ID = "00000000-0000-4000-8000-000000000001";
|
|
111525
111691
|
var registerDeleteChannelTool = (server) => {
|
|
@@ -111597,7 +111763,7 @@ var registerDeleteChannelTool = (server) => {
|
|
|
111597
111763
|
|
|
111598
111764
|
// src/tools/delete-page.ts
|
|
111599
111765
|
init_zod();
|
|
111600
|
-
|
|
111766
|
+
init_db2();
|
|
111601
111767
|
init_rbac();
|
|
111602
111768
|
var DeletedPageSchema = looseObject({
|
|
111603
111769
|
id: string().optional(),
|
|
@@ -112122,7 +112288,7 @@ var registerExtensionListTool = (server) => {
|
|
|
112122
112288
|
|
|
112123
112289
|
// src/tools/get-metrics.ts
|
|
112124
112290
|
init_zod();
|
|
112125
|
-
|
|
112291
|
+
init_db2();
|
|
112126
112292
|
var CountByStatusSchema = record(string(), number());
|
|
112127
112293
|
var registerGetMetricsTool = (server) => {
|
|
112128
112294
|
createToolRegistrar(server)("get-metrics", {
|
|
@@ -112165,7 +112331,7 @@ var registerGetMetricsTool = (server) => {
|
|
|
112165
112331
|
|
|
112166
112332
|
// src/tools/get-swarm.ts
|
|
112167
112333
|
init_zod();
|
|
112168
|
-
|
|
112334
|
+
init_db2();
|
|
112169
112335
|
init_types();
|
|
112170
112336
|
var agentOutputShape = looseObject({
|
|
112171
112337
|
id: string().optional(),
|
|
@@ -112218,7 +112384,7 @@ var registerGetSwarmTool = (server) => {
|
|
|
112218
112384
|
|
|
112219
112385
|
// src/tools/get-tasks.ts
|
|
112220
112386
|
init_zod();
|
|
112221
|
-
|
|
112387
|
+
init_db2();
|
|
112222
112388
|
init_types();
|
|
112223
112389
|
var TaskSummarySchema = looseObject({
|
|
112224
112390
|
id: string().optional(),
|
|
@@ -112376,7 +112542,8 @@ var registerGetTasksTool = (server) => {
|
|
|
112376
112542
|
|
|
112377
112543
|
// src/tools/inject-learning.ts
|
|
112378
112544
|
init_zod();
|
|
112379
|
-
|
|
112545
|
+
init_db2();
|
|
112546
|
+
init_memory();
|
|
112380
112547
|
init_rbac();
|
|
112381
112548
|
var LearningCategoryEnum = _enum([
|
|
112382
112549
|
"mistake-pattern",
|
|
@@ -112433,7 +112600,7 @@ ${learning}`;
|
|
|
112433
112600
|
});
|
|
112434
112601
|
try {
|
|
112435
112602
|
const provider = getEmbeddingProvider();
|
|
112436
|
-
const embedding = await provider.embed(content);
|
|
112603
|
+
const embedding = await provider.embed(memory.content);
|
|
112437
112604
|
if (embedding) {
|
|
112438
112605
|
await store.updateEmbedding(memory.id, embedding, provider.name);
|
|
112439
112606
|
}
|
|
@@ -112447,7 +112614,7 @@ ${learning}`;
|
|
|
112447
112614
|
|
|
112448
112615
|
// src/tools/join-swarm.ts
|
|
112449
112616
|
init_zod();
|
|
112450
|
-
|
|
112617
|
+
init_db2();
|
|
112451
112618
|
init_defaults();
|
|
112452
112619
|
init_types();
|
|
112453
112620
|
var agentOutputShape2 = looseObject({
|
|
@@ -112553,11 +112720,11 @@ var registerJoinSwarmTool = (server) => {
|
|
|
112553
112720
|
|
|
112554
112721
|
// src/tools/kv/kv-delete.ts
|
|
112555
112722
|
init_zod();
|
|
112556
|
-
|
|
112723
|
+
init_db2();
|
|
112557
112724
|
init_types();
|
|
112558
112725
|
|
|
112559
112726
|
// src/tools/kv/kv-write-auth.ts
|
|
112560
|
-
|
|
112727
|
+
init_db2();
|
|
112561
112728
|
|
|
112562
112729
|
// src/kv-reserved-namespaces.ts
|
|
112563
112730
|
var RESERVED_FAMILIES = new Map([
|
|
@@ -112605,7 +112772,7 @@ async function kvWriteAuthError(namespace2, info, key) {
|
|
|
112605
112772
|
}
|
|
112606
112773
|
|
|
112607
112774
|
// src/tools/kv/resolve-namespace.ts
|
|
112608
|
-
|
|
112775
|
+
init_db2();
|
|
112609
112776
|
init_context_key();
|
|
112610
112777
|
async function resolveNamespace(explicit, info) {
|
|
112611
112778
|
if (explicit && explicit.length > 0) {
|
|
@@ -112666,7 +112833,7 @@ var registerKvDeleteTool = (server) => {
|
|
|
112666
112833
|
};
|
|
112667
112834
|
// src/tools/kv/kv-get.ts
|
|
112668
112835
|
init_zod();
|
|
112669
|
-
|
|
112836
|
+
init_db2();
|
|
112670
112837
|
init_types();
|
|
112671
112838
|
|
|
112672
112839
|
// src/tools/kv/kv-read-auth.ts
|
|
@@ -112798,7 +112965,7 @@ var registerKvGetTool = (server) => {
|
|
|
112798
112965
|
};
|
|
112799
112966
|
// src/tools/kv/kv-incr.ts
|
|
112800
112967
|
init_zod();
|
|
112801
|
-
|
|
112968
|
+
init_db2();
|
|
112802
112969
|
init_types();
|
|
112803
112970
|
var kvEntryOutputSchema2 = looseObject({
|
|
112804
112971
|
namespace: string().optional(),
|
|
@@ -112855,7 +113022,7 @@ var registerKvIncrTool = (server) => {
|
|
|
112855
113022
|
};
|
|
112856
113023
|
// src/tools/kv/kv-list.ts
|
|
112857
113024
|
init_zod();
|
|
112858
|
-
|
|
113025
|
+
init_db2();
|
|
112859
113026
|
init_types();
|
|
112860
113027
|
var MAX_KV_LIST_LIMIT = 1000;
|
|
112861
113028
|
var kvEntryOutputSchema3 = looseObject({
|
|
@@ -112925,7 +113092,7 @@ var registerKvListTool = (server) => {
|
|
|
112925
113092
|
};
|
|
112926
113093
|
// src/tools/kv/kv-set.ts
|
|
112927
113094
|
init_zod();
|
|
112928
|
-
|
|
113095
|
+
init_db2();
|
|
112929
113096
|
init_types();
|
|
112930
113097
|
var MAX_KV_BODY_BYTES = 2 * 1024 * 1024;
|
|
112931
113098
|
var kvEntryOutputSchema4 = looseObject({
|
|
@@ -113026,7 +113193,7 @@ var registerKvSetTool = (server) => {
|
|
|
113026
113193
|
};
|
|
113027
113194
|
// src/tools/list-channels.ts
|
|
113028
113195
|
init_zod();
|
|
113029
|
-
|
|
113196
|
+
init_db2();
|
|
113030
113197
|
init_types();
|
|
113031
113198
|
var ChannelOutputSchema2 = looseObject({
|
|
113032
113199
|
id: string().optional(),
|
|
@@ -113060,7 +113227,7 @@ var registerListChannelsTool = (server) => {
|
|
|
113060
113227
|
|
|
113061
113228
|
// src/tools/list-services.ts
|
|
113062
113229
|
init_zod();
|
|
113063
|
-
|
|
113230
|
+
init_db2();
|
|
113064
113231
|
init_types();
|
|
113065
113232
|
var serviceWithAgentNameOutputShape = looseObject({
|
|
113066
113233
|
id: string().optional(),
|
|
@@ -113138,7 +113305,7 @@ var registerListServicesTool = (server) => {
|
|
|
113138
113305
|
|
|
113139
113306
|
// src/tools/manage-user.ts
|
|
113140
113307
|
init_zod();
|
|
113141
|
-
|
|
113308
|
+
init_db2();
|
|
113142
113309
|
init_rbac();
|
|
113143
113310
|
var userOutputShape = looseObject({
|
|
113144
113311
|
id: string().optional(),
|
|
@@ -113353,7 +113520,7 @@ var registerManageUserTool = (server) => {
|
|
|
113353
113520
|
|
|
113354
113521
|
// src/tools/mcp-servers/mcp-server-create.ts
|
|
113355
113522
|
init_zod();
|
|
113356
|
-
|
|
113523
|
+
init_db2();
|
|
113357
113524
|
init_rbac();
|
|
113358
113525
|
var registerMcpServerCreateTool = (server) => {
|
|
113359
113526
|
createToolRegistrar(server)("mcp-server-create", {
|
|
@@ -113458,7 +113625,7 @@ var registerMcpServerCreateTool = (server) => {
|
|
|
113458
113625
|
};
|
|
113459
113626
|
// src/tools/mcp-servers/mcp-server-delete.ts
|
|
113460
113627
|
init_zod();
|
|
113461
|
-
|
|
113628
|
+
init_db2();
|
|
113462
113629
|
init_rbac();
|
|
113463
113630
|
var registerMcpServerDeleteTool = (server) => {
|
|
113464
113631
|
createToolRegistrar(server)("mcp-server-delete", {
|
|
@@ -113503,7 +113670,7 @@ var registerMcpServerDeleteTool = (server) => {
|
|
|
113503
113670
|
};
|
|
113504
113671
|
// src/tools/mcp-servers/mcp-server-get.ts
|
|
113505
113672
|
init_zod();
|
|
113506
|
-
|
|
113673
|
+
init_db2();
|
|
113507
113674
|
var registerMcpServerGetTool = (server) => {
|
|
113508
113675
|
createToolRegistrar(server)("mcp-server-get", {
|
|
113509
113676
|
title: "Get MCP Server",
|
|
@@ -113540,7 +113707,7 @@ var registerMcpServerGetTool = (server) => {
|
|
|
113540
113707
|
};
|
|
113541
113708
|
// src/tools/mcp-servers/mcp-server-install.ts
|
|
113542
113709
|
init_zod();
|
|
113543
|
-
|
|
113710
|
+
init_db2();
|
|
113544
113711
|
init_rbac();
|
|
113545
113712
|
var registerMcpServerInstallTool = (server) => {
|
|
113546
113713
|
createToolRegistrar(server)("mcp-server-install", {
|
|
@@ -113598,7 +113765,7 @@ var registerMcpServerInstallTool = (server) => {
|
|
|
113598
113765
|
};
|
|
113599
113766
|
// src/tools/mcp-servers/mcp-server-list.ts
|
|
113600
113767
|
init_zod();
|
|
113601
|
-
|
|
113768
|
+
init_db2();
|
|
113602
113769
|
function renderServerLines(servers) {
|
|
113603
113770
|
if (servers.length === 0)
|
|
113604
113771
|
return;
|
|
@@ -113647,7 +113814,7 @@ var registerMcpServerListTool = (server) => {
|
|
|
113647
113814
|
};
|
|
113648
113815
|
// src/tools/mcp-servers/mcp-server-uninstall.ts
|
|
113649
113816
|
init_zod();
|
|
113650
|
-
|
|
113817
|
+
init_db2();
|
|
113651
113818
|
init_rbac();
|
|
113652
113819
|
var registerMcpServerUninstallTool = (server) => {
|
|
113653
113820
|
createToolRegistrar(server)("mcp-server-uninstall", {
|
|
@@ -113691,10 +113858,10 @@ var registerMcpServerUninstallTool = (server) => {
|
|
|
113691
113858
|
};
|
|
113692
113859
|
// src/tools/mcp-servers/mcp-server-update.ts
|
|
113693
113860
|
init_zod();
|
|
113694
|
-
|
|
113861
|
+
init_db2();
|
|
113695
113862
|
|
|
113696
113863
|
// src/be/mcp-server-checked-update.ts
|
|
113697
|
-
|
|
113864
|
+
init_db2();
|
|
113698
113865
|
async function updateMcpServerChecked(id, updates, check) {
|
|
113699
113866
|
return await getDbClient().transaction(async () => {
|
|
113700
113867
|
const existing = await getMcpServerById(id);
|
|
@@ -113817,7 +113984,8 @@ var registerMcpServerUpdateTool = (server) => {
|
|
|
113817
113984
|
};
|
|
113818
113985
|
// src/tools/memory-delete.ts
|
|
113819
113986
|
init_zod();
|
|
113820
|
-
|
|
113987
|
+
init_db2();
|
|
113988
|
+
init_memory();
|
|
113821
113989
|
init_rbac();
|
|
113822
113990
|
var registerMemoryDeleteTool = (server) => {
|
|
113823
113991
|
createToolRegistrar(server)("memory-delete", {
|
|
@@ -113863,7 +114031,8 @@ var registerMemoryDeleteTool = (server) => {
|
|
|
113863
114031
|
|
|
113864
114032
|
// src/tools/memory-edit.ts
|
|
113865
114033
|
init_zod();
|
|
113866
|
-
|
|
114034
|
+
init_db2();
|
|
114035
|
+
init_memory();
|
|
113867
114036
|
|
|
113868
114037
|
// src/be/memory/key-guard.ts
|
|
113869
114038
|
init_rbac();
|
|
@@ -113913,7 +114082,7 @@ function assertKeyWritable(key, origin, writer) {
|
|
|
113913
114082
|
init_key_paths();
|
|
113914
114083
|
|
|
113915
114084
|
// src/be/memory/link-resolver.ts
|
|
113916
|
-
|
|
114085
|
+
init_db2();
|
|
113917
114086
|
init_constants();
|
|
113918
114087
|
var WIKILINK_RE = /\[\[([^\]]+)\]\]/g;
|
|
113919
114088
|
var PR_HASH_RE = /(?:^|[\s(])#(\d{1,5})(?=[\s,.)!?]|$)/gm;
|
|
@@ -114270,7 +114439,8 @@ var registerMemoryEditTool = (server) => {
|
|
|
114270
114439
|
|
|
114271
114440
|
// src/tools/memory-get.ts
|
|
114272
114441
|
init_zod();
|
|
114273
|
-
|
|
114442
|
+
init_db2();
|
|
114443
|
+
init_memory();
|
|
114274
114444
|
|
|
114275
114445
|
// src/be/memory/access.ts
|
|
114276
114446
|
function canReadMemory(memory, agentId) {
|
|
@@ -114278,7 +114448,7 @@ function canReadMemory(memory, agentId) {
|
|
|
114278
114448
|
}
|
|
114279
114449
|
|
|
114280
114450
|
// src/be/memory/links-store.ts
|
|
114281
|
-
|
|
114451
|
+
init_db2();
|
|
114282
114452
|
function redactedTargetId(sourceText) {
|
|
114283
114453
|
const wikilink = /^\[\[(.+)\]\]$/.exec(sourceText ?? "");
|
|
114284
114454
|
return wikilink?.[1] ?? "";
|
|
@@ -114568,11 +114738,12 @@ var registerMemoryRateTool = (server) => {
|
|
|
114568
114738
|
|
|
114569
114739
|
// src/tools/memory-search.ts
|
|
114570
114740
|
init_zod();
|
|
114571
|
-
|
|
114741
|
+
init_db2();
|
|
114742
|
+
init_memory();
|
|
114572
114743
|
init_constants2();
|
|
114573
114744
|
|
|
114574
114745
|
// src/be/memory/graph-expansion.ts
|
|
114575
|
-
|
|
114746
|
+
init_db2();
|
|
114576
114747
|
init_constants2();
|
|
114577
114748
|
init_sqlite_store();
|
|
114578
114749
|
init_reranker();
|
|
@@ -114818,7 +114989,7 @@ var registerMemorySearchTool = (server) => {
|
|
|
114818
114989
|
|
|
114819
114990
|
// src/tools/memory-store.ts
|
|
114820
114991
|
init_zod();
|
|
114821
|
-
|
|
114992
|
+
init_db2();
|
|
114822
114993
|
|
|
114823
114994
|
// src/be/chunking.ts
|
|
114824
114995
|
var MAX_CHUNK_SIZE = 2000;
|
|
@@ -114968,6 +115139,7 @@ function addOverlap(chunks, _originalText) {
|
|
|
114968
115139
|
}
|
|
114969
115140
|
|
|
114970
115141
|
// src/be/memory/index-content.ts
|
|
115142
|
+
init_memory();
|
|
114971
115143
|
init_secret_scrubber();
|
|
114972
115144
|
async function indexMemoryContent(params) {
|
|
114973
115145
|
const { agentId, content, name, scope, source, sourceTaskId, sourcePath, tags } = params;
|
|
@@ -115000,7 +115172,7 @@ async function indexMemoryContent(params) {
|
|
|
115000
115172
|
intent: "re-index memory source path",
|
|
115001
115173
|
changedByAgentId: agentId
|
|
115002
115174
|
});
|
|
115003
|
-
const embedding = await provider.embed(
|
|
115175
|
+
const embedding = await provider.embed(result.memory.content);
|
|
115004
115176
|
if (embedding)
|
|
115005
115177
|
await store.updateEmbedding(result.memory.id, embedding, provider.name);
|
|
115006
115178
|
try {
|
|
@@ -115040,7 +115212,7 @@ async function indexMemoryContent(params) {
|
|
|
115040
115212
|
}
|
|
115041
115213
|
(async () => {
|
|
115042
115214
|
try {
|
|
115043
|
-
const embeddings = await provider.embedBatch(
|
|
115215
|
+
const embeddings = await provider.embedBatch(memories.map((m) => m.content));
|
|
115044
115216
|
for (let i = 0;i < embeddings.length; i++) {
|
|
115045
115217
|
if (embeddings[i]) {
|
|
115046
115218
|
await store.updateEmbedding(memories[i].id, embeddings[i], provider.name);
|
|
@@ -115132,7 +115304,7 @@ var registerMemoryStoreTool = (server) => {
|
|
|
115132
115304
|
|
|
115133
115305
|
// src/tools/model-catalog/index.ts
|
|
115134
115306
|
init_zod();
|
|
115135
|
-
|
|
115307
|
+
init_db2();
|
|
115136
115308
|
init_rbac();
|
|
115137
115309
|
async function denyUnlessCatalogWriter(agentId) {
|
|
115138
115310
|
const agent = await getAgentById(agentId);
|
|
@@ -115233,7 +115405,7 @@ var registerModelCatalogOverlayUpsertTool = (server) => {
|
|
|
115233
115405
|
|
|
115234
115406
|
// src/tools/my-agent-info.ts
|
|
115235
115407
|
init_zod();
|
|
115236
|
-
|
|
115408
|
+
init_db2();
|
|
115237
115409
|
init_types();
|
|
115238
115410
|
var agentOutputShape3 = looseObject({
|
|
115239
115411
|
id: string().optional(),
|
|
@@ -115288,6 +115460,7 @@ var registerMyAgentInfoTool = (server) => {
|
|
|
115288
115460
|
|
|
115289
115461
|
// src/tools/oauth-access-token.ts
|
|
115290
115462
|
init_zod();
|
|
115463
|
+
init_oauth();
|
|
115291
115464
|
init_secret_scrubber();
|
|
115292
115465
|
function assertTokenUsable(provider, expiresAt, minValidityMs) {
|
|
115293
115466
|
const expiresAtMs = Date.parse(expiresAt);
|
|
@@ -115411,7 +115584,7 @@ init_zod();
|
|
|
115411
115584
|
// src/be/api-drain.ts
|
|
115412
115585
|
init_api_drain();
|
|
115413
115586
|
init_secret_scrubber();
|
|
115414
|
-
|
|
115587
|
+
init_db2();
|
|
115415
115588
|
var DEFAULT_API_DRAIN_MAX_MS = 0;
|
|
115416
115589
|
var DRAIN_CHECK_INTERVAL_MS = 500;
|
|
115417
115590
|
var LIVE_WORKER_WINDOW_MS = 30000;
|
|
@@ -115509,7 +115682,7 @@ function describe2(err) {
|
|
|
115509
115682
|
}
|
|
115510
115683
|
|
|
115511
115684
|
// src/tools/poll-task.ts
|
|
115512
|
-
|
|
115685
|
+
init_db2();
|
|
115513
115686
|
var DEFAULT_POLL_INTERVAL_MS = 2000;
|
|
115514
115687
|
var MAX_POLL_DURATION_MS = 1 * 60 * 1000;
|
|
115515
115688
|
var registerPollTaskTool = (server) => {
|
|
@@ -115677,7 +115850,7 @@ var registerPollTaskTool = (server) => {
|
|
|
115677
115850
|
|
|
115678
115851
|
// src/tools/post-message.ts
|
|
115679
115852
|
init_zod();
|
|
115680
|
-
|
|
115853
|
+
init_db2();
|
|
115681
115854
|
var PostedMessageSchema = looseObject({
|
|
115682
115855
|
id: string().optional(),
|
|
115683
115856
|
channelId: string().optional(),
|
|
@@ -115736,7 +115909,7 @@ var registerPostMessageTool = (server) => {
|
|
|
115736
115909
|
|
|
115737
115910
|
// src/tools/prompt-templates/delete.ts
|
|
115738
115911
|
init_zod();
|
|
115739
|
-
|
|
115912
|
+
init_db2();
|
|
115740
115913
|
var registerDeletePromptTemplateTool = (server) => {
|
|
115741
115914
|
createToolRegistrar(server)("delete-prompt-template", {
|
|
115742
115915
|
title: "Delete Prompt Template",
|
|
@@ -115779,7 +115952,7 @@ var registerDeletePromptTemplateTool = (server) => {
|
|
|
115779
115952
|
};
|
|
115780
115953
|
// src/tools/prompt-templates/get.ts
|
|
115781
115954
|
init_zod();
|
|
115782
|
-
|
|
115955
|
+
init_db2();
|
|
115783
115956
|
init_registry();
|
|
115784
115957
|
var promptTemplateOutputShape = looseObject({
|
|
115785
115958
|
id: string().optional(),
|
|
@@ -115859,7 +116032,7 @@ History: ${history.length} version(s)`,
|
|
|
115859
116032
|
};
|
|
115860
116033
|
// src/tools/prompt-templates/list.ts
|
|
115861
116034
|
init_zod();
|
|
115862
|
-
|
|
116035
|
+
init_db2();
|
|
115863
116036
|
init_types();
|
|
115864
116037
|
var promptTemplateOutputShape2 = looseObject({
|
|
115865
116038
|
id: string().optional(),
|
|
@@ -115964,7 +116137,7 @@ Unresolved variables: ${unresolved.join(", ")}` : ""}`,
|
|
|
115964
116137
|
};
|
|
115965
116138
|
// src/tools/prompt-templates/set.ts
|
|
115966
116139
|
init_zod();
|
|
115967
|
-
|
|
116140
|
+
init_db2();
|
|
115968
116141
|
init_types();
|
|
115969
116142
|
var promptTemplateOutputShape3 = looseObject({
|
|
115970
116143
|
id: string().optional(),
|
|
@@ -116031,7 +116204,7 @@ var registerSetPromptTemplateTool = (server) => {
|
|
|
116031
116204
|
};
|
|
116032
116205
|
// src/tools/read-messages.ts
|
|
116033
116206
|
init_zod();
|
|
116034
|
-
|
|
116207
|
+
init_db2();
|
|
116035
116208
|
var ChannelMessageOutputSchema = looseObject({
|
|
116036
116209
|
id: string().optional(),
|
|
116037
116210
|
channelId: string().optional(),
|
|
@@ -116156,7 +116329,7 @@ var registerReadMessagesTool = (server) => {
|
|
|
116156
116329
|
|
|
116157
116330
|
// src/tools/register-agentmail-inbox.ts
|
|
116158
116331
|
init_zod();
|
|
116159
|
-
|
|
116332
|
+
init_db2();
|
|
116160
116333
|
var registerRegisterAgentmailInboxTool = (server) => {
|
|
116161
116334
|
createToolRegistrar(server)("register-agentmail-inbox", {
|
|
116162
116335
|
title: "Register AgentMail Inbox",
|
|
@@ -116229,7 +116402,7 @@ ${mappings.map((m) => ` - ${m.inboxId} (${m.inboxEmail ?? "no email"})`).join(`
|
|
|
116229
116402
|
|
|
116230
116403
|
// src/tools/register-kapso-number.ts
|
|
116231
116404
|
init_zod();
|
|
116232
|
-
|
|
116405
|
+
init_db2();
|
|
116233
116406
|
|
|
116234
116407
|
// src/integrations/kapso/client.ts
|
|
116235
116408
|
init_secret_scrubber();
|
|
@@ -116402,7 +116575,7 @@ async function registerKapsoWebhook(params) {
|
|
|
116402
116575
|
}
|
|
116403
116576
|
|
|
116404
116577
|
// src/integrations/kapso/config.ts
|
|
116405
|
-
|
|
116578
|
+
init_db2();
|
|
116406
116579
|
var KAPSO_NUMBERS_NAMESPACE = "integrations:kapso:numbers";
|
|
116407
116580
|
var KAPSO_DEDUPE_NAMESPACE = "integrations:kapso:dedupe";
|
|
116408
116581
|
var KAPSO_DEDUPE_TTL_MS = 24 * 60 * 60 * 1000;
|
|
@@ -116584,7 +116757,7 @@ var registerUnregisterKapsoNumberTool = (server) => {
|
|
|
116584
116757
|
|
|
116585
116758
|
// src/tools/register-service.ts
|
|
116586
116759
|
init_zod();
|
|
116587
|
-
|
|
116760
|
+
init_db2();
|
|
116588
116761
|
import path2 from "node:path";
|
|
116589
116762
|
init_types();
|
|
116590
116763
|
var serviceOutputShape = looseObject({
|
|
@@ -116715,7 +116888,7 @@ var registerRegisterServiceTool = (server) => {
|
|
|
116715
116888
|
|
|
116716
116889
|
// src/tools/repos/get-repos.ts
|
|
116717
116890
|
init_zod();
|
|
116718
|
-
|
|
116891
|
+
init_db2();
|
|
116719
116892
|
var swarmRepoOutputShape = looseObject({
|
|
116720
116893
|
id: string().optional(),
|
|
116721
116894
|
url: string().optional(),
|
|
@@ -116759,10 +116932,10 @@ var registerGetReposTool = (server) => {
|
|
|
116759
116932
|
};
|
|
116760
116933
|
// src/tools/repos/update-repo.ts
|
|
116761
116934
|
init_zod();
|
|
116762
|
-
|
|
116935
|
+
init_db2();
|
|
116763
116936
|
|
|
116764
116937
|
// src/be/repo-checked-update.ts
|
|
116765
|
-
|
|
116938
|
+
init_db2();
|
|
116766
116939
|
|
|
116767
116940
|
// src/be/repo-merge-policy.ts
|
|
116768
116941
|
function changesAllowMerge(current, incoming) {
|
|
@@ -116854,14 +117027,14 @@ var registerUpdateRepoTool = (server) => {
|
|
|
116854
117027
|
};
|
|
116855
117028
|
// src/tools/request-human-input.ts
|
|
116856
117029
|
init_zod();
|
|
116857
|
-
|
|
117030
|
+
init_db2();
|
|
116858
117031
|
init_constants();
|
|
116859
117032
|
var QuestionSchema = object({
|
|
116860
117033
|
id: string().describe("Unique ID for the question (used as key in responses)"),
|
|
116861
117034
|
type: _enum(["approval", "text", "single-select", "multi-select", "boolean"]).describe("Question type"),
|
|
116862
117035
|
label: string().describe("The question text displayed to the user"),
|
|
116863
117036
|
required: boolean().optional().describe("Whether this question is required (default: true)"),
|
|
116864
|
-
description: string().optional().describe("Optional help text"),
|
|
117037
|
+
description: string().optional().describe("Optional help text, rendered as markdown (code fences, images)"),
|
|
116865
117038
|
placeholder: string().optional().describe("Placeholder text (for text type)"),
|
|
116866
117039
|
multiline: boolean().optional().describe("Use textarea instead of input (for text type)"),
|
|
116867
117040
|
options: array(object({
|
|
@@ -116877,7 +117050,7 @@ var registerRequestHumanInputTool = (server) => {
|
|
|
116877
117050
|
createToolRegistrar(server)("request-human-input", {
|
|
116878
117051
|
title: "Request human input",
|
|
116879
117052
|
annotations: { destructiveHint: false },
|
|
116880
|
-
description: "Create an approval request and return at once with the request id and URL. The answer arrives later as a hitl-follow-up task. " + "Supports multiple question types: approval (yes/no), text, single-select, " + "multi-select, and boolean. Returns the request ID and URL for the human to respond.",
|
|
117053
|
+
description: "Create an approval request and return at once with the request id and URL. The answer arrives later as a hitl-follow-up task. " + "Supports multiple question types: approval (yes/no), text, single-select, " + "multi-select, and boolean. Returns the request ID and URL for the human to respond. " + "The dashboard renders each label and description as markdown: put long content in description, fence code with a language, and put an image URL alone on its own line to show it. " + "No Slack message is sent; share the URL yourself.",
|
|
116881
117054
|
inputSchema: object({
|
|
116882
117055
|
title: string().min(1).describe("Title of the approval request"),
|
|
116883
117056
|
questions: array(QuestionSchema).min(1).describe("Questions to ask the human"),
|
|
@@ -117015,7 +117188,7 @@ var registerResolveUserTool = (server) => {
|
|
|
117015
117188
|
init_zod();
|
|
117016
117189
|
|
|
117017
117190
|
// src/realtime/auth.ts
|
|
117018
|
-
|
|
117191
|
+
init_db2();
|
|
117019
117192
|
init_rbac_roles();
|
|
117020
117193
|
|
|
117021
117194
|
// src/comb/config.ts
|
|
@@ -122877,7 +123050,7 @@ var removeAwarenessStates = (awareness, clients, origin) => {
|
|
|
122877
123050
|
};
|
|
122878
123051
|
|
|
122879
123052
|
// src/realtime/rooms.ts
|
|
122880
|
-
|
|
123053
|
+
init_db2();
|
|
122881
123054
|
init_secret_scrubber();
|
|
122882
123055
|
init_bus();
|
|
122883
123056
|
var ROOM_KEY_PREFIX = "_room/";
|
|
@@ -123444,6 +123617,7 @@ var registerRoomDecodeTool = (server) => {
|
|
|
123444
123617
|
// src/tools/schedules/create-schedule.ts
|
|
123445
123618
|
init_zod();
|
|
123446
123619
|
var import_cron_parser2 = __toESM(require_dist2(), 1);
|
|
123620
|
+
init_db2();
|
|
123447
123621
|
init_db();
|
|
123448
123622
|
init_types();
|
|
123449
123623
|
var createScheduleInputSchema = object({
|
|
@@ -123660,13 +123834,15 @@ var registerCreateScheduleTool = (server) => {
|
|
|
123660
123834
|
};
|
|
123661
123835
|
// src/tools/schedules/delete-schedule.ts
|
|
123662
123836
|
init_zod();
|
|
123663
|
-
|
|
123837
|
+
init_db2();
|
|
123664
123838
|
|
|
123665
123839
|
// src/be/events.ts
|
|
123666
|
-
|
|
123840
|
+
init_secret_scrubber();
|
|
123841
|
+
init_db2();
|
|
123842
|
+
init_scrub_json();
|
|
123667
123843
|
|
|
123668
123844
|
// src/be/memory/key-browser.ts
|
|
123669
|
-
|
|
123845
|
+
init_db2();
|
|
123670
123846
|
var MEMORY_KEYS_DEFAULT_PREFIX = "/longterm/";
|
|
123671
123847
|
var MEMORY_KEYS_MAX_LIMIT = 2000;
|
|
123672
123848
|
function estimateTokens(chars) {
|
|
@@ -123899,6 +124075,13 @@ function rowToSwarmEvent(row) {
|
|
|
123899
124075
|
var INSERT_EVENT_SQL = `INSERT INTO events (id, category, event, status, source, agentId, taskId,
|
|
123900
124076
|
sessionId, parentEventId, numericValue, durationMs, data, createdAt)
|
|
123901
124077
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))`;
|
|
124078
|
+
function serializeEventData(data) {
|
|
124079
|
+
const raw = JSON.stringify(data);
|
|
124080
|
+
const scrubbed = scrubSecrets(raw);
|
|
124081
|
+
if (!breaksJsonValidity(raw, scrubbed))
|
|
124082
|
+
return scrubbed;
|
|
124083
|
+
return JSON.stringify(scrubObject(data));
|
|
124084
|
+
}
|
|
123902
124085
|
async function insertEvent(db, id2, input) {
|
|
123903
124086
|
await db.run(INSERT_EVENT_SQL, [
|
|
123904
124087
|
id2,
|
|
@@ -123912,7 +124095,7 @@ async function insertEvent(db, id2, input) {
|
|
|
123912
124095
|
input.parentEventId ?? null,
|
|
123913
124096
|
input.numericValue ?? null,
|
|
123914
124097
|
input.durationMs ?? null,
|
|
123915
|
-
input.data ?
|
|
124098
|
+
input.data ? serializeEventData(input.data) : null
|
|
123916
124099
|
]);
|
|
123917
124100
|
await recordSkillInvocation(db, input, id2);
|
|
123918
124101
|
}
|
|
@@ -124121,7 +124304,7 @@ var registerDeleteScheduleTool = (server) => {
|
|
|
124121
124304
|
};
|
|
124122
124305
|
// src/tools/schedules/list-schedules.ts
|
|
124123
124306
|
init_zod();
|
|
124124
|
-
|
|
124307
|
+
init_db2();
|
|
124125
124308
|
init_types();
|
|
124126
124309
|
var scheduleRowShape = {
|
|
124127
124310
|
id: string().optional(),
|
|
@@ -124223,7 +124406,7 @@ var registerListSchedulesTool = (server) => {
|
|
|
124223
124406
|
// src/tools/schedules/patch-schedule.ts
|
|
124224
124407
|
init_zod();
|
|
124225
124408
|
var import_cron_parser3 = __toESM(require_dist2(), 1);
|
|
124226
|
-
|
|
124409
|
+
init_db2();
|
|
124227
124410
|
|
|
124228
124411
|
// src/be/schedules/validate.ts
|
|
124229
124412
|
function mergeScheduleTiming(existing, patch) {
|
|
@@ -124240,6 +124423,7 @@ function validateRecurringTiming(merged) {
|
|
|
124240
124423
|
}
|
|
124241
124424
|
|
|
124242
124425
|
// src/tools/schedules/patch-schedule.ts
|
|
124426
|
+
init_db();
|
|
124243
124427
|
init_types();
|
|
124244
124428
|
var patchScheduleInputSchema = object({
|
|
124245
124429
|
key: AssetKeySchema.optional().describe("Move to a logical namespace."),
|
|
@@ -124490,7 +124674,7 @@ var registerPatchScheduleTool = (server) => {
|
|
|
124490
124674
|
};
|
|
124491
124675
|
// src/tools/schedules/run-schedule-now.ts
|
|
124492
124676
|
init_zod();
|
|
124493
|
-
|
|
124677
|
+
init_db2();
|
|
124494
124678
|
var registerRunScheduleNowTool = (server) => {
|
|
124495
124679
|
createToolRegistrar(server)("run-schedule-now", {
|
|
124496
124680
|
title: "Run Schedule Now",
|
|
@@ -124549,6 +124733,7 @@ var registerRunScheduleNowTool = (server) => {
|
|
|
124549
124733
|
// src/tools/schedules/update-schedule.ts
|
|
124550
124734
|
init_zod();
|
|
124551
124735
|
var import_cron_parser4 = __toESM(require_dist2(), 1);
|
|
124736
|
+
init_db2();
|
|
124552
124737
|
init_db();
|
|
124553
124738
|
init_types();
|
|
124554
124739
|
var updateScheduleInputSchema = object({
|
|
@@ -124800,7 +124985,7 @@ var registerUpdateScheduleTool = (server) => {
|
|
|
124800
124985
|
};
|
|
124801
124986
|
// src/tools/script-apis.ts
|
|
124802
124987
|
init_zod();
|
|
124803
|
-
|
|
124988
|
+
init_db2();
|
|
124804
124989
|
init_rbac();
|
|
124805
124990
|
init_secret_scrubber();
|
|
124806
124991
|
var scriptApisInputSchema = object({
|
|
@@ -124973,7 +125158,7 @@ var registerScriptApisTool = (server) => {
|
|
|
124973
125158
|
|
|
124974
125159
|
// src/tools/script-connections/tool.ts
|
|
124975
125160
|
init_zod();
|
|
124976
|
-
|
|
125161
|
+
init_db2();
|
|
124977
125162
|
init_rbac();
|
|
124978
125163
|
var scriptConnectionsInputSchema = object({
|
|
124979
125164
|
action: _enum(["list", "upsert-openapi", "upsert-mcp", "upsert-graphql", "refresh", "disable"]).describe("List, create/update, refresh, or disable a script connection."),
|
|
@@ -125549,12 +125734,12 @@ var registerScriptUpsertTool = (server) => {
|
|
|
125549
125734
|
|
|
125550
125735
|
// src/tools/send-task.ts
|
|
125551
125736
|
init_zod();
|
|
125552
|
-
|
|
125737
|
+
init_db2();
|
|
125553
125738
|
init_rbac();
|
|
125554
125739
|
init_slack_routing();
|
|
125555
125740
|
|
|
125556
125741
|
// src/tools/task-dedup.ts
|
|
125557
|
-
|
|
125742
|
+
init_db2();
|
|
125558
125743
|
function jaccardSimilarity(a, b) {
|
|
125559
125744
|
const tokenize = (s) => new Set(s.toLowerCase().replace(/[^\w\s]/g, " ").split(/\s+/).filter((w) => w.length > 0));
|
|
125560
125745
|
const wordsA = tokenize(a);
|
|
@@ -126003,7 +126188,7 @@ var registerSendTaskTool = (server) => {
|
|
|
126003
126188
|
|
|
126004
126189
|
// src/tools/skills/skill-create.ts
|
|
126005
126190
|
init_zod();
|
|
126006
|
-
|
|
126191
|
+
init_db2();
|
|
126007
126192
|
init_rbac();
|
|
126008
126193
|
var registerSkillCreateTool = (server) => {
|
|
126009
126194
|
createToolRegistrar(server)("skill-create", {
|
|
@@ -126072,7 +126257,7 @@ var registerSkillCreateTool = (server) => {
|
|
|
126072
126257
|
};
|
|
126073
126258
|
// src/tools/skills/skill-delete.ts
|
|
126074
126259
|
init_zod();
|
|
126075
|
-
|
|
126260
|
+
init_db2();
|
|
126076
126261
|
init_rbac();
|
|
126077
126262
|
var SYSTEM_DEFAULT_SKILL_LOCKED_MESSAGE = "This skill is system-managed and cannot be edited from the UI; it is re-seeded on each start. Fork it under a new name to customize.";
|
|
126078
126263
|
var registerSkillDeleteTool = (server) => {
|
|
@@ -126122,7 +126307,7 @@ var registerSkillDeleteTool = (server) => {
|
|
|
126122
126307
|
};
|
|
126123
126308
|
// src/tools/skills/skill-get.ts
|
|
126124
126309
|
init_zod();
|
|
126125
|
-
|
|
126310
|
+
init_db2();
|
|
126126
126311
|
var registerSkillGetTool = (server) => {
|
|
126127
126312
|
createToolRegistrar(server)("skill-get", {
|
|
126128
126313
|
title: "Get Skill",
|
|
@@ -126161,7 +126346,7 @@ ${skill.content}`,
|
|
|
126161
126346
|
};
|
|
126162
126347
|
// src/tools/skills/skill-get-file.ts
|
|
126163
126348
|
init_zod();
|
|
126164
|
-
|
|
126349
|
+
init_db2();
|
|
126165
126350
|
var registerSkillGetFileTool = (server) => {
|
|
126166
126351
|
createToolRegistrar(server)("skill-get-file", {
|
|
126167
126352
|
title: "Get Skill File",
|
|
@@ -126200,7 +126385,7 @@ ${file.content}`,
|
|
|
126200
126385
|
};
|
|
126201
126386
|
// src/tools/skills/skill-install.ts
|
|
126202
126387
|
init_zod();
|
|
126203
|
-
|
|
126388
|
+
init_db2();
|
|
126204
126389
|
init_rbac();
|
|
126205
126390
|
var registerSkillInstallTool = (server) => {
|
|
126206
126391
|
createToolRegistrar(server)("skill-install", {
|
|
@@ -126259,7 +126444,7 @@ var registerSkillInstallTool = (server) => {
|
|
|
126259
126444
|
};
|
|
126260
126445
|
// src/tools/skills/skill-install-remote.ts
|
|
126261
126446
|
init_zod();
|
|
126262
|
-
|
|
126447
|
+
init_db2();
|
|
126263
126448
|
init_rbac();
|
|
126264
126449
|
var registerSkillInstallRemoteTool = (server) => {
|
|
126265
126450
|
createToolRegistrar(server)("skill-install-remote", {
|
|
@@ -126357,7 +126542,7 @@ var registerSkillInstallRemoteTool = (server) => {
|
|
|
126357
126542
|
};
|
|
126358
126543
|
// src/tools/skills/skill-list.ts
|
|
126359
126544
|
init_zod();
|
|
126360
|
-
|
|
126545
|
+
init_db2();
|
|
126361
126546
|
function renderSkillList(skills) {
|
|
126362
126547
|
if (skills.length === 0)
|
|
126363
126548
|
return;
|
|
@@ -126407,7 +126592,7 @@ var registerSkillListTool = (server) => {
|
|
|
126407
126592
|
};
|
|
126408
126593
|
// src/tools/skills/skill-publish.ts
|
|
126409
126594
|
init_zod();
|
|
126410
|
-
|
|
126595
|
+
init_db2();
|
|
126411
126596
|
var registerSkillPublishTool = (server) => {
|
|
126412
126597
|
createToolRegistrar(server)("skill-publish", {
|
|
126413
126598
|
title: "Publish Skill",
|
|
@@ -126479,7 +126664,7 @@ To reject: close this task with a rejection reason.`;
|
|
|
126479
126664
|
};
|
|
126480
126665
|
// src/tools/skills/skill-search.ts
|
|
126481
126666
|
init_zod();
|
|
126482
|
-
|
|
126667
|
+
init_db2();
|
|
126483
126668
|
function renderSkillList2(skills) {
|
|
126484
126669
|
if (skills.length === 0)
|
|
126485
126670
|
return;
|
|
@@ -126514,7 +126699,7 @@ var registerSkillSearchTool = (server) => {
|
|
|
126514
126699
|
};
|
|
126515
126700
|
// src/tools/skills/skill-sync-remote.ts
|
|
126516
126701
|
init_zod();
|
|
126517
|
-
|
|
126702
|
+
init_db2();
|
|
126518
126703
|
function contentHash(content) {
|
|
126519
126704
|
const hash = new Bun.CryptoHasher("sha256").update(content).digest("hex");
|
|
126520
126705
|
return hash;
|
|
@@ -126606,7 +126791,7 @@ var registerSkillSyncRemoteTool = (server) => {
|
|
|
126606
126791
|
};
|
|
126607
126792
|
// src/tools/skills/skill-uninstall.ts
|
|
126608
126793
|
init_zod();
|
|
126609
|
-
|
|
126794
|
+
init_db2();
|
|
126610
126795
|
init_rbac();
|
|
126611
126796
|
var registerSkillUninstallTool = (server) => {
|
|
126612
126797
|
createToolRegistrar(server)("skill-uninstall", {
|
|
@@ -126650,7 +126835,7 @@ var registerSkillUninstallTool = (server) => {
|
|
|
126650
126835
|
};
|
|
126651
126836
|
// src/tools/skills/skill-update.ts
|
|
126652
126837
|
init_zod();
|
|
126653
|
-
|
|
126838
|
+
init_db2();
|
|
126654
126839
|
init_rbac();
|
|
126655
126840
|
var SYSTEM_DEFAULT_SKILL_LOCKED_MESSAGE2 = "This skill is system-managed and cannot be edited from the UI; it is re-seeded on each start. Fork it under a new name to customize.";
|
|
126656
126841
|
var registerSkillUpdateTool = (server) => {
|
|
@@ -126754,7 +126939,7 @@ var registerSkillUpdateTool = (server) => {
|
|
|
126754
126939
|
};
|
|
126755
126940
|
// src/tools/slack-archive-channel.ts
|
|
126756
126941
|
init_zod();
|
|
126757
|
-
|
|
126942
|
+
init_db2();
|
|
126758
126943
|
init_rbac();
|
|
126759
126944
|
|
|
126760
126945
|
// src/slack/channel-join.ts
|
|
@@ -126932,7 +127117,7 @@ var registerSlackArchiveChannelTool = (server) => {
|
|
|
126932
127117
|
|
|
126933
127118
|
// src/tools/slack-create-channel.ts
|
|
126934
127119
|
init_zod();
|
|
126935
|
-
|
|
127120
|
+
init_db2();
|
|
126936
127121
|
init_rbac();
|
|
126937
127122
|
var registerSlackCreateChannelTool = (server) => {
|
|
126938
127123
|
createToolRegistrar(server)("slack-create-channel", {
|
|
@@ -126988,7 +127173,7 @@ var registerSlackCreateChannelTool = (server) => {
|
|
|
126988
127173
|
|
|
126989
127174
|
// src/tools/slack-delete.ts
|
|
126990
127175
|
init_zod();
|
|
126991
|
-
|
|
127176
|
+
init_db2();
|
|
126992
127177
|
init_rbac();
|
|
126993
127178
|
|
|
126994
127179
|
// src/slack/message-text.ts
|
|
@@ -127206,17 +127391,17 @@ var registerSlackDeleteTool = (server) => {
|
|
|
127206
127391
|
|
|
127207
127392
|
// src/tools/slack-download-file.ts
|
|
127208
127393
|
init_zod();
|
|
127209
|
-
|
|
127394
|
+
init_db2();
|
|
127210
127395
|
|
|
127211
127396
|
// src/slack/inbound-files.ts
|
|
127212
|
-
|
|
127397
|
+
init_db2();
|
|
127213
127398
|
import { mkdtemp, rm } from "node:fs/promises";
|
|
127214
127399
|
import { tmpdir as tmpdir2 } from "node:os";
|
|
127215
127400
|
import { join as join2 } from "node:path";
|
|
127216
127401
|
|
|
127217
127402
|
// src/be/task-attachment-store.ts
|
|
127218
127403
|
init_secret_scrubber();
|
|
127219
|
-
|
|
127404
|
+
init_db2();
|
|
127220
127405
|
var MAX_TASK_ATTACHMENT_BYTES = 50 * 1024 * 1024;
|
|
127221
127406
|
async function recordTaskAttachmentUpload(input) {
|
|
127222
127407
|
const { provider, scope, uploaded, contentType } = input;
|
|
@@ -127683,7 +127868,7 @@ ${fetchCommand}`,
|
|
|
127683
127868
|
|
|
127684
127869
|
// src/tools/slack-invite-to-channel.ts
|
|
127685
127870
|
init_zod();
|
|
127686
|
-
|
|
127871
|
+
init_db2();
|
|
127687
127872
|
init_rbac();
|
|
127688
127873
|
var registerSlackInviteToChannelTool = (server) => {
|
|
127689
127874
|
createToolRegistrar(server)("slack-invite-to-channel", {
|
|
@@ -127738,7 +127923,7 @@ var registerSlackInviteToChannelTool = (server) => {
|
|
|
127738
127923
|
|
|
127739
127924
|
// src/tools/slack-list-channels.ts
|
|
127740
127925
|
init_zod();
|
|
127741
|
-
|
|
127926
|
+
init_db2();
|
|
127742
127927
|
var SlackChannelSchema = looseObject({
|
|
127743
127928
|
id: string().optional(),
|
|
127744
127929
|
name: string().optional(),
|
|
@@ -127833,7 +128018,7 @@ var registerSlackListChannelsTool = (server) => {
|
|
|
127833
128018
|
|
|
127834
128019
|
// src/tools/slack-post.ts
|
|
127835
128020
|
init_zod();
|
|
127836
|
-
|
|
128021
|
+
init_db2();
|
|
127837
128022
|
init_rbac();
|
|
127838
128023
|
var registerSlackPostTool = (server) => {
|
|
127839
128024
|
createToolRegistrar(server)("slack-post", {
|
|
@@ -127937,7 +128122,7 @@ var registerSlackPostTool = (server) => {
|
|
|
127937
128122
|
|
|
127938
128123
|
// src/tools/slack-read.ts
|
|
127939
128124
|
init_zod();
|
|
127940
|
-
|
|
128125
|
+
init_db2();
|
|
127941
128126
|
init_rbac();
|
|
127942
128127
|
var AUTO_DOWNLOAD_DIR = "/app/shared/downloads/slack";
|
|
127943
128128
|
var SlackFileSchema = looseObject({
|
|
@@ -128167,7 +128352,7 @@ ${fileList}`;
|
|
|
128167
128352
|
|
|
128168
128353
|
// src/tools/slack-reply.ts
|
|
128169
128354
|
init_zod();
|
|
128170
|
-
|
|
128355
|
+
init_db2();
|
|
128171
128356
|
var registerSlackReplyTool = (server) => {
|
|
128172
128357
|
createToolRegistrar(server)("slack-reply", {
|
|
128173
128358
|
title: "Reply to Slack thread",
|
|
@@ -128307,7 +128492,7 @@ var registerSlackReplyTool = (server) => {
|
|
|
128307
128492
|
|
|
128308
128493
|
// src/tools/slack-start-thread.ts
|
|
128309
128494
|
init_zod();
|
|
128310
|
-
|
|
128495
|
+
init_db2();
|
|
128311
128496
|
init_rbac();
|
|
128312
128497
|
var registerSlackStartThreadTool = (server) => {
|
|
128313
128498
|
createToolRegistrar(server)("slack-start-thread", {
|
|
@@ -128396,7 +128581,7 @@ var registerSlackStartThreadTool = (server) => {
|
|
|
128396
128581
|
|
|
128397
128582
|
// src/tools/slack-update.ts
|
|
128398
128583
|
init_zod();
|
|
128399
|
-
|
|
128584
|
+
init_db2();
|
|
128400
128585
|
init_rbac();
|
|
128401
128586
|
var registerSlackUpdateTool = (server) => {
|
|
128402
128587
|
createToolRegistrar(server)("slack-update", {
|
|
@@ -128483,7 +128668,7 @@ var registerSlackUpdateTool = (server) => {
|
|
|
128483
128668
|
|
|
128484
128669
|
// src/tools/slack-upload-file.ts
|
|
128485
128670
|
init_zod();
|
|
128486
|
-
|
|
128671
|
+
init_db2();
|
|
128487
128672
|
init_rbac();
|
|
128488
128673
|
var WORKSPACE_DIR = "/workspace";
|
|
128489
128674
|
function resolveTaskUploadThreadTs(task) {
|
|
@@ -128675,7 +128860,7 @@ ${triedPathsList}
|
|
|
128675
128860
|
|
|
128676
128861
|
// src/tools/steer-task.ts
|
|
128677
128862
|
init_zod();
|
|
128678
|
-
|
|
128863
|
+
init_db2();
|
|
128679
128864
|
init_steering();
|
|
128680
128865
|
init_rbac();
|
|
128681
128866
|
init_types();
|
|
@@ -128772,7 +128957,7 @@ var registerSteerTaskTool = (server) => {
|
|
|
128772
128957
|
|
|
128773
128958
|
// src/tools/store-progress.ts
|
|
128774
128959
|
init_zod();
|
|
128775
|
-
|
|
128960
|
+
init_db2();
|
|
128776
128961
|
init_rbac();
|
|
128777
128962
|
init_types();
|
|
128778
128963
|
init_secret_scrubber();
|
|
@@ -129130,7 +129315,7 @@ This check refuses once per task; the next completion is accepted and unfixed ci
|
|
|
129130
129315
|
|
|
129131
129316
|
// src/tools/swarm-config/delete-config.ts
|
|
129132
129317
|
init_zod();
|
|
129133
|
-
|
|
129318
|
+
init_db2();
|
|
129134
129319
|
init_swarm_config_guard();
|
|
129135
129320
|
init_rbac();
|
|
129136
129321
|
var registerDeleteConfigTool = (server) => {
|
|
@@ -129202,7 +129387,7 @@ var registerDeleteConfigTool = (server) => {
|
|
|
129202
129387
|
};
|
|
129203
129388
|
// src/tools/swarm-config/get-config.ts
|
|
129204
129389
|
init_zod();
|
|
129205
|
-
|
|
129390
|
+
init_db2();
|
|
129206
129391
|
init_swarm_config_guard();
|
|
129207
129392
|
init_rbac();
|
|
129208
129393
|
init_types();
|
|
@@ -129293,7 +129478,7 @@ var registerGetConfigTool = (server) => {
|
|
|
129293
129478
|
};
|
|
129294
129479
|
// src/tools/swarm-config/list-config.ts
|
|
129295
129480
|
init_zod();
|
|
129296
|
-
|
|
129481
|
+
init_db2();
|
|
129297
129482
|
init_swarm_config_guard();
|
|
129298
129483
|
init_rbac();
|
|
129299
129484
|
init_types();
|
|
@@ -129384,7 +129569,7 @@ var registerListConfigTool = (server) => {
|
|
|
129384
129569
|
};
|
|
129385
129570
|
// src/tools/swarm-config/set-config.ts
|
|
129386
129571
|
init_zod();
|
|
129387
|
-
|
|
129572
|
+
init_db2();
|
|
129388
129573
|
init_swarm_config_guard();
|
|
129389
129574
|
init_rbac();
|
|
129390
129575
|
init_types();
|
|
@@ -129562,7 +129747,7 @@ init_zod();
|
|
|
129562
129747
|
|
|
129563
129748
|
// src/be/budget-admission.ts
|
|
129564
129749
|
init_env_flag();
|
|
129565
|
-
|
|
129750
|
+
init_db2();
|
|
129566
129751
|
var killSwitchWarned = false;
|
|
129567
129752
|
function dateUtcFrom(now) {
|
|
129568
129753
|
return now.toISOString().slice(0, 10);
|
|
@@ -129628,7 +129813,7 @@ async function canClaim(agentId, nowUtc, requestedByUserId) {
|
|
|
129628
129813
|
// src/be/budget-refusal-notify.ts
|
|
129629
129814
|
init_resolver();
|
|
129630
129815
|
init_secret_scrubber();
|
|
129631
|
-
|
|
129816
|
+
init_db2();
|
|
129632
129817
|
function formatSpendSummary(ctx) {
|
|
129633
129818
|
const fmt = (n) => n === undefined ? "?" : `$${n.toFixed(2)}`;
|
|
129634
129819
|
if (ctx.cause === "agent") {
|
|
@@ -129679,7 +129864,7 @@ async function emitBudgetRefusalSideEffects(ctx, inserted) {
|
|
|
129679
129864
|
console.warn(`[budget-refusal-notify] Failed to create follow-up task for budget refusal (task=${ctx.task.id.slice(0, 8)}): ${err}`);
|
|
129680
129865
|
}
|
|
129681
129866
|
}
|
|
129682
|
-
import("./event-bus-
|
|
129867
|
+
import("./event-bus-vnfthafg.js").then(({ workflowEventBus: workflowEventBus2 }) => {
|
|
129683
129868
|
workflowEventBus2.emit("task.budget_refused", {
|
|
129684
129869
|
taskId: ctx.task.id,
|
|
129685
129870
|
agentId: ctx.agentId,
|
|
@@ -129696,7 +129881,7 @@ async function emitBudgetRefusalSideEffects(ctx, inserted) {
|
|
|
129696
129881
|
}
|
|
129697
129882
|
|
|
129698
129883
|
// src/tools/task-action.ts
|
|
129699
|
-
|
|
129884
|
+
init_db2();
|
|
129700
129885
|
init_types();
|
|
129701
129886
|
var TaskActionSchema = _enum([
|
|
129702
129887
|
"create",
|
|
@@ -130235,6 +130420,7 @@ var registerTrackerMapAgentTool = (server) => {
|
|
|
130235
130420
|
};
|
|
130236
130421
|
// src/tools/tracker/tracker-status.ts
|
|
130237
130422
|
init_zod();
|
|
130423
|
+
init_oauth();
|
|
130238
130424
|
var registerTrackerStatusTool = (server) => {
|
|
130239
130425
|
createToolRegistrar(server)("tracker-status", {
|
|
130240
130426
|
title: "Tracker Status",
|
|
@@ -130321,7 +130507,7 @@ var registerTrackerUnlinkTool = (server) => {
|
|
|
130321
130507
|
};
|
|
130322
130508
|
// src/tools/unregister-service.ts
|
|
130323
130509
|
init_zod();
|
|
130324
|
-
|
|
130510
|
+
init_db2();
|
|
130325
130511
|
var registerUnregisterServiceTool = (server) => {
|
|
130326
130512
|
createToolRegistrar(server)("unregister-service", {
|
|
130327
130513
|
title: "Unregister Service",
|
|
@@ -130376,7 +130562,7 @@ var registerUnregisterServiceTool = (server) => {
|
|
|
130376
130562
|
|
|
130377
130563
|
// src/tools/update-profile.ts
|
|
130378
130564
|
init_zod();
|
|
130379
|
-
|
|
130565
|
+
init_db2();
|
|
130380
130566
|
init_rbac();
|
|
130381
130567
|
import { mkdtemp as mkdtemp2, rm as rm2 } from "node:fs/promises";
|
|
130382
130568
|
import { tmpdir as tmpdir3 } from "node:os";
|
|
@@ -130627,7 +130813,7 @@ ${setupScript}
|
|
|
130627
130813
|
|
|
130628
130814
|
// src/tools/update-service-status.ts
|
|
130629
130815
|
init_zod();
|
|
130630
|
-
|
|
130816
|
+
init_db2();
|
|
130631
130817
|
init_types();
|
|
130632
130818
|
var serviceOutputShape2 = looseObject({
|
|
130633
130819
|
id: string().optional(),
|
|
@@ -130797,7 +130983,7 @@ var registerCancelWorkflowRunTool = (server) => {
|
|
|
130797
130983
|
};
|
|
130798
130984
|
// src/tools/workflows/create-workflow.ts
|
|
130799
130985
|
init_zod();
|
|
130800
|
-
|
|
130986
|
+
init_db2();
|
|
130801
130987
|
init_types();
|
|
130802
130988
|
|
|
130803
130989
|
// src/workflows/model-validation.ts
|
|
@@ -130924,7 +131110,7 @@ var registerCreateWorkflowTool = (server) => {
|
|
|
130924
131110
|
};
|
|
130925
131111
|
// src/tools/workflows/delete-workflow.ts
|
|
130926
131112
|
init_zod();
|
|
130927
|
-
|
|
131113
|
+
init_db2();
|
|
130928
131114
|
var registerDeleteWorkflowTool = (server) => {
|
|
130929
131115
|
createToolRegistrar(server)("delete-workflow", {
|
|
130930
131116
|
title: "Delete Workflow",
|
|
@@ -130948,7 +131134,7 @@ var registerDeleteWorkflowTool = (server) => {
|
|
|
130948
131134
|
};
|
|
130949
131135
|
// src/tools/workflows/get-workflow.ts
|
|
130950
131136
|
init_zod();
|
|
130951
|
-
|
|
131137
|
+
init_db2();
|
|
130952
131138
|
var registerGetWorkflowTool = (server) => {
|
|
130953
131139
|
createToolRegistrar(server)("get-workflow", {
|
|
130954
131140
|
title: "Get Workflow",
|
|
@@ -130979,7 +131165,7 @@ var registerGetWorkflowTool = (server) => {
|
|
|
130979
131165
|
};
|
|
130980
131166
|
// src/tools/workflows/get-workflow-run.ts
|
|
130981
131167
|
init_zod();
|
|
130982
|
-
|
|
131168
|
+
init_db2();
|
|
130983
131169
|
var STEP_VALUE_CAP = 400;
|
|
130984
131170
|
function stepValuePreview(value) {
|
|
130985
131171
|
if (value === undefined || value === null)
|
|
@@ -131019,11 +131205,11 @@ var registerGetWorkflowRunTool = (server) => {
|
|
|
131019
131205
|
})
|
|
131020
131206
|
}, async ({ id: id2 }) => {
|
|
131021
131207
|
try {
|
|
131022
|
-
const run = await getWorkflowRun(id2);
|
|
131208
|
+
const run = await getWorkflowRun(id2, "display");
|
|
131023
131209
|
if (!run) {
|
|
131024
131210
|
return toolErr(`Workflow run not found: ${id2}`, { data: { steps: [] } });
|
|
131025
131211
|
}
|
|
131026
|
-
const steps = await getWorkflowRunStepsByRunId(id2);
|
|
131212
|
+
const steps = await getWorkflowRunStepsByRunId(id2, "display");
|
|
131027
131213
|
return toolOk(`Run ${id2} status: ${run.status}.`, {
|
|
131028
131214
|
details: renderSteps(steps),
|
|
131029
131215
|
data: { run, steps }
|
|
@@ -131035,7 +131221,7 @@ var registerGetWorkflowRunTool = (server) => {
|
|
|
131035
131221
|
};
|
|
131036
131222
|
// src/tools/workflows/list-workflow-runs.ts
|
|
131037
131223
|
init_zod();
|
|
131038
|
-
|
|
131224
|
+
init_db2();
|
|
131039
131225
|
init_types();
|
|
131040
131226
|
var DEFAULT_RUN_LIMIT = 20;
|
|
131041
131227
|
var TRIGGER_DATA_SUMMARY_CAP = 400;
|
|
@@ -131119,7 +131305,7 @@ var registerListWorkflowRunsTool = (server) => {
|
|
|
131119
131305
|
};
|
|
131120
131306
|
// src/tools/workflows/list-workflows.ts
|
|
131121
131307
|
init_zod();
|
|
131122
|
-
|
|
131308
|
+
init_db2();
|
|
131123
131309
|
init_types();
|
|
131124
131310
|
var registerListWorkflowsTool = (server) => {
|
|
131125
131311
|
createToolRegistrar(server)("list-workflows", {
|
|
@@ -131152,7 +131338,7 @@ init_zod();
|
|
|
131152
131338
|
init_types();
|
|
131153
131339
|
|
|
131154
131340
|
// src/workflows/patch-definition.ts
|
|
131155
|
-
|
|
131341
|
+
init_db2();
|
|
131156
131342
|
async function patchWorkflowDefinition(options) {
|
|
131157
131343
|
const { id: id2, patch, registry, snapshotAgentId, snapshotOptional, updates } = options;
|
|
131158
131344
|
return await getDbClient().transaction(async () => {
|
|
@@ -131360,7 +131546,7 @@ var registerRetryWorkflowRunTool = (server) => {
|
|
|
131360
131546
|
};
|
|
131361
131547
|
// src/tools/workflows/trigger-workflow.ts
|
|
131362
131548
|
init_zod();
|
|
131363
|
-
|
|
131549
|
+
init_db2();
|
|
131364
131550
|
var registerTriggerWorkflowTool = (server) => {
|
|
131365
131551
|
createToolRegistrar(server)("trigger-workflow", {
|
|
131366
131552
|
title: "Trigger Workflow",
|
|
@@ -131427,7 +131613,7 @@ ${bulleted}${schemaBlock}`,
|
|
|
131427
131613
|
};
|
|
131428
131614
|
// src/tools/workflows/update-workflow.ts
|
|
131429
131615
|
init_zod();
|
|
131430
|
-
|
|
131616
|
+
init_db2();
|
|
131431
131617
|
init_types();
|
|
131432
131618
|
var registerUpdateWorkflowTool = (server) => {
|
|
131433
131619
|
createToolRegistrar(server)("update-workflow", {
|
|
@@ -131519,6 +131705,9 @@ var registerUpdateWorkflowTool = (server) => {
|
|
|
131519
131705
|
}
|
|
131520
131706
|
});
|
|
131521
131707
|
};
|
|
131708
|
+
// src/server.ts
|
|
131709
|
+
init_enabled_tools();
|
|
131710
|
+
|
|
131522
131711
|
// src/utils/scripts-only-mode.ts
|
|
131523
131712
|
init_env_flag();
|
|
131524
131713
|
function resolveScriptsOnlyMode(opts) {
|
|
@@ -131583,9 +131772,43 @@ function getEnabledCapabilities() {
|
|
|
131583
131772
|
function isScriptsOnlyMcp() {
|
|
131584
131773
|
return resolveScriptsOnlyMode({ env: process.env.SCRIPTS_ONLY_MCP });
|
|
131585
131774
|
}
|
|
131775
|
+
var loggedToolAllowlistWarnings = new Set;
|
|
131776
|
+
function warnToolAllowlistOnce(message) {
|
|
131777
|
+
if (loggedToolAllowlistWarnings.has(message))
|
|
131778
|
+
return;
|
|
131779
|
+
loggedToolAllowlistWarnings.add(message);
|
|
131780
|
+
console.warn(message);
|
|
131781
|
+
}
|
|
131782
|
+
function resolveToolAllowlist(value) {
|
|
131783
|
+
if (value === undefined)
|
|
131784
|
+
return;
|
|
131785
|
+
try {
|
|
131786
|
+
const tools = parseEnabledTools(value);
|
|
131787
|
+
if (!tools) {
|
|
131788
|
+
warnToolAllowlistOnce("[MCP] SWARM_ENABLED_TOOLS is set but lists no tools; ignoring it");
|
|
131789
|
+
}
|
|
131790
|
+
return tools;
|
|
131791
|
+
} catch {
|
|
131792
|
+
warnToolAllowlistOnce("[MCP] Invalid SWARM_ENABLED_TOOLS; ignoring it");
|
|
131793
|
+
return;
|
|
131794
|
+
}
|
|
131795
|
+
}
|
|
131796
|
+
function applyToolAllowlist(server, allowlist) {
|
|
131797
|
+
const tools = server._registeredTools;
|
|
131798
|
+
const allowed = new Set(allowlist);
|
|
131799
|
+
for (const [name, tool] of Object.entries(tools)) {
|
|
131800
|
+
if (!allowed.has(name))
|
|
131801
|
+
tool.remove();
|
|
131802
|
+
}
|
|
131803
|
+
const unknown3 = allowlist.filter((name) => !Object.hasOwn(tools, name));
|
|
131804
|
+
if (unknown3.length > 0) {
|
|
131805
|
+
warnToolAllowlistOnce(`[MCP] SWARM_ENABLED_TOOLS names unknown tools, ignoring them: ${unknown3.join(", ")}`);
|
|
131806
|
+
}
|
|
131807
|
+
}
|
|
131586
131808
|
async function createServer(opts = {}) {
|
|
131587
131809
|
await loadGlobalConfigsIntoEnv(true);
|
|
131588
|
-
const
|
|
131810
|
+
const toolAllowlist = opts.fullSurface === true ? undefined : resolveToolAllowlist(opts.enabledTools ?? process.env.SWARM_ENABLED_TOOLS);
|
|
131811
|
+
const hasCapability2 = (cap) => opts.fullSurface === true || toolAllowlist !== undefined || getCapabilities().has(cap);
|
|
131589
131812
|
initDb(process.env.DATABASE_PATH);
|
|
131590
131813
|
ensurePricingSeeded();
|
|
131591
131814
|
startPricingRefreshLoop();
|
|
@@ -131609,7 +131832,7 @@ async function createServer(opts = {}) {
|
|
|
131609
131832
|
});
|
|
131610
131833
|
if (opts.preloadedTools?.length)
|
|
131611
131834
|
setPreloadedTools(server, opts.preloadedTools);
|
|
131612
|
-
if (opts.scriptsOnly ?? isScriptsOnlyMcp()) {
|
|
131835
|
+
if (toolAllowlist === undefined && (opts.scriptsOnly ?? isScriptsOnlyMcp())) {
|
|
131613
131836
|
registerScriptSearchTool(server);
|
|
131614
131837
|
registerScriptRunTool(server);
|
|
131615
131838
|
registerScriptUpsertTool(server);
|
|
@@ -131820,6 +132043,8 @@ async function createServer(opts = {}) {
|
|
|
131820
132043
|
registerListServicesTool(server);
|
|
131821
132044
|
registerUpdateServiceStatusTool(server);
|
|
131822
132045
|
}
|
|
132046
|
+
if (toolAllowlist)
|
|
132047
|
+
applyToolAllowlist(server, toolAllowlist);
|
|
131823
132048
|
return server;
|
|
131824
132049
|
}
|
|
131825
132050
|
|
|
@@ -132718,12 +132943,12 @@ function createSwarmSdk(config) {
|
|
|
132718
132943
|
init_secret_scrubber();
|
|
132719
132944
|
|
|
132720
132945
|
// src/extensions/lifecycle.ts
|
|
132721
|
-
|
|
132946
|
+
init_db2();
|
|
132722
132947
|
init_types();
|
|
132723
132948
|
init_secret_scrubber();
|
|
132724
132949
|
|
|
132725
132950
|
// src/extensions/identity.ts
|
|
132726
|
-
|
|
132951
|
+
init_db2();
|
|
132727
132952
|
function extensionAgentName(name) {
|
|
132728
132953
|
return `ext:${name}`;
|
|
132729
132954
|
}
|
|
@@ -132901,7 +133126,7 @@ async function loadExtension(input) {
|
|
|
132901
133126
|
}
|
|
132902
133127
|
|
|
132903
133128
|
// src/extensions/post-bridge.ts
|
|
132904
|
-
|
|
133129
|
+
init_db2();
|
|
132905
133130
|
init_secret_scrubber();
|
|
132906
133131
|
init_event_bus();
|
|
132907
133132
|
var subscribed3 = false;
|
|
@@ -134385,7 +134610,7 @@ class NotifyExecutor extends BaseExecutor {
|
|
|
134385
134610
|
}
|
|
134386
134611
|
}
|
|
134387
134612
|
case "slack": {
|
|
134388
|
-
const { getSlackApp: getSlackApp2 } = await import("./app-
|
|
134613
|
+
const { getSlackApp: getSlackApp2 } = await import("./app-nctetn1e.js");
|
|
134389
134614
|
const app = getSlackApp2();
|
|
134390
134615
|
if (!app) {
|
|
134391
134616
|
return {
|
|
@@ -134515,7 +134740,8 @@ async function executeRawLlm(config) {
|
|
|
134515
134740
|
modelName = llmConfig.model;
|
|
134516
134741
|
const provider = createOpenAI({
|
|
134517
134742
|
baseURL: llmConfig.baseURL,
|
|
134518
|
-
apiKey: llmConfig.apiKey
|
|
134743
|
+
apiKey: llmConfig.apiKey,
|
|
134744
|
+
headers: llmConfig.headers
|
|
134519
134745
|
});
|
|
134520
134746
|
const model = provider(llmConfig.model);
|
|
134521
134747
|
if (config.schema) {
|
|
@@ -134738,6 +134964,7 @@ class ScriptExecutor extends BaseExecutor {
|
|
|
134738
134964
|
|
|
134739
134965
|
// src/workflows/executors/swarm-script.ts
|
|
134740
134966
|
init_zod();
|
|
134967
|
+
init_db();
|
|
134741
134968
|
init_constants();
|
|
134742
134969
|
init_template();
|
|
134743
134970
|
var SWARM_SCRIPT_DEFAULT_TIMEOUT_MS = DEFAULT_SCRIPT_RESOURCES.wallClockMs;
|
|
@@ -134975,7 +135202,8 @@ class ValidateExecutor extends BaseExecutor {
|
|
|
134975
135202
|
const llmConfig = await resolveWorkflowLlmConfig();
|
|
134976
135203
|
const provider = createOpenAI({
|
|
134977
135204
|
baseURL: llmConfig.baseURL,
|
|
134978
|
-
apiKey: llmConfig.apiKey
|
|
135205
|
+
apiKey: llmConfig.apiKey,
|
|
135206
|
+
headers: llmConfig.headers
|
|
134979
135207
|
});
|
|
134980
135208
|
const { object: object4 } = await generateObject({
|
|
134981
135209
|
model: provider(llmConfig.model),
|