@overdeck/desktop 0.45.12 → 0.45.13
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 +33 -0
- package/package.json +7 -2
- package/server/{acceptance-criteria-1LHgD9vg.js → acceptance-criteria-CfujPRrz.js} +2 -2
- package/server/{advancing-selfheal-BqsLWqEM.js → advancing-selfheal-Bn5QiLtn.js} +4 -4
- package/server/{agent-gc-CUb52n7s.js → agent-gc-Cl9Nm0Zu.js} +3 -3
- package/server/{agent-state-D-moNwhA.js → agent-state-C6Rm6FPR.js} +1 -1
- package/server/{agent-state-service-BzESvLOf.js → agent-state-service-JhFzYCP_.js} +5 -5
- package/server/{agent-state-service-BaZH7sXJ.js → agent-state-service-U8feBf8t.js} +1 -1
- package/server/{agents-C4kZ8a2r.js → agents-CxbuBjID.js} +1 -1
- package/server/{agents-B5LfpLPv.js → agents-DqQa4Dq_.js} +88 -64
- package/server/{archive-planning-oX1pj6nY.js → archive-planning-CPitEZo4.js} +3 -3
- package/server/{archive-planning-BbZe-8IK.js → archive-planning-DmpT1_14.js} +1 -1
- package/server/{artifact-index-jobs-DGr6bxev.js → artifact-index-jobs-sMnNtPhy.js} +2 -2
- package/server/{auto-commit-CGQlb4rV.js → auto-commit-wZ9X7Isd.js} +1 -1
- package/server/{backlog-auto-trigger-BlJHikOm.js → backlog-auto-trigger-Cf9C8fwD.js} +2 -2
- package/server/{bd-process-lock-i3CYMS-B.js → bd-process-lock-D1aJxeYv.js} +2 -2
- package/server/{beads-BNU-fb48.js → beads-CivpXztb.js} +1 -1
- package/server/{beads-DD7fYCl5.js → beads-DRoj6-e1.js} +4 -4
- package/server/{beads-query-e6oku4P5.js → beads-query-tOsAYP5h.js} +2 -2
- package/server/{behavior-CPf0pbOt.js → behavior-D3d2mVyD.js} +3 -3
- package/server/{briefing-freshness-B2FdLwIv.js → briefing-freshness-BL3Q6p7R.js} +4 -4
- package/server/{checkpoint-manager-JryW6MpM.js → checkpoint-manager-DCxjQvP_.js} +2 -2
- package/server/{checkpoint-manager-eFgaMMu4.js → checkpoint-manager-j5URlFY7.js} +1 -1
- package/server/checkpoint-worker.js +1 -1
- package/server/{checkpoints-qvOqvMuC.js → checkpoints-BoX1H2Hf.js} +2 -2
- package/server/{checkpoints-BK17oicz.js → checkpoints-Bu_M_Q9W.js} +1 -1
- package/server/claude-hooks-provision-D-jGXmu1.js +360 -0
- package/server/{claude-permissions-B6bWGh9d.js → claude-permissions-DxIjkOVl.js} +2 -2
- package/server/{claude-settings-overlay-BPdhTPjo.js → claude-settings-overlay-5b9X2S0C.js} +1 -1
- package/server/{claude-settings-overlay-CRyyKKXQ.js → claude-settings-overlay-BPDS6GfE.js} +2 -2
- package/server/cli-CqgiSAU8.js +3 -0
- package/server/{cli-B75AieAM.js → cli-s7bPWy-E.js} +9 -9
- package/server/{cliproxy-CCzwuSNe.js → cliproxy-BituqWtR.js} +2 -2
- package/server/{cliproxy-DOQf66G9.js → cliproxy-D3sHB0sI.js} +1 -1
- package/server/{close-issue-_X3MXJyG.js → close-issue-CrBE7voz.js} +4 -4
- package/server/{closed-issue-reaper-CLR7ClsO.js → closed-issue-reaper-BRQBc7Xa.js} +1 -1
- package/server/{closed-issue-reaper-BsUfBSjM.js → closed-issue-reaper-DX9mYUji.js} +9 -9
- package/server/{codex-CY-QRuU9.js → codex-Bi1ITSOo.js} +1 -1
- package/server/{codex-B4KEpX5V.js → codex-CO0HrK3j.js} +5 -5
- package/server/{compact-beads-cZds2MTr.js → compact-beads-CrA8-k10.js} +1 -1
- package/server/{compact-beads-uEDccC76.js → compact-beads-DUkCUFxA.js} +3 -3
- package/server/{config-DARrpYWA.js → config-B4_d7z7z.js} +1 -1
- package/server/{config-8sjaU6jZ.js → config-DsCxzjXK.js} +2 -2
- package/server/{config-yaml-ClpGgrf6.js → config-yaml-C_djSurJ.js} +2 -2
- package/server/{conflict-gate-Ds9_2yjd.js → conflict-gate-CpOn9KC-.js} +1 -1
- package/server/{conflict-gate-BtB_o-Vi.js → conflict-gate-D47Kl78u.js} +3 -3
- package/server/{context-layers-r2ywnQYA.js → context-layers-BNhUBTkf.js} +3 -3
- package/server/{context-layers-CRCk1QG7.js → context-layers-CHl3Nroz.js} +2 -2
- package/server/{control-settings-D1B3u6HP.js → control-settings-KyYNXZLv.js} +4 -4
- package/server/{conversation-compaction-D86Zo2Ci.js → conversation-compaction-D3aS5PnS.js} +8 -8
- package/server/{conversation-compaction-CZRVk4hg.js → conversation-compaction-D4Wed1BJ.js} +1 -1
- package/server/{conversation-service-CuTVU8dV.js → conversation-service-CFZIjs-M.js} +5 -5
- package/server/{conversation-service-CkL-6MuG.js → conversation-service-DcDB5usR.js} +1 -1
- package/server/{conversations-DfJKBDwB.js → conversations-BSOU5qnu.js} +4 -4
- package/server/{conversations-BmWEluPL.js → conversations-BbDPrz89.js} +1 -1
- package/server/{cost-DAPYN6iA.js → cost-BE_ulOrw.js} +3 -3
- package/server/{cost-CCnqa5xK.js → cost-CaiG63FG.js} +2 -2
- package/server/{cost-sync-BDL10Nwu.js → cost-sync-D6AX8jv-.js} +3 -3
- package/server/{dag-Dv2r5bVD.js → dag-BQFtXOuJ.js} +3 -3
- package/server/{dangerous-git-ops-Dcw7PbYo.js → dangerous-git-ops-04Ba-Qu3.js} +1 -1
- package/server/dashboard-db-worker.js +6 -6
- package/server/{deacon-CM0MxbS8.js → deacon-2EvA9Ci3.js} +97 -97
- package/server/{deacon-DYnZH7kC.js → deacon-Bz-6Wjmn.js} +3 -3
- package/server/deacon-swarm-B8pgK2a7.js +2 -0
- package/server/{deacon-swarm-BstYoz8Q.js → deacon-swarm-DYYOzHRH.js} +10 -10
- package/server/deacon.js +7 -7
- package/server/{devcontainer-renderer-CaYOG9JN.js → devcontainer-renderer-Dx0C7VWJ.js} +2 -2
- package/server/dist-BYSj075e.js +3 -0
- package/server/{dist-BIC8spJ0.js → dist-ya66D9ze.js} +1 -1
- package/server/{docker-DDI1shu3.js → docker-D2TbXDO6.js} +2 -2
- package/server/{ensure-devcontainer-CbSXvN9W.js → ensure-devcontainer-BIShzs3M.js} +1 -1
- package/server/{ensure-devcontainer-DCAg3ksz.js → ensure-devcontainer-BTiMfFp5.js} +3 -3
- package/server/{event-store-DU3HkZlN.js → event-store-C02Gprug.js} +1 -1
- package/server/{event-store-DCMqyI07.js → event-store-C71x6h0i.js} +3 -3
- package/server/{events-BfiosVAn.js → events-BFDuPV6n.js} +3 -3
- package/server/{events-DLRxpSuV.js → events-D2gP2-Yv.js} +1 -1
- package/server/{factory-BMtWV9iv.js → factory-ByfbrCab.js} +4 -4
- package/server/{feature-registry-population-DA7bO6Zn.js → feature-registry-population-CSH66UO8.js} +4 -4
- package/server/{feature-registry-storage-nAY1fbBt.js → feature-registry-storage-DW7dUefc.js} +2 -2
- package/server/{features-DMu7eGmU.js → features-x_aLR7U9.js} +2 -2
- package/server/{feedback-target-DHqcw3cN.js → feedback-target-BFo9fScH.js} +6 -6
- package/server/{feedback-target-B2SEai8-.js → feedback-target-C4VMPTZu.js} +1 -1
- package/server/{feedback-writer-qvm7UON7.js → feedback-writer-B9ZqnnX3.js} +4 -4
- package/server/{feedback-writer-DMBdS_jL.js → feedback-writer-DCyd75yJ.js} +1 -1
- package/server/{flywheel-Dfpx4bIV.js → flywheel-D9NKvWqb.js} +11 -11
- package/server/{flywheel-k4FPtCQ_.js → flywheel-DB48X7Nn.js} +1 -1
- package/server/{flywheel-D2LdPSic.js → flywheel-DwQCoZQG.js} +13 -13
- package/server/{flywheel-merge-order-CB4lbXeJ.js → flywheel-merge-order-DrjmFXg4.js} +6 -6
- package/server/{flywheel-merge-order-CttTazRY.js → flywheel-merge-order-f1bi5XIf.js} +1 -1
- package/server/{forge-CoPFXFyl.js → forge-C-SoKy8U.js} +2 -2
- package/server/forge-CUCYK7h_.js +2 -0
- package/server/{from-B0YoJl9-.js → from-fu7ZumnY.js} +1 -1
- package/server/{fts-db-DAHW1yA_.js → fts-db-CL-YzSRG.js} +2 -2
- package/server/{fts-operations-DDXDBi0d.js → fts-operations-Bylu5NjM.js} +2 -2
- package/server/{git-utils-B90Zjzfl.js → git-utils-C8koBs8j.js} +2 -2
- package/server/{git-utils-DbfC0zls.js → git-utils-Ym380hJZ.js} +1 -1
- package/server/{github-app-C7lftMNj.js → github-app-DIr70YLg.js} +1 -1
- package/server/{github-app-BecAnXRX.js → github-app-DhycHVLF.js} +2 -2
- package/server/{github-client-D21rCIXk.js → github-client-7gkcXcBS.js} +2 -2
- package/server/{github-client-BwtKZtM0.js → github-client-Ji9lUTNF.js} +1 -1
- package/server/{github-pr-lookup-CzVWuysl.js → github-pr-lookup-rt7T9FwA.js} +2 -2
- package/server/{harness-resolve-SkRJm4a7.js → harness-resolve-CvGXUnAF.js} +3 -3
- package/server/{health-events-BT0aAfeA.js → health-events-D4E1DLN-.js} +2 -2
- package/server/{health-events-DA_JLpgZ.js → health-events-DDfkoO5a.js} +1 -1
- package/server/{hooks-DxEn2BoY.js → hooks-D_6pAbuJ.js} +2 -2
- package/server/{hooks-BQxRXtRb.js → hooks-DvdnCVv6.js} +1 -1
- package/server/{idle-stack-reaper-C7fJL8jH.js → idle-stack-reaper-DNbV9-fj.js} +1 -1
- package/server/{idle-stack-reaper-DGy7tvC9.js → idle-stack-reaper-cDRXDpgE.js} +2 -2
- package/server/{infra-DE3C4PMr.js → infra-Clew3DpF.js} +50 -3
- package/server/{injection-Dt22tGvS.js → injection-QCIHOpk6.js} +1 -1
- package/server/{injection-Cc4Qt8LZ.js → injection-ql0Nddcn.js} +7 -7
- package/server/inspect-agent-D8UBDgfR.js +2 -0
- package/server/{inspect-agent-DOaCDkCF.js → inspect-agent-DY18KEx4.js} +9 -9
- package/server/{internal-token-B_1YLWLI.js → internal-token-BeXjPLKy.js} +2 -2
- package/server/{internal-token-nobT6FhA.js → internal-token-C90jBp-y.js} +1 -1
- package/server/{io-A7ZuOBkz.js → io-CbAFXQge.js} +2 -2
- package/server/{issue-closed-Da3DeomA.js → issue-closed-BYC2TCk-.js} +4 -4
- package/server/{issue-lifecycle-543pQX9D.js → issue-lifecycle-BoJa6qIt.js} +21 -21
- package/server/{issue-lifecycle-Bd9XBJAQ.js → issue-lifecycle-CLHbj8RS.js} +1 -1
- package/server/{issue-service-singleton-BC2JLZi7.js → issue-service-singleton-3g_CCY-1.js} +1 -1
- package/server/{issue-service-singleton-Brc3t0SV.js → issue-service-singleton-BS9NENuR.js} +8 -8
- package/server/{issues-D3kt9UWE.js → issues-BPcqPqfV.js} +2 -2
- package/server/{label-cleanup-w9X_T3AQ.js → label-cleanup-CwiCSZrb.js} +2 -2
- package/server/{layers-Cwe1J-9o.js → layers-OHHLphl0.js} +2 -2
- package/server/{lifecycle-f1GbDK33.js → lifecycle-B8IdvUbt.js} +6 -6
- package/server/{lifecycle-io-D56q8zlO.js → lifecycle-io-BMCH1Bxg.js} +1 -1
- package/server/{lifecycle-io-Bqvj0m3i.js → lifecycle-io-C73m5e6R.js} +4 -4
- package/server/{linear-client-Bh4T4S-c.js → linear-client-BMxgycoy.js} +1 -1
- package/server/{linear-client-CfJMTAYd.js → linear-client-CgQlM4aT.js} +2 -2
- package/server/memory-fts-worker.js +1 -1
- package/server/{merge-ZrXFM3jv.js → merge-B7Oi-g6k.js} +3 -3
- package/server/{merge-DRMPa8CQ.js → merge-BRkVaIx-.js} +1 -1
- package/server/merge-agent-Bwm34MZ5.js +3 -0
- package/server/{merge-agent-CHHs5S_0.js → merge-agent-DNFFsiEm.js} +61 -26
- package/server/{merge-batch-BwhGdlh4.js → merge-batch-BpYXUaqJ.js} +1 -1
- package/server/{merge-blockers-BMhDpMl_.js → merge-blockers-DIOZmqdK.js} +2 -2
- package/server/merge-ops-B7m-hBEZ.js +2 -0
- package/server/{merge-rebase-R7MfqpiE.js → merge-rebase-C8WH39MB.js} +2 -2
- package/server/{merge-set-B3Breacq.js → merge-set-CsEE2CyQ.js} +9 -5
- package/server/{merge-set-D-iXNP0I.js → merge-set-DOsBTBQc.js} +1 -1
- package/server/{merge-sync-DHWbGtjR.js → merge-sync-C2B322Ot.js} +2 -2
- package/server/{merge-sync-bOOtfeXR.js → merge-sync-CcLM2vwW.js} +1 -1
- package/server/{merge-train-98ptZrPT.js → merge-train-BIm7-7cy.js} +3 -3
- package/server/{merge-train-deps-B5FWJTE2.js → merge-train-deps-DG1oQ2DT.js} +4 -4
- package/server/{merge-verification-BGiuiXAK.js → merge-verification-BAbjxEd5.js} +4 -4
- package/server/{multipart-parser-D7mzNNDm.js → multipart-parser-jKtKAXtl.js} +2 -2
- package/server/node_modules/.package-lock.json +1 -1
- package/server/{orphan-proposed-reconciler-CSuxivr9.js → orphan-proposed-reconciler-BqVGaOIj.js} +1 -1
- package/server/{orphan-proposed-reconciler-BSGCNJ6X.js → orphan-proposed-reconciler-zHrwJ3xr.js} +9 -9
- package/server/package-lock.json +2 -2
- package/server/package.json +1 -1
- package/server/{pan-dir-DoPtdHrp.js → pan-dir-BlNrLzW7.js} +3 -3
- package/server/{paths-CVDLPxXp.js → paths-CiVeo4N_.js} +2 -2
- package/server/{pipeline-notifier-WD2dnOsR.js → pipeline-notifier-DBF6dHxH.js} +2 -2
- package/server/{pipeline-notifier-BtYHbBPl.js → pipeline-notifier-nkWCe042.js} +1 -1
- package/server/{projects-Bqfwuqet.js → projects-BqRMlDOv.js} +1 -1
- package/server/{prompts-Cg7e9FPb.js → prompts-CXbQvevY.js} +2 -2
- package/server/{providers-fLduChnX.js → providers-CUdAb5Qu.js} +7 -7
- package/server/{providers-JjK6izqX.js → providers-gZ0cUgQM.js} +1 -1
- package/server/public/assets/{chunk-BO2N2NFS-aNlsGDCu.js → chunk-BO2N2NFS-C-6y8VFI.js} +4 -4
- package/server/public/assets/{diagram-OG6HWLK6-CnjkrvT8.js → diagram-OG6HWLK6-NACO1xW5.js} +1 -1
- package/server/public/assets/{dist-CGKBCieA.js → dist-D1FjqGgm.js} +1 -1
- package/server/public/assets/{dist-Bg3Sbsx4.js → dist-DQD-ZjQY.js} +3 -3
- package/server/public/assets/{ganttDiagram-6RSMTGT7-C8LLKj23.js → ganttDiagram-6RSMTGT7-CEMAKgmE.js} +1 -1
- package/server/public/assets/{highlighted-body-OFNGDK62-BSDEUvhW.js → highlighted-body-OFNGDK62-D5lC7FW8.js} +1 -1
- package/server/public/assets/{index-LQIfhmgI.js → index-BDqWyuZQ.js} +140 -140
- package/server/public/assets/{linear-DEbYZoxg.js → linear-DDHAMRPB.js} +1 -1
- package/server/public/assets/mermaid-GHXKKRXX-DRM2ANcR.js +1 -0
- package/server/public/assets/{pieDiagram-4H26LBE5-BtZL5pXE.js → pieDiagram-4H26LBE5-DwBdeKBb.js} +1 -1
- package/server/public/assets/{prod-DYVvIyuh.js → prod-DAZt0c4G.js} +4 -4
- package/server/public/assets/{quadrantDiagram-W4KKPZXB-a7vS8Jc8.js → quadrantDiagram-W4KKPZXB-CNDLp-_m.js} +1 -1
- package/server/public/assets/{sankeyDiagram-5OEKKPKP-Ckbq2SWH.js → sankeyDiagram-5OEKKPKP-oIUL_uO1.js} +1 -1
- package/server/public/assets/{xychartDiagram-2RQKCTM6-DJyeNa99.js → xychartDiagram-2RQKCTM6-B-IM6Cck.js} +1 -1
- package/server/public/index.html +1 -1
- package/server/{pull-requests-D2SjJIwY.js → pull-requests-DZ-V7_LB.js} +1 -1
- package/server/{pull-requests-1WXmTBlo.js → pull-requests-kTRl7cWC.js} +3 -3
- package/server/rally-CRteqXe0.js +3 -0
- package/server/{rally-api-H5I2CBO0.js → rally-api-DpZo3WwF.js} +2 -2
- package/server/{rally-api-BtvwdX6d.js → rally-api-jOk4vit_.js} +1 -1
- package/server/{rally-client-Bt-qHiOh.js → rally-client-BQjm3aaq.js} +1 -1
- package/server/{rally-client-33CYZYYu.js → rally-client-CoWZeVEj.js} +4 -4
- package/server/{rally-8aQlLLVj.js → rally-xCTZ-UcI.js} +3 -3
- package/server/{rebuild-stack-KHkkrGjx.js → rebuild-stack-BZ7j27xY.js} +5 -5
- package/server/{rebuild-stack-CXSgAGPR.js → rebuild-stack-r-cxcr26.js} +1 -1
- package/server/{reconstruct-cache-D_Ml65_6.js → reconstruct-cache-13EkMg_i.js} +6 -6
- package/server/{record-De2syxNB.js → record-CJsjvRO4.js} +1 -1
- package/server/release-engine-YLTnEO_K.js +306 -0
- package/server/release-set-DwvT_Opu.js +125 -0
- package/server/{remote-CGuognN3.js → remote-9u9WL0NJ.js} +3 -3
- package/server/{remote-D0Old0Cv.js → remote-B062S1Kc.js} +3 -3
- package/server/{remote-agents-UHoi4oGr.js → remote-agents-B4eWgwNd.js} +1 -1
- package/server/{remote-agents-DfhMq6kQ.js → remote-agents-BBTg-vLT.js} +5 -5
- package/server/{remote-completion-RZYePR_0.js → remote-completion-B0rmBnbL.js} +12 -12
- package/server/resume-R7xkSmLW.js +3 -0
- package/server/{review-agent-uwVftH98.js → review-agent-Bf9XjLnl.js} +1 -1
- package/server/{review-agent-sZBCpEVv.js → review-agent-tfR5RDzG.js} +22 -22
- package/server/{review-artifacts-C7a45b1_.js → review-artifacts-D0_IE6DQ.js} +6 -6
- package/server/{review-context-CErbQpKL.js → review-context-CXO5ml5D.js} +7 -7
- package/server/{review-monitor-DHD9m_kh.js → review-monitor-DfFUSx0J.js} +2 -2
- package/server/{review-status-JhQ3qlDS.js → review-status-B0Axo-Ma.js} +1 -1
- package/server/{review-status-gPndPUBc.js → review-status-BcfwcAcO.js} +23 -16
- package/server/{review-status-enrichment-qWvWckYN.js → review-status-enrichment-Cp5kFTGl.js} +3 -3
- package/server/{review-status-sync-B_GrEke8.js → review-status-sync-Bc0c_u12.js} +1 -1
- package/server/{review-status-sync-D3A9KX95.js → review-status-sync-CEFty1pW.js} +9 -5
- package/server/{review-verdict-feedback-4WZ5ZdbC.js → review-verdict-feedback-BOKRLLDf.js} +6 -6
- package/server/{review-verdict-feedback-Zo0r_z4m.js → review-verdict-feedback-BnGtT0vN.js} +1 -1
- package/server/{rollup-Bmhn80tB.js → rollup-BVqFuiS9.js} +1 -1
- package/server/{rollup-BrUIKMv_.js → rollup-C22QDVxh.js} +8 -8
- package/server/{scanner-BIGumel_.js → scanner-BLCnuXqY.js} +7 -7
- package/server/{sequence-io-DA0akEQN.js → sequence-io-BozlUb6f.js} +4 -4
- package/server/{sequencer-agent-DeflKafB.js → sequencer-agent-BEDEHfd2.js} +5 -5
- package/server/server.js +251 -160
- package/server/{service-V0sUK-OR.js → service-C8jKYZ0w.js} +42 -42
- package/server/{session-fork-Yx3UcAQf.js → session-fork-BDGksK4e.js} +2 -2
- package/server/{settings-CFEeQRj2.js → settings-CSLhh6qR.js} +2 -2
- package/server/settings-CSaXtkoA.js +2 -0
- package/server/{settings-CxVate0h.js → settings-DrRQCren.js} +3 -3
- package/server/{shadow-engineering-BRxnVSDk.js → shadow-engineering-BMcBN-Of.js} +2 -2
- package/server/{shadow-state-BiMwdyl1.js → shadow-state-B4ayC7nx.js} +2 -2
- package/server/{shadow-state-1aS8FijU.js → shadow-state-CHqWHD3T.js} +1 -1
- package/server/{ship-log-CMWH3H5-.js → ship-log-CDVmOlZP.js} +1 -1
- package/server/{smart-compaction-Bw1K_Sbl.js → smart-compaction-C-F5sP9P.js} +7 -7
- package/server/{smart-compaction-xblMyVpT.js → smart-compaction-V9DBrGcr.js} +1 -1
- package/server/{spawn-planning-session-CzDFSKAQ.js → spawn-planning-session-Bz4_JES2.js} +1 -1
- package/server/{spawn-planning-session-DxLxcM7m.js → spawn-planning-session-dSpOU0lP.js} +15 -15
- package/server/{specialist-completion-BiEXUHfD.js → specialist-completion-Coz3eTSr.js} +1 -1
- package/server/{specialist-context-BfkTA81h.js → specialist-context-fmb03vXQ.js} +5 -5
- package/server/{specialist-handoff-logger-BiKuLtNm.js → specialist-handoff-logger-B9HK_lRu.js} +2 -2
- package/server/{specialist-logs-CFJjGsLC.js → specialist-logs-B24R2B9Y.js} +3 -3
- package/server/{specialists-BLIreoE7.js → specialists-B6f5-5nG.js} +1 -1
- package/server/{specialists-DjHbwQ_p.js → specialists-BGNZ0_ZW.js} +18 -18
- package/server/{specialists-B4byf18k.js → specialists-CL7E8yUg.js} +75 -75
- package/server/{specialists-DdvpFNt1.js → specialists-Chvvwf5z.js} +1 -1
- package/server/specs-oaaYaA5c.js +3 -0
- package/server/{src-CALBEUMX.js → src-BVxZuHMg.js} +3 -3
- package/server/{src-mK_M_ZIj.js → src-D-VXCC9C.js} +5 -5
- package/server/{src-fgbU-jJ-.js → src-DGAEtABV.js} +13 -2
- package/server/{stack-health-BFM8YlHw.js → stack-health-BKbTTOT2.js} +1 -1
- package/server/{stack-health-Qd7rPiVe.js → stack-health-C-le5erA.js} +2 -2
- package/server/{state-home-C2Bicw9N.js → state-home-CoyWsECg.js} +6 -6
- package/server/{summary-fork-EWWBvzgE.js → summary-fork-BF_0vxrq.js} +2 -2
- package/server/{summary-fork-DezPkJSm.js → summary-fork-BlE30Q-I.js} +8 -8
- package/server/supervisor-03Tj_Wra.js +2 -0
- package/server/{supervisor-D5GC5jUM.js → supervisor-BSeML_p0.js} +2 -2
- package/server/{swarm-readiness-Cf9mommA.js → swarm-readiness-CQ4sjrXc.js} +3 -3
- package/server/{system-prerequisites-BsI9hxh9.js → system-prerequisites-DnmLYOnU.js} +13 -1
- package/server/{teardown-workspace-CWz1pbEK.js → teardown-workspace-CpcjDrZ4.js} +12 -12
- package/server/{test-agent-queue-TiVXe3ZT.js → test-agent-queue-Bq298zZl.js} +5 -5
- package/server/{tldr-daemon-C_1frSDj.js → tldr-daemon-CaSUXd9r.js} +2 -2
- package/server/{tldr-daemon-Big5IZ_M.js → tldr-daemon-Rn1Zue0P.js} +1 -1
- package/server/{tmux-D57f-XNv.js → tmux-BVc-NeKM.js} +2 -2
- package/server/{tmux-DClqWwb8.js → tmux-CbcrkUx5.js} +1 -1
- package/server/{token-_qujO3JZ.js → token-D2OC_9ms.js} +1 -1
- package/server/{tracker-config-BmdJU_w6.js → tracker-config-C1Y_2CIo.js} +2 -2
- package/server/{tracker-config-B_Ubts1Z.js → tracker-config-EsBoOWEy.js} +1 -1
- package/server/{tracker-utils-Bg-Sevcv.js → tracker-utils-DSb9cfrF.js} +1 -1
- package/server/{tracker-utils-CWFt6jjV.js → tracker-utils-lph9C3Pw.js} +2 -2
- package/server/{tunnel-UBf2vyAL.js → tunnel-BFBCeo97.js} +2 -2
- package/server/{tunnel-hOBNQbmF.js → tunnel-DDe-ATFF.js} +1 -1
- package/server/{uat-train-DGkIkLxu.js → uat-train-8T24rPzc.js} +1 -1
- package/server/{uat-train-qNanv5hN.js → uat-train-DtKHHy1U.js} +23 -23
- package/server/{validation-B0QaLIHP.js → validation-COOXwNXU.js} +1 -1
- package/server/{validation-C4wegCvH.js → validation-lyudzPvD.js} +3 -3
- package/server/{verification-runner-CntudBes.js → verification-runner-DO0nYTJx.js} +11 -11
- package/server/{verification-runner-DdleMNLq.js → verification-runner-Dd1FX8Qk.js} +1 -1
- package/server/{vtt-parser-CKc-smWM.js → vtt-parser-C57tEF7-.js} +1 -1
- package/server/{work-agent-prompt-CG5jFV9A.js → work-agent-prompt-B2F3ZwKm.js} +11 -11
- package/server/workflows-B4fIN8VP.js +2 -0
- package/server/{workflows-BK2xs_a8.js → workflows-Clz_AFwR.js} +13 -13
- package/server/{workspace-CLrSIRCx.js → workspace-CY_2-Ddv.js} +3 -3
- package/server/{workspace-C9lC5o3E.js → workspace-D0rCFemz.js} +1 -1
- package/server/{workspace-manager-Cb2a7bg9.js → workspace-manager-BIfpzqdU.js} +1 -1
- package/server/{workspace-manager-BJhW2sky.js → workspace-manager-D6NgGkiF.js} +10 -10
- package/server/{workspace-metadata-QQmo_Z0l.js → workspace-metadata-C8yn8kAH.js} +2 -2
- package/server/{workspace-metadata-CTRnr323.js → workspace-metadata-DfgR40YU.js} +1 -1
- package/server/{workspaces-Ca4zZs12.js → workspaces-DOeHyKmA.js} +104 -92
- package/sync-sources/hooks/ask-user-question-hook +87 -0
- package/sync-sources/hooks/auto-approve-hook +96 -0
- package/sync-sources/hooks/codex-notify-hook +62 -0
- package/sync-sources/hooks/gh-issue-trailer-hook +4 -0
- package/sync-sources/hooks/gh-issue-trailer-hook.d.ts +7 -0
- package/sync-sources/hooks/gh-issue-trailer-hook.d.ts.map +1 -0
- package/sync-sources/hooks/gh-issue-trailer-hook.js +239 -0
- package/sync-sources/hooks/gh-issue-trailer-hook.js.map +1 -0
- package/sync-sources/hooks/gh-issue-trailer-hook.ts +296 -0
- package/sync-sources/hooks/git-hooks/post-checkout +109 -0
- package/sync-sources/hooks/heartbeat-hook +113 -0
- package/sync-sources/hooks/notification-hook +70 -0
- package/sync-sources/hooks/notify-complete +79 -0
- package/sync-sources/hooks/pan-hook-lib.sh +153 -0
- package/sync-sources/hooks/permission-event-hook +24 -0
- package/sync-sources/hooks/post-compact-hook +25 -0
- package/sync-sources/hooks/pre-compact-hook +26 -0
- package/sync-sources/hooks/pre-tool-hook +35 -0
- package/sync-sources/hooks/record-cost-event.d.ts +1 -0
- package/sync-sources/hooks/record-cost-event.js +31858 -0
- package/sync-sources/hooks/record-cost-event.js.map +1 -0
- package/sync-sources/hooks/record-cost-event.ts +267 -0
- package/sync-sources/hooks/rtk-bash-filter +152 -0
- package/sync-sources/hooks/session-start-hook +80 -0
- package/sync-sources/hooks/specialist-stop-hook +106 -0
- package/sync-sources/hooks/statusline.sh +169 -0
- package/sync-sources/hooks/stop-hook +217 -0
- package/sync-sources/hooks/tldr-post-edit +72 -0
- package/sync-sources/hooks/tldr-read-enforcer +340 -0
- package/sync-sources/hooks/tmux-send-keys-guard +87 -0
- package/sync-sources/hooks/tsdown.config.ts +14 -0
- package/sync-sources/hooks/user-prompt-submit-hook +57 -0
- package/sync-sources/hooks/work-agent-stop-hook +424 -0
- package/server/cli-Ch_BWJB2.js +0 -3
- package/server/deacon-swarm-CSWGRfzr.js +0 -2
- package/server/dist-BUplB3Od.js +0 -3
- package/server/forge-IgLR0Ist.js +0 -2
- package/server/inspect-agent-CYoWAeeB.js +0 -2
- package/server/merge-agent-CfohxFWM.js +0 -3
- package/server/merge-ops-Czke6UAp.js +0 -2
- package/server/public/assets/mermaid-GHXKKRXX-CZOsRYoT.js +0 -1
- package/server/rally-Ba9QoNYc.js +0 -3
- package/server/resume-CmxF3Kjz.js +0 -3
- package/server/settings-DEhYpW0k.js +0 -2
- package/server/specs-CVH1kvz3.js +0 -3
- package/server/supervisor-DQMK2e3I.js +0 -2
- package/server/workflows-pKw9yRSV.js +0 -2
package/server/server.js
CHANGED
|
@@ -1,95 +1,95 @@
|
|
|
1
1
|
import { a as __toCommonJS, i as __require, o as __toESM, t as __commonJSMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { $n as extractPrefixSync, Br as
|
|
3
|
-
import { _ as getDashboardIdentity, c as startUatTrainReconciler, d as openFlywheelRunReportForDashboard, f as pauseFlywheelRunForDashboard, g as runDashboardDbJob, h as startFlywheelRunForDashboard, l as stopUatTrainReconciler, m as resumeFlywheelRunForDashboard, p as readCurrentFlywheelStatusForDashboard, u as abortFlywheelRunForDashboard, v as readHostDashboardApiPort, y as shouldRefuseHostDashboardPort } from "./uat-train-
|
|
4
|
-
import { C as validateOrigin$1, D as jsonResponse, E as httpHandler, O as jsonStringResponse, T as checkCodexAuthStatus, _ as resolveJsonlPath, a as agentsRouteLayer, c as evaluateSpawnGuardrails, d as resolveConversationGitInfo, g as resolveCodexRolloutPath, h as resolveClaudeSessionId, l as invalidateAgentsCache, m as resolveAgentHarness, o as saveAgentStateAndEmitEvent, p as readLauncherPinnedSessionId, s as saveAgentStateAndEmitEventProgram, t as specialistsRouteLayer, u as resolveAgentGitInfo, v as resolvePiSessionPath, w as validateOriginHeaders, x as isTrustedOriginForHost, y as getHeaderFromMap } from "./specialists-
|
|
2
|
+
import { $n as extractPrefixSync, Br as getLegacyHome, C as resolveTieredExecutionEnabled, Dn as getProjectSync, E as canUseHarnessSync, Et as getIssueWorkspacePath, F as getKimiAnthropicBaseUrl, G as init_registry, Gn as resolveProjectFromIssueSync, Gr as resolveOhmypiExtensionPath, Hn as registerProjectSync, Hr as init_paths, In as listProjects, Ir as SYNC_SOURCES, J as computeModelOrigin, K as DEFAULT_ROLES, Kr as sessionFilePath, L as getProviderForModelSync, Ln as listProjectsSync, M as UnknownModelError, Nn as init_projects, O as init_harness_policy, Or as LOGS_DIR, Ot as init_record, P as getBuiltInDefaultHarness, Q as MODEL_DEPRECATIONS, R as init_providers, Rr as encodeClaudeProjectDir, S as init_tier_table, Sn as findProjectByTeamSync, T as validateTieredExecutionConfig, Tr as CLAUDE_DIR, Ur as isDevMode, Vr as getOverdeckHome, W as defaultBackgroundAiFeatures, Wn as resolveProjectFromIssue, Wr as packageRoot, X as resolveModel, Yn as setProjectAutoMergeDefaultSync, Z as MODEL_CAPABILITIES, _ as getDefaultTtsDaemonConfig, _r as TrackerError, ar as require_dist$1, bn as findProjectByPathSync, br as AGENTS_DIR, c as isClaudeCodeChannelsEnabled, ct as COMPLIANCE_MODES, d as loadConfigNoMigration, dr as GitHubApiError, er as init_issue_id, et as getModelEffortLevelsSync, f as loadConfigSync, g as mergeConfigs, h as jsYaml, hr as ProcessSpawnError, i as getConversationsConfig, it as resolveModelIdSync, kr as OVERDECK_HOME, lr as FsError, lt as PARENT_MODEL_REF, m as init_js_yaml, n as clearConfigCache, nn as flushAutoCommits, nr as parseIssueIdSync, nt as init_model_capabilities, o as getGlobalConfigPath, p as updateConversationsConfig, q as DEFAULT_WORKHORSES, r as getConversationSearchConfigSync, rn as init_auto_commit, rt as modelSupportsImagesSync, t as init_config_yaml, tn as flushAllPendingAutoCommits, tt as hasModelCapabilitySync, u as isTldrEnabledSync, ut as ROLE_EFFORTS, v as mergeTtsDaemonConfigs, vn as extractTeamPrefix, wn as getIssuePrefix, x as TieredExecutionConfigError, yr as init_errors, z as piProviderForModel } from "./config-yaml-C_djSurJ.js";
|
|
3
|
+
import { _ as getDashboardIdentity, c as startUatTrainReconciler, d as openFlywheelRunReportForDashboard, f as pauseFlywheelRunForDashboard, g as runDashboardDbJob, h as startFlywheelRunForDashboard, l as stopUatTrainReconciler, m as resumeFlywheelRunForDashboard, p as readCurrentFlywheelStatusForDashboard, u as abortFlywheelRunForDashboard, v as readHostDashboardApiPort, y as shouldRefuseHostDashboardPort } from "./uat-train-DtKHHy1U.js";
|
|
4
|
+
import { C as validateOrigin$1, D as jsonResponse, E as httpHandler, O as jsonStringResponse, T as checkCodexAuthStatus, _ as resolveJsonlPath, a as agentsRouteLayer, c as evaluateSpawnGuardrails, d as resolveConversationGitInfo, g as resolveCodexRolloutPath, h as resolveClaudeSessionId, l as invalidateAgentsCache, m as resolveAgentHarness, o as saveAgentStateAndEmitEvent, p as readLauncherPinnedSessionId, s as saveAgentStateAndEmitEventProgram, t as specialistsRouteLayer, u as resolveAgentGitInfo, v as resolvePiSessionPath, w as validateOriginHeaders, x as isTrustedOriginForHost, y as getHeaderFromMap } from "./specialists-CL7E8yUg.js";
|
|
5
5
|
import { a as init_activity_logger, i as emitDashboardLifecycleSync, n as emitActivityEntrySync, r as emitActivityTtsSync } from "./activity-logger-pcbf-e30.js";
|
|
6
|
-
import { A as init_paths$1, O as OVERDECK_MIGRATION_PATH, d as getOverdeckDatabaseSync, f as init_infra, i as DbLive, k as getOverdeckDatabasePath, u as TmuxLive } from "./infra-
|
|
6
|
+
import { A as init_paths$1, O as OVERDECK_MIGRATION_PATH, d as getOverdeckDatabaseSync, f as init_infra, i as DbLive, k as getOverdeckDatabasePath, u as TmuxLive } from "./infra-Clew3DpF.js";
|
|
7
7
|
import { n as openDatabase, t as init_driver } from "./driver-D-HBOQa_.js";
|
|
8
|
-
import { E as listPaneValues, F as sendKeysAsync, G as buildChildEnvSync, H as init_ui_theme, I as sendRawKeystroke, K as buildChildEnvWithoutTmuxSync, L as sessionExists, M as resizeWindow, O as listSessionNames, P as sendKeys, S as isHarnessProcessAlive, U as setUiTheme, W as BLANKED_PROVIDER_ENV, b as getWindowDimensions, c as ensureManagedTmuxContextOnce, d as exactPaneTarget, i as capturePane, k as listSessions, n as buildTmuxArgs, o as createSession, p as findManagedServerPidSync, q as init_child_env, w as killSession, x as init_tmux, z as setOption } from "./tmux-
|
|
9
|
-
import { a as init_event_store, i as initEventStore, n as getEventStore, r as getSharedDb } from "./event-store-
|
|
10
|
-
import { _ as FlywheelRunId, a as getHarnessBehavior, b as DomainEvent, c as FlywheelStats, g as WS_METHODS, h as PanRpcGroup, m as PanRpcError, o as ContextLayerSaveRequest, s as ContextPreviewRequest, t as init_src, v as FlywheelStatus, x as MemoryObservation, y as EDITORS } from "./src-
|
|
11
|
-
import { a as fixStuckReadyForMerge, c as init_review_status, i as fixStuckCommentedReviews, l as loadReadyForMergeFlags, n as clearReviewStatus, o as getReviewStatus, r as clearStuckMergeStatuses, s as getReviewStatusSync, u as loadReviewStatuses, v as setReviewStatus, y as setReviewStatusSync } from "./review-status-
|
|
12
|
-
import { a as EventStoreService, c as ReadModelService, d as init_read_model, f as toAgentResolution, i as init_issue_lifecycle, l as ReadModelServiceLive, m as toRole, n as IssueLifecycleLive, o as EventStoreServiceLive, p as toAgentStatus, s as init_domain_services, t as IssueLifecycle } from "./issue-lifecycle-
|
|
13
|
-
import { d as init_agents, i as recordBriefingSessionStart, n as ensureSessionContextBriefingFile, p as listAllAgentsSync, r as init_briefing_freshness, s as AgentsResolverLive, t as appendFreshBriefingUpdate } from "./briefing-freshness-
|
|
14
|
-
import { i as init_paths$2, l as resolveObservationsFile, r as ensureParentDir, s as resolveIssueMemoryRoot, t as assertMemorySafeSegment } from "./paths-
|
|
15
|
-
import { n as listFeatureRegistryEntries, t as init_feature_registry_storage } from "./feature-registry-storage-
|
|
16
|
-
import { a as diffAgainstMain, c as diffCheckpoints, d as diffPatchSinceCommit, f as findCommitAtTime, h as listCheckpoints, l as diffFilesAgainstHead, m as init_checkpoint_manager, o as diffAgainstMainFiles, s as diffCheckpointFiles, t as captureCheckpoint, u as diffPatchFilesAgainstHead } from "./checkpoint-manager-
|
|
17
|
-
import { An as getAgentDir, At as init_bridge_token, Dt as captureTranscriptUserRecordSnapshot, Gt as getAgentRuntimeBaseCommand, Jn as saveAgentStateSync, Jt as getProviderAuthMode, M as init_operator_interventions, Mn as getAgentState, N as operatorInterventionEvent, Nn as getAgentStateFilePath, Ot as init_transcript_landing, Pn as getAgentStateSync, Q as listRunningAgentsSync, St as deliverAgentMessage, X as listAgentStates, Z as listRunningAgents, Zt as injectPiConversationMemory, _t as init_config, an as init_claude_auth, ar as init_pty_token, at as init_concurrency, bn as writeChannelsBridgeMcpConfig, bt as saveCloisterConfigSync, c as init_tier_supervisor, cr as resolvePtySupervisorScriptPath, dr as normalizeAgentId, en as init_pi_fifo, f as supervisorAgentId, gr as getAgentRuntimeStateSync, hn as init_openai_auth, hr as getAgentRuntimeState, in as getClaudeAuthStatus, ir as readAgentHarnessModelRecordSync, j as messageAgent, jt as writeBridgeTokenSync, kt as probeTranscriptSince, ln as getProviderEnvForModel, lr as clearReadySignal, mn as getOpenAIAuthStatus, mr as waitForReadySignal, nn as init_ohmypi_fifo, or as writePtyToken, rn as ohmypiFifoPaths, rr as init_agent_record_sync, rt as emergencyBrake, s as deliverCommitForReview, sr as init_pty_supervisor_locate, t as init_agents$1, tn as piFifoPaths, un as getProviderExportsForModel, vt as loadCloisterConfig, xt as shouldAutoStart, yn as dismissDevChannelsDialog, yt as loadCloisterConfigSync } from "./agents-
|
|
18
|
-
import { t as init_behavior } from "./behavior-
|
|
19
|
-
import { a as getCostForIssueAggregateSync, c as getDailyTrendsSync, d as init_cost_sync, l as getModelRollupSync, n as getBackgroundCostBySourceSync, p as queryCostEventsSync, r as getCavemanExperimentDataSync, s as getCostsByIssueSync, u as getTodayCostSync } from "./cost-sync-
|
|
20
|
-
import { c as getAgentsNeedingAttention, d as CostResolverLive, f as CostWriter, l as CostDoorLive, n as readCloisterStateFile, o as generateHealthSummary, s as getAgentHealth, t as getCloisterService, u as CostResolver } from "./service-
|
|
21
|
-
import { n as AgentStateServiceLive } from "./agent-state-service-
|
|
22
|
-
import { a as init_tracker_config, i as initTrackerConfigCache, n as getLinearApiKey, r as getRallyConfig, t as getGitHubConfig } from "./tracker-config-
|
|
8
|
+
import { E as listPaneValues, F as sendKeysAsync, G as buildChildEnvSync, H as init_ui_theme, I as sendRawKeystroke, K as buildChildEnvWithoutTmuxSync, L as sessionExists, M as resizeWindow, O as listSessionNames, P as sendKeys, S as isHarnessProcessAlive, U as setUiTheme, W as BLANKED_PROVIDER_ENV, b as getWindowDimensions, c as ensureManagedTmuxContextOnce, d as exactPaneTarget, i as capturePane, k as listSessions, n as buildTmuxArgs, o as createSession, p as findManagedServerPidSync, q as init_child_env, w as killSession, x as init_tmux, z as setOption } from "./tmux-BVc-NeKM.js";
|
|
9
|
+
import { a as init_event_store, i as initEventStore, n as getEventStore, r as getSharedDb } from "./event-store-C71x6h0i.js";
|
|
10
|
+
import { _ as FlywheelRunId, a as getHarnessBehavior, b as DomainEvent, c as FlywheelStats, g as WS_METHODS, h as PanRpcGroup, m as PanRpcError, o as ContextLayerSaveRequest, s as ContextPreviewRequest, t as init_src, v as FlywheelStatus, x as MemoryObservation, y as EDITORS } from "./src-DGAEtABV.js";
|
|
11
|
+
import { a as fixStuckReadyForMerge, c as init_review_status, i as fixStuckCommentedReviews, l as loadReadyForMergeFlags, n as clearReviewStatus, o as getReviewStatus, r as clearStuckMergeStatuses, s as getReviewStatusSync, u as loadReviewStatuses, v as setReviewStatus, y as setReviewStatusSync } from "./review-status-BcfwcAcO.js";
|
|
12
|
+
import { a as EventStoreService, c as ReadModelService, d as init_read_model, f as toAgentResolution, i as init_issue_lifecycle, l as ReadModelServiceLive, m as toRole, n as IssueLifecycleLive, o as EventStoreServiceLive, p as toAgentStatus, s as init_domain_services, t as IssueLifecycle } from "./issue-lifecycle-BoJa6qIt.js";
|
|
13
|
+
import { d as init_agents, i as recordBriefingSessionStart, n as ensureSessionContextBriefingFile, p as listAllAgentsSync, r as init_briefing_freshness, s as AgentsResolverLive, t as appendFreshBriefingUpdate } from "./briefing-freshness-BL3Q6p7R.js";
|
|
14
|
+
import { i as init_paths$2, l as resolveObservationsFile, r as ensureParentDir, s as resolveIssueMemoryRoot, t as assertMemorySafeSegment } from "./paths-CiVeo4N_.js";
|
|
15
|
+
import { n as listFeatureRegistryEntries, t as init_feature_registry_storage } from "./feature-registry-storage-DW7dUefc.js";
|
|
16
|
+
import { a as diffAgainstMain, c as diffCheckpoints, d as diffPatchSinceCommit, f as findCommitAtTime, h as listCheckpoints, l as diffFilesAgainstHead, m as init_checkpoint_manager, o as diffAgainstMainFiles, s as diffCheckpointFiles, t as captureCheckpoint, u as diffPatchFilesAgainstHead } from "./checkpoint-manager-DCxjQvP_.js";
|
|
17
|
+
import { An as getAgentDir, At as init_bridge_token, Dt as captureTranscriptUserRecordSnapshot, Gt as getAgentRuntimeBaseCommand, Jn as saveAgentStateSync, Jt as getProviderAuthMode, M as init_operator_interventions, Mn as getAgentState, N as operatorInterventionEvent, Nn as getAgentStateFilePath, Ot as init_transcript_landing, Pn as getAgentStateSync, Q as listRunningAgentsSync, St as deliverAgentMessage, X as listAgentStates, Z as listRunningAgents, Zt as injectPiConversationMemory, _t as init_config, an as init_claude_auth, ar as init_pty_token, at as init_concurrency, bn as writeChannelsBridgeMcpConfig, bt as saveCloisterConfigSync, c as init_tier_supervisor, cr as resolvePtySupervisorScriptPath, dr as normalizeAgentId, en as init_pi_fifo, f as supervisorAgentId, gr as getAgentRuntimeStateSync, hn as init_openai_auth, hr as getAgentRuntimeState, in as getClaudeAuthStatus, ir as readAgentHarnessModelRecordSync, j as messageAgent, jt as writeBridgeTokenSync, kt as probeTranscriptSince, ln as getProviderEnvForModel, lr as clearReadySignal, mn as getOpenAIAuthStatus, mr as waitForReadySignal, nn as init_ohmypi_fifo, or as writePtyToken, rn as ohmypiFifoPaths, rr as init_agent_record_sync, rt as emergencyBrake, s as deliverCommitForReview, sr as init_pty_supervisor_locate, t as init_agents$1, tn as piFifoPaths, un as getProviderExportsForModel, vt as loadCloisterConfig, xt as shouldAutoStart, yn as dismissDevChannelsDialog, yt as loadCloisterConfigSync } from "./agents-DqQa4Dq_.js";
|
|
18
|
+
import { t as init_behavior } from "./behavior-D3d2mVyD.js";
|
|
19
|
+
import { a as getCostForIssueAggregateSync, c as getDailyTrendsSync, d as init_cost_sync, l as getModelRollupSync, n as getBackgroundCostBySourceSync, p as queryCostEventsSync, r as getCavemanExperimentDataSync, s as getCostsByIssueSync, u as getTodayCostSync } from "./cost-sync-D6AX8jv-.js";
|
|
20
|
+
import { c as getAgentsNeedingAttention, d as CostResolverLive, f as CostWriter, l as CostDoorLive, n as readCloisterStateFile, o as generateHealthSummary, s as getAgentHealth, t as getCloisterService, u as CostResolver } from "./service-C8jKYZ0w.js";
|
|
21
|
+
import { n as AgentStateServiceLive } from "./agent-state-service-JhFzYCP_.js";
|
|
22
|
+
import { a as init_tracker_config, i as initTrackerConfigCache, n as getLinearApiKey, r as getRallyConfig, t as getGitHubConfig } from "./tracker-config-C1Y_2CIo.js";
|
|
23
23
|
import { d as init_typed_errors, l as WorkspaceCreateError, n as AgentStartError, r as BeadsNotInitialized, s as TrackerApiError, t as AgentAlreadyRunning, u as WorkspaceNotFound } from "./typed-errors-BEJhbjJg.js";
|
|
24
|
-
import { i as init_linear_client, r as LinearClientOptionalLive, t as LinearClient } from "./linear-client-
|
|
25
|
-
import { i as init_github_client, r as GitHubClientOptionalLive, t as GitHubClient } from "./github-client-
|
|
26
|
-
import { i as init_rally_client, r as RallyClientOptionalLive, t as RallyClient } from "./rally-client-
|
|
27
|
-
import { a as resolveTrackerTypeSync, i as resolveGitHubIssueSync, n as init_tracker_utils } from "./tracker-utils-
|
|
28
|
-
import { a as CacheService, i as startSharedIssueService, n as init_issue_service_singleton, o as init_cache_service, r as issue_service_singleton_exports, s as parseIntegerHeader, t as getSharedIssueService } from "./issue-service-singleton-
|
|
29
|
-
import { i as ensureInternalTokenSync, o as getInternalTokenSync, s as init_internal_token, t as INTERNAL_TOKEN_HEADER } from "./internal-token-
|
|
30
|
-
import { a as setPipelineHandlerSync, t as init_pipeline_notifier } from "./pipeline-notifier-
|
|
31
|
-
import { c as init_review_status_sync, i as getMergeBlockerReconcileCandidates } from "./review-status-sync-
|
|
24
|
+
import { i as init_linear_client, r as LinearClientOptionalLive, t as LinearClient } from "./linear-client-CgQlM4aT.js";
|
|
25
|
+
import { i as init_github_client, r as GitHubClientOptionalLive, t as GitHubClient } from "./github-client-7gkcXcBS.js";
|
|
26
|
+
import { i as init_rally_client, r as RallyClientOptionalLive, t as RallyClient } from "./rally-client-CoWZeVEj.js";
|
|
27
|
+
import { a as resolveTrackerTypeSync, i as resolveGitHubIssueSync, n as init_tracker_utils } from "./tracker-utils-lph9C3Pw.js";
|
|
28
|
+
import { a as CacheService, i as startSharedIssueService, n as init_issue_service_singleton, o as init_cache_service, r as issue_service_singleton_exports, s as parseIntegerHeader, t as getSharedIssueService } from "./issue-service-singleton-BS9NENuR.js";
|
|
29
|
+
import { i as ensureInternalTokenSync, o as getInternalTokenSync, s as init_internal_token, t as INTERNAL_TOKEN_HEADER } from "./internal-token-BeXjPLKy.js";
|
|
30
|
+
import { a as setPipelineHandlerSync, t as init_pipeline_notifier } from "./pipeline-notifier-DBF6dHxH.js";
|
|
31
|
+
import { c as init_review_status_sync, i as getMergeBlockerReconcileCandidates } from "./review-status-sync-CEFty1pW.js";
|
|
32
32
|
import { a as PAN_DIRNAME, f as asPanSpecDocument, i as PAN_CONTINUE_FILENAME, p as init_types } from "./types-CE1m_daD.js";
|
|
33
|
-
import { C as transitionToMerging, _ as markFailed, c as isFlywheelGloballyPaused, d as listDuePendingAutoMerges, f as listProblemAutoMerges, g as markBlocked, n as getActionableAutoMerge, o as init_merge_sync, t as cancelPending, u as listActiveAutoMerges, v as markMerged, x as scheduleAutoMergeWithResult, y as requeueToPending } from "./merge-sync-
|
|
34
|
-
import { C as findSpecByIssue, O as writeSpec, T as init_specs, a as findWorkspaceDraftPlan, b as init_types$1, k as writeSpecForIssue, m as readWorkspacePlanSync, o as init_io, p as readWorkspacePlan, r as findPlan, s as isPlanningComplete, u as readPlan, x as subItemsOf } from "./io-
|
|
35
|
-
import { C as restartCliproxy, S as readPidFile, T as stopCliproxy, b as isCliproxyInstalled, d as getCliproxyAuthDir, o as bridgeCodexAuthToCliproxy, v as init_cliproxy, w as startCliproxy, x as isCliproxyRunning, y as installCliproxy } from "./cliproxy-
|
|
36
|
-
import { f as init_config$1, m as loadConfigSync$1, s as getDashboardApiUrlSync } from "./config-
|
|
33
|
+
import { C as transitionToMerging, _ as markFailed, c as isFlywheelGloballyPaused, d as listDuePendingAutoMerges, f as listProblemAutoMerges, g as markBlocked, n as getActionableAutoMerge, o as init_merge_sync, t as cancelPending, u as listActiveAutoMerges, v as markMerged, x as scheduleAutoMergeWithResult, y as requeueToPending } from "./merge-sync-C2B322Ot.js";
|
|
34
|
+
import { C as findSpecByIssue, O as writeSpec, T as init_specs, a as findWorkspaceDraftPlan, b as init_types$1, k as writeSpecForIssue, m as readWorkspacePlanSync, o as init_io, p as readWorkspacePlan, r as findPlan, s as isPlanningComplete, u as readPlan, x as subItemsOf } from "./io-CbAFXQge.js";
|
|
35
|
+
import { C as restartCliproxy, S as readPidFile, T as stopCliproxy, b as isCliproxyInstalled, d as getCliproxyAuthDir, o as bridgeCodexAuthToCliproxy, v as init_cliproxy, w as startCliproxy, x as isCliproxyRunning, y as installCliproxy } from "./cliproxy-BituqWtR.js";
|
|
36
|
+
import { f as init_config$1, m as loadConfigSync$1, s as getDashboardApiUrlSync } from "./config-DsCxzjXK.js";
|
|
37
37
|
import { n as require_auth_errors, r as require_token_error, t as require_token_util } from "./token-util-CROoF5ic.js";
|
|
38
|
-
import { $ as updateConversationForkFallbackReason, A as isAgentConversationName, B as removeFavorite, C as getConversationByTmuxSession, D as importLegacyConversation, E as hasOtherActiveConversationOnTmuxSession, F as markConversationEnded, G as setConversationHarness, H as setClearedToConvId, I as markConversationRunning, J as setForkRequest, K as setConversationModel, M as listConversations, N as listFavoritedIds, O as incrementForkRetryCount, P as markConversationActive, Q as updateConversationDeliveryMethod, S as getConversationByName, T as getStuckForks, U as setConversationClaudeSessionId, W as setConversationEffort, X as unarchiveConversation, Y as setImportedConversationLinks, Z as updateConversationCost, _ as canRefineTitle, b as getConversationByClaudeSessionId, et as updateConversationTitle, g as backfillConversationModel, gt as getDiscoveredSessionBySessionId, h as archiveConversation, j as listArchivedConversationsWithEnrichment, k as init_conversations, nt as updateLastAttached, q as setFavorite, rt as updateSpawnError, tt as updateForkStatus, v as canReplaceTitle, w as getConversationLedgerCosts, x as getConversationById, y as createConversation, yt as init_discovered_sessions, z as recordConversationHandoff } from "./conversations-
|
|
39
|
-
import { _ as init_codex_conversation_parser, a as contextUsageFromParseResult, c as parseEntireConversation, d as init_pi_conversation_parser, f as isPiSessionFile, g as parseOhmypiConversationMessages, h as isOhmypiSessionFile, i as computeContextUsage, l as parseFromLastCompactBoundary, m as init_ohmypi_conversation_parser, n as gateSnapshotEmission, o as summarizeConversationActivity, p as parsePiConversationMessages, r as watchConversation, s as parseConversationMessages, t as init_conversation_service, v as parseCodexConversationMessages } from "./conversation-service-
|
|
40
|
-
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-
|
|
41
|
-
import { i as init_settings, r as getMemoryWorkerConcurrency, t as areMemoryObservationsEnabled } from "./settings-
|
|
42
|
-
import { i as updateMemoryHealth, n as extractWithProviderPolicy, r as init_health, t as init_providers$1 } from "./providers-
|
|
43
|
-
import { a as init_launcher_generator, i as generateLauncherScriptSync, n as init_state_home, r as isStateMigrated } from "./state-home-
|
|
44
|
-
import { a as init_claude_permissions, o as resolvePermissionModeSync, r as getClaudePermissionFlagsStringSync, t as BYPASS_PERMISSION_MODE } from "./claude-permissions-
|
|
45
|
-
import { a as globalContextFile$1, f as resolveProjectContextFile, h as workspaceContextFile, l as piGlobalContextFile, n as codexGlobalContextFile, o as init_layers, p as resolveWorkspaceContextFile, r as ensureProjectLayer } from "./layers-
|
|
46
|
-
import { l as init_codex, s as findRolloutPath } from "./codex-
|
|
47
|
-
import { C as setMergeTrainEnabled, S as setFlywheelRequireUatBeforeMerge, b as setFlywheelAutoPickupBacklog, c as isCloisterSpawnsPausedSync, d as isFlywheelAutoPickupBacklog, f as isFlywheelGloballyPaused$1, g as setCloisterSpawnsPausedSync, h as setBootReconciliationDecision, m as isMergeTrainEnabled, o as getSetting, p as isFlywheelRequireUatBeforeMerge, r as getBootReconciliationState, s as init_control_settings, u as isDeaconGloballyPausedSync, v as setDeaconGloballyPausedSync, w as setSetting } from "./control-settings-
|
|
48
|
-
import { n as resolveHarness, t as init_harness_resolve } from "./harness-resolve-
|
|
49
|
-
import { i as checkPrdGateSync, t as init_pan_dir } from "./pan-dir-
|
|
50
|
-
import { a as init_lifecycle_io, t as appendContinueSessionEntryForIssue } from "./lifecycle-io-
|
|
51
|
-
import { r as init_swarm_readiness, t as analyzeSwarmReadiness } from "./swarm-readiness-
|
|
52
|
-
import { $t as scanPendingInputsPromise, B as applyIssueBlocksMainLabel, Bt as formatUptime, F as setAgentStatusChangedNotifier, G as applyIssueVetoedLabel, Gt as isSmeeConfiguredSync, H as applyIssueParkedLabel, Ht as getCurrentDockerStats, I as setAgentStoppedNotifier, J as removeIssueParkedLabel, Jt as countPendingAskUserQuestionsForAgent, K as removeIssueBlocksMainLabel, Kt as startSmeeProcessSync, L as setMergeReadyNotifier, Lt as getRuntimeForAgent, O as loadConfig, Q as createInFlightGuard, U as applyIssueReadyLabel, V as applyIssueObjectionLabel, Vt as getContainerHistory, W as applyIssueReleasedLabel, Wt as getSystemHealthSnapshot, X as removeIssueReleasedLabel, Y as removeIssueReadyLabel, Yt as getAgentJsonlMtime, Z as removeIssueVetoedLabel, _t as withConcurrencyLimit, at as listBootReconciliationCandidates, en as detectAwaitingInputForAgent, it as isBootReconciliationCandidate, k as loadState, n as assessDeaconPatrolFreshness, ot as startBootReconciliation, q as removeIssueObjectionLabel, qt as computeAgentEnrichment, rn as parseCodexApprovalPrompt, t as applyBootReconciliationDecision, tn as detectAwaitingInputFromPaneSync, x as getDeaconLogs, zt as getResourceStacks } from "./deacon-
|
|
53
|
-
import { i as CostThresholdError, l as embed, s as parseRelativeTime } from "./scanner-
|
|
54
|
-
import { c as tailEventsSync, n as deduplicateEventsSync, o as readEventsSync } from "./events-
|
|
55
|
-
import { n as recordBackgroundAiCost, t as init_cost } from "./cost-
|
|
56
|
-
import { S as writeLatestFlywheelStatus, _ as readCurrentLatestFlywheelStatus, b as subscribeLatestFlywheelStatus, f as getFlywheelRunDetail, h as listFlywheelRuns, l as buildClassifyLookups, m as isFlywheelRunId, y as resolveLiveFlywheelRunId } from "./flywheel-
|
|
57
|
-
import { C as hasDashboardInternalToken, D as getWorkspacePathForIssue, E as rejectUnsafeDashboardMutationRequest, S as dashboardSessionCookieHeader, T as rejectUnauthorizedDashboardSessionMintRequest, _ as syncCacheSync, b as resolveIssueHeadlineCost, d as reconcile, f as reconcilePiTranscripts, g as rebuildCacheSync, h as getCostsForIssueSync, l as resumeQueuedMerges, m as migrateAllSessionsSync, p as reclassifyUnknownCostEventsSync, t as workspacesRouteLayer, u as syncWalFromAllProjects, v as processPendingFeedbackDeliveries, w as rejectUnauthorizedDashboardRequest, x as dashboardCsrfToken, y as getCachedRunningAgents } from "./workspaces-
|
|
58
|
-
import { l as detectPlatform, u as init_platform } from "./workspace-manager-
|
|
59
|
-
import { O as init_specialists, b as getReviewerSessionName } from "./specialists-
|
|
38
|
+
import { $ as updateConversationForkFallbackReason, A as isAgentConversationName, B as removeFavorite, C as getConversationByTmuxSession, D as importLegacyConversation, E as hasOtherActiveConversationOnTmuxSession, F as markConversationEnded, G as setConversationHarness, H as setClearedToConvId, I as markConversationRunning, J as setForkRequest, K as setConversationModel, M as listConversations, N as listFavoritedIds, O as incrementForkRetryCount, P as markConversationActive, Q as updateConversationDeliveryMethod, S as getConversationByName, T as getStuckForks, U as setConversationClaudeSessionId, W as setConversationEffort, X as unarchiveConversation, Y as setImportedConversationLinks, Z as updateConversationCost, _ as canRefineTitle, b as getConversationByClaudeSessionId, et as updateConversationTitle, g as backfillConversationModel, gt as getDiscoveredSessionBySessionId, h as archiveConversation, j as listArchivedConversationsWithEnrichment, k as init_conversations, nt as updateLastAttached, q as setFavorite, rt as updateSpawnError, tt as updateForkStatus, v as canReplaceTitle, w as getConversationLedgerCosts, x as getConversationById, y as createConversation, yt as init_discovered_sessions, z as recordConversationHandoff } from "./conversations-BSOU5qnu.js";
|
|
39
|
+
import { _ as init_codex_conversation_parser, a as contextUsageFromParseResult, c as parseEntireConversation, d as init_pi_conversation_parser, f as isPiSessionFile, g as parseOhmypiConversationMessages, h as isOhmypiSessionFile, i as computeContextUsage, l as parseFromLastCompactBoundary, m as init_ohmypi_conversation_parser, n as gateSnapshotEmission, o as summarizeConversationActivity, p as parsePiConversationMessages, r as watchConversation, s as parseConversationMessages, t as init_conversation_service, v as parseCodexConversationMessages } from "./conversation-service-CFZIjs-M.js";
|
|
40
|
+
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-x_aLR7U9.js";
|
|
41
|
+
import { i as init_settings, r as getMemoryWorkerConcurrency, t as areMemoryObservationsEnabled } from "./settings-DrRQCren.js";
|
|
42
|
+
import { i as updateMemoryHealth, n as extractWithProviderPolicy, r as init_health, t as init_providers$1 } from "./providers-CUdAb5Qu.js";
|
|
43
|
+
import { a as init_launcher_generator, i as generateLauncherScriptSync, n as init_state_home, r as isStateMigrated } from "./state-home-CoyWsECg.js";
|
|
44
|
+
import { a as init_claude_permissions, o as resolvePermissionModeSync, r as getClaudePermissionFlagsStringSync, t as BYPASS_PERMISSION_MODE } from "./claude-permissions-DxIjkOVl.js";
|
|
45
|
+
import { a as globalContextFile$1, f as resolveProjectContextFile, h as workspaceContextFile, l as piGlobalContextFile, n as codexGlobalContextFile, o as init_layers, p as resolveWorkspaceContextFile, r as ensureProjectLayer } from "./layers-OHHLphl0.js";
|
|
46
|
+
import { l as init_codex, s as findRolloutPath } from "./codex-CO0HrK3j.js";
|
|
47
|
+
import { C as setMergeTrainEnabled, S as setFlywheelRequireUatBeforeMerge, b as setFlywheelAutoPickupBacklog, c as isCloisterSpawnsPausedSync, d as isFlywheelAutoPickupBacklog, f as isFlywheelGloballyPaused$1, g as setCloisterSpawnsPausedSync, h as setBootReconciliationDecision, m as isMergeTrainEnabled, o as getSetting, p as isFlywheelRequireUatBeforeMerge, r as getBootReconciliationState, s as init_control_settings, u as isDeaconGloballyPausedSync, v as setDeaconGloballyPausedSync, w as setSetting } from "./control-settings-KyYNXZLv.js";
|
|
48
|
+
import { n as resolveHarness, t as init_harness_resolve } from "./harness-resolve-CvGXUnAF.js";
|
|
49
|
+
import { i as checkPrdGateSync, t as init_pan_dir } from "./pan-dir-BlNrLzW7.js";
|
|
50
|
+
import { a as init_lifecycle_io, t as appendContinueSessionEntryForIssue } from "./lifecycle-io-C73m5e6R.js";
|
|
51
|
+
import { r as init_swarm_readiness, t as analyzeSwarmReadiness } from "./swarm-readiness-CQ4sjrXc.js";
|
|
52
|
+
import { $t as scanPendingInputsPromise, B as applyIssueBlocksMainLabel, Bt as formatUptime, F as setAgentStatusChangedNotifier, G as applyIssueVetoedLabel, Gt as isSmeeConfiguredSync, H as applyIssueParkedLabel, Ht as getCurrentDockerStats, I as setAgentStoppedNotifier, J as removeIssueParkedLabel, Jt as countPendingAskUserQuestionsForAgent, K as removeIssueBlocksMainLabel, Kt as startSmeeProcessSync, L as setMergeReadyNotifier, Lt as getRuntimeForAgent, O as loadConfig, Q as createInFlightGuard, U as applyIssueReadyLabel, V as applyIssueObjectionLabel, Vt as getContainerHistory, W as applyIssueReleasedLabel, Wt as getSystemHealthSnapshot, X as removeIssueReleasedLabel, Y as removeIssueReadyLabel, Yt as getAgentJsonlMtime, Z as removeIssueVetoedLabel, _t as withConcurrencyLimit, at as listBootReconciliationCandidates, en as detectAwaitingInputForAgent, it as isBootReconciliationCandidate, k as loadState, n as assessDeaconPatrolFreshness, ot as startBootReconciliation, q as removeIssueObjectionLabel, qt as computeAgentEnrichment, rn as parseCodexApprovalPrompt, t as applyBootReconciliationDecision, tn as detectAwaitingInputFromPaneSync, x as getDeaconLogs, zt as getResourceStacks } from "./deacon-2EvA9Ci3.js";
|
|
53
|
+
import { i as CostThresholdError, l as embed, s as parseRelativeTime } from "./scanner-BLCnuXqY.js";
|
|
54
|
+
import { c as tailEventsSync, n as deduplicateEventsSync, o as readEventsSync } from "./events-BFDuPV6n.js";
|
|
55
|
+
import { n as recordBackgroundAiCost, t as init_cost } from "./cost-BE_ulOrw.js";
|
|
56
|
+
import { S as writeLatestFlywheelStatus, _ as readCurrentLatestFlywheelStatus, b as subscribeLatestFlywheelStatus, f as getFlywheelRunDetail, h as listFlywheelRuns, l as buildClassifyLookups, m as isFlywheelRunId, y as resolveLiveFlywheelRunId } from "./flywheel-D9NKvWqb.js";
|
|
57
|
+
import { C as hasDashboardInternalToken, D as getWorkspacePathForIssue, E as rejectUnsafeDashboardMutationRequest, S as dashboardSessionCookieHeader, T as rejectUnauthorizedDashboardSessionMintRequest, _ as syncCacheSync, b as resolveIssueHeadlineCost, d as reconcile, f as reconcilePiTranscripts, g as rebuildCacheSync, h as getCostsForIssueSync, l as resumeQueuedMerges, m as migrateAllSessionsSync, p as reclassifyUnknownCostEventsSync, t as workspacesRouteLayer, u as syncWalFromAllProjects, v as processPendingFeedbackDeliveries, w as rejectUnauthorizedDashboardRequest, x as dashboardCsrfToken, y as getCachedRunningAgents } from "./workspaces-DOeHyKmA.js";
|
|
58
|
+
import { l as detectPlatform, u as init_platform } from "./workspace-manager-D6NgGkiF.js";
|
|
59
|
+
import { O as init_specialists, b as getReviewerSessionName } from "./specialists-BGNZ0_ZW.js";
|
|
60
60
|
import { t as withBdMutex } from "./bd-mutex-BItGvLQ8.js";
|
|
61
|
-
import { c as findPrdAtStatusSync, l as init_prd_locations } from "./archive-planning-
|
|
62
|
-
import { a as getShadowState, s as init_shadow_state } from "./shadow-state-
|
|
63
|
-
import { T as verifyAppCanMerge, d as getPullRequestState, f as init_github_app, l as getMergeBackendStatus, p as isGitHubAppConfigured } from "./github-app-
|
|
64
|
-
import { n as init_issue_closed, t as clearIssueClosedCache } from "./issue-closed-
|
|
65
|
-
import { a as writeFeedbackFile, i as init_feedback_writer } from "./feedback-writer-
|
|
61
|
+
import { c as findPrdAtStatusSync, l as init_prd_locations } from "./archive-planning-CPitEZo4.js";
|
|
62
|
+
import { a as getShadowState, s as init_shadow_state } from "./shadow-state-B4ayC7nx.js";
|
|
63
|
+
import { T as verifyAppCanMerge, d as getPullRequestState, f as init_github_app, l as getMergeBackendStatus, p as isGitHubAppConfigured } from "./github-app-DhycHVLF.js";
|
|
64
|
+
import { n as init_issue_closed, t as clearIssueClosedCache } from "./issue-closed-BYC2TCk-.js";
|
|
65
|
+
import { a as writeFeedbackFile, i as init_feedback_writer } from "./feedback-writer-B9ZqnnX3.js";
|
|
66
66
|
import { a as init_boot_gates, i as formatBootGateState, o as resolveBootGates } from "./no-resume-mode-yrPEQ_pC.js";
|
|
67
67
|
import { c as computeCohort, d as computeStats, f as computeWaves, h as selectNeedsPlanning, l as computeEpicGroups, m as normalizeGate, s as classifyIssue, u as computeLanes } from "./pickup-KLRUhThD.js";
|
|
68
|
-
import { n as parseSequenceMd, r as writeSequenceMd, t as init_sequence_io } from "./sequence-io-
|
|
69
|
-
import { a as loadWorkspaceMetadataSync } from "./workspace-metadata-
|
|
70
|
-
import { i as resolveAutoSpawnOnFinalize, o as spawnPlanningSession } from "./spawn-planning-session-
|
|
71
|
-
import { d as killRemoteAgent, m as loadRemoteAgentState, o as getRemoteAgentOutput, r as checkRemoteSpendCap, s as init_remote_agents, v as sendToRemoteAgent, y as spawnRemoteAgent } from "./remote-agents-
|
|
72
|
-
import { r as spawnInspectAgent } from "./inspect-agent-
|
|
73
|
-
import { n as init_github_pr_lookup, r as lookupPullRequestNumberForBranch, t as githubPrLookupSource } from "./github-pr-lookup-
|
|
74
|
-
import { a as init_pull_requests, c as getIssuePrTabCacheGeneration, i as fetchIssuePullRequestDiff, l as init_pr_tab_cache, n as fetchIssuePullRequest, o as bumpIssuePrTabCacheGeneration, r as fetchIssuePullRequestDetails, s as getCachedIssuePrTabResponse, t as fetchIssueCheckRuns, u as setCachedIssuePrTabResponse } from "./pull-requests-
|
|
75
|
-
import { t as enrichReviewStatus } from "./review-status-enrichment-
|
|
76
|
-
import { i as runMemoryFtsTransaction, n as init_fts_db, r as runMemoryFtsStatement, t as closeMemoryFtsDatabases } from "./fts-db-
|
|
77
|
-
import { c as init_pending, l as maybeTriggerStatusRollup, o as readRecentObservations, r as init_rollup, u as writePendingTurn } from "./rollup-
|
|
78
|
-
import { n as getTldrDaemonServiceSync, r as init_tldr_daemon } from "./tldr-daemon-
|
|
79
|
-
import {
|
|
80
|
-
import { t as getAgentCommandSync } from "./settings-
|
|
81
|
-
import { n as init_review_agent, r as isExtendedReviewEnabled } from "./review-agent-
|
|
82
|
-
import { r as isRemoteAvailable, t as createFlyProviderFromConfig } from "./remote-
|
|
83
|
-
import { n as init_claude_settings_overlay, t as detectProviderEnvConflicts } from "./claude-settings-overlay-
|
|
84
|
-
import { a as init_query_expansion, i as clearQueryExpansionCache, n as init_injection, o as buildMatchQuery, r as injectPromptTimeMemory, s as init_search } from "./injection-
|
|
85
|
-
import { _ as init_transcript_adapter, a as generateFallbackSummary, c as handoffPreconditionFallbackReason, d as prependFallbackFocus, f as requestHandoffFromAgent, g as getTranscriptAdapter, i as copySessionFromCompactBoundary, l as init_summary_fork, o as generateSummaryForFork, p as reserveSummaryForkSession, r as authorHandoffExternal, s as handoffFailureReason, u as logHandoffFallback } from "./summary-fork-
|
|
86
|
-
import { a as init_conversation_compaction, c as shouldInterceptManualCompact, n as compactConversationNative, o as isCompacting } from "./conversation-compaction-
|
|
87
|
-
import { a as init_render, d as validateTemplate, i as hasManagedRegion, l as init_harness, o as userContentOutsideRegion, t as init_context_layers, u as renderForHarness } from "./context-layers-
|
|
88
|
-
import { r as parseArtifactRef } from "./forge-
|
|
89
|
-
import { t as getMergeBlockersPayload } from "./merge-blockers-
|
|
90
|
-
import { a as spawnSequencerAgent, i as init_sequencer_agent, n as clearFinishedSequencerRun, r as getSequencerRunStatus, t as SEQUENCER_AGENT_ID } from "./sequencer-agent-
|
|
91
|
-
import "./supervisor-
|
|
92
|
-
import { i as listTranscriptCheckpoints, r as getTranscriptCheckpoint$1 } from "./checkpoints-
|
|
68
|
+
import { n as parseSequenceMd, r as writeSequenceMd, t as init_sequence_io } from "./sequence-io-BozlUb6f.js";
|
|
69
|
+
import { a as loadWorkspaceMetadataSync } from "./workspace-metadata-C8yn8kAH.js";
|
|
70
|
+
import { i as resolveAutoSpawnOnFinalize, o as spawnPlanningSession } from "./spawn-planning-session-dSpOU0lP.js";
|
|
71
|
+
import { d as killRemoteAgent, m as loadRemoteAgentState, o as getRemoteAgentOutput, r as checkRemoteSpendCap, s as init_remote_agents, v as sendToRemoteAgent, y as spawnRemoteAgent } from "./remote-agents-BBTg-vLT.js";
|
|
72
|
+
import { r as spawnInspectAgent } from "./inspect-agent-DY18KEx4.js";
|
|
73
|
+
import { n as init_github_pr_lookup, r as lookupPullRequestNumberForBranch, t as githubPrLookupSource } from "./github-pr-lookup-rt7T9FwA.js";
|
|
74
|
+
import { a as init_pull_requests, c as getIssuePrTabCacheGeneration, i as fetchIssuePullRequestDiff, l as init_pr_tab_cache, n as fetchIssuePullRequest, o as bumpIssuePrTabCacheGeneration, r as fetchIssuePullRequestDetails, s as getCachedIssuePrTabResponse, t as fetchIssueCheckRuns, u as setCachedIssuePrTabResponse } from "./pull-requests-kTRl7cWC.js";
|
|
75
|
+
import { t as enrichReviewStatus } from "./review-status-enrichment-Cp5kFTGl.js";
|
|
76
|
+
import { i as runMemoryFtsTransaction, n as init_fts_db, r as runMemoryFtsStatement, t as closeMemoryFtsDatabases } from "./fts-db-CL-YzSRG.js";
|
|
77
|
+
import { c as init_pending, l as maybeTriggerStatusRollup, o as readRecentObservations, r as init_rollup, u as writePendingTurn } from "./rollup-C22QDVxh.js";
|
|
78
|
+
import { n as getTldrDaemonServiceSync, r as init_tldr_daemon } from "./tldr-daemon-CaSUXd9r.js";
|
|
79
|
+
import { T as listGitOperationsSync, w as init_git_activity } from "./merge-agent-DNFFsiEm.js";
|
|
80
|
+
import { t as getAgentCommandSync } from "./settings-CSLhh6qR.js";
|
|
81
|
+
import { n as init_review_agent, r as isExtendedReviewEnabled } from "./review-agent-tfR5RDzG.js";
|
|
82
|
+
import { r as isRemoteAvailable, t as createFlyProviderFromConfig } from "./remote-9u9WL0NJ.js";
|
|
83
|
+
import { n as init_claude_settings_overlay, t as detectProviderEnvConflicts } from "./claude-settings-overlay-BPDS6GfE.js";
|
|
84
|
+
import { a as init_query_expansion, i as clearQueryExpansionCache, n as init_injection, o as buildMatchQuery, r as injectPromptTimeMemory, s as init_search } from "./injection-ql0Nddcn.js";
|
|
85
|
+
import { _ as init_transcript_adapter, a as generateFallbackSummary, c as handoffPreconditionFallbackReason, d as prependFallbackFocus, f as requestHandoffFromAgent, g as getTranscriptAdapter, i as copySessionFromCompactBoundary, l as init_summary_fork, o as generateSummaryForFork, p as reserveSummaryForkSession, r as authorHandoffExternal, s as handoffFailureReason, u as logHandoffFallback } from "./summary-fork-BlE30Q-I.js";
|
|
86
|
+
import { a as init_conversation_compaction, c as shouldInterceptManualCompact, n as compactConversationNative, o as isCompacting } from "./conversation-compaction-D3aS5PnS.js";
|
|
87
|
+
import { a as init_render, d as validateTemplate, i as hasManagedRegion, l as init_harness, o as userContentOutsideRegion, t as init_context_layers, u as renderForHarness } from "./context-layers-BNhUBTkf.js";
|
|
88
|
+
import { r as parseArtifactRef } from "./forge-C-SoKy8U.js";
|
|
89
|
+
import { t as getMergeBlockersPayload } from "./merge-blockers-DIOZmqdK.js";
|
|
90
|
+
import { a as spawnSequencerAgent, i as init_sequencer_agent, n as clearFinishedSequencerRun, r as getSequencerRunStatus, t as SEQUENCER_AGENT_ID } from "./sequencer-agent-BEDEHfd2.js";
|
|
91
|
+
import "./supervisor-BSeML_p0.js";
|
|
92
|
+
import { i as listTranscriptCheckpoints, r as getTranscriptCheckpoint$1 } from "./checkpoints-BoX1H2Hf.js";
|
|
93
93
|
import { createRequire } from "node:module";
|
|
94
94
|
import * as sp from "node:path";
|
|
95
95
|
import { basename, delimiter, dirname, extname, isAbsolute, join, normalize, relative, resolve, sep } from "node:path";
|
|
@@ -673,7 +673,7 @@ const AgentSpawnerLive = Layer.effect(AgentSpawner, Effect.sync(() => ({
|
|
|
673
673
|
const beadsDir = join(workspacePath, ".beads");
|
|
674
674
|
const projectBeadsDir = join(workspacePath, "..", "..", ".beads");
|
|
675
675
|
if (!(existsSync$1(beadsDir) || existsSync$1(projectBeadsDir))) throw new BeadsNotInitialized({ workspace: workspacePath });
|
|
676
|
-
const { getAgentState, spawnAgent, normalizeAgentId } = await import("./agents-
|
|
676
|
+
const { getAgentState, spawnAgent, normalizeAgentId } = await import("./agents-CxbuBjID.js");
|
|
677
677
|
const normalizedId = normalizeAgentId(issueId);
|
|
678
678
|
if ((await Effect.runPromise(getAgentState(normalizedId)))?.status === "running") throw new AgentAlreadyRunning({ id: issueId });
|
|
679
679
|
return {
|
|
@@ -704,7 +704,7 @@ const AgentSpawnerLive = Layer.effect(AgentSpawner, Effect.sync(() => ({
|
|
|
704
704
|
const { workspacePath, projectPath, issue } = opts;
|
|
705
705
|
if (!existsSync$1(workspacePath)) throw new WorkspaceNotFound({ id: issueId });
|
|
706
706
|
const sessionName = opts.sessionName ?? `planning-${issueId.toLowerCase()}`;
|
|
707
|
-
const { spawnPlanningSession } = await import("./spawn-planning-session-
|
|
707
|
+
const { spawnPlanningSession } = await import("./spawn-planning-session-Bz4_JES2.js");
|
|
708
708
|
const result = await spawnPlanningSession({
|
|
709
709
|
issue: {
|
|
710
710
|
id: issue.id,
|
|
@@ -737,14 +737,14 @@ const AgentSpawnerLive = Layer.effect(AgentSpawner, Effect.sync(() => ({
|
|
|
737
737
|
}),
|
|
738
738
|
kill: (agentId) => Effect.tryPromise({
|
|
739
739
|
try: async () => {
|
|
740
|
-
const { stopAgent } = await import("./agents-
|
|
740
|
+
const { stopAgent } = await import("./agents-CxbuBjID.js");
|
|
741
741
|
await Effect.runPromise(stopAgent(agentId));
|
|
742
742
|
},
|
|
743
743
|
catch: () => void 0
|
|
744
744
|
}).pipe(Effect.ignore),
|
|
745
745
|
message: (agentId, msg) => Effect.tryPromise({
|
|
746
746
|
try: async () => {
|
|
747
|
-
const { messageAgent } = await import("./agents-
|
|
747
|
+
const { messageAgent } = await import("./agents-CxbuBjID.js");
|
|
748
748
|
await messageAgent(agentId, msg);
|
|
749
749
|
},
|
|
750
750
|
catch: (err) => new AgentStartError({
|
|
@@ -755,8 +755,8 @@ const AgentSpawnerLive = Layer.effect(AgentSpawner, Effect.sync(() => ({
|
|
|
755
755
|
}),
|
|
756
756
|
deepWipe: (issueId, opts) => Effect.tryPromise({
|
|
757
757
|
try: async () => {
|
|
758
|
-
const { deepWipe } = await import("./workflows-
|
|
759
|
-
const { resolveProjectFromIssueSync } = await import("./projects-
|
|
758
|
+
const { deepWipe } = await import("./workflows-B4fIN8VP.js");
|
|
759
|
+
const { resolveProjectFromIssueSync } = await import("./projects-BqRMlDOv.js");
|
|
760
760
|
const project = resolveProjectFromIssueSync(issueId);
|
|
761
761
|
const projectPath = project?.projectPath ?? process.cwd();
|
|
762
762
|
await Effect.runPromise(deepWipe({
|
|
@@ -812,8 +812,8 @@ const WorkspaceServiceLive = Layer.effect(WorkspaceService, Effect.sync(() => {
|
|
|
812
812
|
const { workspacePath, branch } = getWorkspacePath(issueId);
|
|
813
813
|
const issueLower = issueId.toLowerCase();
|
|
814
814
|
if (existsSync$1(workspacePath)) return workspacePath;
|
|
815
|
-
const { createWorkspace } = await import("./workspace-manager-
|
|
816
|
-
const { loadProjectsConfigSync } = await import("./projects-
|
|
815
|
+
const { createWorkspace } = await import("./workspace-manager-BIfpzqdU.js");
|
|
816
|
+
const { loadProjectsConfigSync } = await import("./projects-BqRMlDOv.js");
|
|
817
817
|
const { projects } = loadProjectsConfigSync();
|
|
818
818
|
const project = resolveProjectFromIssueSync(issueId);
|
|
819
819
|
if (!project) throw new WorkspaceCreateError({
|
|
@@ -848,7 +848,7 @@ const WorkspaceServiceLive = Layer.effect(WorkspaceService, Effect.sync(() => {
|
|
|
848
848
|
const { workspacePath } = getWorkspacePath(issueId);
|
|
849
849
|
const issueLower = issueId.toLowerCase();
|
|
850
850
|
if (!existsSync$1(workspacePath)) throw new WorkspaceNotFound({ id: issueId });
|
|
851
|
-
const { removeWorkspace } = await import("./workspace-manager-
|
|
851
|
+
const { removeWorkspace } = await import("./workspace-manager-BIfpzqdU.js");
|
|
852
852
|
const project = resolveProjectFromIssueSync(issueId);
|
|
853
853
|
if (!project) throw new WorkspaceCreateError({
|
|
854
854
|
id: issueId,
|
|
@@ -879,7 +879,7 @@ const WorkspaceServiceLive = Layer.effect(WorkspaceService, Effect.sync(() => {
|
|
|
879
879
|
try: async () => {
|
|
880
880
|
const { workspacePath } = getWorkspacePath(issueId);
|
|
881
881
|
const issueLower = issueId.toLowerCase();
|
|
882
|
-
const { stopWorkspaceDocker } = await import("./workspace-manager-
|
|
882
|
+
const { stopWorkspaceDocker } = await import("./workspace-manager-BIfpzqdU.js");
|
|
883
883
|
await Effect.runPromise(stopWorkspaceDocker(workspacePath, issueLower));
|
|
884
884
|
},
|
|
885
885
|
catch: () => void 0
|
|
@@ -948,7 +948,7 @@ const WorkspaceServiceLive = Layer.effect(WorkspaceService, Effect.sync(() => {
|
|
|
948
948
|
join(workspacePath, ".devcontainer", "docker-compose.devcontainer.yml")
|
|
949
949
|
];
|
|
950
950
|
if (!composePaths.find((p) => existsSync$1(p))) {
|
|
951
|
-
const { ensureDevcontainerSync } = await import("./ensure-devcontainer-
|
|
951
|
+
const { ensureDevcontainerSync } = await import("./ensure-devcontainer-BIShzs3M.js");
|
|
952
952
|
const ensure = ensureDevcontainerSync({
|
|
953
953
|
workspacePath,
|
|
954
954
|
issueId
|
|
@@ -15966,7 +15966,7 @@ var require_get_vercel_oidc_token = /* @__PURE__ */ __commonJSMin(((exports, mod
|
|
|
15966
15966
|
err = error;
|
|
15967
15967
|
}
|
|
15968
15968
|
try {
|
|
15969
|
-
const [{ getTokenPayload, isExpired }, { refreshToken }] = await Promise.all([await import("./token-util-xNaV-00f.js").then((m) => /* @__PURE__ */ __toESM(m.default)), await import("./token-
|
|
15969
|
+
const [{ getTokenPayload, isExpired }, { refreshToken }] = await Promise.all([await import("./token-util-xNaV-00f.js").then((m) => /* @__PURE__ */ __toESM(m.default)), await import("./token-D2OC_9ms.js").then((m) => /* @__PURE__ */ __toESM(m.default))]);
|
|
15970
15970
|
if (!token || isExpired(getTokenPayload(token), options?.expirationBufferMs)) {
|
|
15971
15971
|
await refreshToken(options);
|
|
15972
15972
|
token = getVercelOidcTokenSync();
|
|
@@ -28283,7 +28283,7 @@ var GoogleCloudTranscription = class {
|
|
|
28283
28283
|
}
|
|
28284
28284
|
async start(apiKey, model) {
|
|
28285
28285
|
try {
|
|
28286
|
-
const { SpeechClient } = await import("./src-
|
|
28286
|
+
const { SpeechClient } = await import("./src-D-VXCC9C.js").then((m) => /* @__PURE__ */ __toESM(m.default, 1)).then((module) => module.v1p1beta1 ?? module.v1);
|
|
28287
28287
|
if (this.closed) return;
|
|
28288
28288
|
const stream = new SpeechClient({ apiKey }).streamingRecognize({
|
|
28289
28289
|
config: {
|
|
@@ -30517,7 +30517,7 @@ function isDiscoverableAgentSession(sessionName) {
|
|
|
30517
30517
|
async function loadTrackerIssues() {
|
|
30518
30518
|
const map = /* @__PURE__ */ new Map();
|
|
30519
30519
|
try {
|
|
30520
|
-
const { getSharedIssueService } = await import("./issue-service-singleton-
|
|
30520
|
+
const { getSharedIssueService } = await import("./issue-service-singleton-3g_CCY-1.js");
|
|
30521
30521
|
const issues = (await getSharedIssueService()).getIssues();
|
|
30522
30522
|
for (const issue of issues) if (issue.identifier) map.set(issue.identifier.toUpperCase(), issue);
|
|
30523
30523
|
} catch {
|
|
@@ -30716,7 +30716,7 @@ async function computeResourceAllocatedIssues() {
|
|
|
30716
30716
|
if (!issue.resourceDetails.tmuxSessions.includes(sessionName)) issue.resourceDetails.tmuxSessions.push(sessionName);
|
|
30717
30717
|
}
|
|
30718
30718
|
try {
|
|
30719
|
-
const { listActiveRemoteAgentStates } = await import("./remote-agents-
|
|
30719
|
+
const { listActiveRemoteAgentStates } = await import("./remote-agents-B4eWgwNd.js");
|
|
30720
30720
|
for (const remoteState of listActiveRemoteAgentStates()) {
|
|
30721
30721
|
const issue = ensureIssue(remoteState.issueId);
|
|
30722
30722
|
if (!issue) continue;
|
|
@@ -31285,7 +31285,7 @@ async function completePlanningArtifacts(options) {
|
|
|
31285
31285
|
if (workspaceIssueId && workspaceIssueId.toLowerCase() !== issueLower) throw new Error(`Workspace vBRIEF is for ${workspaceIssueId.toUpperCase()}, not ${upperIssueId}`);
|
|
31286
31286
|
assertPlanQuality(workspaceDoc);
|
|
31287
31287
|
const createBeads = options.createBeads ?? (async (path) => {
|
|
31288
|
-
const mod = await import("./beads-
|
|
31288
|
+
const mod = await import("./beads-CivpXztb.js");
|
|
31289
31289
|
return await Effect.runPromise(mod.createBeadsFromVBrief(path));
|
|
31290
31290
|
});
|
|
31291
31291
|
emitCompletePlanningPhase(upperIssueId, "specWrite", "start", "writing proposed vBRIEF spec", { projectPath });
|
|
@@ -31964,7 +31964,7 @@ async function closeIssuePullRequest(issueId, reason = "Canceled via Overdeck")
|
|
|
31964
31964
|
timeout: 15e3
|
|
31965
31965
|
});
|
|
31966
31966
|
try {
|
|
31967
|
-
const { setReviewStatusSync } = await import("./review-status-
|
|
31967
|
+
const { setReviewStatusSync } = await import("./review-status-B0Axo-Ma.js");
|
|
31968
31968
|
setReviewStatusSync(issueId.toUpperCase(), { prUrl: void 0 });
|
|
31969
31969
|
} catch {}
|
|
31970
31970
|
return [`Closed PR #${prNumber} on ${githubCheck.owner}/${githubCheck.repo}`];
|
|
@@ -32018,7 +32018,7 @@ async function runDestructiveIssueLifecycle(id, mode, opts = {}) {
|
|
|
32018
32018
|
const { ctx, projectConfig } = buildLifecycleContext(id, getIssueDataService$8().getIssueSource(id) ?? void 0);
|
|
32019
32019
|
const deleteWorkspace = opts.deleteWorkspace ?? true;
|
|
32020
32020
|
cleanupLog.push(...await closeIssuePullRequest(id, mode === "cancel" ? "Canceled via Overdeck" : "Reset to Todo via Overdeck"));
|
|
32021
|
-
const { resetToTodo, cancelIssueWorkflow } = await import("./lifecycle-
|
|
32021
|
+
const { resetToTodo, cancelIssueWorkflow } = await import("./lifecycle-B8IdvUbt.js");
|
|
32022
32022
|
const workflow = mode === "cancel" ? cancelIssueWorkflow : resetToTodo;
|
|
32023
32023
|
const result = await Effect.runPromise(workflow(ctx, {
|
|
32024
32024
|
deleteWorkspace,
|
|
@@ -32033,7 +32033,7 @@ async function runDestructiveIssueLifecycle(id, mode, opts = {}) {
|
|
|
32033
32033
|
}));
|
|
32034
32034
|
cleanupLog.push(...result.steps.flatMap((step) => step.details || [step.error].filter(Boolean)));
|
|
32035
32035
|
if (mode === "cancel") try {
|
|
32036
|
-
const { transitionVBriefOnMain } = await import("./lifecycle-io-
|
|
32036
|
+
const { transitionVBriefOnMain } = await import("./lifecycle-io-BMCH1Bxg.js");
|
|
32037
32037
|
const tx = await Effect.runPromise(transitionVBriefOnMain(ctx.projectPath, id, "cancelled", "cancelled", `scope: cancel ${id.toUpperCase()} vBRIEF`));
|
|
32038
32038
|
if (tx.moved) cleanupLog.push(`vBRIEF moved ${tx.fromDir} → cancelled`);
|
|
32039
32039
|
if (tx.committed) cleanupLog.push(`Committed vBRIEF cancellation on main`);
|
|
@@ -32041,8 +32041,8 @@ async function runDestructiveIssueLifecycle(id, mode, opts = {}) {
|
|
|
32041
32041
|
cleanupLog.push(`vBRIEF cancel transition failed (non-fatal): ${err?.message ?? err}`);
|
|
32042
32042
|
}
|
|
32043
32043
|
try {
|
|
32044
|
-
const { killAllReviewerSessions } = await import("./review-agent-
|
|
32045
|
-
const { resolveProjectFromIssueSync } = await import("./projects-
|
|
32044
|
+
const { killAllReviewerSessions } = await import("./review-agent-Bf9XjLnl.js");
|
|
32045
|
+
const { resolveProjectFromIssueSync } = await import("./projects-BqRMlDOv.js");
|
|
32046
32046
|
const projectKey = resolveProjectFromIssueSync(id)?.projectKey;
|
|
32047
32047
|
if (projectKey) {
|
|
32048
32048
|
const { killed } = await Effect.runPromise(killAllReviewerSessions(projectKey, id.toUpperCase()));
|
|
@@ -32056,7 +32056,7 @@ async function runDestructiveIssueLifecycle(id, mode, opts = {}) {
|
|
|
32056
32056
|
cleanupLog.push("Cleared review status");
|
|
32057
32057
|
} catch {}
|
|
32058
32058
|
try {
|
|
32059
|
-
const { resetPostMergeState } = await import("./merge-agent-
|
|
32059
|
+
const { resetPostMergeState } = await import("./merge-agent-Bwm34MZ5.js");
|
|
32060
32060
|
resetPostMergeState(id);
|
|
32061
32061
|
resetPostMergeState(id.toUpperCase());
|
|
32062
32062
|
cleanupLog.push("Cleared merge state");
|
|
@@ -32076,7 +32076,7 @@ function closeIssueTransition(options) {
|
|
|
32076
32076
|
const { issueId, body, eventStore } = options;
|
|
32077
32077
|
const { reason } = body;
|
|
32078
32078
|
const projectPath = getProjectPath$3(void 0, extractPrefixSync(issueId) ?? issueId.split("-")[0]);
|
|
32079
|
-
const { close: closeWorkflow } = yield* Effect.promise(() => import("./lifecycle-
|
|
32079
|
+
const { close: closeWorkflow } = yield* Effect.promise(() => import("./lifecycle-B8IdvUbt.js"));
|
|
32080
32080
|
const githubCheck = isGitHubIssue$4(issueId);
|
|
32081
32081
|
const issueDataService = getIssueDataService$8();
|
|
32082
32082
|
const issueSource = issueDataService.getIssueSource(issueId);
|
|
@@ -32343,7 +32343,7 @@ function reopenIssueTransition(options) {
|
|
|
32343
32343
|
else clearReviewStatus(id.toUpperCase());
|
|
32344
32344
|
} catch {}
|
|
32345
32345
|
try {
|
|
32346
|
-
const { resetPostMergeState } = await import("./merge-agent-
|
|
32346
|
+
const { resetPostMergeState } = await import("./merge-agent-Bwm34MZ5.js");
|
|
32347
32347
|
resetPostMergeState(id);
|
|
32348
32348
|
resetPostMergeState(id.toUpperCase());
|
|
32349
32349
|
} catch {}
|
|
@@ -32363,7 +32363,7 @@ function reopenIssueTransition(options) {
|
|
|
32363
32363
|
const projectPath = (teamPrefix ? findProjectByTeamSync(teamPrefix) : null)?.path || "";
|
|
32364
32364
|
if (projectPath) {
|
|
32365
32365
|
const workspacePath = join(projectPath, "workspaces", `feature-${issueLower}`);
|
|
32366
|
-
const { createBeadsFromVBrief } = await import("./beads-
|
|
32366
|
+
const { createBeadsFromVBrief } = await import("./beads-CivpXztb.js");
|
|
32367
32367
|
if (existsSync$1(workspacePath) && await Effect.runPromise(findPlan(workspacePath))) try {
|
|
32368
32368
|
const { stdout: bdCheck } = await Effect.runPromise(withBdMutex(() => Effect.promise(() => execFileAsync$11("bd", [
|
|
32369
32369
|
"list",
|
|
@@ -32440,7 +32440,7 @@ function moveIssueStatus(options) {
|
|
|
32440
32440
|
"done"
|
|
32441
32441
|
];
|
|
32442
32442
|
if (!targetStatus || !validStatuses.includes(targetStatus)) return jsonResponse({ error: `Invalid targetStatus. Must be one of: ${validStatuses.join(", ")}` }, { status: 400 });
|
|
32443
|
-
const { updateShadowState } = yield* Effect.promise(() => import("./shadow-state-
|
|
32443
|
+
const { updateShadowState } = yield* Effect.promise(() => import("./shadow-state-CHqWHD3T.js"));
|
|
32444
32444
|
const issueState = {
|
|
32445
32445
|
backlog: "open",
|
|
32446
32446
|
todo: "open",
|
|
@@ -32667,7 +32667,7 @@ async function copySettingsToWorkspace(id) {
|
|
|
32667
32667
|
success: false,
|
|
32668
32668
|
error: "Workspace not found"
|
|
32669
32669
|
}, { status: 404 });
|
|
32670
|
-
const { copyOverdeckSettingsToWorkspaceSync } = await import("./workspace-manager-
|
|
32670
|
+
const { copyOverdeckSettingsToWorkspaceSync } = await import("./workspace-manager-BIfpzqdU.js");
|
|
32671
32671
|
const result = copyOverdeckSettingsToWorkspaceSync(workspacePath);
|
|
32672
32672
|
return jsonResponse({
|
|
32673
32673
|
success: result.errors.length === 0 || result.copied.length > 0,
|
|
@@ -32702,7 +32702,7 @@ function generateTasksForIssue(id) {
|
|
|
32702
32702
|
success: false,
|
|
32703
32703
|
error: `No vBRIEF spec found on main for ${id} — run planning first.`
|
|
32704
32704
|
}, { status: 409 });
|
|
32705
|
-
const { createBeadsFromVBrief } = yield* Effect.promise(() => import("./beads-
|
|
32705
|
+
const { createBeadsFromVBrief } = yield* Effect.promise(() => import("./beads-CivpXztb.js"));
|
|
32706
32706
|
const result = yield* createBeadsFromVBrief(workspacePath);
|
|
32707
32707
|
if (!result.success || result.created.length === 0) {
|
|
32708
32708
|
const errors = result.errors.length > 0 ? result.errors : ["Beads creation produced no tasks"];
|
|
@@ -33142,7 +33142,7 @@ function restartFromPlan(options) {
|
|
|
33142
33142
|
});
|
|
33143
33143
|
const resetResult = yield* Effect.promise(async () => {
|
|
33144
33144
|
try {
|
|
33145
|
-
const { runGitResetHard } = await import("./dangerous-git-ops-
|
|
33145
|
+
const { runGitResetHard } = await import("./dangerous-git-ops-04Ba-Qu3.js");
|
|
33146
33146
|
async function findPlanningCommit(grep, label) {
|
|
33147
33147
|
try {
|
|
33148
33148
|
const { stdout } = await execAsync$7(`git log --grep="${grep.replace(/"/g, "\\\"")}" --format=%H -1`, {
|
|
@@ -33594,7 +33594,7 @@ function closeOutIssue(id) {
|
|
|
33594
33594
|
}
|
|
33595
33595
|
const closeOutResult = yield* Effect.promise(async () => {
|
|
33596
33596
|
try {
|
|
33597
|
-
const { closeOut } = await import("./lifecycle-
|
|
33597
|
+
const { closeOut } = await import("./lifecycle-B8IdvUbt.js");
|
|
33598
33598
|
return {
|
|
33599
33599
|
ok: true,
|
|
33600
33600
|
result: await Effect.runPromise(closeOut(ctx))
|
|
@@ -33680,7 +33680,7 @@ function bulkCloseOut(body) {
|
|
|
33680
33680
|
const invalidIds = issueIds.filter((id) => !isValidIssueId(id));
|
|
33681
33681
|
if (invalidIds.length > 0) return jsonResponse({ error: `Invalid issue ID format: ${invalidIds.join(", ")}` }, { status: 400 });
|
|
33682
33682
|
const eventStore = yield* EventStoreService;
|
|
33683
|
-
const { closeOut } = yield* Effect.promise(() => import("./lifecycle-
|
|
33683
|
+
const { closeOut } = yield* Effect.promise(() => import("./lifecycle-B8IdvUbt.js"));
|
|
33684
33684
|
const issueDataService = getIssueDataService$5();
|
|
33685
33685
|
const tasks = [];
|
|
33686
33686
|
const agentChecks = yield* withConcurrencyLimit(issueIds.map((id) => Effect.promise(async () => {
|
|
@@ -33876,8 +33876,8 @@ const getIssueShipLogRoute = HttpRouter.add("GET", "/api/issues/:id/ship-log", h
|
|
|
33876
33876
|
const id = (yield* HttpRouter.params)["id"] ?? "";
|
|
33877
33877
|
if (!parseIssueIdSync(id)) return jsonResponse({ error: "Invalid issue ID" }, { status: 400 });
|
|
33878
33878
|
return yield* Effect.promise(async () => {
|
|
33879
|
-
const { getShipLog } = await import("./ship-log-
|
|
33880
|
-
const { getReviewStatusSync } = await import("./review-status-
|
|
33879
|
+
const { getShipLog } = await import("./ship-log-CDVmOlZP.js");
|
|
33880
|
+
const { getReviewStatusSync } = await import("./review-status-B0Axo-Ma.js");
|
|
33881
33881
|
const log = getShipLog(id);
|
|
33882
33882
|
const rs = getReviewStatusSync(id);
|
|
33883
33883
|
return jsonResponse({
|
|
@@ -38306,7 +38306,7 @@ Be specific: reference actual file names, function names, requirement text, disc
|
|
|
38306
38306
|
const { command: cliCmd, args: cliArgs } = getAgentCommandSync(statusModelId);
|
|
38307
38307
|
const modelFlag = cliArgs.length > 0 ? ` ${cliArgs.join(" ")}` : "";
|
|
38308
38308
|
const promptFile = join(planningDir, ".status-review-prompt.tmp");
|
|
38309
|
-
const { getProviderForModelSync, getProviderEnvSync } = await import("./providers-
|
|
38309
|
+
const { getProviderForModelSync, getProviderEnvSync } = await import("./providers-gZ0cUgQM.js");
|
|
38310
38310
|
let providerEnvStr = "";
|
|
38311
38311
|
let providerEnv = {};
|
|
38312
38312
|
const statusProvider = getProviderForModelSync(statusModelId);
|
|
@@ -38389,7 +38389,7 @@ const postMissionControlUploadRoute = HttpRouter.add("POST", "/api/command-deck/
|
|
|
38389
38389
|
let safeName = filename.replace(/[^a-zA-Z0-9._-]/g, "-");
|
|
38390
38390
|
let processedContent = content;
|
|
38391
38391
|
if (safeName.endsWith(".vtt")) {
|
|
38392
|
-
const { vttToMarkdown } = yield* Effect.promise(() => import("./vtt-parser-
|
|
38392
|
+
const { vttToMarkdown } = yield* Effect.promise(() => import("./vtt-parser-C57tEF7-.js"));
|
|
38393
38393
|
processedContent = vttToMarkdown(content);
|
|
38394
38394
|
safeName = safeName.replace(/\.vtt$/, ".md");
|
|
38395
38395
|
}
|
|
@@ -44204,7 +44204,7 @@ const postRallyValidateRoute = HttpRouter.add("POST", "/api/rally/validate", Eff
|
|
|
44204
44204
|
}, { status: 400 });
|
|
44205
44205
|
return yield* Effect.promise(async () => {
|
|
44206
44206
|
try {
|
|
44207
|
-
const { RallyRestApi } = await import("./rally-api-
|
|
44207
|
+
const { RallyRestApi } = await import("./rally-api-jOk4vit_.js");
|
|
44208
44208
|
const api = new RallyRestApi({
|
|
44209
44209
|
apiKey,
|
|
44210
44210
|
server: server || "https://rally1.rallydev.com"
|
|
@@ -44532,7 +44532,7 @@ const getPlanningStatusRoute = HttpRouter.add("GET", "/api/planning/:issueId/sta
|
|
|
44532
44532
|
const remoteState = loadRemoteAgentState(sessionName);
|
|
44533
44533
|
const isRemote = !!remoteState;
|
|
44534
44534
|
const vmName = remoteState?.vmName ?? "";
|
|
44535
|
-
const { getAgentStateSync } = await import("./agents-
|
|
44535
|
+
const { getAgentStateSync } = await import("./agents-CxbuBjID.js");
|
|
44536
44536
|
const agentStarting = getAgentStateSync(sessionName)?.status === "starting";
|
|
44537
44537
|
let tmuxSessionAlive = false;
|
|
44538
44538
|
if (!isRemote) try {
|
|
@@ -44675,7 +44675,7 @@ Continue the PLANNING session. Do NOT implement anything.
|
|
|
44675
44675
|
`);
|
|
44676
44676
|
const agentCwd = workspacePath;
|
|
44677
44677
|
if (existsSync$1(outputFile)) await rename(outputFile, join(planningDir, `output-${Date.now()}.jsonl`));
|
|
44678
|
-
const { getAgentCommandSync } = await import("./settings-
|
|
44678
|
+
const { getAgentCommandSync } = await import("./settings-CSaXtkoA.js");
|
|
44679
44679
|
let msgPlanningModel = "claude-sonnet-5";
|
|
44680
44680
|
try {
|
|
44681
44681
|
msgPlanningModel = resolveModel("plan", void 0, loadConfigSync().config);
|
|
@@ -44796,7 +44796,7 @@ async function getIndexStats(rootPath, isMain) {
|
|
|
44796
44796
|
}
|
|
44797
44797
|
const getTldrStatusRoute = HttpRouter.add("GET", "/api/services/tldr/status", Effect.promise(async () => {
|
|
44798
44798
|
try {
|
|
44799
|
-
const { getTldrDaemonServiceSync } = await import("./tldr-daemon-
|
|
44799
|
+
const { getTldrDaemonServiceSync } = await import("./tldr-daemon-Rn1Zue0P.js");
|
|
44800
44800
|
const projectRoot = process.cwd();
|
|
44801
44801
|
const venvPath = join(projectRoot, ".venv");
|
|
44802
44802
|
const results = [];
|
|
@@ -44841,7 +44841,7 @@ const getTldrStatusRoute = HttpRouter.add("GET", "/api/services/tldr/status", Ef
|
|
|
44841
44841
|
}));
|
|
44842
44842
|
const postTldrStartRoute = HttpRouter.add("POST", "/api/services/tldr/start", Effect.promise(async () => {
|
|
44843
44843
|
try {
|
|
44844
|
-
const { getTldrDaemonServiceSync } = await import("./tldr-daemon-
|
|
44844
|
+
const { getTldrDaemonServiceSync } = await import("./tldr-daemon-Rn1Zue0P.js");
|
|
44845
44845
|
const projectRoot = process.cwd();
|
|
44846
44846
|
const venvPath = join(projectRoot, ".venv");
|
|
44847
44847
|
if (!existsSync$1(venvPath)) return jsonResponse({ error: "No .venv found in project root" }, { status: 404 });
|
|
@@ -44858,7 +44858,7 @@ const postTldrStartRoute = HttpRouter.add("POST", "/api/services/tldr/start", Ef
|
|
|
44858
44858
|
}));
|
|
44859
44859
|
const postTldrStopRoute = HttpRouter.add("POST", "/api/services/tldr/stop", Effect.promise(async () => {
|
|
44860
44860
|
try {
|
|
44861
|
-
const { getTldrDaemonServiceSync } = await import("./tldr-daemon-
|
|
44861
|
+
const { getTldrDaemonServiceSync } = await import("./tldr-daemon-Rn1Zue0P.js");
|
|
44862
44862
|
const projectRoot = process.cwd();
|
|
44863
44863
|
const venvPath = join(projectRoot, ".venv");
|
|
44864
44864
|
if (!existsSync$1(venvPath)) return jsonResponse({ error: "No .venv found in project root" }, { status: 404 });
|
|
@@ -44875,7 +44875,7 @@ const postTldrStopRoute = HttpRouter.add("POST", "/api/services/tldr/stop", Effe
|
|
|
44875
44875
|
}));
|
|
44876
44876
|
const postTldrReloadRoute = HttpRouter.add("POST", "/api/services/tldr/reload", Effect.promise(async () => {
|
|
44877
44877
|
try {
|
|
44878
|
-
const { getTldrDaemonServiceSync } = await import("./tldr-daemon-
|
|
44878
|
+
const { getTldrDaemonServiceSync } = await import("./tldr-daemon-Rn1Zue0P.js");
|
|
44879
44879
|
const enabled = isTldrEnabledSync();
|
|
44880
44880
|
const projectRoot = process.cwd();
|
|
44881
44881
|
const targets = [];
|
|
@@ -44951,7 +44951,7 @@ const getVersionRoute = HttpRouter.add("GET", "/api/version", Effect.promise(asy
|
|
|
44951
44951
|
const version = await getOverdeckVersion();
|
|
44952
44952
|
let supervisorUrl = null;
|
|
44953
44953
|
try {
|
|
44954
|
-
const { getSupervisorUrlSync } = await import("./supervisor-
|
|
44954
|
+
const { getSupervisorUrlSync } = await import("./supervisor-03Tj_Wra.js");
|
|
44955
44955
|
supervisorUrl = getSupervisorUrlSync();
|
|
44956
44956
|
} catch {}
|
|
44957
44957
|
return jsonResponse({
|
|
@@ -44961,7 +44961,7 @@ const getVersionRoute = HttpRouter.add("GET", "/api/version", Effect.promise(asy
|
|
|
44961
44961
|
});
|
|
44962
44962
|
}));
|
|
44963
44963
|
const getPrerequisitesRoute = HttpRouter.add("GET", "/api/prerequisites", Effect.promise(async () => {
|
|
44964
|
-
const { checkSystemPrerequisites } = await import("./system-prerequisites-
|
|
44964
|
+
const { checkSystemPrerequisites } = await import("./system-prerequisites-DnmLYOnU.js");
|
|
44965
44965
|
return jsonResponse(await checkSystemPrerequisites());
|
|
44966
44966
|
}));
|
|
44967
44967
|
const getRegisteredProjectsRoute = HttpRouter.add("GET", "/api/registered-projects", Effect.try({
|
|
@@ -45119,7 +45119,7 @@ const postShadowMonitorRoute = HttpRouter.add("POST", "/api/shadow/:issueId/moni
|
|
|
45119
45119
|
const projectPath = await getProjectPath(issuePrefix);
|
|
45120
45120
|
const workspacePath = join(projectPath, "workspaces", `feature-${issueLower}`);
|
|
45121
45121
|
if (!existsSync$1(workspacePath)) return jsonResponse({ error: "Workspace not found" }, { status: 404 });
|
|
45122
|
-
const { gatherArtifacts, generateBasicInference, updateInferenceDocumentSync } = await import("./shadow-engineering-
|
|
45122
|
+
const { gatherArtifacts, generateBasicInference, updateInferenceDocumentSync } = await import("./shadow-engineering-BMcBN-Of.js");
|
|
45123
45123
|
const config = {
|
|
45124
45124
|
issueId,
|
|
45125
45125
|
workspacePath,
|
|
@@ -45149,7 +45149,7 @@ const postShadowObserveRoute = HttpRouter.add("POST", "/api/shadow/:issueId/obse
|
|
|
45149
45149
|
if (!existsSync$1(workspacePath)) return jsonResponse({ error: "Workspace not found" }, { status: 404 });
|
|
45150
45150
|
const ghConfig = getGitHubConfig();
|
|
45151
45151
|
if (!ghConfig) return jsonResponse({ error: "GitHub not configured - Observer requires GitHub" }, { status: 400 });
|
|
45152
|
-
const { runObserverCycle } = await import("./shadow-engineering-
|
|
45152
|
+
const { runObserverCycle } = await import("./shadow-engineering-BMcBN-Of.js");
|
|
45153
45153
|
const firstRepo = ghConfig.repos[0];
|
|
45154
45154
|
const config = {
|
|
45155
45155
|
issueId,
|
|
@@ -46214,7 +46214,7 @@ async function cleanupConversationAttachments(name) {
|
|
|
46214
46214
|
* sessions that the lifecycle poller missed. */
|
|
46215
46215
|
async function cleanupOrphanedConversationAttachments() {
|
|
46216
46216
|
try {
|
|
46217
|
-
const { listConversations } = await import("./conversations-
|
|
46217
|
+
const { listConversations } = await import("./conversations-BbDPrz89.js");
|
|
46218
46218
|
const convNames = new Set(listConversations().map((c) => c.name));
|
|
46219
46219
|
const root = getConversationAttachmentsRoot();
|
|
46220
46220
|
await runInBatches((await readdir(root, { withFileTypes: true })).filter((entry) => entry.isDirectory() && !convNames.has(entry.name)).map((entry) => join(root, entry.name)), 10, (path) => rm(path, {
|
|
@@ -47080,7 +47080,7 @@ async function spawnConversationSession(tmuxSession, cwd, claudeSessionId, model
|
|
|
47080
47080
|
const codexApprovalPolicy = codexPermMode === "full-access" ? "never" : "on-request";
|
|
47081
47081
|
const codexSandboxMode = codexPermMode === "full-access" ? "danger-full-access" : codexPermMode === "read-only" ? "read-only" : "workspace-write";
|
|
47082
47082
|
const codexApprovalsReviewer = codexPermMode === "auto-review" ? "auto_review" : void 0;
|
|
47083
|
-
const { initCodexHome, extractThreadIdFromRollout } = await import("./codex-
|
|
47083
|
+
const { initCodexHome, extractThreadIdFromRollout } = await import("./codex-Bi1ITSOo.js");
|
|
47084
47084
|
initCodexHome(codexHome, {
|
|
47085
47085
|
trustedDir: cwd,
|
|
47086
47086
|
approvalPolicy: codexApprovalPolicy,
|
|
@@ -47149,7 +47149,7 @@ async function spawnConversationSession(tmuxSession, cwd, claudeSessionId, model
|
|
|
47149
47149
|
} catch {}
|
|
47150
47150
|
console.log(`[claude-invoke] purpose=conversation-session | model=${model || "default"} | source=conversations.ts:spawnConversationSession | session=${tmuxSession} | resume=${resume} | command="${runtimeCommand}"`);
|
|
47151
47151
|
try {
|
|
47152
|
-
const { preTrustDirectory } = await import("./workspace-manager-
|
|
47152
|
+
const { preTrustDirectory } = await import("./workspace-manager-BIfpzqdU.js");
|
|
47153
47153
|
preTrustDirectory(cwd);
|
|
47154
47154
|
} catch {}
|
|
47155
47155
|
try {
|
|
@@ -47166,7 +47166,7 @@ async function spawnConversationSession(tmuxSession, cwd, claudeSessionId, model
|
|
|
47166
47166
|
const codexHomeDir = codexFields.codexHome;
|
|
47167
47167
|
(async () => {
|
|
47168
47168
|
try {
|
|
47169
|
-
const { waitForCodexRollout, extractThreadIdFromRollout, writeThreadId } = await import("./codex-
|
|
47169
|
+
const { waitForCodexRollout, extractThreadIdFromRollout, writeThreadId } = await import("./codex-Bi1ITSOo.js");
|
|
47170
47170
|
const rollout = await waitForCodexRollout(codexHomeDir, 12e4);
|
|
47171
47171
|
if (rollout) {
|
|
47172
47172
|
const threadId = extractThreadIdFromRollout(rollout);
|
|
@@ -50197,7 +50197,7 @@ async function registerProjectFromPath(opts) {
|
|
|
50197
50197
|
registerProjectSync(key, projectConfig);
|
|
50198
50198
|
const seededContextLayer = ensureProjectLayer(fullPath);
|
|
50199
50199
|
try {
|
|
50200
|
-
const { preTrustDirectorySync } = await import("./workspace-manager-
|
|
50200
|
+
const { preTrustDirectorySync } = await import("./workspace-manager-BIfpzqdU.js");
|
|
50201
50201
|
preTrustDirectorySync(fullPath);
|
|
50202
50202
|
} catch {}
|
|
50203
50203
|
let hooksInstalled = 0;
|
|
@@ -50233,7 +50233,7 @@ init_pan_dir();
|
|
|
50233
50233
|
init_paths();
|
|
50234
50234
|
const execAsync$2 = promisify(exec);
|
|
50235
50235
|
async function getIssueDataService() {
|
|
50236
|
-
const { getSharedIssueService } = await import("./issue-service-singleton-
|
|
50236
|
+
const { getSharedIssueService } = await import("./issue-service-singleton-3g_CCY-1.js");
|
|
50237
50237
|
return getSharedIssueService();
|
|
50238
50238
|
}
|
|
50239
50239
|
/** Returns true if the path exists (any type). */
|
|
@@ -52233,7 +52233,7 @@ async function refreshMergeStateFromGitHub(issueId, repo, prNumber) {
|
|
|
52233
52233
|
let mergeState;
|
|
52234
52234
|
let isDraft;
|
|
52235
52235
|
let checksFailed;
|
|
52236
|
-
const { isGitHubAppConfigured, getPullRequestState } = await import("./github-app-
|
|
52236
|
+
const { isGitHubAppConfigured, getPullRequestState } = await import("./github-app-DIr70YLg.js");
|
|
52237
52237
|
if (isGitHubAppConfigured()) {
|
|
52238
52238
|
const prState = await Effect.runPromise(getPullRequestState(owner, repoName, prNumber));
|
|
52239
52239
|
mergeable = prState.mergeable === null ? "UNKNOWN" : prState.mergeable ? "MERGEABLE" : "CONFLICTING";
|
|
@@ -52382,8 +52382,8 @@ async function handlePullRequestPromise(payload) {
|
|
|
52382
52382
|
bumpIssuePrTabCacheGeneration(issueId);
|
|
52383
52383
|
const repo = payload.repository.full_name;
|
|
52384
52384
|
if (payload.action === "closed" && pr.merged === true) try {
|
|
52385
|
-
const { postMergeLifecycle } = await import("./merge-agent-
|
|
52386
|
-
const { resolveProjectFromIssueSync } = await import("./projects-
|
|
52385
|
+
const { postMergeLifecycle } = await import("./merge-agent-Bwm34MZ5.js");
|
|
52386
|
+
const { resolveProjectFromIssueSync } = await import("./projects-BqRMlDOv.js");
|
|
52387
52387
|
const project = resolveProjectFromIssueSync(issueId);
|
|
52388
52388
|
if (project) {
|
|
52389
52389
|
const branchName = pr.head.ref;
|
|
@@ -52948,7 +52948,7 @@ function getCheckpointWorker() {
|
|
|
52948
52948
|
return worker;
|
|
52949
52949
|
}
|
|
52950
52950
|
async function runInline(operation, payload) {
|
|
52951
|
-
const { claimTranscriptRange, commitTranscriptRange, releaseTranscriptRange, getTranscriptCheckpoint, listTranscriptCheckpoints } = await import("./checkpoints-
|
|
52951
|
+
const { claimTranscriptRange, commitTranscriptRange, releaseTranscriptRange, getTranscriptCheckpoint, listTranscriptCheckpoints } = await import("./checkpoints-Bu_M_Q9W.js");
|
|
52952
52952
|
switch (operation) {
|
|
52953
52953
|
case "claimTranscriptRange": return claimTranscriptRange(payload);
|
|
52954
52954
|
case "commitTranscriptRange": return commitTranscriptRange(payload);
|
|
@@ -54102,7 +54102,7 @@ function buildPendingTurn(input, fromOffset, toOffset, compressed) {
|
|
|
54102
54102
|
};
|
|
54103
54103
|
}
|
|
54104
54104
|
async function emitMemoryObservationCreated(observation, timestamp) {
|
|
54105
|
-
const { initEventStore } = await import("./event-store-
|
|
54105
|
+
const { initEventStore } = await import("./event-store-C02Gprug.js");
|
|
54106
54106
|
await (await initEventStore()).appendAsync({
|
|
54107
54107
|
type: "memory.observation_created",
|
|
54108
54108
|
timestamp,
|
|
@@ -57199,7 +57199,7 @@ async function getFlywheelConversationPayload() {
|
|
|
57199
57199
|
};
|
|
57200
57200
|
}
|
|
57201
57201
|
async function postFlywheelReportPayload() {
|
|
57202
|
-
const { flywheelReportCommand } = await import("./flywheel-
|
|
57202
|
+
const { flywheelReportCommand } = await import("./flywheel-DwQCoZQG.js");
|
|
57203
57203
|
await flywheelReportCommand({ cwd: process.cwd() });
|
|
57204
57204
|
return {
|
|
57205
57205
|
status: 200,
|
|
@@ -57357,11 +57357,11 @@ const getMergeBlockersRoute = HttpRouter.add("GET", "/api/flywheel/merge-blocker
|
|
|
57357
57357
|
async function defaultGetOrderedIssueIds() {
|
|
57358
57358
|
const status = await readCurrentFlywheelStatusForDashboard();
|
|
57359
57359
|
if (!status) return [];
|
|
57360
|
-
const { computeMergeQueue } = await import("./flywheel-merge-order-
|
|
57360
|
+
const { computeMergeQueue } = await import("./flywheel-merge-order-f1bi5XIf.js");
|
|
57361
57361
|
return (await Effect.runPromise(computeMergeQueue(status.activePipeline, process.cwd()).pipe(Effect.provide(layer)))).map((i) => i.issueId);
|
|
57362
57362
|
}
|
|
57363
57363
|
async function defaultMergeOne(issueId) {
|
|
57364
|
-
const { triggerMerge } = await import("./merge-ops-
|
|
57364
|
+
const { triggerMerge } = await import("./merge-ops-B7m-hBEZ.js");
|
|
57365
57365
|
const r = await triggerMerge(issueId);
|
|
57366
57366
|
return r.success ? { ok: true } : {
|
|
57367
57367
|
ok: false,
|
|
@@ -57381,7 +57381,7 @@ async function postFlywheelMergeNextPayload(payload, deps = {}) {
|
|
|
57381
57381
|
body: { error: "n must be a positive integer" }
|
|
57382
57382
|
};
|
|
57383
57383
|
const issueIds = (await (deps.getOrderedIssueIds ?? defaultGetOrderedIssueIds)()).slice(0, n);
|
|
57384
|
-
const { shipMergeBatch } = await import("./merge-batch-
|
|
57384
|
+
const { shipMergeBatch } = await import("./merge-batch-BpYXUaqJ.js");
|
|
57385
57385
|
return {
|
|
57386
57386
|
status: 200,
|
|
57387
57387
|
body: { outcomes: await shipMergeBatch(issueIds, { merge: deps.merge ?? defaultMergeOne }) }
|
|
@@ -57538,7 +57538,7 @@ const getFlywheelMergeQueueRoute = HttpRouter.add("GET", "/api/flywheel/merge-qu
|
|
|
57538
57538
|
return yield* Effect.promise(async () => {
|
|
57539
57539
|
const status = await readCurrentFlywheelStatusForDashboard();
|
|
57540
57540
|
if (!status) return jsonResponse([]);
|
|
57541
|
-
const { computeMergeQueue, resolveMergeQueuePrUrl } = await import("./flywheel-merge-order-
|
|
57541
|
+
const { computeMergeQueue, resolveMergeQueuePrUrl } = await import("./flywheel-merge-order-f1bi5XIf.js");
|
|
57542
57542
|
return jsonResponse(await Effect.runPromise(computeMergeQueue(status.activePipeline, process.cwd(), { getPrUrl: resolveMergeQueuePrUrl }).pipe(Effect.provide(layer))));
|
|
57543
57543
|
});
|
|
57544
57544
|
})));
|
|
@@ -57552,18 +57552,18 @@ function uatGenerationNameFromParam(param) {
|
|
|
57552
57552
|
return decoded.startsWith("uat/") ? decoded : `uat/${decoded}`;
|
|
57553
57553
|
}
|
|
57554
57554
|
const getUatGenerationsRoute = HttpRouter.add("GET", "/api/flywheel/uat-generations", httpHandler(Effect.gen(function* () {
|
|
57555
|
-
const { getUatGenerationsPayload } = yield* Effect.promise(() => import("./uat-train-
|
|
57555
|
+
const { getUatGenerationsPayload } = yield* Effect.promise(() => import("./uat-train-8T24rPzc.js"));
|
|
57556
57556
|
return jsonResponse(yield* Effect.promise(() => getUatGenerationsPayload()));
|
|
57557
57557
|
})));
|
|
57558
57558
|
const getUatCandidateRoute = HttpRouter.add("GET", "/api/flywheel/uat-candidate", httpHandler(Effect.gen(function* () {
|
|
57559
|
-
const { getUatCandidatePayload } = yield* Effect.promise(() => import("./uat-train-
|
|
57559
|
+
const { getUatCandidatePayload } = yield* Effect.promise(() => import("./uat-train-8T24rPzc.js"));
|
|
57560
57560
|
return jsonResponse(yield* Effect.promise(() => getUatCandidatePayload()));
|
|
57561
57561
|
})));
|
|
57562
57562
|
const postUatGenerationStackRoute = HttpRouter.add("POST", "/api/flywheel/uat-generations/:name/stack", httpHandler(Effect.gen(function* () {
|
|
57563
57563
|
const authError = rejectUnsafeDashboardMutationRequest(yield* HttpServerRequest.HttpServerRequest);
|
|
57564
57564
|
if (authError) return authError;
|
|
57565
57565
|
const name = uatGenerationNameFromParam((yield* HttpRouter.params)["name"] ?? "");
|
|
57566
|
-
const { postUatGenerationStackPayload } = yield* Effect.promise(() => import("./uat-train-
|
|
57566
|
+
const { postUatGenerationStackPayload } = yield* Effect.promise(() => import("./uat-train-8T24rPzc.js"));
|
|
57567
57567
|
const result = yield* Effect.promise(() => postUatGenerationStackPayload(name));
|
|
57568
57568
|
if (!result.ok) return jsonResponse({ error: result.error }, { status: result.status });
|
|
57569
57569
|
return jsonResponse({
|
|
@@ -57575,8 +57575,8 @@ const postUatGenerationPromoteRoute = HttpRouter.add("POST", "/api/flywheel/uat-
|
|
|
57575
57575
|
const authError = rejectUnsafeDashboardMutationRequest(yield* HttpServerRequest.HttpServerRequest);
|
|
57576
57576
|
if (authError) return authError;
|
|
57577
57577
|
const name = uatGenerationNameFromParam((yield* HttpRouter.params)["name"] ?? "");
|
|
57578
|
-
const { postUatGenerationPromotePayload } = yield* Effect.promise(() => import("./uat-train-
|
|
57579
|
-
const { firePostMergeLifecycle } = yield* Effect.promise(() => import("./specialists-
|
|
57578
|
+
const { postUatGenerationPromotePayload } = yield* Effect.promise(() => import("./uat-train-8T24rPzc.js"));
|
|
57579
|
+
const { firePostMergeLifecycle } = yield* Effect.promise(() => import("./specialists-B6f5-5nG.js"));
|
|
57580
57580
|
const result = yield* Effect.promise(() => postUatGenerationPromotePayload(name, firePostMergeLifecycle));
|
|
57581
57581
|
if (!result.success) return jsonResponse(result, { status: result.reason === "not-found" ? 404 : result.reason === "merge-failed" ? 500 : 409 });
|
|
57582
57582
|
return jsonResponse(result);
|
|
@@ -57589,7 +57589,7 @@ const postUatGenerationPromoteRoute = HttpRouter.add("POST", "/api/flywheel/uat-
|
|
|
57589
57589
|
const postFlywheelAssembleUatRoute = HttpRouter.add("POST", "/api/flywheel/assemble-uat", httpHandler(Effect.gen(function* () {
|
|
57590
57590
|
const authError = rejectUnsafeDashboardMutationRequest(yield* HttpServerRequest.HttpServerRequest);
|
|
57591
57591
|
if (authError) return authError;
|
|
57592
|
-
const { runUatTrainReconcile } = yield* Effect.promise(() => import("./uat-train-
|
|
57592
|
+
const { runUatTrainReconcile } = yield* Effect.promise(() => import("./uat-train-8T24rPzc.js"));
|
|
57593
57593
|
return jsonResponse(yield* Effect.promise(() => runUatTrainReconcile({ force: true })));
|
|
57594
57594
|
})));
|
|
57595
57595
|
const getFlywheelStateRoute = HttpRouter.add("GET", "/api/flywheel/state", httpHandler(Effect.gen(function* () {
|
|
@@ -58460,6 +58460,8 @@ function initSchema(db) {
|
|
|
58460
58460
|
review_notes TEXT,
|
|
58461
58461
|
test_notes TEXT,
|
|
58462
58462
|
merge_notes TEXT,
|
|
58463
|
+
release_status TEXT,
|
|
58464
|
+
release_notes TEXT,
|
|
58463
58465
|
updated_at TEXT NOT NULL,
|
|
58464
58466
|
ready_for_merge INTEGER NOT NULL DEFAULT 0,
|
|
58465
58467
|
auto_requeue_count INTEGER DEFAULT 0,
|
|
@@ -58843,6 +58845,43 @@ function initSchema(db) {
|
|
|
58843
58845
|
CREATE INDEX IF NOT EXISTS idx_merge_set_repos_issue_order
|
|
58844
58846
|
ON merge_set_repos(issue_id, merge_order, repo_key);
|
|
58845
58847
|
|
|
58848
|
+
-- ===== Release Sets (PAN-399: coordinated post-merge release state) =====
|
|
58849
|
+
CREATE TABLE IF NOT EXISTS release_sets (
|
|
58850
|
+
issue_id TEXT PRIMARY KEY,
|
|
58851
|
+
project_key TEXT NOT NULL,
|
|
58852
|
+
project_path TEXT NOT NULL,
|
|
58853
|
+
workspace_type TEXT NOT NULL,
|
|
58854
|
+
status TEXT NOT NULL DEFAULT 'pending',
|
|
58855
|
+
created_at TEXT NOT NULL,
|
|
58856
|
+
updated_at TEXT NOT NULL
|
|
58857
|
+
);
|
|
58858
|
+
|
|
58859
|
+
CREATE INDEX IF NOT EXISTS idx_release_sets_project
|
|
58860
|
+
ON release_sets(project_key, updated_at);
|
|
58861
|
+
|
|
58862
|
+
CREATE TABLE IF NOT EXISTS release_set_components (
|
|
58863
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
58864
|
+
issue_id TEXT NOT NULL,
|
|
58865
|
+
component_key TEXT NOT NULL,
|
|
58866
|
+
provider TEXT,
|
|
58867
|
+
trigger TEXT NOT NULL,
|
|
58868
|
+
release_order INTEGER NOT NULL DEFAULT 0,
|
|
58869
|
+
required INTEGER NOT NULL DEFAULT 1,
|
|
58870
|
+
status TEXT NOT NULL DEFAULT 'pending',
|
|
58871
|
+
health_status TEXT,
|
|
58872
|
+
version_status TEXT,
|
|
58873
|
+
smoke_status TEXT,
|
|
58874
|
+
rollback_status TEXT,
|
|
58875
|
+
notes TEXT,
|
|
58876
|
+
FOREIGN KEY (issue_id) REFERENCES release_sets(issue_id) ON DELETE CASCADE
|
|
58877
|
+
);
|
|
58878
|
+
|
|
58879
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_release_set_components_issue_component
|
|
58880
|
+
ON release_set_components(issue_id, component_key);
|
|
58881
|
+
|
|
58882
|
+
CREATE INDEX IF NOT EXISTS idx_release_set_components_issue_order
|
|
58883
|
+
ON release_set_components(issue_id, release_order, component_key);
|
|
58884
|
+
|
|
58846
58885
|
-- ===== Git Operations (PAN-653: persistent git event log) =====
|
|
58847
58886
|
CREATE TABLE IF NOT EXISTS git_operations (
|
|
58848
58887
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
@@ -58963,7 +59002,7 @@ function initSchema(db) {
|
|
|
58963
59002
|
CREATE INDEX IF NOT EXISTS idx_backlog_sequence_project_rank
|
|
58964
59003
|
ON backlog_sequence(project_key, rank);
|
|
58965
59004
|
`);
|
|
58966
|
-
db.pragma(`user_version =
|
|
59005
|
+
db.pragma(`user_version = 60`);
|
|
58967
59006
|
}
|
|
58968
59007
|
/**
|
|
58969
59008
|
* Run schema migrations if the database version is older than SCHEMA_VERSION.
|
|
@@ -58971,7 +59010,7 @@ function initSchema(db) {
|
|
|
58971
59010
|
*/
|
|
58972
59011
|
function runMigrations(db, dbPath) {
|
|
58973
59012
|
const currentVersion = db.pragma("user_version", { simple: true });
|
|
58974
|
-
if (currentVersion >=
|
|
59013
|
+
if (currentVersion >= 60) return;
|
|
58975
59014
|
if (currentVersion === 0) {
|
|
58976
59015
|
initSchema(db);
|
|
58977
59016
|
return;
|
|
@@ -59716,7 +59755,48 @@ function runMigrations(db, dbPath) {
|
|
|
59716
59755
|
db.exec(`ALTER TABLE agents ADD COLUMN last_yield_resume_at TEXT`);
|
|
59717
59756
|
} catch {}
|
|
59718
59757
|
}
|
|
59719
|
-
db.
|
|
59758
|
+
if (currentVersion < 60) db.exec(`
|
|
59759
|
+
CREATE TABLE IF NOT EXISTS release_sets (
|
|
59760
|
+
issue_id TEXT PRIMARY KEY,
|
|
59761
|
+
project_key TEXT NOT NULL,
|
|
59762
|
+
project_path TEXT NOT NULL,
|
|
59763
|
+
workspace_type TEXT NOT NULL,
|
|
59764
|
+
status TEXT NOT NULL DEFAULT 'pending',
|
|
59765
|
+
created_at TEXT NOT NULL,
|
|
59766
|
+
updated_at TEXT NOT NULL
|
|
59767
|
+
);
|
|
59768
|
+
CREATE INDEX IF NOT EXISTS idx_release_sets_project
|
|
59769
|
+
ON release_sets(project_key, updated_at);
|
|
59770
|
+
CREATE TABLE IF NOT EXISTS release_set_components (
|
|
59771
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
59772
|
+
issue_id TEXT NOT NULL,
|
|
59773
|
+
component_key TEXT NOT NULL,
|
|
59774
|
+
provider TEXT,
|
|
59775
|
+
trigger TEXT NOT NULL,
|
|
59776
|
+
release_order INTEGER NOT NULL DEFAULT 0,
|
|
59777
|
+
required INTEGER NOT NULL DEFAULT 1,
|
|
59778
|
+
status TEXT NOT NULL DEFAULT 'pending',
|
|
59779
|
+
health_status TEXT,
|
|
59780
|
+
version_status TEXT,
|
|
59781
|
+
smoke_status TEXT,
|
|
59782
|
+
rollback_status TEXT,
|
|
59783
|
+
notes TEXT,
|
|
59784
|
+
FOREIGN KEY (issue_id) REFERENCES release_sets(issue_id) ON DELETE CASCADE
|
|
59785
|
+
);
|
|
59786
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_release_set_components_issue_component
|
|
59787
|
+
ON release_set_components(issue_id, component_key);
|
|
59788
|
+
CREATE INDEX IF NOT EXISTS idx_release_set_components_issue_order
|
|
59789
|
+
ON release_set_components(issue_id, release_order, component_key);
|
|
59790
|
+
`);
|
|
59791
|
+
if (currentVersion < 60) {
|
|
59792
|
+
try {
|
|
59793
|
+
db.exec(`ALTER TABLE review_status ADD COLUMN release_status TEXT`);
|
|
59794
|
+
} catch {}
|
|
59795
|
+
try {
|
|
59796
|
+
db.exec(`ALTER TABLE review_status ADD COLUMN release_notes TEXT`);
|
|
59797
|
+
} catch {}
|
|
59798
|
+
}
|
|
59799
|
+
db.pragma(`user_version = 60`);
|
|
59720
59800
|
}
|
|
59721
59801
|
//#endregion
|
|
59722
59802
|
//#region ../../lib/database/index.ts
|
|
@@ -61098,7 +61178,7 @@ async function pollOnce(state) {
|
|
|
61098
61178
|
try {
|
|
61099
61179
|
const remoteState = await readFile(join(homedir$1(), ".overdeck", "agents", agentId, "remote-state.json"), "utf-8").then((text) => JSON.parse(text)).catch(() => null);
|
|
61100
61180
|
if (remoteState?.location === "remote" && remoteState?.vmName) {
|
|
61101
|
-
const { getRemoteAgentOutput } = await import("./remote-agents-
|
|
61181
|
+
const { getRemoteAgentOutput } = await import("./remote-agents-B4eWgwNd.js");
|
|
61102
61182
|
stdout = await getRemoteAgentOutput(agentId, remoteState.vmName, 50);
|
|
61103
61183
|
} else stdout = await Effect.runPromise(capturePane(agentId, 50));
|
|
61104
61184
|
} catch {
|
|
@@ -62282,7 +62362,7 @@ const RESTART_MARKER = join$1(homedir(), ".overdeck", "dashboard-restarting.json
|
|
|
62282
62362
|
* loads new content-hashed chunk filenames (no ERR_MODULE_NOT_FOUND after rebuild).
|
|
62283
62363
|
*/
|
|
62284
62364
|
async function defaultLifecycleRunner(pending) {
|
|
62285
|
-
const { postMergeLifecycle, notifyTldrDaemon } = await import("./merge-agent-
|
|
62365
|
+
const { postMergeLifecycle, notifyTldrDaemon } = await import("./merge-agent-Bwm34MZ5.js");
|
|
62286
62366
|
await postMergeLifecycle(pending.issueId, pending.projectPath, pending.sourceBranch, { skipDeploy: true });
|
|
62287
62367
|
if (pending.sourceBranch) await notifyTldrDaemon(pending.projectPath, pending.sourceBranch);
|
|
62288
62368
|
}
|
|
@@ -62603,7 +62683,7 @@ function failureReason(result) {
|
|
|
62603
62683
|
return result.error ?? result.message ?? `merge returned status ${result.statusCode ?? "unknown"}`;
|
|
62604
62684
|
}
|
|
62605
62685
|
async function defaultMergeIssue(issueId) {
|
|
62606
|
-
const { triggerMerge } = await import("./merge-ops-
|
|
62686
|
+
const { triggerMerge } = await import("./merge-ops-B7m-hBEZ.js");
|
|
62607
62687
|
return triggerMerge(issueId);
|
|
62608
62688
|
}
|
|
62609
62689
|
function defaultAnnounceFailure(issueId, reason) {
|
|
@@ -62815,14 +62895,14 @@ function createOverdeckDatabase(options = {}) {
|
|
|
62815
62895
|
try {
|
|
62816
62896
|
applyMigration(db, migrationPath);
|
|
62817
62897
|
const tables = userTableNames(db);
|
|
62818
|
-
if (tables.length !==
|
|
62898
|
+
if (tables.length !== 32) throw new Error(`Expected 32 overdeck tables, found ${tables.length}: ${tables.join(", ")}`);
|
|
62819
62899
|
assertEmptyTables(db, tables);
|
|
62820
62900
|
} finally {
|
|
62821
62901
|
db.close();
|
|
62822
62902
|
}
|
|
62823
62903
|
return {
|
|
62824
62904
|
dbPath,
|
|
62825
|
-
tableCount:
|
|
62905
|
+
tableCount: 32
|
|
62826
62906
|
};
|
|
62827
62907
|
}
|
|
62828
62908
|
//#endregion
|
|
@@ -62884,6 +62964,17 @@ startAgentOutputService();
|
|
|
62884
62964
|
console.log("[overdeck] AgentOutputService started");
|
|
62885
62965
|
startMergeBlockerReconcileService();
|
|
62886
62966
|
console.log("[overdeck] MergeBlockerReconcileService started");
|
|
62967
|
+
if (process.env.OVERDECK_MODE === "desktop") (async () => {
|
|
62968
|
+
try {
|
|
62969
|
+
const { provisionClaudeHooks } = await import("./claude-hooks-provision-D-jGXmu1.js");
|
|
62970
|
+
const result = await provisionClaudeHooks();
|
|
62971
|
+
if (!result.ok) console.warn(`[overdeck] Claude hook provisioning skipped: ${result.reason}`);
|
|
62972
|
+
else if (result.changed) console.log(`[overdeck] Claude hooks provisioned: ${result.binariesSynced} scripts, registered ${result.registered.length} hook(s)${result.pruned.length ? `, pruned ${result.pruned.length} stale` : ""}`);
|
|
62973
|
+
else console.log("[overdeck] Claude hooks already provisioned (no settings change)");
|
|
62974
|
+
} catch (err) {
|
|
62975
|
+
console.warn("[overdeck] Claude hook provisioning failed:", err instanceof Error ? err.message : String(err));
|
|
62976
|
+
}
|
|
62977
|
+
})();
|
|
62887
62978
|
setPipelineHandlerSync((event) => {
|
|
62888
62979
|
switch (event.type) {
|
|
62889
62980
|
case "status_changed":
|
|
@@ -63234,7 +63325,7 @@ reconcileStaleGitHubBlockers().then((n) => {
|
|
|
63234
63325
|
}
|
|
63235
63326
|
}).catch((err) => console.warn(`[overdeck] Startup blocker reconciliation failed: ${err.message}`));
|
|
63236
63327
|
try {
|
|
63237
|
-
const { resetProcessingToQueued } = await import("./merge-sync-
|
|
63328
|
+
const { resetProcessingToQueued } = await import("./merge-sync-CcLM2vwW.js");
|
|
63238
63329
|
const resetCount = resetProcessingToQueued();
|
|
63239
63330
|
if (resetCount > 0) {
|
|
63240
63331
|
console.log(`[overdeck] Reset ${resetCount} stuck merge queue entries to queued`);
|