@overdeck/desktop 0.45.15 → 0.45.16

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 (331) hide show
  1. package/package.json +1 -1
  2. package/server/{acceptance-criteria-DHZk2ceV.js → acceptance-criteria-BZ_nQS1f.js} +2 -2
  3. package/server/{advancing-selfheal-CSuZ31bB.js → advancing-selfheal-DJYAvGv-.js} +6 -5
  4. package/server/{agent-gc-D_DxfBHR.js → agent-gc-D0wDIeV1.js} +3 -3
  5. package/server/{agent-state-EP2QFV9n.js → agent-state-lGvgPP4m.js} +1 -1
  6. package/server/{agent-state-service-C_2ZAQRP.js → agent-state-service-CZrayD_G.js} +1 -1
  7. package/server/{agent-state-service-BZkvgQf4.js → agent-state-service-DFslS5go.js} +9 -52
  8. package/server/{agents-CsOzAmRg.js → agents-B9GwfCyp.js} +99 -140
  9. package/server/{agents-DCvyTXNU.js → agents-CEcaxSkR.js} +1 -1
  10. package/server/{archive-planning-DkivCk1A.js → archive-planning-CbghE9-o.js} +5 -5
  11. package/server/{archive-planning-CTILQRnV.js → archive-planning-CoyIbgGK.js} +1 -1
  12. package/server/{artifact-index-jobs-CmsvQ1ey.js → artifact-index-jobs-CcSrUoSE.js} +2 -2
  13. package/server/{auto-commit-QAfsu3Sb.js → auto-commit-IW-eik_b.js} +1 -1
  14. package/server/{backlog-auto-trigger-ueRaT8Dy.js → backlog-auto-trigger-BfgDsII0.js} +3 -3
  15. package/server/{bd-process-lock-D3S4T4o-.js → bd-process-lock-XAXAet9O.js} +2 -2
  16. package/server/{beads-CYsLiyIM.js → beads-B1u04n3o.js} +1 -1
  17. package/server/{beads-BGGxrkZ5.js → beads-BeSMEjGT.js} +7 -7
  18. package/server/{beads-query-B1DlJVp9.js → beads-query-Dl4FhT8J.js} +2 -2
  19. package/server/{beads-restore-CyygSmmn.js → beads-restore-BUItPOjI.js} +2 -2
  20. package/server/behavior-BTpYbAv4.js +10 -0
  21. package/server/{briefing-freshness-Kh5V8RTh.js → briefing-freshness-DESTCWo-.js} +4 -4
  22. package/server/{checkpoint-manager-fu9oVsR-.js → checkpoint-manager-BwFdegJF.js} +2 -2
  23. package/server/{checkpoint-manager-CAFos8e1.js → checkpoint-manager-DWSXooZV.js} +1 -1
  24. package/server/checkpoint-worker.js +1 -1
  25. package/server/{checkpoints-1BqOlS4q.js → checkpoints-BtUonbs3.js} +2 -2
  26. package/server/{checkpoints-DvhGi8P_.js → checkpoints-fjadfOKF.js} +1 -1
  27. package/server/{claude-hooks-provision-s_wdpeVj.js → claude-hooks-provision-DAtxutOs.js} +132 -114
  28. package/server/claude-hooks-provision-DiK62u0k.js +3 -0
  29. package/server/{claude-permissions-CaWqysff.js → claude-permissions-CThLgf8d.js} +2 -2
  30. package/server/{claude-settings-overlay-CcTf0xzG.js → claude-settings-overlay-BF9MPIwx.js} +2 -2
  31. package/server/{claude-settings-overlay-BbA4FbVI.js → claude-settings-overlay-Dx_Uqcmv.js} +1 -1
  32. package/server/{cli-BwCvCUBK.js → cli-ByKIIMfT.js} +9 -9
  33. package/server/cli-D9cUTbBr.js +3 -0
  34. package/server/{cliproxy-BsoNNDAj.js → cliproxy-B4c1BUvs.js} +2 -2
  35. package/server/{cliproxy-C2xC-3vH.js → cliproxy-C_GuT5DU.js} +1 -1
  36. package/server/{close-issue-BleIwP3f.js → close-issue-BOuLKr6e.js} +5 -5
  37. package/server/{closed-issue-reaper-BwUUvjEW.js → closed-issue-reaper-CksfuiFD.js} +1 -1
  38. package/server/{closed-issue-reaper-mC5pujeb.js → closed-issue-reaper-DCAYzNXW.js} +9 -9
  39. package/server/{codex-B7DTpwEw.js → codex-BYPz6ZdF.js} +1 -1
  40. package/server/{codex-DW60_5j2.js → codex-BbqIRZjd.js} +6 -5
  41. package/server/{behavior-Cpj03N4v.js → codex-parser-mFYZh8vR.js} +3 -9
  42. package/server/{compact-beads-DKL54y6j.js → compact-beads-CyJtoXJi.js} +5 -5
  43. package/server/{compact-beads-CK_hHEnB.js → compact-beads-N00E4EVa.js} +1 -1
  44. package/server/{config-ZNnMpIlh.js → config-DVLdmnMJ.js} +2 -2
  45. package/server/{config-BRNQJXhA.js → config-Dj6N8EP9.js} +1 -1
  46. package/server/{config-yaml-Dcz-8uit.js → config-yaml-cNOZcEww.js} +91 -22
  47. package/server/{conflict-gate-DTje2Ll7.js → conflict-gate-BMKm_5DV.js} +3 -3
  48. package/server/{conflict-gate-DGT8jCLp.js → conflict-gate-CuXUv-bP.js} +1 -1
  49. package/server/{context-layers-ByOWUjUg.js → context-layers-CeAwSYNt.js} +2 -2
  50. package/server/{context-layers-BdUCQ-cl.js → context-layers-c0JqYHcS.js} +3 -3
  51. package/server/{control-settings-DwkAeooY.js → control-settings-D4EFsRBd.js} +4 -4
  52. package/server/{conversation-compaction-OTYgd6eg.js → conversation-compaction-BCggyih4.js} +8 -8
  53. package/server/{conversation-compaction-WYQZUVDm.js → conversation-compaction-kHVfVRg3.js} +1 -1
  54. package/server/{conversation-service-BR1OgvxO.js → conversation-service-B8LFQQm1.js} +6 -5
  55. package/server/{conversation-service-C_kNZPLx.js → conversation-service-BTzObqGi.js} +1 -1
  56. package/server/{conversations-DG2M8WnT.js → conversations-B-lcHv-5.js} +4 -4
  57. package/server/{conversations-izHvSoAR.js → conversations-BM7zlXjr.js} +1 -1
  58. package/server/{cost-B2mj17iG.js → cost-BcpRQ-7o.js} +3 -3
  59. package/server/{cost-DQ2ajr_m.js → cost-D9kPIY_5.js} +2 -2
  60. package/server/{cost-sync-gTayEuWP.js → cost-sync-DF6odxK9.js} +3 -3
  61. package/server/{dag-CqTehWpY.js → dag-DKI3sOmX.js} +3 -3
  62. package/server/{dangerous-git-ops-DDWQlPC3.js → dangerous-git-ops-Bn18PEcN.js} +1 -1
  63. package/server/dashboard-db-worker.js +6 -6
  64. package/server/{deacon-BqW9HMew.js → deacon-DONuopff.js} +3 -3
  65. package/server/{deacon-DrKDBeJL.js → deacon-DdARMjZq.js} +127 -107
  66. package/server/{deacon-nudge-log-D1wEK6zF.js → deacon-nudge-log-B-naf89q.js} +1 -1
  67. package/server/{deacon-swarm-CO_A7xyd.js → deacon-swarm-BNGkmYR_.js} +11 -11
  68. package/server/deacon-swarm-CvdFekIO.js +2 -0
  69. package/server/deacon.js +7 -7
  70. package/server/{devcontainer-renderer-BQolp_qZ.js → devcontainer-renderer-C-34Sxyz.js} +3 -3
  71. package/server/{dist-Bc32rWJB.js → dist-BMXvKiZP.js} +1 -1
  72. package/server/dist-BNwrgsUO.js +3 -0
  73. package/server/{dist-src-Byxt1ifL.js → dist-src-BgGUblXg.js} +1 -1
  74. package/server/{docker-s-esqZ__.js → docker-apZ9pBYw.js} +2 -2
  75. package/server/{ensure-devcontainer-DA4-jF6R.js → ensure-devcontainer-Bqi1EF1P.js} +4 -4
  76. package/server/{ensure-devcontainer-pUVaT0h3.js → ensure-devcontainer-Dq3KoOIl.js} +1 -1
  77. package/server/{esm-shims-CJHy8CZY.js → esm-shims-BEjvINX3.js} +1 -1
  78. package/server/{event-store-CcJAhKCl.js → event-store-CqDgfbAs.js} +1 -1
  79. package/server/{event-store-DRte2Rwt.js → event-store-D89fMfXS.js} +3 -3
  80. package/server/{events-Bej1w_k8.js → events-S_C0pvl6.js} +3 -3
  81. package/server/{events-CtsLScn8.js → events-rIGncmP1.js} +1 -1
  82. package/server/{export-Dx_qJ3h8.js → export-BJHSVwKP.js} +2 -2
  83. package/server/{factory-FN727tWr.js → factory-DV18m0rc.js} +5 -5
  84. package/server/{feature-registry-population-ie-yBcQC.js → feature-registry-population-CqZSnqQi.js} +4 -4
  85. package/server/{feature-registry-storage-CkZTFSsn.js → feature-registry-storage-BeXmNBwK.js} +2 -2
  86. package/server/{features-Dtm9ABuz.js → features-u5XeMaOK.js} +2 -2
  87. package/server/{feedback-target-BYtpyt1i.js → feedback-target-CwyWf0Dg.js} +6 -6
  88. package/server/{feedback-target-DVJQDiE4.js → feedback-target-DDG1PWl3.js} +1 -1
  89. package/server/{feedback-writer-DOUhyIW2.js → feedback-writer-BsJiw5aT.js} +1 -1
  90. package/server/{feedback-writer-fdE1BzeL.js → feedback-writer-D20HSXre.js} +4 -4
  91. package/server/{flywheel-CUErLAyN.js → flywheel-9Y1X7IM-.js} +13 -13
  92. package/server/{flywheel-Bv3wv2S6.js → flywheel-Dczmgchd.js} +12 -12
  93. package/server/{flywheel-Bi82iiNl.js → flywheel-RCnHAgc4.js} +1 -1
  94. package/server/{flywheel-merge-order-BaEN3iyN.js → flywheel-merge-order-CtCYsFJP.js} +7 -7
  95. package/server/{flywheel-merge-order-DXjeBnJ1.js → flywheel-merge-order-DEtEd3aK.js} +1 -1
  96. package/server/forge-8y6aEPTB.js +2 -0
  97. package/server/{forge-ButEdJ31.js → forge-DFDThFil.js} +2 -2
  98. package/server/{from-CbtTxftl.js → from-NSJypkI8.js} +1 -1
  99. package/server/{fts-db-CBgBLZcL.js → fts-db-C5A_TTOM.js} +2 -2
  100. package/server/{fts-operations-CI9Xuo_1.js → fts-operations-DvCSimfU.js} +2 -2
  101. package/server/{git-utils-BCLRWQ-y.js → git-utils-C0neHvQx.js} +1 -1
  102. package/server/{git-utils-ClfpP47N.js → git-utils-Dr0L7mFk.js} +2 -2
  103. package/server/{github-app-DRD2woO0.js → github-app-Bwt9lK4A.js} +1 -1
  104. package/server/{github-app-DscZ0_B6.js → github-app-u9-SX7Gc.js} +2 -2
  105. package/server/{github-client-DpiZnxGH.js → github-client-Btyy3uan.js} +3 -3
  106. package/server/{github-client-iFRw8f7e.js → github-client-Do3k-N1W.js} +1 -1
  107. package/server/{github-pr-lookup-D-EBexxC.js → github-pr-lookup-DOF1U2WW.js} +2 -2
  108. package/server/{harness-resolve-iMjyNUJ2.js → harness-resolve-C6g2R0Cd.js} +3 -3
  109. package/server/{health-events-CRdxDFN2.js → health-events-B4u-2a9m.js} +2 -2
  110. package/server/{health-events-B_WsQyYm.js → health-events-Bos3sk5g.js} +1 -1
  111. package/server/{hooks-C9b7Vqpw.js → hooks-BCoOjL_R.js} +2 -2
  112. package/server/{hooks-C1ScyVxP.js → hooks-uEr8WTx_.js} +1 -1
  113. package/server/{hume-TQ5pvOZ_.js → hume-BqxYKbUf.js} +2 -2
  114. package/server/hume-CerGi2RH.js +3 -0
  115. package/server/{idle-stack-reaper-B1kG7B_X.js → idle-stack-reaper-DbZ8ukMd.js} +2 -2
  116. package/server/{idle-stack-reaper-iFVOAoJy.js → idle-stack-reaper-H0W6XtHh.js} +1 -1
  117. package/server/{infra-bpq1MHKU.js → infra-Ba9mS6e6.js} +3 -3
  118. package/server/{injection-BLWfwTVZ.js → injection-C1DKXeIZ.js} +1 -1
  119. package/server/{injection-DJqWld1v.js → injection-yrMBxzVq.js} +7 -7
  120. package/server/{inspect-agent-DytCsltn.js → inspect-agent-B-mnb4uh.js} +9 -9
  121. package/server/inspect-agent-CWkeAB7J.js +2 -0
  122. package/server/{internal-token-CCaWaTwE.js → internal-token-BPYEaXFh.js} +1 -1
  123. package/server/{internal-token-CjlhdufS.js → internal-token-BtqSbKTx.js} +2 -2
  124. package/server/{io-BiQ2Cs3k.js → io-VEGSAqsd.js} +15 -22
  125. package/server/{issue-closed-FApNiOOs.js → issue-closed-BxcePXL-.js} +4 -4
  126. package/server/{issue-lifecycle-C-K53ASY.js → issue-lifecycle--8MRxrG1.js} +22 -22
  127. package/server/{issue-lifecycle-BkFWNjlD.js → issue-lifecycle-CdMUauyb.js} +1 -1
  128. package/server/{issue-service-singleton-CuHGpJJP.js → issue-service-singleton-CkTUI-eu.js} +10 -10
  129. package/server/{issue-service-singleton-bG1WdSdQ.js → issue-service-singleton-MZsDhAob.js} +1 -1
  130. package/server/{issues-CwQMphDH.js → issues-CBAsuoAO.js} +2 -2
  131. package/server/{jsonl-parser-dNIjHgym.js → jsonl-parser-BUW5_sSK.js} +3 -3
  132. package/server/{label-cleanup-DYvAZknd.js → label-cleanup-htK6fBRU.js} +3 -3
  133. package/server/{layers-CD6FysRU.js → layers-jjL16At6.js} +2 -2
  134. package/server/{lifecycle-C_73gi-C.js → lifecycle-Ck2UR27D.js} +7 -7
  135. package/server/{lifecycle-io-C_Wu0_i-.js → lifecycle-io-DXv8Utct.js} +1 -1
  136. package/server/{lifecycle-io-CeYxP3cE.js → lifecycle-io-IehcRt2v.js} +36 -47
  137. package/server/{linear-client-4qoKnuQu.js → linear-client-By7hjwuN.js} +1 -1
  138. package/server/{linear-client-EtVyblVz.js → linear-client-D9cSQfvD.js} +3 -3
  139. package/server/memory-fts-worker.js +1 -1
  140. package/server/{merge-brm721Es.js → merge-BLcEZNXz.js} +1 -1
  141. package/server/{merge-7rqkTUm2.js → merge-BN8FGJ2q.js} +3 -3
  142. package/server/{merge-agent-4Zhlgvqp.js → merge-agent-B3u2szOL.js} +29 -29
  143. package/server/{merge-agent-36wfYm2u.js → merge-agent-ejC7Wos8.js} +1 -1
  144. package/server/{merge-batch-itfnwdsT.js → merge-batch-DyqlgYGp.js} +1 -1
  145. package/server/{merge-blockers-Bto_Oe_o.js → merge-blockers-cq-aS2KG.js} +2 -2
  146. package/server/merge-ops-CFkQtXEj.js +2 -0
  147. package/server/{merge-rebase-Czfqfe4q.js → merge-rebase-Dl7yIxtV.js} +2 -2
  148. package/server/{merge-set-BIkGQL9j.js → merge-set-CZ9Nbay0.js} +3 -3
  149. package/server/{merge-set-G1RHcu3D.js → merge-set-Dy0D0r3i.js} +1 -1
  150. package/server/{merge-sync-DIrmlZUr.js → merge-sync-CG9kDCdT.js} +1 -1
  151. package/server/{merge-sync-B43Dybea.js → merge-sync-D7jWLgCC.js} +2 -2
  152. package/server/{merge-train-DGqVuNZV.js → merge-train-CH33XJOH.js} +3 -3
  153. package/server/{merge-train-deps-q15XLnAS.js → merge-train-deps-JoVdGnOg.js} +4 -4
  154. package/server/{merge-verification-Cqfxx6bE.js → merge-verification-D4wTChdX.js} +4 -4
  155. package/server/{multipart-parser-CiPxxfUH.js → multipart-parser-Csn8U-K9.js} +2 -2
  156. package/server/{no-resume-mode-yrPEQ_pC.js → no-resume-mode-Gh5R_YLF.js} +1 -1
  157. package/server/node_modules/.package-lock.json +1 -1
  158. package/server/{orphan-proposed-reconciler-DAD9FJtQ.js → orphan-proposed-reconciler-BIcNu4tl.js} +1 -1
  159. package/server/{orphan-proposed-reconciler-BWWHn4Lr.js → orphan-proposed-reconciler-DI_IS1p_.js} +10 -10
  160. package/server/package-lock.json +2 -2
  161. package/server/package.json +1 -1
  162. package/server/{pan-dir-Bj7Hy8iu.js → pan-dir-CQIfKG8c.js} +4 -4
  163. package/server/{paths-C9DkhIOT.js → paths-Blj6A9AJ.js} +2 -2
  164. package/server/{pickup-CKRuGDsB.js → pickup-BtvRBbvI.js} +1 -1
  165. package/server/{pipeline-notifier-BkKbQ8ji.js → pipeline-notifier-BH4PAi-w.js} +1 -1
  166. package/server/{pipeline-notifier-CAurUste.js → pipeline-notifier-D_WYtEwl.js} +2 -2
  167. package/server/{project-pipelines-BRWaGmI4.js → project-pipelines-jMTitpeO.js} +2 -2
  168. package/server/projects-CrBE6IhN.js +3 -0
  169. package/server/{prompts-DfI5qbTW.js → prompts-B3njaImU.js} +2 -2
  170. package/server/{providers-CWDXoaMA.js → providers-BbEyFhPX.js} +7 -7
  171. package/server/{providers-D-5txBRc.js → providers-DnPxkHoG.js} +1 -1
  172. package/server/public/assets/chunk-BO2N2NFS-3qh9TUJi.js +103 -0
  173. package/server/public/assets/{diagram-OG6HWLK6-Avtvq2qI.js → diagram-OG6HWLK6-D8UVTPj7.js} +1 -1
  174. package/server/public/assets/{dist-BEHQuasD.js → dist-BvLLn1YC.js} +3 -3
  175. package/server/public/assets/{dist-BvmY-qb1.js → dist-CyubL7Wj.js} +1 -1
  176. package/server/public/assets/{ganttDiagram-6RSMTGT7-7KhCd0fH.js → ganttDiagram-6RSMTGT7-BI4E1LbQ.js} +1 -1
  177. package/server/public/assets/{highlighted-body-OFNGDK62-iQoBMTf0.js → highlighted-body-OFNGDK62-D_bapWkF.js} +1 -1
  178. package/server/public/assets/index-BAZxZ-8I.js +796 -0
  179. package/server/public/assets/{index-DUFDmvmH.css → index-FBG3JBfq.css} +1 -1
  180. package/server/public/assets/{linear-CiJHW9g5.js → linear-CEdobObr.js} +1 -1
  181. package/server/public/assets/mermaid-GHXKKRXX-BYP8MI37.js +1 -0
  182. package/server/public/assets/{pieDiagram-4H26LBE5-BOhmvUhW.js → pieDiagram-4H26LBE5-DT79L01f.js} +1 -1
  183. package/server/public/assets/{prod-DmLBBqat.js → prod-CR_K2DFV.js} +4 -4
  184. package/server/public/assets/{quadrantDiagram-W4KKPZXB-Cjku660G.js → quadrantDiagram-W4KKPZXB-BEkKXXrL.js} +1 -1
  185. package/server/public/assets/{sankeyDiagram-5OEKKPKP-D52w5oPh.js → sankeyDiagram-5OEKKPKP-BxSCqn-j.js} +1 -1
  186. package/server/public/assets/{xychartDiagram-2RQKCTM6-BTO07_Iv.js → xychartDiagram-2RQKCTM6-DicwJGG_.js} +1 -1
  187. package/server/public/index.html +2 -2
  188. package/server/{pull-requests-CKZPWhjD.js → pull-requests-43LPDfM8.js} +1 -1
  189. package/server/{pull-requests-Bmre-Xlz.js → pull-requests-DyUkQl4W.js} +3 -3
  190. package/server/{rally-BBd9tQ__.js → rally-BtWjybOa.js} +3 -3
  191. package/server/{rally-api-DDc85HIz.js → rally-api-B-YA_oXx.js} +1 -1
  192. package/server/{rally-api-DxZFObI_.js → rally-api-B-osULNL.js} +2 -2
  193. package/server/{rally-client-BADHn0m_.js → rally-client-CzFymP7P.js} +1 -1
  194. package/server/{rally-client-DvvLiAQP.js → rally-client-sErNQBO0.js} +5 -5
  195. package/server/rally-oggyp4cs.js +3 -0
  196. package/server/{reap-terminal-sessions-D6JDJsqF.js → reap-terminal-sessions-2s-fvilz.js} +1 -1
  197. package/server/{reap-terminal-sessions-D_xvy-Mk.js → reap-terminal-sessions-DnDQ7pf9.js} +1 -1
  198. package/server/{rebuild-stack-D19i080j.js → rebuild-stack-CoU-HqZj.js} +6 -6
  199. package/server/{rebuild-stack-GOsWqXi3.js → rebuild-stack-nGD_nPZo.js} +1 -1
  200. package/server/{reconstruct-cache-lQrG4xGg.js → reconstruct-cache-Wj8GrYB0.js} +6 -6
  201. package/server/{record-pyB6VA32.js → record-lEYK__LD.js} +1 -1
  202. package/server/{recovery-trip-Dfh1tNHn.js → recovery-trip-BT7nb9OV.js} +2 -2
  203. package/server/{release-engine-DxcMWRuK.js → release-engine-CBLQXDlH.js} +5 -5
  204. package/server/{release-set-BYsgX7o6.js → release-set-BNiqi7hy.js} +3 -3
  205. package/server/{remote-DmeL21dF.js → remote-DW_TWQnr.js} +3 -3
  206. package/server/{remote-8W2Yhygw.js → remote-DcO9An_f.js} +3 -3
  207. package/server/{remote-agents-BfQBE6MN.js → remote-agents-C4cyxHQS.js} +6 -6
  208. package/server/{remote-agents-DlvbzO7m.js → remote-agents-Cv-U-_V8.js} +1 -1
  209. package/server/{remote-completion-BgkiSQmx.js → remote-completion-PhXGGFQy.js} +13 -13
  210. package/server/{resolver-dTpSSzaH.js → resolver-C7dLn8OK.js} +2 -2
  211. package/server/resume-BYZBIab-.js +3 -0
  212. package/server/{review-agent-D025Wt7w.js → review-agent-Dn-yn7Zj.js} +23 -23
  213. package/server/{review-agent-Rub0OpZc.js → review-agent-u5q3ip7H.js} +1 -1
  214. package/server/{review-artifacts-CX951jTU.js → review-artifacts-D4T04aYI.js} +6 -6
  215. package/server/{review-context-DGGGR_w5.js → review-context-Rc0VDLG_.js} +8 -8
  216. package/server/{review-monitor-0_qqMcnS.js → review-monitor-BC--miCO.js} +2 -2
  217. package/server/{review-status-Br6lAFGO.js → review-status-CG0iDuWa.js} +1 -1
  218. package/server/{review-status-4qqLkRMu.js → review-status-Dc1l4dVz.js} +18 -18
  219. package/server/{review-status-enrichment-Cr8m3uVL.js → review-status-enrichment-C1a1OG_1.js} +3 -3
  220. package/server/{review-status-sync-OC-l1lNt.js → review-status-sync-CAr-hfnJ.js} +2 -2
  221. package/server/{review-status-sync-D3KUhsdA.js → review-status-sync-CfSixhhX.js} +1 -1
  222. package/server/{review-verdict-feedback-DrWMuRaj.js → review-verdict-feedback-CVDbIDBe.js} +7 -7
  223. package/server/{review-verdict-feedback-YOzmsq9G.js → review-verdict-feedback-D2Q960wX.js} +1 -1
  224. package/server/{rollup-DmazRY0j.js → rollup-CakjztPl.js} +1 -1
  225. package/server/{rollup-CnxbwaLH.js → rollup-DctoIu-A.js} +8 -8
  226. package/server/{scanner-DE1MqAaF.js → scanner-BTM1jc_u.js} +7 -7
  227. package/server/{sequence-io-C0uoqfGx.js → sequence-io-pnoIDGv4.js} +4 -4
  228. package/server/{sequencer-agent-i-b2u4SJ.js → sequencer-agent-9Soi-WL-.js} +6 -6
  229. package/server/server.js +422 -1746
  230. package/server/{service-D0_gh2tl.js → service-DfTVoqJg.js} +46 -46
  231. package/server/{session-fork-DZ12vipL.js → session-fork-C4jAFHj8.js} +2 -2
  232. package/server/session-history-DanhhiCw.js +168 -0
  233. package/server/{settings-ByqjPtFO.js → settings-Cuc12oP_.js} +2 -2
  234. package/server/settings-Cy7SCFO9.js +2 -0
  235. package/server/{settings-DCC4BAqj.js → settings-DfT3f86D.js} +3 -3
  236. package/server/{shadow-engineering-BhnmtW5m.js → shadow-engineering-bKuKTCn-.js} +3 -3
  237. package/server/{shadow-state-ByXZehsy.js → shadow-state-CVHpRWlb.js} +1 -1
  238. package/server/{shadow-state-CKm8xWX9.js → shadow-state-DJz6_pb_.js} +2 -2
  239. package/server/{ship-log-DE_0Cv_i.js → ship-log-CwqPFfqx.js} +1 -1
  240. package/server/{smart-compaction-h4_ca6Uk.js → smart-compaction-B4KlpZGN.js} +1 -1
  241. package/server/{smart-compaction-D5Zen3AA.js → smart-compaction-CiWfGfRZ.js} +7 -7
  242. package/server/{spawn-planning-session-Dueit4WX.js → spawn-planning-session-CU-DwyDl.js} +15 -15
  243. package/server/{spawn-planning-session-Bgi7Ub02.js → spawn-planning-session-D5N3RuLG.js} +1 -1
  244. package/server/{specialist-completion-BZ8M-WZ0.js → specialist-completion-CJcv-NXH.js} +1 -1
  245. package/server/{specialist-context-BMq83C58.js → specialist-context-B2HlbNxS.js} +5 -5
  246. package/server/{specialist-handoff-logger-BxX1YefH.js → specialist-handoff-logger-CQyF1ygu.js} +2 -2
  247. package/server/{specialist-logs-BWZYcJ6P.js → specialist-logs-CdcUpfjj.js} +3 -3
  248. package/server/{specialists-BudKrjOu.js → specialists-CFgw_0Q6.js} +1657 -113
  249. package/server/{specialists-DrPrC9Y9.js → specialists-CwzFdapR.js} +18 -18
  250. package/server/{specialists-ZkW4Mb7U.js → specialists-D7AcFi1u.js} +1 -1
  251. package/server/{specialists-8ZAguXef.js → specialists-k22_Btaq.js} +1 -1
  252. package/server/specs-RzcDgozr.js +3 -0
  253. package/server/{src-DHn4Rd2F.js → src-B4TTzNSr.js} +72 -1
  254. package/server/{src-Dv6L03vW.js → src-BvpMg4EB.js} +3 -3
  255. package/server/{src-DNUUqkec.js → src-D4YUZrwR.js} +6 -6
  256. package/server/{stack-health-DxsTx7II.js → stack-health-CSgcYcr8.js} +2 -2
  257. package/server/{stack-health-Dclm7_tu.js → stack-health-DVN7zRnL.js} +1 -1
  258. package/server/{state-home-CRowbXqU.js → state-home-CEvD_v5F.js} +6 -6
  259. package/server/{state-mapping-BvAgFK8n.js → state-mapping-C13UaCL7.js} +1 -1
  260. package/server/{stuck-remediation-CFWUP8_I.js → stuck-remediation-CxsyxwFO.js} +43 -21
  261. package/server/{stuck-remediation-CLHd-lrF.js → stuck-remediation-nTIvhGOR.js} +1 -1
  262. package/server/{summary-fork-CKc01Our.js → summary-fork-CnRMPCYd.js} +2 -2
  263. package/server/{summary-fork-CtCwBJ2Z.js → summary-fork-gKSoFAnK.js} +8 -8
  264. package/server/{supervisor-BA5D72Qa.js → supervisor-CZMs8s0M.js} +2 -2
  265. package/server/supervisor-CfX192ma.js +2 -0
  266. package/server/{swarm-readiness-CL5sM9B1.js → swarm-readiness-h6-pwY8w.js} +3 -3
  267. package/server/{system-prerequisites-DmFSXIE5.js → system-prerequisites-DZZTi2G6.js} +1 -1
  268. package/server/{teardown-workspace-DWmFJzTw.js → teardown-workspace-B4D-oCVg.js} +17 -17
  269. package/server/{test-agent-queue-DjsQoV5X.js → test-agent-queue-CnuYku4B.js} +6 -6
  270. package/server/{test-verdict-BSqsQp3G.js → test-verdict-CRsPpByy.js} +1 -1
  271. package/server/{test-verdict-D1AmZ2c0.js → test-verdict-CXMLATGc.js} +1 -1
  272. package/server/{tldr-daemon-DD9rI5gA.js → tldr-daemon-CgZQ3jmZ.js} +1 -1
  273. package/server/{tldr-daemon-C-MGomL8.js → tldr-daemon-CuA8hz21.js} +2 -2
  274. package/server/{tmux-x291Gjjb.js → tmux-By8E_Yv_.js} +1 -1
  275. package/server/{tmux-C_d-lSIq.js → tmux-C3g9VFcg.js} +2 -2
  276. package/server/{token-DfBf1bsd.js → token-g_sJ19g3.js} +2 -2
  277. package/server/token-util-C9u4An3K.js +3 -0
  278. package/server/{token-util-CROoF5ic.js → token-util-DiwnnbJo.js} +1 -1
  279. package/server/{tracker-config-DItsdelv.js → tracker-config-BzfVj41Z.js} +1 -1
  280. package/server/{tracker-config-CNODpd11.js → tracker-config-dQxC15vH.js} +2 -2
  281. package/server/{tracker-utils-Ch2_5GGf.js → tracker-utils--z8FLSWn.js} +2 -2
  282. package/server/{tracker-utils-B9ZoVA9b.js → tracker-utils-DkKyRT0H.js} +1 -1
  283. package/server/{traefik-connect-BF4x_LUQ.js → traefik-connect-CZYB3dlm.js} +1 -1
  284. package/server/{tunnel-r_5nHAI6.js → tunnel-BpWZs0Jy.js} +3 -3
  285. package/server/{tunnel-YD80_IHr.js → tunnel-CN2px87h.js} +1 -1
  286. package/server/{typed-errors-DSPn_xWP.js → typed-errors-CrN1AByg.js} +1 -1
  287. package/server/{typed-errors-BEJhbjJg.js → typed-errors-sLpGfegz.js} +1 -1
  288. package/server/{types-CE1m_daD.js → types-BLS_Zbmd.js} +1 -1
  289. package/server/{types-33JEP4LZ.js → types-tlXf80x3.js} +1 -1
  290. package/server/{uat-train-DjkFWXge.js → uat-train-BRo6DM7p.js} +24 -24
  291. package/server/{uat-train-DDI00aqD.js → uat-train-utGVmqdm.js} +1 -1
  292. package/server/{validation-DUTiJnyz.js → validation-CsPVsoA0.js} +4 -4
  293. package/server/{validation-ict8hnXk.js → validation-Dq_wwcw3.js} +1 -1
  294. package/server/{verification-runner-inLgeQux.js → verification-runner-CMT5WRMS.js} +11 -11
  295. package/server/{verification-runner-ATaLbpr5.js → verification-runner-D0Uh-9jc.js} +1 -1
  296. package/server/{vtt-parser-QnRfcjiU.js → vtt-parser-C_XPlifj.js} +1 -1
  297. package/server/{work-agent-prompt-fZljjA1_.js → work-agent-prompt-ZTAb2Hyf.js} +11 -11
  298. package/server/workflows-BLwxUMP7.js +2 -0
  299. package/server/{workflows-oBnJ7Tm0.js → workflows-CXRwhw_o.js} +14 -14
  300. package/server/{workspace-B2WOW9Hw.js → workspace-9UEsKuiP.js} +1 -1
  301. package/server/{workspace-CNuW2j41.js → workspace-CNfuj1-5.js} +3 -3
  302. package/server/{workspace-config-CBgMGhWs.js → workspace-config-ChWOECy0.js} +1 -1
  303. package/server/{workspace-manager-DjUAJCSs.js → workspace-manager-BO-6k3sP.js} +1 -1
  304. package/server/{workspace-manager-CB-R07R3.js → workspace-manager-D8AByFIT.js} +13 -13
  305. package/server/{workspace-metadata-9Nn5kgRl.js → workspace-metadata-CvC268MN.js} +2 -2
  306. package/server/{workspace-metadata-Fd58uUQG.js → workspace-metadata-DZiJtnuF.js} +1 -1
  307. package/server/{workspaces-BjWXntty.js → workspaces-D-uIoqbg.js} +103 -95
  308. package/server/{writer-CQMGzEkw.js → writer-BUweuRPx.js} +1 -1
  309. package/server/{writer-fe1-8iGc.js → writer-CrP2xuBn.js} +3 -3
  310. package/sync-sources/hooks/ask-user-question-hook +7 -1
  311. package/sync-sources/hooks/record-cost-event.js +2 -2
  312. package/sync-sources/hooks/record-cost-event.js.map +1 -1
  313. package/server/agent-runtime-mirror-DrWxopNA.js +0 -37
  314. package/server/cli-ClIQwgMI.js +0 -3
  315. package/server/deacon-swarm-BY5hKNaU.js +0 -2
  316. package/server/dist-DGTwcZhI.js +0 -3
  317. package/server/forge-XlDgPQWs.js +0 -2
  318. package/server/hume-K1pi8jC4.js +0 -3
  319. package/server/inspect-agent-477VxQim.js +0 -2
  320. package/server/merge-ops-PzqsW69V.js +0 -2
  321. package/server/projects-KJ94e50I.js +0 -3
  322. package/server/public/assets/chunk-BO2N2NFS-ClukPsZQ.js +0 -103
  323. package/server/public/assets/index-DnTZ2QeN.js +0 -796
  324. package/server/public/assets/mermaid-GHXKKRXX-DZJOwgBG.js +0 -1
  325. package/server/rally-Dc2Wnxw2.js +0 -3
  326. package/server/resume-DhcIqsTm.js +0 -3
  327. package/server/settings-yydgaqhv.js +0 -2
  328. package/server/specs-DwoAEGrW.js +0 -3
  329. package/server/supervisor-DHjumXlL.js +0 -2
  330. package/server/token-util-xNaV-00f.js +0 -3
  331. package/server/workflows-tU7KKxQi.js +0 -2
@@ -1,26 +1,26 @@
1
- import { Ar as OVERDECK_HOME, Ft as readRecordContinueViewSync, It as resolveProjectForIssue, Kn as resolveProjectFromIssueSync, Kr as getOverdeckHome, Ot as getProjectConfigFromWorkspacePath, Pn as init_projects, br as init_errors, kt as init_record, qr as init_paths, xr as AGENTS_DIR } from "./config-yaml-Dcz-8uit.js";
1
+ import { Fn as init_projects, Ft as readRecordContinueViewSync, It as resolveProjectForIssue, Jr as init_paths, Ot as getProjectConfigFromWorkspacePath, Sr as AGENTS_DIR, jr as OVERDECK_HOME, kt as init_record, qn as resolveProjectFromIssueSync, qr as getOverdeckHome, xr as init_errors } from "./config-yaml-cNOZcEww.js";
2
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-bpq1MHKU.js";
4
- import { L as sessionExists, R as sessionExistsSync, d as exactPaneTarget, w as killSession, x as init_tmux } from "./tmux-C_d-lSIq.js";
5
- import { c as init_review_status, u as loadReviewStatuses, y as setReviewStatusSync } from "./review-status-4qqLkRMu.js";
6
- import { n as init_issues, t as IssueId } from "./issues-CwQMphDH.js";
7
- import { a as getAllBudgetsSync, i as deleteBudgetSync, n as checkBudgetSync, r as createBudgetSync, s as init_cost } from "./cost-DQ2ajr_m.js";
8
- import { An as getAgentDir, D as init_context_overflow, Jn as saveAgentStateSync, Mn as getAgentState, Pn as getAgentStateSync, Q as listRunningAgentsSync, Sr as parseOhmypiSessionCostResultSync, U as spawnAgent, _t as init_config, gr as getAgentRuntimeStateSync, gt as getHealthThresholdsMs, k as isContextOverflowTail, q as stopAgentSync, t as init_agents, vr as saveAgentRuntimeState, xr as init_ohmypi_parser, yt as loadCloisterConfigSync } from "./agents-CsOzAmRg.js";
9
- import { i as parseCodexSessionSync, n as init_codex_parser, r as parseCodexSessionCostEventsSync } from "./behavior-Cpj03N4v.js";
10
- import { _ as init_tier_metrics, c as getDailyTrendsSync, d as init_cost_sync, h as deriveTieredAgentCostRole, t as getAgentDailyCostSync } from "./cost-sync-gTayEuWP.js";
11
- import { c as requireModelOverrideSync, o as init_model_validation } from "./state-home-CRowbXqU.js";
12
- import { _ as setDeaconGloballyPaused, c as isCloisterSpawnsPausedSync, g as setCloisterSpawnsPausedSync, s as init_control_settings, x as setFlywheelGloballyPaused } from "./control-settings-DwkAeooY.js";
13
- import { n as init_resolver, t as createBeadsResolver } from "./resolver-dTpSSzaH.js";
14
- import { n as checkHookSync, p as init_hooks } from "./hooks-C9b7Vqpw.js";
15
- import { r as isRoleTerminal, t as init_reap_terminal_sessions } from "./reap-terminal-sessions-D6JDJsqF.js";
16
- import { o as getRuntimeForAgent } from "./stuck-remediation-CFWUP8_I.js";
17
- import "./flywheel-Bv3wv2S6.js";
18
- 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-DrKDBeJL.js";
19
- import { n as renderPrompt, t as init_prompts } from "./prompts-DfI5qbTW.js";
20
- import { O as init_specialists, T as getTmuxSessionName } from "./specialists-DrPrC9Y9.js";
21
- import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-FApNiOOs.js";
22
- import { n as shouldSkipDispatchAsMerged, t as init_merge_verification } from "./merge-verification-Cqfxx6bE.js";
23
- import { r as writeHealthEvent } from "./health-events-CRdxDFN2.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-Ba9mS6e6.js";
4
+ import { L as sessionExists, R as sessionExistsSync, d as exactPaneTarget, w as killSession, x as init_tmux } from "./tmux-C3g9VFcg.js";
5
+ import { c as init_review_status, u as loadReviewStatuses, y as setReviewStatusSync } from "./review-status-Dc1l4dVz.js";
6
+ import { n as init_issues, t as IssueId } from "./issues-CBAsuoAO.js";
7
+ import { a as getAllBudgetsSync, i as deleteBudgetSync, n as checkBudgetSync, r as createBudgetSync, s as init_cost } from "./cost-D9kPIY_5.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, gt as getHealthThresholdsMs, hr as saveAgentRuntimeState, k as isContextOverflowTail, pr as getAgentRuntimeStateSync, q as stopAgentSync, t as init_agents, vr as init_ohmypi_parser, yr as parseOhmypiSessionCostResultSync, yt as loadCloisterConfigSync } from "./agents-B9GwfCyp.js";
9
+ import { n as parseCodexSessionCostEventsSync, r as parseCodexSessionSync, t as init_codex_parser } from "./codex-parser-mFYZh8vR.js";
10
+ import { _ as init_tier_metrics, c as getDailyTrendsSync, d as init_cost_sync, h as deriveTieredAgentCostRole, t as getAgentDailyCostSync } from "./cost-sync-DF6odxK9.js";
11
+ import { c as requireModelOverrideSync, o as init_model_validation } from "./state-home-CEvD_v5F.js";
12
+ import { _ as setDeaconGloballyPaused, c as isCloisterSpawnsPausedSync, g as setCloisterSpawnsPausedSync, s as init_control_settings, x as setFlywheelGloballyPaused } from "./control-settings-D4EFsRBd.js";
13
+ import { n as init_resolver, t as createBeadsResolver } from "./resolver-C7dLn8OK.js";
14
+ import { n as checkHookSync, p as init_hooks } from "./hooks-BCoOjL_R.js";
15
+ import { r as isRoleTerminal, t as init_reap_terminal_sessions } from "./reap-terminal-sessions-2s-fvilz.js";
16
+ import { o as getRuntimeForAgent } from "./stuck-remediation-CxsyxwFO.js";
17
+ import "./flywheel-Dczmgchd.js";
18
+ 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-DdARMjZq.js";
19
+ import { n as renderPrompt, t as init_prompts } from "./prompts-B3njaImU.js";
20
+ import { O as init_specialists, T as getTmuxSessionName } from "./specialists-CwzFdapR.js";
21
+ import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-BxcePXL-.js";
22
+ import { n as shouldSkipDispatchAsMerged, t as init_merge_verification } from "./merge-verification-D4wTChdX.js";
23
+ import { r as writeHealthEvent } from "./health-events-B4u-2a9m.js";
24
24
  import { join } from "node:path";
25
25
  import { Context, Data, Effect, Layer, Schema } from "effect";
26
26
  import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync, renameSync, statSync, unlinkSync, writeFileSync } from "fs";
@@ -1509,7 +1509,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1509
1509
  });
1510
1510
  return;
1511
1511
  }
1512
- const { getReviewStatusSync } = await import("./review-status-Br6lAFGO.js");
1512
+ const { getReviewStatusSync } = await import("./review-status-CG0iDuWa.js");
1513
1513
  if (getReviewStatusSync(normalizedIssueId)?.mergeStatus === "merged") {
1514
1514
  const message = `${normalizedIssueId}: skipping ${role} dispatch — merge already landed (merge_status='merged' is terminal)`;
1515
1515
  console.log(`[cloister] ${message}`);
@@ -1576,7 +1576,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1576
1576
  return;
1577
1577
  }
1578
1578
  const branch = `feature/${normalizedIssueId.toLowerCase()}`;
1579
- const { spawnReviewRoleForIssue } = await import("./review-agent-Rub0OpZc.js");
1579
+ const { spawnReviewRoleForIssue } = await import("./review-agent-u5q3ip7H.js");
1580
1580
  const result = await Effect.runPromise(spawnReviewRoleForIssue({
1581
1581
  issueId: normalizedIssueId,
1582
1582
  workspace,
@@ -1594,7 +1594,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1594
1594
  }
1595
1595
  if (role === "test") {
1596
1596
  const branch = `feature/${normalizedIssueId.toLowerCase()}`;
1597
- const { dispatchTestAgentAndNotify } = await import("./test-agent-queue-DjsQoV5X.js");
1597
+ const { dispatchTestAgentAndNotify } = await import("./test-agent-queue-CnuYku4B.js");
1598
1598
  await Effect.runPromise(dispatchTestAgentAndNotify(normalizedIssueId, workspace ?? void 0, branch));
1599
1599
  const message = `${normalizedIssueId}: test role dispatched from lifecycle state '${newState}'`;
1600
1600
  console.log(`[cloister] ${message}`);
@@ -1606,7 +1606,7 @@ async function onIssueStateChangePromise(issueId, newState) {
1606
1606
  });
1607
1607
  return;
1608
1608
  }
1609
- const { spawnRun } = await import("./agents-DCvyTXNU.js");
1609
+ const { spawnRun } = await import("./agents-CEcaxSkR.js");
1610
1610
  const message = `${normalizedIssueId}: ${role} role started from lifecycle state '${newState}' as ${(await spawnRun(normalizedIssueId, role, { prompt: buildReactiveRolePrompt(normalizedIssueId, newState, role) })).id}`;
1611
1611
  console.log(`[cloister] ${message}`);
1612
1612
  emitActivityEntrySync({
@@ -1684,27 +1684,27 @@ async function handleCloisterDomainEventPromise(event) {
1684
1684
  if (event.type === "agent.stopped") {
1685
1685
  const agentId = event.payload?.agentId;
1686
1686
  if (agentId) {
1687
- const { handleAgentStoppedEvent, handleAgentStoppedForOrphanReviewerSessions } = await import("./deacon-BqW9HMew.js");
1688
- const { handleAgentLifecycleEventForIdleStack } = await import("./idle-stack-reaper-iFVOAoJy.js");
1687
+ const { handleAgentStoppedEvent, handleAgentStoppedForOrphanReviewerSessions } = await import("./deacon-DONuopff.js");
1688
+ const { handleAgentLifecycleEventForIdleStack } = await import("./idle-stack-reaper-H0W6XtHh.js");
1689
1689
  handleAgentLifecycleEventForIdleStack(agentId);
1690
1690
  const slotMatch = /^agent-(.+)-slot-\d+$/.exec(agentId);
1691
1691
  await Promise.all([
1692
1692
  handleAgentStoppedEvent(agentId),
1693
1693
  handleAgentStoppedForOrphanReviewerSessions(agentId),
1694
- slotMatch ? (await import("./deacon-swarm-BY5hKNaU.js")).coordinateSwarmSlots({ issueId: slotMatch[1].toUpperCase() }) : Promise.resolve([])
1694
+ slotMatch ? (await import("./deacon-swarm-CvdFekIO.js")).coordinateSwarmSlots({ issueId: slotMatch[1].toUpperCase() }) : Promise.resolve([])
1695
1695
  ]);
1696
1696
  }
1697
1697
  return;
1698
1698
  }
1699
1699
  if (event.type === "agent.started") {
1700
1700
  const agentId = event.payload?.agentId;
1701
- if (agentId) (await import("./idle-stack-reaper-iFVOAoJy.js")).handleAgentLifecycleEventForIdleStack(agentId);
1701
+ if (agentId) (await import("./idle-stack-reaper-H0W6XtHh.js")).handleAgentLifecycleEventForIdleStack(agentId);
1702
1702
  return;
1703
1703
  }
1704
1704
  if (event.type === "agent.heartbeat_dead") {
1705
1705
  const agentId = event.payload?.agentId;
1706
1706
  if (agentId) {
1707
- const { handleAgentHeartbeatDeadEvent } = await import("./deacon-BqW9HMew.js");
1707
+ const { handleAgentHeartbeatDeadEvent } = await import("./deacon-DONuopff.js");
1708
1708
  await handleAgentHeartbeatDeadEvent(agentId, "event");
1709
1709
  }
1710
1710
  return;
@@ -1713,7 +1713,7 @@ async function handleCloisterDomainEventPromise(event) {
1713
1713
  const payload = event.payload;
1714
1714
  const issueId = payload?.issueId;
1715
1715
  if (issueId) {
1716
- const { handleReviewCoordinatorDied } = await import("./deacon-BqW9HMew.js");
1716
+ const { handleReviewCoordinatorDied } = await import("./deacon-DONuopff.js");
1717
1717
  await handleReviewCoordinatorDied(issueId, payload?.sessionName ?? "", payload?.reason ?? "");
1718
1718
  }
1719
1719
  return;
@@ -1721,7 +1721,7 @@ async function handleCloisterDomainEventPromise(event) {
1721
1721
  if (event.type === "work.completed") {
1722
1722
  const issueId = event.payload?.issueId;
1723
1723
  if (issueId) {
1724
- const { handleWorkCompleted } = await import("./deacon-BqW9HMew.js");
1724
+ const { handleWorkCompleted } = await import("./deacon-DONuopff.js");
1725
1725
  await handleWorkCompleted(issueId);
1726
1726
  }
1727
1727
  }
@@ -1732,12 +1732,12 @@ async function handleCloisterDomainEventPromise(event) {
1732
1732
  const status = payload?.status?.toLowerCase();
1733
1733
  if (issueId) {
1734
1734
  if (canonicalStatus === "closed" || status === "closed") {
1735
- const { handleIssueStatusChangedClosed } = await import("./closed-issue-reaper-BwUUvjEW.js");
1735
+ const { handleIssueStatusChangedClosed } = await import("./closed-issue-reaper-CksfuiFD.js");
1736
1736
  await handleIssueStatusChangedClosed(issueId);
1737
1737
  return;
1738
1738
  }
1739
1739
  if (canonicalStatus === "todo" || status === "planned" || status === "todo") {
1740
- const { handleOrphanProposedSpec } = await import("./orphan-proposed-reconciler-DAD9FJtQ.js");
1740
+ const { handleOrphanProposedSpec } = await import("./orphan-proposed-reconciler-BIcNu4tl.js");
1741
1741
  await handleOrphanProposedSpec(issueId);
1742
1742
  }
1743
1743
  }
@@ -2435,7 +2435,7 @@ async function performHealthCheck(host) {
2435
2435
  for (const health of needsAttention) {
2436
2436
  const idleAgentState = getAgentStateSync(health.agentId);
2437
2437
  if (idleAgentState?.role === "sequencer") continue;
2438
- const { shouldSkipIdlePokeForAgent } = await import("./stuck-remediation-CLHd-lrF.js");
2438
+ const { shouldSkipIdlePokeForAgent } = await import("./stuck-remediation-nTIvhGOR.js");
2439
2439
  if (shouldSkipIdlePokeForAgent(idleAgentState)) {
2440
2440
  host.pokeProgress.delete(health.agentId);
2441
2441
  continue;
@@ -2670,7 +2670,7 @@ async function checkCompletionMarkers(host) {
2670
2670
  if (retryCount === Infinity) host.processedCompletions.delete(dir.name);
2671
2671
  else if (retryCount >= 3) continue;
2672
2672
  const issueId = dir.name.replace("agent-", "").toUpperCase();
2673
- const { getReviewStatusSync } = await import("./review-status-Br6lAFGO.js");
2673
+ const { getReviewStatusSync } = await import("./review-status-CG0iDuWa.js");
2674
2674
  const existingReview = getReviewStatusSync(issueId);
2675
2675
  if (existingReview && ["reviewing", "passed"].includes(existingReview.reviewStatus || "")) {
2676
2676
  console.log(`🔔 Cloister: Completion marker for ${issueId} — review already ${existingReview.reviewStatus}, marking processed`);
@@ -2824,7 +2824,7 @@ async function pokeAgentWithEscalation(host, agentId) {
2824
2824
  ineffective
2825
2825
  });
2826
2826
  if (ineffective >= 4) {
2827
- const { setAgentPausedSync } = await import("./agent-state-EP2QFV9n.js");
2827
+ const { setAgentPausedSync } = await import("./agent-state-lGvgPP4m.js");
2828
2828
  try {
2829
2829
  setAgentPausedSync(agentId, `needs-you: idle-alive — no observable progress across ${ineffective + 1} pokes (idle-alive escalation)`);
2830
2830
  host.emit({
@@ -2915,7 +2915,7 @@ async function handleAgentCrash(host, agentId) {
2915
2915
  if (skipReason) {
2916
2916
  let recoverUnfinishedOneShot = false;
2917
2917
  if (ONE_SHOT_ROLES.has(agentState.role) && agentState.sessionId && agentState.issueId) try {
2918
- const { getReviewStatusSync } = await import("./review-status-Br6lAFGO.js");
2918
+ const { getReviewStatusSync } = await import("./review-status-CG0iDuWa.js");
2919
2919
  const status = getReviewStatusSync(agentState.issueId);
2920
2920
  recoverUnfinishedOneShot = !(status ? isRoleTerminal(agentState.role, {
2921
2921
  reviewStatus: status.reviewStatus,
@@ -3347,7 +3347,7 @@ var CloisterService = class {
3347
3347
  let clearedSpecialistCount = 0;
3348
3348
  try {
3349
3349
  if (existsSync(AGENTS_DIR)) {
3350
- const { isRunning: isSpecialistRunning } = await import("./specialists-8ZAguXef.js");
3350
+ const { isRunning: isSpecialistRunning } = await import("./specialists-k22_Btaq.js");
3351
3351
  const entries = readdirSync(AGENTS_DIR, { withFileTypes: true });
3352
3352
  for (const entry of entries) {
3353
3353
  if (!entry.isDirectory()) continue;
@@ -3382,8 +3382,8 @@ var CloisterService = class {
3382
3382
  }
3383
3383
  try {
3384
3384
  const reviewStatuses = loadReviewStatuses();
3385
- const { resolveProjectFromIssueSync } = await import("./projects-KJ94e50I.js");
3386
- const { getTmuxSessionName, getAllProjectSpecialistStatuses } = await import("./specialists-8ZAguXef.js");
3385
+ const { resolveProjectFromIssueSync } = await import("./projects-CrBE6IhN.js");
3386
+ const { getTmuxSessionName, getAllProjectSpecialistStatuses } = await import("./specialists-k22_Btaq.js");
3387
3387
  const activeReviewIssues = /* @__PURE__ */ new Set();
3388
3388
  try {
3389
3389
  const projSpecs = await getAllProjectSpecialistStatuses();
@@ -3394,7 +3394,7 @@ var CloisterService = class {
3394
3394
  }
3395
3395
  const globalRs = getAgentRuntimeStateSync(getTmuxSessionName("review-agent"));
3396
3396
  if (globalRs?.state === "active" && globalRs.currentIssue) activeReviewIssues.add(globalRs.currentIssue.toUpperCase());
3397
- const { listRunningAgents } = await import("./agents-DCvyTXNU.js");
3397
+ const { listRunningAgents } = await import("./agents-CEcaxSkR.js");
3398
3398
  const agents = await Effect.runPromise(listRunningAgents());
3399
3399
  for (const agent of agents) {
3400
3400
  if (agent.status === "stopped" || agent.status === "error") continue;
@@ -3437,7 +3437,7 @@ var CloisterService = class {
3437
3437
  continue;
3438
3438
  }
3439
3439
  const branch = `feature/${issueId.toLowerCase()}`;
3440
- const { spawnReviewRoleForIssue } = await import("./review-agent-Rub0OpZc.js");
3440
+ const { spawnReviewRoleForIssue } = await import("./review-agent-u5q3ip7H.js");
3441
3441
  const dispatchResult = await Effect.runPromise(spawnReviewRoleForIssue({
3442
3442
  issueId,
3443
3443
  workspace,
@@ -3525,7 +3525,7 @@ var CloisterService = class {
3525
3525
  console.log(" ✓ Cloister event store provider installed");
3526
3526
  return;
3527
3527
  }
3528
- const { initEventStore } = await import("./event-store-CcJAhKCl.js");
3528
+ const { initEventStore } = await import("./event-store-CqDgfbAs.js");
3529
3529
  const store = await initEventStore();
3530
3530
  this.eventStore = store;
3531
3531
  this.domainEventUnsubscribe = store.subscribe((event) => {
@@ -3875,4 +3875,4 @@ function getCloisterService() {
3875
3875
  //#endregion
3876
3876
  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 };
3877
3877
 
3878
- //# sourceMappingURL=service-D0_gh2tl.js.map
3878
+ //# sourceMappingURL=service-DfTVoqJg.js.map
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { qr as init_paths, zr as encodeClaudeProjectDir } from "./config-yaml-Dcz-8uit.js";
2
+ import { Br as encodeClaudeProjectDir, Jr as init_paths } from "./config-yaml-cNOZcEww.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-DZ12vipL.js.map
99
+ //# sourceMappingURL=session-fork-C4jAFHj8.js.map
@@ -0,0 +1,168 @@
1
+ import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
+ import { Jr as init_paths, qr as getOverdeckHome } from "./config-yaml-cNOZcEww.js";
3
+ import { a as getHarnessBehavior } from "./src-B4TTzNSr.js";
4
+ import { t as init_behavior } from "./behavior-BTpYbAv4.js";
5
+ import { Effect } from "effect";
6
+ import { appendFileSync, existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
7
+ import { join } from "path";
8
+ import { randomUUID } from "crypto";
9
+ import "fs/promises";
10
+ //#region ../../lib/agent-runtime-mirror.ts
11
+ /**
12
+ * PAN-800 — in-process mirror of AgentStateService's canonical ref.
13
+ *
14
+ * The dashboard server writes into this mirror on every event fold so lib code
15
+ * running in the same process can read the latest AgentRuntimeSnapshot.
16
+ * CLI/out-of-process callers should prefer the async HTTP path in agent-runtime.ts.
17
+ *
18
+ * All exports are Effect-native (PAN-1249 wave-1 migration).
19
+ */
20
+ function markAgentStateServiceInProcess() {
21
+ return Effect.sync(() => {
22
+ inProcessService = true;
23
+ });
24
+ }
25
+ function isAgentStateServiceInProcess() {
26
+ return Effect.sync(() => inProcessService);
27
+ }
28
+ function setAgentRuntimeMirror(next) {
29
+ return Effect.sync(() => {
30
+ mirror = next;
31
+ });
32
+ }
33
+ function getRuntimeSnapshot(agentId) {
34
+ return Effect.sync(() => mirror[agentId] ?? null);
35
+ }
36
+ var mirror, inProcessService;
37
+ var init_agent_runtime_mirror = __esmMin((() => {
38
+ mirror = {};
39
+ inProcessService = false;
40
+ }));
41
+ //#endregion
42
+ //#region ../../lib/persistent-logger.ts
43
+ /**
44
+ * Append-only persistent logger for forensic audit trails.
45
+ *
46
+ * Complements the SQLite event store (activity-logger.ts) with flat-file logs
47
+ * that survive event-store resets and are greppable from the shell.
48
+ *
49
+ * Files:
50
+ * ~/.overdeck/logs/deacon.log — deacon startup recovery actions
51
+ * ~/.overdeck/agents/<id>/lifecycle.log — per-agent state transitions
52
+ */
53
+ function logsDir() {
54
+ return join(getOverdeckHome(), "logs");
55
+ }
56
+ function agentDir(agentId) {
57
+ return join(getOverdeckHome(), "agents", agentId);
58
+ }
59
+ function ensureLogsDir() {
60
+ try {
61
+ mkdirSync(logsDir(), { recursive: true });
62
+ } catch {}
63
+ }
64
+ function ensureAgentDir(agentId) {
65
+ try {
66
+ mkdirSync(agentDir(agentId), { recursive: true });
67
+ } catch {}
68
+ }
69
+ function timestamp() {
70
+ return (/* @__PURE__ */ new Date()).toISOString();
71
+ }
72
+ /** Append a line to ~/.overdeck/logs/deacon.log */
73
+ function logDeaconEventSync(message) {
74
+ ensureLogsDir();
75
+ try {
76
+ appendFileSync(join(logsDir(), "deacon.log"), `[${timestamp()}] ${message}\n`);
77
+ } catch {}
78
+ }
79
+ /** Append a line to ~/.overdeck/agents/<agentId>/lifecycle.log */
80
+ function logAgentLifecycleSync(agentId, message) {
81
+ ensureAgentDir(agentId);
82
+ try {
83
+ appendFileSync(join(agentDir(agentId), "lifecycle.log"), `[${timestamp()}] ${message}\n`);
84
+ } catch {}
85
+ }
86
+ var init_persistent_logger = __esmMin((() => {
87
+ init_paths();
88
+ }));
89
+ //#endregion
90
+ //#region ../../lib/session-history.ts
91
+ /**
92
+ * PAN-1989: durably record a Claude session id in the agent's append-only
93
+ * sessions.json the moment the system learns it.
94
+ *
95
+ * Background: a work agent's resumable session id was only durable if the
96
+ * PostToolUse heartbeat hook had written sessions.json (first tool call) or
97
+ * auto-suspend had written session.id. A session that boots but is stopped
98
+ * before its first tool — kickoff never delivered, or a reboot mid-run — left
99
+ * the id only in the EPHEMERAL in-memory runtime snapshot, which a dashboard
100
+ * restart or reboot rebuilds from sources (state.json + tmux) that don't carry
101
+ * the session id. The agent then resolves to "No saved session ID found" and
102
+ * goes troubled even though its JSONL transcript is intact on disk.
103
+ *
104
+ * Calling this from the AgentStateService event sink (the single convergence
105
+ * point for every model_set event, hook-emitted or server-emitted) makes the
106
+ * pointer durable from the moment it is learned. The append-only list may
107
+ * accumulate aborted/empty ids; the resolver picks the freshest id with a real
108
+ * transcript, so empties never shadow the truth. De-dupes; never throws.
109
+ *
110
+ * Lives in its own module (not agents.ts) so the dashboard event sink can import
111
+ * it without pulling the whole agents.ts graph — avoids an ESM import cycle.
112
+ */
113
+ function appendSessionIdToHistory(agentId, sessionId) {
114
+ if (!sessionId || !sessionId.trim()) return;
115
+ try {
116
+ const dir = join(getOverdeckHome(), "agents", agentId);
117
+ mkdirSync(dir, { recursive: true });
118
+ const file = join(dir, "sessions.json");
119
+ let list = [];
120
+ if (existsSync(file)) {
121
+ const parsed = JSON.parse(readFileSync(file, "utf8"));
122
+ if (Array.isArray(parsed)) list = parsed.filter((v) => typeof v === "string");
123
+ }
124
+ if (list.includes(sessionId)) return;
125
+ list.push(sessionId);
126
+ writeFileSync(file, JSON.stringify(list));
127
+ } catch {}
128
+ }
129
+ /**
130
+ * Persist the current Claude session pointer before launch.
131
+ *
132
+ * Fresh work agents know their Claude UUID before the process starts. Writing
133
+ * it here makes transcript discovery and resume independent of lifecycle hooks
134
+ * (and therefore independent of jq being installed on the host).
135
+ */
136
+ function persistCurrentSessionId(agentId, sessionId) {
137
+ if (!sessionId || !sessionId.trim()) return;
138
+ try {
139
+ const dir = join(getOverdeckHome(), "agents", agentId);
140
+ mkdirSync(dir, { recursive: true });
141
+ writeFileSync(join(dir, "session.id"), sessionId);
142
+ } catch {}
143
+ }
144
+ /**
145
+ * Allocate and durably record a fresh Claude work-agent UUID before launch.
146
+ * This makes transcript discovery independent of lifecycle hooks and jq.
147
+ */
148
+ function createFreshSessionIdentity(agentId, harness) {
149
+ if (getHarnessBehavior(harness).sessionIdSource !== "launcher-session-id") return void 0;
150
+ const sessionId = randomUUID();
151
+ persistCurrentSessionId(agentId, sessionId);
152
+ appendSessionIdToHistory(agentId, sessionId);
153
+ const dir = join(getOverdeckHome(), "agents", agentId);
154
+ logAgentLifecycleSync(agentId, `session identity allocated: harness=${harness} sessionId=${sessionId} pointerPersisted=${existsSync(join(dir, "session.id"))} historyPersisted=${existsSync(join(dir, "sessions.json"))}`);
155
+ return sessionId;
156
+ }
157
+ function logLauncherSessionPinned(agentId, sessionId, launcher) {
158
+ logAgentLifecycleSync(agentId, `launcher session pinned: sessionId=${sessionId} flag=--session-id launcher=${launcher}`);
159
+ }
160
+ var init_session_history = __esmMin((() => {
161
+ init_paths();
162
+ init_behavior();
163
+ init_persistent_logger();
164
+ }));
165
+ //#endregion
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
+
168
+ //# sourceMappingURL=session-history-DanhhiCw.js.map
@@ -1,4 +1,4 @@
1
- import { br as init_errors, qr as init_paths } from "./config-yaml-Dcz-8uit.js";
1
+ import { Jr as init_paths, xr as init_errors } from "./config-yaml-cNOZcEww.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-ByqjPtFO.js.map
48
+ //# sourceMappingURL=settings-Cuc12oP_.js.map
@@ -0,0 +1,2 @@
1
+ import { t as getAgentCommandSync } from "./settings-Cuc12oP_.js";
2
+ export { getAgentCommandSync };
@@ -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-Dcz-8uit.js";
3
- import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-Dtm9ABuz.js";
2
+ import { h as jsYaml, m as init_js_yaml, o as getGlobalConfigPath, t as init_config_yaml } from "./config-yaml-cNOZcEww.js";
3
+ import { n as isBackgroundFeatureEnabled, t as init_features } from "./features-u5XeMaOK.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-DCC4BAqj.js.map
104
+ //# sourceMappingURL=settings-DfT3f86D.js.map
@@ -1,5 +1,5 @@
1
- import { a as PAN_DIRNAME } from "./types-CE1m_daD.js";
2
- import { t as init_pan_dir } from "./pan-dir-Bj7Hy8iu.js";
1
+ import { a as PAN_DIRNAME } from "./types-BLS_Zbmd.js";
2
+ import { t as init_pan_dir } from "./pan-dir-CQIfKG8c.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-BhnmtW5m.js.map
224
+ //# sourceMappingURL=shadow-engineering-bKuKTCn-.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-CKm8xWX9.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-DJz6_pb_.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 { Kr as getOverdeckHome, qr as init_paths } from "./config-yaml-Dcz-8uit.js";
2
+ import { Jr as init_paths, qr as getOverdeckHome } from "./config-yaml-cNOZcEww.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-CKm8xWX9.js.map
290
+ //# sourceMappingURL=shadow-state-DJz6_pb_.js.map
@@ -36,4 +36,4 @@ function getShipLog(issueId) {
36
36
  //#endregion
37
37
  export { appendShipLog, beginShipLog, getShipLog };
38
38
 
39
- //# sourceMappingURL=ship-log-DE_0Cv_i.js.map
39
+ //# sourceMappingURL=ship-log-CwqPFfqx.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-D5Zen3AA.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-CiWfGfRZ.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 { br as init_errors, gr as ProcessSpawnError, ur as FsError } from "./config-yaml-Dcz-8uit.js";
3
- import { a as getHarnessBehavior } from "./src-DHn4Rd2F.js";
4
- import { D as init_context_overflow, O as isContextOverflowError, ln as getProviderEnvForModel, sn as buildSpawnEnvForModel, t as init_agents } from "./agents-CsOzAmRg.js";
5
- import { t as init_behavior } from "./behavior-Cpj03N4v.js";
6
- import { a as init_claude_permissions, i as getClaudePermissionFlagsSync } from "./claude-permissions-CaWqysff.js";
7
- import { n as recordBackgroundAiCost, t as init_cost } from "./cost-B2mj17iG.js";
2
+ import { _r as ProcessSpawnError, dr as FsError, xr as init_errors } from "./config-yaml-cNOZcEww.js";
3
+ import { a as getHarnessBehavior } from "./src-B4TTzNSr.js";
4
+ import { D as init_context_overflow, O as isContextOverflowError, ln as getProviderEnvForModel, sn as buildSpawnEnvForModel, t as init_agents } from "./agents-B9GwfCyp.js";
5
+ import { t as init_behavior } from "./behavior-BTpYbAv4.js";
6
+ import { a as init_claude_permissions, i as getClaudePermissionFlagsSync } from "./claude-permissions-CThLgf8d.js";
7
+ import { n as recordBackgroundAiCost, t as init_cost } from "./cost-BcpRQ-7o.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-D5Zen3AA.js.map
853
+ //# sourceMappingURL=smart-compaction-CiWfGfRZ.js.map
@@ -1,15 +1,15 @@
1
- import { Cn as findProjectByTeamSync, It as resolveProjectForIssue, Ot as getProjectConfigFromWorkspacePath, Pn as init_projects, Tt as getIssueRecordPath, Z as resolveModel, _t as appendSessionEntrySync, f as loadConfigSync, kt as init_record, t as init_config_yaml, xn as findProjectByPathSync, yn as extractTeamPrefix } from "./config-yaml-Dcz-8uit.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-C_d-lSIq.js";
3
- import { a as getHarnessBehavior } from "./src-DHn4Rd2F.js";
4
- import { n as ensureSessionContextBriefingFile, r as init_briefing_freshness } from "./briefing-freshness-Kh5V8RTh.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-CsOzAmRg.js";
6
- import { t as init_behavior } from "./behavior-Cpj03N4v.js";
7
- import { a as init_launcher_generator, i as generateLauncherScriptSync } from "./state-home-CRowbXqU.js";
8
- import { h as workspaceContextFile, o as init_layers } from "./layers-CD6FysRU.js";
9
- import { n as resolveHarness, t as init_harness_resolve } from "./harness-resolve-iMjyNUJ2.js";
10
- import { c as ensureWorkspacePanDir, r as writeWorkspaceContext, t as init_pan_dir } from "./pan-dir-Bj7Hy8iu.js";
11
- import { r as init_workspace_manager, t as createWorkspace } from "./workspace-manager-CB-R07R3.js";
12
- import { n as renderPrompt, t as init_prompts } from "./prompts-DfI5qbTW.js";
1
+ import { Fn as init_projects, It as resolveProjectForIssue, Ot as getProjectConfigFromWorkspacePath, Sn as findProjectByPathSync, Tt as getIssueRecordPath, Z as resolveModel, _t as appendSessionEntrySync, bn as extractTeamPrefix, f as loadConfigSync, kt as init_record, t as init_config_yaml, wn as findProjectByTeamSync } from "./config-yaml-cNOZcEww.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-C3g9VFcg.js";
3
+ import { a as getHarnessBehavior } from "./src-B4TTzNSr.js";
4
+ import { n as ensureSessionContextBriefingFile, r as init_briefing_freshness } from "./briefing-freshness-DESTCWo-.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-B9GwfCyp.js";
6
+ import { t as init_behavior } from "./behavior-BTpYbAv4.js";
7
+ import { a as init_launcher_generator, i as generateLauncherScriptSync } from "./state-home-CEvD_v5F.js";
8
+ import { h as workspaceContextFile, o as init_layers } from "./layers-jjL16At6.js";
9
+ import { n as resolveHarness, t as init_harness_resolve } from "./harness-resolve-C6g2R0Cd.js";
10
+ import { c as ensureWorkspacePanDir, r as writeWorkspaceContext, t as init_pan_dir } from "./pan-dir-CQIfKG8c.js";
11
+ import { r as init_workspace_manager, t as createWorkspace } from "./workspace-manager-D8AByFIT.js";
12
+ import { n as renderPrompt, t as init_prompts } from "./prompts-B3njaImU.js";
13
13
  import { join, resolve } from "node:path";
14
14
  import { Effect } from "effect";
15
15
  import { homedir } from "node:os";
@@ -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-ByOWUjUg.js");
289
+ const { piGlobalContextFile } = await import("./context-layers-CeAwSYNt.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-ByOWUjUg.js");
294
+ const { codexGlobalContextFile } = await import("./context-layers-CeAwSYNt.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-Dueit4WX.js.map
544
+ //# sourceMappingURL=spawn-planning-session-CU-DwyDl.js.map
@@ -1,2 +1,2 @@
1
- import { o as spawnPlanningSession } from "./spawn-planning-session-Dueit4WX.js";
1
+ import { o as spawnPlanningSession } from "./spawn-planning-session-CU-DwyDl.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-BZ8M-WZ0.js.map
88
+ //# sourceMappingURL=specialist-completion-CJcv-NXH.js.map
@@ -1,6 +1,6 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Kr as getOverdeckHome, On as getProjectSync, Pn as init_projects, Z as resolveModel, f as loadConfigSync, qr as init_paths, t as init_config_yaml } from "./config-yaml-Dcz-8uit.js";
3
- import { a as init_claude_permissions, r as getClaudePermissionFlagsStringSync } from "./claude-permissions-CaWqysff.js";
2
+ import { Fn as init_projects, Jr as init_paths, Z as resolveModel, f as loadConfigSync, kn as getProjectSync, qr as getOverdeckHome, t as init_config_yaml } from "./config-yaml-cNOZcEww.js";
3
+ import { a as init_claude_permissions, r as getClaudePermissionFlagsStringSync } from "./claude-permissions-CThLgf8d.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-BWZYcJ6P.js");
117
+ const { getRecentRunLogs } = await import("./specialist-logs-CdcUpfjj.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-DCvyTXNU.js");
131
+ const { getProviderEnvForModel } = await import("./agents-CEcaxSkR.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-BMq83C58.js.map
286
+ //# sourceMappingURL=specialist-context-B2HlbNxS.js.map