@overdeck/desktop 0.49.1 → 0.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (545) hide show
  1. package/drizzle/overdeck/0000_overdeck_init.sql +1 -0
  2. package/package.json +1 -1
  3. package/server/{acceptance-criteria-Crw-xSJ3.js → acceptance-criteria-B_maCGZv.js} +2 -2
  4. package/server/{active-dashboard-bundle-CLwfD-Om.js → active-dashboard-bundle-CCqpFWiz.js} +2 -2
  5. package/server/activity-logger-B0X2JJwM.js +3 -0
  6. package/server/{activity-logger-BAVLrkR7.js → activity-logger-SlTXYCVf.js} +22 -4
  7. package/server/{advancing-selfheal-BQiJ7mIH.js → advancing-selfheal-BJAfiY-C.js} +12 -7
  8. package/server/{agent-gc-5E0lgxI1.js → agent-gc-bhikjoJ_.js} +11 -11
  9. package/server/agent-idle-D-UQ7gDv.js +745 -0
  10. package/server/agent-state-BrUPf_7Z.js +3 -0
  11. package/server/{agent-state-Bb3UUxQm.js → agent-state-FABw8neJ.js} +682 -454
  12. package/server/{agent-state-service-keg-x1bT.js → agent-state-service-BAQApt97.js} +1 -1
  13. package/server/{agent-state-service-BFbttwRA.js → agent-state-service-rDenYSlD.js} +5 -5
  14. package/server/agents-DixZjXWm.js +3 -0
  15. package/server/{agents-CqQJW75N.js → agents-DzpQidT8.js} +8 -8
  16. package/server/{archive-planning-BwEhu9Oq.js → archive-planning-BL1ABtW0.js} +20 -135
  17. package/server/archive-planning-D3gw32U9.js +2 -0
  18. package/server/{artifact-index-jobs-C6Lg2rKm.js → artifact-index-jobs-Cjdme0jS.js} +3 -3
  19. package/server/{assemble-DyTp2gSB.js → assemble-B_JgnCbG.js} +28 -9
  20. package/server/{auto-spawn-consent-BDfe4qz0.js → auto-spawn-consent-BesWchEi.js} +8 -7
  21. package/server/{backlog-auto-trigger-DuOGpdDW.js → backlog-auto-trigger-COLq639j.js} +3 -3
  22. package/server/{behavior-Bitko0mD.js → behavior-DCg8CIWC.js} +3 -3
  23. package/server/{bridge-pool-patrol-DiHEd13O.js → bridge-pool-patrol-BDohuMRt.js} +2 -2
  24. package/server/{briefing-freshness-CDJcmHHZ.js → briefing-freshness-ENa_hW_V.js} +2 -2
  25. package/server/build-info-Dx2qrVhb.js +2 -0
  26. package/server/{build-info-DTX8JwVP.js → build-info-WuZT6xyi.js} +3 -3
  27. package/server/{checkpoint-manager-BlOOdzLF.js → checkpoint-manager-CSZ7aVQF.js} +26 -9
  28. package/server/{checkpoint-manager-CKg1tn34.js → checkpoint-manager-DXhGRvg4.js} +1 -1
  29. package/server/checkpoint-worker.js +1 -1
  30. package/server/{checkpoints-BGfl0cHM.js → checkpoints-DUkUsPVS.js} +2 -2
  31. package/server/{checkpoints-DRALkfDS.js → checkpoints-tm_w6Y4V.js} +1 -1
  32. package/server/{claude-hooks-provision-B_tv3wzE.js → claude-hooks-provision-CTh9zxEi.js} +1 -1
  33. package/server/{claude-hooks-provision-BlGv6twJ.js → claude-hooks-provision-fRofvhTN.js} +2 -2
  34. package/server/{claude-permissions-aHgDcZi5.js → claude-permissions-DLrb9ovz.js} +18 -3
  35. package/server/{claude-settings-overlay-T2LWLteV.js → claude-settings-overlay-BYnXaTVc.js} +2 -2
  36. package/server/{claude-settings-overlay-CYOvFE3A.js → claude-settings-overlay-CMS5Jab5.js} +1 -1
  37. package/server/cli-BflmtEFM.js +2 -0
  38. package/server/{cli-Do8UpLoI.js → cli-CoQou1t_.js} +11 -11
  39. package/server/{cliproxy-CX6jHRDP.js → cliproxy-DXDQcR3I.js} +52 -17
  40. package/server/cliproxy-DdhFpcXU.js +3 -0
  41. package/server/{close-issue-J0_eWYT1.js → close-issue-CpQ0BWg-.js} +5 -5
  42. package/server/{closed-issue-reaper-bFppuk6F.js → closed-issue-reaper-CdcJRvUx.js} +13 -12
  43. package/server/{closed-issue-reaper-Cl2h9AfT.js → closed-issue-reaper-TymtZM37.js} +1 -1
  44. package/server/{codex-icapA4om.js → codex-BValsmtK.js} +1 -1
  45. package/server/{codex-OOea7lXs.js → codex-DYyZL8JD.js} +16 -10
  46. package/server/{compaction-continuation-D5voR1ME.js → compaction-continuation-CVjbdGKt.js} +3 -3
  47. package/server/{config-Cjleh3_U.js → config-CvKH7r7W.js} +1 -1
  48. package/server/{config-tucKBCCc.js → config-NxI9Yl2f.js} +2 -2
  49. package/server/{config-DC75T4Mr.js → config-_qaa1UXH.js} +2 -2
  50. package/server/{config-yaml-BwOEANMr.js → config-yaml-D60AnTIu.js} +55 -15
  51. package/server/{conflict-gate-DlpWCMd7.js → conflict-gate-0dD1kxjN.js} +1 -1
  52. package/server/{conflict-gate-D2L1kZeL.js → conflict-gate-hAUCL-un.js} +5 -5
  53. package/server/{context-layers-CSPGc2Hb.js → context-layers-CdpabJj0.js} +3 -3
  54. package/server/context-layers-Ds1MnEFI.js +4 -0
  55. package/server/{continue-U3Af0jUq.js → continue-CnvrUfxw.js} +3 -3
  56. package/server/{control-settings-5k6ixdFW.js → control-settings-Db0uXgVM.js} +310 -7
  57. package/server/{conversation-compaction-CSpVpxN6.js → conversation-compaction-B-1KETG9.js} +8 -8
  58. package/server/{conversation-compaction-Ciit9O6k.js → conversation-compaction-DzMXGRiJ.js} +1 -1
  59. package/server/{conversation-service-BxrB5lUT.js → conversation-service-BL-asWPX.js} +1 -1
  60. package/server/{conversation-service-BteE4ELK.js → conversation-service-BxIOd5ay.js} +21 -7
  61. package/server/conversations-CEMfwMt-.js +3 -0
  62. package/server/{conversations-DhwxsOru.js → conversations-nS6QgYpD.js} +12 -7
  63. package/server/cost-3FyqKK56.js +838 -0
  64. package/server/{cost-Bnf9NUC5.js → cost-Cctc-Q9M.js} +3 -3
  65. package/server/{cost-CQKI6OCu.js → cost-DTuIRE4y.js} +2 -2
  66. package/server/{cost-sync-B-ADeXKY.js → cost-sync-DfmvLT9L.js} +3 -3
  67. package/server/{dag-DI9LaK_q.js → dag-o-dUpw1L.js} +6 -19
  68. package/server/{dangerous-git-ops-akhA3iyF.js → dangerous-git-ops-BOtXCFkT.js} +1 -1
  69. package/server/dashboard-db-worker.js +61 -11
  70. package/server/{deacon-TPYssFYt.js → deacon-CsisLmPt.js} +1735 -172
  71. package/server/{deacon-canonical-state-DFYymrDw.js → deacon-canonical-state-DkdkQS5p.js} +3 -3
  72. package/server/deacon-e6py3jkM.js +4 -0
  73. package/server/{deacon-event-client-Te5v10-b.js → deacon-event-client-BCjHiGAY.js} +1 -1
  74. package/server/{deacon-event-client-BKOL4AcL.js → deacon-event-client-CMQswEHX.js} +2 -2
  75. package/server/{deacon-nudge-log-BtlTWgWu.js → deacon-nudge-log-pcliw8Dr.js} +1 -1
  76. package/server/{deacon-pending-lifecycle-DVHjOLje.js → deacon-pending-lifecycle-BzaE76Xo.js} +3 -3
  77. package/server/deacon.js +11 -11
  78. package/server/{dead-end-trip-P0IF1O0E.js → dead-end-trip-Bs3hxIn6.js} +3 -3
  79. package/server/dead-end-trip-DUbiRMtT.js +2 -0
  80. package/server/delivery-DhZGRShH.js +3 -0
  81. package/server/{deploy-patrol-BXjlvoV3.js → deploy-patrol-B8sKkA8h.js} +8 -8
  82. package/server/deploy-queue--smqHLhe.js +2 -0
  83. package/server/{deploy-queue-o7shYg1j.js → deploy-queue-CCGWXFkp.js} +2 -2
  84. package/server/{deploy-window-CNT6fOff.js → deploy-window-YuJewzmC.js} +4 -4
  85. package/server/{deploy-window-BMk5_oX6.js → deploy-window-hgsvZ3UZ.js} +1 -1
  86. package/server/{dev-supervisor-SR1CLOAK.js → dev-supervisor-4SBloJHV.js} +2 -2
  87. package/server/{devcontainer-renderer-enMmNDFa.js → devcontainer-renderer-BiJhwFNi.js} +3 -3
  88. package/server/{dist-CPTO_zMR.js → dist-CoR2sivG.js} +1 -1
  89. package/server/dist-FHv1s5ez.js +3 -0
  90. package/server/{docker-B7qUZptz.js → docker-CWO7dcIP.js} +3 -3
  91. package/server/{docker-KR3zSFKY.js → docker-DQzyMXkd.js} +1 -1
  92. package/server/{dod-gK835UMf.js → dod-BAk5arLF.js} +1 -1
  93. package/server/{done-preflight-CksRvh49.js → done-preflight-CGFA0M1b.js} +1 -1
  94. package/server/{done-preflight-Bk8aExAL.js → done-preflight-Cx9JGznT.js} +5 -5
  95. package/server/{driver-CmsY2RLl.js → driver-BtcFz-qu.js} +14 -3
  96. package/server/durable-review-pipeline-BOEZ0chh.js +3 -0
  97. package/server/{durable-review-pipeline-DgYHucN2.js → durable-review-pipeline-Djx_lvFd.js} +11 -2
  98. package/server/{ensure-devcontainer-BQ4YizSH.js → ensure-devcontainer-Dk6ZMOUC.js} +1 -1
  99. package/server/{ensure-devcontainer-ojerEqQg.js → ensure-devcontainer-DzYBBwnM.js} +4 -4
  100. package/server/{esm-shims-1htPASWs.js → esm-shims-deFq5Hhl.js} +1 -1
  101. package/server/{event-store-BgEjNsvk.js → event-store-C50Qt-f1.js} +1 -1
  102. package/server/{event-store-D7qcJXuZ.js → event-store-DTns2XZP.js} +5 -5
  103. package/server/{event-store-provider-BKvk2rDj.js → event-store-provider-Bu1Qrg6v.js} +1 -1
  104. package/server/{events-BIKGJZOT.js → events-B6xW8Cpm.js} +3 -3
  105. package/server/{dist-src-BM9eudEd.js → factory-CWVKwKFE.js} +714 -2
  106. package/server/{feature-registry-storage-ewNSIVsQ.js → feature-registry-storage-vaxRN3WO.js} +3 -3
  107. package/server/{features-CGopJXdU.js → features-DXWwktJB.js} +2 -2
  108. package/server/{feedback-stuck-retirement-B8-fX7NA.js → feedback-stuck-retirement-CXAYe2rU.js} +2 -2
  109. package/server/{feedback-target-CkyLYohm.js → feedback-target-DSVpi0gT.js} +1 -1
  110. package/server/{feedback-target-Ci6N5p4G.js → feedback-target-yPD_wclF.js} +10 -10
  111. package/server/{feedback-writer-DfuVjvH0.js → feedback-writer-BzN4qvaP.js} +1 -1
  112. package/server/{feedback-writer-D4ULO4qG.js → feedback-writer-Ds1Wjsz4.js} +5 -5
  113. package/server/{flywheel-DXI_WITn.js → flywheel-BCZS-FlW.js} +1 -1
  114. package/server/{flywheel-BwYPDlhK.js → flywheel-CC4gE_rx.js} +15 -15
  115. package/server/{flywheel-C7yek87O.js → flywheel-DWKd7bMc.js} +79 -29
  116. package/server/{flywheel-merge-order-C5m5bYBc.js → flywheel-merge-order-DDT3i57u.js} +1 -1
  117. package/server/{flywheel-merge-order-CXfU4M6l.js → flywheel-merge-order-DJwH2KpL.js} +17 -15
  118. package/server/forge-4VVCRcF7.js +2 -0
  119. package/server/{forge-DYX9sKzG.js → forge-CHADjOFs.js} +2 -2
  120. package/server/{from-DAdMxC29.js → from-C3dzmjSO.js} +1 -1
  121. package/server/{fs-lock-cw25uO_E.js → fs-lock-DQ_gUxfq.js} +2 -2
  122. package/server/{fts-operations-D_rzLxX5.js → fts-operations-asZo2fh1.js} +3 -3
  123. package/server/git-info-DMOSfJ9I.js +148 -0
  124. package/server/{git-utils-Y0zG25ez.js → git-utils-BAMwn9Nf.js} +1 -1
  125. package/server/{git-utils-DV4B9TRl.js → git-utils-BdHk8y7g.js} +4 -4
  126. package/server/{github-app-C33lDk9Z.js → github-app-BWziYCf3.js} +1 -1
  127. package/server/{github-app-4UX8VIr8.js → github-app-BlMSzSTw.js} +2 -2
  128. package/server/{github-client-nPj5ckZO.js → github-client-OK24qpol.js} +1 -1
  129. package/server/{github-client-DkJVR908.js → github-client-w6j5nVlz.js} +3 -3
  130. package/server/{github-pr-lookup-C9Vokb0W.js → github-pr-lookup-bGcsEvLE.js} +2 -2
  131. package/server/{harness-binary-BgXYDo2Z.js → harness-binary-DChiynaB.js} +2 -2
  132. package/server/{harness-resolve-1NZcVx7n.js → harness-resolve-BplBEbwn.js} +4 -4
  133. package/server/{health-events-jMfxrElt.js → health-events-BTqsmunw.js} +1 -1
  134. package/server/{health-events-DlX_FVAB.js → health-events-Bk3LjaJ9.js} +2 -2
  135. package/server/{hooks-NQ19vvlB.js → hooks-DJR1yR9w.js} +2 -2
  136. package/server/{hooks-W3REcb3h.js → hooks-EndRNrx9.js} +1 -1
  137. package/server/{hume-BFkid2PO.js → hume-1FJmNDTq.js} +2 -2
  138. package/server/hume-gXLmRhmN.js +3 -0
  139. package/server/{identity-Bwh6VGeL.js → identity-C3s8lyp0.js} +3 -3
  140. package/server/{idle-stack-reaper-CHtCNpvd.js → idle-stack-reaper-CBelVOE3.js} +1 -1
  141. package/server/{idle-stack-reaper-BeU_KxWx.js → idle-stack-reaper-DtoI4al6.js} +4 -4
  142. package/server/{in-flight-guard-pcwXKLGz.js → in-flight-guard-B7khcBdQ.js} +1 -1
  143. package/server/{infra-KTp9KV9u.js → infra-CJRi_5Wu.js} +36 -7
  144. package/server/{injection-67YyU6SC.js → injection-ADWQ3D0s.js} +8 -8
  145. package/server/{injection-BxbZKPDh.js → injection-BWsgHvrL.js} +1 -1
  146. package/server/{inspect-agent-VHSihlb7.js → inspect-agent-CCfNJjKr.js} +12 -12
  147. package/server/inspect-agent-Dhp3hCGp.js +2 -0
  148. package/server/{internal-token-B-z-sGBH.js → internal-token-BCTEqUCX.js} +1 -1
  149. package/server/{internal-token-zY75jrRJ.js → internal-token-BeIWG_kT.js} +2 -2
  150. package/server/{io-DfvO2xyh.js → io-BCtZoXHo.js} +5 -5
  151. package/server/{issue-closed-dvEWKO7Q.js → issue-closed-CiYAa6bX.js} +7 -7
  152. package/server/{issue-lifecycle-3N8XF7lP.js → issue-lifecycle-BETNVVLq.js} +206 -29
  153. package/server/{issue-lifecycle-BI6jAfp8.js → issue-lifecycle-DaKN57sx.js} +1 -1
  154. package/server/{issue-service-singleton-CL6hESX2.js → issue-service-singleton-1Q0ER8Yc.js} +1 -1
  155. package/server/{issue-service-singleton-BN_2MXp4.js → issue-service-singleton-C_sZ0HjP.js} +124 -11
  156. package/server/issue-title-fallback-B91iD66g.js +120 -0
  157. package/server/{issues-CkvUoAnq.js → issues-RGHQUKhB.js} +2 -2
  158. package/server/{jsonl-parser-CrEb2PWr.js → jsonl-parser-Dfs1dlYE.js} +3 -3
  159. package/server/jsonl-resolver-bFtftCDd.js +324 -0
  160. package/server/{kimi-code-DoMoGqIu.js → kimi-code-BxkDgaj4.js} +1 -1
  161. package/server/{kimi-code-C26gmGxM.js → kimi-code-CNYRA8Dd.js} +14 -12
  162. package/server/{kimi-parser-Dmhy3UlR.js → kimi-parser-OcWwmOqF.js} +2 -2
  163. package/server/{label-cleanup-X2lWfghH.js → label-cleanup-CefxK9tL.js} +3 -3
  164. package/server/{lifecycle-B0rL38D3.js → lifecycle-DDZ7w-BY.js} +6 -6
  165. package/server/{lifecycle-Bg44O-9x.js → lifecycle-DVXyUil2.js} +2 -2
  166. package/server/{lifecycle-io-DQDU0apV.js → lifecycle-io-D1oBiMce.js} +1 -1
  167. package/server/{lifecycle-io-CCBpRv5m.js → lifecycle-io-D7N0vQNj.js} +5 -5
  168. package/server/{linear-client-B0cIkTs4.js → linear-client-DUN7zCeb.js} +3 -3
  169. package/server/{linear-client-6V2E-DSa.js → linear-client-TL32snOy.js} +1 -1
  170. package/server/{linear-mcp-auth-LCo9AWUd.js → linear-mcp-auth-CtRKSHy5.js} +1 -1
  171. package/server/{linear-mcp-auth-Dsu9Io9r.js → linear-mcp-auth-bB0CPyjh.js} +5 -5
  172. package/server/memory-fts-worker.js +1 -1
  173. package/server/{memory-governor-A4O6vI9d.js → memory-governor-Cvv_9K0M.js} +88 -22
  174. package/server/{memory-pressure-patrol-BWlWywmA.js → memory-pressure-patrol-C6DJJQRA.js} +38 -14
  175. package/server/{merge-BGWcBxku.js → merge-DOCR6pHi.js} +1 -1
  176. package/server/{merge-vz80RvSE.js → merge-FTk4LsnM.js} +3 -3
  177. package/server/{merge-agent-GWhmnxFk.js → merge-agent-C-dsN9se.js} +37 -33
  178. package/server/{merge-agent-BRSz26Oh.js → merge-agent-D-4_iQgy.js} +2 -2
  179. package/server/{merge-batch-CFMEtTxv.js → merge-batch-BJjzUUL7.js} +1 -1
  180. package/server/{merge-completeness-CP347umA.js → merge-completeness-BOtBUwTU.js} +4 -4
  181. package/server/{merge-completeness-7ajHAIR-.js → merge-completeness-CoLJxfUY.js} +1 -1
  182. package/server/merge-eligibility-C4rTS97F.js +3 -0
  183. package/server/merge-eligibility-D7wRnJbj.js +51 -0
  184. package/server/merge-ops-Cf02szJ5.js +2 -0
  185. package/server/merge-rebase-Bj7eJAG4.js +2 -0
  186. package/server/{merge-rebase-C5htyEEH.js → merge-rebase-KBw4rdh3.js} +2 -2
  187. package/server/{merge-set-DsGW8fmc.js → merge-set-CVfEM57p.js} +1 -1
  188. package/server/{merge-set-eiE2nC6C.js → merge-set-CyW-xSn4.js} +4 -4
  189. package/server/{merge-sync-CM2-myXu.js → merge-sync-CYGsJy0u.js} +1 -1
  190. package/server/{merge-sync-Ct0-cxMX.js → merge-sync-YLvOPAry.js} +2 -2
  191. package/server/{merge-train-BOu3fN7O.js → merge-train-VxLn8Ms4.js} +4 -4
  192. package/server/{merge-train-deps-LXHGK61n.js → merge-train-deps-D0y4hBB9.js} +4 -4
  193. package/server/{merge-verification-BRp08IzI.js → merge-verification-BfJRNMiD.js} +6 -6
  194. package/server/{merged-docker-cleanup-worker-CwldDjHV.js → merged-docker-cleanup-worker-Bh5fKG_b.js} +4 -4
  195. package/server/{merged-docker-cleanup-worker-C8eGn78a.js → merged-docker-cleanup-worker-Ci9oeFAe.js} +1 -1
  196. package/server/messaging-Dfbhgjd6.js +3 -0
  197. package/server/{multipart-parser-OAuW7824.js → multipart-parser-BYwfKOVU.js} +2 -2
  198. package/server/{no-resume-mode-MWI6pnrK.js → no-resume-mode-DjMQRkId.js} +1 -1
  199. package/server/node_modules/.package-lock.json +24 -24
  200. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/AGENTS.md +14 -0
  201. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/CLAUDE.md +14 -0
  202. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/README.md +10 -3
  203. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/package.json +2 -2
  204. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/40_sql/10_basics.ts +175 -0
  205. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/40_sql/index.md +6 -0
  206. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/10_basics.ts +3 -1
  207. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/20_testing.ts +100 -0
  208. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/api/Users.ts +30 -14
  209. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/domain/User.ts +15 -6
  210. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/server/Authorization.ts +11 -10
  211. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/server/Users/http.ts +41 -32
  212. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/51_http-server/fixtures/server/Users.ts +141 -20
  213. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/ai-docs/src/70_cli/10_basics.ts +31 -5
  214. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.d.ts.map +1 -1
  215. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js +10 -9
  216. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js.map +1 -1
  217. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeClusterSocket.d.ts.map +1 -1
  218. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeClusterSocket.js +12 -9
  219. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeClusterSocket.js.map +1 -1
  220. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeSocket.js +1 -1
  221. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeSocket.js.map +1 -1
  222. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeSocketServer.js +4 -4
  223. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeSocketServer.js.map +1 -1
  224. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeStream.d.ts.map +1 -1
  225. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeStream.js +10 -4
  226. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeStream.js.map +1 -1
  227. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.d.ts +4 -0
  228. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.d.ts.map +1 -0
  229. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.js +10 -0
  230. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/internal/nodeChildProcessSpawner.js.map +1 -0
  231. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/package.json +7 -7
  232. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeChildProcessSpawner.ts +16 -11
  233. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeClusterSocket.ts +15 -12
  234. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeSocket.ts +1 -1
  235. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeSocketServer.ts +4 -4
  236. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeStream.ts +10 -4
  237. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/internal/nodeChildProcessSpawner.ts +16 -0
  238. package/server/node_modules/@types/node/README.md +1 -1
  239. package/server/node_modules/@types/node/buffer.buffer.d.ts +5 -5
  240. package/server/node_modules/@types/node/crypto.d.ts +2 -2
  241. package/server/node_modules/@types/node/http.d.ts +16 -0
  242. package/server/node_modules/@types/node/http2.d.ts +10 -2
  243. package/server/node_modules/@types/node/package.json +2 -2
  244. package/server/node_modules/@types/node/process.d.ts +52 -0
  245. package/server/node_modules/@types/node/quic.d.ts +210 -28
  246. package/server/node_modules/@types/node/sqlite.d.ts +6 -2
  247. package/server/node_modules/@types/node/test.d.ts +36 -0
  248. package/server/node_modules/ansi-regex/index.js +3 -2
  249. package/server/node_modules/ansi-regex/package.json +1 -1
  250. package/server/node_modules/effect/node_modules/uuid/README.md +19 -19
  251. package/server/node_modules/effect/node_modules/uuid/dist/v1.js +7 -3
  252. package/server/node_modules/effect/node_modules/uuid/dist/v7.js +5 -2
  253. package/server/node_modules/effect/node_modules/uuid/dist-node/v1.js +7 -3
  254. package/server/node_modules/effect/node_modules/uuid/dist-node/v7.js +5 -2
  255. package/server/node_modules/effect/node_modules/uuid/package.json +4 -3
  256. package/server/node_modules/gaxios/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  257. package/server/node_modules/gaxios/build/esm/tsconfig.tsbuildinfo +1 -1
  258. package/server/node_modules/gaxios/package.json +3 -3
  259. package/server/node_modules/msgpackr/dist/index-no-eval.cjs +11 -5
  260. package/server/node_modules/msgpackr/dist/index-no-eval.cjs.map +1 -1
  261. package/server/node_modules/msgpackr/dist/index-no-eval.min.js +1 -1
  262. package/server/node_modules/msgpackr/dist/index-no-eval.min.js.map +1 -1
  263. package/server/node_modules/msgpackr/dist/index.js +11 -5
  264. package/server/node_modules/msgpackr/dist/index.js.map +1 -1
  265. package/server/node_modules/msgpackr/dist/index.min.js +1 -1
  266. package/server/node_modules/msgpackr/dist/index.min.js.map +1 -1
  267. package/server/node_modules/msgpackr/dist/node.cjs +11 -5
  268. package/server/node_modules/msgpackr/dist/node.cjs.map +1 -1
  269. package/server/node_modules/msgpackr/dist/test.js +11 -5
  270. package/server/node_modules/msgpackr/dist/test.js.map +1 -1
  271. package/server/node_modules/msgpackr/dist/unpack-no-eval.cjs +11 -5
  272. package/server/node_modules/msgpackr/dist/unpack-no-eval.cjs.map +1 -1
  273. package/server/node_modules/msgpackr/package.json +1 -1
  274. package/server/node_modules/msgpackr/unpack.js +11 -5
  275. package/server/node_modules/picomatch/lib/parse.js +10 -1
  276. package/server/node_modules/picomatch/lib/scan.js +30 -18
  277. package/server/node_modules/picomatch/package.json +1 -1
  278. package/server/{orphan-proposed-reconciler-BAE5AZ_e.js → orphan-proposed-reconciler-CnP0K2v3.js} +2 -2
  279. package/server/{orphan-proposed-reconciler-cV3URUqk.js → orphan-proposed-reconciler-nFUlquZt.js} +24 -23
  280. package/server/package-lock.json +25 -25
  281. package/server/package.json +1 -1
  282. package/server/{pan-dir-DDd91kMb.js → pan-dir-B4NfzOf3.js} +5 -5
  283. package/server/{deacon-merge-BOGFEV8_.js → parked-residue-8WbU0y1z.js} +188 -69
  284. package/server/{paths-CRLnDgcI.js → paths-rETQhTF2.js} +2 -2
  285. package/server/{pending-lifecycle-claim-CYgMiDAP.js → pending-lifecycle-claim-yAwDuGS4.js} +2 -2
  286. package/server/{pickup-BjJsSX12.js → pickup-Dle6k9Xt.js} +1 -1
  287. package/server/{pipeline-agent-reader-BLc43dVJ.js → pipeline-agent-reader-CeWhQzXC.js} +5 -5
  288. package/server/{pipeline-membership-BHZp_ShY.js → pipeline-membership-BV4hdkHm.js} +1 -1
  289. package/server/{pipeline-membership-5qlRz5Qg.js → pipeline-membership-C9ykcjsn.js} +1 -1
  290. package/server/{pipeline-membership-gather-CGFY1v-y.js → pipeline-membership-gather-Ba0wJNCR.js} +17 -12
  291. package/server/{pipeline-membership-gather-WhRc1yke.js → pipeline-membership-gather-C9E22B2W.js} +1 -1
  292. package/server/{pipeline-notifier-C4fZ2ito.js → pipeline-notifier-B5DPXvnr.js} +1 -1
  293. package/server/{pipeline-notifier-BmsLWM_2.js → pipeline-notifier-p190L97e.js} +2 -2
  294. package/server/{post-merge-lifecycle-worker-KK1RTKRE.js → post-merge-lifecycle-worker-OQoK8Ckg.js} +3 -3
  295. package/server/{post-merge-state-_Lj3LDLh.js → post-merge-state-DFaf7OI1.js} +4 -4
  296. package/server/prd-locations-F2oLSAhy.js +124 -0
  297. package/server/{project-pipelines-CCkebHOu.js → project-pipelines-CUsa6U59.js} +2 -2
  298. package/server/project-repos-BVdi9-ch.js +3 -0
  299. package/server/{project-repos-B4MK48j4.js → project-repos-CsfvLtmr.js} +29 -3
  300. package/server/project-resource-refresh-queue-BehrH4Ai.js +865 -0
  301. package/server/project-resource-refresh-queue-D2110Guc.js +2 -0
  302. package/server/{projects-DvPEAP18.js → projects-BMuEf14J.js} +1 -1
  303. package/server/{prompts-BiS5I2tZ.js → prompts-CKpDt8Jn.js} +2 -2
  304. package/server/providers-Buv2wmFU.js +3 -0
  305. package/server/{providers-DrfK0Ip8.js → providers-CxPKmyif.js} +7 -7
  306. package/server/public/assets/{chunk-BO2N2NFS-GtVe_o56.js → chunk-BO2N2NFS-DZOQVqV1.js} +4 -4
  307. package/server/public/assets/{diagram-OG6HWLK6-BvhcYYHc.js → diagram-OG6HWLK6-oKeXcbO1.js} +1 -1
  308. package/server/public/assets/{dist-CSmUXazd.js → dist-2qPmeRzT.js} +3 -3
  309. package/server/public/assets/{dist-D0ryefak.js → dist-ClBlE-Nm.js} +1 -1
  310. package/server/public/assets/{ganttDiagram-6RSMTGT7-BXA51DzM.js → ganttDiagram-6RSMTGT7-BwdG9fQv.js} +1 -1
  311. package/server/public/assets/{highlighted-body-OFNGDK62-mlV4EpWt.js → highlighted-body-OFNGDK62-BzGNdskQ.js} +1 -1
  312. package/server/public/assets/index-CdPveU3M.css +1 -0
  313. package/server/public/assets/index-Cg6tdZoY.js +860 -0
  314. package/server/public/assets/{linear-BPE7oswm.js → linear-DpEt1TJb.js} +1 -1
  315. package/server/public/assets/mermaid-GHXKKRXX-6KBD_3T_.js +1 -0
  316. package/server/public/assets/{pieDiagram-4H26LBE5-BguGGV3S.js → pieDiagram-4H26LBE5-9BpM4oRJ.js} +1 -1
  317. package/server/public/assets/{prod-aKDYUrXQ.js → prod-CzJiNNEG.js} +4 -4
  318. package/server/public/assets/{quadrantDiagram-W4KKPZXB-Bx3i4B6H.js → quadrantDiagram-W4KKPZXB-BXWVAoZx.js} +1 -1
  319. package/server/public/assets/{sankeyDiagram-5OEKKPKP-B5vuLjA4.js → sankeyDiagram-5OEKKPKP-5oxodGEw.js} +1 -1
  320. package/server/public/assets/{xychartDiagram-2RQKCTM6-HPlpkqsN.js → xychartDiagram-2RQKCTM6-BChDrHxZ.js} +1 -1
  321. package/server/public/index.html +2 -2
  322. package/server/pull-requests-CmlandI7.js +2 -0
  323. package/server/{pull-requests-BcHIsFJv.js → pull-requests-T0OV0Vn4.js} +3 -3
  324. package/server/{rally-B1OMtzch.js → rally-CUqj2oIN.js} +3 -3
  325. package/server/rally-DYIn9R2U.js +3 -0
  326. package/server/{rally-api-ShZ4kvn0.js → rally-api-BFPb2oSq.js} +2 -2
  327. package/server/{rally-api-u_vkr5c_.js → rally-api-BoucQG1u.js} +1 -1
  328. package/server/{rally-client-D6Feq1Ka.js → rally-client-16iObny7.js} +5 -5
  329. package/server/{rally-client-DgZvUZqX.js → rally-client-CsqLjLLa.js} +1 -1
  330. package/server/{reap-terminal-sessions-CRfiXLY0.js → reap-terminal-sessions-BaDSNR-k.js} +2 -2
  331. package/server/{reap-terminal-sessions-D7f3zSE9.js → reap-terminal-sessions-DgEIKMhH.js} +2 -2
  332. package/server/{rebuild-stack-CCwKHZb6.js → rebuild-stack-BcBVFJp3.js} +2 -2
  333. package/server/{rebuild-stack-DKxOnkpE.js → rebuild-stack-CyXMrj6K.js} +7 -7
  334. package/server/reconciler-caYiRnPy.js +657 -0
  335. package/server/{reconstruct-cache-BP8UIKt7.js → reconstruct-cache-3JzPOune.js} +7 -7
  336. package/server/{record-By-wp6pg.js → record-DYOg97Iv.js} +1 -1
  337. package/server/{record-update-D23jPU6b.js → record-update-BPqpBu3O.js} +9 -7
  338. package/server/{record-update-ByGtIlUK.js → record-update-CDPEX7BH.js} +1 -1
  339. package/server/{recovery-trip-C4dTl8DO.js → recovery-trip-CpfW6LCJ.js} +43 -10
  340. package/server/{recovery-trip-qloOYOFz.js → recovery-trip-xqKC07Gy.js} +1 -1
  341. package/server/{release-engine-Crc0Tjx-.js → release-engine-C_OOhCaK.js} +5 -5
  342. package/server/{release-set-DDXwbIK7.js → release-set-DOIDz2vw.js} +3 -3
  343. package/server/{remote-oEMfXlwT.js → remote-BTh-sjpX.js} +3 -3
  344. package/server/{remote-agents-Bgtc2nOO.js → remote-agents-DbbN7vSm.js} +6 -6
  345. package/server/{remote-agents-DQVGZVQ9.js → remote-agents-MuXx2gWm.js} +1 -1
  346. package/server/{remote-completion-DxUJ5HKR.js → remote-completion-LcWCpAm2.js} +13 -13
  347. package/server/{remote-CBpLi4Yy.js → remote-xY0B43Ho.js} +3 -3
  348. package/server/{resolver-CuAULbLs.js → resolver-C2QKOf09.js} +2 -2
  349. package/server/{resolver-C8rooxoz.js → resolver-D4nsxfGo.js} +31 -8
  350. package/server/resume-ByUrJUNX.js +3 -0
  351. package/server/{review-agent-7C2w5CzU.js → review-agent-BRBTm1qE.js} +43 -55
  352. package/server/review-agent-Caodi0PX.js +3 -0
  353. package/server/{review-artifacts-BJeEfm2r.js → review-artifacts-DgaDlbO4.js} +6 -6
  354. package/server/{review-convoy-liveness-DfF9eXjI.js → review-convoy-liveness-BBvyuRLC.js} +20 -11
  355. package/server/{review-run-recovery-ZjuDTNhZ.js → review-run-recovery-DCzWMMvE.js} +1 -1
  356. package/server/{review-run-recovery-7BKt2Es0.js → review-run-recovery-THHMKlXJ.js} +3 -3
  357. package/server/{review-status-CUnjjOUu.js → review-status-Bge_3XTR.js} +1 -1
  358. package/server/{review-status-DBnR5t4z.js → review-status-DpniqzPT.js} +113 -44
  359. package/server/{review-status-emit-Cg4tOb8U.js → review-status-emit-D7sM720S.js} +3 -3
  360. package/server/{review-status-enrichment-D-rQshu6.js → review-status-enrichment-PDI4-faj.js} +3 -3
  361. package/server/{review-status-source-DSn0glLa.js → review-status-source-D2PCWS6E.js} +1 -1
  362. package/server/{review-status-source-Ct912fv_.js → review-status-source-Jq0BXmn3.js} +1 -1
  363. package/server/{review-status-sync-B7V_Gg51.js → review-status-sync-C6ZKTI8f.js} +11 -8
  364. package/server/{review-status-sync-YthpOH_q.js → review-status-sync-CvpHWyvR.js} +1 -1
  365. package/server/{review-verdict-feedback-C-dBon_-.js → review-verdict-feedback-B2ojHFH5.js} +8 -8
  366. package/server/{review-verdict-feedback-DqXTuJk8.js → review-verdict-feedback-tyMoLT2L.js} +1 -1
  367. package/server/{review-verdict-writer-CKaJWp75.js → review-verdict-writer-Cy_1pnIj.js} +7 -7
  368. package/server/{review-verdict-writer-jldSh3Bm.js → review-verdict-writer-DjrJ64eS.js} +1 -1
  369. package/server/{rollup-DZwH4CLs.js → rollup-Cp0KEoOu.js} +1 -1
  370. package/server/{rollup-QCwYcBdP.js → rollup-DU3xBQu2.js} +8 -8
  371. package/server/{scanner-2aHeLC3W.js → scanner-BFKG3Gxv.js} +8 -8
  372. package/server/{search-DwHYaj66.js → search-DhtKwbBC.js} +2 -2
  373. package/server/{secret-redaction-B5G1xZ3k.js → secret-redaction-DLZ-VqHq.js} +1 -1
  374. package/server/{sequence-io-POKWdusG.js → sequence-io-C-Q19Jez.js} +4 -4
  375. package/server/{sequencer-agent-DS00KHVm.js → sequencer-agent-eN2P2lDz.js} +6 -6
  376. package/server/server.js +1499 -1350
  377. package/server/{service-BLb_CyPL.js → service-CThO0Sar.js} +80 -774
  378. package/server/{session-fork-DcTzVwex.js → session-fork-ZYTHtpBh.js} +2 -2
  379. package/server/settings-ByDRfuuE.js +2 -0
  380. package/server/{settings-Clw8UVNs.js → settings-CTywpFw5.js} +2 -2
  381. package/server/{settings-B9-H2K_E.js → settings-nAT-eK56.js} +3 -3
  382. package/server/{shadow-engineering-C6oO_PiR.js → shadow-engineering-BHZKPJhq.js} +3 -3
  383. package/server/{shadow-state-CEGrrECe.js → shadow-state-BTLi4Axs.js} +2 -2
  384. package/server/{shadow-state-e7250VUx.js → shadow-state-CZ_LnPsi.js} +1 -1
  385. package/server/{shadow-utils-xFk2Wusb.js → shadow-utils-CPLlPHdn.js} +2 -2
  386. package/server/{ship-log-7BnQHuKU.js → ship-log-D-CphNZx.js} +1 -1
  387. package/server/{ship-record-CwUX6Afo.js → ship-record-BaBla0l_.js} +7 -7
  388. package/server/{ship-record-BgUPnpT0.js → ship-record-BlvX8-xv.js} +1 -1
  389. package/server/{ship-status-Ce3_3edi.js → ship-status-rQbPQBsF.js} +2 -2
  390. package/server/{smart-compaction-BmfIi3oL.js → smart-compaction-CUXn8mfX.js} +1 -1
  391. package/server/{smart-compaction-Dy0gw1VH.js → smart-compaction-D1CNGdZx.js} +7 -7
  392. package/server/{spawn-planning-session-nH3b4Drz.js → spawn-planning-session-DCmO6COk.js} +19 -19
  393. package/server/{spawn-planning-session-CfhxRJoY.js → spawn-planning-session-DfEWyrVV.js} +2 -2
  394. package/server/{specialist-completion-CC1XJbTx.js → specialist-completion-BMv3K54P.js} +1 -1
  395. package/server/{specialist-context-cHwpcXSh.js → specialist-context-C1-CfYQb.js} +5 -5
  396. package/server/{specialist-handoff-logger-GqnGSYoJ.js → specialist-handoff-logger-BDKoz5Z9.js} +2 -2
  397. package/server/{specialist-logs-5OTnrV91.js → specialist-logs-BJQFkpdG.js} +3 -3
  398. package/server/specialists-CYt1U3Zm.js +4 -0
  399. package/server/{specialists-8LcQi9Np.js → specialists-D6MUU31Q.js} +21 -272
  400. package/server/{specialists-DocAK-7A.js → specialists-DhS79T9v.js} +369 -691
  401. package/server/{specialists-xXcJHAyg.js → specialists-Dx0zRTxX.js} +1 -1
  402. package/server/specialists-registry-BRLCi61y.js +3 -0
  403. package/server/specialists-registry-Bng0OFGH.js +277 -0
  404. package/server/specs-oRGyfz6C.js +3 -0
  405. package/server/{src-C2TAxwki.js → src-C7gGe4KU.js} +6 -6
  406. package/server/{src-DudQNYVw.js → src-CdwN6WY6.js} +344 -7
  407. package/server/{src-DUVvEA8Q.js → src-DMosbuSJ.js} +3 -3
  408. package/server/{stack-health-DKT4ySnA.js → stack-health-BKfNaqMm.js} +3 -3
  409. package/server/{stack-health-CbyiYS9H.js → stack-health-Bz711z1Y.js} +1 -1
  410. package/server/{stale-task-claims-PzFee70R.js → stale-task-claims-DMRLb5R2.js} +5 -5
  411. package/server/{staleness-D8UTEXV5.js → staleness-CxZaIhrn.js} +1 -1
  412. package/server/{staleness-BjOAq9-d.js → staleness-r_dkMyMG.js} +1 -1
  413. package/server/{stall-sweeper-DOyIfeLR.js → stall-sweeper-CBWqSWV2.js} +8 -8
  414. package/server/{state-home-DhAZlk5k.js → state-home-DhsMqg8W.js} +2 -2
  415. package/server/{state-mapping-BVSs84bO.js → state-mapping-D2yC81Vy.js} +1 -1
  416. package/server/{state-migrate-CJKEwpB0.js → state-migrate-C2Ouyd6e.js} +6 -6
  417. package/server/{state-mirror-Do7pag7W.js → state-mirror-BPXciz84.js} +3 -3
  418. package/server/stuck-remediation-DALieAkx.js +2 -0
  419. package/server/stuck-remediation-kta3KN7c.js +774 -0
  420. package/server/{substrate-bug-weights-service-BTNjHBnl.js → substrate-bug-weights-service-D_ICP7TI.js} +3 -3
  421. package/server/{summary-fork-CvB7Oyq9.js → summary-fork-CojrFKb6.js} +2 -2
  422. package/server/{summary-fork-CZ88rhVx.js → summary-fork-DhhaFhxZ.js} +113 -30
  423. package/server/supervisor/{pane-composer-BaLLspSj.js → pane-composer-CoiVkGIt.js} +8 -1
  424. package/server/supervisor/{paths-D6XUcR_g.js → paths-DTGbtcaP.js} +8 -4
  425. package/server/supervisor/pty-supervisor.js +3 -3
  426. package/server/supervisor/{pty-token-DjjHxoCq.js → pty-token-GVqnvU3U.js} +2 -2
  427. package/server/supervisor-DSSWo4M2.js +2 -0
  428. package/server/{supervisor-D4v0WfiQ.js → supervisor-DqH-laVL.js} +4 -4
  429. package/server/{swarm-readiness-D8R-LWX5.js → swarm-readiness-LF8ZF_hc.js} +3 -3
  430. package/server/{synthesis-verdict-N5Z11pg7.js → synthesis-verdict-CGFF8uQI.js} +2 -2
  431. package/server/{synthesis-verdict-B6wvLGcA.js → synthesis-verdict-DSoOFUIV.js} +1 -1
  432. package/server/{system-prerequisites-BbGZ_WHF.js → system-prerequisites-Lsx0jUUV.js} +2 -2
  433. package/server/{teardown-workspace-CYend-KY.js → teardown-workspace-DMwomEG1.js} +16 -16
  434. package/server/{test-agent-queue-BUtWhNcc.js → test-agent-queue-Cu0D6BYe.js} +6 -6
  435. package/server/{test-verdict-BWm3hgDj.js → test-verdict-9mvl7pQn.js} +1 -1
  436. package/server/{test-verdict-BWtRmdiR.js → test-verdict-oNSv1rVr.js} +2 -2
  437. package/server/{tldr-daemon-CneJ24eL.js → tldr-daemon-CRSAkhBx.js} +1 -1
  438. package/server/{tldr-daemon-CMVBT4kT.js → tldr-daemon-McqCk2X7.js} +2 -2
  439. package/server/tmux-CYucGrTl.js +4 -0
  440. package/server/{tmux-BqXzRuaH.js → tmux-wnT_hg-s.js} +91 -19
  441. package/server/{token-CO3INKbh.js → token-BdfZLRg1.js} +2 -2
  442. package/server/{token-util-DyJJyX_B.js → token-util-Crcay9j_.js} +1 -1
  443. package/server/token-util-DfUS3Lpp.js +3 -0
  444. package/server/{tracker-config-DVzhaUxO.js → tracker-config-tfAOWgng.js} +2 -2
  445. package/server/{tracker-utils-xnVJVrrO.js → tracker-utils-Dbg_pVZg.js} +2 -2
  446. package/server/{traefik-connect-A5k54mCv.js → traefik-connect-DoQvQ6oJ.js} +1 -1
  447. package/server/{tunnel-DauSR-rs.js → tunnel-B1MNIgkL.js} +1 -1
  448. package/server/{tunnel-CwOnS-PB.js → tunnel-skW68j9B.js} +3 -3
  449. package/server/{typed-errors-B-gfU2RB.js → typed-errors-CZ3GFBvo.js} +1 -1
  450. package/server/{typed-errors-DzC4zXbI.js → typed-errors-DXqf3RnP.js} +1 -1
  451. package/server/{types-DjpLVpsj.js → types-PW4zkxCM.js} +1 -1
  452. package/server/{types-DbxY2QB6.js → types-pLpbsNto.js} +1 -1
  453. package/server/{uat-failure-feedback-BVqsWlrr.js → uat-failure-feedback-ly8ZwtfC.js} +5 -5
  454. package/server/{uat-promote-verification-DmG097QS.js → uat-promote-verification-BBaMwfdc.js} +5 -5
  455. package/server/{uat-train-DVUNW03P.js → uat-train-BBEiYSep.js} +0 -0
  456. package/server/{uat-train-COSy-vEX.js → uat-train-D7Ran2FB.js} +1 -1
  457. package/server/{validate-Dvv83iBx.js → validate-BYcBcBwg.js} +3 -3
  458. package/server/{validation-DlHafKzu.js → validation-BfG2jW5C.js} +9 -6
  459. package/server/{validation-BdCjzWLN.js → validation-nSrYiYvA.js} +1 -1
  460. package/server/{verification-artifact-CaSbxUVg.js → verification-artifact-Cmhgq4b_.js} +1 -1
  461. package/server/{verification-artifact-0Zku8N-W.js → verification-artifact-DglwaHke.js} +1 -1
  462. package/server/{verification-runner-DwP2fUEF.js → verification-runner-BEq5ZF-h.js} +53 -27
  463. package/server/{verification-runner-C6wdZda2.js → verification-runner-CFjAuv9u.js} +1 -1
  464. package/server/{vtt-parser-luerJpYT.js → vtt-parser-Va--tv27.js} +1 -1
  465. package/server/work-agent-prompt-BnhKNAg7.js +3 -0
  466. package/server/{work-agent-prompt--9AWNYwZ.js → work-agent-prompt-CaD2ue8m.js} +14 -14
  467. package/server/{work-agent-start-BNQO65W7.js → work-agent-start-0nJ-6UeA.js} +2 -2
  468. package/server/{work-agent-start-DkzseQFl.js → work-agent-start-D8NEN5KD.js} +1 -1
  469. package/server/workflows-BtHRlFIm.js +2 -0
  470. package/server/{workflows-BYwR2aIN.js → workflows-C7mxM1qc.js} +114 -41
  471. package/server/{workspace-iTnTycOB.js → workspace-BAhMgMaO.js} +3 -3
  472. package/server/{workspace-B-QJa3Ps.js → workspace-Dbqv9ehn.js} +1 -1
  473. package/server/{workspace-anchor-drift-CHiGg8iu.js → workspace-anchor-drift-B_3kyyxJ.js} +4 -4
  474. package/server/{workspace-anchor-drift-DTt6h2Em.js → workspace-anchor-drift-Bpa3xoni.js} +1 -1
  475. package/server/{workspace-config-D0CavVtz.js → workspace-config-D-bNq2CF.js} +1 -1
  476. package/server/{workspace-manager-5BKPV6SY.js → workspace-manager-BrbX90Rm.js} +1 -1
  477. package/server/{workspace-manager-W1OnbvU5.js → workspace-manager-CM8RCrSc.js} +17 -17
  478. package/server/{workspace-metadata-tbbevEmP.js → workspace-metadata-BEOwJSdK.js} +1 -1
  479. package/server/{workspace-metadata-dJhXvZGQ.js → workspace-metadata-Cu6yfxBS.js} +2 -2
  480. package/server/{workspaces-BlpbOPZ7.js → workspaces-C7LAuZfe.js} +140 -709
  481. package/sync-sources/dev-skills/pan-style-guide/SKILL.md +90 -15
  482. package/sync-sources/hooks/linear-mcp-auth-hook +6 -1
  483. package/sync-sources/rules/agent-message-delivery.md +21 -14
  484. package/sync-sources/rules/handoff-isolate-cwd.md +4 -4
  485. package/sync-sources/rules/pan-handoff-focus-limit.md +14 -5
  486. package/sync-sources/rules/ste-writing.md +17 -0
  487. package/sync-sources/rules/work-agents-via-pan.md +2 -1
  488. package/sync-sources/rules/writing-style.md +3 -2
  489. package/sync-sources/skills/{skill-creator → claude-skill-creator}/SKILL.md +1 -1
  490. package/sync-sources/skills/{skill-creator → claude-skill-creator}/scripts/init_skill.py +1 -1
  491. package/sync-sources/skills/{skill-creator → claude-skill-creator}/scripts/package_skill.py +1 -1
  492. package/sync-sources/skills/pan-gauntlet-loop/SKILL.md +230 -0
  493. package/sync-sources/skills/pan-gauntlet-loop/assets/PROMPT.template.md +92 -0
  494. package/sync-sources/skills/pan-gauntlet-loop/assets/REFERENCE-BAR.template.md +53 -0
  495. package/sync-sources/skills/pan-gauntlet-loop/assets/STYLE.template.md +41 -0
  496. package/sync-sources/skills/pan-gauntlet-loop/assets/gauntlet-index.html +237 -0
  497. package/sync-sources/skills/pan-gauntlet-loop/references/domains.md +106 -0
  498. package/sync-sources/skills/pan-handoff/SKILL.md +24 -6
  499. package/sync-sources/skills/pan-help/SKILL.md +1 -1
  500. package/sync-sources/skills/pan-peer-review/SKILL.md +3 -3
  501. package/sync-sources/skills/pan-restart/SKILL.md +6 -3
  502. package/sync-sources/skills/pan-start/SKILL.md +3 -0
  503. package/sync-sources/skills/pan-swarm/SKILL.md +32 -44
  504. package/sync-sources/skills/pan-sync/SKILL.md +1 -1
  505. package/server/activity-logger-BejO16Am.js +0 -3
  506. package/server/agent-state-DH_-Jkua.js +0 -3
  507. package/server/agents-megfmQHM.js +0 -3
  508. package/server/archive-planning-C-H9cM_J.js +0 -2
  509. package/server/build-info-PQlh_Rhb.js +0 -2
  510. package/server/cli-TaZspPHS.js +0 -2
  511. package/server/cliproxy-36ncAXlu.js +0 -3
  512. package/server/context-layers-CF6zHws4.js +0 -4
  513. package/server/conversations-AnGJ5rtX.js +0 -3
  514. package/server/deacon-BEH-IY0v.js +0 -5
  515. package/server/deacon-swarm-BHX-kR1b.js +0 -2
  516. package/server/deacon-swarm-BiLfNm_v.js +0 -1522
  517. package/server/dead-end-trip-BWpDg1Qd.js +0 -2
  518. package/server/delivery-cJM6zRjJ.js +0 -3
  519. package/server/deploy-queue-CmVBZEja.js +0 -2
  520. package/server/dist-VKBfkdi7.js +0 -3
  521. package/server/durable-review-pipeline-DgcVCYDL.js +0 -3
  522. package/server/factory-D4V2wd_V.js +0 -717
  523. package/server/forge-CrP1L3i6.js +0 -2
  524. package/server/hume-1ubD_6O7.js +0 -3
  525. package/server/inspect-agent-CfxERkNt.js +0 -2
  526. package/server/merge-ops-DtHx17Vd.js +0 -2
  527. package/server/merge-rebase-BvB4UuNS.js +0 -2
  528. package/server/project-repos-BJiShUsN.js +0 -3
  529. package/server/providers-CStNGwze.js +0 -3
  530. package/server/public/assets/index-BFEwfmqX.js +0 -860
  531. package/server/public/assets/index-_USwyTAT.css +0 -1
  532. package/server/public/assets/mermaid-GHXKKRXX-Dsln95SK.js +0 -1
  533. package/server/pull-requests-C1Cqp2yo.js +0 -2
  534. package/server/rally-CjayjUIl.js +0 -3
  535. package/server/resume-D7JuMCRQ.js +0 -3
  536. package/server/review-agent-BUNTVJK2.js +0 -2
  537. package/server/settings-DBWB1gsG.js +0 -2
  538. package/server/specialists-D8gsOCwh.js +0 -3
  539. package/server/specs-BqkrRnU9.js +0 -3
  540. package/server/stuck-remediation-Di5JYkoo.js +0 -1164
  541. package/server/stuck-remediation-TNM1VhZb.js +0 -2
  542. package/server/supervisor-DX8VsPnb.js +0 -2
  543. package/server/tmux-CqNapnrr.js +0 -4
  544. package/server/token-util-Bu8bPF9f.js +0 -3
  545. package/server/workflows-Cf4LAnhg.js +0 -2
@@ -1,2 +1,2 @@
1
- import { i as mergeRuntimeBySequence, n as AgentStateServiceLive, r as getRuntimeSnapshot, t as AgentStateService } from "./agent-state-service-BFbttwRA.js";
1
+ import { i as mergeRuntimeBySequence, n as AgentStateServiceLive, r as getRuntimeSnapshot, t as AgentStateService } from "./agent-state-service-rDenYSlD.js";
2
2
  export { AgentStateService, AgentStateServiceLive, getRuntimeSnapshot, mergeRuntimeBySequence };
@@ -1,7 +1,7 @@
1
- import { a as init_event_store, i as initEventStore } from "./event-store-D7qcJXuZ.js";
2
- import { h as applyEvent, m as INITIAL_READ_MODEL_STATE, t as init_src } from "./src-DudQNYVw.js";
1
+ import { a as init_event_store, i as initEventStore } from "./event-store-DTns2XZP.js";
2
+ import { h as applyEvent, m as INITIAL_READ_MODEL_STATE, t as init_src } from "./src-CdwN6WY6.js";
3
3
  import { t as emitBootReconciledStopEvents } from "./boot-reconciled-stop-events-fbtwLQEZ.js";
4
- import { Ai as init_agent_runtime_mirror, Ei as init_agents, Mi as setAgentRuntimeMirror, h as init_agent_state, ji as markAgentStateServiceInProcess, ki as getRuntimeSnapshot$1, m as getAgentStateSync, nn as init_session_history, tn as appendSessionIdToHistory, wi as appendAgentPlaneSession } from "./agent-state-Bb3UUxQm.js";
4
+ import { Bi as markAgentStateServiceInProcess, Fi as init_agents, Ni as appendAgentPlaneSession, Ri as getRuntimeSnapshot$1, Vi as setAgentRuntimeMirror, _ as init_agent_state, dn as init_session_history, g as getAgentStateSync, un as appendSessionIdToHistory, zi as init_agent_runtime_mirror } from "./agent-state-FABw8neJ.js";
5
5
  import { Context, Effect, Layer, SubscriptionRef } from "effect";
6
6
  //#region services/agent-state-service.ts
7
7
  /**
@@ -61,7 +61,7 @@ const AgentStateServiceLive = Layer.effect(AgentStateService, Effect.gen(functio
61
61
  const store = yield* Effect.promise(() => initEventStore());
62
62
  const ref = yield* SubscriptionRef.make({});
63
63
  const seedFromSources = Effect.gen(function* () {
64
- const { reconstructCacheAuto } = yield* Effect.promise(() => import("./reconstruct-cache-BP8UIKt7.js"));
64
+ const { reconstructCacheAuto } = yield* Effect.promise(() => import("./reconstruct-cache-3JzPOune.js"));
65
65
  const result = yield* Effect.promise(() => reconstructCacheAuto());
66
66
  const seeded = result.agentRuntimeById;
67
67
  yield* Effect.promise(() => emitBootReconciledStopEvents(store, result.markedStoppedIds, seeded, "[AgentStateService] Failed to emit boot-reconciled stop event:"));
@@ -125,4 +125,4 @@ function applyEventToRef(ref, ev) {
125
125
  //#endregion
126
126
  export { mergeRuntimeBySequence as i, AgentStateServiceLive as n, getRuntimeSnapshot as r, AgentStateService as t };
127
127
 
128
- //# sourceMappingURL=agent-state-service-BFbttwRA.js.map
128
+ //# sourceMappingURL=agent-state-service-rDenYSlD.js.map
@@ -0,0 +1,3 @@
1
+ import { A as saveAgentStateSync, Ar as transitionIssueToInReview, B as resolveAgentTargetSync, Br as getAgentRuntimeBaseCommand, C as markAgentTroubled, Ci as writeChannelsBridgeMcpConfig, E as recordAgentFailureSync, F as writeAgentStateJsonSync, Ft as resumeAgent, Gr as getRoleRuntimeBaseCommand, H as waitForReadySignal, I as isRole, J as compactAtTierRunBoundary, Jr as injectPiConversationMemory, Jt as appendActivity, K as saveAgentRuntimeState, L as clearReadySignal, Lr as OHMYPI_AGENT_READY_TIMEOUT_SECONDS, M as setAgentPausedSync, N as setAgentYieldedSync, Nt as buildCompactRecoverySeed, O as resetAgentFailureCount, Or as retrieveSpawnTimeMemoryContext, P as wipeAgentStateDirs, Q as shouldReplayCompactAtTierRunBoundary, Qt as getSessionId, R as isQualifiedAgentId, Rr as describeOhmypiSpawnFailure, S as markAgentStoppedState, T as recordAgentFailure, Tr as buildAgentLaunchConfig, U as getAgentRuntimeState, Ut as messageAgent, V as waitForAgentIdle, W as getAgentRuntimeStateSync, Wr as getProviderAuthMode, X as replayCrashedStandingAgent, Xt as getLatestSessionId, Y as contextWindowForModel, Yr as roleAgentDefinitionPath, Yt as getActivity, Z as replayStandingAgent, Zr as waitForPromptReady, Zt as getLatestSessionIdSync, _i as buildResumeContinueMessage, _n as listAgentStates, ar as deliverAgentMessage, bi as dismissDevChannelsDialog, bn as warnOnBareNumericIssueIds, c as clearAgentTroubled, ci as determineModel, cr as deliverResumeMessageWithTranscriptConfirmation, di as getProviderTmuxFlags, f as getAgentDir, fr as setAgentDeliveryMethod, ft as autoRecoverAgents, g as getAgentStateSync, gi as buildDefaultResumeContinueMessage, h as getAgentStateFilePath, hn as dropLegacyAgentStatesMissingRoleAsync, ht as restartAgent, j as setAgentPaused, k as saveAgentState, kr as transitionIssueToInProgress, l as clearAgentTroubledSync, li as getProviderEnvForModel, m as getAgentState, mn as stopAgentSync, mt as recoverAgent, n as SESSION_EXITED_BEFORE_KICKOFF, o as clearAgentPaused, oi as buildCavemanExports, on as spawnAgent, or as deliverAgentPermissionDecision, pn as stopAgent, pt as detectCrashedAgents, q as init_agents, r as __testInternals, s as clearAgentPausedSync, si as buildSpawnEnvForModel, sn as spawnRun, sr as deliverInitialPromptWithRetry, t as GOVERNOR_SLOT_PAUSE_REASON_PREFIX, tn as saveSessionId, u as clearYieldForResumeSync, ui as getProviderExportsForModel, v as isAgentPaused, vi as decideChannelsForWorkAgent, vn as listRunningAgents, wr as assertWorkspaceStackHealthyForSpawn, x as markAgentRunningState, y as isAgentTroubled, yi as decideSupervisorForWorkAgent, yn as listRunningAgentsSync, z as normalizeAgentId } from "./agent-state-FABw8neJ.js";
2
+ init_agents();
3
+ export { GOVERNOR_SLOT_PAUSE_REASON_PREFIX, OHMYPI_AGENT_READY_TIMEOUT_SECONDS, SESSION_EXITED_BEFORE_KICKOFF, __testInternals, appendActivity, assertWorkspaceStackHealthyForSpawn, autoRecoverAgents, buildAgentLaunchConfig, buildCavemanExports, buildCompactRecoverySeed, buildDefaultResumeContinueMessage, buildResumeContinueMessage, buildSpawnEnvForModel, clearAgentPaused, clearAgentPausedSync, clearAgentTroubled, clearAgentTroubledSync, clearReadySignal, clearYieldForResumeSync, compactAtTierRunBoundary, contextWindowForModel, decideChannelsForWorkAgent, decideSupervisorForWorkAgent, deliverAgentMessage, deliverAgentPermissionDecision, deliverInitialPromptWithRetry, deliverResumeMessageWithTranscriptConfirmation, describeOhmypiSpawnFailure, detectCrashedAgents, determineModel, dismissDevChannelsDialog, dropLegacyAgentStatesMissingRoleAsync, getActivity, getAgentDir, getAgentRuntimeBaseCommand, getAgentRuntimeState, getAgentRuntimeStateSync, getAgentState, getAgentStateFilePath, getAgentStateSync, getLatestSessionId, getLatestSessionIdSync, getProviderAuthMode, getProviderEnvForModel, getProviderExportsForModel, getProviderTmuxFlags, getRoleRuntimeBaseCommand, getSessionId, injectPiConversationMemory, isAgentPaused, isAgentTroubled, isQualifiedAgentId, isRole, listAgentStates, listRunningAgents, listRunningAgentsSync, markAgentRunningState, markAgentStoppedState, markAgentTroubled, messageAgent, normalizeAgentId, recordAgentFailure, recordAgentFailureSync, recoverAgent, replayCrashedStandingAgent, replayStandingAgent, resetAgentFailureCount, resolveAgentTargetSync, restartAgent, resumeAgent, retrieveSpawnTimeMemoryContext, roleAgentDefinitionPath, saveAgentRuntimeState, saveAgentState, saveAgentStateSync, saveSessionId, setAgentDeliveryMethod, setAgentPaused, setAgentPausedSync, setAgentYieldedSync, shouldReplayCompactAtTierRunBoundary, spawnAgent, spawnRun, stopAgent, stopAgentSync, transitionIssueToInProgress, transitionIssueToInReview, waitForAgentIdle, waitForPromptReady, waitForReadySignal, warnOnBareNumericIssueIds, wipeAgentStateDirs, writeAgentStateJsonSync, writeChannelsBridgeMcpConfig };
@@ -1,7 +1,7 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Fi as init_paths, Pi as getOverdeckHome } from "./config-yaml-BwOEANMr.js";
3
- import { _ as integer, a as EventBus, b as and, c as Records, d as getOverdeckDatabaseSync, f as init_infra, h as text, l as Tmux, m as sqliteTable, p as init_sqlite_core, r as Db, v as init_drizzle_orm, x as eq } from "./infra-KTp9KV9u.js";
4
- import { n as init_issues, t as IssueId } from "./issues-CkvUoAnq.js";
2
+ import { Ri as getOverdeckHome, zi as init_paths } from "./config-yaml-D60AnTIu.js";
3
+ import { _ as integer, a as EventBus, b as and, c as Records, d as getOverdeckDatabaseSync, f as init_infra, h as text, l as Tmux, m as sqliteTable, p as init_sqlite_core, r as Db, v as init_drizzle_orm, x as eq } from "./infra-CJRi_5Wu.js";
4
+ import { n as init_issues, t as IssueId } from "./issues-RGHQUKhB.js";
5
5
  import { join } from "node:path";
6
6
  import { Context, Effect, Layer, Schema } from "effect";
7
7
  import { appendFileSync, mkdirSync } from "fs";
@@ -197,7 +197,7 @@ function parseAgentStateJsonSync(content, fallbackId) {
197
197
  function listAgentIdsByPrefixSync(prefix) {
198
198
  const ids = /* @__PURE__ */ new Set();
199
199
  try {
200
- const rows = getOverdeckDatabaseSync().prepare(`SELECT id FROM agents WHERE id LIKE ?`).all(`${prefix}%`);
200
+ const rows = getOverdeckDatabaseSync(void 0, { readOnly: true }).prepare(`SELECT id FROM agents WHERE id LIKE ?`).all(`${prefix}%`);
201
201
  for (const r of rows) ids.add(r.id);
202
202
  } catch {}
203
203
  try {
@@ -291,7 +291,7 @@ function backfillAgentsSync(options) {
291
291
  * Drop-in for countAgentsByStatus() from database/agents-db.ts.
292
292
  */
293
293
  function countAgentsByStatus(status) {
294
- const rows = getOverdeckDatabaseSync().prepare(`SELECT role, COUNT(*) AS n FROM agents WHERE status = ? GROUP BY role`).all(status);
294
+ const rows = getOverdeckDatabaseSync(void 0, { readOnly: true }).prepare(`SELECT role, COUNT(*) AS n FROM agents WHERE status = ? GROUP BY role`).all(status);
295
295
  const result = {};
296
296
  for (const row of rows) result[row.role] = row.n;
297
297
  return result;
@@ -301,14 +301,14 @@ function countAgentsByStatus(status) {
301
301
  * Drop-in for countAgentsByStatusRole() from database/agents-db.ts.
302
302
  */
303
303
  function countAgentsByStatusRole(status, role) {
304
- return getOverdeckDatabaseSync().prepare(`SELECT COUNT(*) AS n FROM agents WHERE status = ? AND role = ?`).get(status, role)?.n ?? 0;
304
+ return getOverdeckDatabaseSync(void 0, { readOnly: true }).prepare(`SELECT COUNT(*) AS n FROM agents WHERE status = ? AND role = ?`).get(status, role)?.n ?? 0;
305
305
  }
306
306
  /**
307
307
  * List all agents from the overdeck agents table as AgentState-compatible objects.
308
308
  * Used as a fallback in reconstruct-cache when listRunningAgents() fails.
309
309
  */
310
310
  function listAllAgentsSync() {
311
- const rows = getOverdeckDatabaseSync().prepare(`
311
+ const rows = getOverdeckDatabaseSync(void 0, { readOnly: true }).prepare(`
312
312
  SELECT id, issue_id, role, status, workspace, session_id, harness, model,
313
313
  host_override, delivery_method, started_at, last_resume_at,
314
314
  stopped_by_user, kickoff_delivered, paused, paused_reason, troubled,
@@ -1024,4 +1024,4 @@ var init_agents = __esmMin((() => {
1024
1024
  //#endregion
1025
1025
  export { logDeaconEventSync as _, countAgentsByStatus as a, init_agents as c, removeAgentRecordSync as d, tombstoneAgentRecordSync as f, logAgentLifecycleSync as g, init_persistent_logger as h, backfillAgentsSync as i, listAgentIdsByPrefixSync as l, isTerminalIssueStage as m, AgentsResolverLive as n, countAgentsByStatusRole as o, getIssueStageSync as p, RETAINED_TRANSCRIPTS_PHASE as r, ensureAgentTombstoneSync as s, AgentsResolver as t, listAllAgentsSync as u };
1026
1026
 
1027
- //# sourceMappingURL=agents-CqQJW75N.js.map
1027
+ //# sourceMappingURL=agents-DzpQidT8.js.map
@@ -1,129 +1,14 @@
1
- import { Fi as init_paths, _i as PROJECT_DOCS_SUBDIR, bi as PROJECT_PRDS_PLANNED_SUBDIR, ci as ARCHIVES_DIR, vi as PROJECT_PRDS_ACTIVE_SUBDIR, xi as PROJECT_PRDS_SUBDIR, yi as PROJECT_PRDS_COMPLETED_SUBDIR } from "./config-yaml-BwOEANMr.js";
2
- import { a as PAN_DIRNAME, c as PAN_SESSIONS_FILENAME, i as PAN_CONTINUE_FILENAME, n as PAN_CONTEXT_FILENAME, s as PAN_FEEDBACK_DIRNAME, u as PAN_SPEC_FILENAME } from "./types-DbxY2QB6.js";
3
- import { a as getDraftPath, o as getIssueDraftPath, t as init_pan_dir } from "./pan-dir-DDd91kMb.js";
4
- import { a as stepSkipped, i as stepOk, n as init_types, r as stepFailed } from "./types-DjpLVpsj.js";
1
+ import { Si as PROJECT_PRDS_COMPLETED_SUBDIR, bi as PROJECT_DOCS_SUBDIR, di as ARCHIVES_DIR, wi as PROJECT_PRDS_SUBDIR, xi as PROJECT_PRDS_ACTIVE_SUBDIR, zi as init_paths } from "./config-yaml-D60AnTIu.js";
2
+ import { a as PAN_DIRNAME, c as PAN_SESSIONS_FILENAME, i as PAN_CONTINUE_FILENAME, n as PAN_CONTEXT_FILENAME, s as PAN_FEEDBACK_DIRNAME, u as PAN_SPEC_FILENAME } from "./types-pLpbsNto.js";
3
+ import { t as init_pan_dir } from "./pan-dir-B4NfzOf3.js";
4
+ import { i as findPrdAtStatusSync, t as canonicalPrdSubdirSync } from "./prd-locations-F2oLSAhy.js";
5
+ import { a as stepSkipped, i as stepOk, n as init_types, r as stepFailed } from "./types-PW4zkxCM.js";
5
6
  import { Effect } from "effect";
6
7
  import { existsSync, readdirSync } from "fs";
7
8
  import { dirname, join } from "path";
8
- import { access, readFile, readdir } from "node:fs/promises";
9
- import { cp as cp$1, mkdir as mkdir$1, rename as rename$1 } from "fs/promises";
9
+ import { cp, mkdir, rename } from "fs/promises";
10
10
  import { exec } from "child_process";
11
11
  import { promisify } from "util";
12
- //#region ../../lib/prd-locations.ts
13
- /**
14
- * PRD location resolution — single source of truth.
15
- *
16
- * PRDs have historically been written in four formats due to a casing bug:
17
- * 1. docs/prds/<status>/<id-lower>/ — canonical subdirectory (new)
18
- * 2. docs/prds/<status>/<ID-UPPER>/ — buggy uppercase variant
19
- * 3. docs/prds/<status>/<id-lower>-plan.md — legacy flat file
20
- * 4. docs/prds/<status>/<ID-UPPER>-plan.md — buggy uppercase flat file
21
- *
22
- * All readers MUST go through findPrdAtStatus / findPrdAnywhere so they tolerate
23
- * every variant. All writers MUST use canonicalPrdSubdir so new artifacts only
24
- * land in the canonical lowercase subdirectory format.
25
- */
26
- init_paths();
27
- init_pan_dir();
28
- /** Read Markdown from any location returned by this module's PRD resolvers. */
29
- async function readPrdContent(loc) {
30
- if (loc.format === "flat" || loc.format === "pan-draft") return readFile(loc.path, "utf8").catch(() => null);
31
- const firstMarkdown = (await readdir(loc.path).catch(() => [])).filter((file) => file.endsWith(".md")).sort((a, b) => {
32
- if (a === "prd.md") return -1;
33
- if (b === "prd.md") return 1;
34
- return a.localeCompare(b);
35
- })[0];
36
- if (!firstMarkdown) return null;
37
- return readFile(join(loc.path, firstMarkdown), "utf8").catch(() => null);
38
- }
39
- const STATUS_DIRS = {
40
- active: PROJECT_PRDS_ACTIVE_SUBDIR,
41
- planned: PROJECT_PRDS_PLANNED_SUBDIR,
42
- completed: PROJECT_PRDS_COMPLETED_SUBDIR
43
- };
44
- function statusRoot(projectPath, status) {
45
- return join(projectPath, PROJECT_DOCS_SUBDIR, PROJECT_PRDS_SUBDIR, STATUS_DIRS[status]);
46
- }
47
- /**
48
- * Canonical lowercase subdirectory path. Always use this for NEW writes.
49
- * Does not check existence — callers create the directory as needed.
50
- */
51
- function canonicalPrdSubdirSync(projectPath, issueId, status) {
52
- return join(statusRoot(projectPath, status), issueId.toLowerCase());
53
- }
54
- /**
55
- * Find an existing PRD for an issue under a single lifecycle status.
56
- * Checks all four legacy/buggy formats, preferring canonical.
57
- */
58
- function findPrdAtStatusSync(projectPath, issueId, status) {
59
- const root = statusRoot(projectPath, status);
60
- const lower = issueId.toLowerCase();
61
- const upper = issueId.toUpperCase();
62
- const candidates = [
63
- {
64
- path: join(root, lower),
65
- format: "subdir",
66
- status
67
- },
68
- {
69
- path: join(root, upper),
70
- format: "subdir",
71
- status
72
- },
73
- {
74
- path: join(root, `${lower}-plan.md`),
75
- format: "flat",
76
- status
77
- },
78
- {
79
- path: join(root, `${upper}-plan.md`),
80
- format: "flat",
81
- status
82
- }
83
- ];
84
- for (const c of candidates) if (existsSync(c.path)) return c;
85
- return null;
86
- }
87
- function draftPrdCandidates(projectPath, issueId) {
88
- return [{
89
- path: getIssueDraftPath(projectPath, issueId),
90
- format: "pan-draft",
91
- status: "draft"
92
- }, {
93
- path: getDraftPath(projectPath, `${issueId.toLowerCase()}.md`),
94
- format: "pan-draft",
95
- status: "draft"
96
- }];
97
- }
98
- function findDraftPrdSync(projectPath, issueId) {
99
- for (const candidate of draftPrdCandidates(projectPath, issueId)) if (existsSync(candidate.path)) return candidate;
100
- return null;
101
- }
102
- async function findDraftPrdAsync(projectPath, issueId) {
103
- for (const candidate of draftPrdCandidates(projectPath, issueId)) try {
104
- await access(candidate.path);
105
- return candidate;
106
- } catch {}
107
- return null;
108
- }
109
- /**
110
- * Find a PRD across all lifecycle statuses, in priority order:
111
- * active → completed → planned → draft. Returns the first match or null.
112
- */
113
- function findPrdAnywhereSync(projectPath, issueId) {
114
- for (const status of [
115
- "active",
116
- "completed",
117
- "planned"
118
- ]) {
119
- const loc = findPrdAtStatusSync(projectPath, issueId, status);
120
- if (loc) return loc;
121
- }
122
- return findDraftPrdSync(projectPath, issueId);
123
- }
124
- /** Async Effect variant of {@link findDraftPrdAsync}. */
125
- const findDraftPrd = (projectPath, issueId) => Effect.promise(() => findDraftPrdAsync(projectPath, issueId));
126
- //#endregion
127
12
  //#region ../../lib/lifecycle/archive-planning.ts
128
13
  /**
129
14
  * archive-planning — PRD active→completed + workspace .pan/ preservation.
@@ -200,7 +85,7 @@ async function movePrdImpl(ctx, opts) {
200
85
  const completedFlat = join(ctx.projectPath, PROJECT_DOCS_SUBDIR, PROJECT_PRDS_SUBDIR, PROJECT_PRDS_COMPLETED_SUBDIR, `${issueLower}-plan.md`);
201
86
  const dest = source.format === "subdir" ? completedSubdir : completedFlat;
202
87
  const destParent = dirname(dest);
203
- if (!existsSync(destParent)) await mkdir$1(destParent, { recursive: true });
88
+ if (!existsSync(destParent)) await mkdir(destParent, { recursive: true });
204
89
  const formatLabel = source.format === "subdir" ? "PRD subdirectory" : "PRD";
205
90
  const flatActive = source.format === "flat" ? join(ctx.projectPath, PROJECT_DOCS_SUBDIR, PROJECT_PRDS_SUBDIR, PROJECT_PRDS_ACTIVE_SUBDIR) : null;
206
91
  const flatCompleted = source.format === "flat" ? join(ctx.projectPath, PROJECT_DOCS_SUBDIR, PROJECT_PRDS_SUBDIR, PROJECT_PRDS_COMPLETED_SUBDIR) : null;
@@ -214,7 +99,7 @@ async function movePrdImpl(ctx, opts) {
214
99
  await execAsync(`git mv "${resolvedSidecarSource}" "${sidecarDest}"`, { cwd: ctx.projectPath });
215
100
  } catch {
216
101
  try {
217
- await cp$1(resolvedSidecarSource, sidecarDest);
102
+ await cp(resolvedSidecarSource, sidecarDest);
218
103
  } catch {}
219
104
  }
220
105
  await execAsync(`git commit -m "chore: move ${ctx.issueId} PRD to completed"`, { cwd: ctx.projectPath });
@@ -226,10 +111,10 @@ async function movePrdImpl(ctx, opts) {
226
111
  return stepFailed(step, `PRD source ${source.path} is missing — nothing to preserve`);
227
112
  }
228
113
  try {
229
- await cp$1(source.path, dest, { recursive: true });
114
+ await cp(source.path, dest, { recursive: true });
230
115
  if (!existsSync(dest)) return stepFailed(step, "PRD copy appeared to succeed but destination not found");
231
116
  if (resolvedSidecarSource && sidecarDest) try {
232
- await cp$1(resolvedSidecarSource, sidecarDest);
117
+ await cp(resolvedSidecarSource, sidecarDest);
233
118
  } catch {}
234
119
  return stepOk(step, [`Copied ${formatLabel} to completed/ (git mv failed, plain copy succeeded)`]);
235
120
  } catch (err) {
@@ -258,39 +143,39 @@ async function archiveWorkspaceArtifactsImpl(ctx) {
258
143
  if (existsSync(archiveDir)) {
259
144
  let version = 1;
260
145
  while (existsSync(`${archiveDir}.${version}`)) version++;
261
- await rename$1(archiveDir, `${archiveDir}.${version}`);
146
+ await rename(archiveDir, `${archiveDir}.${version}`);
262
147
  }
263
- await mkdir$1(archiveDir, { recursive: true });
148
+ await mkdir(archiveDir, { recursive: true });
264
149
  const details = [];
265
150
  const panDir = join(workspacePath, PAN_DIRNAME);
266
151
  const feedbackDir = join(panDir, PAN_FEEDBACK_DIRNAME);
267
152
  if (existsSync(feedbackDir)) {
268
- await cp$1(feedbackDir, join(archiveDir, "feedback"), { recursive: true });
153
+ await cp(feedbackDir, join(archiveDir, "feedback"), { recursive: true });
269
154
  details.push("Archived feedback/");
270
155
  }
271
156
  const continueFile = join(panDir, PAN_CONTINUE_FILENAME);
272
157
  if (existsSync(continueFile)) {
273
- await cp$1(continueFile, join(archiveDir, PAN_CONTINUE_FILENAME));
158
+ await cp(continueFile, join(archiveDir, PAN_CONTINUE_FILENAME));
274
159
  details.push(`Archived ${PAN_CONTINUE_FILENAME}`);
275
160
  }
276
161
  const specFile = join(panDir, PAN_SPEC_FILENAME);
277
162
  if (existsSync(specFile)) {
278
- await cp$1(specFile, join(archiveDir, PAN_SPEC_FILENAME));
163
+ await cp(specFile, join(archiveDir, PAN_SPEC_FILENAME));
279
164
  details.push(`Archived ${PAN_SPEC_FILENAME}`);
280
165
  }
281
166
  const sessionsFile = join(panDir, PAN_SESSIONS_FILENAME);
282
167
  if (existsSync(sessionsFile)) {
283
- await cp$1(sessionsFile, join(archiveDir, PAN_SESSIONS_FILENAME));
168
+ await cp(sessionsFile, join(archiveDir, PAN_SESSIONS_FILENAME));
284
169
  details.push(`Archived ${PAN_SESSIONS_FILENAME}`);
285
170
  }
286
171
  const contextFile = join(panDir, PAN_CONTEXT_FILENAME);
287
172
  if (existsSync(contextFile)) {
288
- await cp$1(contextFile, join(archiveDir, PAN_CONTEXT_FILENAME));
173
+ await cp(contextFile, join(archiveDir, PAN_CONTEXT_FILENAME));
289
174
  details.push(`Archived ${PAN_CONTEXT_FILENAME}`);
290
175
  }
291
176
  const prdFile = join(panDir, "prd.md");
292
177
  if (existsSync(prdFile)) {
293
- await cp$1(prdFile, join(archiveDir, "prd.md"));
178
+ await cp(prdFile, join(archiveDir, "prd.md"));
294
179
  details.push("Archived workspace prd.md");
295
180
  }
296
181
  details.push(`Archived to ${archiveDir}`);
@@ -311,6 +196,6 @@ function archivePlanning(ctx, opts = {}) {
311
196
  });
312
197
  }
313
198
  //#endregion
314
- export { inferBranchFromWorkspace as a, findPrdAnywhereSync as c, findWorkspacePath as i, readPrdContent as l, archiveWorkspaceArtifacts as n, movePrd as o, findAllWorkspacePaths as r, findDraftPrd as s, archivePlanning as t };
199
+ export { inferBranchFromWorkspace as a, findWorkspacePath as i, archiveWorkspaceArtifacts as n, movePrd as o, findAllWorkspacePaths as r, archivePlanning as t };
315
200
 
316
- //# sourceMappingURL=archive-planning-BwEhu9Oq.js.map
201
+ //# sourceMappingURL=archive-planning-BL1ABtW0.js.map
@@ -0,0 +1,2 @@
1
+ import { i as findWorkspacePath } from "./archive-planning-BL1ABtW0.js";
2
+ export { findWorkspacePath };
@@ -1,5 +1,5 @@
1
- import { Fi as init_paths, Pi as getOverdeckHome } from "./config-yaml-BwOEANMr.js";
2
- import { n as openDatabase, t as init_driver } from "./driver-CmsY2RLl.js";
1
+ import { Ri as getOverdeckHome, zi as init_paths } from "./config-yaml-D60AnTIu.js";
2
+ import { n as openDatabase, t as init_driver } from "./driver-BtcFz-qu.js";
3
3
  import { dirname, join } from "node:path";
4
4
  import { mkdirSync } from "node:fs";
5
5
  import { randomBytes } from "node:crypto";
@@ -208,4 +208,4 @@ function unshareArtifactBySlugJob(slug) {
208
208
  //#endregion
209
209
  export { getArtifactBySlugJob, listArtifactsForWorkspaceOrIssueJob, unshareArtifactBySlugJob };
210
210
 
211
- //# sourceMappingURL=artifact-index-jobs-C6Lg2rKm.js.map
211
+ //# sourceMappingURL=artifact-index-jobs-Cjdme0jS.js.map
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Ci as SYNC_SOURCES, Fi as init_paths, Pi as getOverdeckHome } from "./config-yaml-BwOEANMr.js";
2
+ import { Ei as SYNC_SOURCES, Ri as getOverdeckHome, p as loadConfigSync, t as init_config_yaml, zi as init_paths } from "./config-yaml-D60AnTIu.js";
3
3
  import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from "fs";
4
4
  import { join } from "path";
5
5
  //#region ../../lib/context-layers/layers.ts
@@ -231,15 +231,25 @@ function readBundledRules() {
231
231
  return readdirSync(dir).filter((f) => f.endsWith(".md")).sort().map((f) => parseRule(f.replace(/\.md$/, ""), readFileSync(join(dir, f), "utf-8")));
232
232
  }
233
233
  /**
234
+ * Rule names switched off via `context.rules: { <name>: false }` in
235
+ * config.yaml. Absent keys and `true` mean the rule stays on, so a bundled
236
+ * rule is default-on and the map only ever lists opt-outs.
237
+ */
238
+ function disabledRuleNames(context) {
239
+ return new Set(Object.entries(context?.rules ?? {}).filter(([, enabled]) => enabled === false).map(([name]) => name));
240
+ }
241
+ /**
234
242
  * Render the applicable bundled rules into one CLAUDE.md section.
235
243
  *
236
244
  * `includeDev` admits `scope: dev` rules — set it from `isDevMode()` so they
237
- * only fold in on a overdeck checkout. Each rule body is rendered for
238
- * the target harness so any `{{#harness:*}}` blocks resolve. Returns '' when
239
- * no rules apply.
245
+ * only fold in on a overdeck checkout. `disabled` names rules switched off in
246
+ * config (see {@link disabledRuleNames}); callers that render for real
247
+ * distribution or preview must pass it so both surfaces agree. Each rule body
248
+ * is rendered for the target harness so any `{{#harness:*}}` blocks resolve.
249
+ * Returns '' when no rules apply.
240
250
  */
241
- function renderBundledRules(harness, includeDev) {
242
- const sections = readBundledRules().filter((r) => includeDev || r.scope === "universal").map((r) => renderForHarness(r.body, harness).trim()).filter((s) => s.length > 0);
251
+ function renderBundledRules(harness, includeDev, disabled = /* @__PURE__ */ new Set()) {
252
+ const sections = readBundledRules().filter((r) => (includeDev || r.scope === "universal") && !disabled.has(r.name)).map((r) => renderForHarness(r.body, harness).trim()).filter((s) => s.length > 0);
243
253
  if (sections.length === 0) return "";
244
254
  return `## Overdeck Engineering Rules\n\n${sections.join("\n\n")}`;
245
255
  }
@@ -277,7 +287,15 @@ function userContentOutsideRegion(existing) {
277
287
  * {@link applyManagedRegion} when writing the harness's CLAUDE.md.
278
288
  */
279
289
  function renderGlobalLayer(harness, includeDevRules) {
280
- return [renderForHarness(readLayerContent(globalContextFile()), harness).trim(), renderBundledRules(harness, includeDevRules)].filter((s) => s.length > 0).join("\n\n---\n\n");
290
+ return [renderForHarness(readLayerContent(globalContextFile()), harness).trim(), renderBundledRules(harness, includeDevRules, configDisabledRuleNames())].filter((s) => s.length > 0).join("\n\n---\n\n");
291
+ }
292
+ /** Resolve the config-disabled bundled-rule names; a broken config disables nothing. */
293
+ function configDisabledRuleNames() {
294
+ try {
295
+ return disabledRuleNames(loadConfigSync().config.context);
296
+ } catch {
297
+ return /* @__PURE__ */ new Set();
298
+ }
281
299
  }
282
300
  /**
283
301
  * Render a project layer for one harness, or a union of harnesses sharing
@@ -291,6 +309,7 @@ function renderProjectLayer(projectRoot, harness) {
291
309
  }
292
310
  var REGION_BEGIN, REGION_END;
293
311
  var init_render = __esmMin((() => {
312
+ init_config_yaml();
294
313
  init_harness();
295
314
  init_rules();
296
315
  init_layers();
@@ -341,6 +360,6 @@ var init_assemble = __esmMin((() => {
341
360
  PROJECT_LAYER_END = "<!-- overdeck:project-layer:end -->";
342
361
  }));
343
362
  //#endregion
344
- export { projectContextDir as A, ensureProjectLayer as C, legacyProjectContextFile as D, init_layers as E, workspaceContextDir as F, workspaceContextFile as I, readLayerContent as M, resolveProjectContextFile as N, legacyWorkspaceContextFile as O, resolveWorkspaceContextFile as P, codexGlobalContextFile as S, globalContextFile as T, KNOWN_HARNESS_MARKERS as _, REGION_BEGIN as a, validateTemplate as b, init_render as c, userContentOutsideRegion as d, init_rules as f, HARNESS_MARKERS as g, renderBundledRules as h, workspaceContextWithoutProjectLayer as i, projectContextFile as j, piGlobalContextFile as k, renderGlobalLayer as l, readBundledRules as m, PROJECT_LAYER_START as n, REGION_END as o, parseRule as p, init_assemble as r, hasManagedRegion as s, PROJECT_LAYER_END as t, renderProjectLayer as u, init_harness as v, globalContextDir as w, PROJECT_STARTER as x, renderForHarness as y };
363
+ export { piGlobalContextFile as A, codexGlobalContextFile as C, init_layers as D, globalContextFile as E, resolveWorkspaceContextFile as F, workspaceContextDir as I, workspaceContextFile as L, projectContextFile as M, readLayerContent as N, legacyProjectContextFile as O, resolveProjectContextFile as P, PROJECT_STARTER as S, globalContextDir as T, HARNESS_MARKERS as _, REGION_BEGIN as a, renderForHarness as b, hasManagedRegion as c, renderProjectLayer as d, userContentOutsideRegion as f, renderBundledRules as g, readBundledRules as h, workspaceContextWithoutProjectLayer as i, projectContextDir as j, legacyWorkspaceContextFile as k, init_render as l, parseRule as m, PROJECT_LAYER_START as n, REGION_END as o, init_rules as p, init_assemble as r, configDisabledRuleNames as s, PROJECT_LAYER_END as t, renderGlobalLayer as u, KNOWN_HARNESS_MARKERS as v, ensureProjectLayer as w, validateTemplate as x, init_harness as y };
345
364
 
346
- //# sourceMappingURL=assemble-DyTp2gSB.js.map
365
+ //# sourceMappingURL=assemble-B_JgnCbG.js.map
@@ -1,10 +1,10 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Fi as init_paths, Pi as getOverdeckHome$1, Ri as packageRoot, Rr as apiLaunchModelIdSync, _r as getDashScopeUpstreamBaseUrl, dr as init_providers, mr as resolveKimiCodeModelAlias, oi as init_errors, pr as qualifyPiModel, ti as MessageDeliveryFailed, ur as getProviderForModelSync, vr as init_openai_compatible_proxy, zr as init_model_context_windows } from "./config-yaml-BwOEANMr.js";
3
- import { n as init_fs_lock, o as releaseRecordLock, t as acquireRecordLock } from "./fs-lock-cw25uO_E.js";
4
- import { G as activeComposerPayloadPresence, S as init_tmux, U as tmuxExecAsync, W as validateSessionName, Y as init_pane_choice_menu, Z as paneHasBlockingChoiceMenu, a as capturePaneText, et as colorFgBgForTheme, nt as init_ui_theme, q as init_pane_composer, tt as getUiThemeSync } from "./tmux-BqXzRuaH.js";
5
- import { s as getHarnessBehavior } from "./src-DudQNYVw.js";
6
- import { t as init_behavior } from "./behavior-Bitko0mD.js";
7
- import { f as toCodexSandboxValue, l as init_codex } from "./codex-OOea7lXs.js";
2
+ import { Hi as packageRoot, Hr as init_model_context_windows, Ri as getOverdeckHome$1, Vr as apiLaunchModelIdSync, br as init_openai_compatible_proxy, fr as getProviderForModelSync, gr as resolveKimiCodeModelAlias, hr as qualifyPiModel, ii as MessageDeliveryFailed, li as init_errors, pr as init_providers, yr as getDashScopeUpstreamBaseUrl, zi as init_paths } from "./config-yaml-D60AnTIu.js";
3
+ import { n as init_fs_lock, o as releaseRecordLock, t as acquireRecordLock } from "./fs-lock-DQ_gUxfq.js";
4
+ import { $ as init_pane_choice_menu, C as init_tmux, J as activeComposerPayloadPresence, K as tmuxExecAsync, Z as init_pane_composer, a as capturePaneText, at as getUiThemeSync, it as colorFgBgForTheme, ot as init_ui_theme, q as validateSessionName, tt as paneHasBlockingChoiceMenu } from "./tmux-wnT_hg-s.js";
5
+ import { s as getHarnessBehavior } from "./src-CdwN6WY6.js";
6
+ import { t as init_behavior } from "./behavior-DCg8CIWC.js";
7
+ import { f as toCodexSandboxValue, l as init_codex } from "./codex-DYyZL8JD.js";
8
8
  import { dirname, join } from "node:path";
9
9
  import { Data } from "effect";
10
10
  import { existsSync, mkdirSync, readFileSync, renameSync, writeFileSync } from "fs";
@@ -462,6 +462,7 @@ function generateLauncherScriptSync(config) {
462
462
  lines.push("#!/bin/bash");
463
463
  lines.push("export OVERDECK_HOST_TMUX=\"$TMUX\" OVERDECK_HOST_TMUX_PANE=\"$TMUX_PANE\"");
464
464
  lines.push("unset TMUX TMUX_PANE STY");
465
+ if (config.spawnMode !== "remote") lines.push(`export OVERDECK_HOME=${shellQuote$1(getOverdeckHome$1())}`);
465
466
  if (config.setPipefail) lines.push("set -o pipefail");
466
467
  lines.push("command -v mkcert >/dev/null 2>&1 && export NODE_EXTRA_CA_CERTS=\"$(mkcert -CAROOT)/rootCA.pem\"");
467
468
  lines.push("export SKIP_DOCS_INDEX=1");
@@ -1439,4 +1440,4 @@ var init_auto_spawn_consent = __esmMin((() => {
1439
1440
  //#endregion
1440
1441
  export { generateLauncherScriptSync as C, normalizeModelOverrideSync as D, init_model_validation as E, requireModelOverrideSync as O, normalizeFlywheelRunId as S, MODEL_ID_PATTERN as T, init_tmux_dedup as _, readAutoSpawnOnFinalizeFlagAsync as a, init_provenance as b, writeAutoSpawnOnFinalizeFlag as c, assertValidDedupKey as d, completeKeyedSubmit as f, dedupTerminalOptionName as g, dedupTargetOptionName as h, init_auto_spawn_consent as i, shellQuoteModelIdSync as k, KeyedMarkerVerificationError as l, dedupPoisonOptionName as m, claimAutoSpawnConsentForWorkStart as n, releaseAutoSpawnConsentClaim as o, dedupPendingOptionName as p, completeAutoSpawnConsentClaim as r, withAutoSpawnConsentClaim as s, autoSpawnOnFinalizeFlagPath as t, KeyedSubmitTargetDeadError as u, isKeyedSubmitBlockedMenuError as v, init_launcher_generator as w, isOperatorStartedBy as x, sendKeysDedup as y };
1441
1442
 
1442
- //# sourceMappingURL=auto-spawn-consent-BDfe4qz0.js.map
1443
+ //# sourceMappingURL=auto-spawn-consent-BesWchEi.js.map
@@ -1,5 +1,5 @@
1
- import { n as isNoResumeValueEnabled } from "./no-resume-mode-MWI6pnrK.js";
2
- import { i as spawnSequencerAgent } from "./sequencer-agent-DS00KHVm.js";
1
+ import { n as isNoResumeValueEnabled } from "./no-resume-mode-DjMQRkId.js";
2
+ import { i as spawnSequencerAgent } from "./sequencer-agent-eN2P2lDz.js";
3
3
  //#region ../../lib/backlog/backlog-auto-trigger.ts
4
4
  /**
5
5
  * PAN-2396: --no-resume is the operator's full-quiescence escape hatch —
@@ -31,4 +31,4 @@ function triggerDebouncedIncrementalPass(projectRoot) {
31
31
  //#endregion
32
32
  export { triggerDebouncedIncrementalPass };
33
33
 
34
- //# sourceMappingURL=backlog-auto-trigger-DuOGpdDW.js.map
34
+ //# sourceMappingURL=backlog-auto-trigger-COLq639j.js.map
@@ -1,6 +1,6 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { t as init_src } from "./src-DudQNYVw.js";
3
- import { o as getPricingSync, s as init_cost } from "./cost-CQKI6OCu.js";
2
+ import { t as init_src } from "./src-CdwN6WY6.js";
3
+ import { o as getPricingSync, s as init_cost } from "./cost-DTuIRE4y.js";
4
4
  import { existsSync, readFileSync } from "node:fs";
5
5
  //#region ../../lib/cost-parsers/codex-parser.ts
6
6
  /**
@@ -250,4 +250,4 @@ var init_behavior = __esmMin((() => {
250
250
  //#endregion
251
251
  export { parseCodexSessionSync as i, init_codex_parser as n, parseCodexSessionCostEventsSync as r, init_behavior as t };
252
252
 
253
- //# sourceMappingURL=behavior-Bitko0mD.js.map
253
+ //# sourceMappingURL=behavior-DCg8CIWC.js.map
@@ -1,4 +1,4 @@
1
- import { a as emitActivityEntrySync, c as init_activity_logger } from "./activity-logger-BAVLrkR7.js";
1
+ import { l as init_activity_logger, o as emitActivityEntrySync } from "./activity-logger-SlTXYCVf.js";
2
2
  import { promises } from "fs";
3
3
  import { exec } from "child_process";
4
4
  import { promisify } from "util";
@@ -133,4 +133,4 @@ async function patrolDockerBridgePool(deps = {}) {
133
133
  //#endregion
134
134
  export { patrolDockerBridgePool };
135
135
 
136
- //# sourceMappingURL=bridge-pool-patrol-DiHEd13O.js.map
136
+ //# sourceMappingURL=bridge-pool-patrol-BDohuMRt.js.map
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Fi as init_paths, Pi as getOverdeckHome } from "./config-yaml-BwOEANMr.js";
2
+ import { Ri as getOverdeckHome, zi as init_paths } from "./config-yaml-D60AnTIu.js";
3
3
  import { dirname, join } from "path";
4
4
  import { randomUUID } from "crypto";
5
5
  import { mkdir, readFile, rename, stat, writeFile } from "fs/promises";
@@ -128,4 +128,4 @@ var init_briefing_freshness = __esmMin((() => {
128
128
  //#endregion
129
129
  export { resolveSessionContextBriefingPath as a, recordBriefingSessionStart as i, ensureSessionContextBriefingFile as n, init_briefing_freshness as r, appendFreshBriefingUpdate as t };
130
130
 
131
- //# sourceMappingURL=briefing-freshness-CDJcmHHZ.js.map
131
+ //# sourceMappingURL=briefing-freshness-ENa_hW_V.js.map
@@ -0,0 +1,2 @@
1
+ import { t as getBuildInfo } from "./build-info-WuZT6xyi.js";
2
+ export { getBuildInfo };
@@ -1,8 +1,8 @@
1
1
  //#region ../../lib/deploy/build-info.ts
2
2
  function getBuildInfo() {
3
3
  return {
4
- buildCommit: "0758e6339314e71dbcb1887de6f35a0447a73b7a",
5
- builtAt: "2026-08-09T13:45:25.828Z",
4
+ buildCommit: "06f30a0f945b8deccabd6783f82d60e94e3b668d",
5
+ builtAt: "2026-08-25T06:39:53.180Z",
6
6
  buildDirty: false,
7
7
  buildBranch: null
8
8
  };
@@ -10,4 +10,4 @@ function getBuildInfo() {
10
10
  //#endregion
11
11
  export { getBuildInfo as t };
12
12
 
13
- //# sourceMappingURL=build-info-DTX8JwVP.js.map
13
+ //# sourceMappingURL=build-info-WuZT6xyi.js.map
@@ -1,4 +1,4 @@
1
- import { Kr as CheckpointError, Mt as init_state_plane, Qr as InvalidAgentIdError, ai as VcsError, kt as STATE_BRANCH_PATHS, oi as init_errors } from "./config-yaml-BwOEANMr.js";
1
+ import { Mt as init_state_plane, Yr as CheckpointError, ci as VcsError, kt as STATE_BRANCH_PATHS, li as init_errors, ti as InvalidAgentIdError } from "./config-yaml-D60AnTIu.js";
2
2
  import { Effect, Layer } from "effect";
3
3
  import { join } from "path";
4
4
  import { tmpdir } from "os";
@@ -31,6 +31,19 @@ function assertSafeAgentId(agentId) {
31
31
  }
32
32
  const CHECKPOINT_AUTHOR_NAME = "Overdeck";
33
33
  const CHECKPOINT_AUTHOR_EMAIL = "overdeck@users.noreply.github.com";
34
+ const disabledCheckpointTargets = /* @__PURE__ */ new Set();
35
+ const NON_GIT_REPO_RE = /not a git repository/i;
36
+ /** True when checkpoint capture for this workspace has been disabled. */
37
+ function isCheckpointTargetDisabled(cwd) {
38
+ return disabledCheckpointTargets.has(cwd);
39
+ }
40
+ /** Disable a workspace (once, with one warning) when capture failed for lack of a git repo. */
41
+ function noteCheckpointCaptureFailure(cwd, cause) {
42
+ if (!NON_GIT_REPO_RE.test(String(cause))) return;
43
+ if (disabledCheckpointTargets.has(cwd)) return;
44
+ disabledCheckpointTargets.add(cwd);
45
+ console.warn(`[checkpoint] Disabled checkpoint capture for ${cwd} — not a git repository`);
46
+ }
34
47
  function checkpointStateExclusions() {
35
48
  return [
36
49
  ".overdeck",
@@ -523,14 +536,18 @@ function assertSafeAgentIdProgram(agentId) {
523
536
  function captureCheckpoint(cwd, agentId, turnId) {
524
537
  return Effect.gen(function* () {
525
538
  yield* assertSafeAgentIdProgram(agentId);
539
+ if (isCheckpointTargetDisabled(cwd)) return;
526
540
  yield* Effect.tryPromise({
527
541
  try: () => captureCheckpointPromise(cwd, agentId, turnId),
528
- catch: (cause) => new CheckpointError({
529
- agentId,
530
- operation: "capture",
531
- message: String(cause),
532
- cause
533
- })
542
+ catch: (cause) => {
543
+ noteCheckpointCaptureFailure(cwd, cause);
544
+ return new CheckpointError({
545
+ agentId,
546
+ operation: "capture",
547
+ message: String(cause),
548
+ cause
549
+ });
550
+ }
534
551
  });
535
552
  });
536
553
  }
@@ -657,6 +674,6 @@ function diffPatchFilesAgainstHead(cwd, filePaths) {
657
674
  });
658
675
  }
659
676
  //#endregion
660
- export { diffAgainstMain as a, diffCheckpoints as c, diffPatchSinceCommit as d, findCommitAtTime as f, pruneStaleCheckpointRefs as g, pruneCheckpointRefsForAgents as h, deleteLegacyCheckpointRefs as i, diffFilesAgainstHead as l, listCheckpoints as m, checkpointStateExclusions as n, diffAgainstMainFiles as o, getCheckpointTimestamp as p, deleteCheckpoint as r, diffCheckpointFiles as s, captureCheckpoint as t, diffPatchFilesAgainstHead as u };
677
+ export { pruneStaleCheckpointRefs as _, diffAgainstMain as a, diffCheckpoints as c, diffPatchSinceCommit as d, findCommitAtTime as f, pruneCheckpointRefsForAgents as g, listCheckpoints as h, deleteLegacyCheckpointRefs as i, diffFilesAgainstHead as l, isCheckpointTargetDisabled as m, checkpointStateExclusions as n, diffAgainstMainFiles as o, getCheckpointTimestamp as p, deleteCheckpoint as r, diffCheckpointFiles as s, captureCheckpoint as t, diffPatchFilesAgainstHead as u };
661
678
 
662
- //# sourceMappingURL=checkpoint-manager-BlOOdzLF.js.map
679
+ //# sourceMappingURL=checkpoint-manager-CSZ7aVQF.js.map
@@ -1,2 +1,2 @@
1
- import { g as pruneStaleCheckpointRefs, h as pruneCheckpointRefsForAgents, i as deleteLegacyCheckpointRefs, m as listCheckpoints, p as getCheckpointTimestamp, s as diffCheckpointFiles } from "./checkpoint-manager-BlOOdzLF.js";
1
+ import { _ as pruneStaleCheckpointRefs, g as pruneCheckpointRefsForAgents, h as listCheckpoints, i as deleteLegacyCheckpointRefs, p as getCheckpointTimestamp, s as diffCheckpointFiles } from "./checkpoint-manager-CSZ7aVQF.js";
2
2
  export { deleteLegacyCheckpointRefs, diffCheckpointFiles, getCheckpointTimestamp, listCheckpoints, pruneCheckpointRefsForAgents, pruneStaleCheckpointRefs };
@@ -1,4 +1,4 @@
1
- import { a as releaseTranscriptRange, i as listTranscriptCheckpoints, n as commitTranscriptRange, r as getTranscriptCheckpoint, t as claimTranscriptRange } from "./checkpoints-BGfl0cHM.js";
1
+ import { a as releaseTranscriptRange, i as listTranscriptCheckpoints, n as commitTranscriptRange, r as getTranscriptCheckpoint, t as claimTranscriptRange } from "./checkpoints-DUkUsPVS.js";
2
2
  import { parentPort } from "node:worker_threads";
3
3
  //#region ../../lib/memory/checkpoint-worker.ts
4
4
  function runOperation(operation, payload) {
@@ -1,4 +1,4 @@
1
- import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-KTp9KV9u.js";
1
+ import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-CJRi_5Wu.js";
2
2
  import { randomUUID } from "node:crypto";
3
3
  //#region ../../lib/overdeck/transcript-checkpoint-sync.ts
4
4
  /**
@@ -195,4 +195,4 @@ function getTranscriptCheckpoint(sessionId) {
195
195
  //#endregion
196
196
  export { releaseTranscriptRange as a, listTranscriptCheckpoints as i, commitTranscriptRange as n, getTranscriptCheckpoint as r, claimTranscriptRange as t };
197
197
 
198
- //# sourceMappingURL=checkpoints-BGfl0cHM.js.map
198
+ //# sourceMappingURL=checkpoints-DUkUsPVS.js.map
@@ -1,2 +1,2 @@
1
- import { a as releaseTranscriptRange, i as listTranscriptCheckpoints, n as commitTranscriptRange, r as getTranscriptCheckpoint, t as claimTranscriptRange } from "./checkpoints-BGfl0cHM.js";
1
+ import { a as releaseTranscriptRange, i as listTranscriptCheckpoints, n as commitTranscriptRange, r as getTranscriptCheckpoint, t as claimTranscriptRange } from "./checkpoints-DUkUsPVS.js";
2
2
  export { claimTranscriptRange, commitTranscriptRange, getTranscriptCheckpoint, listTranscriptCheckpoints, releaseTranscriptRange };
@@ -1,3 +1,3 @@
1
- import { n as provisionClaudeHooks, t as init_claude_hooks_provision } from "./claude-hooks-provision-BlGv6twJ.js";
1
+ import { n as provisionClaudeHooks, t as init_claude_hooks_provision } from "./claude-hooks-provision-fRofvhTN.js";
2
2
  init_claude_hooks_provision();
3
3
  export { provisionClaudeHooks };