@overdeck/desktop 0.49.1 → 0.50.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/drizzle/overdeck/0000_overdeck_init.sql +1 -0
- package/package.json +1 -1
- package/server/{acceptance-criteria-Crw-xSJ3.js → acceptance-criteria-B_maCGZv.js} +2 -2
- package/server/{active-dashboard-bundle-CLwfD-Om.js → active-dashboard-bundle-CCqpFWiz.js} +2 -2
- package/server/activity-logger-B0X2JJwM.js +3 -0
- package/server/{activity-logger-BAVLrkR7.js → activity-logger-SlTXYCVf.js} +22 -4
- package/server/{advancing-selfheal-BQiJ7mIH.js → advancing-selfheal-BJAfiY-C.js} +12 -7
- package/server/{agent-gc-5E0lgxI1.js → agent-gc-bhikjoJ_.js} +11 -11
- package/server/agent-idle-D-UQ7gDv.js +745 -0
- package/server/agent-state-BrUPf_7Z.js +3 -0
- package/server/{agent-state-Bb3UUxQm.js → agent-state-FABw8neJ.js} +682 -454
- package/server/{agent-state-service-keg-x1bT.js → agent-state-service-BAQApt97.js} +1 -1
- package/server/{agent-state-service-BFbttwRA.js → agent-state-service-rDenYSlD.js} +5 -5
- package/server/agents-DixZjXWm.js +3 -0
- package/server/{agents-CqQJW75N.js → agents-DzpQidT8.js} +8 -8
- package/server/{archive-planning-BwEhu9Oq.js → archive-planning-BL1ABtW0.js} +20 -135
- package/server/archive-planning-D3gw32U9.js +2 -0
- package/server/{artifact-index-jobs-C6Lg2rKm.js → artifact-index-jobs-Cjdme0jS.js} +3 -3
- package/server/{assemble-DyTp2gSB.js → assemble-B_JgnCbG.js} +28 -9
- package/server/{auto-spawn-consent-BDfe4qz0.js → auto-spawn-consent-BesWchEi.js} +8 -7
- package/server/{backlog-auto-trigger-DuOGpdDW.js → backlog-auto-trigger-COLq639j.js} +3 -3
- package/server/{behavior-Bitko0mD.js → behavior-DCg8CIWC.js} +3 -3
- package/server/{bridge-pool-patrol-DiHEd13O.js → bridge-pool-patrol-BDohuMRt.js} +2 -2
- package/server/{briefing-freshness-CDJcmHHZ.js → briefing-freshness-ENa_hW_V.js} +2 -2
- package/server/build-info-Dx2qrVhb.js +2 -0
- package/server/{build-info-DTX8JwVP.js → build-info-WuZT6xyi.js} +3 -3
- package/server/{checkpoint-manager-BlOOdzLF.js → checkpoint-manager-CSZ7aVQF.js} +26 -9
- package/server/{checkpoint-manager-CKg1tn34.js → checkpoint-manager-DXhGRvg4.js} +1 -1
- package/server/checkpoint-worker.js +1 -1
- package/server/{checkpoints-BGfl0cHM.js → checkpoints-DUkUsPVS.js} +2 -2
- package/server/{checkpoints-DRALkfDS.js → checkpoints-tm_w6Y4V.js} +1 -1
- package/server/{claude-hooks-provision-B_tv3wzE.js → claude-hooks-provision-CTh9zxEi.js} +1 -1
- package/server/{claude-hooks-provision-BlGv6twJ.js → claude-hooks-provision-fRofvhTN.js} +2 -2
- package/server/{claude-permissions-aHgDcZi5.js → claude-permissions-DLrb9ovz.js} +18 -3
- package/server/{claude-settings-overlay-T2LWLteV.js → claude-settings-overlay-BYnXaTVc.js} +2 -2
- package/server/{claude-settings-overlay-CYOvFE3A.js → claude-settings-overlay-CMS5Jab5.js} +1 -1
- package/server/cli-BflmtEFM.js +2 -0
- package/server/{cli-Do8UpLoI.js → cli-CoQou1t_.js} +11 -11
- package/server/{cliproxy-CX6jHRDP.js → cliproxy-DXDQcR3I.js} +52 -17
- package/server/cliproxy-DdhFpcXU.js +3 -0
- package/server/{close-issue-J0_eWYT1.js → close-issue-CpQ0BWg-.js} +5 -5
- package/server/{closed-issue-reaper-bFppuk6F.js → closed-issue-reaper-CdcJRvUx.js} +13 -12
- package/server/{closed-issue-reaper-Cl2h9AfT.js → closed-issue-reaper-TymtZM37.js} +1 -1
- package/server/{codex-icapA4om.js → codex-BValsmtK.js} +1 -1
- package/server/{codex-OOea7lXs.js → codex-DYyZL8JD.js} +16 -10
- package/server/{compaction-continuation-D5voR1ME.js → compaction-continuation-CVjbdGKt.js} +3 -3
- package/server/{config-Cjleh3_U.js → config-CvKH7r7W.js} +1 -1
- package/server/{config-tucKBCCc.js → config-NxI9Yl2f.js} +2 -2
- package/server/{config-DC75T4Mr.js → config-_qaa1UXH.js} +2 -2
- package/server/{config-yaml-BwOEANMr.js → config-yaml-D60AnTIu.js} +55 -15
- package/server/{conflict-gate-DlpWCMd7.js → conflict-gate-0dD1kxjN.js} +1 -1
- package/server/{conflict-gate-D2L1kZeL.js → conflict-gate-hAUCL-un.js} +5 -5
- package/server/{context-layers-CSPGc2Hb.js → context-layers-CdpabJj0.js} +3 -3
- package/server/context-layers-Ds1MnEFI.js +4 -0
- package/server/{continue-U3Af0jUq.js → continue-CnvrUfxw.js} +3 -3
- package/server/{control-settings-5k6ixdFW.js → control-settings-Db0uXgVM.js} +310 -7
- package/server/{conversation-compaction-CSpVpxN6.js → conversation-compaction-B-1KETG9.js} +8 -8
- package/server/{conversation-compaction-Ciit9O6k.js → conversation-compaction-DzMXGRiJ.js} +1 -1
- package/server/{conversation-service-BxrB5lUT.js → conversation-service-BL-asWPX.js} +1 -1
- package/server/{conversation-service-BteE4ELK.js → conversation-service-BxIOd5ay.js} +21 -7
- package/server/conversations-CEMfwMt-.js +3 -0
- package/server/{conversations-DhwxsOru.js → conversations-nS6QgYpD.js} +12 -7
- package/server/cost-3FyqKK56.js +838 -0
- package/server/{cost-Bnf9NUC5.js → cost-Cctc-Q9M.js} +3 -3
- package/server/{cost-CQKI6OCu.js → cost-DTuIRE4y.js} +2 -2
- package/server/{cost-sync-B-ADeXKY.js → cost-sync-DfmvLT9L.js} +3 -3
- package/server/{dag-DI9LaK_q.js → dag-o-dUpw1L.js} +6 -19
- package/server/{dangerous-git-ops-akhA3iyF.js → dangerous-git-ops-BOtXCFkT.js} +1 -1
- package/server/dashboard-db-worker.js +61 -11
- package/server/{deacon-TPYssFYt.js → deacon-CsisLmPt.js} +1735 -172
- package/server/{deacon-canonical-state-DFYymrDw.js → deacon-canonical-state-DkdkQS5p.js} +3 -3
- package/server/deacon-e6py3jkM.js +4 -0
- package/server/{deacon-event-client-Te5v10-b.js → deacon-event-client-BCjHiGAY.js} +1 -1
- package/server/{deacon-event-client-BKOL4AcL.js → deacon-event-client-CMQswEHX.js} +2 -2
- package/server/{deacon-nudge-log-BtlTWgWu.js → deacon-nudge-log-pcliw8Dr.js} +1 -1
- package/server/{deacon-pending-lifecycle-DVHjOLje.js → deacon-pending-lifecycle-BzaE76Xo.js} +3 -3
- package/server/deacon.js +11 -11
- package/server/{dead-end-trip-P0IF1O0E.js → dead-end-trip-Bs3hxIn6.js} +3 -3
- package/server/dead-end-trip-DUbiRMtT.js +2 -0
- package/server/delivery-DhZGRShH.js +3 -0
- package/server/{deploy-patrol-BXjlvoV3.js → deploy-patrol-B8sKkA8h.js} +8 -8
- package/server/deploy-queue--smqHLhe.js +2 -0
- package/server/{deploy-queue-o7shYg1j.js → deploy-queue-CCGWXFkp.js} +2 -2
- package/server/{deploy-window-CNT6fOff.js → deploy-window-YuJewzmC.js} +4 -4
- package/server/{deploy-window-BMk5_oX6.js → deploy-window-hgsvZ3UZ.js} +1 -1
- package/server/{dev-supervisor-SR1CLOAK.js → dev-supervisor-4SBloJHV.js} +2 -2
- package/server/{devcontainer-renderer-enMmNDFa.js → devcontainer-renderer-BiJhwFNi.js} +3 -3
- package/server/{dist-CPTO_zMR.js → dist-CoR2sivG.js} +1 -1
- package/server/dist-FHv1s5ez.js +3 -0
- package/server/{docker-B7qUZptz.js → docker-CWO7dcIP.js} +3 -3
- package/server/{docker-KR3zSFKY.js → docker-DQzyMXkd.js} +1 -1
- package/server/{dod-gK835UMf.js → dod-BAk5arLF.js} +1 -1
- package/server/{done-preflight-CksRvh49.js → done-preflight-CGFA0M1b.js} +1 -1
- package/server/{done-preflight-Bk8aExAL.js → done-preflight-Cx9JGznT.js} +5 -5
- package/server/{driver-CmsY2RLl.js → driver-BtcFz-qu.js} +14 -3
- package/server/durable-review-pipeline-BOEZ0chh.js +3 -0
- package/server/{durable-review-pipeline-DgYHucN2.js → durable-review-pipeline-Djx_lvFd.js} +11 -2
- package/server/{ensure-devcontainer-BQ4YizSH.js → ensure-devcontainer-Dk6ZMOUC.js} +1 -1
- package/server/{ensure-devcontainer-ojerEqQg.js → ensure-devcontainer-DzYBBwnM.js} +4 -4
- package/server/{esm-shims-1htPASWs.js → esm-shims-deFq5Hhl.js} +1 -1
- package/server/{event-store-BgEjNsvk.js → event-store-C50Qt-f1.js} +1 -1
- package/server/{event-store-D7qcJXuZ.js → event-store-DTns2XZP.js} +5 -5
- package/server/{event-store-provider-BKvk2rDj.js → event-store-provider-Bu1Qrg6v.js} +1 -1
- package/server/{events-BIKGJZOT.js → events-B6xW8Cpm.js} +3 -3
- package/server/{dist-src-BM9eudEd.js → factory-CWVKwKFE.js} +714 -2
- package/server/{feature-registry-storage-ewNSIVsQ.js → feature-registry-storage-vaxRN3WO.js} +3 -3
- package/server/{features-CGopJXdU.js → features-DXWwktJB.js} +2 -2
- package/server/{feedback-stuck-retirement-B8-fX7NA.js → feedback-stuck-retirement-CXAYe2rU.js} +2 -2
- package/server/{feedback-target-CkyLYohm.js → feedback-target-DSVpi0gT.js} +1 -1
- package/server/{feedback-target-Ci6N5p4G.js → feedback-target-yPD_wclF.js} +10 -10
- package/server/{feedback-writer-DfuVjvH0.js → feedback-writer-BzN4qvaP.js} +1 -1
- package/server/{feedback-writer-D4ULO4qG.js → feedback-writer-Ds1Wjsz4.js} +5 -5
- package/server/{flywheel-DXI_WITn.js → flywheel-BCZS-FlW.js} +1 -1
- package/server/{flywheel-BwYPDlhK.js → flywheel-CC4gE_rx.js} +15 -15
- package/server/{flywheel-C7yek87O.js → flywheel-DWKd7bMc.js} +79 -29
- package/server/{flywheel-merge-order-C5m5bYBc.js → flywheel-merge-order-DDT3i57u.js} +1 -1
- package/server/{flywheel-merge-order-CXfU4M6l.js → flywheel-merge-order-DJwH2KpL.js} +17 -15
- package/server/forge-4VVCRcF7.js +2 -0
- package/server/{forge-DYX9sKzG.js → forge-CHADjOFs.js} +2 -2
- package/server/{from-DAdMxC29.js → from-C3dzmjSO.js} +1 -1
- package/server/{fs-lock-cw25uO_E.js → fs-lock-DQ_gUxfq.js} +2 -2
- package/server/{fts-operations-D_rzLxX5.js → fts-operations-asZo2fh1.js} +3 -3
- package/server/git-info-DMOSfJ9I.js +148 -0
- package/server/{git-utils-Y0zG25ez.js → git-utils-BAMwn9Nf.js} +1 -1
- package/server/{git-utils-DV4B9TRl.js → git-utils-BdHk8y7g.js} +4 -4
- package/server/{github-app-C33lDk9Z.js → github-app-BWziYCf3.js} +1 -1
- package/server/{github-app-4UX8VIr8.js → github-app-BlMSzSTw.js} +2 -2
- package/server/{github-client-nPj5ckZO.js → github-client-OK24qpol.js} +1 -1
- package/server/{github-client-DkJVR908.js → github-client-w6j5nVlz.js} +3 -3
- package/server/{github-pr-lookup-C9Vokb0W.js → github-pr-lookup-bGcsEvLE.js} +2 -2
- package/server/{harness-binary-BgXYDo2Z.js → harness-binary-DChiynaB.js} +2 -2
- package/server/{harness-resolve-1NZcVx7n.js → harness-resolve-BplBEbwn.js} +4 -4
- package/server/{health-events-jMfxrElt.js → health-events-BTqsmunw.js} +1 -1
- package/server/{health-events-DlX_FVAB.js → health-events-Bk3LjaJ9.js} +2 -2
- package/server/{hooks-NQ19vvlB.js → hooks-DJR1yR9w.js} +2 -2
- package/server/{hooks-W3REcb3h.js → hooks-EndRNrx9.js} +1 -1
- package/server/{hume-BFkid2PO.js → hume-1FJmNDTq.js} +2 -2
- package/server/hume-gXLmRhmN.js +3 -0
- package/server/{identity-Bwh6VGeL.js → identity-C3s8lyp0.js} +3 -3
- package/server/{idle-stack-reaper-CHtCNpvd.js → idle-stack-reaper-CBelVOE3.js} +1 -1
- package/server/{idle-stack-reaper-BeU_KxWx.js → idle-stack-reaper-DtoI4al6.js} +4 -4
- package/server/{in-flight-guard-pcwXKLGz.js → in-flight-guard-B7khcBdQ.js} +1 -1
- package/server/{infra-KTp9KV9u.js → infra-CJRi_5Wu.js} +36 -7
- package/server/{injection-67YyU6SC.js → injection-ADWQ3D0s.js} +8 -8
- package/server/{injection-BxbZKPDh.js → injection-BWsgHvrL.js} +1 -1
- package/server/{inspect-agent-VHSihlb7.js → inspect-agent-CCfNJjKr.js} +12 -12
- package/server/inspect-agent-Dhp3hCGp.js +2 -0
- package/server/{internal-token-B-z-sGBH.js → internal-token-BCTEqUCX.js} +1 -1
- package/server/{internal-token-zY75jrRJ.js → internal-token-BeIWG_kT.js} +2 -2
- package/server/{io-DfvO2xyh.js → io-BCtZoXHo.js} +5 -5
- package/server/{issue-closed-dvEWKO7Q.js → issue-closed-CiYAa6bX.js} +7 -7
- package/server/{issue-lifecycle-3N8XF7lP.js → issue-lifecycle-BETNVVLq.js} +206 -29
- package/server/{issue-lifecycle-BI6jAfp8.js → issue-lifecycle-DaKN57sx.js} +1 -1
- package/server/{issue-service-singleton-CL6hESX2.js → issue-service-singleton-1Q0ER8Yc.js} +1 -1
- package/server/{issue-service-singleton-BN_2MXp4.js → issue-service-singleton-C_sZ0HjP.js} +124 -11
- package/server/issue-title-fallback-B91iD66g.js +120 -0
- package/server/{issues-CkvUoAnq.js → issues-RGHQUKhB.js} +2 -2
- package/server/{jsonl-parser-CrEb2PWr.js → jsonl-parser-Dfs1dlYE.js} +3 -3
- package/server/jsonl-resolver-bFtftCDd.js +324 -0
- package/server/{kimi-code-DoMoGqIu.js → kimi-code-BxkDgaj4.js} +1 -1
- package/server/{kimi-code-C26gmGxM.js → kimi-code-CNYRA8Dd.js} +14 -12
- package/server/{kimi-parser-Dmhy3UlR.js → kimi-parser-OcWwmOqF.js} +2 -2
- package/server/{label-cleanup-X2lWfghH.js → label-cleanup-CefxK9tL.js} +3 -3
- package/server/{lifecycle-B0rL38D3.js → lifecycle-DDZ7w-BY.js} +6 -6
- package/server/{lifecycle-Bg44O-9x.js → lifecycle-DVXyUil2.js} +2 -2
- package/server/{lifecycle-io-DQDU0apV.js → lifecycle-io-D1oBiMce.js} +1 -1
- package/server/{lifecycle-io-CCBpRv5m.js → lifecycle-io-D7N0vQNj.js} +5 -5
- package/server/{linear-client-B0cIkTs4.js → linear-client-DUN7zCeb.js} +3 -3
- package/server/{linear-client-6V2E-DSa.js → linear-client-TL32snOy.js} +1 -1
- package/server/{linear-mcp-auth-LCo9AWUd.js → linear-mcp-auth-CtRKSHy5.js} +1 -1
- package/server/{linear-mcp-auth-Dsu9Io9r.js → linear-mcp-auth-bB0CPyjh.js} +5 -5
- package/server/memory-fts-worker.js +1 -1
- package/server/{memory-governor-A4O6vI9d.js → memory-governor-Cvv_9K0M.js} +88 -22
- package/server/{memory-pressure-patrol-BWlWywmA.js → memory-pressure-patrol-C6DJJQRA.js} +38 -14
- package/server/{merge-BGWcBxku.js → merge-DOCR6pHi.js} +1 -1
- package/server/{merge-vz80RvSE.js → merge-FTk4LsnM.js} +3 -3
- package/server/{merge-agent-GWhmnxFk.js → merge-agent-C-dsN9se.js} +37 -33
- package/server/{merge-agent-BRSz26Oh.js → merge-agent-D-4_iQgy.js} +2 -2
- package/server/{merge-batch-CFMEtTxv.js → merge-batch-BJjzUUL7.js} +1 -1
- package/server/{merge-completeness-CP347umA.js → merge-completeness-BOtBUwTU.js} +4 -4
- package/server/{merge-completeness-7ajHAIR-.js → merge-completeness-CoLJxfUY.js} +1 -1
- package/server/merge-eligibility-C4rTS97F.js +3 -0
- package/server/merge-eligibility-D7wRnJbj.js +51 -0
- package/server/merge-ops-Cf02szJ5.js +2 -0
- package/server/merge-rebase-Bj7eJAG4.js +2 -0
- package/server/{merge-rebase-C5htyEEH.js → merge-rebase-KBw4rdh3.js} +2 -2
- package/server/{merge-set-DsGW8fmc.js → merge-set-CVfEM57p.js} +1 -1
- package/server/{merge-set-eiE2nC6C.js → merge-set-CyW-xSn4.js} +4 -4
- package/server/{merge-sync-CM2-myXu.js → merge-sync-CYGsJy0u.js} +1 -1
- package/server/{merge-sync-Ct0-cxMX.js → merge-sync-YLvOPAry.js} +2 -2
- package/server/{merge-train-BOu3fN7O.js → merge-train-VxLn8Ms4.js} +4 -4
- package/server/{merge-train-deps-LXHGK61n.js → merge-train-deps-D0y4hBB9.js} +4 -4
- package/server/{merge-verification-BRp08IzI.js → merge-verification-BfJRNMiD.js} +6 -6
- package/server/{merged-docker-cleanup-worker-CwldDjHV.js → merged-docker-cleanup-worker-Bh5fKG_b.js} +4 -4
- package/server/{merged-docker-cleanup-worker-C8eGn78a.js → merged-docker-cleanup-worker-Ci9oeFAe.js} +1 -1
- package/server/messaging-Dfbhgjd6.js +3 -0
- package/server/{multipart-parser-OAuW7824.js → multipart-parser-BYwfKOVU.js} +2 -2
- package/server/{no-resume-mode-MWI6pnrK.js → no-resume-mode-DjMQRkId.js} +1 -1
- package/server/node_modules/.package-lock.json +24 -24
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/AGENTS.md +14 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/CLAUDE.md +14 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/README.md +10 -3
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/package.json +2 -2
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/40_sql/10_basics.ts +175 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/40_sql/index.md +6 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/10_basics.ts +3 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/20_testing.ts +100 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/api/Users.ts +30 -14
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/domain/User.ts +15 -6
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/server/Authorization.ts +11 -10
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/server/Users/http.ts +41 -32
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/server/Users.ts +141 -20
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/70_cli/10_basics.ts +31 -5
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.d.ts.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js +10 -9
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeClusterSocket.d.ts.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeClusterSocket.js +12 -9
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeClusterSocket.js.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeSocket.js +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeSocket.js.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeSocketServer.js +4 -4
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeSocketServer.js.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeStream.d.ts.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeStream.js +10 -4
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeStream.js.map +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.d.ts +4 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.d.ts.map +1 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.js +10 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.js.map +1 -0
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/package.json +7 -7
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeChildProcessSpawner.ts +16 -11
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeClusterSocket.ts +15 -12
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeSocket.ts +1 -1
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeSocketServer.ts +4 -4
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeStream.ts +10 -4
- package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/internal/nodeChildProcessSpawner.ts +16 -0
- package/server/node_modules/@types/node/README.md +1 -1
- package/server/node_modules/@types/node/buffer.buffer.d.ts +5 -5
- package/server/node_modules/@types/node/crypto.d.ts +2 -2
- package/server/node_modules/@types/node/http.d.ts +16 -0
- package/server/node_modules/@types/node/http2.d.ts +10 -2
- package/server/node_modules/@types/node/package.json +2 -2
- package/server/node_modules/@types/node/process.d.ts +52 -0
- package/server/node_modules/@types/node/quic.d.ts +210 -28
- package/server/node_modules/@types/node/sqlite.d.ts +6 -2
- package/server/node_modules/@types/node/test.d.ts +36 -0
- package/server/node_modules/ansi-regex/index.js +3 -2
- package/server/node_modules/ansi-regex/package.json +1 -1
- package/server/node_modules/effect/node_modules/uuid/README.md +19 -19
- package/server/node_modules/effect/node_modules/uuid/dist/v1.js +7 -3
- package/server/node_modules/effect/node_modules/uuid/dist/v7.js +5 -2
- package/server/node_modules/effect/node_modules/uuid/dist-node/v1.js +7 -3
- package/server/node_modules/effect/node_modules/uuid/dist-node/v7.js +5 -2
- package/server/node_modules/effect/node_modules/uuid/package.json +4 -3
- package/server/node_modules/gaxios/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/server/node_modules/gaxios/build/esm/tsconfig.tsbuildinfo +1 -1
- package/server/node_modules/gaxios/package.json +3 -3
- package/server/node_modules/msgpackr/dist/index-no-eval.cjs +11 -5
- package/server/node_modules/msgpackr/dist/index-no-eval.cjs.map +1 -1
- package/server/node_modules/msgpackr/dist/index-no-eval.min.js +1 -1
- package/server/node_modules/msgpackr/dist/index-no-eval.min.js.map +1 -1
- package/server/node_modules/msgpackr/dist/index.js +11 -5
- package/server/node_modules/msgpackr/dist/index.js.map +1 -1
- package/server/node_modules/msgpackr/dist/index.min.js +1 -1
- package/server/node_modules/msgpackr/dist/index.min.js.map +1 -1
- package/server/node_modules/msgpackr/dist/node.cjs +11 -5
- package/server/node_modules/msgpackr/dist/node.cjs.map +1 -1
- package/server/node_modules/msgpackr/dist/test.js +11 -5
- package/server/node_modules/msgpackr/dist/test.js.map +1 -1
- package/server/node_modules/msgpackr/dist/unpack-no-eval.cjs +11 -5
- package/server/node_modules/msgpackr/dist/unpack-no-eval.cjs.map +1 -1
- package/server/node_modules/msgpackr/package.json +1 -1
- package/server/node_modules/msgpackr/unpack.js +11 -5
- package/server/node_modules/picomatch/lib/parse.js +10 -1
- package/server/node_modules/picomatch/lib/scan.js +30 -18
- package/server/node_modules/picomatch/package.json +1 -1
- package/server/{orphan-proposed-reconciler-BAE5AZ_e.js → orphan-proposed-reconciler-CnP0K2v3.js} +2 -2
- package/server/{orphan-proposed-reconciler-cV3URUqk.js → orphan-proposed-reconciler-nFUlquZt.js} +24 -23
- package/server/package-lock.json +25 -25
- package/server/package.json +1 -1
- package/server/{pan-dir-DDd91kMb.js → pan-dir-B4NfzOf3.js} +5 -5
- package/server/{deacon-merge-BOGFEV8_.js → parked-residue-8WbU0y1z.js} +188 -69
- package/server/{paths-CRLnDgcI.js → paths-rETQhTF2.js} +2 -2
- package/server/{pending-lifecycle-claim-CYgMiDAP.js → pending-lifecycle-claim-yAwDuGS4.js} +2 -2
- package/server/{pickup-BjJsSX12.js → pickup-Dle6k9Xt.js} +1 -1
- package/server/{pipeline-agent-reader-BLc43dVJ.js → pipeline-agent-reader-CeWhQzXC.js} +5 -5
- package/server/{pipeline-membership-BHZp_ShY.js → pipeline-membership-BV4hdkHm.js} +1 -1
- package/server/{pipeline-membership-5qlRz5Qg.js → pipeline-membership-C9ykcjsn.js} +1 -1
- package/server/{pipeline-membership-gather-CGFY1v-y.js → pipeline-membership-gather-Ba0wJNCR.js} +17 -12
- package/server/{pipeline-membership-gather-WhRc1yke.js → pipeline-membership-gather-C9E22B2W.js} +1 -1
- package/server/{pipeline-notifier-C4fZ2ito.js → pipeline-notifier-B5DPXvnr.js} +1 -1
- package/server/{pipeline-notifier-BmsLWM_2.js → pipeline-notifier-p190L97e.js} +2 -2
- package/server/{post-merge-lifecycle-worker-KK1RTKRE.js → post-merge-lifecycle-worker-OQoK8Ckg.js} +3 -3
- package/server/{post-merge-state-_Lj3LDLh.js → post-merge-state-DFaf7OI1.js} +4 -4
- package/server/prd-locations-F2oLSAhy.js +124 -0
- package/server/{project-pipelines-CCkebHOu.js → project-pipelines-CUsa6U59.js} +2 -2
- package/server/project-repos-BVdi9-ch.js +3 -0
- package/server/{project-repos-B4MK48j4.js → project-repos-CsfvLtmr.js} +29 -3
- package/server/project-resource-refresh-queue-BehrH4Ai.js +865 -0
- package/server/project-resource-refresh-queue-D2110Guc.js +2 -0
- package/server/{projects-DvPEAP18.js → projects-BMuEf14J.js} +1 -1
- package/server/{prompts-BiS5I2tZ.js → prompts-CKpDt8Jn.js} +2 -2
- package/server/providers-Buv2wmFU.js +3 -0
- package/server/{providers-DrfK0Ip8.js → providers-CxPKmyif.js} +7 -7
- package/server/public/assets/{chunk-BO2N2NFS-GtVe_o56.js → chunk-BO2N2NFS-DZOQVqV1.js} +4 -4
- package/server/public/assets/{diagram-OG6HWLK6-BvhcYYHc.js → diagram-OG6HWLK6-oKeXcbO1.js} +1 -1
- package/server/public/assets/{dist-CSmUXazd.js → dist-2qPmeRzT.js} +3 -3
- package/server/public/assets/{dist-D0ryefak.js → dist-ClBlE-Nm.js} +1 -1
- package/server/public/assets/{ganttDiagram-6RSMTGT7-BXA51DzM.js → ganttDiagram-6RSMTGT7-BwdG9fQv.js} +1 -1
- package/server/public/assets/{highlighted-body-OFNGDK62-mlV4EpWt.js → highlighted-body-OFNGDK62-BzGNdskQ.js} +1 -1
- package/server/public/assets/index-CdPveU3M.css +1 -0
- package/server/public/assets/index-Cg6tdZoY.js +860 -0
- package/server/public/assets/{linear-BPE7oswm.js → linear-DpEt1TJb.js} +1 -1
- package/server/public/assets/mermaid-GHXKKRXX-6KBD_3T_.js +1 -0
- package/server/public/assets/{pieDiagram-4H26LBE5-BguGGV3S.js → pieDiagram-4H26LBE5-9BpM4oRJ.js} +1 -1
- package/server/public/assets/{prod-aKDYUrXQ.js → prod-CzJiNNEG.js} +4 -4
- package/server/public/assets/{quadrantDiagram-W4KKPZXB-Bx3i4B6H.js → quadrantDiagram-W4KKPZXB-BXWVAoZx.js} +1 -1
- package/server/public/assets/{sankeyDiagram-5OEKKPKP-B5vuLjA4.js → sankeyDiagram-5OEKKPKP-5oxodGEw.js} +1 -1
- package/server/public/assets/{xychartDiagram-2RQKCTM6-HPlpkqsN.js → xychartDiagram-2RQKCTM6-BChDrHxZ.js} +1 -1
- package/server/public/index.html +2 -2
- package/server/pull-requests-CmlandI7.js +2 -0
- package/server/{pull-requests-BcHIsFJv.js → pull-requests-T0OV0Vn4.js} +3 -3
- package/server/{rally-B1OMtzch.js → rally-CUqj2oIN.js} +3 -3
- package/server/rally-DYIn9R2U.js +3 -0
- package/server/{rally-api-ShZ4kvn0.js → rally-api-BFPb2oSq.js} +2 -2
- package/server/{rally-api-u_vkr5c_.js → rally-api-BoucQG1u.js} +1 -1
- package/server/{rally-client-D6Feq1Ka.js → rally-client-16iObny7.js} +5 -5
- package/server/{rally-client-DgZvUZqX.js → rally-client-CsqLjLLa.js} +1 -1
- package/server/{reap-terminal-sessions-CRfiXLY0.js → reap-terminal-sessions-BaDSNR-k.js} +2 -2
- package/server/{reap-terminal-sessions-D7f3zSE9.js → reap-terminal-sessions-DgEIKMhH.js} +2 -2
- package/server/{rebuild-stack-CCwKHZb6.js → rebuild-stack-BcBVFJp3.js} +2 -2
- package/server/{rebuild-stack-DKxOnkpE.js → rebuild-stack-CyXMrj6K.js} +7 -7
- package/server/reconciler-caYiRnPy.js +657 -0
- package/server/{reconstruct-cache-BP8UIKt7.js → reconstruct-cache-3JzPOune.js} +7 -7
- package/server/{record-By-wp6pg.js → record-DYOg97Iv.js} +1 -1
- package/server/{record-update-D23jPU6b.js → record-update-BPqpBu3O.js} +9 -7
- package/server/{record-update-ByGtIlUK.js → record-update-CDPEX7BH.js} +1 -1
- package/server/{recovery-trip-C4dTl8DO.js → recovery-trip-CpfW6LCJ.js} +43 -10
- package/server/{recovery-trip-qloOYOFz.js → recovery-trip-xqKC07Gy.js} +1 -1
- package/server/{release-engine-Crc0Tjx-.js → release-engine-C_OOhCaK.js} +5 -5
- package/server/{release-set-DDXwbIK7.js → release-set-DOIDz2vw.js} +3 -3
- package/server/{remote-oEMfXlwT.js → remote-BTh-sjpX.js} +3 -3
- package/server/{remote-agents-Bgtc2nOO.js → remote-agents-DbbN7vSm.js} +6 -6
- package/server/{remote-agents-DQVGZVQ9.js → remote-agents-MuXx2gWm.js} +1 -1
- package/server/{remote-completion-DxUJ5HKR.js → remote-completion-LcWCpAm2.js} +13 -13
- package/server/{remote-CBpLi4Yy.js → remote-xY0B43Ho.js} +3 -3
- package/server/{resolver-CuAULbLs.js → resolver-C2QKOf09.js} +2 -2
- package/server/{resolver-C8rooxoz.js → resolver-D4nsxfGo.js} +31 -8
- package/server/resume-ByUrJUNX.js +3 -0
- package/server/{review-agent-7C2w5CzU.js → review-agent-BRBTm1qE.js} +43 -55
- package/server/review-agent-Caodi0PX.js +3 -0
- package/server/{review-artifacts-BJeEfm2r.js → review-artifacts-DgaDlbO4.js} +6 -6
- package/server/{review-convoy-liveness-DfF9eXjI.js → review-convoy-liveness-BBvyuRLC.js} +20 -11
- package/server/{review-run-recovery-ZjuDTNhZ.js → review-run-recovery-DCzWMMvE.js} +1 -1
- package/server/{review-run-recovery-7BKt2Es0.js → review-run-recovery-THHMKlXJ.js} +3 -3
- package/server/{review-status-CUnjjOUu.js → review-status-Bge_3XTR.js} +1 -1
- package/server/{review-status-DBnR5t4z.js → review-status-DpniqzPT.js} +113 -44
- package/server/{review-status-emit-Cg4tOb8U.js → review-status-emit-D7sM720S.js} +3 -3
- package/server/{review-status-enrichment-D-rQshu6.js → review-status-enrichment-PDI4-faj.js} +3 -3
- package/server/{review-status-source-DSn0glLa.js → review-status-source-D2PCWS6E.js} +1 -1
- package/server/{review-status-source-Ct912fv_.js → review-status-source-Jq0BXmn3.js} +1 -1
- package/server/{review-status-sync-B7V_Gg51.js → review-status-sync-C6ZKTI8f.js} +11 -8
- package/server/{review-status-sync-YthpOH_q.js → review-status-sync-CvpHWyvR.js} +1 -1
- package/server/{review-verdict-feedback-C-dBon_-.js → review-verdict-feedback-B2ojHFH5.js} +8 -8
- package/server/{review-verdict-feedback-DqXTuJk8.js → review-verdict-feedback-tyMoLT2L.js} +1 -1
- package/server/{review-verdict-writer-CKaJWp75.js → review-verdict-writer-Cy_1pnIj.js} +7 -7
- package/server/{review-verdict-writer-jldSh3Bm.js → review-verdict-writer-DjrJ64eS.js} +1 -1
- package/server/{rollup-DZwH4CLs.js → rollup-Cp0KEoOu.js} +1 -1
- package/server/{rollup-QCwYcBdP.js → rollup-DU3xBQu2.js} +8 -8
- package/server/{scanner-2aHeLC3W.js → scanner-BFKG3Gxv.js} +8 -8
- package/server/{search-DwHYaj66.js → search-DhtKwbBC.js} +2 -2
- package/server/{secret-redaction-B5G1xZ3k.js → secret-redaction-DLZ-VqHq.js} +1 -1
- package/server/{sequence-io-POKWdusG.js → sequence-io-C-Q19Jez.js} +4 -4
- package/server/{sequencer-agent-DS00KHVm.js → sequencer-agent-eN2P2lDz.js} +6 -6
- package/server/server.js +1499 -1350
- package/server/{service-BLb_CyPL.js → service-CThO0Sar.js} +80 -774
- package/server/{session-fork-DcTzVwex.js → session-fork-ZYTHtpBh.js} +2 -2
- package/server/settings-ByDRfuuE.js +2 -0
- package/server/{settings-Clw8UVNs.js → settings-CTywpFw5.js} +2 -2
- package/server/{settings-B9-H2K_E.js → settings-nAT-eK56.js} +3 -3
- package/server/{shadow-engineering-C6oO_PiR.js → shadow-engineering-BHZKPJhq.js} +3 -3
- package/server/{shadow-state-CEGrrECe.js → shadow-state-BTLi4Axs.js} +2 -2
- package/server/{shadow-state-e7250VUx.js → shadow-state-CZ_LnPsi.js} +1 -1
- package/server/{shadow-utils-xFk2Wusb.js → shadow-utils-CPLlPHdn.js} +2 -2
- package/server/{ship-log-7BnQHuKU.js → ship-log-D-CphNZx.js} +1 -1
- package/server/{ship-record-CwUX6Afo.js → ship-record-BaBla0l_.js} +7 -7
- package/server/{ship-record-BgUPnpT0.js → ship-record-BlvX8-xv.js} +1 -1
- package/server/{ship-status-Ce3_3edi.js → ship-status-rQbPQBsF.js} +2 -2
- package/server/{smart-compaction-BmfIi3oL.js → smart-compaction-CUXn8mfX.js} +1 -1
- package/server/{smart-compaction-Dy0gw1VH.js → smart-compaction-D1CNGdZx.js} +7 -7
- package/server/{spawn-planning-session-nH3b4Drz.js → spawn-planning-session-DCmO6COk.js} +19 -19
- package/server/{spawn-planning-session-CfhxRJoY.js → spawn-planning-session-DfEWyrVV.js} +2 -2
- package/server/{specialist-completion-CC1XJbTx.js → specialist-completion-BMv3K54P.js} +1 -1
- package/server/{specialist-context-cHwpcXSh.js → specialist-context-C1-CfYQb.js} +5 -5
- package/server/{specialist-handoff-logger-GqnGSYoJ.js → specialist-handoff-logger-BDKoz5Z9.js} +2 -2
- package/server/{specialist-logs-5OTnrV91.js → specialist-logs-BJQFkpdG.js} +3 -3
- package/server/specialists-CYt1U3Zm.js +4 -0
- package/server/{specialists-8LcQi9Np.js → specialists-D6MUU31Q.js} +21 -272
- package/server/{specialists-DocAK-7A.js → specialists-DhS79T9v.js} +369 -691
- package/server/{specialists-xXcJHAyg.js → specialists-Dx0zRTxX.js} +1 -1
- package/server/specialists-registry-BRLCi61y.js +3 -0
- package/server/specialists-registry-Bng0OFGH.js +277 -0
- package/server/specs-oRGyfz6C.js +3 -0
- package/server/{src-C2TAxwki.js → src-C7gGe4KU.js} +6 -6
- package/server/{src-DudQNYVw.js → src-CdwN6WY6.js} +344 -7
- package/server/{src-DUVvEA8Q.js → src-DMosbuSJ.js} +3 -3
- package/server/{stack-health-DKT4ySnA.js → stack-health-BKfNaqMm.js} +3 -3
- package/server/{stack-health-CbyiYS9H.js → stack-health-Bz711z1Y.js} +1 -1
- package/server/{stale-task-claims-PzFee70R.js → stale-task-claims-DMRLb5R2.js} +5 -5
- package/server/{staleness-D8UTEXV5.js → staleness-CxZaIhrn.js} +1 -1
- package/server/{staleness-BjOAq9-d.js → staleness-r_dkMyMG.js} +1 -1
- package/server/{stall-sweeper-DOyIfeLR.js → stall-sweeper-CBWqSWV2.js} +8 -8
- package/server/{state-home-DhAZlk5k.js → state-home-DhsMqg8W.js} +2 -2
- package/server/{state-mapping-BVSs84bO.js → state-mapping-D2yC81Vy.js} +1 -1
- package/server/{state-migrate-CJKEwpB0.js → state-migrate-C2Ouyd6e.js} +6 -6
- package/server/{state-mirror-Do7pag7W.js → state-mirror-BPXciz84.js} +3 -3
- package/server/stuck-remediation-DALieAkx.js +2 -0
- package/server/stuck-remediation-kta3KN7c.js +774 -0
- package/server/{substrate-bug-weights-service-BTNjHBnl.js → substrate-bug-weights-service-D_ICP7TI.js} +3 -3
- package/server/{summary-fork-CvB7Oyq9.js → summary-fork-CojrFKb6.js} +2 -2
- package/server/{summary-fork-CZ88rhVx.js → summary-fork-DhhaFhxZ.js} +113 -30
- package/server/supervisor/{pane-composer-BaLLspSj.js → pane-composer-CoiVkGIt.js} +8 -1
- package/server/supervisor/{paths-D6XUcR_g.js → paths-DTGbtcaP.js} +8 -4
- package/server/supervisor/pty-supervisor.js +3 -3
- package/server/supervisor/{pty-token-DjjHxoCq.js → pty-token-GVqnvU3U.js} +2 -2
- package/server/supervisor-DSSWo4M2.js +2 -0
- package/server/{supervisor-D4v0WfiQ.js → supervisor-DqH-laVL.js} +4 -4
- package/server/{swarm-readiness-D8R-LWX5.js → swarm-readiness-LF8ZF_hc.js} +3 -3
- package/server/{synthesis-verdict-N5Z11pg7.js → synthesis-verdict-CGFF8uQI.js} +2 -2
- package/server/{synthesis-verdict-B6wvLGcA.js → synthesis-verdict-DSoOFUIV.js} +1 -1
- package/server/{system-prerequisites-BbGZ_WHF.js → system-prerequisites-Lsx0jUUV.js} +2 -2
- package/server/{teardown-workspace-CYend-KY.js → teardown-workspace-DMwomEG1.js} +16 -16
- package/server/{test-agent-queue-BUtWhNcc.js → test-agent-queue-Cu0D6BYe.js} +6 -6
- package/server/{test-verdict-BWm3hgDj.js → test-verdict-9mvl7pQn.js} +1 -1
- package/server/{test-verdict-BWtRmdiR.js → test-verdict-oNSv1rVr.js} +2 -2
- package/server/{tldr-daemon-CneJ24eL.js → tldr-daemon-CRSAkhBx.js} +1 -1
- package/server/{tldr-daemon-CMVBT4kT.js → tldr-daemon-McqCk2X7.js} +2 -2
- package/server/tmux-CYucGrTl.js +4 -0
- package/server/{tmux-BqXzRuaH.js → tmux-wnT_hg-s.js} +91 -19
- package/server/{token-CO3INKbh.js → token-BdfZLRg1.js} +2 -2
- package/server/{token-util-DyJJyX_B.js → token-util-Crcay9j_.js} +1 -1
- package/server/token-util-DfUS3Lpp.js +3 -0
- package/server/{tracker-config-DVzhaUxO.js → tracker-config-tfAOWgng.js} +2 -2
- package/server/{tracker-utils-xnVJVrrO.js → tracker-utils-Dbg_pVZg.js} +2 -2
- package/server/{traefik-connect-A5k54mCv.js → traefik-connect-DoQvQ6oJ.js} +1 -1
- package/server/{tunnel-DauSR-rs.js → tunnel-B1MNIgkL.js} +1 -1
- package/server/{tunnel-CwOnS-PB.js → tunnel-skW68j9B.js} +3 -3
- package/server/{typed-errors-B-gfU2RB.js → typed-errors-CZ3GFBvo.js} +1 -1
- package/server/{typed-errors-DzC4zXbI.js → typed-errors-DXqf3RnP.js} +1 -1
- package/server/{types-DjpLVpsj.js → types-PW4zkxCM.js} +1 -1
- package/server/{types-DbxY2QB6.js → types-pLpbsNto.js} +1 -1
- package/server/{uat-failure-feedback-BVqsWlrr.js → uat-failure-feedback-ly8ZwtfC.js} +5 -5
- package/server/{uat-promote-verification-DmG097QS.js → uat-promote-verification-BBaMwfdc.js} +5 -5
- package/server/{uat-train-DVUNW03P.js → uat-train-BBEiYSep.js} +0 -0
- package/server/{uat-train-COSy-vEX.js → uat-train-D7Ran2FB.js} +1 -1
- package/server/{validate-Dvv83iBx.js → validate-BYcBcBwg.js} +3 -3
- package/server/{validation-DlHafKzu.js → validation-BfG2jW5C.js} +9 -6
- package/server/{validation-BdCjzWLN.js → validation-nSrYiYvA.js} +1 -1
- package/server/{verification-artifact-CaSbxUVg.js → verification-artifact-Cmhgq4b_.js} +1 -1
- package/server/{verification-artifact-0Zku8N-W.js → verification-artifact-DglwaHke.js} +1 -1
- package/server/{verification-runner-DwP2fUEF.js → verification-runner-BEq5ZF-h.js} +53 -27
- package/server/{verification-runner-C6wdZda2.js → verification-runner-CFjAuv9u.js} +1 -1
- package/server/{vtt-parser-luerJpYT.js → vtt-parser-Va--tv27.js} +1 -1
- package/server/work-agent-prompt-BnhKNAg7.js +3 -0
- package/server/{work-agent-prompt--9AWNYwZ.js → work-agent-prompt-CaD2ue8m.js} +14 -14
- package/server/{work-agent-start-BNQO65W7.js → work-agent-start-0nJ-6UeA.js} +2 -2
- package/server/{work-agent-start-DkzseQFl.js → work-agent-start-D8NEN5KD.js} +1 -1
- package/server/workflows-BtHRlFIm.js +2 -0
- package/server/{workflows-BYwR2aIN.js → workflows-C7mxM1qc.js} +114 -41
- package/server/{workspace-iTnTycOB.js → workspace-BAhMgMaO.js} +3 -3
- package/server/{workspace-B-QJa3Ps.js → workspace-Dbqv9ehn.js} +1 -1
- package/server/{workspace-anchor-drift-CHiGg8iu.js → workspace-anchor-drift-B_3kyyxJ.js} +4 -4
- package/server/{workspace-anchor-drift-DTt6h2Em.js → workspace-anchor-drift-Bpa3xoni.js} +1 -1
- package/server/{workspace-config-D0CavVtz.js → workspace-config-D-bNq2CF.js} +1 -1
- package/server/{workspace-manager-5BKPV6SY.js → workspace-manager-BrbX90Rm.js} +1 -1
- package/server/{workspace-manager-W1OnbvU5.js → workspace-manager-CM8RCrSc.js} +17 -17
- package/server/{workspace-metadata-tbbevEmP.js → workspace-metadata-BEOwJSdK.js} +1 -1
- package/server/{workspace-metadata-dJhXvZGQ.js → workspace-metadata-Cu6yfxBS.js} +2 -2
- package/server/{workspaces-BlpbOPZ7.js → workspaces-C7LAuZfe.js} +140 -709
- package/sync-sources/dev-skills/pan-style-guide/SKILL.md +90 -15
- package/sync-sources/hooks/linear-mcp-auth-hook +6 -1
- package/sync-sources/rules/agent-message-delivery.md +21 -14
- package/sync-sources/rules/handoff-isolate-cwd.md +4 -4
- package/sync-sources/rules/pan-handoff-focus-limit.md +14 -5
- package/sync-sources/rules/ste-writing.md +17 -0
- package/sync-sources/rules/work-agents-via-pan.md +2 -1
- package/sync-sources/rules/writing-style.md +3 -2
- package/sync-sources/skills/{skill-creator → claude-skill-creator}/SKILL.md +1 -1
- package/sync-sources/skills/{skill-creator → claude-skill-creator}/scripts/init_skill.py +1 -1
- package/sync-sources/skills/{skill-creator → claude-skill-creator}/scripts/package_skill.py +1 -1
- package/sync-sources/skills/pan-gauntlet-loop/SKILL.md +230 -0
- package/sync-sources/skills/pan-gauntlet-loop/assets/PROMPT.template.md +92 -0
- package/sync-sources/skills/pan-gauntlet-loop/assets/REFERENCE-BAR.template.md +53 -0
- package/sync-sources/skills/pan-gauntlet-loop/assets/STYLE.template.md +41 -0
- package/sync-sources/skills/pan-gauntlet-loop/assets/gauntlet-index.html +237 -0
- package/sync-sources/skills/pan-gauntlet-loop/references/domains.md +106 -0
- package/sync-sources/skills/pan-handoff/SKILL.md +24 -6
- package/sync-sources/skills/pan-help/SKILL.md +1 -1
- package/sync-sources/skills/pan-peer-review/SKILL.md +3 -3
- package/sync-sources/skills/pan-restart/SKILL.md +6 -3
- package/sync-sources/skills/pan-start/SKILL.md +3 -0
- package/sync-sources/skills/pan-swarm/SKILL.md +32 -44
- package/sync-sources/skills/pan-sync/SKILL.md +1 -1
- package/server/activity-logger-BejO16Am.js +0 -3
- package/server/agent-state-DH_-Jkua.js +0 -3
- package/server/agents-megfmQHM.js +0 -3
- package/server/archive-planning-C-H9cM_J.js +0 -2
- package/server/build-info-PQlh_Rhb.js +0 -2
- package/server/cli-TaZspPHS.js +0 -2
- package/server/cliproxy-36ncAXlu.js +0 -3
- package/server/context-layers-CF6zHws4.js +0 -4
- package/server/conversations-AnGJ5rtX.js +0 -3
- package/server/deacon-BEH-IY0v.js +0 -5
- package/server/deacon-swarm-BHX-kR1b.js +0 -2
- package/server/deacon-swarm-BiLfNm_v.js +0 -1522
- package/server/dead-end-trip-BWpDg1Qd.js +0 -2
- package/server/delivery-cJM6zRjJ.js +0 -3
- package/server/deploy-queue-CmVBZEja.js +0 -2
- package/server/dist-VKBfkdi7.js +0 -3
- package/server/durable-review-pipeline-DgcVCYDL.js +0 -3
- package/server/factory-D4V2wd_V.js +0 -717
- package/server/forge-CrP1L3i6.js +0 -2
- package/server/hume-1ubD_6O7.js +0 -3
- package/server/inspect-agent-CfxERkNt.js +0 -2
- package/server/merge-ops-DtHx17Vd.js +0 -2
- package/server/merge-rebase-BvB4UuNS.js +0 -2
- package/server/project-repos-BJiShUsN.js +0 -3
- package/server/providers-CStNGwze.js +0 -3
- package/server/public/assets/index-BFEwfmqX.js +0 -860
- package/server/public/assets/index-_USwyTAT.css +0 -1
- package/server/public/assets/mermaid-GHXKKRXX-Dsln95SK.js +0 -1
- package/server/pull-requests-C1Cqp2yo.js +0 -2
- package/server/rally-CjayjUIl.js +0 -3
- package/server/resume-D7JuMCRQ.js +0 -3
- package/server/review-agent-BUNTVJK2.js +0 -2
- package/server/settings-DBWB1gsG.js +0 -2
- package/server/specialists-D8gsOCwh.js +0 -3
- package/server/specs-BqkrRnU9.js +0 -3
- package/server/stuck-remediation-Di5JYkoo.js +0 -1164
- package/server/stuck-remediation-TNM1VhZb.js +0 -2
- package/server/supervisor-DX8VsPnb.js +0 -2
- package/server/tmux-CqNapnrr.js +0 -4
- package/server/token-util-Bu8bPF9f.js +0 -3
- package/server/workflows-Cf4LAnhg.js +0 -2
|
@@ -1,9 +1,312 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { bn as loadProjectsConfigSync, fn as init_projects, on as getProjectSync } from "./config-yaml-
|
|
3
|
-
import { _ as integer, a as EventBus, d as getOverdeckDatabaseSync, f as init_infra, h as text, m as sqliteTable, p as init_sqlite_core, r as Db, v as init_drizzle_orm, x as eq } from "./infra-
|
|
4
|
-
import { n as init_issues, t as IssueId } from "./issues-
|
|
2
|
+
import { bn as loadProjectsConfigSync, fn as init_projects, li as init_errors, on as getProjectSync } from "./config-yaml-D60AnTIu.js";
|
|
3
|
+
import { _ as integer, a as EventBus, d as getOverdeckDatabaseSync, f as init_infra, h as text, m as sqliteTable, p as init_sqlite_core, r as Db, v as init_drizzle_orm, x as eq } from "./infra-CJRi_5Wu.js";
|
|
4
|
+
import { n as init_issues, t as IssueId } from "./issues-RGHQUKhB.js";
|
|
5
|
+
import { o as getPricingSync, s as init_cost } from "./cost-DTuIRE4y.js";
|
|
5
6
|
import { Context, Effect, Layer, Schema } from "effect";
|
|
7
|
+
import { existsSync, readFileSync } from "fs";
|
|
6
8
|
import { HttpApiEndpoint, HttpApiGroup } from "effect/unstable/httpapi";
|
|
9
|
+
//#region ../../lib/cost-parsers/ohmypi-parser.ts
|
|
10
|
+
/**
|
|
11
|
+
* oh-my-pi (omp) JSONL parser (PAN-1989). Forked from pi-parser.ts (PAN-636).
|
|
12
|
+
*
|
|
13
|
+
* omp sessions live at:
|
|
14
|
+
* ~/.omp/agent/sessions/<encoded-cwd>/<timestamp>_<session-id>.jsonl
|
|
15
|
+
*
|
|
16
|
+
* Format (omp v3 — same as Pi v3):
|
|
17
|
+
* - First line: { type: "session", version: 3, id, timestamp, cwd }
|
|
18
|
+
* - Subsequent: every entry has an opaque `id` and a `parentId`. parentId
|
|
19
|
+
* is null for the first non-session entry.
|
|
20
|
+
* - The graph is a tree (omp supports forking/branching), not a list.
|
|
21
|
+
*
|
|
22
|
+
* To compute usage for the *active* branch we walk leaf -> root via parentId
|
|
23
|
+
* from the latest leaf (max timestamp among entries that have no children).
|
|
24
|
+
* omp assistant messages report per-call usage — input/output tokens are NOT
|
|
25
|
+
* cumulative across the conversation — so summing along the active branch is
|
|
26
|
+
* correct without subtracting pre-compaction input.
|
|
27
|
+
*
|
|
28
|
+
* SessionUsage shape comes from jsonl-parser.ts (the Claude Code parser); we
|
|
29
|
+
* map into it unchanged so all upstream consumers keep working.
|
|
30
|
+
*/
|
|
31
|
+
function isMessage(entry) {
|
|
32
|
+
return entry.type === "message";
|
|
33
|
+
}
|
|
34
|
+
function isAssistantMessage(entry) {
|
|
35
|
+
return isMessage(entry) && entry.message?.role === "assistant";
|
|
36
|
+
}
|
|
37
|
+
function pricingProviderFor(provider, model) {
|
|
38
|
+
const lowerProvider = provider?.toLowerCase() ?? "";
|
|
39
|
+
const lowerModel = model.toLowerCase();
|
|
40
|
+
if (lowerProvider === "openai" || lowerProvider === "openai-codex" || lowerModel.includes("gpt")) return "openai";
|
|
41
|
+
if (lowerProvider === "google" || lowerModel.includes("gemini")) return "google";
|
|
42
|
+
if (lowerProvider === "anthropic" || lowerModel.includes("claude")) return "anthropic";
|
|
43
|
+
if (lowerProvider === "kimi" || lowerProvider === "minimax" || lowerProvider === "zai" || lowerProvider === "zhipu" || lowerProvider === "custom" || lowerModel.includes("kimi") || lowerModel.includes("minimax") || lowerModel.includes("glm")) return "custom";
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
function computeCostFromPricing(provider, model, usage) {
|
|
47
|
+
const pricingProvider = pricingProviderFor(provider, model);
|
|
48
|
+
if (!pricingProvider) return {
|
|
49
|
+
cost: 0,
|
|
50
|
+
reason: "unknown-provider"
|
|
51
|
+
};
|
|
52
|
+
const pricing = getPricingSync(pricingProvider, model);
|
|
53
|
+
if (!pricing) return {
|
|
54
|
+
cost: 0,
|
|
55
|
+
reason: "unpriced-model"
|
|
56
|
+
};
|
|
57
|
+
return { cost: usage.inputTokens / 1e3 * pricing.inputPer1k + usage.outputTokens / 1e3 * pricing.outputPer1k + (usage.cacheReadTokens ?? 0) / 1e3 * (pricing.cacheReadPer1k ?? 0) + (usage.cacheWriteTokens ?? 0) / 1e3 * (pricing.cacheWrite5mPer1k ?? 0) };
|
|
58
|
+
}
|
|
59
|
+
function tsMs(timestamp) {
|
|
60
|
+
if (!timestamp) return 0;
|
|
61
|
+
const t = Date.parse(timestamp);
|
|
62
|
+
return Number.isFinite(t) ? t : 0;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Parse a Pi session JSONL file into a SessionUsage record.
|
|
66
|
+
*
|
|
67
|
+
* Returns null if the file does not exist, is empty, or is unparseable. Errors
|
|
68
|
+
* during line parsing are tolerated (the line is skipped); we never throw.
|
|
69
|
+
*/
|
|
70
|
+
function parseOhmypiSessionSync(filePath) {
|
|
71
|
+
if (!existsSync(filePath)) return null;
|
|
72
|
+
const result = parseOhmypiSessionContent(readFileSync(filePath, "utf8"), filePath);
|
|
73
|
+
return result.ok ? result.usage : null;
|
|
74
|
+
}
|
|
75
|
+
function parseOhmypiSessionCostResultSync(filePath) {
|
|
76
|
+
if (!existsSync(filePath)) return {
|
|
77
|
+
ok: false,
|
|
78
|
+
reason: "unreadable"
|
|
79
|
+
};
|
|
80
|
+
try {
|
|
81
|
+
return parseOhmypiSessionContent(readFileSync(filePath, "utf8"), filePath);
|
|
82
|
+
} catch {
|
|
83
|
+
return {
|
|
84
|
+
ok: false,
|
|
85
|
+
reason: "unreadable"
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Parse Pi session JSONL content. Exposed for tests and callers that already
|
|
91
|
+
* have the file content in memory.
|
|
92
|
+
*/
|
|
93
|
+
function parseOhmypiSessionContent(content, filePath = "<inline>") {
|
|
94
|
+
const lines = content.split("\n").filter((l) => l.trim().length > 0);
|
|
95
|
+
if (lines.length === 0) return {
|
|
96
|
+
ok: false,
|
|
97
|
+
reason: "empty"
|
|
98
|
+
};
|
|
99
|
+
let root = null;
|
|
100
|
+
const entriesById = /* @__PURE__ */ new Map();
|
|
101
|
+
const childrenOf = /* @__PURE__ */ new Map();
|
|
102
|
+
const unknownTypesSeen = /* @__PURE__ */ new Set();
|
|
103
|
+
for (const line of lines) {
|
|
104
|
+
let parsed;
|
|
105
|
+
try {
|
|
106
|
+
parsed = JSON.parse(line);
|
|
107
|
+
} catch {
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
if (!parsed || typeof parsed !== "object") continue;
|
|
111
|
+
const entry = parsed;
|
|
112
|
+
if (entry.type === "session") {
|
|
113
|
+
root = entry;
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
if (!entry.id) continue;
|
|
117
|
+
if (!KNOWN_TYPES.has(entry.type)) {
|
|
118
|
+
if (!unknownTypesSeen.has(entry.type)) {
|
|
119
|
+
unknownTypesSeen.add(entry.type);
|
|
120
|
+
console.debug(`[ohmypi-parser] unknown entry type "${entry.type}" in ${filePath} — ignoring`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
entriesById.set(entry.id, entry);
|
|
124
|
+
const list = childrenOf.get(entry.parentId ?? null);
|
|
125
|
+
if (list) list.push(entry.id);
|
|
126
|
+
else childrenOf.set(entry.parentId ?? null, [entry.id]);
|
|
127
|
+
}
|
|
128
|
+
if (!root) return {
|
|
129
|
+
ok: false,
|
|
130
|
+
reason: "missing-session-root"
|
|
131
|
+
};
|
|
132
|
+
if (entriesById.size === 0) return {
|
|
133
|
+
ok: true,
|
|
134
|
+
usage: emptyUsage(filePath, root)
|
|
135
|
+
};
|
|
136
|
+
const leaves = [];
|
|
137
|
+
for (const entry of entriesById.values()) {
|
|
138
|
+
const kids = childrenOf.get(entry.id);
|
|
139
|
+
if (!kids || kids.length === 0) leaves.push(entry);
|
|
140
|
+
}
|
|
141
|
+
if (leaves.length === 0) leaves.push(...entriesById.values());
|
|
142
|
+
let latestLeaf = leaves[0];
|
|
143
|
+
for (const leaf of leaves) if (tsMs(leaf.timestamp) > tsMs(latestLeaf.timestamp)) latestLeaf = leaf;
|
|
144
|
+
const branch = [];
|
|
145
|
+
const visited = /* @__PURE__ */ new Set();
|
|
146
|
+
let cursor = latestLeaf;
|
|
147
|
+
while (cursor) {
|
|
148
|
+
if (visited.has(cursor.id)) break;
|
|
149
|
+
visited.add(cursor.id);
|
|
150
|
+
branch.push(cursor);
|
|
151
|
+
if (!cursor.parentId) break;
|
|
152
|
+
cursor = entriesById.get(cursor.parentId);
|
|
153
|
+
}
|
|
154
|
+
branch.reverse();
|
|
155
|
+
const totals = {
|
|
156
|
+
inputTokens: 0,
|
|
157
|
+
outputTokens: 0,
|
|
158
|
+
cacheReadTokens: 0,
|
|
159
|
+
cacheWriteTokens: 0
|
|
160
|
+
};
|
|
161
|
+
let costV2 = 0;
|
|
162
|
+
let messageCount = 0;
|
|
163
|
+
let costRecomputedFromTokens = 0;
|
|
164
|
+
const modelBreakdown = {};
|
|
165
|
+
const usageEvents = [];
|
|
166
|
+
const unpricedModels = [];
|
|
167
|
+
const modelsInOrder = [];
|
|
168
|
+
let compactionCount = 0;
|
|
169
|
+
let firstTs = null;
|
|
170
|
+
let lastTs = null;
|
|
171
|
+
for (const entry of branch) {
|
|
172
|
+
if (entry.type === "compaction_start" || entry.type === "session_compact") compactionCount += 1;
|
|
173
|
+
if (!firstTs && entry.timestamp) firstTs = entry.timestamp;
|
|
174
|
+
if (entry.timestamp) lastTs = entry.timestamp;
|
|
175
|
+
if (!isAssistantMessage(entry)) continue;
|
|
176
|
+
const usage = entry.message.usage;
|
|
177
|
+
if (!usage) continue;
|
|
178
|
+
const model = entry.message.model || "unknown";
|
|
179
|
+
const provider = typeof entry.message.provider === "string" ? entry.message.provider : null;
|
|
180
|
+
const input = usage.input ?? 0;
|
|
181
|
+
const output = usage.output ?? 0;
|
|
182
|
+
const cacheRead = usage.cacheRead ?? 0;
|
|
183
|
+
const cacheWrite = usage.cacheWrite ?? 0;
|
|
184
|
+
const tokenUsage = {
|
|
185
|
+
inputTokens: input,
|
|
186
|
+
outputTokens: output,
|
|
187
|
+
cacheReadTokens: cacheRead,
|
|
188
|
+
cacheWriteTokens: cacheWrite
|
|
189
|
+
};
|
|
190
|
+
const hasInlineCost = usage.cost?.total !== void 0;
|
|
191
|
+
let cost = usage.cost?.total ?? 0;
|
|
192
|
+
let warning;
|
|
193
|
+
if (!hasInlineCost && input + output + cacheRead + cacheWrite > 0) {
|
|
194
|
+
const computed = computeCostFromPricing(provider, model, tokenUsage);
|
|
195
|
+
cost = computed.cost;
|
|
196
|
+
if (computed.reason) {
|
|
197
|
+
unpricedModels.push({
|
|
198
|
+
provider,
|
|
199
|
+
model,
|
|
200
|
+
reason: computed.reason
|
|
201
|
+
});
|
|
202
|
+
warning = [{
|
|
203
|
+
type: "unpriced-model",
|
|
204
|
+
provider,
|
|
205
|
+
model,
|
|
206
|
+
reason: computed.reason
|
|
207
|
+
}];
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
const localComputed = hasInlineCost ? (usage.cost?.input ?? 0) + (usage.cost?.output ?? 0) + (usage.cost?.cacheRead ?? 0) + (usage.cost?.cacheWrite ?? 0) : cost;
|
|
211
|
+
totals.inputTokens += input;
|
|
212
|
+
totals.outputTokens += output;
|
|
213
|
+
totals.cacheReadTokens = (totals.cacheReadTokens ?? 0) + cacheRead;
|
|
214
|
+
totals.cacheWriteTokens = (totals.cacheWriteTokens ?? 0) + cacheWrite;
|
|
215
|
+
costV2 += cost;
|
|
216
|
+
costRecomputedFromTokens += localComputed;
|
|
217
|
+
messageCount += 1;
|
|
218
|
+
if (!modelBreakdown[model]) {
|
|
219
|
+
modelBreakdown[model] = {
|
|
220
|
+
cost: 0,
|
|
221
|
+
inputTokens: 0,
|
|
222
|
+
outputTokens: 0,
|
|
223
|
+
messageCount: 0,
|
|
224
|
+
cacheReadTokens: 0,
|
|
225
|
+
cacheWriteTokens: 0
|
|
226
|
+
};
|
|
227
|
+
modelsInOrder.push(model);
|
|
228
|
+
}
|
|
229
|
+
const slot = modelBreakdown[model];
|
|
230
|
+
slot.cost += cost;
|
|
231
|
+
slot.inputTokens += input;
|
|
232
|
+
slot.outputTokens += output;
|
|
233
|
+
slot.messageCount += 1;
|
|
234
|
+
slot.cacheReadTokens = (slot.cacheReadTokens ?? 0) + cacheRead;
|
|
235
|
+
slot.cacheWriteTokens = (slot.cacheWriteTokens ?? 0) + cacheWrite;
|
|
236
|
+
usageEvents.push({
|
|
237
|
+
requestId: `ohmypi:${root.id}:${entry.id}`,
|
|
238
|
+
timestamp: entry.timestamp || root.timestamp,
|
|
239
|
+
sessionId: root.id,
|
|
240
|
+
sessionFile: filePath,
|
|
241
|
+
provider,
|
|
242
|
+
model,
|
|
243
|
+
input,
|
|
244
|
+
output,
|
|
245
|
+
cacheRead,
|
|
246
|
+
cacheWrite,
|
|
247
|
+
cost,
|
|
248
|
+
...warning ? { warnings: warning } : {}
|
|
249
|
+
});
|
|
250
|
+
}
|
|
251
|
+
if (Math.abs(costV2 - costRecomputedFromTokens) > 1e-9) console.debug(`[ohmypi-parser] inline cost vs sum-of-line-items delta=${(costV2 - costRecomputedFromTokens).toFixed(6)} in ${filePath}`);
|
|
252
|
+
if (compactionCount > 0) console.debug(`[ohmypi-parser] active branch in ${filePath} has ${compactionCount} compaction event(s) — usage summed per-message (no double-count)`);
|
|
253
|
+
const display = modelsInOrder.length === 0 ? "unknown" : modelsInOrder.length === 1 ? modelsInOrder[0] : modelsInOrder.join(" → ");
|
|
254
|
+
return {
|
|
255
|
+
ok: true,
|
|
256
|
+
usage: {
|
|
257
|
+
sessionId: root.id,
|
|
258
|
+
sessionFile: filePath,
|
|
259
|
+
startTime: firstTs ?? root.timestamp,
|
|
260
|
+
endTime: lastTs ?? root.timestamp,
|
|
261
|
+
model: display,
|
|
262
|
+
usage: totals,
|
|
263
|
+
cost: costV2,
|
|
264
|
+
cost_v2: costV2,
|
|
265
|
+
messageCount,
|
|
266
|
+
modelBreakdown
|
|
267
|
+
},
|
|
268
|
+
usageEvents,
|
|
269
|
+
unpricedModels
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
function emptyUsage(filePath, root) {
|
|
273
|
+
return {
|
|
274
|
+
sessionId: root.id,
|
|
275
|
+
sessionFile: filePath,
|
|
276
|
+
startTime: root.timestamp,
|
|
277
|
+
endTime: root.timestamp,
|
|
278
|
+
model: "unknown",
|
|
279
|
+
usage: {
|
|
280
|
+
inputTokens: 0,
|
|
281
|
+
outputTokens: 0,
|
|
282
|
+
cacheReadTokens: 0,
|
|
283
|
+
cacheWriteTokens: 0
|
|
284
|
+
},
|
|
285
|
+
cost: 0,
|
|
286
|
+
cost_v2: 0,
|
|
287
|
+
messageCount: 0,
|
|
288
|
+
modelBreakdown: {}
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
var KNOWN_TYPES;
|
|
292
|
+
var init_ohmypi_parser = __esmMin((() => {
|
|
293
|
+
init_cost();
|
|
294
|
+
init_errors();
|
|
295
|
+
KNOWN_TYPES = new Set([
|
|
296
|
+
"session",
|
|
297
|
+
"message",
|
|
298
|
+
"model_change",
|
|
299
|
+
"thinking_level_change",
|
|
300
|
+
"compaction_start",
|
|
301
|
+
"compaction_end",
|
|
302
|
+
"session_before_compact",
|
|
303
|
+
"session_compact",
|
|
304
|
+
"session_before_switch",
|
|
305
|
+
"session_before_fork",
|
|
306
|
+
"session_start"
|
|
307
|
+
]);
|
|
308
|
+
}));
|
|
309
|
+
//#endregion
|
|
7
310
|
//#region ../../lib/overdeck/control-settings.ts
|
|
8
311
|
function mapProjectConfig(raw, key) {
|
|
9
312
|
return {
|
|
@@ -17,7 +320,7 @@ function overdeckDb() {
|
|
|
17
320
|
}
|
|
18
321
|
/** Read a raw app_settings value synchronously. Returns null if not set. */
|
|
19
322
|
function getSetting(key) {
|
|
20
|
-
const row =
|
|
323
|
+
const row = getOverdeckDatabaseSync(void 0, { readOnly: true }).prepare("SELECT value FROM app_settings WHERE key = ?").get(key);
|
|
21
324
|
return row ? row.value : null;
|
|
22
325
|
}
|
|
23
326
|
/** Write a raw app_settings value synchronously. */
|
|
@@ -164,7 +467,7 @@ function setMergeTrainEnabled(enabled) {
|
|
|
164
467
|
* Sync version of SettingsResolver.getFlywheelRuntime().activeRunId.
|
|
165
468
|
*/
|
|
166
469
|
function getFlywheelActiveRunIdSync() {
|
|
167
|
-
return getOverdeckDatabaseSync().prepare(`SELECT value FROM app_settings WHERE key = 'flywheel.active_run_id'`).get()?.value ?? null;
|
|
470
|
+
return getOverdeckDatabaseSync(void 0, { readOnly: true }).prepare(`SELECT value FROM app_settings WHERE key = 'flywheel.active_run_id'`).get()?.value ?? null;
|
|
168
471
|
}
|
|
169
472
|
var appSettings, issuePolicy, FlywheelConfig, FlywheelConfigPatch, FlywheelRuntime, IssuePolicy, ProjectKey, ProjectConfig, ProjectNotFound, SettingsResolver, SettingsWriter, ConfigResolver, DEACON_GLOBAL_PAUSE_KEY, CLOISTER_SPAWNS_PAUSED_KEY, FLYWHEEL_GLOBAL_PAUSE_KEY, FLYWHEEL_ACTIVE_RUN_ID_KEY, FLYWHEEL_AUTO_PICKUP_BACKLOG_KEY, FLYWHEEL_REQUIRE_UAT_BEFORE_MERGE_KEY, FLYWHEEL_MERGE_TRAIN_ENABLED_KEY, MERGE_TRAIN_ENABLED_KEY, DASHBOARD_LAST_CLEAN_SHUTDOWN_AT_KEY, BOOT_RECONCILIATION_DECISION_KEY, BOOT_RECONCILIATION_PER_AGENT_KEY, BOOT_RECONCILIATION_DECIDED_AT_KEY, BOOT_RECONCILIATION_BOOT_ID_KEY, BOOT_RECONCILIATION_BOOT_STARTED_AT_KEY, BOOT_RECONCILIATION_GRACE_DEADLINE_KEY, BOOT_RECONCILIATION_GRACE_EXTENSIONS_KEY, BOOT_RECONCILIATION_DECISIONS;
|
|
170
473
|
var init_control_settings = __esmMin((() => {
|
|
@@ -438,6 +741,6 @@ var init_control_settings = __esmMin((() => {
|
|
|
438
741
|
})).add(HttpApiEndpoint.get("listProjects", "/projects", { success: Schema.Array(ProjectConfig) }));
|
|
439
742
|
}));
|
|
440
743
|
//#endregion
|
|
441
|
-
export { setFlywheelGloballyPaused as C, setSetting as D, setMergeTrainEnabled as E, stampBootReconciliation as O, setFlywheelAutoPickupBacklog as S, setLastCleanShutdownAt as T, setBootReconciliationGrace as _, getFlywheelActiveRunIdSync as a, setDeaconGloballyPausedSync as b, init_control_settings as c, isDeaconGloballyPausedSync as d, isFlywheelAutoPickupBacklog as f, setBootReconciliationDecision as g, isMergeTrainEnabled as h, getFlywheelActiveRunId as i, isCloisterSpawnsPausedSync as l, isFlywheelRequireUatBeforeMerge as m, FLYWHEEL_GLOBAL_PAUSE_KEY as n, getLastCleanShutdownAt as o, isFlywheelGloballyPaused as p, getBootReconciliationState as r, getSetting as s, FLYWHEEL_ACTIVE_RUN_ID_KEY as t, isDeaconGloballyPaused as u, setCloisterSpawnsPausedSync as v, setFlywheelRequireUatBeforeMerge as w, setFlywheelActiveRunId as x, setDeaconGloballyPaused as y };
|
|
744
|
+
export { parseOhmypiSessionCostResultSync as A, setFlywheelGloballyPaused as C, setSetting as D, setMergeTrainEnabled as E, stampBootReconciliation as O, setFlywheelAutoPickupBacklog as S, setLastCleanShutdownAt as T, setBootReconciliationGrace as _, getFlywheelActiveRunIdSync as a, setDeaconGloballyPausedSync as b, init_control_settings as c, isDeaconGloballyPausedSync as d, isFlywheelAutoPickupBacklog as f, setBootReconciliationDecision as g, isMergeTrainEnabled as h, getFlywheelActiveRunId as i, parseOhmypiSessionSync as j, init_ohmypi_parser as k, isCloisterSpawnsPausedSync as l, isFlywheelRequireUatBeforeMerge as m, FLYWHEEL_GLOBAL_PAUSE_KEY as n, getLastCleanShutdownAt as o, isFlywheelGloballyPaused as p, getBootReconciliationState as r, getSetting as s, FLYWHEEL_ACTIVE_RUN_ID_KEY as t, isDeaconGloballyPaused as u, setCloisterSpawnsPausedSync as v, setFlywheelRequireUatBeforeMerge as w, setFlywheelActiveRunId as x, setDeaconGloballyPaused as y };
|
|
442
745
|
|
|
443
|
-
//# sourceMappingURL=control-settings-
|
|
746
|
+
//# sourceMappingURL=control-settings-Db0uXgVM.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { p as loadConfigSync, t as init_config_yaml } from "./config-yaml-
|
|
3
|
-
import { a as init_event_store, n as getEventStore } from "./event-store-
|
|
4
|
-
import {
|
|
5
|
-
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-
|
|
6
|
-
import { t as init_conversation_service, u as findLastCompactBoundary } from "./conversation-service-
|
|
7
|
-
import { r as init_smart_compaction, t as generateSmartSummary } from "./smart-compaction-
|
|
8
|
-
import { a as generateFallbackSummary, l as init_summary_fork } from "./summary-fork-
|
|
2
|
+
import { p as loadConfigSync, t as init_config_yaml } from "./config-yaml-D60AnTIu.js";
|
|
3
|
+
import { a as init_event_store, n as getEventStore } from "./event-store-DTns2XZP.js";
|
|
4
|
+
import { Br as getAgentRuntimeBaseCommand, q as init_agents, ui as getProviderExportsForModel } from "./agent-state-FABw8neJ.js";
|
|
5
|
+
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-DXWwktJB.js";
|
|
6
|
+
import { t as init_conversation_service, u as findLastCompactBoundary } from "./conversation-service-BxIOd5ay.js";
|
|
7
|
+
import { r as init_smart_compaction, t as generateSmartSummary } from "./smart-compaction-D1CNGdZx.js";
|
|
8
|
+
import { a as generateFallbackSummary, l as init_summary_fork } from "./summary-fork-DhhaFhxZ.js";
|
|
9
9
|
import { dirname, join } from "node:path";
|
|
10
10
|
import { Effect } from "effect";
|
|
11
11
|
import { existsSync } from "node:fs";
|
|
@@ -179,4 +179,4 @@ var init_conversation_compaction = __esmMin((() => {
|
|
|
179
179
|
//#endregion
|
|
180
180
|
export { init_conversation_compaction as a, shouldInterceptManualCompact as c, getConversationCompactionSettings as i, compactConversationNative as n, isCompacting as o, estimateContextTokens as r, maybeCompactBeforeRespawn as s, buildCompactionRuntimeInfo as t };
|
|
181
181
|
|
|
182
|
-
//# sourceMappingURL=conversation-compaction-
|
|
182
|
+
//# sourceMappingURL=conversation-compaction-B-1KETG9.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as init_conversation_compaction, c as shouldInterceptManualCompact, i as getConversationCompactionSettings, n as compactConversationNative, o as isCompacting, r as estimateContextTokens, s as maybeCompactBeforeRespawn, t as buildCompactionRuntimeInfo } from "./conversation-compaction-
|
|
1
|
+
import { a as init_conversation_compaction, c as shouldInterceptManualCompact, i as getConversationCompactionSettings, n as compactConversationNative, o as isCompacting, r as estimateContextTokens, s as maybeCompactBeforeRespawn, t as buildCompactionRuntimeInfo } from "./conversation-compaction-B-1KETG9.js";
|
|
2
2
|
init_conversation_compaction();
|
|
3
3
|
export { buildCompactionRuntimeInfo, compactConversationNative, estimateContextTokens, getConversationCompactionSettings, isCompacting, maybeCompactBeforeRespawn, shouldInterceptManualCompact };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { i as computeContextUsage, t as init_conversation_service, u as findLastCompactBoundary } from "./conversation-service-
|
|
1
|
+
import { i as computeContextUsage, t as init_conversation_service, u as findLastCompactBoundary } from "./conversation-service-BxIOd5ay.js";
|
|
2
2
|
init_conversation_service();
|
|
3
3
|
export { computeContextUsage, findLastCompactBoundary };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
3
|
-
import { s as getHarnessBehavior } from "./src-
|
|
4
|
-
import { o as getPricingSync, s as init_cost, t as calculateCostSync } from "./cost-
|
|
5
|
-
import { i as parseCodexSessionSync, n as init_codex_parser, t as init_behavior } from "./behavior-
|
|
6
|
-
import { r as summarizeKimiEntries, t as init_kimi_parser } from "./kimi-parser-
|
|
2
|
+
import { Ir as resolveModelIdSync, Pr as init_model_capabilities, kr as MODEL_CAPABILITIES, zi as init_paths } from "./config-yaml-D60AnTIu.js";
|
|
3
|
+
import { s as getHarnessBehavior } from "./src-CdwN6WY6.js";
|
|
4
|
+
import { o as getPricingSync, s as init_cost, t as calculateCostSync } from "./cost-DTuIRE4y.js";
|
|
5
|
+
import { i as parseCodexSessionSync, n as init_codex_parser, t as init_behavior } from "./behavior-DCg8CIWC.js";
|
|
6
|
+
import { r as summarizeKimiEntries, t as init_kimi_parser } from "./kimi-parser-OcWwmOqF.js";
|
|
7
7
|
import "node:path";
|
|
8
8
|
import "node:os";
|
|
9
9
|
import { open, readFile, stat, watch } from "node:fs/promises";
|
|
@@ -367,6 +367,7 @@ async function parseCodexConversationMessages(sessionFile) {
|
|
|
367
367
|
const toolCallsByCallId = /* @__PURE__ */ new Map();
|
|
368
368
|
let totalTokens = 0;
|
|
369
369
|
let sequence = 0;
|
|
370
|
+
let trailingAgentMessageAt;
|
|
370
371
|
for (const line of lines) {
|
|
371
372
|
let entry;
|
|
372
373
|
try {
|
|
@@ -384,6 +385,7 @@ async function parseCodexConversationMessages(sessionFile) {
|
|
|
384
385
|
const text = typeof payload.message === "string" ? payload.message.trim() : "";
|
|
385
386
|
if (!text) continue;
|
|
386
387
|
sequence += 1;
|
|
388
|
+
trailingAgentMessageAt = ptype === "agent_message" ? createdAt : void 0;
|
|
387
389
|
messages.push({
|
|
388
390
|
id: `codex-${ptype === "user_message" ? "user" : "agent"}-${sequence}`,
|
|
389
391
|
role: ptype === "user_message" ? "user" : "assistant",
|
|
@@ -401,6 +403,7 @@ async function parseCodexConversationMessages(sessionFile) {
|
|
|
401
403
|
}
|
|
402
404
|
if (entry.type === "response_item") {
|
|
403
405
|
if (ptype === "function_call" || ptype === "custom_tool_call") {
|
|
406
|
+
trailingAgentMessageAt = void 0;
|
|
404
407
|
const callId = typeof payload.call_id === "string" ? payload.call_id : "";
|
|
405
408
|
const name = typeof payload.name === "string" ? payload.name : "tool";
|
|
406
409
|
const args = typeof payload.arguments === "string" ? payload.arguments : payload.input != null ? JSON.stringify(payload.input) : "";
|
|
@@ -445,6 +448,7 @@ async function parseCodexConversationMessages(sessionFile) {
|
|
|
445
448
|
messages,
|
|
446
449
|
workLog,
|
|
447
450
|
byteOffset: fileStats.size,
|
|
451
|
+
lastTurnCompletedAt: trailingAgentMessageAt,
|
|
448
452
|
streaming,
|
|
449
453
|
totalCost,
|
|
450
454
|
totalTokens,
|
|
@@ -1927,7 +1931,17 @@ async function summarizeConversationActivity(sessionFile, options = {}) {
|
|
|
1927
1931
|
lastSequence: 0
|
|
1928
1932
|
});
|
|
1929
1933
|
const lastMsg = messages[messages.length - 1];
|
|
1930
|
-
const
|
|
1934
|
+
const workingFileRecent = Date.now() - mtimeMs < WORKING_STALENESS_MS;
|
|
1935
|
+
const lastWork = workLog[workLog.length - 1];
|
|
1936
|
+
let workGapWorking = false;
|
|
1937
|
+
if (lastWork) {
|
|
1938
|
+
const workTs = Date.parse(lastWork.createdAt || "");
|
|
1939
|
+
if (!Number.isNaN(workTs) && Date.now() - workTs < WORKING_STALENESS_MS) {
|
|
1940
|
+
const msgTs = Date.parse(lastMsg?.completedAt || lastMsg?.createdAt || "");
|
|
1941
|
+
workGapWorking = Number.isNaN(msgTs) || workTs >= msgTs;
|
|
1942
|
+
}
|
|
1943
|
+
}
|
|
1944
|
+
const isWorking = workingFileRecent && !lastTurnCompletedAt && (streaming || pendingToolUse.size > 0 || messages.length === 0 || lastMsg?.role === "user" || lastMsg?.role === "assistant" && !lastMsg.completedAt || workGapWorking);
|
|
1931
1945
|
const fileRecent = Date.now() - mtimeMs < 3e4;
|
|
1932
1946
|
let currentTool = null;
|
|
1933
1947
|
if (fileRecent) {
|
|
@@ -2221,4 +2235,4 @@ var init_conversation_service = __esmMin((() => {
|
|
|
2221
2235
|
//#endregion
|
|
2222
2236
|
export { parseAcpConversationMessages as S, isOhmypiSessionFile as _, contextUsageFromParseResult as a, parseCodexConversationMessages as b, parseEntireConversation as c, init_kimi_conversation_parser as d, parseKimiConversationMessages as f, init_ohmypi_conversation_parser as g, parsePiConversationMessages as h, computeContextUsage as i, parseFromLastCompactBoundary as l, isPiSessionFile as m, gateSnapshotEmission as n, summarizeConversationActivity as o, init_pi_conversation_parser as p, watchConversation as r, parseConversationMessages as s, init_conversation_service as t, findLastCompactBoundary as u, parseOhmypiConversationMessages as v, init_acp_conversation_parser as x, init_codex_conversation_parser as y };
|
|
2223
2237
|
|
|
2224
|
-
//# sourceMappingURL=conversation-service-
|
|
2238
|
+
//# sourceMappingURL=conversation-service-BxIOd5ay.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import {
|
|
3
|
-
import { T as isNull, _ as integer, a as EventBus, b as and, d as getOverdeckDatabaseSync, f as init_infra, g as real, h as text, m as sqliteTable, p as init_sqlite_core, r as Db, v as init_drizzle_orm, w as isNotNull, x as eq } from "./infra-
|
|
4
|
-
import { f as resolveWorkspaceForCwd, o as init_resolver } from "./resolver-
|
|
5
|
-
import { a as init_event_store, n as getEventStore } from "./event-store-
|
|
2
|
+
import { Ri as getOverdeckHome, zi as init_paths } from "./config-yaml-D60AnTIu.js";
|
|
3
|
+
import { T as isNull, _ as integer, a as EventBus, b as and, d as getOverdeckDatabaseSync, f as init_infra, g as real, h as text, m as sqliteTable, p as init_sqlite_core, r as Db, v as init_drizzle_orm, w as isNotNull, x as eq } from "./infra-CJRi_5Wu.js";
|
|
4
|
+
import { f as resolveWorkspaceForCwd, o as init_resolver } from "./resolver-C2QKOf09.js";
|
|
5
|
+
import { a as init_event_store, n as getEventStore } from "./event-store-DTns2XZP.js";
|
|
6
6
|
import { join } from "node:path";
|
|
7
7
|
import { Context, Effect, Layer, Schema, Stream } from "effect";
|
|
8
8
|
import { readFileSync } from "node:fs";
|
|
@@ -993,7 +993,9 @@ function markConversationEnded(name) {
|
|
|
993
993
|
overdeckDb().prepare(`UPDATE conversations SET ended_at = ?, status = 'ended' WHERE name = ?`).run(Date.now(), name);
|
|
994
994
|
}
|
|
995
995
|
function markConversationRunning(name) {
|
|
996
|
-
overdeckDb().prepare(`UPDATE conversations SET status = 'active', ended_at = NULL
|
|
996
|
+
overdeckDb().prepare(`UPDATE conversations SET status = 'active', ended_at = NULL, spawn_error = NULL,
|
|
997
|
+
fork_error = CASE WHEN fork_status = 'failed' THEN NULL ELSE fork_error END,
|
|
998
|
+
fork_status = CASE WHEN fork_status = 'failed' THEN NULL ELSE fork_status END WHERE name = ? AND status != 'active'`).run(name);
|
|
997
999
|
}
|
|
998
1000
|
function markConversationActive(name) {
|
|
999
1001
|
overdeckDb().prepare(`UPDATE conversations SET archived_at = NULL WHERE name = ?`).run(name);
|
|
@@ -1073,6 +1075,9 @@ function backfillConversationModel(name, model) {
|
|
|
1073
1075
|
function updateForkStatus(name, status, error) {
|
|
1074
1076
|
overdeckDb().prepare(`UPDATE conversations SET fork_status = ?, fork_error = ? WHERE name = ?`).run(status, error ?? null, name);
|
|
1075
1077
|
}
|
|
1078
|
+
function clearConversationFailureState(name) {
|
|
1079
|
+
overdeckDb().prepare(`UPDATE conversations SET fork_status = NULL, fork_error = NULL, spawn_error = NULL WHERE name = ?`).run(name);
|
|
1080
|
+
}
|
|
1076
1081
|
function getStuckForks() {
|
|
1077
1082
|
return overdeckDb().prepare(`${LEGACY_CONVERSATION_SELECT} WHERE c.fork_status IS NOT NULL AND c.fork_status != 'failed' ORDER BY c.created_at ASC`).all().map(rowToLegacyConversation);
|
|
1078
1083
|
}
|
|
@@ -1621,6 +1626,6 @@ var init_conversations = __esmMin((() => {
|
|
|
1621
1626
|
nullIfEmpty = (value) => value?.trim() || null;
|
|
1622
1627
|
}));
|
|
1623
1628
|
//#endregion
|
|
1624
|
-
export {
|
|
1629
|
+
export { unarchiveConversation as $, init_conversations as A, reactivateConversationForSpawn as B, getConversationByName as C, insertEmbedding as Ct, hasOtherActiveConversationOnTmuxSession as D, topKCosine as Dt, getStuckForks as E, searchFtsSessions as Et, listFavoritedIds as F, setConversationClaudeSessionId as G, removeFavorite as H, markConversationActive as I, setConversationModel as J, setConversationEffort as K, markConversationEnded as L, listArchivedConversations as M, listArchivedConversationsWithEnrichment as N, importLegacyConversation as O, updateEnrichment as Ot, listConversations as P, setImportedConversationLinks as Q, markConversationRunning as R, getConversationById as S, init_discovered_sessions as St, getConversationLedgerCosts as T, markEnrichmentFailed as Tt, resolveLiveSessionId as U, recordConversationHandoff as V, setClearedToConvId as W, setFavorite as X, setConversationProjectKey as Y, setForkRequest as Z, canRefineTitle as _, getDiscoveredSessionById as _t, ConversationName as a, updateLastAttached as at, createConversation as b, getDiscoveredStats as bt, ConversationsResolver as c, aggregateDiscoveredSessionCost as ct, TitleSource as d, countDiscoveredSessions as dt, updateConversationCost as et, Transcript as f, countFtsSessions as ft, backfillConversationModel as g, findEnrichedSessionIdsMissingEmbedding as gt, archiveConversation as h, findDiscoveredSessions as ht, ConversationId as i, updateForkStatus as it, isAgentConversationName as j, incrementForkRetryCount as k, upsertDiscoveredSession as kt, Harness as l, aggregateDiscoveredSessionCostBy as lt, TranscriptsWriter as m, findDiscoveredSessionIds as mt, BackingFile as n, updateConversationForkFallbackReason as nt, ConversationNotFound as o, updateSpawnError as ot, TranscriptsResolver as p, ensureDiscoveredSessionsSchema as pt, setConversationHarness as q, Conversation as r, updateConversationTitle as rt, ConversationWriter as s, findConversationForCostSessionSync as st, AlreadyArchived as t, updateConversationDeliveryMethod as tt, NotArchived as u, buildFilterSql as ut, canReplaceTitle as v, getDiscoveredSessionByJsonlPath as vt, getConversationByTmuxSession as w, loadEmbeddings as wt, getConversationByClaudeSessionId as x, getEmbedding as xt, clearConversationFailureState as y, getDiscoveredSessionBySessionId as yt, normalizeHarness as z };
|
|
1625
1630
|
|
|
1626
|
-
//# sourceMappingURL=conversations-
|
|
1631
|
+
//# sourceMappingURL=conversations-nS6QgYpD.js.map
|