@rudderhq/server 0.7.10 → 0.7.12
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/bootstrap/register-api-routes.d.ts.map +1 -1
- package/dist/bootstrap/register-api-routes.js +1 -1
- package/dist/bootstrap/register-api-routes.js.map +1 -1
- package/dist/bootstrap/types.d.ts +7 -0
- package/dist/bootstrap/types.d.ts.map +1 -1
- package/dist/index.js +18 -3
- package/dist/index.js.map +1 -1
- package/dist/routes/agents.management-routes.d.ts.map +1 -1
- package/dist/routes/agents.management-routes.js +2 -0
- package/dist/routes/agents.management-routes.js.map +1 -1
- package/dist/routes/chats.d.ts +2 -1
- package/dist/routes/chats.d.ts.map +1 -1
- package/dist/routes/chats.js +356 -7
- 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 +55 -3
- package/dist/routes/chats.stream-routes.js.map +1 -1
- package/dist/routes/goals.d.ts.map +1 -1
- package/dist/routes/goals.js +68 -7
- package/dist/routes/goals.js.map +1 -1
- package/dist/routes/issues.mutations.d.ts.map +1 -1
- package/dist/routes/issues.mutations.js +3 -0
- package/dist/routes/issues.mutations.js.map +1 -1
- package/dist/routes/orgs.d.ts.map +1 -1
- package/dist/routes/orgs.js +22 -1
- package/dist/routes/orgs.js.map +1 -1
- package/dist/routes/run-intelligence.d.ts.map +1 -1
- package/dist/routes/run-intelligence.js +9 -0
- package/dist/routes/run-intelligence.js.map +1 -1
- package/dist/services/agent-instructions.d.ts +1 -0
- package/dist/services/agent-instructions.d.ts.map +1 -1
- package/dist/services/agent-instructions.js +124 -6
- package/dist/services/agent-instructions.js.map +1 -1
- package/dist/services/agent-run-context.d.ts.map +1 -1
- package/dist/services/agent-run-context.js +15 -0
- package/dist/services/agent-run-context.js.map +1 -1
- package/dist/services/agent-startup-context.d.ts +5 -1
- package/dist/services/agent-startup-context.d.ts.map +1 -1
- package/dist/services/agent-startup-context.js +67 -14
- package/dist/services/agent-startup-context.js.map +1 -1
- package/dist/services/agents.d.ts +218 -0
- package/dist/services/agents.d.ts.map +1 -1
- package/dist/services/automations.d.ts.map +1 -1
- package/dist/services/automations.js +3 -0
- package/dist/services/automations.js.map +1 -1
- package/dist/services/chat-agent-runs.d.ts +47 -1
- package/dist/services/chat-agent-runs.d.ts.map +1 -1
- package/dist/services/chat-agent-runs.js +91 -1
- package/dist/services/chat-agent-runs.js.map +1 -1
- package/dist/services/chat-assistant.d.ts.map +1 -1
- package/dist/services/chat-assistant.helpers.d.ts +12 -3
- package/dist/services/chat-assistant.helpers.d.ts.map +1 -1
- package/dist/services/chat-assistant.helpers.js +3 -0
- package/dist/services/chat-assistant.helpers.js.map +1 -1
- package/dist/services/chat-assistant.js +65 -19
- package/dist/services/chat-assistant.js.map +1 -1
- package/dist/services/chat-generation-protocol.d.ts +119 -0
- package/dist/services/chat-generation-protocol.d.ts.map +1 -1
- package/dist/services/chat-generation-protocol.js +65 -0
- package/dist/services/chat-generation-protocol.js.map +1 -1
- package/dist/services/chats.constants.d.ts +1 -1
- package/dist/services/chats.constants.d.ts.map +1 -1
- package/dist/services/chats.constants.js +1 -0
- package/dist/services/chats.constants.js.map +1 -1
- package/dist/services/chats.d.ts +213 -0
- package/dist/services/chats.d.ts.map +1 -1
- package/dist/services/chats.js +46 -1
- package/dist/services/chats.js.map +1 -1
- package/dist/services/goals.d.ts +133 -5
- package/dist/services/goals.d.ts.map +1 -1
- package/dist/services/goals.js +260 -3
- package/dist/services/goals.js.map +1 -1
- package/dist/services/heartbeat-run-reference.d.ts.map +1 -1
- package/dist/services/heartbeat-run-reference.js +11 -5
- package/dist/services/heartbeat-run-reference.js.map +1 -1
- package/dist/services/index.d.ts +2 -1
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +2 -1
- package/dist/services/index.js.map +1 -1
- package/dist/services/integrations/feishu/runtime.d.ts +8 -0
- package/dist/services/integrations/feishu/runtime.d.ts.map +1 -1
- package/dist/services/integrations/feishu/runtime.js +124 -1
- package/dist/services/integrations/feishu/runtime.js.map +1 -1
- package/dist/services/issues.d.ts.map +1 -1
- package/dist/services/issues.helpers.d.ts +8 -0
- package/dist/services/issues.helpers.d.ts.map +1 -1
- package/dist/services/issues.helpers.js +17 -1
- package/dist/services/issues.helpers.js.map +1 -1
- package/dist/services/issues.js +108 -15
- package/dist/services/issues.js.map +1 -1
- package/dist/services/messenger.d.ts.map +1 -1
- package/dist/services/messenger.js +12 -3
- package/dist/services/messenger.js.map +1 -1
- package/dist/services/organization-members.d.ts +27 -0
- package/dist/services/organization-members.d.ts.map +1 -0
- package/dist/services/organization-members.js +169 -0
- package/dist/services/organization-members.js.map +1 -0
- package/dist/services/organization-workspace-browser.d.ts.map +1 -1
- package/dist/services/organization-workspace-browser.js +44 -10
- package/dist/services/organization-workspace-browser.js.map +1 -1
- package/dist/services/product-intelligence.d.ts.map +1 -1
- package/dist/services/product-intelligence.js +4 -0
- package/dist/services/product-intelligence.js.map +1 -1
- package/dist/services/projects.d.ts +1 -4
- package/dist/services/projects.d.ts.map +1 -1
- package/dist/services/projects.js +27 -2
- package/dist/services/projects.js.map +1 -1
- package/dist/services/rudder-plugin-catalog.d.ts +1 -1
- package/dist/services/rudder-plugin-catalog.d.ts.map +1 -1
- package/dist/services/rudder-plugin-catalog.js +281 -15
- package/dist/services/rudder-plugin-catalog.js.map +1 -1
- package/dist/services/rudder-plugin-catalog.test.js +55 -0
- package/dist/services/rudder-plugin-catalog.test.js.map +1 -1
- package/dist/services/run-intelligence.d.ts.map +1 -1
- package/dist/services/run-intelligence.js +2 -1
- package/dist/services/run-intelligence.js.map +1 -1
- package/dist/services/run-log-store.d.ts +3 -0
- package/dist/services/run-log-store.d.ts.map +1 -1
- package/dist/services/run-log-store.js +124 -18
- package/dist/services/run-log-store.js.map +1 -1
- package/dist/services/runtime-kernel/assignment-run-guardrail.d.ts +80 -23
- package/dist/services/runtime-kernel/assignment-run-guardrail.d.ts.map +1 -1
- package/dist/services/runtime-kernel/assignment-run-guardrail.js +230 -5
- package/dist/services/runtime-kernel/assignment-run-guardrail.js.map +1 -1
- package/dist/services/runtime-kernel/assignment-run-guardrail.test.js +122 -2
- package/dist/services/runtime-kernel/assignment-run-guardrail.test.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat-attempt-ledger.d.ts +124 -0
- package/dist/services/runtime-kernel/heartbeat-attempt-ledger.d.ts.map +1 -0
- package/dist/services/runtime-kernel/heartbeat-attempt-ledger.js +108 -0
- package/dist/services/runtime-kernel/heartbeat-attempt-ledger.js.map +1 -0
- package/dist/services/runtime-kernel/heartbeat.core.d.ts +111 -0
- package/dist/services/runtime-kernel/heartbeat.core.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.core.js +13 -0
- package/dist/services/runtime-kernel/heartbeat.core.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.d.ts +34 -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 +312 -16
- package/dist/services/runtime-kernel/heartbeat.execute.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.js +205 -8
- package/dist/services/runtime-kernel/heartbeat.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.sessions.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.sessions.js +15 -3
- package/dist/services/runtime-kernel/heartbeat.sessions.js.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.terminal.d.ts +48 -0
- package/dist/services/runtime-kernel/heartbeat.terminal.d.ts.map +1 -1
- package/dist/services/runtime-kernel/heartbeat.wakeup.js +1 -1
- package/dist/services/runtime-kernel/heartbeat.wakeup.js.map +1 -1
- package/dist/services/runtime-kernel/model-fallback.d.ts +4 -0
- package/dist/services/runtime-kernel/model-fallback.d.ts.map +1 -1
- package/dist/services/runtime-kernel/model-fallback.js +25 -4
- package/dist/services/runtime-kernel/model-fallback.js.map +1 -1
- package/dist/services/workspace-backup-v2.d.ts +20 -0
- package/dist/services/workspace-backup-v2.d.ts.map +1 -1
- package/dist/services/workspace-backup-v2.js +155 -23
- package/dist/services/workspace-backup-v2.js.map +1 -1
- package/dist/services/workspace-backup-v2.test.js +34 -2
- package/dist/services/workspace-backup-v2.test.js.map +1 -1
- package/dist/services/workspace-backups.d.ts +0 -1
- package/dist/services/workspace-backups.d.ts.map +1 -1
- package/dist/services/workspace-backups.js +18 -19
- package/dist/services/workspace-backups.js.map +1 -1
- package/dist/services/workspace-manifest-native.d.ts +10 -0
- package/dist/services/workspace-manifest-native.d.ts.map +1 -0
- package/dist/services/workspace-manifest-native.js +219 -0
- package/dist/services/workspace-manifest-native.js.map +1 -0
- package/dist/services/workspace-restore-reconciliation.d.ts +11 -0
- package/dist/services/workspace-restore-reconciliation.d.ts.map +1 -0
- package/dist/services/workspace-restore-reconciliation.js +165 -0
- package/dist/services/workspace-restore-reconciliation.js.map +1 -0
- package/package.json +14 -14
- package/resources/bundled-skills/rudder-docs/references/api-reference.md +8 -0
- package/resources/bundled-skills/rudder-docs/references/cli-reference.md +14 -8
- package/skills/rudder-docs/references/api-reference.md +8 -0
- package/skills/rudder-docs/references/cli-reference.md +14 -8
- package/ui-dist/assets/LibraryLiveSurface-tCWxJKp5.js +1 -0
- package/ui-dist/assets/{abnfDiagram-VRR7QNED-CG3j5RmW.js → abnfDiagram-VRR7QNED-BcCms-hs.js} +1 -1
- package/ui-dist/assets/{addon-fit-D07m_e8_.js → addon-fit-CH3xNHN4.js} +1 -1
- package/ui-dist/assets/{arc-B2RI9_Dw.js → arc-h5W-EkRK.js} +1 -1
- package/ui-dist/assets/{architectureDiagram-ZJ3FMSHR-C5v1tMZi.js → architectureDiagram-ZJ3FMSHR-Bdehm1PB.js} +1 -1
- package/ui-dist/assets/{blockDiagram-677ZJIJ3-CgcSNhl8.js → blockDiagram-677ZJIJ3-BJ3W91Su.js} +1 -1
- package/ui-dist/assets/{c4Diagram-LMCZKHZV-B7qmWb0f.js → c4Diagram-LMCZKHZV-Bnft_fRy.js} +1 -1
- package/ui-dist/assets/channel-G6qIOCiV.js +1 -0
- package/ui-dist/assets/{chunk-2Q5K7J3B-cNlq0MJR.js → chunk-2Q5K7J3B-w1SF0tSk.js} +1 -1
- package/ui-dist/assets/{chunk-32BRIVSS-rcxFQzYk.js → chunk-32BRIVSS-C1UzXTFZ.js} +1 -1
- package/ui-dist/assets/{chunk-5VM5RSS4-9PSO_t10.js → chunk-5VM5RSS4-COVI3rNd.js} +1 -1
- package/ui-dist/assets/{chunk-EX3LRPZG-BlOFcT4O.js → chunk-EX3LRPZG-DxQOLy7z.js} +1 -1
- package/ui-dist/assets/{chunk-JWPE2WC7-B2Jgd3wO.js → chunk-JWPE2WC7-KTwmElcL.js} +1 -1
- package/ui-dist/assets/{chunk-MOJQB5TN-CaAqG9fp.js → chunk-MOJQB5TN-BynL4lzA.js} +1 -1
- package/ui-dist/assets/{chunk-RYQCIY6F-BDI7azm6.js → chunk-RYQCIY6F-CJksBfuJ.js} +1 -1
- package/ui-dist/assets/{chunk-V7JOEXUC-B-P0KC6p.js → chunk-V7JOEXUC-C_zED5WJ.js} +1 -1
- package/ui-dist/assets/{chunk-VR4S4FIN-CMfw-kF9.js → chunk-VR4S4FIN-BHDtMeiT.js} +1 -1
- package/ui-dist/assets/{chunk-XXDRQBXY-BBVqU1YP.js → chunk-XXDRQBXY-C0VvJgte.js} +1 -1
- package/ui-dist/assets/classDiagram-OUVF2IWQ-D15_PFCL.js +1 -0
- package/ui-dist/assets/classDiagram-v2-EOCWNBFH-D15_PFCL.js +1 -0
- package/ui-dist/assets/{cose-bilkent-JH36ORCC-B_hARQDI.js → cose-bilkent-JH36ORCC-DsTTzpP7.js} +1 -1
- package/ui-dist/assets/{cynefin-VYW2F7L2-CTcM0j1n.js → cynefin-VYW2F7L2-BfULw90s.js} +1 -1
- package/ui-dist/assets/{cynefinDiagram-TSTJHNR4-CL7MmdPn.js → cynefinDiagram-TSTJHNR4-BukSzKVC.js} +1 -1
- package/ui-dist/assets/{dagre-VKFMJZFB-mhGwmtXN.js → dagre-VKFMJZFB-BbZY_Ipf.js} +1 -1
- package/ui-dist/assets/{diagram-FQU43EPY-BMjw7iEL.js → diagram-FQU43EPY-BTYIYn2p.js} +1 -1
- package/ui-dist/assets/{diagram-G47NLZAW-BsTpJwdG.js → diagram-G47NLZAW-CikY_FKi.js} +1 -1
- package/ui-dist/assets/{diagram-NH7WQ7WH-Ne5TlLrd.js → diagram-NH7WQ7WH-BfZ7AlT8.js} +1 -1
- package/ui-dist/assets/{diagram-OA4YK3LP-YVpFkzL5.js → diagram-OA4YK3LP-f5AikxJj.js} +1 -1
- package/ui-dist/assets/{diagram-WEI45ONY-B5uEnE3n.js → diagram-WEI45ONY-BCbG5yas.js} +1 -1
- package/ui-dist/assets/{ebnfDiagram-CCIWWBDH-i74y0Dqq.js → ebnfDiagram-CCIWWBDH-DT-3mJLY.js} +1 -1
- package/ui-dist/assets/{erDiagram-Q63AITRT-46MUSamZ.js → erDiagram-Q63AITRT-BsfOhDfe.js} +1 -1
- package/ui-dist/assets/{flowDiagram-23GEKE2U-C9jQx1Z9.js → flowDiagram-23GEKE2U-BfaeQCsg.js} +1 -1
- package/ui-dist/assets/{ganttDiagram-NO4QXBWP-BHoVYgnd.js → ganttDiagram-NO4QXBWP-CgPQruVz.js} +1 -1
- package/ui-dist/assets/{gitGraphDiagram-IHSO6WYX-BxCaqc4K.js → gitGraphDiagram-IHSO6WYX-CNrBFzjY.js} +1 -1
- package/ui-dist/assets/{graph-7yEA7MiX.js → graph-QqDTzUUJ.js} +1 -1
- package/ui-dist/assets/{index-55mSol35.js → index-2ZQZC89T.js} +1 -1
- package/ui-dist/assets/{index-Y9EFmtGV.js → index-2cYcOpZB.js} +1 -1
- package/ui-dist/assets/{index-Bk4h2xgb.js → index-BAt16m_U.js} +1 -1
- package/ui-dist/assets/{index-SnNVv85r.js → index-BY8xCKIE.js} +1 -1
- package/ui-dist/assets/{index-Bbr_dltJ.js → index-Befy20DN.js} +1 -1
- package/ui-dist/assets/{index-2l0f_0un.js → index-BfAP3xNl.js} +1 -1
- package/ui-dist/assets/{index-Cr_0vHJF.js → index-BogOyxlk.js} +1 -1
- package/ui-dist/assets/{index-BM2yCFug.js → index-BuIyK71w.js} +562 -557
- package/ui-dist/assets/{index-8SjcJx20.js → index-CQ92CxVC.js} +1 -1
- package/ui-dist/assets/{index-BMbspMfV.js → index-CQFwlD-o.js} +1 -1
- package/ui-dist/assets/{index-DEDA9JuC.js → index-Cu4qo_D7.js} +1 -1
- package/ui-dist/assets/index-DRuC5g8V.css +32 -0
- package/ui-dist/assets/{index-BYHrPlW0.js → index-DZ4gAeDM.js} +1 -1
- package/ui-dist/assets/{index-zsia7wHf.js → index-Dc_DUpPj.js} +1 -1
- package/ui-dist/assets/{index-CTe7L-bN.js → index-Dqv46mWS.js} +1 -1
- package/ui-dist/assets/{index-sorUqxO4.js → index-sFJMMyA3.js} +1 -1
- package/ui-dist/assets/{infoDiagram-FWYZ7A6U-tKN_HUk-.js → infoDiagram-FWYZ7A6U-BJHuaNA9.js} +1 -1
- package/ui-dist/assets/{ishikawaDiagram-FXEZZL3T-z7MJkWMv.js → ishikawaDiagram-FXEZZL3T-CmsA1Knp.js} +1 -1
- package/ui-dist/assets/{journeyDiagram-5HDEW3XC-CY9IRx-1.js → journeyDiagram-5HDEW3XC-iV_Nt9d4.js} +1 -1
- package/ui-dist/assets/{kanban-definition-HUTT4EX6-R6xzFCHM.js → kanban-definition-HUTT4EX6-D45s70Ny.js} +1 -1
- package/ui-dist/assets/{layout-BQx6ln2a.js → layout-DDC-iOzY.js} +1 -1
- package/ui-dist/assets/{linear-CH-dQ7Bg.js → linear-DCTJ7Pq3.js} +1 -1
- package/ui-dist/assets/{map-DmEHxVn2.js → map-RGy5k616.js} +1 -1
- package/ui-dist/assets/{mermaid.core-8TMqfMCO.js → mermaid.core-6MH04cvi.js} +4 -4
- package/ui-dist/assets/{mindmap-definition-LN4V7U3C-ClYlc1ss.js → mindmap-definition-LN4V7U3C-CA2LFmda.js} +1 -1
- package/ui-dist/assets/{pegDiagram-2B236MQR-DuQPcIJk.js → pegDiagram-2B236MQR-DDsUr2du.js} +1 -1
- package/ui-dist/assets/{pieDiagram-ENE6RG2P-Bc1fELpd.js → pieDiagram-ENE6RG2P-D7jEL8xK.js} +1 -1
- package/ui-dist/assets/{quadrantDiagram-ABIIQ3AL-DS9-N5ZO.js → quadrantDiagram-ABIIQ3AL-BsJxgVLb.js} +1 -1
- package/ui-dist/assets/{railroadDiagram-RFXS5EU6-BBAeUuch.js → railroadDiagram-RFXS5EU6-CBI457f6.js} +1 -1
- package/ui-dist/assets/{requirementDiagram-TGXJPOKE-BmDkrDi3.js → requirementDiagram-TGXJPOKE-_GAc0NOO.js} +1 -1
- package/ui-dist/assets/{sankeyDiagram-HTMAVEWB-APPAQqTz.js → sankeyDiagram-HTMAVEWB-DNIaj5hu.js} +1 -1
- package/ui-dist/assets/{sequenceDiagram-DBY2YBRQ-B9G01Gl-.js → sequenceDiagram-DBY2YBRQ-BHDZs2dc.js} +1 -1
- package/ui-dist/assets/{sizeCapture-X5ZJPWSS-BYjnDqoI.js → sizeCapture-X5ZJPWSS-DwKT6aTP.js} +1 -1
- package/ui-dist/assets/{stateDiagram-2N3HPSRC-BQkWPBAj.js → stateDiagram-2N3HPSRC-D2hDsltG.js} +1 -1
- package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-CMTeJdkk.js +1 -0
- package/ui-dist/assets/{swimlanes-5IMT3BWC-Cacv4UUq.js → swimlanes-5IMT3BWC-BV8xA0iq.js} +2 -2
- package/ui-dist/assets/swimlanesDiagram-G3AALYLV-ChF8QLeM.js +8 -0
- package/ui-dist/assets/{timeline-definition-FHXFAJF6-COt3U2Pi.js → timeline-definition-FHXFAJF6-BPJMubhV.js} +1 -1
- package/ui-dist/assets/{vennDiagram-L72KCM5P-C7eLlxvT.js → vennDiagram-L72KCM5P-CY76J0Px.js} +1 -1
- package/ui-dist/assets/{wardleyDiagram-EHGQE667-Bufv0x60.js → wardleyDiagram-EHGQE667-pmNWLdE_.js} +1 -1
- package/ui-dist/assets/{xterm-BuWLsUNc.js → xterm-UByodpzD.js} +1 -1
- package/ui-dist/assets/{xychartDiagram-FW5EYKEG-9RQAf_Zw.js → xychartDiagram-FW5EYKEG-BWZC7gWV.js} +1 -1
- package/ui-dist/index.html +2 -2
- package/ui-dist/assets/LibraryLiveSurface-YMhPWwag.js +0 -1
- package/ui-dist/assets/channel-Cbzk2971.js +0 -1
- package/ui-dist/assets/classDiagram-OUVF2IWQ-hBDf22nr.js +0 -1
- package/ui-dist/assets/classDiagram-v2-EOCWNBFH-hBDf22nr.js +0 -1
- package/ui-dist/assets/index-B_CDj4oF.css +0 -32
- package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-BucPPlgK.js +0 -1
- package/ui-dist/assets/swimlanesDiagram-G3AALYLV-DPpGouCd.js +0 -8
|
@@ -1,10 +1,23 @@
|
|
|
1
1
|
import { execFile } from "node:child_process";
|
|
2
|
+
import { createHash } from "node:crypto";
|
|
2
3
|
import fs from "node:fs/promises";
|
|
3
4
|
import path from "node:path";
|
|
4
5
|
import { promisify } from "node:util";
|
|
5
6
|
export const ASSIGNMENT_RUN_CONSECUTIVE_FAILURE_LIMIT = 3;
|
|
6
7
|
export const ASSIGNMENT_RUN_TOTAL_FAILURE_LIMIT = 25;
|
|
8
|
+
export const ASSIGNMENT_DEPENDENCY_PREFLIGHT_FAILURE_CODE = "assignment_dependency_preflight_failed";
|
|
9
|
+
export const ASSIGNMENT_DEPENDENCY_REPAIR_COMMAND = "pnpm install --frozen-lockfile";
|
|
10
|
+
export const ASSIGNMENT_DEPENDENCY_REPAIR_TIMEOUT_MS = 120_000;
|
|
11
|
+
const ASSIGNMENT_DEPENDENCY_GRAPH_ARGS = ["list", "--depth", "-1", "--json"];
|
|
7
12
|
const execFileAsync = promisify(execFile);
|
|
13
|
+
const repairPromises = new Map();
|
|
14
|
+
const failedRepairFingerprints = new Map();
|
|
15
|
+
function rememberFailedRepair(workspaceIdentity, readinessFingerprints) {
|
|
16
|
+
const fingerprints = failedRepairFingerprints.get(workspaceIdentity) ?? new Set();
|
|
17
|
+
for (const fingerprint of readinessFingerprints)
|
|
18
|
+
fingerprints.add(fingerprint);
|
|
19
|
+
failedRepairFingerprints.set(workspaceIdentity, fingerprints);
|
|
20
|
+
}
|
|
8
21
|
export function resolveProjectWorkingSetCwd(resources) {
|
|
9
22
|
const workingSet = resources.find((entry) => entry.role === "working_set"
|
|
10
23
|
&& entry.resource?.kind === "directory"
|
|
@@ -117,6 +130,51 @@ function yamlScalar(contents, key) {
|
|
|
117
130
|
const match = contents.match(new RegExp(`^${key}:\\s*(.+?)\\s*$`, "m"));
|
|
118
131
|
return match?.[1]?.replace(/^['"]|['"]$/g, "").trim() || null;
|
|
119
132
|
}
|
|
133
|
+
function digest(value) {
|
|
134
|
+
return createHash("sha256").update(value).digest("hex");
|
|
135
|
+
}
|
|
136
|
+
export function fingerprintAssignmentRunWorkspace(input) {
|
|
137
|
+
return digest(JSON.stringify({
|
|
138
|
+
workspaceIdentity: fingerprintAssignmentRunWorkspaceIdentity(input),
|
|
139
|
+
lockfileFingerprint: input.lockfileFingerprint,
|
|
140
|
+
}));
|
|
141
|
+
}
|
|
142
|
+
export function fingerprintAssignmentRunWorkspaceIdentity(input) {
|
|
143
|
+
return digest(JSON.stringify({
|
|
144
|
+
actualCwd: path.resolve(input.actualCwd),
|
|
145
|
+
projectWorkingSetCwd: path.resolve(input.projectWorkingSetCwd),
|
|
146
|
+
}));
|
|
147
|
+
}
|
|
148
|
+
export function fingerprintAssignmentRunReadiness(input) {
|
|
149
|
+
const preflight = input;
|
|
150
|
+
return digest(JSON.stringify({
|
|
151
|
+
actualCwd: preflight.actualCwd,
|
|
152
|
+
projectWorkingSetCwd: preflight.projectWorkingSetCwd,
|
|
153
|
+
workspaceIdentity: preflight.workspaceIdentity,
|
|
154
|
+
workspaceFingerprint: preflight.workspaceFingerprint,
|
|
155
|
+
lockfileFingerprint: preflight.lockfileFingerprint,
|
|
156
|
+
cwdPresent: preflight.cwdPresent,
|
|
157
|
+
projectWorkingSetPresent: preflight.projectWorkingSetPresent,
|
|
158
|
+
cwdMatchesProjectWorkingSet: preflight.cwdMatchesProjectWorkingSet,
|
|
159
|
+
packageManager: preflight.packageManager,
|
|
160
|
+
packageJsonPresent: preflight.packageJsonPresent,
|
|
161
|
+
pnpmLockPresent: preflight.pnpmLockPresent,
|
|
162
|
+
nodeModulesPresent: preflight.nodeModulesPresent,
|
|
163
|
+
pnpmVirtualStorePresent: preflight.pnpmVirtualStorePresent,
|
|
164
|
+
expectedPackageManager: preflight.expectedPackageManager,
|
|
165
|
+
installedPackageManager: preflight.installedPackageManager,
|
|
166
|
+
configuredStoreDir: preflight.configuredStoreDir,
|
|
167
|
+
configuredVirtualStoreDir: preflight.configuredVirtualStoreDir,
|
|
168
|
+
packageManagerMatches: preflight.packageManagerMatches,
|
|
169
|
+
storeDirPresent: preflight.storeDirPresent,
|
|
170
|
+
virtualStoreMatches: preflight.virtualStoreMatches,
|
|
171
|
+
nodeCommandAvailable: preflight.nodeCommandAvailable,
|
|
172
|
+
pnpmCommandAvailable: preflight.pnpmCommandAvailable,
|
|
173
|
+
dependencyGraphAvailable: preflight.dependencyGraphAvailable,
|
|
174
|
+
ready: preflight.ready,
|
|
175
|
+
recoveryCommand: preflight.recoveryCommand,
|
|
176
|
+
}));
|
|
177
|
+
}
|
|
120
178
|
async function runPreflightCommand(command, args, cwd) {
|
|
121
179
|
return execFileAsync(command, args, {
|
|
122
180
|
cwd,
|
|
@@ -142,15 +200,18 @@ export async function inspectAssignmentRunWorkspace(input) {
|
|
|
142
200
|
pathExists(virtualStorePath),
|
|
143
201
|
]);
|
|
144
202
|
const packageJson = packageJsonPresent ? parseJsonObject(await readText(packageJsonPath)) : {};
|
|
203
|
+
const lockfileContents = pnpmLockPresent ? await readText(pnpmLockPath) : "";
|
|
204
|
+
const lockfileFingerprint = pnpmLockPresent ? digest(lockfileContents) : null;
|
|
145
205
|
const expectedPackageManager = typeof packageJson.packageManager === "string" ? packageJson.packageManager : null;
|
|
146
206
|
const modulesManifest = nodeModulesPresent ? await readText(modulesManifestPath) : "";
|
|
147
207
|
const installedPackageManager = yamlScalar(modulesManifest, "packageManager");
|
|
148
208
|
const configuredStoreDir = yamlScalar(modulesManifest, "storeDir");
|
|
149
209
|
const configuredVirtualStoreDir = yamlScalar(modulesManifest, "virtualStoreDir");
|
|
150
|
-
const
|
|
151
|
-
const
|
|
210
|
+
const runCommand = input.runCommand ?? runPreflightCommand;
|
|
211
|
+
const nodeCommand = packageJsonPresent ? await runCommand("node", ["--version"], input.actualCwd) : null;
|
|
212
|
+
const pnpmCommand = pnpmLockPresent ? await runCommand("pnpm", ["--version"], input.actualCwd) : null;
|
|
152
213
|
const dependencyGraph = pnpmLockPresent && nodeModulesPresent && pnpmVirtualStorePresent
|
|
153
|
-
? await
|
|
214
|
+
? await runCommand("pnpm", ASSIGNMENT_DEPENDENCY_GRAPH_ARGS, input.actualCwd)
|
|
154
215
|
: null;
|
|
155
216
|
const packageManagerMatches = !expectedPackageManager
|
|
156
217
|
|| !installedPackageManager
|
|
@@ -171,12 +232,25 @@ export async function inspectAssignmentRunWorkspace(input) {
|
|
|
171
232
|
? null
|
|
172
233
|
: pnpmLockPresent
|
|
173
234
|
? (packageManagerMatches && storeDirPresent && virtualStoreMatches
|
|
174
|
-
?
|
|
235
|
+
? ASSIGNMENT_DEPENDENCY_REPAIR_COMMAND
|
|
175
236
|
: "pnpm install --force")
|
|
176
237
|
: packageJsonPresent
|
|
177
238
|
? "npm install"
|
|
178
239
|
: null;
|
|
179
|
-
|
|
240
|
+
const workspaceFingerprint = fingerprintAssignmentRunWorkspace({
|
|
241
|
+
actualCwd: input.actualCwd,
|
|
242
|
+
projectWorkingSetCwd: input.projectWorkingSetCwd,
|
|
243
|
+
lockfileFingerprint,
|
|
244
|
+
});
|
|
245
|
+
const workspaceIdentity = fingerprintAssignmentRunWorkspaceIdentity(input);
|
|
246
|
+
const diagnosticOutput = dependencyGraph && !dependencyGraph.ok
|
|
247
|
+
? dependencyGraph.output
|
|
248
|
+
: pnpmCommand && !pnpmCommand.ok
|
|
249
|
+
? pnpmCommand.output
|
|
250
|
+
: nodeCommand && !nodeCommand.ok
|
|
251
|
+
? nodeCommand.output
|
|
252
|
+
: null;
|
|
253
|
+
const preflight = {
|
|
180
254
|
actualCwd: input.actualCwd,
|
|
181
255
|
projectWorkingSetCwd: input.projectWorkingSetCwd,
|
|
182
256
|
cwdPresent,
|
|
@@ -199,6 +273,157 @@ export async function inspectAssignmentRunWorkspace(input) {
|
|
|
199
273
|
dependencyGraphAvailable: dependencyGraph?.ok ?? null,
|
|
200
274
|
ready,
|
|
201
275
|
recoveryCommand,
|
|
276
|
+
diagnosticOutput: diagnosticOutput || null,
|
|
277
|
+
lockfileFingerprint,
|
|
278
|
+
workspaceIdentity,
|
|
279
|
+
workspaceFingerprint,
|
|
280
|
+
};
|
|
281
|
+
return {
|
|
282
|
+
...preflight,
|
|
283
|
+
readinessFingerprint: fingerprintAssignmentRunReadiness(preflight),
|
|
284
|
+
};
|
|
285
|
+
}
|
|
286
|
+
function compactCommandOutput(value) {
|
|
287
|
+
return value.replace(/\s+/g, " ").trim().slice(0, 1_000);
|
|
288
|
+
}
|
|
289
|
+
async function runAssignmentDependencyRepairCommand(command, args, cwd) {
|
|
290
|
+
try {
|
|
291
|
+
const result = await execFileAsync(command, args, {
|
|
292
|
+
cwd,
|
|
293
|
+
timeout: ASSIGNMENT_DEPENDENCY_REPAIR_TIMEOUT_MS,
|
|
294
|
+
maxBuffer: 512 * 1024,
|
|
295
|
+
env: { ...process.env, CI: "1" },
|
|
296
|
+
});
|
|
297
|
+
return {
|
|
298
|
+
ok: true,
|
|
299
|
+
output: compactCommandOutput([result.stdout, result.stderr].filter(Boolean).join("\n")),
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
catch (error) {
|
|
303
|
+
const commandError = error;
|
|
304
|
+
return {
|
|
305
|
+
ok: false,
|
|
306
|
+
output: compactCommandOutput([
|
|
307
|
+
typeof commandError.message === "string" ? commandError.message : String(error),
|
|
308
|
+
typeof commandError.stderr === "string" ? commandError.stderr : "",
|
|
309
|
+
typeof commandError.stdout === "string" ? commandError.stdout : "",
|
|
310
|
+
].filter(Boolean).join("\n")),
|
|
311
|
+
};
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
function repairOutcomeBase(preflight, overrides = {}) {
|
|
315
|
+
return {
|
|
316
|
+
initial: preflight,
|
|
317
|
+
final: preflight,
|
|
318
|
+
command: null,
|
|
319
|
+
attempted: false,
|
|
320
|
+
coalesced: false,
|
|
321
|
+
rechecked: false,
|
|
322
|
+
succeeded: preflight.ready,
|
|
323
|
+
output: null,
|
|
324
|
+
skippedReason: preflight.ready ? "already_ready" : null,
|
|
325
|
+
workspaceIdentity: preflight.workspaceIdentity,
|
|
326
|
+
workspaceFingerprint: preflight.workspaceFingerprint,
|
|
327
|
+
readinessFingerprint: preflight.readinessFingerprint,
|
|
328
|
+
...overrides,
|
|
202
329
|
};
|
|
203
330
|
}
|
|
331
|
+
function rememberRepairFailure(outcome) {
|
|
332
|
+
if (outcome.succeeded)
|
|
333
|
+
return;
|
|
334
|
+
rememberFailedRepair(outcome.workspaceIdentity, [
|
|
335
|
+
outcome.initial.readinessFingerprint,
|
|
336
|
+
outcome.final.readinessFingerprint,
|
|
337
|
+
]);
|
|
338
|
+
}
|
|
339
|
+
export async function repairAssignmentRunWorkspace(input) {
|
|
340
|
+
const { preflight } = input;
|
|
341
|
+
if (preflight.ready)
|
|
342
|
+
return repairOutcomeBase(preflight);
|
|
343
|
+
if (preflight.recoveryCommand !== ASSIGNMENT_DEPENDENCY_REPAIR_COMMAND) {
|
|
344
|
+
return repairOutcomeBase(preflight, {
|
|
345
|
+
skippedReason: "unsupported_recovery_command",
|
|
346
|
+
});
|
|
347
|
+
}
|
|
348
|
+
const failedFingerprints = failedRepairFingerprints.get(preflight.workspaceIdentity);
|
|
349
|
+
if (failedFingerprints?.has(preflight.readinessFingerprint)) {
|
|
350
|
+
return repairOutcomeBase(preflight, {
|
|
351
|
+
skippedReason: "unchanged_readiness",
|
|
352
|
+
});
|
|
353
|
+
}
|
|
354
|
+
const repairKey = preflight.workspaceIdentity;
|
|
355
|
+
const existingRepair = repairPromises.get(repairKey);
|
|
356
|
+
if (existingRepair) {
|
|
357
|
+
const sharedOutcome = await existingRepair;
|
|
358
|
+
const outcome = {
|
|
359
|
+
...sharedOutcome,
|
|
360
|
+
initial: preflight,
|
|
361
|
+
workspaceIdentity: preflight.workspaceIdentity,
|
|
362
|
+
workspaceFingerprint: preflight.workspaceFingerprint,
|
|
363
|
+
readinessFingerprint: preflight.readinessFingerprint,
|
|
364
|
+
coalesced: true,
|
|
365
|
+
};
|
|
366
|
+
rememberRepairFailure(outcome);
|
|
367
|
+
return outcome;
|
|
368
|
+
}
|
|
369
|
+
const inspect = input.inspect ?? inspectAssignmentRunWorkspace;
|
|
370
|
+
const runCommand = input.runCommand ?? runAssignmentDependencyRepairCommand;
|
|
371
|
+
const repairPromise = (async () => {
|
|
372
|
+
let commandResult;
|
|
373
|
+
try {
|
|
374
|
+
commandResult = await runCommand("pnpm", ["install", "--frozen-lockfile"], preflight.actualCwd);
|
|
375
|
+
}
|
|
376
|
+
catch (error) {
|
|
377
|
+
commandResult = {
|
|
378
|
+
ok: false,
|
|
379
|
+
output: compactCommandOutput(error instanceof Error ? error.message : String(error)),
|
|
380
|
+
};
|
|
381
|
+
}
|
|
382
|
+
const final = await inspect({
|
|
383
|
+
actualCwd: preflight.actualCwd,
|
|
384
|
+
projectWorkingSetCwd: preflight.projectWorkingSetCwd,
|
|
385
|
+
});
|
|
386
|
+
const outcome = repairOutcomeBase(preflight, {
|
|
387
|
+
final,
|
|
388
|
+
command: ASSIGNMENT_DEPENDENCY_REPAIR_COMMAND,
|
|
389
|
+
attempted: true,
|
|
390
|
+
rechecked: true,
|
|
391
|
+
succeeded: final.ready,
|
|
392
|
+
output: final.ready
|
|
393
|
+
? commandResult.output || null
|
|
394
|
+
: final.diagnosticOutput || commandResult.output || preflight.diagnosticOutput || null,
|
|
395
|
+
skippedReason: null,
|
|
396
|
+
});
|
|
397
|
+
rememberRepairFailure(outcome);
|
|
398
|
+
return outcome;
|
|
399
|
+
})();
|
|
400
|
+
repairPromises.set(repairKey, repairPromise);
|
|
401
|
+
try {
|
|
402
|
+
return await repairPromise;
|
|
403
|
+
}
|
|
404
|
+
finally {
|
|
405
|
+
repairPromises.delete(repairKey);
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
export class AssignmentDependencyPreflightError extends Error {
|
|
409
|
+
errorCode = ASSIGNMENT_DEPENDENCY_PREFLIGHT_FAILURE_CODE;
|
|
410
|
+
failure;
|
|
411
|
+
constructor(preflight, dependencyRepair) {
|
|
412
|
+
const repairMessage = dependencyRepair?.skippedReason === "unchanged_readiness"
|
|
413
|
+
? "Automatic dependency repair was already attempted for this unchanged workspace and lockfile state."
|
|
414
|
+
: dependencyRepair?.attempted && dependencyRepair.succeeded === false
|
|
415
|
+
? `Automatic dependency repair did not make the workspace ready${dependencyRepair.output ? `: ${dependencyRepair.output}` : "."}`
|
|
416
|
+
: null;
|
|
417
|
+
const nextStep = preflight.recoveryCommand
|
|
418
|
+
? `Next step: ${preflight.recoveryCommand} once after correcting the reported dependency state.`
|
|
419
|
+
: "Next step: restore the project working set and retry.";
|
|
420
|
+
super([
|
|
421
|
+
`Assignment dependency preflight failed in ${preflight.actualCwd}.`,
|
|
422
|
+
repairMessage,
|
|
423
|
+
nextStep,
|
|
424
|
+
].filter(Boolean).join(" "));
|
|
425
|
+
this.name = "AssignmentDependencyPreflightError";
|
|
426
|
+
this.failure = { preflight, dependencyRepair };
|
|
427
|
+
}
|
|
428
|
+
}
|
|
204
429
|
//# sourceMappingURL=assignment-run-guardrail.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assignment-run-guardrail.js","sourceRoot":"","sources":["../../../src/services/runtime-kernel/assignment-run-guardrail.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC,CAAC;AAC1D,MAAM,CAAC,MAAM,kCAAkC,GAAG,EAAE,CAAC;AAIrD,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAa1C,MAAM,UAAU,2BAA2B,CACzC,SAGE;IAEF,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAC1C,KAAK,CAAC,IAAI,KAAK,aAAa;WACzB,KAAK,CAAC,QAAQ,EAAE,IAAI,KAAK,WAAW;WACpC,KAAK,CAAC,QAAQ,CAAC,UAAU,KAAK,UAAU;WACxC,OAAO,KAAK,CAAC,QAAQ,CAAC,OAAO,KAAK,QAAQ;WAC1C,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9C,OAAO,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;AACvD,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,OAAO,KAAK;SACT,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;SAC9B,OAAO,CAAC,kCAAkC,EAAE,QAAQ,CAAC;SACrD,OAAO,CAAC,4BAA4B,EAAE,aAAa,CAAC;SACpD,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC;SAClC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC;SAC1B,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE;SACN,WAAW,EAAE,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CAAC,KAA2B,EAAE,SAAiB;IACrE,IAAI,CAAC,KAAK;QAAE,OAAO,YAAY,SAAS,EAAE,CAAC;IAC3C,OAAO,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAkB,EAAE,IAAe;IACxE,OAAO,GAAG,KAAK,CAAC,QAAQ,IAAI,IAAI,EAAE,IAAI,IAAI,SAAS,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AACrJ,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAkB;IAC9C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACvH,OAAO,gCAAgC,CAAC;IAC1C,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/G,OAAO,sBAAsB,CAAC;IAChC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,gCAAgC;IAC9C,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,eAAe,GAAkB,IAAI,CAAC;IAC1C,IAAI,uBAAuB,GAAG,CAAC,CAAC;IAChC,IAAI,mBAAmB,GAAG,CAAC,CAAC;IAC5B,IAAI,UAAU,GAA4C,IAAI,CAAC;IAC/D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAC;IAE9C,OAAO;QACL,OAAO,CAAC,OAA0B;YAChC,IAAI,UAAU;gBAAE,OAAO,UAAU,CAAC;YAClC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YACvD,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;YACrC,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;gBAChC,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;oBAClD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;oBACtC,SAAS;gBACX,CAAC;gBACD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;oBAAE,SAAS;gBAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oBACnB,eAAe,GAAG,IAAI,CAAC;oBACvB,uBAAuB,GAAG,CAAC,CAAC;oBAC5B,SAAS;gBACX,CAAC;gBACD,YAAY,IAAI,CAAC,CAAC;gBAClB,MAAM,WAAW,GAAG,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;gBAClF,uBAAuB,GAAG,WAAW,KAAK,eAAe,CAAC,CAAC,CAAC,uBAAuB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5F,eAAe,GAAG,WAAW,CAAC;gBAC9B,MAAM,MAAM,GAAG,uBAAuB,IAAI,wCAAwC;oBAChF,CAAC,CAAC,kBAAkB;oBACpB,CAAC,CAAC,YAAY,IAAI,kCAAkC;wBAClD,CAAC,CAAC,sBAAsB;wBACxB,CAAC,CAAC,IAAI,CAAC;gBACX,IAAI,MAAM,EAAE,CAAC;oBACX,UAAU,GAAG;wBACX,MAAM;wBACN,YAAY;wBACZ,uBAAuB;wBACvB,WAAW;wBACX,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,SAAS;wBACrC,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;wBAC9C,mBAAmB,EAAE,oBAAoB,CAAC,KAAK,CAAC;qBACjD,CAAC;oBACF,OAAO,UAAU,CAAC;gBACpB,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,QAAQ;YACN,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,UAAU,EAAE,CAAC;QAC/D,CAAC;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,SAAiB;IACzC,OAAO,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,SAAiB;IACvC,OAAO,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACvC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACpC,OAAO,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACnE,CAAC,CAAC,MAAiC;YACnC,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,QAAgB,EAAE,GAAW;IAC/C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC;IACxE,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;AAChE,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,OAAe,EAAE,IAAc,EAAE,GAAW;IAC7E,OAAO,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE;QAClC,GAAG;QACH,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,GAAG,GAAG,IAAI;QACrB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE;KACjC,CAAC,CAAC,IAAI,CACL,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EACnE,CAAC,KAAc,EAAE,EAAE,CAAC,CAAC;QACnB,EAAE,EAAE,KAAK;QACT,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;KAC3F,CAAC,CACH,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,KAGnD;IACC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACnE,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAC7E,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC;IACxF,MAAM,CAAC,UAAU,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,eAAe,EAAE,kBAAkB,EAAE,uBAAuB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACjJ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC;QACxE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC;QACnF,UAAU,CAAC,eAAe,CAAC;QAC3B,UAAU,CAAC,YAAY,CAAC;QACxB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QACtD,UAAU,CAAC,gBAAgB,CAAC;KAC7B,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,kBAAkB,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,sBAAsB,GAAG,OAAO,WAAW,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC;IAClH,MAAM,eAAe,GAAG,kBAAkB,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,MAAM,uBAAuB,GAAG,UAAU,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;IAC9E,MAAM,kBAAkB,GAAG,UAAU,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACnE,MAAM,yBAAyB,GAAG,UAAU,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;IACjF,MAAM,WAAW,GAAG,kBAAkB,CAAC,CAAC,CAAC,MAAM,mBAAmB,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClH,MAAM,WAAW,GAAG,eAAe,CAAC,CAAC,CAAC,MAAM,mBAAmB,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/G,MAAM,eAAe,GAAG,eAAe,IAAI,kBAAkB,IAAI,uBAAuB;QACtF,CAAC,CAAC,MAAM,mBAAmB,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QACtG,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,qBAAqB,GAAG,CAAC,sBAAsB;WAChD,CAAC,uBAAuB;WACxB,sBAAsB,KAAK,uBAAuB,CAAC;IACxD,MAAM,eAAe,GAAG,CAAC,kBAAkB,IAAI,MAAM,UAAU,CAC7D,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAC1G,CAAC;IACF,MAAM,mBAAmB,GAAG,CAAC,yBAAyB,IAAI,yBAAyB,KAAK,OAAO,CAAC;IAChG,MAAM,KAAK,GAAG,UAAU;WACnB,wBAAwB;WACxB,CAAC,CAAC,kBAAkB,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;WACjD,CAAC,CAAC,eAAe,IAAI,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;WAC9C,CAAC,CAAC,kBAAkB,IAAI,kBAAkB,CAAC;WAC3C,CAAC,CAAC,eAAe,IAAI,uBAAuB,CAAC;WAC7C,qBAAqB;WACrB,eAAe;WACf,mBAAmB;WACnB,CAAC,CAAC,eAAe,IAAI,eAAe,CAAC,EAAE,CAAC,CAAC;IAC9C,MAAM,eAAe,GAAG,KAAK;QAC3B,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,eAAe;YACf,CAAC,CAAC,CAAC,qBAAqB,IAAI,eAAe,IAAI,mBAAmB;gBAC9D,CAAC,CAAC,gCAAgC;gBAClC,CAAC,CAAC,sBAAsB,CAAC;YAC7B,CAAC,CAAC,kBAAkB;gBAClB,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,IAAI,CAAC;IACb,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;QAChD,UAAU;QACV,wBAAwB;QACxB,2BAA2B,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC;QACvG,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;QAClF,kBAAkB;QAClB,eAAe;QACf,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,uBAAuB;QACvB,kBAAkB;QAClB,yBAAyB;QACzB,qBAAqB;QACrB,eAAe;QACf,mBAAmB;QACnB,oBAAoB,EAAE,WAAW,EAAE,EAAE,IAAI,IAAI;QAC7C,oBAAoB,EAAE,WAAW,EAAE,EAAE,IAAI,IAAI;QAC7C,wBAAwB,EAAE,eAAe,EAAE,EAAE,IAAI,IAAI;QACrD,KAAK;QACL,eAAe;KAChB,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"assignment-run-guardrail.js","sourceRoot":"","sources":["../../../src/services/runtime-kernel/assignment-run-guardrail.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import fs from "node:fs/promises";
|
|
2
2
|
import os from "node:os";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
import { afterEach, describe, expect, it } from "vitest";
|
|
5
|
-
import { ASSIGNMENT_RUN_TOTAL_FAILURE_LIMIT, createAssignmentRunFailureBudget, fingerprintToolFailure, inspectAssignmentRunWorkspace, resolveProjectWorkingSetCwd, } from "./assignment-run-guardrail.js";
|
|
4
|
+
import { afterEach, describe, expect, it, vi } from "vitest";
|
|
5
|
+
import { ASSIGNMENT_DEPENDENCY_REPAIR_COMMAND, ASSIGNMENT_RUN_TOTAL_FAILURE_LIMIT, AssignmentDependencyPreflightError, createAssignmentRunFailureBudget, fingerprintToolFailure, inspectAssignmentRunWorkspace, repairAssignmentRunWorkspace, resolveProjectWorkingSetCwd, } from "./assignment-run-guardrail.js";
|
|
6
6
|
const tempDirs = [];
|
|
7
7
|
afterEach(async () => {
|
|
8
8
|
await Promise.all(tempDirs.splice(0).map((dir) => fs.rm(dir, { recursive: true, force: true })));
|
|
@@ -99,7 +99,127 @@ describe("assignment run guardrail", () => {
|
|
|
99
99
|
nodeModulesPresent: false,
|
|
100
100
|
recoveryCommand: "pnpm install --frozen-lockfile",
|
|
101
101
|
});
|
|
102
|
+
}, 15_000);
|
|
103
|
+
it("uses the pnpm-supported read-only dependency graph command", async () => {
|
|
104
|
+
const cwd = await fs.mkdtemp(path.join(os.tmpdir(), "assignment-preflight-command-"));
|
|
105
|
+
tempDirs.push(cwd);
|
|
106
|
+
await fs.writeFile(path.join(cwd, "package.json"), JSON.stringify({ packageManager: "pnpm@9.15.4" }), "utf8");
|
|
107
|
+
await fs.writeFile(path.join(cwd, "pnpm-lock.yaml"), "lockfileVersion: '9.0'", "utf8");
|
|
108
|
+
await fs.mkdir(path.join(cwd, "node_modules", ".pnpm"), { recursive: true });
|
|
109
|
+
const runCommand = vi.fn(async (_command, _args, _cwd) => ({
|
|
110
|
+
ok: true,
|
|
111
|
+
output: "[]",
|
|
112
|
+
}));
|
|
113
|
+
await expect(inspectAssignmentRunWorkspace({
|
|
114
|
+
actualCwd: cwd,
|
|
115
|
+
projectWorkingSetCwd: cwd,
|
|
116
|
+
runCommand,
|
|
117
|
+
})).resolves.toMatchObject({
|
|
118
|
+
dependencyGraphAvailable: true,
|
|
119
|
+
ready: true,
|
|
120
|
+
});
|
|
121
|
+
expect(runCommand).toHaveBeenCalledWith("pnpm", ["list", "--depth", "-1", "--json"], cwd);
|
|
102
122
|
});
|
|
123
|
+
it("coalesces one dependency repair and suppresses an unchanged failed readiness state", async () => {
|
|
124
|
+
const cwd = await fs.mkdtemp(path.join(os.tmpdir(), "assignment-repair-"));
|
|
125
|
+
tempDirs.push(cwd);
|
|
126
|
+
await fs.writeFile(path.join(cwd, "package.json"), JSON.stringify({ packageManager: "pnpm@9.15.4" }), "utf8");
|
|
127
|
+
await fs.writeFile(path.join(cwd, "pnpm-lock.yaml"), "lockfileVersion: '9.0'", "utf8");
|
|
128
|
+
const preflight = await inspectAssignmentRunWorkspace({ actualCwd: cwd, projectWorkingSetCwd: cwd });
|
|
129
|
+
const runCommand = vi.fn(async () => {
|
|
130
|
+
await new Promise((resolve) => setTimeout(resolve, 10));
|
|
131
|
+
throw new Error("registry unavailable");
|
|
132
|
+
});
|
|
133
|
+
const inspect = vi.fn(async () => preflight);
|
|
134
|
+
const [first, second] = await Promise.all([
|
|
135
|
+
repairAssignmentRunWorkspace({ preflight, inspect, runCommand }),
|
|
136
|
+
repairAssignmentRunWorkspace({ preflight, inspect, runCommand }),
|
|
137
|
+
]);
|
|
138
|
+
expect(runCommand).toHaveBeenCalledTimes(1);
|
|
139
|
+
expect(runCommand).toHaveBeenCalledWith("pnpm", ["install", "--frozen-lockfile"], cwd);
|
|
140
|
+
expect(first).toMatchObject({
|
|
141
|
+
command: ASSIGNMENT_DEPENDENCY_REPAIR_COMMAND,
|
|
142
|
+
attempted: true,
|
|
143
|
+
coalesced: false,
|
|
144
|
+
rechecked: true,
|
|
145
|
+
succeeded: false,
|
|
146
|
+
output: "registry unavailable",
|
|
147
|
+
});
|
|
148
|
+
expect(second).toMatchObject({
|
|
149
|
+
attempted: true,
|
|
150
|
+
coalesced: true,
|
|
151
|
+
succeeded: false,
|
|
152
|
+
});
|
|
153
|
+
const suppressed = await repairAssignmentRunWorkspace({ preflight, inspect, runCommand });
|
|
154
|
+
expect(suppressed).toMatchObject({
|
|
155
|
+
attempted: false,
|
|
156
|
+
coalesced: false,
|
|
157
|
+
rechecked: false,
|
|
158
|
+
succeeded: false,
|
|
159
|
+
skippedReason: "unchanged_readiness",
|
|
160
|
+
});
|
|
161
|
+
expect(runCommand).toHaveBeenCalledTimes(1);
|
|
162
|
+
expect(inspect).toHaveBeenCalledTimes(1);
|
|
163
|
+
}, 15_000);
|
|
164
|
+
it("coalesces repairs by workspace identity when readiness snapshots differ", async () => {
|
|
165
|
+
const cwd = await fs.mkdtemp(path.join(os.tmpdir(), "assignment-repair-race-"));
|
|
166
|
+
tempDirs.push(cwd);
|
|
167
|
+
await fs.writeFile(path.join(cwd, "package.json"), JSON.stringify({ packageManager: "pnpm@9.15.4" }), "utf8");
|
|
168
|
+
await fs.writeFile(path.join(cwd, "pnpm-lock.yaml"), "lockfileVersion: '9.0'", "utf8");
|
|
169
|
+
const preflight = await inspectAssignmentRunWorkspace({ actualCwd: cwd, projectWorkingSetCwd: cwd });
|
|
170
|
+
const firstPreflight = { ...preflight, readinessFingerprint: `${preflight.readinessFingerprint}:first` };
|
|
171
|
+
const secondPreflight = { ...preflight, readinessFingerprint: `${preflight.readinessFingerprint}:second` };
|
|
172
|
+
const final = {
|
|
173
|
+
...preflight,
|
|
174
|
+
ready: false,
|
|
175
|
+
diagnosticOutput: "dependency graph is still unavailable",
|
|
176
|
+
readinessFingerprint: `${preflight.readinessFingerprint}:final`,
|
|
177
|
+
};
|
|
178
|
+
const runCommand = vi.fn(async () => {
|
|
179
|
+
await new Promise((resolve) => setTimeout(resolve, 10));
|
|
180
|
+
return { ok: true, output: "" };
|
|
181
|
+
});
|
|
182
|
+
const inspect = vi.fn(async () => final);
|
|
183
|
+
const [first, second] = await Promise.all([
|
|
184
|
+
repairAssignmentRunWorkspace({ preflight: firstPreflight, inspect, runCommand }),
|
|
185
|
+
repairAssignmentRunWorkspace({ preflight: secondPreflight, inspect, runCommand }),
|
|
186
|
+
]);
|
|
187
|
+
expect(runCommand).toHaveBeenCalledTimes(1);
|
|
188
|
+
expect(first).toMatchObject({ attempted: true, coalesced: false, succeeded: false });
|
|
189
|
+
expect(second).toMatchObject({
|
|
190
|
+
attempted: true,
|
|
191
|
+
coalesced: true,
|
|
192
|
+
succeeded: false,
|
|
193
|
+
readinessFingerprint: secondPreflight.readinessFingerprint,
|
|
194
|
+
});
|
|
195
|
+
expect(inspect).toHaveBeenCalledTimes(1);
|
|
196
|
+
}, 15_000);
|
|
197
|
+
it("retains a failed dependency graph check after a successful repair command", async () => {
|
|
198
|
+
const cwd = await fs.mkdtemp(path.join(os.tmpdir(), "assignment-repair-recheck-"));
|
|
199
|
+
tempDirs.push(cwd);
|
|
200
|
+
await fs.writeFile(path.join(cwd, "package.json"), JSON.stringify({ packageManager: "pnpm@9.15.4" }), "utf8");
|
|
201
|
+
await fs.writeFile(path.join(cwd, "pnpm-lock.yaml"), "lockfileVersion: '9.0'", "utf8");
|
|
202
|
+
const preflight = await inspectAssignmentRunWorkspace({ actualCwd: cwd, projectWorkingSetCwd: cwd });
|
|
203
|
+
const final = {
|
|
204
|
+
...preflight,
|
|
205
|
+
ready: false,
|
|
206
|
+
dependencyGraphAvailable: false,
|
|
207
|
+
diagnosticOutput: "ERR_PNPM_OFFLINE_RECHECK",
|
|
208
|
+
readinessFingerprint: `${preflight.readinessFingerprint}:recheck-failed`,
|
|
209
|
+
};
|
|
210
|
+
const outcome = await repairAssignmentRunWorkspace({
|
|
211
|
+
preflight,
|
|
212
|
+
inspect: vi.fn(async () => final),
|
|
213
|
+
runCommand: vi.fn(async () => ({ ok: true, output: "" })),
|
|
214
|
+
});
|
|
215
|
+
expect(outcome).toMatchObject({
|
|
216
|
+
attempted: true,
|
|
217
|
+
rechecked: true,
|
|
218
|
+
succeeded: false,
|
|
219
|
+
output: "ERR_PNPM_OFFLINE_RECHECK",
|
|
220
|
+
});
|
|
221
|
+
expect(new AssignmentDependencyPreflightError(outcome.final, outcome).message).toContain("ERR_PNPM_OFFLINE_RECHECK");
|
|
222
|
+
}, 15_000);
|
|
103
223
|
it("resolves only an external directory working set as the project repo root", () => {
|
|
104
224
|
expect(resolveProjectWorkingSetCwd([
|
|
105
225
|
{ role: "reference", resource: { kind: "directory", sourceType: "external", locator: "/tmp/reference" } },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assignment-run-guardrail.test.js","sourceRoot":"","sources":["../../../src/services/runtime-kernel/assignment-run-guardrail.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"assignment-run-guardrail.test.js","sourceRoot":"","sources":["../../../src/services/runtime-kernel/assignment-run-guardrail.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import type { Db } from "@rudderhq/db";
|
|
2
|
+
type AttemptStatus = "started" | "waiting_for_network" | "succeeded" | "failed" | "cancelled" | "timed_out";
|
|
3
|
+
type ResumeSource = "fresh" | "same_session" | "pristine_replay";
|
|
4
|
+
export type HeartbeatAttemptRef = {
|
|
5
|
+
id: string;
|
|
6
|
+
attemptIndex: number;
|
|
7
|
+
};
|
|
8
|
+
export type BeginHeartbeatAttemptInput = {
|
|
9
|
+
orgId: string;
|
|
10
|
+
runId: string;
|
|
11
|
+
agentId: string;
|
|
12
|
+
attemptIndex: number;
|
|
13
|
+
fallbackIndex: number | null;
|
|
14
|
+
runtimeType: string;
|
|
15
|
+
model: string | null;
|
|
16
|
+
isFallback: boolean;
|
|
17
|
+
resumeSource: ResumeSource;
|
|
18
|
+
};
|
|
19
|
+
export declare function beginHeartbeatRunAttempt(db: Db, input: BeginHeartbeatAttemptInput): Promise<HeartbeatAttemptRef | null>;
|
|
20
|
+
export declare function markHeartbeatRunAttemptWaiting(db: Db, ref: HeartbeatAttemptRef | null, input: {
|
|
21
|
+
submissionPhase?: string | null;
|
|
22
|
+
providerThreadId?: string | null;
|
|
23
|
+
providerTurnId?: string | null;
|
|
24
|
+
sessionDisplayId?: string | null;
|
|
25
|
+
sessionParamsJson?: unknown;
|
|
26
|
+
checkpointJson?: unknown;
|
|
27
|
+
errorCode?: string | null;
|
|
28
|
+
error?: string | null;
|
|
29
|
+
suspendedAt?: Date;
|
|
30
|
+
}): Promise<{
|
|
31
|
+
id: string;
|
|
32
|
+
orgId: string;
|
|
33
|
+
runId: string;
|
|
34
|
+
agentId: string;
|
|
35
|
+
attemptIndex: number;
|
|
36
|
+
fallbackIndex: number | null;
|
|
37
|
+
runtimeType: string;
|
|
38
|
+
model: string | null;
|
|
39
|
+
isFallback: boolean;
|
|
40
|
+
resumeSource: import("@rudderhq/shared").HeartbeatRunAttemptResumeSource;
|
|
41
|
+
status: import("@rudderhq/shared").HeartbeatRunAttemptStatus;
|
|
42
|
+
submissionPhase: "accepted" | "pre_submission" | "indeterminate" | null;
|
|
43
|
+
providerThreadId: string | null;
|
|
44
|
+
providerTurnId: string | null;
|
|
45
|
+
sessionDisplayId: string | null;
|
|
46
|
+
sessionParamsJson: Record<string, unknown> | null;
|
|
47
|
+
checkpointJson: Record<string, unknown> | null;
|
|
48
|
+
usageDeltaJson: Record<string, unknown> | null;
|
|
49
|
+
costCents: number | null;
|
|
50
|
+
errorCode: string | null;
|
|
51
|
+
error: string | null;
|
|
52
|
+
startedAt: Date;
|
|
53
|
+
suspendedAt: Date | null;
|
|
54
|
+
finishedAt: Date | null;
|
|
55
|
+
createdAt: Date;
|
|
56
|
+
} | null>;
|
|
57
|
+
export declare function finishHeartbeatRunAttempt(db: Db, ref: HeartbeatAttemptRef | null, input: {
|
|
58
|
+
status: Exclude<AttemptStatus, "started" | "waiting_for_network">;
|
|
59
|
+
submissionPhase?: string | null;
|
|
60
|
+
providerThreadId?: string | null;
|
|
61
|
+
providerTurnId?: string | null;
|
|
62
|
+
sessionDisplayId?: string | null;
|
|
63
|
+
sessionParamsJson?: unknown;
|
|
64
|
+
usageDeltaJson?: unknown;
|
|
65
|
+
costUsd?: unknown;
|
|
66
|
+
errorCode?: string | null;
|
|
67
|
+
error?: string | null;
|
|
68
|
+
finishedAt?: Date;
|
|
69
|
+
}): Promise<{
|
|
70
|
+
id: string;
|
|
71
|
+
orgId: string;
|
|
72
|
+
runId: string;
|
|
73
|
+
agentId: string;
|
|
74
|
+
attemptIndex: number;
|
|
75
|
+
fallbackIndex: number | null;
|
|
76
|
+
runtimeType: string;
|
|
77
|
+
model: string | null;
|
|
78
|
+
isFallback: boolean;
|
|
79
|
+
resumeSource: import("@rudderhq/shared").HeartbeatRunAttemptResumeSource;
|
|
80
|
+
status: import("@rudderhq/shared").HeartbeatRunAttemptStatus;
|
|
81
|
+
submissionPhase: "accepted" | "pre_submission" | "indeterminate" | null;
|
|
82
|
+
providerThreadId: string | null;
|
|
83
|
+
providerTurnId: string | null;
|
|
84
|
+
sessionDisplayId: string | null;
|
|
85
|
+
sessionParamsJson: Record<string, unknown> | null;
|
|
86
|
+
checkpointJson: Record<string, unknown> | null;
|
|
87
|
+
usageDeltaJson: Record<string, unknown> | null;
|
|
88
|
+
costCents: number | null;
|
|
89
|
+
errorCode: string | null;
|
|
90
|
+
error: string | null;
|
|
91
|
+
startedAt: Date;
|
|
92
|
+
suspendedAt: Date | null;
|
|
93
|
+
finishedAt: Date | null;
|
|
94
|
+
createdAt: Date;
|
|
95
|
+
} | null>;
|
|
96
|
+
export declare function finishLatestHeartbeatRunAttempt(db: Db, runId: string, input: Parameters<typeof finishHeartbeatRunAttempt>[2]): Promise<{
|
|
97
|
+
id: string;
|
|
98
|
+
orgId: string;
|
|
99
|
+
runId: string;
|
|
100
|
+
agentId: string;
|
|
101
|
+
attemptIndex: number;
|
|
102
|
+
fallbackIndex: number | null;
|
|
103
|
+
runtimeType: string;
|
|
104
|
+
model: string | null;
|
|
105
|
+
isFallback: boolean;
|
|
106
|
+
resumeSource: import("@rudderhq/shared").HeartbeatRunAttemptResumeSource;
|
|
107
|
+
status: import("@rudderhq/shared").HeartbeatRunAttemptStatus;
|
|
108
|
+
submissionPhase: "accepted" | "pre_submission" | "indeterminate" | null;
|
|
109
|
+
providerThreadId: string | null;
|
|
110
|
+
providerTurnId: string | null;
|
|
111
|
+
sessionDisplayId: string | null;
|
|
112
|
+
sessionParamsJson: Record<string, unknown> | null;
|
|
113
|
+
checkpointJson: Record<string, unknown> | null;
|
|
114
|
+
usageDeltaJson: Record<string, unknown> | null;
|
|
115
|
+
costCents: number | null;
|
|
116
|
+
errorCode: string | null;
|
|
117
|
+
error: string | null;
|
|
118
|
+
startedAt: Date;
|
|
119
|
+
suspendedAt: Date | null;
|
|
120
|
+
finishedAt: Date | null;
|
|
121
|
+
createdAt: Date;
|
|
122
|
+
} | null>;
|
|
123
|
+
export {};
|
|
124
|
+
//# sourceMappingURL=heartbeat-attempt-ledger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heartbeat-attempt-ledger.d.ts","sourceRoot":"","sources":["../../../src/services/runtime-kernel/heartbeat-attempt-ledger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAIvC,KAAK,aAAa,GAAG,SAAS,GAAG,qBAAqB,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC;AAC5G,KAAK,YAAY,GAAG,OAAO,GAAG,cAAc,GAAG,iBAAiB,CAAC;AAIjE,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,YAAY,CAAC;CAC5B,CAAC;AAiBF,wBAAsB,wBAAwB,CAC5C,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CA2CrC;AAED,wBAAsB,8BAA8B,CAClD,EAAE,EAAE,EAAE,EACN,GAAG,EAAE,mBAAmB,GAAG,IAAI,EAC/B,KAAK,EAAE;IACL,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,IAAI,CAAC;CACpB;;;;;;;;;;;;;;;;;;;;;;;;;;UAoBF;AAED,wBAAsB,yBAAyB,CAC7C,EAAE,EAAE,EAAE,EACN,GAAG,EAAE,mBAAmB,GAAG,IAAI,EAC/B,KAAK,EAAE;IACL,MAAM,EAAE,OAAO,CAAC,aAAa,EAAE,SAAS,GAAG,qBAAqB,CAAC,CAAC;IAClE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB;;;;;;;;;;;;;;;;;;;;;;;;;;UAwBF;AAED,wBAAsB,+BAA+B,CACnD,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;UAavD"}
|