@overdeck/desktop 0.45.6 → 0.45.8
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 +483 -0
- package/package.json +16 -4
- package/server/{acceptance-criteria-DYffaKI9.js → acceptance-criteria-l0DSvFFS.js} +2 -2
- package/server/{activity-logger-DO27GsPa.js → activity-logger-DvYvFhwZ.js} +1 -1
- package/server/{activity-logger-Dm95Ua07.js → activity-logger-pcbf-e30.js} +3 -2
- package/server/{advancing-selfheal-n8tAeFwE.js → advancing-selfheal-CMlGznKv.js} +11 -66
- package/server/{agent-gc-CIFaa2vJ.js → agent-gc-BtAzj8QN.js} +3 -3
- package/server/{agent-state-service-BqVDA9b8.js → agent-state-service-5ge9xxhx.js} +5 -5
- package/server/{agent-state-service-CLifyinO.js → agent-state-service-C1iUF9Ft.js} +1 -1
- package/server/agent-state-xk_G8t90.js +3 -0
- package/server/{agents-KaEsWZ8D.js → agents-BIggLvi_.js} +1 -1
- package/server/{agents-D_x5BSZM.js → agents-DHvsjsuP.js} +129 -61
- package/server/{archive-planning-CFxmeFKh.js → archive-planning-B4Qi02bk.js} +1 -1
- package/server/{archive-planning-DVUXlRBs.js → archive-planning-zTvWWHG_.js} +4 -4
- package/server/{artifact-index-jobs-ChUgzZah.js → artifact-index-jobs-BrByqVkB.js} +2 -2
- package/server/{auto-commit-2KiBFh-K.js → auto-commit-DoIPFoEs.js} +1 -1
- package/server/{backlog-auto-trigger-DoTEMZMl.js → backlog-auto-trigger-COm_R96V.js} +3 -3
- package/server/{bd-mutex-CE6P_MlD.js → bd-mutex-BItGvLQ8.js} +2 -2
- package/server/{bd-process-lock-Ch3WNHS9.js → bd-process-lock-CJkoG7hW.js} +2 -2
- package/server/{beads-B43pgBIy.js → beads-AmCXEv_E.js} +1 -1
- package/server/{beads-BugPvtWp.js → beads-DlZm-vrG.js} +5 -5
- package/server/{beads-query-CtqWakL6.js → beads-query-BrVNWoSL.js} +2 -2
- package/server/{beads-restore-BqTMSQi-.js → beads-restore-CMbDSB5R.js} +1 -1
- package/server/{behavior-vk1sixby.js → behavior-By-2Wipv.js} +3 -3
- package/server/{briefing-freshness-B3YxHQ-L.js → briefing-freshness-CXhZdnB8.js} +4 -4
- package/server/{checkpoint-manager-CdrwLsQh.js → checkpoint-manager-CPw51H2n.js} +1 -1
- package/server/{checkpoint-manager-Dg6cWZz3.js → checkpoint-manager-CfNpHOp4.js} +11 -2
- package/server/checkpoint-worker.js +1 -1
- package/server/{checkpoints-DDd-0doa.js → checkpoints-BbfH1EIy.js} +2 -2
- package/server/{checkpoints-dBCJr0dC.js → checkpoints-BjlBWOA8.js} +1 -1
- package/server/{claude-permissions-BpwIcIR7.js → claude-permissions-DrRAs_0F.js} +3 -3
- package/server/{claude-settings-overlay-DnraWcz6.js → claude-settings-overlay-BSeS7Ki3.js} +2 -2
- package/server/{claude-settings-overlay-xD_Vu420.js → claude-settings-overlay-CEWlIFL-.js} +1 -1
- package/server/cli-CJDWXE_Y.js +3 -0
- package/server/{cli-BmzYZZKi.js → cli-CvK9xuSS.js} +9 -9
- package/server/{cliproxy-DYWdJKZ1.js → cliproxy-BOcmOK6l.js} +1 -1
- package/server/{cliproxy-CE2GDY7x.js → cliproxy-J-_1iIXe.js} +2 -2
- package/server/{close-issue-CpJd4SOL.js → close-issue-BnpErnD1.js} +5 -5
- package/server/{closed-issue-reaper-QpcvCDeE.js → closed-issue-reaper-BLCQwTpF.js} +1 -1
- package/server/{closed-issue-reaper-DubXY9Zg.js → closed-issue-reaper-DRqK5k39.js} +10 -10
- package/server/{codex-j8aVgRou.js → codex-BUZjrnqH.js} +1 -1
- package/server/{codex-B3J1TXo7.js → codex-DcInrhok.js} +5 -5
- package/server/{compact-beads-CqhLqG-k.js → compact-beads-RFwdZFPA.js} +4 -4
- package/server/{compact-beads-BeilHCdj.js → compact-beads-omhUgj5b.js} +1 -1
- package/server/{config-DHU0j_pS.js → config-CzcWQ24p.js} +1 -1
- package/server/{config-DkEhJM0h.js → config-oWoKf5jO.js} +4 -4
- package/server/{config-yaml-DbdN9Fuq.js → config-yaml-DPAieL_G.js} +3 -2
- package/server/{conflict-gate-CgOtMo8i.js → conflict-gate-BhKvrPxn.js} +4 -4
- package/server/{conflict-gate-D00zFjeu.js → conflict-gate-JdFuhKuF.js} +1 -1
- package/server/{context-layers-BHEjT8Cn.js → context-layers-CTjQwcEQ.js} +3 -3
- package/server/{context-layers-0Lgq-SE_.js → context-layers-DxKsseHI.js} +2 -2
- package/server/{control-settings-CYv732Gs.js → control-settings-BMqUkXmR.js} +4 -4
- package/server/{conversation-compaction-Dbw03b-X.js → conversation-compaction-Ba5aZdrb.js} +1 -1
- package/server/{conversation-compaction-DKXvmX50.js → conversation-compaction-C5o_eKEm.js} +8 -8
- package/server/{conversation-service-BwKUeEvn.js → conversation-service-DvG8vZSV.js} +5 -5
- package/server/{conversation-service-kYYeRp9B.js → conversation-service-WKl-sw58.js} +1 -1
- package/server/{conversations-Dwr1jHrO.js → conversations-DL_BAWVk.js} +4 -4
- package/server/{conversations-D-uOnA8T.js → conversations-Dcx6LeIh.js} +1 -1
- package/server/{cost-DiSDkYe7.js → cost-C2CuA66z.js} +2 -2
- package/server/{cost-DNIyZH1X.js → cost-DaOG8sUB.js} +3 -3
- package/server/{cost-sync-CfXu-3TF.js → cost-sync-8lkDeL9g.js} +3 -3
- package/server/{dag-DZBowTd2.js → dag-jH8ZkewR.js} +3 -3
- package/server/{dangerous-git-ops-Pongxg2d.js → dangerous-git-ops-Dcw7PbYo.js} +1 -1
- package/server/dashboard-db-worker.js +6 -6
- package/server/{deacon-DT0BsVyE.js → deacon-Cv2RMfHs.js} +3 -3
- package/server/{deacon-f0yvsG5S.js → deacon-j3qSZ7--.js} +222 -110
- package/server/{deacon-nudge-log-Cmcch2Av.js → deacon-nudge-log-CJGA6aSQ.js} +1 -1
- package/server/deacon-swarm-D1iAUX-P.js +2 -0
- package/server/{deacon-swarm-BBGnhvD2.js → deacon-swarm-DadWNi5J.js} +88 -43
- package/server/deacon.js +8 -8
- package/server/{devcontainer-renderer-Cpz7XBj0.js → devcontainer-renderer-DUJYYRQB.js} +3 -3
- package/server/{dist-DypOkJv9.js → dist-BIC8spJ0.js} +1 -1
- package/server/dist-BUplB3Od.js +3 -0
- package/server/{docker-DARVx0OZ.js → docker-Q4bphryk.js} +2 -2
- package/server/{ensure-devcontainer-Dmdw4BxF.js → ensure-devcontainer-BCB6fHp9.js} +1 -1
- package/server/{ensure-devcontainer-BJssuBG6.js → ensure-devcontainer-XLL0vtgV.js} +4 -4
- package/server/{esm-shims-Crmvo9Ln.js → esm-shims-DiV9jHa_.js} +1 -1
- package/server/{event-store-BeEE8pW5.js → event-store-DIk9wvnS.js} +1 -1
- package/server/{event-store-DrfTJZ1_.js → event-store-DTJXZjCl.js} +4 -4
- package/server/events-BlzVUyTx.js +3 -0
- package/server/{events-BbClwoM-.js → events-DGWZzye2.js} +4 -4
- package/server/{factory-DVv9cpG5.js → factory-rG4T40su.js} +4 -4
- package/server/{feature-registry-population-C6eVdq4J.js → feature-registry-population-Dwyj9gEM.js} +4 -4
- package/server/{feature-registry-storage-ByBosRId.js → feature-registry-storage-CnGyNgAq.js} +2 -2
- package/server/{features-EZfSwuqq.js → features-CYY2_Eeh.js} +2 -2
- package/server/{feedback-target-DENaINE6.js → feedback-target-C4DaDSZ8.js} +1 -1
- package/server/{feedback-target-Dv4VnbQl.js → feedback-target-oE4-Esxl.js} +48 -17
- package/server/{feedback-writer-Dxg8qM8i.js → feedback-writer-DMaO0XXa.js} +4 -4
- package/server/{feedback-writer-BvHE1I-3.js → feedback-writer-thrdxYpK.js} +1 -1
- package/server/{flywheel-Akbd9VNM.js → flywheel-BqDdGvrQ.js} +1 -1
- package/server/{flywheel-B4KN9BmW.js → flywheel-ClMjGW_u.js} +11 -11
- package/server/{flywheel-ByZyAv3P.js → flywheel-DefHRzY4.js} +13 -13
- package/server/{flywheel-merge-order-DPFZbt-w.js → flywheel-merge-order-B6YDSElh.js} +1 -1
- package/server/{flywheel-merge-order-BYUPxqgx.js → flywheel-merge-order-CuDcqTRJ.js} +7 -7
- package/server/forge-BfP7OJwK.js +2 -0
- package/server/{forge-BnTExkbK.js → forge-BixzckB0.js} +2 -2
- package/server/{from-B2i_NgIH.js → from-D4xmArTA.js} +1 -1
- package/server/{fts-db-dnCj-PD3.js → fts-db-DPtxOAjp.js} +2 -2
- package/server/{fts-operations-CAAofsTQ.js → fts-operations-VrGjsT0w.js} +2 -2
- package/server/{git-utils-CB3gDSM-.js → git-utils-D_cax3fD.js} +2 -2
- package/server/{git-utils-Bk7sJZru.js → git-utils-RAmTwjFB.js} +1 -1
- package/server/{github-app-CIhMNI4C.js → github-app-B5PDHMyn.js} +1 -1
- package/server/{github-app-BIU8a93o.js → github-app-FMXgo3vK.js} +2 -2
- package/server/{github-client-DmZgsnYP.js → github-client-VRiB6N-4.js} +1 -1
- package/server/{github-client-zREpj5HA.js → github-client-yjbXaqpR.js} +2 -2
- package/server/{github-pr-lookup-CPri6JR1.js → github-pr-lookup-t8X8R0c0.js} +2 -2
- package/server/{harness-resolve-TzYAiXzZ.js → harness-resolve-DKeSVsJL.js} +3 -3
- package/server/{health-events-CDWk8Oz4.js → health-events-CD6q47ub.js} +1 -1
- package/server/{health-events-Dd0FuKrE.js → health-events-DaLX4-0a.js} +2 -2
- package/server/{hooks-C6HBXlVm.js → hooks-CmHFSj_Z.js} +2 -2
- package/server/{hooks-DRLzoFof.js → hooks-D-cbMUzQ.js} +1 -1
- package/server/{hume-Bb91r_2I.js → hume-DkVOs1Qi.js} +2 -2
- package/server/hume-x9voULey.js +3 -0
- package/server/{idle-stack-reaper-BPHnItVj.js → idle-stack-reaper-DBKQ9SKu.js} +3 -3
- package/server/{idle-stack-reaper-D5bwmuwX.js → idle-stack-reaper-DdnERp3G.js} +1 -1
- package/server/{infra-CCTzpcuJ.js → infra-CpKlYZA9.js} +3 -3
- package/server/{injection-D6L7D_w0.js → injection-CszhePD2.js} +7 -7
- package/server/{injection-CBrN8UxB.js → injection-DKzL2Axk.js} +1 -1
- package/server/{inspect-agent-CSYyFWqP.js → inspect-agent-BKKc0XnB.js} +9 -9
- package/server/inspect-agent-vm88mLYr.js +2 -0
- package/server/{internal-token-DWhBqgIk.js → internal-token-CQUx9YLc.js} +2 -2
- package/server/{internal-token-DCrCAG_M.js → internal-token-DrGdpLFo.js} +1 -1
- package/server/{io-DtAQ_2hp.js → io-Wy8YpFeP.js} +2 -2
- package/server/{issue-closed-0Zx72zXf.js → issue-closed-BO84g03t.js} +4 -4
- package/server/{issue-lifecycle-ZTt6kP_K.js → issue-lifecycle-DnhQgddB.js} +22 -22
- package/server/{issue-lifecycle-CJ7-D4XX.js → issue-lifecycle-nY4esZn8.js} +1 -1
- package/server/{issue-service-singleton-DNh4RRI7.js → issue-service-singleton-Bnqv1uaa.js} +1 -1
- package/server/{issue-service-singleton-DRE7S-Zg.js → issue-service-singleton-_AquSBTl.js} +8 -8
- package/server/{issues-CGc8Aaxm.js → issues-ChNcfHta.js} +2 -2
- package/server/{label-cleanup-CNsPlXy6.js → label-cleanup-bVXCGWBM.js} +3 -3
- package/server/{layers-CO_VLcSv.js → layers-vdvlpFki.js} +2 -2
- package/server/{lifecycle-B_NFvTj9.js → lifecycle-CGKm7doE.js} +7 -7
- package/server/{lifecycle-io-D0FftBLy.js → lifecycle-io-CdqPkCyk.js} +1 -1
- package/server/{lifecycle-io-WDGwa1vV.js → lifecycle-io-DSrv9xGh.js} +4 -4
- package/server/{linear-client-MvjflCXs.js → linear-client-BxKvL6U8.js} +1 -1
- package/server/{linear-client-CSgH24Ym.js → linear-client-E0HdXtWs.js} +2 -2
- package/server/memory-fts-worker.js +1 -1
- package/server/{merge-DltB-RGV.js → merge-D3wEbmUJ.js} +1 -1
- package/server/{merge-Ce9DHBXM.js → merge-UlAwCk80.js} +4 -4
- package/server/{merge-agent-Rv0bNQNU.js → merge-agent-BcgAYStl.js} +27 -27
- package/server/{merge-agent-DRXwKxmb.js → merge-agent-Dh8Y9PDO.js} +1 -1
- package/server/{merge-batch-LLp_cXUR.js → merge-batch-BwhGdlh4.js} +1 -1
- package/server/{merge-blockers-BqYUtLBd.js → merge-blockers-DwdQNsYD.js} +2 -2
- package/server/merge-ops-QdBiQ8XB.js +2 -0
- package/server/{merge-rebase-AiSEs4QB.js → merge-rebase-CH12_ufi.js} +2 -2
- package/server/{merge-set-CUY9msG9.js → merge-set-TRxJwR-w.js} +3 -3
- package/server/{merge-set-CSJoIpKB.js → merge-set-rXK3ehnB.js} +1 -1
- package/server/{merge-sync-CAjbJeTp.js → merge-sync-BKLKu9kz.js} +1 -1
- package/server/{merge-sync-CuyWzzZK.js → merge-sync-CaLRt2cB.js} +2 -2
- package/server/{merge-train-DndZCAiv.js → merge-train-DmxlYbEo.js} +3 -3
- package/server/{merge-train-deps-Bsy90Q7t.js → merge-train-deps-DBHsOWt9.js} +4 -4
- package/server/{merge-verification-Kvh4WViS.js → merge-verification-DA9rvqsE.js} +4 -4
- package/server/{multipart-parser-BWnfyoyz.js → multipart-parser-DtIEUW2B.js} +2 -2
- package/server/{no-resume-mode-CKy2bwZL.js → no-resume-mode-yrPEQ_pC.js} +1 -1
- package/server/{orphan-proposed-reconciler-Cg5_uVy1.js → orphan-proposed-reconciler-Db8tUhce.js} +10 -10
- package/server/{orphan-proposed-reconciler-CjUuBs6J.js → orphan-proposed-reconciler-mXV--tcB.js} +1 -1
- package/server/{pan-dir-Cn3NUnxU.js → pan-dir-BgBeeZDX.js} +3 -3
- package/server/{paths-Bo-kA9ta.js → paths-TE1GOZDr.js} +2 -2
- package/server/{pickup-DRn-XNXS.js → pickup-KLRUhThD.js} +1 -1
- package/server/{pipeline-notifier-BbGQtvKM.js → pipeline-notifier-aX_5EqQO.js} +2 -2
- package/server/{pipeline-notifier-DQsOtdjZ.js → pipeline-notifier-lwMa--Gz.js} +1 -1
- package/server/{projects-CKTA6Klk.js → projects-BNmVxnNt.js} +1 -1
- package/server/{prompts-CVncQg4P.js → prompts-CelsUdrx.js} +2 -2
- package/server/{providers-uPI9uU7Q.js → providers-4-xOzHQu.js} +7 -7
- package/server/{providers-CapuDkKX.js → providers-BOnRq5XK.js} +1 -1
- package/server/public/assets/{chunk-BO2N2NFS-CaAvtgHW.js → chunk-BO2N2NFS-jJsbVwoD.js} +4 -4
- package/server/public/assets/{diagram-OG6HWLK6-C4flU2X9.js → diagram-OG6HWLK6-Cp1aNi3v.js} +1 -1
- package/server/public/assets/{dist-DXAnG2e9.js → dist-B2-Oc7J1.js} +1 -1
- package/server/public/assets/{dist-DygIHsen.js → dist-Dbb8vdyE.js} +3 -3
- package/server/public/assets/{ganttDiagram-6RSMTGT7-BJY25etK.js → ganttDiagram-6RSMTGT7-rujV2mSn.js} +1 -1
- package/server/public/assets/{highlighted-body-OFNGDK62-DIEQLSG_.js → highlighted-body-OFNGDK62-Df3Exbbt.js} +1 -1
- package/server/public/assets/{index-BsKNi2y5.js → index-rQPa7qlV.js} +88 -88
- package/server/public/assets/{linear-CRa2o9KP.js → linear-Ctp3LAJ5.js} +1 -1
- package/server/public/assets/mermaid-GHXKKRXX-BnC2HrDq.js +1 -0
- package/server/public/assets/{pieDiagram-4H26LBE5-Cb6OrK_c.js → pieDiagram-4H26LBE5-K-m6VCum.js} +1 -1
- package/server/public/assets/{prod-DWpuiL-y.js → prod-jqZ3zqVg.js} +4 -4
- package/server/public/assets/{quadrantDiagram-W4KKPZXB-DhZzzcAO.js → quadrantDiagram-W4KKPZXB-DXcFax_1.js} +1 -1
- package/server/public/assets/{sankeyDiagram-5OEKKPKP-CVe6lE5A.js → sankeyDiagram-5OEKKPKP-DnD_J_rB.js} +1 -1
- package/server/public/assets/{xychartDiagram-2RQKCTM6-zukUz5pI.js → xychartDiagram-2RQKCTM6-Dx25iKVp.js} +1 -1
- package/server/public/index.html +1 -1
- package/server/{pull-requests-C3csHJsc.js → pull-requests-CH4iBFLl.js} +3 -3
- package/server/{pull-requests-MeAgb3Ax.js → pull-requests-DL_4klIb.js} +1 -1
- package/server/{rally-nalS21zz.js → rally-D0mKv2t8.js} +3 -3
- package/server/rally-DffLLIdl.js +3 -0
- package/server/{rally-api-DzQryQi8.js → rally-api-CcCdecF-.js} +1 -1
- package/server/{rally-api-DdY4ebu3.js → rally-api-DgAt6FbN.js} +2 -2
- package/server/{rally-client-9duSds1_.js → rally-client-DYjtgTOu.js} +4 -4
- package/server/{rally-client-B16-bZk9.js → rally-client-X0bEEN2B.js} +1 -1
- package/server/reap-terminal-sessions-BwJb2DLJ.js +3 -0
- package/server/{reap-terminal-sessions-C6rD1pDT.js → reap-terminal-sessions-CAmURC2h.js} +12 -62
- package/server/{rebuild-stack-D9qBmVcM.js → rebuild-stack-BLG3rlWa.js} +6 -6
- package/server/{rebuild-stack-DrWMHxoY.js → rebuild-stack-ByFCMqTK.js} +1 -1
- package/server/{reconstruct-cache--H2QBooC.js → reconstruct-cache-_tDZ2D72.js} +6 -6
- package/server/{record-fn7uPjsl.js → record-DjPikotp.js} +1 -1
- package/server/{remote-BEkHf2HO.js → remote-B1Trmr0N.js} +3 -3
- package/server/{remote-Dl6Hn0zz.js → remote-TN0cV8k-.js} +3 -3
- package/server/{remote-agents-DNdP4sew.js → remote-agents-CmbIKw7E.js} +5 -5
- package/server/{remote-agents-OB4zwVHz.js → remote-agents-DNuaAgU6.js} +1 -1
- package/server/{remote-completion-BINc1Y8c.js → remote-completion-Bklh6loJ.js} +12 -12
- package/server/resume-DnIsmIgC.js +3 -0
- package/server/review-agent-DgySDb-G.js +3 -0
- package/server/{review-agent-C-A6IgXc.js → review-agent-phzqNqIs.js} +599 -197
- package/server/{review-artifacts-DTTdAYsU.js → review-artifacts-BGc69epg.js} +7 -7
- package/server/{review-context-De14xPtc.js → review-context-CCq56O_Y.js} +7 -7
- package/server/{review-monitor-BNV3kjLq.js → review-monitor-BKG2ubt5.js} +2 -2
- package/server/{review-status-DWAsTqfJ.js → review-status-BQjqQXZG.js} +160 -52
- package/server/{review-status-mo3tyc8L.js → review-status-bBkqUj5i.js} +1 -1
- package/server/{review-status-enrichment-C6sr9wOI.js → review-status-enrichment-CGlcApSn.js} +3 -3
- package/server/{review-status-sync-D-p7TQit.js → review-status-sync-BWHnrq-k.js} +3 -3
- package/server/{review-status-sync-MvYGQLDD.js → review-status-sync-BxHBVH8s.js} +1 -1
- package/server/{review-verdict-feedback-BbIfN5Vg.js → review-verdict-feedback-cZh9Wi9G.js} +1 -1
- package/server/{review-verdict-feedback-Cfc-THvz.js → review-verdict-feedback-wqnikhMK.js} +16 -36
- package/server/{rollup-DgWlrSBc.js → rollup-BJE-Vc7H.js} +8 -8
- package/server/{rollup-CxR6GMTe.js → rollup-DBNy1yFB.js} +1 -1
- package/server/{scanner-6OmIn5XE.js → scanner-CUGpdp4i.js} +7 -7
- package/server/{sequence-io-CxiPMMKM.js → sequence-io-B2GmilSI.js} +4 -4
- package/server/{sequencer-agent--xPlSfR2.js → sequencer-agent-D8pW2aU_.js} +5 -5
- package/server/server.js +166 -162
- package/server/{service-CXje28KS.js → service-CILd-uOt.js} +46 -45
- package/server/session-fork-DDSDVoIK.js +99 -0
- package/server/{settings-ChvoXExM.js → settings-CBrei_kx.js} +2 -2
- package/server/{settings-DZq_bi-B.js → settings-D2wt4nku.js} +3 -3
- package/server/settings-vLoKyghx.js +2 -0
- package/server/{shadow-engineering-BHeyD5bL.js → shadow-engineering-Ba1D0QUN.js} +2 -2
- package/server/{shadow-state-p3YTxrJ5.js → shadow-state-BOaq8BrD.js} +1 -1
- package/server/{shadow-state-3L0eHQNE.js → shadow-state-DTC7AMHc.js} +2 -2
- package/server/{ship-log-B2EEH__n.js → ship-log-CMWH3H5-.js} +1 -1
- package/server/{smart-compaction-DRXK5_io.js → smart-compaction-Bgp_gwcA.js} +1 -1
- package/server/{smart-compaction-DMB4hv07.js → smart-compaction-CrP90OFE.js} +7 -7
- package/server/{spawn-planning-session-BZfVvIi3.js → spawn-planning-session-BmJWHSCu.js} +15 -15
- package/server/{spawn-planning-session-BBUzeHJQ.js → spawn-planning-session-D15KbPOy.js} +1 -1
- package/server/{specialist-completion-BAZHHbmp.js → specialist-completion-BiEXUHfD.js} +1 -1
- package/server/{specialist-context-DgdhI7rm.js → specialist-context-CwKkcXL9.js} +5 -5
- package/server/{specialist-handoff-logger-CH1nC8fq.js → specialist-handoff-logger-B_2VsWli.js} +2 -2
- package/server/{specialist-logs-DynFhFXg.js → specialist-logs-CvDxquV_.js} +3 -3
- package/server/{specialists-LJ9MZMCz.js → specialists-BCjcG4uE.js} +1 -1
- package/server/{specialists-BUKBHtmQ.js → specialists-BYi0k8CZ.js} +18 -18
- package/server/{specialists-e0Jmecc1.js → specialists-D07ybnam.js} +78 -85
- package/server/{specialists-CF02f9p2.js → specialists-F2uMO4QS.js} +1 -1
- package/server/specs-DeS98l_p.js +3 -0
- package/server/{src-CNLON0co.js → src-BswtmojL.js} +6 -6
- package/server/{src-DhJeCV1p.js → src-Dp0WHgDZ.js} +3 -3
- package/server/{src-AXK4mjue.js → src-fgbU-jJ-.js} +6 -3
- package/server/{stack-health-8jZH0Lgk.js → stack-health-BJVh1TCg.js} +3 -3
- package/server/{stack-health-CXYHwv5D.js → stack-health-Deel1mSW.js} +1 -1
- package/server/{state-home-XkLSsJCD.js → state-home-Bgj7i-C7.js} +8 -7
- package/server/{summary-fork-shfA2XOf.js → summary-fork-DedqguZb.js} +2 -2
- package/server/{summary-fork-BWa0ECGL.js → summary-fork-EjvOkEPl.js} +12 -91
- package/server/{supervisor-owMkHcx8.js → supervisor-0oXvLwyC.js} +3 -3
- package/server/supervisor-D1-XwmZ7.js +2 -0
- package/server/{swarm-readiness-BACUsKOx.js → swarm-readiness-OBgamRql.js} +3 -3
- package/server/{teardown-workspace-CYt_PBaq.js → teardown-workspace-5LCVbjfq.js} +14 -14
- package/server/{test-agent-queue-C1s6mB8C.js → test-agent-queue-qfsq6uaC.js} +6 -6
- package/server/{test-verdict-CmxX3KEf.js → test-verdict-BkubHtti.js} +1 -1
- package/server/{test-verdict-njEv9ZY2.js → test-verdict-D3Il7cBK.js} +1 -1
- package/server/{tldr-daemon-CEUflKr2.js → tldr-daemon-CJW_P4On.js} +2 -2
- package/server/{tldr-daemon-HIo0dwDB.js → tldr-daemon-CJqGsDFh.js} +1 -1
- package/server/tmux-CeDD14p1.js +3 -0
- package/server/{tmux-CBYZ5lKF.js → tmux-ePNhMIMU.js} +2 -2
- package/server/{token-CiS3w6Ma.js → token-_qujO3JZ.js} +1 -1
- package/server/{tracker-config-CVCoeaaL.js → tracker-config-C3hiPVAM.js} +2 -2
- package/server/{tracker-config-Bx50plWp.js → tracker-config-Drt_tx4D.js} +1 -1
- package/server/{tracker-utils-C2Lg4RoB.js → tracker-utils-D6B8scEw.js} +1 -1
- package/server/{tracker-utils-mI4d-vh8.js → tracker-utils-bpWs7Xyx.js} +2 -2
- package/server/{traefik-connect-D21-YEyX.js → traefik-connect-5EP1WS_Z.js} +1 -1
- package/server/{tunnel-BK4PVyb0.js → tunnel-3Ve8BS4H.js} +3 -3
- package/server/{tunnel-CcHkuRIS.js → tunnel-AporWhoi.js} +1 -1
- package/server/{types-DoPMvws2.js → types-B5u3NxMl.js} +1 -1
- package/server/{uat-train-BLFPxqLx.js → uat-train-C3hWXtip.js} +1 -1
- package/server/{uat-train-CQ_E-2ei.js → uat-train-CtNGgXxj.js} +27 -27
- package/server/{validation-Dab3bnSN.js → validation-BmUB-26g.js} +4 -4
- package/server/{validation-1QnjDMc0.js → validation-CbqP_dze.js} +1 -1
- package/server/{verification-runner-BO8TgZWA.js → verification-runner-BPAhPWR7.js} +11 -11
- package/server/{verification-runner-UhAAqOio.js → verification-runner-DuZRHjPU.js} +1 -1
- package/server/{vtt-parser-D-q5-8il.js → vtt-parser-CKc-smWM.js} +1 -1
- package/server/{work-agent-prompt-D_7T1xw5.js → work-agent-prompt-DCdHsm-V.js} +11 -11
- package/server/workflows-Cz8OtiB4.js +2 -0
- package/server/{workflows-CB5SWd0B.js → workflows-H-COJ84X.js} +14 -14
- package/server/{workspace-C4Avf_Tp.js → workspace-4ZufqeMe.js} +3 -3
- package/server/{workspace--XWYPbn1.js → workspace-DYv9kBg6.js} +1 -1
- package/server/{workspace-config-BwJB-bLH.js → workspace-config-DA8U97k9.js} +1 -1
- package/server/{workspace-manager-_6zbrhNF.js → workspace-manager-B3PqQQSM.js} +1 -1
- package/server/{workspace-manager-BE3OznLY.js → workspace-manager-CEWK-OXd.js} +12 -12
- package/server/{workspace-metadata-BCgODi1j.js → workspace-metadata-1eu1RvAT.js} +2 -2
- package/server/{workspace-metadata-wKPgY8PN.js → workspace-metadata-C0I-nIDL.js} +1 -1
- package/server/{workspaces-DpMiZ9BP.js → workspaces-CRU9_vRn.js} +154 -106
- package/server/agent-state-DTZCqWx5.js +0 -3
- package/server/cli-wyiCmp7b.js +0 -3
- package/server/deacon-swarm-jDiQ0kKk.js +0 -2
- package/server/dist-CnkaBMG-.js +0 -3
- package/server/forge-D2QLGWK9.js +0 -2
- package/server/hume-sCsuupWb.js +0 -3
- package/server/inspect-agent-DnspoIls.js +0 -2
- package/server/merge-ops-B6xc_Irj.js +0 -2
- package/server/public/assets/mermaid-GHXKKRXX-uIkd-n0c.js +0 -1
- package/server/rally-BJiyvz3w.js +0 -3
- package/server/reap-terminal-sessions-mW7SPDtP.js +0 -2
- package/server/resume-Pur3Z2e8.js +0 -3
- package/server/review-agent-BRSSFv7e.js +0 -3
- package/server/settings-D0XXIUQ0.js +0 -2
- package/server/specs-COn3zZ2Q.js +0 -3
- package/server/supervisor-DwGIhpXk.js +0 -2
- package/server/tmux-DNmHGMEv.js +0 -3
- package/server/workflows-Plo_VxeO.js +0 -2
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { Br as getOverdeckHome, Dt as getProjectConfigFromWorkspacePath, Ft as resolveProjectForIssue, Gn as resolveProjectFromIssueSync, Nn as init_projects, Or as OVERDECK_HOME, Ot as init_record, Pt as readRecordContinueViewSync, Vr as init_paths, vr as init_errors, yr as AGENTS_DIR } from "./config-yaml-
|
|
2
|
-
import { a as init_activity_logger, n as emitActivityEntrySync } from "./activity-logger-
|
|
3
|
-
import { D as sql, E as like, S as gte, _ as integer, a as EventBus, b as and, f as init_infra, g as real, h as text, i as DbLive, m as sqliteTable, n as CostArchiveLive, o as EventBusLive, p as init_sqlite_core, r as Db, t as CostArchive, v as init_drizzle_orm, x as eq, y as desc } from "./infra-
|
|
4
|
-
import { L as sessionExists, R as sessionExistsSync, w as killSession, x as init_tmux } from "./tmux-
|
|
5
|
-
import { c as init_review_status, u as loadReviewStatuses, y as setReviewStatusSync } from "./review-status-
|
|
6
|
-
import { n as init_issues, t as IssueId } from "./issues-
|
|
7
|
-
import { a as getAllBudgetsSync, i as deleteBudgetSync, n as checkBudgetSync, r as createBudgetSync, s as init_cost } from "./cost-
|
|
8
|
-
import { An as getAgentDir, D as init_context_overflow, Jn as saveAgentStateSync, Mn as getAgentState, Pn as getAgentStateSync, Q as listRunningAgentsSync, U as spawnAgent, _t as init_config, br as parseOhmypiSessionCostResultSync, gr as saveAgentRuntimeState, gt as getHealthThresholdsMs, k as isContextOverflowTail, mr as getAgentRuntimeStateSync, q as stopAgentSync, t as init_agents, yr as init_ohmypi_parser, yt as loadCloisterConfigSync } from "./agents-
|
|
9
|
-
import { i as parseCodexSessionSync, n as init_codex_parser, r as parseCodexSessionCostEventsSync } from "./behavior-
|
|
10
|
-
import { _ as init_tier_metrics, c as getDailyTrendsSync, d as init_cost_sync, h as deriveTieredAgentCostRole, t as getAgentDailyCostSync } from "./cost-sync-
|
|
11
|
-
import { c as requireModelOverrideSync, o as init_model_validation } from "./state-home-
|
|
12
|
-
import { _ as setDeaconGloballyPaused, c as isCloisterSpawnsPausedSync, g as setCloisterSpawnsPausedSync, s as init_control_settings, x as setFlywheelGloballyPaused } from "./control-settings-
|
|
13
|
-
import { n as checkHookSync, p as init_hooks } from "./hooks-
|
|
14
|
-
import {
|
|
15
|
-
import "./
|
|
16
|
-
import
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import { n as
|
|
22
|
-
import {
|
|
1
|
+
import { Br as getOverdeckHome, Dt as getProjectConfigFromWorkspacePath, Ft as resolveProjectForIssue, Gn as resolveProjectFromIssueSync, Nn as init_projects, Or as OVERDECK_HOME, Ot as init_record, Pt as readRecordContinueViewSync, Vr as init_paths, vr as init_errors, yr as AGENTS_DIR } from "./config-yaml-DPAieL_G.js";
|
|
2
|
+
import { a as init_activity_logger, n as emitActivityEntrySync } from "./activity-logger-pcbf-e30.js";
|
|
3
|
+
import { D as sql, E as like, S as gte, _ as integer, a as EventBus, b as and, f as init_infra, g as real, h as text, i as DbLive, m as sqliteTable, n as CostArchiveLive, o as EventBusLive, p as init_sqlite_core, r as Db, t as CostArchive, v as init_drizzle_orm, x as eq, y as desc } from "./infra-CpKlYZA9.js";
|
|
4
|
+
import { L as sessionExists, R as sessionExistsSync, w as killSession, x as init_tmux } from "./tmux-ePNhMIMU.js";
|
|
5
|
+
import { c as init_review_status, u as loadReviewStatuses, y as setReviewStatusSync } from "./review-status-BQjqQXZG.js";
|
|
6
|
+
import { n as init_issues, t as IssueId } from "./issues-ChNcfHta.js";
|
|
7
|
+
import { a as getAllBudgetsSync, i as deleteBudgetSync, n as checkBudgetSync, r as createBudgetSync, s as init_cost } from "./cost-C2CuA66z.js";
|
|
8
|
+
import { An as getAgentDir, D as init_context_overflow, Jn as saveAgentStateSync, Mn as getAgentState, Pn as getAgentStateSync, Q as listRunningAgentsSync, U as spawnAgent, _t as init_config, br as parseOhmypiSessionCostResultSync, gr as saveAgentRuntimeState, gt as getHealthThresholdsMs, k as isContextOverflowTail, mr as getAgentRuntimeStateSync, q as stopAgentSync, t as init_agents, yr as init_ohmypi_parser, yt as loadCloisterConfigSync } from "./agents-DHvsjsuP.js";
|
|
9
|
+
import { i as parseCodexSessionSync, n as init_codex_parser, r as parseCodexSessionCostEventsSync } from "./behavior-By-2Wipv.js";
|
|
10
|
+
import { _ as init_tier_metrics, c as getDailyTrendsSync, d as init_cost_sync, h as deriveTieredAgentCostRole, t as getAgentDailyCostSync } from "./cost-sync-8lkDeL9g.js";
|
|
11
|
+
import { c as requireModelOverrideSync, o as init_model_validation } from "./state-home-Bgj7i-C7.js";
|
|
12
|
+
import { _ as setDeaconGloballyPaused, c as isCloisterSpawnsPausedSync, g as setCloisterSpawnsPausedSync, s as init_control_settings, x as setFlywheelGloballyPaused } from "./control-settings-BMqUkXmR.js";
|
|
13
|
+
import { n as checkHookSync, p as init_hooks } from "./hooks-CmHFSj_Z.js";
|
|
14
|
+
import { r as isRoleTerminal, t as init_reap_terminal_sessions } from "./reap-terminal-sessions-CAmURC2h.js";
|
|
15
|
+
import { C as getLastPatrolResult, D as isDeaconRunning, Lt as getRuntimeForAgent, N as runPatrol, R as startDeacon, S as getDeaconStatus, n as assessDeaconPatrolFreshness, x as getDeaconLogs, z as stopDeacon } from "./deacon-j3qSZ7--.js";
|
|
16
|
+
import "./flywheel-ClMjGW_u.js";
|
|
17
|
+
import { n as renderPrompt, t as init_prompts } from "./prompts-CelsUdrx.js";
|
|
18
|
+
import { r as writeHealthEvent } from "./health-events-DaLX4-0a.js";
|
|
19
|
+
import { O as init_specialists, T as getTmuxSessionName } from "./specialists-BYi0k8CZ.js";
|
|
20
|
+
import { t as withBdMutex } from "./bd-mutex-BItGvLQ8.js";
|
|
21
|
+
import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-BO84g03t.js";
|
|
22
|
+
import { n as shouldSkipDispatchAsMerged, t as init_merge_verification } from "./merge-verification-DA9rvqsE.js";
|
|
23
23
|
import { Context, Data, Effect, Layer, Schema } from "effect";
|
|
24
24
|
import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync, renameSync, statSync, unlinkSync, writeFileSync } from "fs";
|
|
25
25
|
import { dirname, join } from "path";
|
|
@@ -2037,6 +2037,7 @@ function checkAndRotateIfNeeded(specialistName, workingDir) {
|
|
|
2037
2037
|
init_config();
|
|
2038
2038
|
init_agents();
|
|
2039
2039
|
init_paths();
|
|
2040
|
+
init_reap_terminal_sessions();
|
|
2040
2041
|
init_tmux();
|
|
2041
2042
|
init_issue_closed();
|
|
2042
2043
|
init_merge_verification();
|
|
@@ -2193,7 +2194,7 @@ async function onIssueStateChangePromise(issueId, newState) {
|
|
|
2193
2194
|
});
|
|
2194
2195
|
return;
|
|
2195
2196
|
}
|
|
2196
|
-
const { getReviewStatusSync } = await import("./review-status-
|
|
2197
|
+
const { getReviewStatusSync } = await import("./review-status-bBkqUj5i.js");
|
|
2197
2198
|
if (getReviewStatusSync(normalizedIssueId)?.mergeStatus === "merged") {
|
|
2198
2199
|
const message = `${normalizedIssueId}: skipping ${role} dispatch — merge already landed (merge_status='merged' is terminal)`;
|
|
2199
2200
|
console.log(`[cloister] ${message}`);
|
|
@@ -2260,7 +2261,7 @@ async function onIssueStateChangePromise(issueId, newState) {
|
|
|
2260
2261
|
return;
|
|
2261
2262
|
}
|
|
2262
2263
|
const branch = `feature/${normalizedIssueId.toLowerCase()}`;
|
|
2263
|
-
const { spawnReviewRoleForIssue } = await import("./review-agent-
|
|
2264
|
+
const { spawnReviewRoleForIssue } = await import("./review-agent-DgySDb-G.js");
|
|
2264
2265
|
const result = await Effect.runPromise(spawnReviewRoleForIssue({
|
|
2265
2266
|
issueId: normalizedIssueId,
|
|
2266
2267
|
workspace,
|
|
@@ -2278,7 +2279,7 @@ async function onIssueStateChangePromise(issueId, newState) {
|
|
|
2278
2279
|
}
|
|
2279
2280
|
if (role === "test") {
|
|
2280
2281
|
const branch = `feature/${normalizedIssueId.toLowerCase()}`;
|
|
2281
|
-
const { dispatchTestAgentAndNotify } = await import("./test-agent-queue-
|
|
2282
|
+
const { dispatchTestAgentAndNotify } = await import("./test-agent-queue-qfsq6uaC.js");
|
|
2282
2283
|
await Effect.runPromise(dispatchTestAgentAndNotify(normalizedIssueId, workspace ?? void 0, branch));
|
|
2283
2284
|
const message = `${normalizedIssueId}: test role dispatched from lifecycle state '${newState}'`;
|
|
2284
2285
|
console.log(`[cloister] ${message}`);
|
|
@@ -2290,7 +2291,7 @@ async function onIssueStateChangePromise(issueId, newState) {
|
|
|
2290
2291
|
});
|
|
2291
2292
|
return;
|
|
2292
2293
|
}
|
|
2293
|
-
const { spawnRun } = await import("./agents-
|
|
2294
|
+
const { spawnRun } = await import("./agents-BIggLvi_.js");
|
|
2294
2295
|
const message = `${normalizedIssueId}: ${role} role started from lifecycle state '${newState}' as ${(await spawnRun(normalizedIssueId, role, { prompt: buildReactiveRolePrompt(normalizedIssueId, newState, role) })).id}`;
|
|
2295
2296
|
console.log(`[cloister] ${message}`);
|
|
2296
2297
|
emitActivityEntrySync({
|
|
@@ -2368,27 +2369,27 @@ async function handleCloisterDomainEventPromise(event) {
|
|
|
2368
2369
|
if (event.type === "agent.stopped") {
|
|
2369
2370
|
const agentId = event.payload?.agentId;
|
|
2370
2371
|
if (agentId) {
|
|
2371
|
-
const { handleAgentStoppedEvent, handleAgentStoppedForOrphanReviewerSessions } = await import("./deacon-
|
|
2372
|
-
const { handleAgentLifecycleEventForIdleStack } = await import("./idle-stack-reaper-
|
|
2372
|
+
const { handleAgentStoppedEvent, handleAgentStoppedForOrphanReviewerSessions } = await import("./deacon-Cv2RMfHs.js");
|
|
2373
|
+
const { handleAgentLifecycleEventForIdleStack } = await import("./idle-stack-reaper-DdnERp3G.js");
|
|
2373
2374
|
handleAgentLifecycleEventForIdleStack(agentId);
|
|
2374
2375
|
const slotMatch = /^agent-(.+)-slot-\d+$/.exec(agentId);
|
|
2375
2376
|
await Promise.all([
|
|
2376
2377
|
handleAgentStoppedEvent(agentId),
|
|
2377
2378
|
handleAgentStoppedForOrphanReviewerSessions(agentId),
|
|
2378
|
-
slotMatch ? (await import("./deacon-swarm-
|
|
2379
|
+
slotMatch ? (await import("./deacon-swarm-D1iAUX-P.js")).coordinateSwarmSlots({ issueId: slotMatch[1].toUpperCase() }) : Promise.resolve([])
|
|
2379
2380
|
]);
|
|
2380
2381
|
}
|
|
2381
2382
|
return;
|
|
2382
2383
|
}
|
|
2383
2384
|
if (event.type === "agent.started") {
|
|
2384
2385
|
const agentId = event.payload?.agentId;
|
|
2385
|
-
if (agentId) (await import("./idle-stack-reaper-
|
|
2386
|
+
if (agentId) (await import("./idle-stack-reaper-DdnERp3G.js")).handleAgentLifecycleEventForIdleStack(agentId);
|
|
2386
2387
|
return;
|
|
2387
2388
|
}
|
|
2388
2389
|
if (event.type === "agent.heartbeat_dead") {
|
|
2389
2390
|
const agentId = event.payload?.agentId;
|
|
2390
2391
|
if (agentId) {
|
|
2391
|
-
const { handleAgentHeartbeatDeadEvent } = await import("./deacon-
|
|
2392
|
+
const { handleAgentHeartbeatDeadEvent } = await import("./deacon-Cv2RMfHs.js");
|
|
2392
2393
|
await handleAgentHeartbeatDeadEvent(agentId, "event");
|
|
2393
2394
|
}
|
|
2394
2395
|
return;
|
|
@@ -2397,7 +2398,7 @@ async function handleCloisterDomainEventPromise(event) {
|
|
|
2397
2398
|
const payload = event.payload;
|
|
2398
2399
|
const issueId = payload?.issueId;
|
|
2399
2400
|
if (issueId) {
|
|
2400
|
-
const { handleReviewCoordinatorDied } = await import("./deacon-
|
|
2401
|
+
const { handleReviewCoordinatorDied } = await import("./deacon-Cv2RMfHs.js");
|
|
2401
2402
|
await handleReviewCoordinatorDied(issueId, payload?.sessionName ?? "", payload?.reason ?? "");
|
|
2402
2403
|
}
|
|
2403
2404
|
return;
|
|
@@ -2405,7 +2406,7 @@ async function handleCloisterDomainEventPromise(event) {
|
|
|
2405
2406
|
if (event.type === "work.completed") {
|
|
2406
2407
|
const issueId = event.payload?.issueId;
|
|
2407
2408
|
if (issueId) {
|
|
2408
|
-
const { handleWorkCompleted } = await import("./deacon-
|
|
2409
|
+
const { handleWorkCompleted } = await import("./deacon-Cv2RMfHs.js");
|
|
2409
2410
|
await handleWorkCompleted(issueId);
|
|
2410
2411
|
}
|
|
2411
2412
|
}
|
|
@@ -2416,12 +2417,12 @@ async function handleCloisterDomainEventPromise(event) {
|
|
|
2416
2417
|
const status = payload?.status?.toLowerCase();
|
|
2417
2418
|
if (issueId) {
|
|
2418
2419
|
if (canonicalStatus === "closed" || status === "closed") {
|
|
2419
|
-
const { handleIssueStatusChangedClosed } = await import("./closed-issue-reaper-
|
|
2420
|
+
const { handleIssueStatusChangedClosed } = await import("./closed-issue-reaper-BLCQwTpF.js");
|
|
2420
2421
|
await handleIssueStatusChangedClosed(issueId);
|
|
2421
2422
|
return;
|
|
2422
2423
|
}
|
|
2423
2424
|
if (canonicalStatus === "todo" || status === "planned" || status === "todo") {
|
|
2424
|
-
const { handleOrphanProposedSpec } = await import("./orphan-proposed-reconciler-
|
|
2425
|
+
const { handleOrphanProposedSpec } = await import("./orphan-proposed-reconciler-mXV--tcB.js");
|
|
2425
2426
|
await handleOrphanProposedSpec(issueId);
|
|
2426
2427
|
}
|
|
2427
2428
|
}
|
|
@@ -2557,7 +2558,7 @@ var CloisterService = class {
|
|
|
2557
2558
|
let clearedSpecialistCount = 0;
|
|
2558
2559
|
try {
|
|
2559
2560
|
if (existsSync(AGENTS_DIR)) {
|
|
2560
|
-
const { isRunning: isSpecialistRunning } = await import("./specialists-
|
|
2561
|
+
const { isRunning: isSpecialistRunning } = await import("./specialists-F2uMO4QS.js");
|
|
2561
2562
|
const entries = readdirSync(AGENTS_DIR, { withFileTypes: true });
|
|
2562
2563
|
for (const entry of entries) {
|
|
2563
2564
|
if (!entry.isDirectory()) continue;
|
|
@@ -2592,8 +2593,8 @@ var CloisterService = class {
|
|
|
2592
2593
|
}
|
|
2593
2594
|
try {
|
|
2594
2595
|
const reviewStatuses = loadReviewStatuses();
|
|
2595
|
-
const { resolveProjectFromIssueSync } = await import("./projects-
|
|
2596
|
-
const { getTmuxSessionName, getAllProjectSpecialistStatuses } = await import("./specialists-
|
|
2596
|
+
const { resolveProjectFromIssueSync } = await import("./projects-BNmVxnNt.js");
|
|
2597
|
+
const { getTmuxSessionName, getAllProjectSpecialistStatuses } = await import("./specialists-F2uMO4QS.js");
|
|
2597
2598
|
const activeReviewIssues = /* @__PURE__ */ new Set();
|
|
2598
2599
|
try {
|
|
2599
2600
|
const projSpecs = await getAllProjectSpecialistStatuses();
|
|
@@ -2604,7 +2605,7 @@ var CloisterService = class {
|
|
|
2604
2605
|
}
|
|
2605
2606
|
const globalRs = getAgentRuntimeStateSync(getTmuxSessionName("review-agent"));
|
|
2606
2607
|
if (globalRs?.state === "active" && globalRs.currentIssue) activeReviewIssues.add(globalRs.currentIssue.toUpperCase());
|
|
2607
|
-
const { listRunningAgents } = await import("./agents-
|
|
2608
|
+
const { listRunningAgents } = await import("./agents-BIggLvi_.js");
|
|
2608
2609
|
const agents = await Effect.runPromise(listRunningAgents());
|
|
2609
2610
|
for (const agent of agents) {
|
|
2610
2611
|
if (agent.status === "stopped" || agent.status === "error") continue;
|
|
@@ -2647,7 +2648,7 @@ var CloisterService = class {
|
|
|
2647
2648
|
continue;
|
|
2648
2649
|
}
|
|
2649
2650
|
const branch = `feature/${issueId.toLowerCase()}`;
|
|
2650
|
-
const { spawnReviewRoleForIssue } = await import("./review-agent-
|
|
2651
|
+
const { spawnReviewRoleForIssue } = await import("./review-agent-DgySDb-G.js");
|
|
2651
2652
|
const dispatchResult = await Effect.runPromise(spawnReviewRoleForIssue({
|
|
2652
2653
|
issueId,
|
|
2653
2654
|
workspace,
|
|
@@ -2735,7 +2736,7 @@ var CloisterService = class {
|
|
|
2735
2736
|
console.log(" ✓ Cloister event store provider installed");
|
|
2736
2737
|
return;
|
|
2737
2738
|
}
|
|
2738
|
-
const { initEventStore } = await import("./event-store-
|
|
2739
|
+
const { initEventStore } = await import("./event-store-DIk9wvnS.js");
|
|
2739
2740
|
const store = await initEventStore();
|
|
2740
2741
|
this.eventStore = store;
|
|
2741
2742
|
this.domainEventUnsubscribe = store.subscribe((event) => {
|
|
@@ -2946,7 +2947,7 @@ var CloisterService = class {
|
|
|
2946
2947
|
if (retryCount === Infinity) this.processedCompletions.delete(dir.name);
|
|
2947
2948
|
else if (retryCount >= 3) continue;
|
|
2948
2949
|
const issueId = dir.name.replace("agent-", "").toUpperCase();
|
|
2949
|
-
const { getReviewStatusSync } = await import("./review-status-
|
|
2950
|
+
const { getReviewStatusSync } = await import("./review-status-bBkqUj5i.js");
|
|
2950
2951
|
const existingReview = getReviewStatusSync(issueId);
|
|
2951
2952
|
if (existingReview && ["reviewing", "passed"].includes(existingReview.reviewStatus || "")) {
|
|
2952
2953
|
console.log(`🔔 Cloister: Completion marker for ${issueId} — review already ${existingReview.reviewStatus}, marking processed`);
|
|
@@ -3055,7 +3056,7 @@ var CloisterService = class {
|
|
|
3055
3056
|
ineffective
|
|
3056
3057
|
});
|
|
3057
3058
|
if (ineffective >= 4) {
|
|
3058
|
-
const { setAgentPausedSync } = await import("./agent-state-
|
|
3059
|
+
const { setAgentPausedSync } = await import("./agent-state-xk_G8t90.js");
|
|
3059
3060
|
try {
|
|
3060
3061
|
setAgentPausedSync(agentId, `needs-you: idle-alive — no observable progress across ${ineffective + 1} pokes (idle-alive escalation)`);
|
|
3061
3062
|
this.emit({
|
|
@@ -3137,7 +3138,7 @@ var CloisterService = class {
|
|
|
3137
3138
|
if (skipReason) {
|
|
3138
3139
|
let recoverUnfinishedOneShot = false;
|
|
3139
3140
|
if (ONE_SHOT_ROLES.has(agentState.role) && agentState.sessionId && agentState.issueId) try {
|
|
3140
|
-
const { getReviewStatusSync } = await import("./review-status-
|
|
3141
|
+
const { getReviewStatusSync } = await import("./review-status-bBkqUj5i.js");
|
|
3141
3142
|
const status = getReviewStatusSync(agentState.issueId);
|
|
3142
3143
|
recoverUnfinishedOneShot = !(status ? isRoleTerminal(agentState.role, {
|
|
3143
3144
|
reviewStatus: status.reviewStatus,
|
|
@@ -3614,4 +3615,4 @@ function handleCloisterDomainEvent(event) {
|
|
|
3614
3615
|
//#endregion
|
|
3615
3616
|
export { performHandoff as a, getAgentsNeedingAttention as c, CostResolverLive as d, CostWriter as f, checkAllTriggers as i, CostDoorLive as l, readCloisterStateFile as n, generateHealthSummary as o, setCloisterEventStoreProvider as r, getAgentHealth as s, getCloisterService as t, CostResolver as u };
|
|
3616
3617
|
|
|
3617
|
-
//# sourceMappingURL=service-
|
|
3618
|
+
//# sourceMappingURL=service-CILd-uOt.js.map
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
+
import { Lr as encodeClaudeProjectDir, Vr as init_paths } from "./config-yaml-DPAieL_G.js";
|
|
3
|
+
import { join } from "node:path";
|
|
4
|
+
import { mkdir, readFile, writeFile } from "node:fs/promises";
|
|
5
|
+
import { randomUUID } from "node:crypto";
|
|
6
|
+
//#region ../../lib/conversations/session-fork.ts
|
|
7
|
+
/**
|
|
8
|
+
* PAN-1862 (NFR-3): the reusable session-fork primitive.
|
|
9
|
+
*
|
|
10
|
+
* Forking a Claude Code session = copy its JSONL transcript to a freshly
|
|
11
|
+
* reserved session id and relaunch with `claude --resume <newId>`. Because
|
|
12
|
+
* Anthropic's prompt cache is content-addressed (a hash of the prefix for a
|
|
13
|
+
* given model, NOT the session id), a byte-identical copied history resumed
|
|
14
|
+
* under a new id hits the same cache entries the source session wrote.
|
|
15
|
+
*
|
|
16
|
+
* Extracted from the conversation-panel fork machinery (summary-fork.ts) so the
|
|
17
|
+
* conversation panel AND the review convoy share ONE copy/reserve code path —
|
|
18
|
+
* no copy-paste fork logic (repo "No Bandaids" rule). Two consumers:
|
|
19
|
+
*
|
|
20
|
+
* - Conversation forks (summary-fork.ts): copy from the last compact boundary
|
|
21
|
+
* (the summarized tail is what the fork continues from).
|
|
22
|
+
* - Review convoy forks (review-agent.ts): copy the FULL history — the parent's
|
|
23
|
+
* discovery reads are exactly the payload the forked reviewers must inherit.
|
|
24
|
+
*
|
|
25
|
+
* The source JSONL is sacred and strictly read-only here (CLAUDE.md).
|
|
26
|
+
*/
|
|
27
|
+
/** Reserve a fresh session id + JSONL path under the cwd's Claude project dir. */
|
|
28
|
+
async function reserveForkSession(cwd) {
|
|
29
|
+
const sessionId = randomUUID();
|
|
30
|
+
const encodedDir = encodeClaudeProjectDir(cwd);
|
|
31
|
+
const sessionsDir = join(process.env.HOME ?? "", ".claude", "projects", encodedDir);
|
|
32
|
+
await mkdir(sessionsDir, { recursive: true });
|
|
33
|
+
return {
|
|
34
|
+
sessionId,
|
|
35
|
+
sessionFile: join(sessionsDir, `${sessionId}.jsonl`)
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Find the byte offset of the last `compact_boundary` entry in a JSONL file.
|
|
40
|
+
* Returns 0 if no boundary is found.
|
|
41
|
+
*/
|
|
42
|
+
async function findLastCompactBoundaryOffset(jsonlPath) {
|
|
43
|
+
const lines = (await readFile(jsonlPath, "utf-8")).split("\n");
|
|
44
|
+
let offset = 0;
|
|
45
|
+
let lastBoundaryOffset = 0;
|
|
46
|
+
for (const line of lines) {
|
|
47
|
+
if (line.trim()) try {
|
|
48
|
+
const entry = JSON.parse(line);
|
|
49
|
+
if (entry.type === "system" && entry.subtype === "compact_boundary") lastBoundaryOffset = offset;
|
|
50
|
+
} catch {}
|
|
51
|
+
offset += line.length + 1;
|
|
52
|
+
}
|
|
53
|
+
return lastBoundaryOffset;
|
|
54
|
+
}
|
|
55
|
+
function sanitizeEntryForPlainFork(entry) {
|
|
56
|
+
if (entry.type !== "assistant" || !entry.message || !Array.isArray(entry.message.content)) return entry;
|
|
57
|
+
const sanitizedContent = entry.message.content.map((block) => {
|
|
58
|
+
if (block.type === "thinking" && typeof block.thinking === "string") return {
|
|
59
|
+
type: "text",
|
|
60
|
+
text: `[Thinking]\n${block.thinking}`
|
|
61
|
+
};
|
|
62
|
+
return block;
|
|
63
|
+
});
|
|
64
|
+
return {
|
|
65
|
+
...entry,
|
|
66
|
+
message: {
|
|
67
|
+
...entry.message,
|
|
68
|
+
content: sanitizedContent
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Copy a session JSONL to `destPath` for a fork.
|
|
74
|
+
*
|
|
75
|
+
* `fullHistory: false` (conversation-fork behavior) slices from the last
|
|
76
|
+
* compact boundary; `true` (review-convoy behavior) copies everything —
|
|
77
|
+
* the discovery context is the payload. Thinking blocks are sanitized in
|
|
78
|
+
* both modes. The source file is never modified.
|
|
79
|
+
*/
|
|
80
|
+
async function copySessionForFork(sourcePath, destPath, opts = {}) {
|
|
81
|
+
const boundaryOffset = opts.fullHistory ? 0 : await findLastCompactBoundaryOffset(sourcePath);
|
|
82
|
+
const content = await readFile(sourcePath, "utf-8");
|
|
83
|
+
await writeFile(destPath, (boundaryOffset > 0 ? content.slice(boundaryOffset) : content).split("\n").map((line) => {
|
|
84
|
+
if (!line.trim()) return line;
|
|
85
|
+
try {
|
|
86
|
+
const sanitized = sanitizeEntryForPlainFork(JSON.parse(line));
|
|
87
|
+
return JSON.stringify(sanitized);
|
|
88
|
+
} catch {
|
|
89
|
+
return line;
|
|
90
|
+
}
|
|
91
|
+
}).join("\n"), "utf-8");
|
|
92
|
+
}
|
|
93
|
+
//#endregion
|
|
94
|
+
__esmMin((() => {
|
|
95
|
+
init_paths();
|
|
96
|
+
}))();
|
|
97
|
+
export { copySessionForFork, reserveForkSession };
|
|
98
|
+
|
|
99
|
+
//# sourceMappingURL=session-fork-DDSDVoIK.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Vr as init_paths, vr as init_errors } from "./config-yaml-
|
|
1
|
+
import { Vr as init_paths, vr as init_errors } from "./config-yaml-DPAieL_G.js";
|
|
2
2
|
import "effect";
|
|
3
3
|
import "fs";
|
|
4
4
|
//#region ../../lib/settings.ts
|
|
@@ -45,4 +45,4 @@ function getAgentCommandSync(modelId) {
|
|
|
45
45
|
//#endregion
|
|
46
46
|
export { getClaudeModelFlagSync as n, isAnthropicModelSync as r, getAgentCommandSync as t };
|
|
47
47
|
|
|
48
|
-
//# sourceMappingURL=settings-
|
|
48
|
+
//# sourceMappingURL=settings-CBrei_kx.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { h as jsYaml, m as init_js_yaml, o as getGlobalConfigPath, t as init_config_yaml } from "./config-yaml-
|
|
3
|
-
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-
|
|
2
|
+
import { h as jsYaml, m as init_js_yaml, o as getGlobalConfigPath, t as init_config_yaml } from "./config-yaml-DPAieL_G.js";
|
|
3
|
+
import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-CYY2_Eeh.js";
|
|
4
4
|
import { readFile } from "fs/promises";
|
|
5
5
|
//#region ../../lib/memory/settings.ts
|
|
6
6
|
async function loadMemorySettings(configPath = getGlobalConfigPath()) {
|
|
@@ -101,4 +101,4 @@ var init_settings = __esmMin((() => {
|
|
|
101
101
|
//#endregion
|
|
102
102
|
export { isMemoryKnowledgeIndexEnabled as a, init_settings as i, getMemoryRollupPendingThreshold as n, isMemoryPromptTimeInjectionEnabled as o, getMemoryWorkerConcurrency as r, loadMemorySettings as s, areMemoryObservationsEnabled as t };
|
|
103
103
|
|
|
104
|
-
//# sourceMappingURL=settings-
|
|
104
|
+
//# sourceMappingURL=settings-D2wt4nku.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as PAN_DIRNAME } from "./types-CE1m_daD.js";
|
|
2
|
-
import { t as init_pan_dir } from "./pan-dir-
|
|
2
|
+
import { t as init_pan_dir } from "./pan-dir-BgBeeZDX.js";
|
|
3
3
|
import { Data, Effect } from "effect";
|
|
4
4
|
import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from "fs";
|
|
5
5
|
import { join } from "path";
|
|
@@ -221,4 +221,4 @@ init_pan_dir();
|
|
|
221
221
|
//#endregion
|
|
222
222
|
export { gatherArtifacts, generateBasicInference, runObserverCycle, updateInferenceDocumentSync };
|
|
223
223
|
|
|
224
|
-
//# sourceMappingURL=shadow-engineering-
|
|
224
|
+
//# sourceMappingURL=shadow-engineering-Ba1D0QUN.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as getShadowState, c as isShadowed, d as needsSync, f as removeShadowState, i as getPendingSyncCount, l as listShadowedIssues, m as updateTrackerStatusCache, n as createShadowState, o as getUnsyncedHistory, p as updateShadowState, r as getDisplayStatus, s as init_shadow_state, t as ShadowStateError, u as markAsSynced } from "./shadow-state-
|
|
1
|
+
import { a as getShadowState, c as isShadowed, d as needsSync, f as removeShadowState, i as getPendingSyncCount, l as listShadowedIssues, m as updateTrackerStatusCache, n as createShadowState, o as getUnsyncedHistory, p as updateShadowState, r as getDisplayStatus, s as init_shadow_state, t as ShadowStateError, u as markAsSynced } from "./shadow-state-DTC7AMHc.js";
|
|
2
2
|
init_shadow_state();
|
|
3
3
|
export { ShadowStateError, createShadowState, getDisplayStatus, getPendingSyncCount, getShadowState, getUnsyncedHistory, isShadowed, listShadowedIssues, markAsSynced, needsSync, removeShadowState, updateShadowState, updateTrackerStatusCache };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-
|
|
2
|
+
import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-DPAieL_G.js";
|
|
3
3
|
import { Data, Effect } from "effect";
|
|
4
4
|
import { existsSync, mkdirSync, unlinkSync } from "fs";
|
|
5
5
|
import { join } from "path";
|
|
@@ -287,4 +287,4 @@ var init_shadow_state = __esmMin((() => {
|
|
|
287
287
|
//#endregion
|
|
288
288
|
export { getShadowState as a, isShadowed as c, needsSync as d, removeShadowState as f, getPendingSyncCount as i, listShadowedIssues as l, updateTrackerStatusCache as m, createShadowState as n, getUnsyncedHistory as o, updateShadowState as p, getDisplayStatus as r, init_shadow_state as s, ShadowStateError as t, markAsSynced as u };
|
|
289
289
|
|
|
290
|
-
//# sourceMappingURL=shadow-state-
|
|
290
|
+
//# sourceMappingURL=shadow-state-DTC7AMHc.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as runModelSummary, c as truncateHeadTail, i as parseEntries, n as generateSummaryFromPrompt, o as serializeConversation, r as init_smart_compaction, s as summarizeSerializedText, t as generateSmartSummary } from "./smart-compaction-
|
|
1
|
+
import { a as runModelSummary, c as truncateHeadTail, i as parseEntries, n as generateSummaryFromPrompt, o as serializeConversation, r as init_smart_compaction, s as summarizeSerializedText, t as generateSmartSummary } from "./smart-compaction-CrP90OFE.js";
|
|
2
2
|
init_smart_compaction();
|
|
3
3
|
export { generateSmartSummary, generateSummaryFromPrompt, parseEntries, runModelSummary, serializeConversation, summarizeSerializedText, truncateHeadTail };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { cr as FsError, mr as ProcessSpawnError, vr as init_errors } from "./config-yaml-
|
|
3
|
-
import { a as getHarnessBehavior } from "./src-
|
|
4
|
-
import { D as init_context_overflow, O as isContextOverflowError, ln as getProviderEnvForModel, sn as buildSpawnEnvForModel, t as init_agents } from "./agents-
|
|
5
|
-
import { t as init_behavior } from "./behavior-
|
|
6
|
-
import { a as init_claude_permissions, i as getClaudePermissionFlagsSync } from "./claude-permissions-
|
|
7
|
-
import { n as recordBackgroundAiCost, t as init_cost } from "./cost-
|
|
2
|
+
import { cr as FsError, mr as ProcessSpawnError, vr as init_errors } from "./config-yaml-DPAieL_G.js";
|
|
3
|
+
import { a as getHarnessBehavior } from "./src-fgbU-jJ-.js";
|
|
4
|
+
import { D as init_context_overflow, O as isContextOverflowError, ln as getProviderEnvForModel, sn as buildSpawnEnvForModel, t as init_agents } from "./agents-DHvsjsuP.js";
|
|
5
|
+
import { t as init_behavior } from "./behavior-By-2Wipv.js";
|
|
6
|
+
import { a as init_claude_permissions, i as getClaudePermissionFlagsSync } from "./claude-permissions-DrRAs_0F.js";
|
|
7
|
+
import { n as recordBackgroundAiCost, t as init_cost } from "./cost-DaOG8sUB.js";
|
|
8
8
|
import { Effect } from "effect";
|
|
9
9
|
import { tmpdir } from "node:os";
|
|
10
10
|
import { join } from "node:path";
|
|
@@ -850,4 +850,4 @@ Be thorough. Preserve exact file paths, function names, error messages, and code
|
|
|
850
850
|
//#endregion
|
|
851
851
|
export { runModelSummary as a, truncateHeadTail as c, parseEntries as i, generateSummaryFromPrompt as n, serializeConversation as o, init_smart_compaction as r, summarizeSerializedText as s, generateSmartSummary as t };
|
|
852
852
|
|
|
853
|
-
//# sourceMappingURL=smart-compaction-
|
|
853
|
+
//# sourceMappingURL=smart-compaction-CrP90OFE.js.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { Dt as getProjectConfigFromWorkspacePath, Ft as resolveProjectForIssue, Nn as init_projects, Ot as init_record, Sn as findProjectByTeamSync, X as resolveModel, bn as findProjectByPathSync, f as loadConfigSync, gt as appendSessionEntrySync, t as init_config_yaml, vn as extractTeamPrefix, wt as getIssueRecordPath } from "./config-yaml-
|
|
2
|
-
import { L as sessionExists, W as BLANKED_PROVIDER_ENV, d as exactPaneTarget, o as createSession, q as init_child_env, r as buildTmuxCommandString, w as killSession, x as init_tmux, z as setOption } from "./tmux-
|
|
3
|
-
import { a as getHarnessBehavior } from "./src-
|
|
4
|
-
import { n as ensureSessionContextBriefingFile, r as init_briefing_freshness } from "./briefing-freshness-
|
|
5
|
-
import { Gt as getAgentRuntimeBaseCommand, It as retrieveSpawnTimeMemoryContext, Jn as saveAgentStateSync, Kt as getCodexLauncherFields, Pn as getAgentStateSync, Qt as roleAgentDefinitionPath, Xt as init_runtime_command, qt as getOhmypiLauncherFields, t as init_agents, un as getProviderExportsForModel, wt as deliverInitialPromptWithRetry } from "./agents-
|
|
6
|
-
import { t as init_behavior } from "./behavior-
|
|
7
|
-
import { a as init_launcher_generator, i as generateLauncherScriptSync } from "./state-home-
|
|
8
|
-
import { h as workspaceContextFile, o as init_layers } from "./layers-
|
|
9
|
-
import { n as resolveHarness, t as init_harness_resolve } from "./harness-resolve-
|
|
10
|
-
import { c as ensureWorkspacePanDir, r as writeWorkspaceContext, t as init_pan_dir } from "./pan-dir-
|
|
11
|
-
import { r as init_workspace_manager, t as createWorkspace } from "./workspace-manager-
|
|
12
|
-
import { n as renderPrompt, t as init_prompts } from "./prompts-
|
|
1
|
+
import { Dt as getProjectConfigFromWorkspacePath, Ft as resolveProjectForIssue, Nn as init_projects, Ot as init_record, Sn as findProjectByTeamSync, X as resolveModel, bn as findProjectByPathSync, f as loadConfigSync, gt as appendSessionEntrySync, t as init_config_yaml, vn as extractTeamPrefix, wt as getIssueRecordPath } from "./config-yaml-DPAieL_G.js";
|
|
2
|
+
import { L as sessionExists, W as BLANKED_PROVIDER_ENV, d as exactPaneTarget, o as createSession, q as init_child_env, r as buildTmuxCommandString, w as killSession, x as init_tmux, z as setOption } from "./tmux-ePNhMIMU.js";
|
|
3
|
+
import { a as getHarnessBehavior } from "./src-fgbU-jJ-.js";
|
|
4
|
+
import { n as ensureSessionContextBriefingFile, r as init_briefing_freshness } from "./briefing-freshness-CXhZdnB8.js";
|
|
5
|
+
import { Gt as getAgentRuntimeBaseCommand, It as retrieveSpawnTimeMemoryContext, Jn as saveAgentStateSync, Kt as getCodexLauncherFields, Pn as getAgentStateSync, Qt as roleAgentDefinitionPath, Xt as init_runtime_command, qt as getOhmypiLauncherFields, t as init_agents, un as getProviderExportsForModel, wt as deliverInitialPromptWithRetry } from "./agents-DHvsjsuP.js";
|
|
6
|
+
import { t as init_behavior } from "./behavior-By-2Wipv.js";
|
|
7
|
+
import { a as init_launcher_generator, i as generateLauncherScriptSync } from "./state-home-Bgj7i-C7.js";
|
|
8
|
+
import { h as workspaceContextFile, o as init_layers } from "./layers-vdvlpFki.js";
|
|
9
|
+
import { n as resolveHarness, t as init_harness_resolve } from "./harness-resolve-DKeSVsJL.js";
|
|
10
|
+
import { c as ensureWorkspacePanDir, r as writeWorkspaceContext, t as init_pan_dir } from "./pan-dir-BgBeeZDX.js";
|
|
11
|
+
import { r as init_workspace_manager, t as createWorkspace } from "./workspace-manager-CEWK-OXd.js";
|
|
12
|
+
import { n as renderPrompt, t as init_prompts } from "./prompts-CelsUdrx.js";
|
|
13
13
|
import { Effect } from "effect";
|
|
14
14
|
import { homedir } from "node:os";
|
|
15
15
|
import { existsSync, readFileSync } from "node:fs";
|
|
@@ -286,12 +286,12 @@ async function claudePlanningSystemPromptFiles(workspacePath, harness) {
|
|
|
286
286
|
files.push(await ensureSessionContextBriefingFile());
|
|
287
287
|
const behavior = getHarnessBehavior(harness);
|
|
288
288
|
if (behavior.contextLayerKind === "pi") {
|
|
289
|
-
const { piGlobalContextFile } = await import("./context-layers-
|
|
289
|
+
const { piGlobalContextFile } = await import("./context-layers-DxKsseHI.js");
|
|
290
290
|
const globalFile = piGlobalContextFile();
|
|
291
291
|
if (existsSync(globalFile)) files.unshift(globalFile);
|
|
292
292
|
}
|
|
293
293
|
if (behavior.contextLayerKind === "codex") {
|
|
294
|
-
const { codexGlobalContextFile } = await import("./context-layers-
|
|
294
|
+
const { codexGlobalContextFile } = await import("./context-layers-DxKsseHI.js");
|
|
295
295
|
const globalFile = codexGlobalContextFile();
|
|
296
296
|
if (existsSync(globalFile)) files.unshift(globalFile);
|
|
297
297
|
}
|
|
@@ -541,4 +541,4 @@ async function spawnPlanningSession(opts) {
|
|
|
541
541
|
//#endregion
|
|
542
542
|
export { resolvePlanningSessionHarness as a, resolveAutoSpawnOnFinalize as i, buildPlanningPrompt as n, spawnPlanningSession as o, readAutoSpawnOnFinalizeFlag as r, writeFeatureContext as s, autoSpawnOnFinalizeFlagPath as t };
|
|
543
543
|
|
|
544
|
-
//# sourceMappingURL=spawn-planning-session-
|
|
544
|
+
//# sourceMappingURL=spawn-planning-session-BmJWHSCu.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { o as spawnPlanningSession } from "./spawn-planning-session-
|
|
1
|
+
import { o as spawnPlanningSession } from "./spawn-planning-session-BmJWHSCu.js";
|
|
2
2
|
export { spawnPlanningSession };
|
|
@@ -85,4 +85,4 @@ function cancelAllPendingCompletions() {
|
|
|
85
85
|
//#endregion
|
|
86
86
|
export { SpecialistCancelledError, SpecialistCompletionTimeoutError, SpecialistSupersededError, cancelAllPendingCompletions, hasPendingCompletion, reportSpecialistCompletion, waitForSpecialistCompletion };
|
|
87
87
|
|
|
88
|
-
//# sourceMappingURL=specialist-completion-
|
|
88
|
+
//# sourceMappingURL=specialist-completion-BiEXUHfD.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { Br as getOverdeckHome, Dn as getProjectSync, Nn as init_projects, Vr as init_paths, X as resolveModel, f as loadConfigSync, t as init_config_yaml } from "./config-yaml-
|
|
3
|
-
import { a as init_claude_permissions, r as getClaudePermissionFlagsStringSync } from "./claude-permissions-
|
|
2
|
+
import { Br as getOverdeckHome, Dn as getProjectSync, Nn as init_projects, Vr as init_paths, X as resolveModel, f as loadConfigSync, t as init_config_yaml } from "./config-yaml-DPAieL_G.js";
|
|
3
|
+
import { a as init_claude_permissions, r as getClaudePermissionFlagsStringSync } from "./claude-permissions-DrRAs_0F.js";
|
|
4
4
|
import { Effect } from "effect";
|
|
5
5
|
import { existsSync, mkdirSync, readFileSync, unlinkSync, writeFileSync } from "fs";
|
|
6
6
|
import { join } from "path";
|
|
@@ -114,7 +114,7 @@ function getDigestModel(projectKey, specialistType) {
|
|
|
114
114
|
async function generateContextDigestPromise(projectKey, specialistType, options = {}) {
|
|
115
115
|
ensureContextDirectory(projectKey, specialistType);
|
|
116
116
|
const runCount = options.runCount ?? getContextRunsCount(projectKey);
|
|
117
|
-
const { getRecentRunLogs } = await import("./specialist-logs-
|
|
117
|
+
const { getRecentRunLogs } = await import("./specialist-logs-CvDxquV_.js");
|
|
118
118
|
const recentRuns = getRecentRunLogs(projectKey, specialistType, runCount);
|
|
119
119
|
if (recentRuns.length === 0 && !options.force) {
|
|
120
120
|
console.log(`[specialist-context] No recent runs for ${projectKey}/${specialistType}, skipping digest generation`);
|
|
@@ -128,7 +128,7 @@ async function generateContextDigestPromise(projectKey, specialistType, options
|
|
|
128
128
|
if (!existsSync(tempDir)) mkdirSync(tempDir, { recursive: true });
|
|
129
129
|
const promptFile = join(tempDir, `digest-prompt-${Date.now()}.md`);
|
|
130
130
|
writeFileSync(promptFile, prompt, "utf-8");
|
|
131
|
-
const { getProviderEnvForModel } = await import("./agents-
|
|
131
|
+
const { getProviderEnvForModel } = await import("./agents-BIggLvi_.js");
|
|
132
132
|
const providerEnv = await getProviderEnvForModel(model);
|
|
133
133
|
const envPrefix = Object.entries(providerEnv).map(([k, v]) => `${k}="${v}"`).join(" ");
|
|
134
134
|
const permissionFlags = getClaudePermissionFlagsStringSync();
|
|
@@ -283,4 +283,4 @@ __esmMin((() => {
|
|
|
283
283
|
}))();
|
|
284
284
|
export { deleteContextDigest, generateContextDigest, getContextDigestPath, getContextDirectory, hasContextDigest, loadContextDigest, regenerateContextDigest, scheduleDigestGeneration };
|
|
285
285
|
|
|
286
|
-
//# sourceMappingURL=specialist-context-
|
|
286
|
+
//# sourceMappingURL=specialist-context-CwKkcXL9.js.map
|
package/server/{specialist-handoff-logger-CH1nC8fq.js → specialist-handoff-logger-B_2VsWli.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-
|
|
1
|
+
import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-DPAieL_G.js";
|
|
2
2
|
import { Effect } from "effect";
|
|
3
3
|
import { existsSync } from "fs";
|
|
4
4
|
import { join } from "path";
|
|
@@ -52,4 +52,4 @@ const updateSpecialistHandoffStatus = (issueId, toSpecialist, status, result) =>
|
|
|
52
52
|
//#endregion
|
|
53
53
|
export { updateSpecialistHandoffStatus };
|
|
54
54
|
|
|
55
|
-
//# sourceMappingURL=specialist-handoff-logger-
|
|
55
|
+
//# sourceMappingURL=specialist-handoff-logger-B_2VsWli.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as __toCommonJS, n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
|
|
2
|
-
import { Bn as projects_exports, Br as getOverdeckHome, Nn as init_projects, Vr as init_paths } from "./config-yaml-
|
|
3
|
-
import { J as specialists_exports, O as init_specialists } from "./specialists-
|
|
2
|
+
import { Bn as projects_exports, Br as getOverdeckHome, Nn as init_projects, Vr as init_paths } from "./config-yaml-DPAieL_G.js";
|
|
3
|
+
import { J as specialists_exports, O as init_specialists } from "./specialists-BYi0k8CZ.js";
|
|
4
4
|
import { Data, Effect } from "effect";
|
|
5
5
|
import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync, statSync, unlinkSync, writeFileSync } from "fs";
|
|
6
6
|
import { basename, join } from "path";
|
|
@@ -380,4 +380,4 @@ __esmMin((() => {
|
|
|
380
380
|
}))();
|
|
381
381
|
export { MAX_LOG_SIZE, SpecialistLogError, appendToRunLog, appendToRunLogSync, checkLogSizeLimit, cleanupAllLogs, cleanupAllLogsSync, cleanupOldLogs, cleanupOldLogsSync, createRunLog, createRunLogSync, finalizeRunLog, finalizeRunLogSync, generateRunId, getRecentRunLogs, getRunLog, getRunLogPath, getRunLogSize, getRunLogSync, getRunsDirectory, isRunLogActive, listRunLogs, listRunLogsSync, parseLogMetadata };
|
|
382
382
|
|
|
383
|
-
//# sourceMappingURL=specialist-logs-
|
|
383
|
+
//# sourceMappingURL=specialist-logs-CvDxquV_.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { i as validateSpecialistAutoCompleteMetadata, n as _serverManagedMerges, r as firePostMergeLifecycle, t as specialistsRouteLayer } from "./specialists-
|
|
1
|
+
import { i as validateSpecialistAutoCompleteMetadata, n as _serverManagedMerges, r as firePostMergeLifecycle, t as specialistsRouteLayer } from "./specialists-D07ybnam.js";
|
|
2
2
|
export { _serverManagedMerges, specialistsRouteLayer as default, specialistsRouteLayer, firePostMergeLifecycle, validateSpecialistAutoCompleteMetadata };
|