@rudderhq/server 0.7.1 → 0.7.2
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/agent-runtimes/codex-models.d.ts +11 -0
- package/dist/agent-runtimes/codex-models.d.ts.map +1 -1
- package/dist/agent-runtimes/codex-models.js +155 -2
- package/dist/agent-runtimes/codex-models.js.map +1 -1
- package/dist/agent-runtimes/cursor-models.d.ts.map +1 -1
- package/dist/agent-runtimes/cursor-models.js +31 -9
- package/dist/agent-runtimes/cursor-models.js.map +1 -1
- package/dist/agent-runtimes/index.d.ts +1 -1
- package/dist/agent-runtimes/index.d.ts.map +1 -1
- package/dist/agent-runtimes/index.js +1 -1
- package/dist/agent-runtimes/index.js.map +1 -1
- package/dist/agent-runtimes/registry.d.ts +11 -4
- package/dist/agent-runtimes/registry.d.ts.map +1 -1
- package/dist/agent-runtimes/registry.js +54 -3
- package/dist/agent-runtimes/registry.js.map +1 -1
- package/dist/bundled-plugins/plugin-linear/dist/worker.js +287 -18
- package/dist/bundled-plugins/plugin-linear/dist/worker.js.map +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +86 -30
- package/dist/index.js.map +1 -1
- package/dist/redaction.d.ts +1 -0
- package/dist/redaction.d.ts.map +1 -1
- package/dist/redaction.js +13 -0
- package/dist/redaction.js.map +1 -1
- package/dist/routes/access.helpers.d.ts +1 -1
- package/dist/routes/agents.d.ts.map +1 -1
- package/dist/routes/agents.js +20 -6
- package/dist/routes/agents.js.map +1 -1
- package/dist/routes/agents.management-routes.d.ts.map +1 -1
- package/dist/routes/agents.management-routes.js +13 -10
- package/dist/routes/agents.management-routes.js.map +1 -1
- package/dist/routes/approvals.d.ts.map +1 -1
- package/dist/routes/approvals.js +77 -1
- package/dist/routes/approvals.js.map +1 -1
- package/dist/routes/chats.d.ts.map +1 -1
- package/dist/routes/chats.js +1 -0
- package/dist/routes/chats.js.map +1 -1
- package/dist/routes/chats.stream-routes.d.ts.map +1 -1
- package/dist/routes/chats.stream-routes.js +4 -0
- package/dist/routes/chats.stream-routes.js.map +1 -1
- package/dist/routes/goals.d.ts.map +1 -1
- package/dist/routes/goals.js +349 -23
- package/dist/routes/goals.js.map +1 -1
- package/dist/routes/health.d.ts.map +1 -1
- package/dist/routes/health.js +1 -0
- package/dist/routes/health.js.map +1 -1
- package/dist/routes/managed-mcp-connections.d.ts.map +1 -1
- package/dist/routes/managed-mcp-connections.js +46 -7
- package/dist/routes/managed-mcp-connections.js.map +1 -1
- package/dist/routes/product-analytics-collector-report.d.ts +29 -0
- package/dist/routes/product-analytics-collector-report.d.ts.map +1 -1
- package/dist/routes/product-analytics-collector-report.js +57 -1
- package/dist/routes/product-analytics-collector-report.js.map +1 -1
- package/dist/routes/product-analytics-collector-report.test.d.ts +2 -0
- package/dist/routes/product-analytics-collector-report.test.d.ts.map +1 -0
- package/dist/routes/product-analytics-collector-report.test.js +50 -0
- package/dist/routes/product-analytics-collector-report.test.js.map +1 -0
- package/dist/services/automation-chat-output.d.ts +1 -1
- package/dist/services/automation-chat-output.d.ts.map +1 -1
- package/dist/services/automation-chat-output.js +24 -14
- package/dist/services/automation-chat-output.js.map +1 -1
- package/dist/services/chat-annotation-copy-lineage.d.ts +1 -1
- package/dist/services/chat-assistant.d.ts.map +1 -1
- package/dist/services/chat-assistant.helpers.d.ts +3 -3
- package/dist/services/chat-assistant.helpers.d.ts.map +1 -1
- package/dist/services/chat-assistant.helpers.js.map +1 -1
- package/dist/services/chat-assistant.js +34 -11
- package/dist/services/chat-assistant.js.map +1 -1
- package/dist/services/chat-assistant.runtime-overrides.d.ts +2 -1
- package/dist/services/chat-assistant.runtime-overrides.d.ts.map +1 -1
- package/dist/services/chat-assistant.runtime-overrides.js +47 -18
- package/dist/services/chat-assistant.runtime-overrides.js.map +1 -1
- package/dist/services/chat-assistant.runtime-overrides.test.d.ts +2 -0
- package/dist/services/chat-assistant.runtime-overrides.test.d.ts.map +1 -0
- package/dist/services/chat-assistant.runtime-overrides.test.js +37 -0
- package/dist/services/chat-assistant.runtime-overrides.test.js.map +1 -0
- package/dist/services/chat-generation-protocol.d.ts.map +1 -1
- package/dist/services/chat-generation-protocol.js +1 -12
- package/dist/services/chat-generation-protocol.js.map +1 -1
- package/dist/services/chat-generation-protocol.test.js +14 -23
- package/dist/services/chat-generation-protocol.test.js.map +1 -1
- package/dist/services/chat-generation-provenance.d.ts.map +1 -1
- package/dist/services/chat-generation-provenance.js +4 -2
- package/dist/services/chat-generation-provenance.js.map +1 -1
- package/dist/services/chat-queued-message-materialization.d.ts.map +1 -1
- package/dist/services/chat-queued-message-materialization.js +12 -2
- package/dist/services/chat-queued-message-materialization.js.map +1 -1
- package/dist/services/chat-transcript-persistence.d.ts +49 -0
- package/dist/services/chat-transcript-persistence.d.ts.map +1 -0
- package/dist/services/chat-transcript-persistence.js +238 -0
- package/dist/services/chat-transcript-persistence.js.map +1 -0
- package/dist/services/chat-transcript-persistence.test.d.ts +2 -0
- package/dist/services/chat-transcript-persistence.test.d.ts.map +1 -0
- package/dist/services/chat-transcript-persistence.test.js +23 -0
- package/dist/services/chat-transcript-persistence.test.js.map +1 -0
- package/dist/services/chat-work-manifest.d.ts.map +1 -1
- package/dist/services/chat-work-manifest.js +36 -10
- package/dist/services/chat-work-manifest.js.map +1 -1
- package/dist/services/chats.annotation-persistence.d.ts.map +1 -1
- package/dist/services/chats.annotation-persistence.js +25 -6
- package/dist/services/chats.annotation-persistence.js.map +1 -1
- package/dist/services/chats.create.d.ts.map +1 -1
- package/dist/services/chats.create.js +49 -4
- package/dist/services/chats.create.js.map +1 -1
- package/dist/services/chats.d.ts +8 -8
- package/dist/services/chats.d.ts.map +1 -1
- package/dist/services/chats.inline-visual-persistence.d.ts +2 -1
- package/dist/services/chats.inline-visual-persistence.d.ts.map +1 -1
- package/dist/services/chats.inline-visual-persistence.js +19 -2
- package/dist/services/chats.inline-visual-persistence.js.map +1 -1
- package/dist/services/chats.js +177 -95
- package/dist/services/chats.js.map +1 -1
- package/dist/services/finance.d.ts +1 -1
- package/dist/services/goals.d.ts +2041 -126
- package/dist/services/goals.d.ts.map +1 -1
- package/dist/services/goals.js +1533 -176
- package/dist/services/goals.js.map +1 -1
- package/dist/services/instance-settings.d.ts.map +1 -1
- package/dist/services/instance-settings.js +2 -0
- package/dist/services/instance-settings.js.map +1 -1
- package/dist/services/issues.d.ts.map +1 -1
- package/dist/services/issues.js +35 -16
- package/dist/services/issues.js.map +1 -1
- package/dist/services/mcp/managed-bindings.d.ts.map +1 -1
- package/dist/services/mcp/managed-bindings.js +11 -4
- package/dist/services/mcp/managed-bindings.js.map +1 -1
- package/dist/services/mcp/managed-connections.d.ts +19 -1
- package/dist/services/mcp/managed-connections.d.ts.map +1 -1
- package/dist/services/mcp/managed-connections.js +211 -37
- package/dist/services/mcp/managed-connections.js.map +1 -1
- package/dist/services/mcp/managed-runtime.js +1 -1
- package/dist/services/mcp/managed-runtime.js.map +1 -1
- package/dist/services/mcp/oauth.d.ts.map +1 -1
- package/dist/services/mcp/oauth.js +3 -0
- package/dist/services/mcp/oauth.js.map +1 -1
- package/dist/services/mcp/provider-registry.d.ts +24 -1
- package/dist/services/mcp/provider-registry.d.ts.map +1 -1
- package/dist/services/mcp/provider-registry.js +26 -0
- package/dist/services/mcp/provider-registry.js.map +1 -1
- package/dist/services/mcp/provider-registry.test.js +26 -0
- package/dist/services/mcp/provider-registry.test.js.map +1 -1
- package/dist/services/messenger-saved-views.d.ts.map +1 -1
- package/dist/services/messenger-saved-views.js +1 -0
- package/dist/services/messenger-saved-views.js.map +1 -1
- package/dist/services/messenger.d.ts.map +1 -1
- package/dist/services/messenger.js +16 -2
- package/dist/services/messenger.js.map +1 -1
- package/dist/services/plugin-host-services.d.ts.map +1 -1
- package/dist/services/plugin-host-services.js +5 -7
- package/dist/services/plugin-host-services.js.map +1 -1
- package/dist/services/product-analytics.d.ts +20 -4
- package/dist/services/product-analytics.d.ts.map +1 -1
- package/dist/services/product-analytics.js +47 -0
- package/dist/services/product-analytics.js.map +1 -1
- package/dist/services/product-analytics.test.js +63 -1
- package/dist/services/product-analytics.test.js.map +1 -1
- package/dist/services/run-events.d.ts +1 -1
- package/dist/services/runtime-kernel/heartbeat.d.ts +4 -0
- package/dist/services/runtime-kernel/heartbeat.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.execute.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.execute.js +51 -3
- package/dist/services/runtime-kernel/heartbeat.execute.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.js +187 -9
- package/dist/services/runtime-kernel/heartbeat.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.terminal.d.ts +3 -1
- package/dist/services/runtime-kernel/heartbeat.terminal.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.terminal.js +2 -1
- package/dist/services/runtime-kernel/heartbeat.terminal.js.map +1 -1
- package/dist/services/side-chats.d.ts.map +1 -1
- package/dist/services/side-chats.js +12 -0
- package/dist/services/side-chats.js.map +1 -1
- package/dist/services/workspace-runtime.services.d.ts +1 -1
- package/package.json +16 -14
- package/resources/bundled-skills/browser/SKILL.md +11 -4
- package/resources/bundled-skills/browser/agents/openai.yaml +2 -2
- package/resources/bundled-skills/browser/evals/trigger-evals.json +22 -0
- package/skills/browser/SKILL.md +11 -4
- package/skills/browser/agents/openai.yaml +2 -2
- package/skills/browser/evals/trigger-evals.json +22 -0
- package/ui-dist/assets/{LibraryLiveSurface-CZED7oKj.js → LibraryLiveSurface-cHCJmmsl.js} +1 -1
- package/ui-dist/assets/{abnfDiagram-VRR7QNED-BoPyIoAq.js → abnfDiagram-VRR7QNED-BORJvkew.js} +1 -1
- package/ui-dist/assets/{arc-DTYs4RCH.js → arc-DPUzhx87.js} +1 -1
- package/ui-dist/assets/{architectureDiagram-ZJ3FMSHR-BGfp2S_3.js → architectureDiagram-ZJ3FMSHR-Bz_hY8LM.js} +1 -1
- package/ui-dist/assets/{blockDiagram-677ZJIJ3-aW0EGIUf.js → blockDiagram-677ZJIJ3-Bq1X3YkP.js} +1 -1
- package/ui-dist/assets/{c4Diagram-LMCZKHZV--1itKgA2.js → c4Diagram-LMCZKHZV-BawEM9Pc.js} +1 -1
- package/ui-dist/assets/channel-C08AyYJr.js +1 -0
- package/ui-dist/assets/{chunk-2Q5K7J3B-ZIqIozPQ.js → chunk-2Q5K7J3B-D0D5ZOaA.js} +1 -1
- package/ui-dist/assets/{chunk-32BRIVSS-DiwBEZVQ.js → chunk-32BRIVSS-T90P7lug.js} +1 -1
- package/ui-dist/assets/{chunk-5VM5RSS4-CLOrTmL8.js → chunk-5VM5RSS4-jcAERTgh.js} +1 -1
- package/ui-dist/assets/{chunk-EX3LRPZG-D6xZzF47.js → chunk-EX3LRPZG-t9-JXwnR.js} +1 -1
- package/ui-dist/assets/{chunk-JWPE2WC7-B9tYvTZl.js → chunk-JWPE2WC7-hqgD1saC.js} +1 -1
- package/ui-dist/assets/{chunk-MOJQB5TN-D_qo-SzM.js → chunk-MOJQB5TN-BsSUoYzd.js} +1 -1
- package/ui-dist/assets/{chunk-RYQCIY6F-ChPHGc2P.js → chunk-RYQCIY6F-YcdDh2Zn.js} +1 -1
- package/ui-dist/assets/{chunk-V7JOEXUC-Dk6GbZYp.js → chunk-V7JOEXUC-ChFyH9Su.js} +1 -1
- package/ui-dist/assets/{chunk-VR4S4FIN-B6AREC1T.js → chunk-VR4S4FIN-BjVK8IyX.js} +1 -1
- package/ui-dist/assets/{chunk-XXDRQBXY-CUyO-JUr.js → chunk-XXDRQBXY-D-TvO9vT.js} +1 -1
- package/ui-dist/assets/classDiagram-OUVF2IWQ-BIXq6fec.js +1 -0
- package/ui-dist/assets/classDiagram-v2-EOCWNBFH-BIXq6fec.js +1 -0
- package/ui-dist/assets/{cose-bilkent-JH36ORCC-BCxIInLZ.js → cose-bilkent-JH36ORCC-DBwhASJG.js} +1 -1
- package/ui-dist/assets/{cynefin-VYW2F7L2-DqsnpnHA.js → cynefin-VYW2F7L2-SlCRmwl2.js} +1 -1
- package/ui-dist/assets/{cynefinDiagram-TSTJHNR4-BD7QQNLW.js → cynefinDiagram-TSTJHNR4-DImV6N_p.js} +1 -1
- package/ui-dist/assets/{dagre-VKFMJZFB-DaE160f7.js → dagre-VKFMJZFB-FH4Wv8Zn.js} +1 -1
- package/ui-dist/assets/{diagram-FQU43EPY-DZ0c59y8.js → diagram-FQU43EPY-CrZvQjId.js} +1 -1
- package/ui-dist/assets/{diagram-G47NLZAW-C_413g5E.js → diagram-G47NLZAW-B7IGl_T3.js} +1 -1
- package/ui-dist/assets/{diagram-NH7WQ7WH-D_o9pXB-.js → diagram-NH7WQ7WH-CB4i7H1a.js} +1 -1
- package/ui-dist/assets/{diagram-OA4YK3LP-BI2xMqiW.js → diagram-OA4YK3LP-DNyWPYY9.js} +1 -1
- package/ui-dist/assets/{diagram-WEI45ONY-hhM8R_14.js → diagram-WEI45ONY-BAhxbhpi.js} +1 -1
- package/ui-dist/assets/{ebnfDiagram-CCIWWBDH-DfFgEtmG.js → ebnfDiagram-CCIWWBDH-ClXtQ9qt.js} +1 -1
- package/ui-dist/assets/{erDiagram-Q63AITRT-CCw4ysHK.js → erDiagram-Q63AITRT-DGXiMYfn.js} +1 -1
- package/ui-dist/assets/{flowDiagram-23GEKE2U-CzC1SMmo.js → flowDiagram-23GEKE2U-CdZ-02zc.js} +1 -1
- package/ui-dist/assets/{ganttDiagram-NO4QXBWP-CbPJIrIw.js → ganttDiagram-NO4QXBWP-TxhzNpta.js} +1 -1
- package/ui-dist/assets/{gitGraphDiagram-IHSO6WYX-jCxJ66_C.js → gitGraphDiagram-IHSO6WYX-D6Q_w6wR.js} +1 -1
- package/ui-dist/assets/{graph-BfNZ9Jzj.js → graph-CxNmbpl9.js} +1 -1
- package/ui-dist/assets/{index-D00XdcOq.js → index-AkhgKOxC.js} +1 -1
- package/ui-dist/assets/{index-DiMDROQY.js → index-BA9tMBhO.js} +1 -1
- package/ui-dist/assets/{index-DmjAbzHq.js → index-BQ87dGIq.js} +1 -1
- package/ui-dist/assets/index-BmXb0yC1.css +1 -0
- package/ui-dist/assets/{index-B8q4cbOz.js → index-BoTz5S-X.js} +1 -1
- package/ui-dist/assets/{index-D_K-9VDs.js → index-BujwWE3j.js} +1 -1
- package/ui-dist/assets/{index-Chop-Dpa.js → index-Bxz75ICF.js} +1 -1
- package/ui-dist/assets/{index-BKn4zRjf.js → index-C12QC1Ex.js} +1 -1
- package/ui-dist/assets/{index-BjxRqzZK.js → index-CW21qWFm.js} +1 -1
- package/ui-dist/assets/{index-ByUFNj0O.js → index-CXnqg1Oq.js} +1 -1
- package/ui-dist/assets/{index-B3h9Vdxx.js → index-C_nwI4Yj.js} +1 -1
- package/ui-dist/assets/{index-Ck-ZNQeD.js → index-Cx6oIZPm.js} +572 -561
- package/ui-dist/assets/{index-BE1vSI6a.js → index-DU2LI7f9.js} +1 -1
- package/ui-dist/assets/{index-SkHIC7Ma.js → index-Do78GymY.js} +1 -1
- package/ui-dist/assets/{index-Bwo-C8W5.js → index-Rau2cGm0.js} +1 -1
- package/ui-dist/assets/{index-BULll2e0.js → index-kbWUQ1um.js} +1 -1
- package/ui-dist/assets/{infoDiagram-FWYZ7A6U-BkDimGw3.js → infoDiagram-FWYZ7A6U-CnJd4-Jq.js} +1 -1
- package/ui-dist/assets/{ishikawaDiagram-FXEZZL3T-BAyUfn6x.js → ishikawaDiagram-FXEZZL3T-Bq-qc3pD.js} +1 -1
- package/ui-dist/assets/{journeyDiagram-5HDEW3XC-DlbpTZHG.js → journeyDiagram-5HDEW3XC-NSmpUGUA.js} +1 -1
- package/ui-dist/assets/{kanban-definition-HUTT4EX6-Cd67S14K.js → kanban-definition-HUTT4EX6-D7pgWtfA.js} +1 -1
- package/ui-dist/assets/{layout-Dc4YEiCC.js → layout-BRuo6LWe.js} +1 -1
- package/ui-dist/assets/{linear-BhRsbD_5.js → linear-CkaWI9Nd.js} +1 -1
- package/ui-dist/assets/{map-CEWybj6z.js → map-CgA6tTpZ.js} +1 -1
- package/ui-dist/assets/{mermaid.core-CqqAFYNg.js → mermaid.core-DrXOt-P6.js} +4 -4
- package/ui-dist/assets/{mindmap-definition-LN4V7U3C-CCb-XmEi.js → mindmap-definition-LN4V7U3C-D9ImeWBe.js} +1 -1
- package/ui-dist/assets/{pegDiagram-2B236MQR-CqUV14VZ.js → pegDiagram-2B236MQR-Cq-zZ_zz.js} +1 -1
- package/ui-dist/assets/{pieDiagram-ENE6RG2P-Dn_M_GRM.js → pieDiagram-ENE6RG2P-FgNgy726.js} +1 -1
- package/ui-dist/assets/{quadrantDiagram-ABIIQ3AL-rAEhJDr2.js → quadrantDiagram-ABIIQ3AL-BxQbmGmi.js} +1 -1
- package/ui-dist/assets/{railroadDiagram-RFXS5EU6-iE2o_jkH.js → railroadDiagram-RFXS5EU6-CrpbkPH2.js} +1 -1
- package/ui-dist/assets/{requirementDiagram-TGXJPOKE-BFyKBR1h.js → requirementDiagram-TGXJPOKE-DQ-65ZW6.js} +1 -1
- package/ui-dist/assets/{sankeyDiagram-HTMAVEWB-DRa_2YB6.js → sankeyDiagram-HTMAVEWB-Bom0lMZm.js} +1 -1
- package/ui-dist/assets/{sequenceDiagram-DBY2YBRQ-BG8VIjD7.js → sequenceDiagram-DBY2YBRQ-C1MSDLDj.js} +1 -1
- package/ui-dist/assets/{sizeCapture-X5ZJPWSS-CS1xlbzG.js → sizeCapture-X5ZJPWSS-Bn1vxebD.js} +1 -1
- package/ui-dist/assets/{stateDiagram-2N3HPSRC-BSl2RUJ1.js → stateDiagram-2N3HPSRC-GRRQpmzI.js} +1 -1
- package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-KvSJhiLM.js +1 -0
- package/ui-dist/assets/{swimlanes-5IMT3BWC-BT8Hrm9J.js → swimlanes-5IMT3BWC-BcOOCZ4q.js} +2 -2
- package/ui-dist/assets/swimlanesDiagram-G3AALYLV-Cr92NnJ4.js +8 -0
- package/ui-dist/assets/{timeline-definition-FHXFAJF6-CfYIqEuQ.js → timeline-definition-FHXFAJF6-gi6amswh.js} +1 -1
- package/ui-dist/assets/{vennDiagram-L72KCM5P-C8zBH7o9.js → vennDiagram-L72KCM5P-B9uqeyQt.js} +1 -1
- package/ui-dist/assets/{wardleyDiagram-EHGQE667-D5HyFfI9.js → wardleyDiagram-EHGQE667-BnqWAMiE.js} +1 -1
- package/ui-dist/assets/{xychartDiagram-FW5EYKEG-CGItJmLx.js → xychartDiagram-FW5EYKEG-BJXKltIN.js} +1 -1
- package/ui-dist/index.html +2 -2
- package/dist/services/issue-goal-fallback.d.ts +0 -15
- package/dist/services/issue-goal-fallback.d.ts.map +0 -1
- package/dist/services/issue-goal-fallback.js +0 -27
- package/dist/services/issue-goal-fallback.js.map +0 -1
- package/ui-dist/assets/channel-DLNwhPnC.js +0 -1
- package/ui-dist/assets/classDiagram-OUVF2IWQ-JsIc-rlc.js +0 -1
- package/ui-dist/assets/classDiagram-v2-EOCWNBFH-JsIc-rlc.js +0 -1
- package/ui-dist/assets/index-CxPYXL3t.css +0 -1
- package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-DUVNSzI8.js +0 -1
- package/ui-dist/assets/swimlanesDiagram-G3AALYLV-DfLFj7sh.js +0 -8
|
@@ -1,14 +1,43 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import { models as claudeModels } from "@rudderhq/agent-runtime-claude-local";
|
|
2
|
+
import { CODEX_LOCAL_REASONING_EFFORTS_BY_MODEL, } from "@rudderhq/agent-runtime-codex-local";
|
|
3
|
+
import { models as cursorModels } from "@rudderhq/agent-runtime-cursor-local";
|
|
4
|
+
import { PI_LOCAL_THINKING_LEVELS, models as piModels, } from "@rudderhq/agent-runtime-pi-local";
|
|
5
|
+
const CODEX_LOCAL_REASONING_EFFORT_SET_BY_MODEL = new Map(Object.entries(CODEX_LOCAL_REASONING_EFFORTS_BY_MODEL)
|
|
6
|
+
.map(([model, efforts]) => [model, new Set(efforts)]));
|
|
7
|
+
const PI_LOCAL_THINKING_LEVEL_SET = new Set(PI_LOCAL_THINKING_LEVELS);
|
|
8
|
+
function supportedEffortsForRuntime(agentRuntimeType, model, catalog) {
|
|
9
|
+
const normalizedModel = model.toLowerCase();
|
|
10
|
+
if (catalog) {
|
|
11
|
+
const catalogModel = catalog.find((candidate) => candidate.id.toLowerCase() === normalizedModel);
|
|
12
|
+
if (!catalogModel)
|
|
13
|
+
return new Set();
|
|
14
|
+
if (catalogModel.variants !== undefined)
|
|
15
|
+
return new Set(catalogModel.variants);
|
|
16
|
+
return new Set();
|
|
17
|
+
}
|
|
18
|
+
if (agentRuntimeType === "codex_local") {
|
|
19
|
+
return CODEX_LOCAL_REASONING_EFFORT_SET_BY_MODEL.get(normalizedModel) ?? new Set();
|
|
20
|
+
}
|
|
21
|
+
if (agentRuntimeType === "claude_local") {
|
|
22
|
+
const catalogModel = claudeModels.find((candidate) => candidate.id.toLowerCase() === normalizedModel);
|
|
23
|
+
return catalogModel ? new Set(catalogModel.variants ?? []) : new Set();
|
|
24
|
+
}
|
|
25
|
+
if (agentRuntimeType === "cursor") {
|
|
26
|
+
const catalogModel = cursorModels.find((candidate) => candidate.id.toLowerCase() === normalizedModel);
|
|
27
|
+
return catalogModel?.variants ? new Set(catalogModel.variants) : new Set();
|
|
28
|
+
}
|
|
29
|
+
if (agentRuntimeType === "pi_local") {
|
|
30
|
+
if (!catalog)
|
|
31
|
+
return PI_LOCAL_THINKING_LEVEL_SET;
|
|
32
|
+
const catalogModel = piModels.find((candidate) => candidate.id.toLowerCase() === normalizedModel);
|
|
33
|
+
if (!catalogModel)
|
|
34
|
+
return new Set();
|
|
35
|
+
return catalogModel.variants ? new Set(catalogModel.variants) : new Set();
|
|
36
|
+
}
|
|
37
|
+
if (agentRuntimeType === "opencode_local")
|
|
38
|
+
return undefined;
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
12
41
|
function safeTrim(value) {
|
|
13
42
|
return value?.trim() || null;
|
|
14
43
|
}
|
|
@@ -21,7 +50,7 @@ export function chatEffortKeyForRuntime(agentRuntimeType) {
|
|
|
21
50
|
if (agentRuntimeType === "codex_local")
|
|
22
51
|
return "modelReasoningEffort";
|
|
23
52
|
if (agentRuntimeType === "cursor")
|
|
24
|
-
return "
|
|
53
|
+
return "effort";
|
|
25
54
|
if (agentRuntimeType === "opencode_local")
|
|
26
55
|
return "variant";
|
|
27
56
|
if (agentRuntimeType === "pi_local")
|
|
@@ -51,7 +80,7 @@ function clearChatEffort(agentRuntimeType, agentRuntimeConfig) {
|
|
|
51
80
|
delete nextConfig.reasoningEffort;
|
|
52
81
|
return nextConfig;
|
|
53
82
|
}
|
|
54
|
-
export function applyChatRuntimeOverrides(agentRuntimeType, agentRuntimeConfig, model, effort) {
|
|
83
|
+
export function applyChatRuntimeOverrides(agentRuntimeType, agentRuntimeConfig, model, effort, catalog) {
|
|
55
84
|
const selectedModel = safeTrim(model);
|
|
56
85
|
let nextConfig = selectedModel
|
|
57
86
|
? { ...agentRuntimeConfig, model: selectedModel }
|
|
@@ -64,16 +93,16 @@ export function applyChatRuntimeOverrides(agentRuntimeType, agentRuntimeConfig,
|
|
|
64
93
|
nextConfig[effortKey] = selectedEffort;
|
|
65
94
|
}
|
|
66
95
|
}
|
|
67
|
-
if (agentRuntimeType !== "codex_local")
|
|
68
|
-
return nextConfig;
|
|
69
96
|
const effectiveModel = selectedModel
|
|
70
97
|
?? safeTrim(typeof nextConfig.model === "string" ? nextConfig.model : null);
|
|
71
98
|
const effectiveEffort = chatEffortFromConfig(agentRuntimeType, nextConfig);
|
|
72
99
|
if (!effectiveModel || !effectiveEffort)
|
|
73
100
|
return nextConfig;
|
|
74
|
-
const supportedEfforts =
|
|
75
|
-
|
|
76
|
-
|
|
101
|
+
const supportedEfforts = supportedEffortsForRuntime(agentRuntimeType, effectiveModel, catalog);
|
|
102
|
+
if (supportedEfforts === undefined)
|
|
103
|
+
return nextConfig;
|
|
104
|
+
if (supportedEfforts === null)
|
|
105
|
+
return clearChatEffort(agentRuntimeType, nextConfig);
|
|
77
106
|
return supportedEfforts.has(effectiveEffort.toLowerCase())
|
|
78
107
|
? nextConfig
|
|
79
108
|
: clearChatEffort(agentRuntimeType, nextConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-assistant.runtime-overrides.js","sourceRoot":"","sources":["../../src/services/chat-assistant.runtime-overrides.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"chat-assistant.runtime-overrides.js","sourceRoot":"","sources":["../../src/services/chat-assistant.runtime-overrides.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-assistant.runtime-overrides.test.d.ts","sourceRoot":"","sources":["../../src/services/chat-assistant.runtime-overrides.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import { applyChatRuntimeOverrides } from "./chat-assistant.runtime-overrides.js";
|
|
3
|
+
describe("chat assistant runtime overrides", () => {
|
|
4
|
+
it("rejects the legacy Light label for Codex CLI reasoning", () => {
|
|
5
|
+
const result = applyChatRuntimeOverrides("codex_local", {
|
|
6
|
+
model: "gpt-5.6-sol",
|
|
7
|
+
modelReasoningEffort: "light",
|
|
8
|
+
reasoningEffort: "light",
|
|
9
|
+
}, "gpt-5.6-sol", undefined);
|
|
10
|
+
expect(result).not.toHaveProperty("modelReasoningEffort");
|
|
11
|
+
expect(result).not.toHaveProperty("reasoningEffort");
|
|
12
|
+
});
|
|
13
|
+
it("keeps official Codex CLI reasoning levels for the selected model", () => {
|
|
14
|
+
const result = applyChatRuntimeOverrides("codex_local", { model: "gpt-5.6-sol" }, "gpt-5.6-sol", "low");
|
|
15
|
+
expect(result).toMatchObject({
|
|
16
|
+
model: "gpt-5.6-sol",
|
|
17
|
+
modelReasoningEffort: "low",
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
it("clears unsupported Claude and Pi effort values before runtime execution", () => {
|
|
21
|
+
expect(applyChatRuntimeOverrides("claude_local", { model: "claude-haiku-4-6", effort: "high" }, "claude-haiku-4-6", undefined)).not.toHaveProperty("effort");
|
|
22
|
+
expect(applyChatRuntimeOverrides("pi_local", { model: "kimi-coding/kimi-for-coding", thinking: "invalid" }, "kimi-coding/kimi-for-coding", undefined)).not.toHaveProperty("thinking");
|
|
23
|
+
expect(applyChatRuntimeOverrides("pi_local", { model: "kimi-coding/kimi-for-coding", thinking: "high" }, "kimi-coding/kimi-for-coding", undefined, [{ id: "kimi-coding/kimi-for-coding", label: "Kimi for Coding", capabilities: { reasoning: true } }])).not.toHaveProperty("thinking");
|
|
24
|
+
expect(applyChatRuntimeOverrides("pi_local", { model: "kimi-coding/kimi-for-coding", thinking: "high" }, "kimi-coding/kimi-for-coding", undefined)).toMatchObject({ thinking: "high" });
|
|
25
|
+
expect(applyChatRuntimeOverrides("opencode_local", { model: "openai/gpt-5.6-luna", variant: "max" }, "openai/gpt-5.6-luna", undefined)).toMatchObject({ variant: "max" });
|
|
26
|
+
expect(applyChatRuntimeOverrides("pi_local", { model: "kimi-coding/kimi-for-coding", thinking: "invalid" }, "kimi-coding/kimi-for-coding", undefined)).not.toHaveProperty("thinking");
|
|
27
|
+
});
|
|
28
|
+
it("uses the discovered model catalog for OpenCode, Pi, and Cursor overrides", () => {
|
|
29
|
+
expect(applyChatRuntimeOverrides("codex_local", { model: "gpt-5.6-sol", modelReasoningEffort: "high" }, "gpt-5.6-sol", undefined, [{ id: "gpt-5.6-sol", label: "GPT-5.6 Sol", variants: ["low", "medium"] }])).not.toHaveProperty("modelReasoningEffort");
|
|
30
|
+
expect(applyChatRuntimeOverrides("opencode_local", { model: "opencode/model-a", variant: "max" }, "opencode/model-a", undefined, [{ id: "opencode/model-a", label: "Model A", variants: ["low", "medium"] }])).not.toHaveProperty("variant");
|
|
31
|
+
expect(applyChatRuntimeOverrides("pi_local", { model: "openai/gpt-5.6-luna", thinking: "xhigh" }, "openai/gpt-5.6-luna", undefined, [{ id: "openai/gpt-5.6-luna", label: "GPT-5.6 Luna", variants: ["off", "minimal", "low", "medium", "high", "xhigh"] }])).toMatchObject({ thinking: "xhigh" });
|
|
32
|
+
expect(applyChatRuntimeOverrides("cursor", { model: "gpt-5.3-codex", effort: "high" }, "gpt-5.3-codex", undefined, [{ id: "gpt-5.3-codex", label: "GPT-5.3 Codex", variants: ["low", "high"] }])).toMatchObject({ effort: "high" });
|
|
33
|
+
expect(applyChatRuntimeOverrides("cursor", { model: "gpt-5.3-codex", mode: "plan", effort: "high" }, "gpt-5.3-codex", undefined, [{ id: "gpt-5.3-codex", label: "GPT-5.3 Codex", variants: ["low", "high"] }])).toMatchObject({ mode: "plan", effort: "high" });
|
|
34
|
+
expect(applyChatRuntimeOverrides("opencode_local", { model: "opencode/unknown", variant: "max" }, "opencode/unknown", undefined, [{ id: "opencode/known", label: "Known", variants: ["low", "medium"] }])).not.toHaveProperty("variant");
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=chat-assistant.runtime-overrides.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-assistant.runtime-overrides.test.js","sourceRoot":"","sources":["../../src/services/chat-assistant.runtime-overrides.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-generation-protocol.d.ts","sourceRoot":"","sources":["../../src/services/chat-generation-protocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,4BAA4B,EAE5B,kBAAkB,EACnB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAOL,KAAK,iBAAiB,EACtB,KAAK,iCAAiC,EACvC,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-generation-protocol.d.ts","sourceRoot":"","sources":["../../src/services/chat-generation-protocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,6 @@ import { randomUUID } from "node:crypto";
|
|
|
4
4
|
import { conflict, notFound, unprocessable } from "../errors.js";
|
|
5
5
|
import { assertGenerationFence, EMPTY_BODY_SHA256, lockGeneration, nextGenerationSeq, normalizeBodyHash, SHA256_PATTERN, } from "./chat-generation-protocol.helpers.js";
|
|
6
6
|
import { freezeAssistantMessageProjection, visibleGenerationProjectionThrough, } from "./chat-generation-provenance.js";
|
|
7
|
-
import { withPersistedTranscript } from "./chats.helpers.js";
|
|
8
7
|
import { normalizeLocalLibraryPathMarkdown } from "./library-path-markdown.js";
|
|
9
8
|
import { sanitizePostgresJsonValue } from "./postgres-json.js";
|
|
10
9
|
export { hashChatGenerationBody } from "./chat-generation-protocol.helpers.js";
|
|
@@ -217,7 +216,6 @@ export function chatGenerationProtocolService(db) {
|
|
|
217
216
|
.set({
|
|
218
217
|
status: "streaming",
|
|
219
218
|
body: durableBody,
|
|
220
|
-
structuredPayload,
|
|
221
219
|
...(input.runId !== undefined ? { runId: input.runId } : {}),
|
|
222
220
|
...(input.replyingAgentId !== undefined ? { replyingAgentId: input.replyingAgentId } : {}),
|
|
223
221
|
updatedAt: new Date(),
|
|
@@ -251,18 +249,9 @@ export function chatGenerationProtocolService(db) {
|
|
|
251
249
|
if (event.eventKind !== "transcript") {
|
|
252
250
|
return { generation, message, event };
|
|
253
251
|
}
|
|
254
|
-
const projection = await visibleGenerationProjectionThrough(tx, generation.id, event.generationSeq);
|
|
255
|
-
const [messageWithProvenance] = await tx
|
|
256
|
-
.update(chatMessages)
|
|
257
|
-
.set({
|
|
258
|
-
structuredPayload: withPersistedTranscript(message.structuredPayload, projection.transcript),
|
|
259
|
-
updatedAt: new Date(),
|
|
260
|
-
})
|
|
261
|
-
.where(eq(chatMessages.id, message.id))
|
|
262
|
-
.returning();
|
|
263
252
|
return {
|
|
264
253
|
generation,
|
|
265
|
-
message
|
|
254
|
+
message,
|
|
266
255
|
event,
|
|
267
256
|
};
|
|
268
257
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-generation-protocol.js","sourceRoot":"","sources":["../../src/services/chat-generation-protocol.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat-generation-protocol.js","sourceRoot":"","sources":["../../src/services/chat-generation-protocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { applyPendingMigrations, chatControlActions, chatConversations, chatGenerationEvents, chatGenerations, chatGenerationTerminalOutbox, chatMessages, chatQueuedMessages, createDb, ensurePostgresDatabase, organizations, } from "@rudderhq/db";
|
|
1
|
+
import { applyPendingMigrations, chatControlActions, chatConversations, chatGenerationEvents, chatGenerations, chatGenerationTerminalOutbox, chatMessages, chatMessageTranscriptEntries, chatQueuedMessages, createDb, ensurePostgresDatabase, organizations, } from "@rudderhq/db";
|
|
2
2
|
import { deriveOrganizationUrlKey } from "@rudderhq/shared";
|
|
3
3
|
import { asc, eq } from "drizzle-orm";
|
|
4
4
|
import { randomUUID } from "node:crypto";
|
|
@@ -156,7 +156,7 @@ describe("chatGenerationProtocolService", () => {
|
|
|
156
156
|
terminalReason: "control_owner_stale",
|
|
157
157
|
});
|
|
158
158
|
});
|
|
159
|
-
it("keeps streaming transcript evidence in the ledger
|
|
159
|
+
it("keeps streaming transcript evidence in the ledger without rewriting message JSON", async () => {
|
|
160
160
|
const generation = await seedGeneration();
|
|
161
161
|
const entry = {
|
|
162
162
|
kind: "thinking",
|
|
@@ -196,14 +196,7 @@ describe("chatGenerationProtocolService", () => {
|
|
|
196
196
|
.select()
|
|
197
197
|
.from(chatGenerationEvents)
|
|
198
198
|
.where(eq(chatGenerationEvents.id, projection.event.id));
|
|
199
|
-
expect(persistedMessage?.structuredPayload).
|
|
200
|
-
__chatTranscript: [{
|
|
201
|
-
...entry,
|
|
202
|
-
generationId: generation.id,
|
|
203
|
-
generationSeqStart: projection.event.generationSeq,
|
|
204
|
-
generationSeqEnd: projection.event.generationSeq,
|
|
205
|
-
}],
|
|
206
|
-
});
|
|
199
|
+
expect(persistedMessage?.structuredPayload).toBeNull();
|
|
207
200
|
expect(persistedEvent?.payload).toEqual(expect.objectContaining({ entry }));
|
|
208
201
|
expect(JSON.stringify(persistedEvent?.payload).length).toBeLessThan(1_024);
|
|
209
202
|
});
|
|
@@ -289,12 +282,17 @@ describe("chatGenerationProtocolService", () => {
|
|
|
289
282
|
.from(chatMessages)
|
|
290
283
|
.where(eq(chatMessages.id, message.id))
|
|
291
284
|
.then((rows) => rows[0]);
|
|
292
|
-
expect(persistedMessage?.structuredPayload).
|
|
293
|
-
|
|
285
|
+
expect(persistedMessage?.structuredPayload).toBeNull();
|
|
286
|
+
const persistedEntries = await db
|
|
287
|
+
.select({ payload: chatMessageTranscriptEntries.payload })
|
|
288
|
+
.from(chatMessageTranscriptEntries)
|
|
289
|
+
.where(eq(chatMessageTranscriptEntries.messageId, message.id));
|
|
290
|
+
expect(persistedEntries).toEqual([{
|
|
291
|
+
payload: expect.objectContaining({
|
|
294
292
|
kind: "tool_result",
|
|
295
|
-
content:
|
|
296
|
-
}
|
|
297
|
-
|
|
293
|
+
content: `non-stream${String.fromCharCode(0xfffd)}output`,
|
|
294
|
+
}),
|
|
295
|
+
}]);
|
|
298
296
|
});
|
|
299
297
|
it("serializes visible events and applies an idempotent Stop cutoff", async () => {
|
|
300
298
|
const generation = await seedGeneration();
|
|
@@ -752,14 +750,7 @@ describe("chatGenerationProtocolService", () => {
|
|
|
752
750
|
.select()
|
|
753
751
|
.from(chatMessages)
|
|
754
752
|
.where(eq(chatMessages.id, first.message.id));
|
|
755
|
-
expect(persistedBeforeStop?.structuredPayload
|
|
756
|
-
expect.objectContaining({
|
|
757
|
-
text: "Inspect the source.",
|
|
758
|
-
generationId: generation.id,
|
|
759
|
-
generationSeqStart: first.event.generationSeq,
|
|
760
|
-
generationSeqEnd: second.event.generationSeq,
|
|
761
|
-
}),
|
|
762
|
-
]);
|
|
753
|
+
expect(persistedBeforeStop?.structuredPayload).toBeNull();
|
|
763
754
|
await protocol.beginStopAction({
|
|
764
755
|
orgId: generation.orgId,
|
|
765
756
|
conversationId: generation.conversationId,
|