@overdeck/desktop 0.45.21 → 0.45.23

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.
Files changed (387) hide show
  1. package/package.json +1 -1
  2. package/server/{acceptance-criteria-CJIFA8Vg.js → acceptance-criteria-DOA0KgXx.js} +5 -5
  3. package/server/{advancing-selfheal-CPOBO5ZS.js → advancing-selfheal-BBu6DSNm.js} +6 -6
  4. package/server/{agent-gc-D6PUckBB.js → agent-gc-BV1q_2EV.js} +4 -4
  5. package/server/agent-state-Bg0lhqwj.js +3 -0
  6. package/server/{agent-state-service-DHwemt96.js → agent-state-service-CnzFKSAQ.js} +1 -1
  7. package/server/{agent-state-service-6MFQqnFy.js → agent-state-service-HoK8U4jW.js} +5 -5
  8. package/server/{agents-DbrHWunF.js → agents-B4Bjbkfv.js} +4 -4
  9. package/server/agents-FlIgQ3ql.js +3 -0
  10. package/server/{archive-planning-BOnwJq8M.js → archive-planning-DYrYojxl.js} +31 -7
  11. package/server/{archive-planning-MPpvQJL4.js → archive-planning-zkJb3BeM.js} +1 -1
  12. package/server/{artifact-index-jobs-BOoySTKD.js → artifact-index-jobs-C-xy7Z5v.js} +2 -2
  13. package/server/{backlog-auto-trigger-BUaFI44J.js → backlog-auto-trigger-GtG71X8H.js} +3 -3
  14. package/server/{behavior-Dg-D8eBG.js → behavior-B_-4EKF3.js} +2 -2
  15. package/server/{briefing-freshness-OouGbJ7d.js → briefing-freshness-DWdW7vUm.js} +2 -2
  16. package/server/{build-info-27NlbKhV.js → build-info-BT096lEl.js} +3 -3
  17. package/server/{build-info-Cv6CI7Gu.js → build-info-DgTqZkL5.js} +1 -1
  18. package/server/{checkpoint-manager-C7mFCY_E.js → checkpoint-manager-B7Bt29J0.js} +1 -1
  19. package/server/{checkpoint-manager-D64fCC4p.js → checkpoint-manager-DDqcGyu8.js} +2 -2
  20. package/server/checkpoint-worker.js +1 -1
  21. package/server/{checkpoints-Vh-J15ge.js → checkpoints-C-AXLfYT.js} +2 -2
  22. package/server/{checkpoints-DwZqT2qQ.js → checkpoints-CpgCjAlN.js} +1 -1
  23. package/server/{claude-hooks-provision-CS5W_dhI.js → claude-hooks-provision-C8wdRnN1.js} +1 -1
  24. package/server/{claude-hooks-provision-BVLGfHrv.js → claude-hooks-provision-but-_qGY.js} +2 -2
  25. package/server/{claude-permissions-C2OrLYKL.js → claude-permissions-H_5wHQZQ.js} +2 -2
  26. package/server/{claude-settings-overlay-DWXjafJh.js → claude-settings-overlay-BTENVmYf.js} +1 -1
  27. package/server/{claude-settings-overlay-DX-fMFpC.js → claude-settings-overlay-CbSz0Dvb.js} +2 -2
  28. package/server/cli-BsVIHwzC.js +3 -0
  29. package/server/{cli-mvpEOb3w.js → cli-vBeXbPrq.js} +9 -9
  30. package/server/{cliproxy-Dvsr4ZkW.js → cliproxy-Bgb2XCqi.js} +2 -2
  31. package/server/{cliproxy-7g1nObvB.js → cliproxy-DW0V86F8.js} +1 -1
  32. package/server/{close-issue-8F6uawYj.js → close-issue-Dn_4c4G8.js} +5 -5
  33. package/server/{closed-issue-reaper-BhV-r-tC.js → closed-issue-reaper-CWpY2uBw.js} +1 -1
  34. package/server/{closed-issue-reaper-BaYQYF6w.js → closed-issue-reaper-hANY_ehE.js} +9 -9
  35. package/server/codex-Dg7Is5yb.js +3 -0
  36. package/server/{codex-D_UBEOwL.js → codex-TmSi-yTv.js} +30 -8
  37. package/server/{codex-parser-BTzlOZiV.js → codex-parser-C4gSH-IR.js} +2 -2
  38. package/server/{config-CrduXs4a.js → config-CCvjQf27.js} +2 -2
  39. package/server/{config-nAB_F-Gp.js → config-DUIhMN_T.js} +1 -1
  40. package/server/{config-G1TOMJZA.js → config-DjLOdbgT.js} +2 -2
  41. package/server/{config-yaml-Ciyp2mYe.js → config-yaml-DvyMuOle.js} +177 -211
  42. package/server/{conflict-gate-BKalpcjL.js → conflict-gate-BSJkNTdp.js} +1 -1
  43. package/server/{conflict-gate-BLUNMs1i.js → conflict-gate-CmrYpa47.js} +3 -3
  44. package/server/{context-layers-YNpf6Q_I.js → context-layers-B3Nt58jl.js} +2 -2
  45. package/server/{context-layers-Cg9ZgVfx.js → context-layers-ZYFcWiyc.js} +3 -3
  46. package/server/{control-settings-D_79A6gp.js → control-settings-aP1ANIlI.js} +4 -4
  47. package/server/{conversation-compaction-DiuZbIUB.js → conversation-compaction-CNbTLB86.js} +8 -8
  48. package/server/{conversation-compaction-CMIeWW4_.js → conversation-compaction-DiG5zWQq.js} +1 -1
  49. package/server/{conversation-service-DQybSPUK.js → conversation-service-Du-MTNpJ.js} +6 -6
  50. package/server/{conversation-service-CWk8mEym.js → conversation-service-Up7FEzIC.js} +1 -1
  51. package/server/{conversations-BJ-t3BRm.js → conversations-6mPANqvL.js} +1 -1
  52. package/server/{conversations-BUgGvqVL.js → conversations-DbOs1e9Q.js} +4 -4
  53. package/server/{cost-jJ2cgDcG.js → cost-CW4WSe72.js} +3 -3
  54. package/server/{cost-Drm7qeD5.js → cost-Ca0YTWDw.js} +18 -2
  55. package/server/{cost-sync-DzHP6zaR.js → cost-sync-C0VdGme1.js} +3 -3
  56. package/server/{dag-DIji6O2b.js → dag-CdOjJVDT.js} +9 -9
  57. package/server/{dangerous-git-ops-BebB-61h.js → dangerous-git-ops-CT-IypG3.js} +1 -1
  58. package/server/dashboard-db-worker.js +7 -7
  59. package/server/{deacon-pleYrvIm.js → deacon-DYSEJb48.js} +3 -3
  60. package/server/{deacon-nudge-log-C5VCKtyi.js → deacon-nudge-log-Bjg8U4Y9.js} +3 -3
  61. package/server/{deacon-1s7bM5zn.js → deacon-pRnyD5w9.js} +1133 -474
  62. package/server/deacon-swarm-9jRLS5Ke.js +2 -0
  63. package/server/{deacon-swarm-DmA3rJ7k.js → deacon-swarm-DftYRDo8.js} +17 -17
  64. package/server/deacon.js +8 -8
  65. package/server/{deploy-patrol-DmM6F-yw.js → deploy-patrol-Bjsho_ha.js} +136 -19
  66. package/server/{deploy-window-ClLq1RYf.js → deploy-window-CM6W1-c6.js} +1 -1
  67. package/server/{deploy-window-jw4S_Y-c.js → deploy-window-DeP_OIRk.js} +77 -10
  68. package/server/{dev-supervisor-Do2Stz49.js → dev-supervisor-BpMoHlkR.js} +2 -2
  69. package/server/{devcontainer-renderer-D8ylupco.js → devcontainer-renderer-CtUgrVKW.js} +3 -3
  70. package/server/dist-Bd3vn0Hw.js +3 -0
  71. package/server/{dist-yfR7G1BL.js → dist-DyRx4cI7.js} +1 -1
  72. package/server/{docker-ClwPQaba.js → docker-BK7HIcBj.js} +2 -2
  73. package/server/{dod-BLphkhjs.js → dod-BrSfUHm0.js} +1 -1
  74. package/server/{ensure-devcontainer-BA3bICoY.js → ensure-devcontainer-DRqaAkBR.js} +1 -1
  75. package/server/{ensure-devcontainer-CFpQatOc.js → ensure-devcontainer-DseivYEy.js} +4 -4
  76. package/server/{esm-shims-BZw-fTQ6.js → esm-shims-CbI3BVkl.js} +1 -1
  77. package/server/{event-store-DABarGNz.js → event-store-Cr5PQwFC.js} +1 -1
  78. package/server/{event-store-BVnON3vf.js → event-store-tdiY5eDZ.js} +3 -3
  79. package/server/{events-CmERlnwn.js → events-CC1dgUpx.js} +3 -3
  80. package/server/{events-LGeUehYW.js → events-CvvGK6LT.js} +1 -1
  81. package/server/{factory-CQNprtHe.js → factory-CynerjXO.js} +50 -13
  82. package/server/{feature-registry-population-D9Z3tYSa.js → feature-registry-population-B0pmAz0a.js} +4 -4
  83. package/server/{feature-registry-storage-BWymOgXE.js → feature-registry-storage-_wUBRD3J.js} +2 -2
  84. package/server/{features--fOza5g5.js → features-Dhxz-wLc.js} +2 -2
  85. package/server/{feedback-target-Dqik2WTe.js → feedback-target-CPS15Vte.js} +7 -7
  86. package/server/{feedback-target-Dn9vfPpz.js → feedback-target-iygZwmMc.js} +1 -1
  87. package/server/{feedback-writer-Wlq5-qgS.js → feedback-writer-C9b6ccN1.js} +6 -5
  88. package/server/{feedback-writer-DDQNV8uc.js → feedback-writer-qmiMbqTZ.js} +1 -1
  89. package/server/{flywheel-Q-38YhZG.js → flywheel-DMCUzDWg.js} +1 -1
  90. package/server/{flywheel-1Wd8WDlh.js → flywheel-DSSpWmqF.js} +13 -13
  91. package/server/{flywheel-DPUc8r3V.js → flywheel-DcBkQvgE.js} +14 -14
  92. package/server/{flywheel-merge-order-CeBuX0EJ.js → flywheel-merge-order-C-6zRLvM.js} +1 -1
  93. package/server/{flywheel-merge-order-4SqOXFAr.js → flywheel-merge-order-DxbQKE1d.js} +8 -8
  94. package/server/forge-B-ZWyTRm.js +2 -0
  95. package/server/{forge-DBbDpiYc.js → forge-Ch9gCFod.js} +2 -2
  96. package/server/{from-hh6vTBGl.js → from-CJ_aH5jD.js} +1 -1
  97. package/server/{fts-db-6ponMie2.js → fts-db-CKgg0VKg.js} +2 -2
  98. package/server/{fts-operations-KIRK165y.js → fts-operations-BrL_VTRr.js} +2 -2
  99. package/server/git-utils-BVa07a4a.js +198 -0
  100. package/server/{git-utils-DmF5xkj8.js → git-utils-Dry_Ka_D.js} +1 -1
  101. package/server/{github-app-B3yfECo8.js → github-app-CMBdIFBQ.js} +11 -3
  102. package/server/{github-app-CeSVFL6C.js → github-app-CPfoFAdV.js} +1 -1
  103. package/server/{github-client-Dslipypz.js → github-client--XVlDpwM.js} +2 -2
  104. package/server/{github-client-4A6FgA8O.js → github-client-B4QsdE-X.js} +1 -1
  105. package/server/{github-pr-lookup-DBP0YHMr.js → github-pr-lookup-BRbDW-qk.js} +2 -2
  106. package/server/harness-binary-CVio2m-u.js +106 -0
  107. package/server/{harness-resolve-BGpO-OVM.js → harness-resolve-qHJBhy3Z.js} +9 -15
  108. package/server/{health-events-CZGZ5I-A.js → health-events-C9B8y1Hm.js} +2 -2
  109. package/server/{health-events-CnwV_SSz.js → health-events-CpfvuVmm.js} +1 -1
  110. package/server/{hooks-CoNscX84.js → hooks-DUXw8A0-.js} +2 -2
  111. package/server/{hooks-DvX33gY_.js → hooks-ltecuFqZ.js} +1 -1
  112. package/server/{hume-DSJt5eA_.js → hume-BEq0bUDg.js} +2 -2
  113. package/server/hume-B_DbflNM.js +3 -0
  114. package/server/{idle-stack-reaper-5DVRoY6P.js → idle-stack-reaper-D7w9t3fE.js} +1 -1
  115. package/server/{idle-stack-reaper-BfL8HqYy.js → idle-stack-reaper-w1ISSlhs.js} +2 -2
  116. package/server/{in-flight-guard-tVGiI5ee.js → in-flight-guard-aQ1IxeI3.js} +2 -2
  117. package/server/{infra-DN2wSxle.js → infra-CzaSOgul.js} +4 -4
  118. package/server/{injection-DtlT8Akv.js → injection-DZ0PfYa4.js} +7 -7
  119. package/server/{injection-DK9zh_HL.js → injection-oNZeoDhL.js} +1 -1
  120. package/server/{inspect-agent-DKByUS_F.js → inspect-agent-DJKLWcVT.js} +15 -11
  121. package/server/inspect-agent-ch-F-5Ci.js +2 -0
  122. package/server/{internal-token-DhfFiwW7.js → internal-token-Bb4XeV2x.js} +2 -2
  123. package/server/{internal-token-7bYL5v6K.js → internal-token-DXdfprGr.js} +1 -1
  124. package/server/{io-BiM-7Zsx.js → io-B3_AHDfr.js} +160 -184
  125. package/server/{issue-closed-Dfw3QDyZ.js → issue-closed-zhdvQicO.js} +7 -7
  126. package/server/{issue-lifecycle-B7HZWnTA.js → issue-lifecycle-CreaCkjW.js} +22 -22
  127. package/server/{issue-lifecycle-ytsEdDlK.js → issue-lifecycle-Dy4vd0Oa.js} +1 -1
  128. package/server/{issue-service-singleton-CPESc4Or.js → issue-service-singleton-B5ushCvE.js} +8 -8
  129. package/server/{issue-service-singleton-D5EB5eYr.js → issue-service-singleton-DabvBWUp.js} +1 -1
  130. package/server/{issues-XYtFMxrH.js → issues-B6ToV6x1.js} +2 -2
  131. package/server/{jsonl-parser-DJV2eZUP.js → jsonl-parser-Dhflo1SH.js} +3 -3
  132. package/server/{label-cleanup-CJ4m8iRU.js → label-cleanup-BKPJm4Hv.js} +3 -3
  133. package/server/{label-reconciler-CNf3Ylm3.js → label-reconciler-DdWbHEBu.js} +4 -4
  134. package/server/{launcher-generator-5DJRiovn.js → launcher-generator-CHVm7bGT.js} +10 -9
  135. package/server/{layers-cZx7ibtV.js → layers-DzxSTGNA.js} +2 -2
  136. package/server/lifecycle-DfeyBDwA.js +121 -0
  137. package/server/lifecycle-io-Bsnr2K4F.js +3 -0
  138. package/server/{lifecycle-io-DMurK4oM.js → lifecycle-io-D8iNBcux.js} +37 -37
  139. package/server/{lifecycle-CE7619Xw.js → lifecycle-sycO16hj.js} +6 -6
  140. package/server/{linear-client-BLyN-NiP.js → linear-client-D4zqMnX7.js} +2 -2
  141. package/server/{linear-client-Bj1l4FOA.js → linear-client-DqhDQO9k.js} +1 -1
  142. package/server/memory-fts-worker.js +1 -1
  143. package/server/{merge-hSC2BENe.js → merge-C_ZEhbqI.js} +3 -3
  144. package/server/{merge-CwX2_AWm.js → merge-DK23JEdS.js} +1 -1
  145. package/server/{merge-agent-CnORPiri.js → merge-agent-BQM3a8z5.js} +1 -1
  146. package/server/{merge-agent-DnBsms_V.js → merge-agent-XrB80vfT.js} +369 -213
  147. package/server/{merge-batch-C2w2U2eK.js → merge-batch-Bwoyr8Je.js} +1 -1
  148. package/server/{merge-blockers-DhRgh76x.js → merge-blockers-BsFjGrQ8.js} +2 -2
  149. package/server/merge-ops-DlB1IM0Y.js +2 -0
  150. package/server/{merge-rebase-CE-ZyOMY.js → merge-rebase-C1KIVr0s.js} +2 -2
  151. package/server/{merge-set-D7YNU1ZB.js → merge-set-DLz0MkGT.js} +3 -3
  152. package/server/{merge-set-DHkzPCJU.js → merge-set-DnSYdBEp.js} +1 -1
  153. package/server/{merge-sync-De1FYva5.js → merge-sync-DZ9dojJn.js} +2 -2
  154. package/server/{merge-sync-CpGA9Kg7.js → merge-sync-SSv3E-pl.js} +1 -1
  155. package/server/{merge-train-SvkRJZ-k.js → merge-train-DxDfBTjr.js} +3 -3
  156. package/server/{merge-train-deps-CECJTElu.js → merge-train-deps-CyYQUksx.js} +4 -4
  157. package/server/{merge-verification-B3meGcXF.js → merge-verification-CSizH3HY.js} +4 -4
  158. package/server/{multipart-parser-ByTMgYV5.js → multipart-parser-Dt8YPN5S.js} +2 -2
  159. package/server/{no-resume-mode-BnInAFKs.js → no-resume-mode-Cx3K0hHi.js} +11 -8
  160. package/server/node_modules/.package-lock.json +5 -5
  161. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/README.md +3 -3
  162. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.d.ts.map +1 -1
  163. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js +2 -2
  164. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js.map +1 -1
  165. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/package.json +5 -5
  166. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeChildProcessSpawner.ts +6 -8
  167. package/server/{orphan-proposed-reconciler-CAfuWTA1.js → orphan-proposed-reconciler-BTkDrl4R.js} +1 -1
  168. package/server/{orphan-proposed-reconciler-AxAGUouN.js → orphan-proposed-reconciler-neK8dHQk.js} +23 -14
  169. package/server/package-lock.json +6 -6
  170. package/server/package.json +1 -1
  171. package/server/{pan-dir-Rw17YjT1.js → pan-dir-DeVUgwA7.js} +78 -58
  172. package/server/{paths-FP8v3lTz.js → paths-_zEts6wc.js} +2 -2
  173. package/server/{pickup-xi3KTLaJ.js → pickup-Dd0Znxxy.js} +2 -2
  174. package/server/{pipeline-membership-BtKMNY7v.js → pipeline-membership-0HaEGDlH.js} +190 -68
  175. package/server/{pipeline-notifier-dQ-U4NSb.js → pipeline-notifier-6iCJplFZ.js} +1 -1
  176. package/server/{pipeline-notifier-BM2HLF7B.js → pipeline-notifier-D0ykk59O.js} +2 -2
  177. package/server/{project-pipelines-B59NfN44.js → project-pipelines-2sK1apsO.js} +2 -2
  178. package/server/projects-9SkRpES9.js +3 -0
  179. package/server/{prompts-CbqaVjbe.js → prompts-Dp4Tpk39.js} +2 -2
  180. package/server/providers-DKkBXhxU.js +3 -0
  181. package/server/{providers-d3pwXGVE.js → providers-DV7ec8l7.js} +7 -7
  182. package/server/public/assets/{chunk-BO2N2NFS-BxYSL7J-.js → chunk-BO2N2NFS-CltymLRg.js} +4 -4
  183. package/server/public/assets/{diagram-OG6HWLK6-C_F9Q2as.js → diagram-OG6HWLK6-D2f6pjgA.js} +1 -1
  184. package/server/public/assets/{dist-DQNg4CiF.js → dist-BWR4qFiV.js} +1 -1
  185. package/server/public/assets/{dist-CLSlc6cV.js → dist-DEmlBBNQ.js} +3 -3
  186. package/server/public/assets/{ganttDiagram-6RSMTGT7-Cq0my-0C.js → ganttDiagram-6RSMTGT7-DnfiViPK.js} +1 -1
  187. package/server/public/assets/{highlighted-body-OFNGDK62-eZC03dGh.js → highlighted-body-OFNGDK62-B8Wrmj9H.js} +1 -1
  188. package/server/public/assets/index-CUr1xv8w.css +1 -0
  189. package/server/public/assets/{index-SLYGA8AQ.js → index-CsSuZQBI.js} +148 -145
  190. package/server/public/assets/{linear-6Fi3qnGg.js → linear-C9zFQpkX.js} +1 -1
  191. package/server/public/assets/mermaid-GHXKKRXX-BUAB8hqt.js +1 -0
  192. package/server/public/assets/{pieDiagram-4H26LBE5-Dpmc6xsv.js → pieDiagram-4H26LBE5-lR8H7Yjd.js} +1 -1
  193. package/server/public/assets/{prod-ojHllFvN.js → prod-B1jCQihw.js} +4 -4
  194. package/server/public/assets/{quadrantDiagram-W4KKPZXB-Ulr9gON5.js → quadrantDiagram-W4KKPZXB-CVQ2guem.js} +1 -1
  195. package/server/public/assets/{sankeyDiagram-5OEKKPKP-CwdHGXfL.js → sankeyDiagram-5OEKKPKP-eD1RB4gm.js} +1 -1
  196. package/server/public/assets/{xychartDiagram-2RQKCTM6-r-bEDzJh.js → xychartDiagram-2RQKCTM6-ChEC6dQn.js} +1 -1
  197. package/server/public/index.html +54 -10
  198. package/server/{pull-requests-D3N6HQzI.js → pull-requests--Ib2jTgy.js} +1 -1
  199. package/server/{pull-requests-CjjPj7v6.js → pull-requests-CXIhdCYD.js} +13 -11
  200. package/server/{queries-B5hl7lMQ.js → queries-6d7Cdtm7.js} +723 -110
  201. package/server/{rally-Dp0Gb1DN.js → rally-B708-nZn.js} +3 -3
  202. package/server/{rally-api-DGaFz5L5.js → rally-api-nY0ZANw3.js} +2 -2
  203. package/server/{rally-api-CKr0O4DJ.js → rally-api-yjQ0TfHd.js} +1 -1
  204. package/server/{rally-client-SVbjGvqj.js → rally-client-B1EJhfV0.js} +4 -4
  205. package/server/{rally-client-Cqf6EX_r.js → rally-client-CULK2XAY.js} +1 -1
  206. package/server/rally-njs_mJrt.js +3 -0
  207. package/server/reap-terminal-sessions-MWnqdLCJ.js +4 -0
  208. package/server/{reap-terminal-sessions-CjqRAGw7.js → reap-terminal-sessions-N3BTkmX_.js} +11 -28
  209. package/server/{rebuild-stack-DHqCLvLX.js → rebuild-stack-Dp4eLkt4.js} +6 -6
  210. package/server/{rebuild-stack-DjdpALr1.js → rebuild-stack-kA7XngID.js} +1 -1
  211. package/server/{reconstruct-cache-BqrCQt0o.js → reconstruct-cache-uWbZfjms.js} +6 -6
  212. package/server/record-t6V-3Dcj.js +3 -0
  213. package/server/{record-update-BlB8mpKO.js → record-update-DACtKh6_.js} +1 -1
  214. package/server/record-update-Dq0t2uBG.js +310 -0
  215. package/server/{recovery-trip-l1Hsi37x.js → recovery-trip-BJtIQuag.js} +2 -2
  216. package/server/{release-engine-CSI4K6Oj.js → release-engine-DZpmGGzb.js} +5 -5
  217. package/server/{release-set-BywwggrE.js → release-set-hnXd_kga.js} +3 -3
  218. package/server/{remote-DYziAkiZ.js → remote-4tiENDaI.js} +3 -3
  219. package/server/{remote-cnoeuDWn.js → remote-Br-ZWVIP.js} +3 -3
  220. package/server/{remote-agents-BNORDWAX.js → remote-agents-CRCg1L4H.js} +1 -1
  221. package/server/{remote-agents-CZ2rc8I0.js → remote-agents-nmty1mLu.js} +6 -6
  222. package/server/{remote-completion-W67FNQ-A.js → remote-completion-BbWNd10K.js} +13 -13
  223. package/server/resume-CcKqnTvE.js +3 -0
  224. package/server/{review-agent-CSswH985.js → review-agent-DJRO8EG8.js} +1 -1
  225. package/server/{review-agent-CqSqSHkU.js → review-agent-sKkE1FEL.js} +23 -23
  226. package/server/{review-artifacts-BBgnd5df.js → review-artifacts-BLbSC4ke.js} +5 -5
  227. package/server/{review-context-Ctp9BdNJ.js → review-context-BgX3lcCx.js} +9 -9
  228. package/server/{review-status-CCgPVK1h.js → review-status-A7quS5KJ.js} +56 -39
  229. package/server/review-status-C6n6-9f_.js +3 -0
  230. package/server/{review-status-enrichment-DtDRGpst.js → review-status-enrichment-tbOn_A_u.js} +3 -3
  231. package/server/review-status-source-CxuEjLGg.js +39 -0
  232. package/server/{review-status-sync-jnLgd04F.js → review-status-sync-BhSQ0d0l.js} +2 -2
  233. package/server/{review-status-sync-C792ksoJ.js → review-status-sync-To3-iS-N.js} +1 -1
  234. package/server/{review-verdict-feedback-D5lW0o3k.js → review-verdict-feedback-C1Kg8n7t.js} +1 -1
  235. package/server/{review-verdict-feedback-CMsIpTpy.js → review-verdict-feedback-CTRNtzXO.js} +7 -7
  236. package/server/{rollup-B3kQmNpl.js → rollup-B53Y81xK.js} +1 -1
  237. package/server/{rollup-CLj_AK9f.js → rollup-WA0VD-Rr.js} +8 -8
  238. package/server/{scanner-C4NeC4FE.js → scanner-D2743cp8.js} +11 -7
  239. package/server/{sequence-io-Ce-6grIY.js → sequence-io-Cg0zYj_E.js} +4 -4
  240. package/server/{sequencer-agent-Bpz0yGmG.js → sequencer-agent-BGY8gjg-.js} +5 -5
  241. package/server/server.js +1348 -963
  242. package/server/{service-CqAY8Kmk.js → service-DCpB_SGd.js} +154 -51
  243. package/server/{session-fork-uNo4rMRA.js → session-fork-BQ8_6H32.js} +2 -2
  244. package/server/{session-history-DUehL3KN.js → session-history-CVZDpS3c.js} +4 -4
  245. package/server/{settings-DP2OYLXL.js → settings-BZ5m1UCl.js} +3 -3
  246. package/server/settings-D0OSwos5.js +2 -0
  247. package/server/{settings-D9grjmaP.js → settings-ylxwqwQG.js} +2 -2
  248. package/server/{shadow-engineering-Bi_oIMtF.js → shadow-engineering-BlxG6Xye.js} +3 -3
  249. package/server/{shadow-state-CDxEuPlE.js → shadow-state-C2_epgx2.js} +1 -1
  250. package/server/{shadow-state-a_ztFBJe.js → shadow-state-Dh-HzF2J.js} +2 -2
  251. package/server/{shadow-utils-CyOg6_Xq.js → shadow-utils-4bvjn9b3.js} +2 -2
  252. package/server/{ship-log-DDcueaIR.js → ship-log-ClSMIzZX.js} +1 -1
  253. package/server/{smart-compaction-C1_VVLEd.js → smart-compaction-CHIxLr_d.js} +1 -1
  254. package/server/{smart-compaction--Oj65Uov.js → smart-compaction-r4pHQBIr.js} +7 -7
  255. package/server/{spawn-planning-session-AiUSsBnH.js → spawn-planning-session-DWAorh2B.js} +25 -20
  256. package/server/{spawn-planning-session-LFtK2QCE.js → spawn-planning-session-KC_UduxD.js} +1 -1
  257. package/server/{specialist-completion-qOgqdqXH.js → specialist-completion-BXhav38U.js} +1 -1
  258. package/server/{specialist-context-gjj8Z4Ii.js → specialist-context-DtrYvGJ-.js} +5 -5
  259. package/server/{specialist-handoff-logger-BsBNvVZv.js → specialist-handoff-logger-C45ouoZ6.js} +2 -2
  260. package/server/{specialist-logs-CSLtvPx6.js → specialist-logs-DJ3RzKxW.js} +3 -3
  261. package/server/{specialists-D0VBf8g_.js → specialists-D5fRZXmN.js} +1 -1
  262. package/server/specialists-DVj0hvaL.js +3 -0
  263. package/server/{specialists-CYRwELzc.js → specialists-DyFeedjn.js} +66 -76
  264. package/server/{specialists-DAegTvRt.js → specialists-JVO00bs7.js} +374 -220
  265. package/server/specs-nN45DG2X.js +3 -0
  266. package/server/{src-OLoJhUiJ.js → src-CG9mCkP6.js} +6 -6
  267. package/server/{src-BqTcrfO_.js → src-CMTQGyCK.js} +3 -3
  268. package/server/{src-Dpq1yFIl.js → src-U7_kTPEE.js} +338 -4
  269. package/server/{stack-health-I713ELld.js → stack-health-Df0YEZKa.js} +1 -1
  270. package/server/{stack-health-DV_f-lK0.js → stack-health-puygdaMd.js} +2 -2
  271. package/server/{stale-task-claims-CQSKZVq0.js → stale-task-claims-BbFwCTb0.js} +4 -4
  272. package/server/{staleness-BbsGxmF2.js → staleness-Bpy41ngS.js} +15 -3
  273. package/server/{staleness-zGp4P1hd.js → staleness-Cbl_w4Bw.js} +1 -1
  274. package/server/{state-home-DixkE-up.js → state-home-CIGjwNfJ.js} +119 -54
  275. package/server/state-migrate-Dkzaxvny.js +487 -0
  276. package/server/{stuck-remediation-BWkK_O7A.js → stuck-remediation-CzEov_fq.js} +27 -21
  277. package/server/{stuck-remediation-CTPRC2S5.js → stuck-remediation-sY_MHHgQ.js} +1 -1
  278. package/server/{substrate-bug-weights-service-DXd0ID83.js → substrate-bug-weights-service-BH66lhm7.js} +3 -3
  279. package/server/{summary-fork-CdLn8Chr.js → summary-fork-D8bXjCr7.js} +2 -2
  280. package/server/{summary-fork-f3DpgjXh.js → summary-fork-DHhJIsAL.js} +8 -8
  281. package/server/{supervisor-Ch8CDuoF.js → supervisor-BO-Zk_h-.js} +3 -3
  282. package/server/supervisor-BPy-o1A8.js +2 -0
  283. package/server/{swarm-readiness-C9P2iPap.js → swarm-readiness-CQ_fwUWF.js} +4 -4
  284. package/server/{system-prerequisites-DkoQBn1q.js → system-prerequisites-Bza0ffAh.js} +24 -44
  285. package/server/{teardown-workspace-D-5yMyit.js → teardown-workspace-CEgauF4U.js} +15 -15
  286. package/server/{test-agent-queue-BwpUpu-o.js → test-agent-queue-DXDt0Xa-.js} +7 -7
  287. package/server/{test-verdict-BRiSu7eW.js → test-verdict-CmUBK5cT.js} +1 -1
  288. package/server/{test-verdict-BQ1yx7d4.js → test-verdict-DFjjIHR5.js} +1 -1
  289. package/server/{tldr-daemon-DjxP5g6Y.js → tldr-daemon-BDtLOIlO.js} +2 -2
  290. package/server/{tldr-daemon-BJA7TkqS.js → tldr-daemon-DL566HbH.js} +1 -1
  291. package/server/tmux-DoThH6aj.js +3 -0
  292. package/server/{tmux-y1blSxks.js → tmux-ftABRAmc.js} +76 -44
  293. package/server/{token-LUrbM9sU.js → token-CsOhvw42.js} +2 -2
  294. package/server/{token-util-BZaDAQ8S.js → token-util-CTmczIfW.js} +1 -1
  295. package/server/token-util-DrHg8abn.js +3 -0
  296. package/server/{tracker-config-DSFZBdXP.js → tracker-config-B4itFzDo.js} +2 -2
  297. package/server/{tracker-utils-WtP_V-yn.js → tracker-utils-BePq_oj-.js} +1 -1
  298. package/server/{tracker-utils-DiceZN3a.js → tracker-utils-tnxxqROg.js} +2 -2
  299. package/server/{traefik-connect-BXqfOP4-.js → traefik-connect-m73vGebA.js} +1 -1
  300. package/server/{tunnel-DTng1rfQ.js → tunnel-B2vxjx_b.js} +3 -3
  301. package/server/{tunnel-WcJImbAC.js → tunnel-Cgj-IGIl.js} +1 -1
  302. package/server/{types-BjaZ1oqH.js → types-BBNjPcqU.js} +1 -1
  303. package/server/{types-DqeBMmJN.js → types-hraoaQIp.js} +1 -1
  304. package/server/{uat-train-BpLnp7Cx.js → uat-train-CuEn0t9M.js} +28 -28
  305. package/server/{uat-train-Wismge7h.js → uat-train-cKfM-_WW.js} +1 -1
  306. package/server/{validation-BA4e5EGm.js → validation-B5JxoPUS.js} +259 -9
  307. package/server/{validation-CUWamZ4X.js → validation-CIi6pnI2.js} +1 -1
  308. package/server/{verification-artifact-Dr_0g9nb.js → verification-artifact-BcnIbigL.js} +1 -1
  309. package/server/{verification-artifact-CrbI4tJE.js → verification-artifact-C-lIHfUa.js} +1 -1
  310. package/server/{verification-runner-gAzh3cVD.js → verification-runner-Br0S_Ous.js} +103 -37
  311. package/server/{verification-runner-Dcksl_P-.js → verification-runner-CDj4lD4t.js} +1 -1
  312. package/server/{vtt-parser-3VZKsmSm.js → vtt-parser-DKpNNW5i.js} +1 -1
  313. package/server/{work-agent-prompt-ULdcANl5.js → work-agent-prompt-Yb2bd3Fq.js} +16 -15
  314. package/server/{workflows-B8ROFlfw.js → workflows-C9WmILql.js} +39 -77
  315. package/server/workflows-D90rMOya.js +2 -0
  316. package/server/{workspace-DhTDA8nB.js → workspace-BVl4rihN.js} +3 -3
  317. package/server/{workspace-DSjUJaJN.js → workspace-DuUdndHe.js} +1 -1
  318. package/server/{workspace-config-BAAsAv-o.js → workspace-config-cEGcO6UT.js} +1 -1
  319. package/server/{workspace-manager-CcujONCR.js → workspace-manager-ZTdJAy9M.js} +1 -1
  320. package/server/{workspace-manager-DsN52IMG.js → workspace-manager-hLUv3ADC.js} +23 -16
  321. package/server/{workspace-metadata-DIL5_U4c.js → workspace-metadata-CskwzzhL.js} +2 -2
  322. package/server/{workspace-metadata-CftOpNLs.js → workspace-metadata-DNpMixRq.js} +1 -1
  323. package/server/{workspaces-Dmlh1YXm.js → workspaces-hWvy9eKs.js} +276 -110
  324. package/sync-sources/agents/pan-inspect-agent.md +1 -1
  325. package/sync-sources/agents/pan-merge-agent.md +1 -1
  326. package/sync-sources/agents/pan-planning-agent.md +4 -4
  327. package/sync-sources/agents/pan-work-agent.md +1 -1
  328. package/sync-sources/dev-skills/pan-commit/SKILL.md +1 -1
  329. package/sync-sources/dev-skills/test-specialist-workflow/SKILL.md +1 -1
  330. package/sync-sources/hooks/record-cost-event.js +363 -71
  331. package/sync-sources/hooks/session-start-hook +7 -0
  332. package/sync-sources/hooks/work-agent-stop-hook +1 -1
  333. package/sync-sources/rules/per-bead-durability.md +1 -1
  334. package/sync-sources/rules/prd-authoring.md +1 -1
  335. package/sync-sources/skills/feature-work/SKILL.md +1 -1
  336. package/sync-sources/skills/pan/SKILL.md +2 -2
  337. package/sync-sources/skills/pan-admin-config/SKILL.md +1 -0
  338. package/sync-sources/skills/pan-approve/SKILL.md +1 -1
  339. package/sync-sources/skills/pan-close/SKILL.md +1 -1
  340. package/sync-sources/skills/pan-doctor/SKILL.md +1 -1
  341. package/sync-sources/skills/pan-new-project/SKILL.md +9 -11
  342. package/sync-sources/skills/pan-oversee/SKILL.md +5 -5
  343. package/sync-sources/skills/pan-plan/SKILL.md +6 -6
  344. package/sync-sources/skills/pan-quickstart/SKILL.md +1 -1
  345. package/sync-sources/skills/pan-recap/SKILL.md +2 -2
  346. package/sync-sources/skills/pan-review/SKILL.md +1 -1
  347. package/sync-sources/skills/pan-start/SKILL.md +26 -3
  348. package/sync-sources/skills/pan-swarm/SKILL.md +1 -1
  349. package/sync-sources/skills/pan-sync/SKILL.md +1 -1
  350. package/sync-sources/skills/pan-task/SKILL.md +2 -2
  351. package/sync-sources/skills/pan-wipe/SKILL.md +2 -2
  352. package/sync-sources/skills/pipeline-list/SKILL.md +1 -1
  353. package/sync-sources/skills/pipeline-status/SKILL.md +2 -2
  354. package/sync-sources/skills/plan/SKILL.md +11 -11
  355. package/sync-sources/skills/write-vbrief/SKILL.md +7 -282
  356. package/sync-sources/skills/write-xbrief/SKILL.md +295 -0
  357. package/sync-sources/templates/claude-md/sections/warnings.md +1 -1
  358. package/server/agent-state-BV_6RHnO.js +0 -3
  359. package/server/agents-Czz6R57Z.js +0 -3
  360. package/server/cli-ChErG518.js +0 -3
  361. package/server/codex-BBeZ8c3s.js +0 -3
  362. package/server/deacon-swarm-uudlSCLM.js +0 -2
  363. package/server/dist-BEDL2alY.js +0 -3
  364. package/server/forge-DbhJyH6u.js +0 -2
  365. package/server/git-utils-Bkxzr1Xf.js +0 -129
  366. package/server/hume-BrA1tUuk.js +0 -3
  367. package/server/inspect-agent-CyXNo9fM.js +0 -2
  368. package/server/lifecycle-io-CUpsxG0p.js +0 -3
  369. package/server/merge-ops-BpTtuO8x.js +0 -2
  370. package/server/projects-IRHJIPYC.js +0 -3
  371. package/server/providers-BqCdTryq.js +0 -3
  372. package/server/public/assets/index-C6NLz_1S.css +0 -1
  373. package/server/public/assets/mermaid-GHXKKRXX-BNwFoQsf.js +0 -1
  374. package/server/rally-DGimSRBQ.js +0 -3
  375. package/server/reap-terminal-sessions-C1mfzoZo.js +0 -3
  376. package/server/record-update-RviRDSNs.js +0 -168
  377. package/server/record-us0YECMO.js +0 -3
  378. package/server/resume-OyN3dEXE.js +0 -3
  379. package/server/review-status-DXeqFpk5.js +0 -3
  380. package/server/settings-BaPXXJsT.js +0 -2
  381. package/server/specialists-C6WkeKFK.js +0 -3
  382. package/server/specs-BsNcum0h.js +0 -3
  383. package/server/state-migrate-_zJJ6XKE.js +0 -362
  384. package/server/supervisor-Qy1QecAs.js +0 -2
  385. package/server/tmux-HQLgwo_C.js +0 -3
  386. package/server/token-util-Cg-QnowA.js +0 -3
  387. package/server/workflows-C5c-RPsY.js +0 -2
@@ -1,27 +1,31 @@
1
- import { $n as resolveProjectFromIssueSync, At as init_record, It as readRecordContinueViewSync, Lt as resolveProjectForIssue, Or as init_errors, Rr as OVERDECK_HOME, ei as getOverdeckHome, kr as AGENTS_DIR, kt as getProjectConfigFromWorkspacePath, ti as init_paths, zn as init_projects } from "./config-yaml-Ciyp2mYe.js";
1
+ import { a as __toCommonJS } from "./rolldown-runtime-DNCzzKnI.js";
2
+ import { $ as derefWorkhorse, Br as getOverdeckHome, Dt as getProjectConfigFromWorkspacePath, Ft as resolveProjectForIssue, Ot as init_record, Pt as readRecordContinueViewSync, Tn as init_projects, Vr as init_paths, f as loadConfigSync, hr as AGENTS_DIR, mr as init_errors, t as init_config_yaml, wr as OVERDECK_HOME, zn as resolveProjectFromIssueSync } from "./config-yaml-DvyMuOle.js";
2
3
  import { a as init_activity_logger, n as emitActivityEntrySync } from "./activity-logger-DDlOIAML.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-DN2wSxle.js";
4
- import { D as killSession, H as sessionExistsSync, V as sessionExists, m as exactPaneTarget, w as init_tmux } from "./tmux-y1blSxks.js";
5
- import { c as init_review_status, u as loadReviewStatuses, y as setReviewStatusSync } from "./review-status-CCgPVK1h.js";
6
- import { n as init_issues, t as IssueId } from "./issues-XYtFMxrH.js";
7
- import { a as getAllBudgetsSync, i as deleteBudgetSync, n as checkBudgetSync, r as createBudgetSync, s as init_cost } from "./cost-Drm7qeD5.js";
8
- import { Dn as getAgentDir, F as isContextOverflowTail, Gn as saveAgentStateSync, N as init_context_overflow, X as spawnAgent, a as listRunningAgentsSync, br as parseOhmypiSessionCostResultSync, et as stopAgentSync, fr as saveAgentRuntimeState, jn as getAgentStateSync, kn as getAgentState, s as init_agents, ur as getAgentRuntimeStateSync, yr as init_ohmypi_parser } from "./queries-B5hl7lMQ.js";
9
- import { n as parseCodexSessionCostEventsSync, r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-BTzlOZiV.js";
10
- import { _ as init_tier_metrics, c as getDailyTrendsSync, d as init_cost_sync, h as deriveTieredAgentCostRole, t as getAgentDailyCostSync } from "./cost-sync-DzHP6zaR.js";
11
- import { m as readWorkspacePlanSync, o as init_io } from "./io-BiM-7Zsx.js";
12
- import { a as requireModelOverrideSync, r as init_model_validation } from "./launcher-generator-5DJRiovn.js";
13
- import { _ as setDeaconGloballyPaused, c as isCloisterSpawnsPausedSync, g as setCloisterSpawnsPausedSync, s as init_control_settings, x as setFlywheelGloballyPaused } from "./control-settings-D_79A6gp.js";
14
- import { n as checkHookSync, p as init_hooks } from "./hooks-CoNscX84.js";
15
- import { a as loadCloisterConfigSync, n as getHealthThresholdsMs, r as init_config } from "./config-G1TOMJZA.js";
16
- import { r as isRoleTerminal, t as init_reap_terminal_sessions } from "./reap-terminal-sessions-CjqRAGw7.js";
17
- import { o as getRuntimeForAgent } from "./stuck-remediation-BWkK_O7A.js";
18
- import "./flywheel-1Wd8WDlh.js";
19
- import { C as getLastPatrolResult, D as isDeaconRunning, N as runPatrol, R as startDeacon, S as getDeaconStatus, n as assessDeaconPatrolFreshness, x as getDeaconLogs, z as stopDeacon } from "./deacon-1s7bM5zn.js";
20
- import { n as renderPrompt, t as init_prompts } from "./prompts-CbqaVjbe.js";
21
- import { H as getTmuxSessionName, t as init_specialists } from "./specialists-CYRwELzc.js";
22
- import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-Dfw3QDyZ.js";
23
- import { n as shouldSkipDispatchAsMerged, t as init_merge_verification } from "./merge-verification-B3meGcXF.js";
24
- import { r as writeHealthEvent } from "./health-events-CZGZ5I-A.js";
4
+ 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-CzaSOgul.js";
5
+ import { D as killSession, H as sessionExists, U as sessionExistsSync, m as exactPaneTarget, w as init_tmux } from "./tmux-ftABRAmc.js";
6
+ import { b as setReviewStatusSync, d as loadReviewStatuses, l as init_review_status } from "./review-status-A7quS5KJ.js";
7
+ import { n as init_issues, t as IssueId } from "./issues-B6ToV6x1.js";
8
+ import { a as getAllBudgetsSync, i as deleteBudgetSync, n as checkBudgetSync, r as createBudgetSync, s as init_cost } from "./cost-Ca0YTWDw.js";
9
+ import { Bn as getAgentDir, Cr as getAgentRuntimeStateSync, Hn as getAgentState, J as isContextOverflowTail, K as init_context_overflow, Mr as init_ohmypi_parser, Nr as parseOhmypiSessionCostResultSync, Tr as saveAgentRuntimeState, Wn as getAgentStateSync, a as listRunningAgentsSync, b as init_agents, ir as saveAgentStateSync, lt as spawnAgent, pt as stopAgentSync } from "./queries-6d7Cdtm7.js";
10
+ import { n as parseCodexSessionCostEventsSync, r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-C4gSH-IR.js";
11
+ import { _ as init_tier_metrics, c as getDailyTrendsSync, d as init_cost_sync, h as deriveTieredAgentCostRole, t as getAgentDailyCostSync } from "./cost-sync-C0VdGme1.js";
12
+ import { n as init_issue_service_singleton, r as issue_service_singleton_exports } from "./issue-service-singleton-B5ushCvE.js";
13
+ import { r as isRoleTerminal } from "./review-status-source-CxuEjLGg.js";
14
+ import { m as readWorkspacePlanSync, o as init_io } from "./io-B3_AHDfr.js";
15
+ import { a as requireModelOverrideSync, r as init_model_validation } from "./launcher-generator-CHVm7bGT.js";
16
+ import { _ as setDeaconGloballyPaused, c as isCloisterSpawnsPausedSync, d as isFlywheelAutoPickupBacklog, g as setCloisterSpawnsPausedSync, s as init_control_settings, x as setFlywheelGloballyPaused } from "./control-settings-aP1ANIlI.js";
17
+ import { n as checkHookSync, p as init_hooks } from "./hooks-DUXw8A0-.js";
18
+ import { a as loadCloisterConfigSync, n as getHealthThresholdsMs, r as init_config } from "./config-DjLOdbgT.js";
19
+ import { t as init_reap_terminal_sessions } from "./reap-terminal-sessions-N3BTkmX_.js";
20
+ import { o as getRuntimeForAgent } from "./stuck-remediation-CzEov_fq.js";
21
+ import "./flywheel-DSSpWmqF.js";
22
+ import { B as recordDeadEndNeedsYou, C as getLastPatrolResult, D as isDeaconRunning, N as runPatrol, R as startDeacon, S as getDeaconStatus, St as deliverOrchestratedCompact, n as assessDeaconPatrolFreshness, x as getDeaconLogs, z as stopDeacon } from "./deacon-pRnyD5w9.js";
23
+ import { n as renderPrompt, t as init_prompts } from "./prompts-Dp4Tpk39.js";
24
+ import { U as getTmuxSessionName, t as init_specialists } from "./specialists-DyFeedjn.js";
25
+ import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-zhdvQicO.js";
26
+ import { n as shouldSkipDispatchAsMerged, t as init_merge_verification } from "./merge-verification-CSizH3HY.js";
27
+ import { m as init_pickup, n as LEGACY_PARKED_LABELS } from "./pickup-Dd0Znxxy.js";
28
+ import { r as writeHealthEvent } from "./health-events-C9B8y1Hm.js";
25
29
  import { join } from "node:path";
26
30
  import { Context, Data, Effect, Layer, Schema } from "effect";
27
31
  import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync, renameSync, statSync, unlinkSync, writeFileSync } from "fs";
@@ -39,6 +43,7 @@ init_errors();
39
43
  init_activity_logger();
40
44
  init_projects();
41
45
  init_record();
46
+ init_config_yaml();
42
47
  init_tmux();
43
48
  init_drizzle_orm();
44
49
  init_sqlite_core();
@@ -902,7 +907,7 @@ async function captureGitState(context, workspace) {
902
907
  }
903
908
  }
904
909
  /**
905
- * Capture merged vBRIEF task state.
910
+ * Capture merged xBRIEF task state.
906
911
  */
907
912
  function captureTasks(context, workspace) {
908
913
  try {
@@ -976,7 +981,7 @@ function serializeHandoffContext(context) {
976
981
  lines.push("");
977
982
  }
978
983
  if (context.continueState) {
979
- lines.push("## Current State (continue.vbrief.json)");
984
+ lines.push("## Current State (.overdeck/continue.json)");
980
985
  lines.push("");
981
986
  lines.push("```json");
982
987
  lines.push(JSON.stringify(context.continueState, null, 2));
@@ -1373,6 +1378,76 @@ function getCostSummary() {
1373
1378
  };
1374
1379
  }
1375
1380
  //#endregion
1381
+ //#region ../../lib/cloister/autonomous-plan-dispatch.ts
1382
+ init_agents();
1383
+ init_pickup();
1384
+ async function gatherAutonomousPlanDispatchInput(issueId) {
1385
+ const normalizedIssueId = issueId.trim().toUpperCase();
1386
+ const issueLower = normalizedIssueId.toLowerCase();
1387
+ let labels = null;
1388
+ try {
1389
+ const { getSharedIssueService } = (init_issue_service_singleton(), __toCommonJS(issue_service_singleton_exports));
1390
+ const issue = getSharedIssueService().getIssues().find((candidate) => typeof candidate["identifier"] === "string" && candidate["identifier"].toUpperCase() === normalizedIssueId);
1391
+ if (issue) labels = (Array.isArray(issue["labels"]) ? issue["labels"] : []).map((label) => typeof label === "string" ? label : label?.name ?? "").filter((label) => Boolean(label));
1392
+ } catch {}
1393
+ const currentState = await Effect.runPromise(getAgentState(`agent-${issueLower}-plan`));
1394
+ const legacyState = currentState?.model ? null : await Effect.runPromise(getAgentState(`planning-${issueLower}`));
1395
+ const config = loadConfigSync().config;
1396
+ return {
1397
+ autoPickupBacklog: isFlywheelAutoPickupBacklog(),
1398
+ labels,
1399
+ recordedModel: currentState?.model ?? legacyState?.model,
1400
+ autonomousModel: typeof config.roles?.plan?.autonomousModel === "string" ? config.roles.plan.autonomousModel : void 0,
1401
+ workhorses: config.workhorses
1402
+ };
1403
+ }
1404
+ function decideAutonomousPlanDispatch(input) {
1405
+ if (input.labels === null) return {
1406
+ allow: false,
1407
+ code: "labels-unavailable",
1408
+ reason: "Autonomous planning dispatch was refused because tracker labels are unavailable, so parked, vetoed, and objection state cannot be verified. Restore label access or run pan plan manually."
1409
+ };
1410
+ const labels = new Set(input.labels.map((label) => label.toLowerCase()));
1411
+ const hasLabel = (label) => labels.has(label);
1412
+ if (hasLabel("parked") || LEGACY_PARKED_LABELS.some(hasLabel)) return {
1413
+ allow: false,
1414
+ code: "parked",
1415
+ reason: "Autonomous planning dispatch was refused because the issue is parked. Remove the parked label before releasing the issue or enabling auto-pickup, then set roles.plan.autonomousModel; alternatively, run pan plan manually."
1416
+ };
1417
+ if (hasLabel("vetoed")) return {
1418
+ allow: false,
1419
+ code: "vetoed",
1420
+ reason: "Autonomous planning dispatch was refused because the issue is vetoed. Remove the veto before releasing the issue or enabling auto-pickup, then set roles.plan.autonomousModel; alternatively, run pan plan manually."
1421
+ };
1422
+ if (hasLabel("objection")) return {
1423
+ allow: false,
1424
+ code: "objection",
1425
+ reason: "Autonomous planning dispatch was refused because the issue has an open objection. Resolve the objection before releasing the issue or enabling auto-pickup, then set roles.plan.autonomousModel; alternatively, run pan plan manually."
1426
+ };
1427
+ if (!input.autoPickupBacklog && !hasLabel("released")) return {
1428
+ allow: false,
1429
+ code: "not-released",
1430
+ reason: "Autonomous planning dispatch was refused because the issue is not released and auto-pickup is disabled. Add the released label or enable auto-pickup, then set roles.plan.autonomousModel; alternatively, run pan plan manually."
1431
+ };
1432
+ if (input.recordedModel) return {
1433
+ allow: true,
1434
+ model: input.recordedModel,
1435
+ modelSource: "recorded"
1436
+ };
1437
+ if (input.autonomousModel) try {
1438
+ return {
1439
+ allow: true,
1440
+ model: derefWorkhorse(input.autonomousModel, { workhorses: input.workhorses }, "roles.plan.autonomousModel"),
1441
+ modelSource: "autonomousModel"
1442
+ };
1443
+ } catch {}
1444
+ return {
1445
+ allow: false,
1446
+ code: "no-autonomous-model",
1447
+ reason: "Autonomous planning dispatch was refused because no recorded planning model or valid roles.plan.autonomousModel is available. Set roles.plan.autonomousModel or run pan plan manually; the issue must also be released or auto-pickup must be enabled for autonomous dispatch."
1448
+ };
1449
+ }
1450
+ //#endregion
1376
1451
  //#region ../../lib/cloister/service-reactive.ts
1377
1452
  /** Cloister reactive lifecycle scheduler. */
1378
1453
  init_agents();
@@ -1520,7 +1595,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1520
1595
  });
1521
1596
  return;
1522
1597
  }
1523
- const { getReviewStatusSync } = await import("./review-status-DXeqFpk5.js");
1598
+ const { getReviewStatusSync } = await import("./review-status-C6n6-9f_.js");
1524
1599
  if (getReviewStatusSync(normalizedIssueId)?.mergeStatus === "merged") {
1525
1600
  const message = `${normalizedIssueId}: skipping ${role} dispatch — merge already landed (merge_status='merged' is terminal)`;
1526
1601
  console.log(`[cloister] ${message}`);
@@ -1587,7 +1662,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1587
1662
  return;
1588
1663
  }
1589
1664
  const branch = `feature/${normalizedIssueId.toLowerCase()}`;
1590
- const { spawnReviewRoleForIssue } = await import("./review-agent-CSswH985.js");
1665
+ const { spawnReviewRoleForIssue } = await import("./review-agent-DJRO8EG8.js");
1591
1666
  const result = await Effect.runPromise(spawnReviewRoleForIssue({
1592
1667
  issueId: normalizedIssueId,
1593
1668
  workspace,
@@ -1605,7 +1680,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1605
1680
  }
1606
1681
  if (role === "test") {
1607
1682
  const branch = `feature/${normalizedIssueId.toLowerCase()}`;
1608
- const { dispatchTestAgentAndNotify } = await import("./test-agent-queue-BwpUpu-o.js");
1683
+ const { dispatchTestAgentAndNotify } = await import("./test-agent-queue-DXDt0Xa-.js");
1609
1684
  await Effect.runPromise(dispatchTestAgentAndNotify(normalizedIssueId, workspace ?? void 0, branch));
1610
1685
  const message = `${normalizedIssueId}: test role dispatched from lifecycle state '${newState}'`;
1611
1686
  console.log(`[cloister] ${message}`);
@@ -1617,7 +1692,34 @@ async function onIssueStateChangePromise(issueId, newState) {
1617
1692
  });
1618
1693
  return;
1619
1694
  }
1620
- const { spawnRun } = await import("./agents-Czz6R57Z.js");
1695
+ const { spawnRun } = await import("./agents-FlIgQ3ql.js");
1696
+ if (role === "plan") {
1697
+ const decision = decideAutonomousPlanDispatch(await gatherAutonomousPlanDispatchInput(normalizedIssueId));
1698
+ if (!decision.allow) {
1699
+ const message = `${normalizedIssueId}: ${decision.reason}`;
1700
+ console.log(`[cloister] ${message}`);
1701
+ emitActivityEntrySync({
1702
+ source: "cloister",
1703
+ level: "warn",
1704
+ message,
1705
+ issueId: normalizedIssueId
1706
+ });
1707
+ await recordDeadEndNeedsYou(normalizedIssueId, "autonomous-plan-dispatch", newState, message);
1708
+ return;
1709
+ }
1710
+ const message = `${normalizedIssueId}: ${role} role started from lifecycle state '${newState}' as ${(await spawnRun(normalizedIssueId, "plan", {
1711
+ prompt: buildReactiveRolePrompt(normalizedIssueId, newState, "plan"),
1712
+ model: decision.model
1713
+ })).id}`;
1714
+ console.log(`[cloister] ${message}`);
1715
+ emitActivityEntrySync({
1716
+ source: "cloister",
1717
+ level: "info",
1718
+ message,
1719
+ issueId: normalizedIssueId
1720
+ });
1721
+ return;
1722
+ }
1621
1723
  const message = `${normalizedIssueId}: ${role} role started from lifecycle state '${newState}' as ${(await spawnRun(normalizedIssueId, role, { prompt: buildReactiveRolePrompt(normalizedIssueId, newState, role) })).id}`;
1622
1724
  console.log(`[cloister] ${message}`);
1623
1725
  emitActivityEntrySync({
@@ -1695,27 +1797,27 @@ async function handleCloisterDomainEventPromise(event) {
1695
1797
  if (event.type === "agent.stopped") {
1696
1798
  const agentId = event.payload?.agentId;
1697
1799
  if (agentId) {
1698
- const { handleAgentStoppedEvent, handleAgentStoppedForOrphanReviewerSessions } = await import("./deacon-pleYrvIm.js");
1699
- const { handleAgentLifecycleEventForIdleStack } = await import("./idle-stack-reaper-5DVRoY6P.js");
1800
+ const { handleAgentStoppedEvent, handleAgentStoppedForOrphanReviewerSessions } = await import("./deacon-DYSEJb48.js");
1801
+ const { handleAgentLifecycleEventForIdleStack } = await import("./idle-stack-reaper-D7w9t3fE.js");
1700
1802
  handleAgentLifecycleEventForIdleStack(agentId);
1701
1803
  const slotMatch = /^agent-(.+)-slot-\d+$/.exec(agentId);
1702
1804
  await Promise.all([
1703
1805
  handleAgentStoppedEvent(agentId),
1704
1806
  handleAgentStoppedForOrphanReviewerSessions(agentId),
1705
- slotMatch ? (await import("./deacon-swarm-uudlSCLM.js")).coordinateSwarmSlots({ issueId: slotMatch[1].toUpperCase() }) : Promise.resolve([])
1807
+ slotMatch ? (await import("./deacon-swarm-9jRLS5Ke.js")).coordinateSwarmSlots({ issueId: slotMatch[1].toUpperCase() }) : Promise.resolve([])
1706
1808
  ]);
1707
1809
  }
1708
1810
  return;
1709
1811
  }
1710
1812
  if (event.type === "agent.started") {
1711
1813
  const agentId = event.payload?.agentId;
1712
- if (agentId) (await import("./idle-stack-reaper-5DVRoY6P.js")).handleAgentLifecycleEventForIdleStack(agentId);
1814
+ if (agentId) (await import("./idle-stack-reaper-D7w9t3fE.js")).handleAgentLifecycleEventForIdleStack(agentId);
1713
1815
  return;
1714
1816
  }
1715
1817
  if (event.type === "agent.heartbeat_dead") {
1716
1818
  const agentId = event.payload?.agentId;
1717
1819
  if (agentId) {
1718
- const { handleAgentHeartbeatDeadEvent } = await import("./deacon-pleYrvIm.js");
1820
+ const { handleAgentHeartbeatDeadEvent } = await import("./deacon-DYSEJb48.js");
1719
1821
  await handleAgentHeartbeatDeadEvent(agentId, "event");
1720
1822
  }
1721
1823
  return;
@@ -1724,7 +1826,7 @@ async function handleCloisterDomainEventPromise(event) {
1724
1826
  const payload = event.payload;
1725
1827
  const issueId = payload?.issueId;
1726
1828
  if (issueId) {
1727
- const { handleReviewCoordinatorDied } = await import("./deacon-pleYrvIm.js");
1829
+ const { handleReviewCoordinatorDied } = await import("./deacon-DYSEJb48.js");
1728
1830
  await handleReviewCoordinatorDied(issueId, payload?.sessionName ?? "", payload?.reason ?? "");
1729
1831
  }
1730
1832
  return;
@@ -1732,7 +1834,7 @@ async function handleCloisterDomainEventPromise(event) {
1732
1834
  if (event.type === "work.completed") {
1733
1835
  const issueId = event.payload?.issueId;
1734
1836
  if (issueId) {
1735
- const { handleWorkCompleted } = await import("./deacon-pleYrvIm.js");
1837
+ const { handleWorkCompleted } = await import("./deacon-DYSEJb48.js");
1736
1838
  await handleWorkCompleted(issueId);
1737
1839
  }
1738
1840
  }
@@ -1743,12 +1845,12 @@ async function handleCloisterDomainEventPromise(event) {
1743
1845
  const status = payload?.status?.toLowerCase();
1744
1846
  if (issueId) {
1745
1847
  if (canonicalStatus === "closed" || status === "closed") {
1746
- const { handleIssueStatusChangedClosed } = await import("./closed-issue-reaper-BhV-r-tC.js");
1848
+ const { handleIssueStatusChangedClosed } = await import("./closed-issue-reaper-CWpY2uBw.js");
1747
1849
  await handleIssueStatusChangedClosed(issueId);
1748
1850
  return;
1749
1851
  }
1750
1852
  if (canonicalStatus === "todo" || status === "planned" || status === "todo") {
1751
- const { handleOrphanProposedSpec } = await import("./orphan-proposed-reconciler-CAfuWTA1.js");
1853
+ const { handleOrphanProposedSpec } = await import("./orphan-proposed-reconciler-BTkDrl4R.js");
1752
1854
  await handleOrphanProposedSpec(issueId);
1753
1855
  }
1754
1856
  }
@@ -2446,7 +2548,7 @@ async function performHealthCheck(host) {
2446
2548
  for (const health of needsAttention) {
2447
2549
  const idleAgentState = getAgentStateSync(health.agentId);
2448
2550
  if (idleAgentState?.role === "sequencer") continue;
2449
- const { shouldSkipIdlePokeForAgent } = await import("./stuck-remediation-CTPRC2S5.js");
2551
+ const { shouldSkipIdlePokeForAgent } = await import("./stuck-remediation-sY_MHHgQ.js");
2450
2552
  if (shouldSkipIdlePokeForAgent(idleAgentState)) {
2451
2553
  host.pokeProgress.delete(health.agentId);
2452
2554
  continue;
@@ -2693,7 +2795,7 @@ async function checkCompletionMarkers(host) {
2693
2795
  if (retryCount === Infinity) host.processedCompletions.delete(dir.name);
2694
2796
  else if (retryCount >= 3) continue;
2695
2797
  const issueId = dir.name.replace("agent-", "").toUpperCase();
2696
- const { getReviewStatusSync } = await import("./review-status-DXeqFpk5.js");
2798
+ const { getReviewStatusSync } = await import("./review-status-C6n6-9f_.js");
2697
2799
  const existingReview = getReviewStatusSync(issueId);
2698
2800
  if (existingReview && ["reviewing", "passed"].includes(existingReview.reviewStatus || "")) {
2699
2801
  console.log(`🔔 Cloister: Completion marker for ${issueId} — review already ${existingReview.reviewStatus}, marking processed`);
@@ -2761,6 +2863,7 @@ async function checkCompletionMarkers(host) {
2761
2863
  /** Cloister crash recovery and poke escalation seam. */
2762
2864
  init_context_overflow();
2763
2865
  init_agents();
2866
+ init_control_settings();
2764
2867
  init_tmux();
2765
2868
  init_reap_terminal_sessions();
2766
2869
  const execAsync = promisify(exec);
@@ -2847,7 +2950,7 @@ async function pokeAgentWithEscalation(host, agentId) {
2847
2950
  ineffective
2848
2951
  });
2849
2952
  if (ineffective >= 4) {
2850
- const { setAgentPausedSync } = await import("./agent-state-BV_6RHnO.js");
2953
+ const { setAgentPausedSync } = await import("./agent-state-Bg0lhqwj.js");
2851
2954
  try {
2852
2955
  setAgentPausedSync(agentId, `needs-you: idle-alive — no observable progress across ${ineffective + 1} pokes (idle-alive escalation)`);
2853
2956
  host.emit({
@@ -2880,9 +2983,9 @@ async function pokeAgentWithEscalation(host, agentId) {
2880
2983
  if (isContextOverflowTail(tail)) {
2881
2984
  pokeMessage = "/compact";
2882
2985
  console.log(`🔔 ${agentId}: overflow tail detected — delivering /compact instead of a poke`);
2883
- } else pokeMessage = "You appear active but have made no observable progress (no new commits, unchanged output) across multiple checks. Do exactly one of: (1) work is done — commit, push, and run pan done; (2) blocked — state the blocker in one sentence and commit what you have as WIP; (3) lost context — re-read your vBRIEF item (`pan task show`), your latest .pan/feedback/ file, and git status, then resume. Act now.";
2986
+ } else pokeMessage = "You appear active but have made no observable progress (no new commits, unchanged output) across multiple checks. Do exactly one of: (1) work is done — commit, push, and run pan done; (2) blocked — state the blocker in one sentence and commit what you have as WIP; (3) lost context — re-read your xBRIEF item (`pan task show`), your latest .pan/feedback/ file, and git status, then resume. Act now.";
2884
2987
  }
2885
- await Promise.resolve(runtime.sendMessage(agentId, pokeMessage)).catch((sendErr) => {
2988
+ await (pokeMessage === "/compact" ? deliverOrchestratedCompact(agentId, () => Promise.resolve(runtime.sendMessage(agentId, pokeMessage))) : Promise.resolve(runtime.sendMessage(agentId, pokeMessage))).catch((sendErr) => {
2886
2989
  console.error(`Failed to send poke to ${agentId}:`, sendErr);
2887
2990
  });
2888
2991
  host.emit({
@@ -2938,7 +3041,7 @@ async function handleAgentCrash(host, agentId) {
2938
3041
  if (skipReason) {
2939
3042
  let recoverUnfinishedOneShot = false;
2940
3043
  if (ONE_SHOT_ROLES.has(agentState.role) && agentState.sessionId && agentState.issueId) try {
2941
- const { getReviewStatusSync } = await import("./review-status-DXeqFpk5.js");
3044
+ const { getReviewStatusSync } = await import("./review-status-C6n6-9f_.js");
2942
3045
  const status = getReviewStatusSync(agentState.issueId);
2943
3046
  recoverUnfinishedOneShot = !(status ? isRoleTerminal(agentState.role, {
2944
3047
  reviewStatus: status.reviewStatus,
@@ -3374,7 +3477,7 @@ var CloisterService = class {
3374
3477
  let clearedSpecialistCount = 0;
3375
3478
  try {
3376
3479
  if (existsSync(AGENTS_DIR)) {
3377
- const { isRunning: isSpecialistRunning } = await import("./specialists-C6WkeKFK.js");
3480
+ const { isRunning: isSpecialistRunning } = await import("./specialists-DVj0hvaL.js");
3378
3481
  const entries = readdirSync(AGENTS_DIR, { withFileTypes: true });
3379
3482
  for (const entry of entries) {
3380
3483
  if (!entry.isDirectory()) continue;
@@ -3409,8 +3512,8 @@ var CloisterService = class {
3409
3512
  }
3410
3513
  try {
3411
3514
  const reviewStatuses = loadReviewStatuses();
3412
- const { resolveProjectFromIssueSync } = await import("./projects-IRHJIPYC.js");
3413
- const { getTmuxSessionName, getAllProjectSpecialistStatuses } = await import("./specialists-C6WkeKFK.js");
3515
+ const { resolveProjectFromIssueSync } = await import("./projects-9SkRpES9.js");
3516
+ const { getTmuxSessionName, getAllProjectSpecialistStatuses } = await import("./specialists-DVj0hvaL.js");
3414
3517
  const activeReviewIssues = /* @__PURE__ */ new Set();
3415
3518
  try {
3416
3519
  const projSpecs = await getAllProjectSpecialistStatuses();
@@ -3421,7 +3524,7 @@ var CloisterService = class {
3421
3524
  }
3422
3525
  const globalRs = getAgentRuntimeStateSync(getTmuxSessionName("review-agent"));
3423
3526
  if (globalRs?.state === "active" && globalRs.currentIssue) activeReviewIssues.add(globalRs.currentIssue.toUpperCase());
3424
- const { listRunningAgents } = await import("./agents-Czz6R57Z.js");
3527
+ const { listRunningAgents } = await import("./agents-FlIgQ3ql.js");
3425
3528
  const agents = await Effect.runPromise(listRunningAgents());
3426
3529
  for (const agent of agents) {
3427
3530
  if (agent.status === "stopped" || agent.status === "error") continue;
@@ -3464,7 +3567,7 @@ var CloisterService = class {
3464
3567
  continue;
3465
3568
  }
3466
3569
  const branch = `feature/${issueId.toLowerCase()}`;
3467
- const { spawnReviewRoleForIssue } = await import("./review-agent-CSswH985.js");
3570
+ const { spawnReviewRoleForIssue } = await import("./review-agent-DJRO8EG8.js");
3468
3571
  const dispatchResult = await Effect.runPromise(spawnReviewRoleForIssue({
3469
3572
  issueId,
3470
3573
  workspace,
@@ -3552,7 +3655,7 @@ var CloisterService = class {
3552
3655
  console.log(" ✓ Cloister event store provider installed");
3553
3656
  return;
3554
3657
  }
3555
- const { initEventStore } = await import("./event-store-DABarGNz.js");
3658
+ const { initEventStore } = await import("./event-store-Cr5PQwFC.js");
3556
3659
  const store = await initEventStore();
3557
3660
  this.eventStore = store;
3558
3661
  this.domainEventUnsubscribe = store.subscribe((event) => {
@@ -3902,4 +4005,4 @@ function getCloisterService() {
3902
4005
  //#endregion
3903
4006
  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 };
3904
4007
 
3905
- //# sourceMappingURL=service-CqAY8Kmk.js.map
4008
+ //# sourceMappingURL=service-DCpB_SGd.js.map
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { qr as encodeClaudeProjectDir, ti as init_paths } from "./config-yaml-Ciyp2mYe.js";
2
+ import { Nr as encodeClaudeProjectDir, Vr as init_paths } from "./config-yaml-DvyMuOle.js";
3
3
  import { join } from "node:path";
4
4
  import { mkdir, readFile, writeFile } from "node:fs/promises";
5
5
  import { randomUUID } from "node:crypto";
@@ -96,4 +96,4 @@ __esmMin((() => {
96
96
  }))();
97
97
  export { copySessionForFork, reserveForkSession };
98
98
 
99
- //# sourceMappingURL=session-fork-uNo4rMRA.js.map
99
+ //# sourceMappingURL=session-fork-BQ8_6H32.js.map
@@ -1,7 +1,7 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { ei as getOverdeckHome, ti as init_paths } from "./config-yaml-Ciyp2mYe.js";
3
- import { a as getHarnessBehavior } from "./src-Dpq1yFIl.js";
4
- import { t as init_behavior } from "./behavior-Dg-D8eBG.js";
2
+ import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-DvyMuOle.js";
3
+ import { o as getHarnessBehavior } from "./src-U7_kTPEE.js";
4
+ import { t as init_behavior } from "./behavior-B_-4EKF3.js";
5
5
  import { Effect } from "effect";
6
6
  import { appendFileSync, existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
7
7
  import { join } from "path";
@@ -165,4 +165,4 @@ var init_session_history = __esmMin((() => {
165
165
  //#endregion
166
166
  export { persistCurrentSessionId as a, logDeaconEventSync as c, isAgentStateServiceInProcess as d, markAgentStateServiceInProcess as f, logLauncherSessionPinned as i, getRuntimeSnapshot as l, createFreshSessionIdentity as n, init_persistent_logger as o, setAgentRuntimeMirror as p, init_session_history as r, logAgentLifecycleSync as s, appendSessionIdToHistory as t, init_agent_runtime_mirror as u };
167
167
 
168
- //# sourceMappingURL=session-history-DUehL3KN.js.map
168
+ //# sourceMappingURL=session-history-CVZDpS3c.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-Ciyp2mYe.js";
3
- import { n as isBackgroundFeatureEnabled, t as init_features } from "./features--fOza5g5.js";
2
+ import { h as jsYaml, m as init_js_yaml, o as getGlobalConfigPath, t as init_config_yaml } from "./config-yaml-DvyMuOle.js";
3
+ import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-Dhxz-wLc.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-DP2OYLXL.js.map
104
+ //# sourceMappingURL=settings-BZ5m1UCl.js.map
@@ -0,0 +1,2 @@
1
+ import { t as getAgentCommandSync } from "./settings-ylxwqwQG.js";
2
+ export { getAgentCommandSync };
@@ -1,4 +1,4 @@
1
- import { Or as init_errors, ti as init_paths } from "./config-yaml-Ciyp2mYe.js";
1
+ import { Vr as init_paths, mr as init_errors } from "./config-yaml-DvyMuOle.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-D9grjmaP.js.map
48
+ //# sourceMappingURL=settings-ylxwqwQG.js.map
@@ -1,5 +1,5 @@
1
- import { a as PAN_DIRNAME } from "./types-DqeBMmJN.js";
2
- import { t as init_pan_dir } from "./pan-dir-Rw17YjT1.js";
1
+ import { a as PAN_DIRNAME } from "./types-hraoaQIp.js";
2
+ import { t as init_pan_dir } from "./pan-dir-DeVUgwA7.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-Bi_oIMtF.js.map
224
+ //# sourceMappingURL=shadow-engineering-BlxG6Xye.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-a_ztFBJe.js";
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-Dh-HzF2J.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 { ei as getOverdeckHome, ti as init_paths } from "./config-yaml-Ciyp2mYe.js";
2
+ import { Br as getOverdeckHome, Vr as init_paths } from "./config-yaml-DvyMuOle.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-a_ztFBJe.js.map
290
+ //# sourceMappingURL=shadow-state-Dh-HzF2J.js.map
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Or as init_errors, vr as FsError } from "./config-yaml-Ciyp2mYe.js";
2
+ import { ir as FsError, mr as init_errors } from "./config-yaml-DvyMuOle.js";
3
3
  import { Effect } from "effect";
4
4
  import { existsSync, readFileSync } from "fs";
5
5
  import { join } from "path";
@@ -36,4 +36,4 @@ var init_shadow_utils = __esmMin((() => {
36
36
  //#endregion
37
37
  export { init_shadow_utils as n, getLinearApiKey as t };
38
38
 
39
- //# sourceMappingURL=shadow-utils-CyOg6_Xq.js.map
39
+ //# sourceMappingURL=shadow-utils-4bvjn9b3.js.map
@@ -36,4 +36,4 @@ function getShipLog(issueId) {
36
36
  //#endregion
37
37
  export { appendShipLog, beginShipLog, getShipLog };
38
38
 
39
- //# sourceMappingURL=ship-log-DDcueaIR.js.map
39
+ //# sourceMappingURL=ship-log-ClSMIzZX.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--Oj65Uov.js";
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-r4pHQBIr.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 { Or as init_errors, vr as FsError, wr as ProcessSpawnError } from "./config-yaml-Ciyp2mYe.js";
3
- import { a as getHarnessBehavior } from "./src-Dpq1yFIl.js";
4
- import { N as init_context_overflow, P as isContextOverflowError, in as buildSpawnEnvForModel, on as getProviderEnvForModel, s as init_agents } from "./queries-B5hl7lMQ.js";
5
- import { t as init_behavior } from "./behavior-Dg-D8eBG.js";
6
- import { a as init_claude_permissions, i as getClaudePermissionFlagsSync } from "./claude-permissions-C2OrLYKL.js";
7
- import { n as recordBackgroundAiCost, t as init_cost } from "./cost-jJ2cgDcG.js";
2
+ import { ir as FsError, mr as init_errors, ur as ProcessSpawnError } from "./config-yaml-DvyMuOle.js";
3
+ import { o as getHarnessBehavior } from "./src-U7_kTPEE.js";
4
+ import { K as init_context_overflow, _n as buildSpawnEnvForModel, b as init_agents, q as isContextOverflowError, yn as getProviderEnvForModel } from "./queries-6d7Cdtm7.js";
5
+ import { t as init_behavior } from "./behavior-B_-4EKF3.js";
6
+ import { a as init_claude_permissions, i as getClaudePermissionFlagsSync } from "./claude-permissions-H_5wHQZQ.js";
7
+ import { n as recordBackgroundAiCost, t as init_cost } from "./cost-CW4WSe72.js";
8
8
  import { join } from "node:path";
9
9
  import { Effect } from "effect";
10
10
  import { tmpdir } from "node:os";
@@ -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--Oj65Uov.js.map
853
+ //# sourceMappingURL=smart-compaction-r4pHQBIr.js.map