@overdeck/desktop 0.46.0 → 0.47.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 (387) hide show
  1. package/drizzle/overdeck/0000_overdeck_init.sql +4 -1
  2. package/package.json +1 -1
  3. package/server/{acceptance-criteria-CCwFGICj.js → acceptance-criteria-10Ur5Dne.js} +2 -2
  4. package/server/{advancing-selfheal-De1L-Sb4.js → advancing-selfheal-BNwqxseD.js} +6 -6
  5. package/server/{agent-gc-CBULruzm.js → agent-gc-C3h9Or3a.js} +5 -5
  6. package/server/{agent-state-VQk8fY9F.js → agent-state-CYXJVG72.js} +1 -1
  7. package/server/agent-state-service-C63p_ftq.js +2 -0
  8. package/server/{agent-state-service-BlnSkRFA.js → agent-state-service-Ds6OeFvo.js} +15 -9
  9. package/server/{agents-C5rWYhb6.js → agents-J5mEnekq.js} +23 -16
  10. package/server/{agents-BKKkxKgK.js → agents-ePFVoZbu.js} +1 -1
  11. package/server/archive-planning-B2XplFzT.js +2 -0
  12. package/server/{archive-planning-C0lAbNB_.js → archive-planning-BwhxeP7C.js} +10 -6
  13. package/server/{artifact-index-jobs-ug6ZxIP5.js → artifact-index-jobs-D1q_vR3V.js} +2 -2
  14. package/server/{assemble-DnffNpOo.js → assemble-Bgwqv-Ro.js} +2 -2
  15. package/server/{tmux-dedup-DbN6MGzM.js → auto-spawn-consent-CQ9Bi9q6.js} +262 -13
  16. package/server/{backlog-auto-trigger-Dh-i9PQf.js → backlog-auto-trigger-n1lzPgN4.js} +3 -3
  17. package/server/{behavior-CfIg6pKp.js → behavior-td6-xhQk.js} +2 -2
  18. package/server/boot-reconciled-stop-events-C7gGe3oB.js +44 -0
  19. package/server/{bridge-pool-patrol-CUFmjVDN.js → bridge-pool-patrol-CYH2OLb5.js} +1 -1
  20. package/server/{briefing-freshness-DHmCSLar.js → briefing-freshness-DRqZ8lAz.js} +2 -2
  21. package/server/{build-info-CuFfxZxp.js → build-info-7yiEpl6u.js} +3 -3
  22. package/server/{build-info-BP160gU7.js → build-info-CpG__c63.js} +1 -1
  23. package/server/{checkpoint-manager-Dxh0FYsv.js → checkpoint-manager-CkKmB0wZ.js} +1 -1
  24. package/server/{checkpoint-manager-DEWD82qK.js → checkpoint-manager-DBcyNR8w.js} +2 -2
  25. package/server/checkpoint-worker.js +1 -1
  26. package/server/{checkpoints-CZvbtLnr.js → checkpoints-D95apurL.js} +2 -2
  27. package/server/{checkpoints-DMTgXuLG.js → checkpoints-Wm963lm8.js} +1 -1
  28. package/server/{claude-hooks-provision-CN-xo-do.js → claude-hooks-provision-4RPxNkE8.js} +1 -1
  29. package/server/{claude-hooks-provision-fvy4RD2b.js → claude-hooks-provision-Bjitl9aI.js} +2 -2
  30. package/server/{claude-permissions-CN0cSCPp.js → claude-permissions-CpbpvUQ2.js} +2 -2
  31. package/server/{claude-settings-overlay-Dabi9slj.js → claude-settings-overlay-BzkHYDwR.js} +1 -1
  32. package/server/{claude-settings-overlay-CJn35FHQ.js → claude-settings-overlay-_H9Yrzab.js} +2 -2
  33. package/server/cli-CjOCSnfj.js +3 -0
  34. package/server/{cli-oCWYA1pE.js → cli-Cte9ZFGn.js} +9 -9
  35. package/server/{cliproxy-C8mB3KuB.js → cliproxy-C5fMJ7rY.js} +2 -2
  36. package/server/{cliproxy-PGwTX_o8.js → cliproxy-DaAbWMjC.js} +1 -1
  37. package/server/{close-issue-D5MF5GqF.js → close-issue-BPh1ARCF.js} +5 -5
  38. package/server/{closed-issue-reaper-CJ24u0Zt.js → closed-issue-reaper-DHRfRMrp.js} +1 -1
  39. package/server/{closed-issue-reaper-Cltx86x5.js → closed-issue-reaper-DoOZqGFK.js} +62 -12
  40. package/server/{codex-Drlf5Xhf.js → codex-BzGDW_d3.js} +6 -6
  41. package/server/{codex-BdEsUFWh.js → codex-o8FJwzmy.js} +1 -1
  42. package/server/{codex-parser-DpB89Vqa.js → codex-parser-Dt-ycU8L.js} +2 -2
  43. package/server/{compaction-continuation-K2AxQX4H.js → compaction-continuation-CvXpbZ4w.js} +3 -3
  44. package/server/{config-B2IMcBxx.js → config-Bi3u1VK7.js} +2 -2
  45. package/server/{config-Dr3pW6w6.js → config-BvLe652W.js} +2 -2
  46. package/server/{config-DV-grfQc.js → config-CL3Gyvja.js} +1 -1
  47. package/server/{config-yaml-CmOPzmBb.js → config-yaml-CxdwhAIA.js} +10 -2
  48. package/server/conflict-gate-CX80JYYS.js +3 -0
  49. package/server/{conflict-gate-B9cN3SBi.js → conflict-gate-E4nt7ZeS.js} +59 -13
  50. package/server/{context-layers-dR5YxHYB.js → context-layers-C_IIysnm.js} +3 -3
  51. package/server/{context-layers-D6LZo3l1.js → context-layers-DAG83UZt.js} +2 -2
  52. package/server/{control-settings-C7DUehE1.js → control-settings-CiqGxXnc.js} +13 -6
  53. package/server/{conversation-compaction-Dj4FAKoZ.js → conversation-compaction-BE3CNtHF.js} +1 -1
  54. package/server/{conversation-compaction-BoqdDXWF.js → conversation-compaction-D6-yLtqt.js} +8 -8
  55. package/server/{conversation-service-5aCnq1zR.js → conversation-service-DBxoYMDl.js} +8 -7
  56. package/server/{conversation-service-BCxl4f8Z.js → conversation-service-D_TS2b1r.js} +1 -1
  57. package/server/{conversations-C34dyIb9.js → conversations-BKDVpB-3.js} +1 -1
  58. package/server/{conversations-BUpYsOZg.js → conversations-D0UEdLtk.js} +4 -4
  59. package/server/{cost-CvxRrucd.js → cost-DS1s0DbG.js} +3 -3
  60. package/server/{cost-Bgcub5kW.js → cost-DpgYmYqR.js} +2 -2
  61. package/server/{cost-sync-Dv3LUaNW.js → cost-sync-tOCCGnEt.js} +3 -3
  62. package/server/{dag-ombYYt4s.js → dag-BtkgLeqY.js} +2 -2
  63. package/server/{dangerous-git-ops-BcJPC5Rr.js → dangerous-git-ops-CFLykHWt.js} +1 -1
  64. package/server/dashboard-db-worker.js +7 -7
  65. package/server/{deacon-DrXqT9LQ.js → deacon-BIblC-WX.js} +3 -3
  66. package/server/{deacon-nudge-log-BNBebzeL.js → deacon-nudge-log-B08gF0mh.js} +3 -3
  67. package/server/{deacon-hi9KLPLT.js → deacon-pLRLbPvR.js} +548 -176
  68. package/server/{deacon-pending-lifecycle-Cpk0k7Hi.js → deacon-pending-lifecycle-B-Io84AP.js} +3 -3
  69. package/server/deacon-swarm-B1XkIvfr.js +2 -0
  70. package/server/{deacon-swarm-DBxUaO-A.js → deacon-swarm-v5PMun-m.js} +15 -14
  71. package/server/deacon.js +8 -8
  72. package/server/{dead-end-trip-CQcP70ND.js → dead-end-trip-D8A3msX9.js} +3 -3
  73. package/server/{delivery-Da0zEMY4.js → delivery-BX9HR4wQ.js} +1 -1
  74. package/server/{deploy-patrol-Df-Tmaq0.js → deploy-patrol-sYgOxLeb.js} +8 -8
  75. package/server/{deploy-queue-UjKGYsDe.js → deploy-queue-VfohaPN_.js} +2 -2
  76. package/server/{deploy-queue-9SrhZR63.js → deploy-queue-gHJBycaF.js} +1 -1
  77. package/server/{deploy-window-jOiPRHL0.js → deploy-window-CFRZ0-kt.js} +1 -1
  78. package/server/{deploy-window-rpqpWqHA.js → deploy-window-D4DQb8VP.js} +6 -6
  79. package/server/{dev-supervisor-CC46Ig8q.js → dev-supervisor-DiOBDM1c.js} +2 -2
  80. package/server/{devcontainer-renderer-68CSCRnu.js → devcontainer-renderer-BUOIlfgD.js} +3 -3
  81. package/server/dist-B3YPQa5A.js +3 -0
  82. package/server/{dist-CJy72uEg.js → dist-C3A8B8wM.js} +1 -1
  83. package/server/{dist-src-Bik83hFi.js → dist-src-C0adpegX.js} +1 -1
  84. package/server/{docker-Dam7mbIB.js → docker-BJzlkqYB.js} +2 -2
  85. package/server/{docker-BMVTSFL5.js → docker-Y3PElJb0.js} +1 -1
  86. package/server/{dod-Dar-yheg.js → dod-DlNtcH6n.js} +26 -5
  87. package/server/{durable-review-pipeline-CGZ5QBxh.js → durable-review-pipeline-Cibps-Rg.js} +5 -2
  88. package/server/durable-review-pipeline-DP6bIcOY.js +3 -0
  89. package/server/{ensure-devcontainer-B057YA81.js → ensure-devcontainer-BAofzBPv.js} +4 -4
  90. package/server/{ensure-devcontainer-C98V8yW-.js → ensure-devcontainer-DMAbWqtQ.js} +1 -1
  91. package/server/{esm-shims-Br9BPdkR.js → esm-shims-BeObUkaw.js} +1 -1
  92. package/server/{event-store-ELqkVOn0.js → event-store-5UKzh9Jf.js} +1 -1
  93. package/server/{event-store-zY5MJHgF.js → event-store-CrHcVC5_.js} +3 -3
  94. package/server/{events-D9PR1IC0.js → events-BNrvchBg.js} +3 -3
  95. package/server/{events-D6pyqhzM.js → events-CF8QDbuV.js} +1 -1
  96. package/server/{factory-CRoOpGsF.js → factory-Cmm9Hsho.js} +5 -5
  97. package/server/{feature-registry-population--YUXU999.js → feature-registry-population-B6HpNWRy.js} +4 -4
  98. package/server/{feature-registry-storage-BORBTo0y.js → feature-registry-storage-DJEFx1Pf.js} +2 -2
  99. package/server/{features--nFkJY8v.js → features-D5km80UI.js} +2 -2
  100. package/server/{feedback-target-C0ZzyHvU.js → feedback-target-BJ5ZADsu.js} +1 -1
  101. package/server/{feedback-target-Dt9BsapX.js → feedback-target-DSxEL6lP.js} +7 -7
  102. package/server/{feedback-writer-BG0RUZiu.js → feedback-writer-C27Hak8a.js} +5 -5
  103. package/server/{feedback-writer-D1fm-5Z8.js → feedback-writer-CoB9Z6aU.js} +1 -1
  104. package/server/{flywheel-BiT3odRb.js → flywheel-BHx8XuMr.js} +38 -19
  105. package/server/{flywheel-BekukH4i.js → flywheel-DZZdtiOL.js} +1 -1
  106. package/server/{flywheel-CLVB55Be.js → flywheel-f662Q-y2.js} +14 -14
  107. package/server/{flywheel-merge-order-BJv1DZz1.js → flywheel-merge-order-D_xLMbJU.js} +7 -7
  108. package/server/{flywheel-merge-order-BKw9o6ku.js → flywheel-merge-order-Dil0LmdN.js} +1 -1
  109. package/server/forge-B5o319qI.js +3 -0
  110. package/server/{forge-CZbSg6Ds.js → forge-BaKGCya6.js} +2 -2
  111. package/server/{from-D_4_dk7i.js → from-B3tZbB55.js} +1 -1
  112. package/server/fs-lock-Bre3sGoz.js +130 -0
  113. package/server/{fts-db-BeOomFa-.js → fts-db-IVc4_M3f.js} +2 -2
  114. package/server/{fts-operations-BdewJ_g9.js → fts-operations-B9jG8wa3.js} +2 -2
  115. package/server/{git-utils-ameCgDdy.js → git-utils-CsvYfJU3.js} +4 -4
  116. package/server/{git-utils-CI6cwyyC.js → git-utils-Xg4PFN45.js} +1 -1
  117. package/server/{github-app-DtAsvwzK.js → github-app-Bmg4R9mv.js} +1 -1
  118. package/server/{github-app-CQ1Lo6LA.js → github-app-CmNk0zLU.js} +2 -2
  119. package/server/{github-client-Cj0yl_07.js → github-client-B6KM9_wA.js} +1 -1
  120. package/server/{github-client-BfyDxuRN.js → github-client-qazkPrg0.js} +3 -3
  121. package/server/{github-pr-lookup-BDq6Wznz.js → github-pr-lookup-DAcVeRLK.js} +2 -2
  122. package/server/{harness-binary-DqkftwTb.js → harness-binary-BSpiXaLw.js} +2 -2
  123. package/server/{harness-resolve-CqMqM1Mb.js → harness-resolve-BAJu5MX8.js} +4 -4
  124. package/server/{health-events-_xfTaOUs.js → health-events-2Z6Wa9SM.js} +1 -1
  125. package/server/{health-events-CazRxJUS.js → health-events-BwX32k8d.js} +2 -2
  126. package/server/{hooks-BnJsxlSq.js → hooks-D1g1jKLI.js} +1 -1
  127. package/server/{hooks-BO3QT1sn.js → hooks-DbtbimEf.js} +2 -2
  128. package/server/{hume-CDYJxqx-.js → hume-DXNiu6nQ.js} +2 -2
  129. package/server/hume-VUCNbTgn.js +3 -0
  130. package/server/{idle-stack-reaper-BYqERdkE.js → idle-stack-reaper-CRA1e0jr.js} +1 -1
  131. package/server/{idle-stack-reaper-CnGx_PO_.js → idle-stack-reaper-Cy-dQzW4.js} +2 -2
  132. package/server/{in-flight-guard-Bq3epG58.js → in-flight-guard-D-sSkADM.js} +1 -1
  133. package/server/{infra-BjuxvjdS.js → infra-BDQDRopn.js} +15 -4
  134. package/server/{injection-UCf8EsjX.js → injection-6AGnXxlj.js} +7 -7
  135. package/server/{injection-DZxlV2al.js → injection-Bl8d_jHZ.js} +1 -1
  136. package/server/inspect-agent-CUwVmr2h.js +2 -0
  137. package/server/{inspect-agent-6kylZnrm.js → inspect-agent-nXdIptyh.js} +12 -12
  138. package/server/{internal-token-DvMTQSOS.js → internal-token-DzK385vD.js} +2 -2
  139. package/server/{internal-token-M9omeXM1.js → internal-token-Ias7N8Kg.js} +1 -1
  140. package/server/{io-VHvc0Ssp.js → io-B00PBNku.js} +4 -4
  141. package/server/{issue-closed-B6KJkmHZ.js → issue-closed-BehTG1be.js} +8 -8
  142. package/server/{issue-lifecycle-C4Zj0WmE.js → issue-lifecycle-Birk-ifu.js} +29 -23
  143. package/server/{issue-lifecycle-9gk3fnXN.js → issue-lifecycle-BqSuQvbn.js} +1 -1
  144. package/server/{issue-service-singleton-PMx8F1jr.js → issue-service-singleton-B2wXiIlw.js} +1 -1
  145. package/server/{issue-service-singleton-DmCh7EHj.js → issue-service-singleton-C6ZduvuY.js} +10 -10
  146. package/server/{issues-CgnQ1OGQ.js → issues-DQ5-LatB.js} +2 -2
  147. package/server/{jsonl-parser-DJOH_O-w.js → jsonl-parser-BDpnGFCl.js} +3 -3
  148. package/server/{label-cleanup-Dv7AV_R1.js → label-cleanup-Dwnky8FG.js} +3 -3
  149. package/server/{lifecycle-DDN8ApVY.js → lifecycle-B3s4sM1G.js} +6 -6
  150. package/server/{lifecycle-CTdOWYMi.js → lifecycle-B4Xdb4cY.js} +2 -2
  151. package/server/{lifecycle-io-D_zTLvP1.js → lifecycle-io-CzTHEooc.js} +1 -1
  152. package/server/{lifecycle-io-D-lGdzK3.js → lifecycle-io-DCo6s6ks.js} +5 -5
  153. package/server/{linear-client-BQU36QqE.js → linear-client-9uq7fhiV.js} +3 -3
  154. package/server/{linear-client-CY4O_Tu3.js → linear-client-CnbtHiic.js} +1 -1
  155. package/server/{linear-mcp-auth-BnU4TYfY.js → linear-mcp-auth-BxUOzswy.js} +5 -5
  156. package/server/{linear-mcp-auth-NYBq_oHZ.js → linear-mcp-auth-D46fBCLf.js} +1 -1
  157. package/server/memory-fts-worker.js +1 -1
  158. package/server/{merge-Bpx4jjht.js → merge-DiW9RdSB.js} +3 -3
  159. package/server/{merge-agent-DdMVSV2Y.js → merge-agent-BLUgRsz3.js} +31 -31
  160. package/server/{merge-agent-DrXa1CpW.js → merge-agent-DQTXZk8z.js} +1 -1
  161. package/server/{merge-batch-C5q1c1GX.js → merge-batch-Cp_j9BGk.js} +1 -1
  162. package/server/{merge-completeness-BMm8tMyZ.js → merge-completeness-B46KqhtY.js} +4 -4
  163. package/server/{merge-completeness-D0ljXbk3.js → merge-completeness-BLbB5-6n.js} +1 -1
  164. package/server/merge-ops-1abz6O_P.js +2 -0
  165. package/server/merge-rebase-CJJVAJuz.js +2 -0
  166. package/server/{merge-rebase-xLnMlw5h.js → merge-rebase-DIkBjgwq.js} +2 -2
  167. package/server/{merge-set-DH7ot3yz.js → merge-set-CBgHfwM0.js} +4 -4
  168. package/server/{merge-set-DzsOTBg5.js → merge-set-DeUxFsC3.js} +1 -1
  169. package/server/{merge-idOG--29.js → merge-sr8Nrnmi.js} +1 -1
  170. package/server/merge-sync-CpGmk6Ch.js +3 -0
  171. package/server/{merge-sync-CQ-LgZ1_.js → merge-sync-kr4vqyjM.js} +7 -4
  172. package/server/{merge-train-DTEMyIu4.js → merge-train-Dmrcus12.js} +4 -4
  173. package/server/{merge-train-deps-CNPJzepw.js → merge-train-deps-D_uGX91G.js} +21 -15
  174. package/server/{merge-verification-x3JO8Dtz.js → merge-verification-NvaAd8CZ.js} +6 -6
  175. package/server/{merged-docker-cleanup-worker-Cdi9apm-.js → merged-docker-cleanup-worker-DH_hrGPI.js} +1 -1
  176. package/server/{merged-docker-cleanup-worker-CTpC27Bs.js → merged-docker-cleanup-worker-Y1R06TEl.js} +3 -3
  177. package/server/{multipart-parser-IMSBfePV.js → multipart-parser-R-oC8dQg.js} +2 -2
  178. package/server/{no-resume-mode-C5ULAXwO.js → no-resume-mode-BgD0JUmM.js} +1 -1
  179. package/server/node_modules/.package-lock.json +4 -4
  180. package/server/node_modules/@types/node/README.md +1 -1
  181. package/server/node_modules/@types/node/crypto.d.ts +1 -1
  182. package/server/node_modules/@types/node/package.json +2 -2
  183. package/server/{orphan-proposed-reconciler-Dg6U4ADZ.js → orphan-proposed-reconciler-B6vJHxtX.js} +230 -31
  184. package/server/{orphan-proposed-reconciler-CWmOdM9-.js → orphan-proposed-reconciler-DcgTPPFY.js} +1 -1
  185. package/server/package-lock.json +5 -5
  186. package/server/package.json +1 -1
  187. package/server/{pan-dir-ubraCiUg.js → pan-dir-DMzF5wne.js} +4 -4
  188. package/server/{paths-cXmOwSbh.js → paths-sJBSb7Ul.js} +2 -2
  189. package/server/{pending-lifecycle-claim-DEteYdS9.js → pending-lifecycle-claim-DilzGfgk.js} +2 -2
  190. package/server/persistent-logger-H_VjuOu7.js +57 -0
  191. package/server/{pickup-D8xtG1J2.js → pickup-DWhqzliO.js} +4 -3
  192. package/server/{pipeline-membership-BGSvkT2M.js → pipeline-membership-C88VBnhJ.js} +1 -1
  193. package/server/{pipeline-membership-CrAPLYtf.js → pipeline-membership-D9SBvItj.js} +1 -1
  194. package/server/{pipeline-membership-gather-DTfcgxLl.js → pipeline-membership-gather-4eR-7Tqy.js} +1 -1
  195. package/server/{pipeline-membership-gather-CET40frr.js → pipeline-membership-gather-CeVGnNJ2.js} +114 -9
  196. package/server/{pipeline-notifier-BuQ0e4hF.js → pipeline-notifier-D0ALV6Nw.js} +2 -2
  197. package/server/{pipeline-notifier-ImNXknf0.js → pipeline-notifier-DT6xLFao.js} +1 -1
  198. package/server/{post-merge-lifecycle-worker-DbO10pum.js → post-merge-lifecycle-worker-8HIeS_J6.js} +3 -3
  199. package/server/{project-pipelines-Bim6bThI.js → project-pipelines-9SKt2bEc.js} +2 -2
  200. package/server/{project-repos-C0nuoBGv.js → project-repos-B5pIphKg.js} +2 -2
  201. package/server/{project-repos-CRE6Ykow.js → project-repos-DPjOdfPa.js} +1 -1
  202. package/server/{projects-B03Wr-xc.js → projects-_n3Zui6K.js} +1 -1
  203. package/server/{prompts-BEx08AIu.js → prompts-CgzMBvQF.js} +2 -2
  204. package/server/{providers-D7IluJe0.js → providers-BI1mOBQ4.js} +1 -1
  205. package/server/{providers-evXhiQeg.js → providers-BJQSnAAp.js} +7 -7
  206. package/server/public/assets/{chunk-BO2N2NFS-D1s4-Sqp.js → chunk-BO2N2NFS-D_pGACYN.js} +4 -4
  207. package/server/public/assets/{diagram-OG6HWLK6-1gdMoSF7.js → diagram-OG6HWLK6-BO6fe3hH.js} +1 -1
  208. package/server/public/assets/{dist-DqDRYW6P.js → dist-5zingMiA.js} +3 -3
  209. package/server/public/assets/{dist-CxAOHbil.js → dist-CVxhbI2E.js} +1 -1
  210. package/server/public/assets/{ganttDiagram-6RSMTGT7-BYex-Ec7.js → ganttDiagram-6RSMTGT7-Bgj4A7kp.js} +1 -1
  211. package/server/public/assets/{highlighted-body-OFNGDK62-DlVkiG0S.js → highlighted-body-OFNGDK62-DNPK7_cm.js} +1 -1
  212. package/server/public/assets/{index-K0hAYCgV.js → index-DEpY-D1O.js} +148 -148
  213. package/server/public/assets/index-Ddkcz3WT.css +1 -0
  214. package/server/public/assets/{linear-B4cuEFmO.js → linear-BB0jQT16.js} +1 -1
  215. package/server/public/assets/mermaid-GHXKKRXX-BzPfaQJ1.js +1 -0
  216. package/server/public/assets/{pieDiagram-4H26LBE5-CBHNBIJQ.js → pieDiagram-4H26LBE5-DeGIzzpZ.js} +1 -1
  217. package/server/public/assets/{prod-CN2nHBvX.js → prod-XBLvikex.js} +4 -4
  218. package/server/public/assets/{quadrantDiagram-W4KKPZXB-Bom87VOQ.js → quadrantDiagram-W4KKPZXB-BV9SLeWz.js} +1 -1
  219. package/server/public/assets/{sankeyDiagram-5OEKKPKP-UrBeyLxk.js → sankeyDiagram-5OEKKPKP-Dwja0gj8.js} +1 -1
  220. package/server/public/assets/{xychartDiagram-2RQKCTM6-DhkbrIxR.js → xychartDiagram-2RQKCTM6-DCB4qvfw.js} +1 -1
  221. package/server/public/index.html +2 -2
  222. package/server/{pull-requests-DHWiKxo7.js → pull-requests-7BgLDsIo.js} +3 -3
  223. package/server/{pull-requests-Cv7LxzUN.js → pull-requests-Dq0y6IxE.js} +1 -1
  224. package/server/{queries-DHJm7bTd.js → queries-C-MUZaIy.js} +266 -155
  225. package/server/{rally-B71M9f4o.js → rally-CPysR4T_.js} +3 -3
  226. package/server/rally-D_VW4bJv.js +3 -0
  227. package/server/{rally-api-Dkqmok65.js → rally-api-8Ptlp2os.js} +2 -2
  228. package/server/{rally-api-D5uXN08-.js → rally-api-CgosKdKL.js} +1 -1
  229. package/server/{rally-client-CxsA6ExK.js → rally-client-CCX0hADj.js} +1 -1
  230. package/server/{rally-client-Bfqm6XI4.js → rally-client-iYMHWQD7.js} +5 -5
  231. package/server/{reap-terminal-sessions-BQ23nriz.js → reap-terminal-sessions-4Xg9NGA8.js} +2 -2
  232. package/server/{reap-terminal-sessions-CvmwaqKv.js → reap-terminal-sessions-Qf-9LVQc.js} +2 -2
  233. package/server/{rebuild-stack-0EEYReVZ.js → rebuild-stack-CMdgaylx.js} +7 -7
  234. package/server/{rebuild-stack-qeRqHZxH.js → rebuild-stack-DqcOVmJO.js} +2 -2
  235. package/server/{reconstruct-cache-BbYFsqLa.js → reconstruct-cache-CMZJ_Vjq.js} +9 -8
  236. package/server/{record-CtroO946.js → record-BTwWhtBb.js} +1 -1
  237. package/server/{record-update-Z0QCxmMp.js → record-update-DaOKS7Wb.js} +5 -128
  238. package/server/{record-update-DH6dLJID.js → record-update-DhI7eySG.js} +1 -1
  239. package/server/{recovery-trip-eJe26h-f.js → recovery-trip-DDH-02ng.js} +2 -2
  240. package/server/{release-engine-lPUp-MTd.js → release-engine-B2X9AfFC.js} +5 -5
  241. package/server/{release-set-BwGeyZKX.js → release-set-G4XKyQ8K.js} +3 -3
  242. package/server/{remote-BCd02Es1.js → remote-BXarMvqf.js} +3 -3
  243. package/server/{remote-CVGUhXMV.js → remote-CUhyqjXk.js} +3 -3
  244. package/server/{remote-agents-C_VxssLU.js → remote-agents-Bba-MgSA.js} +17 -8
  245. package/server/{remote-agents-C1bssi41.js → remote-agents-CLZB3Coc.js} +1 -1
  246. package/server/{remote-completion-DAB0P706.js → remote-completion-CwAp79EC.js} +13 -13
  247. package/server/resume-mOREjlYu.js +3 -0
  248. package/server/{review-agent-CHhI66UP.js → review-agent--pOptAEV.js} +31 -29
  249. package/server/{review-agent-CD4RCI0Y.js → review-agent-BTCNkq2h.js} +1 -1
  250. package/server/{review-artifacts-DSMRIfuJ.js → review-artifacts-BNmw8dWE.js} +5 -5
  251. package/server/{review-context-oFuBbiEE.js → review-context-DFxYOOJW.js} +9 -9
  252. package/server/{review-convoy-liveness-CpzrcJ5F.js → review-convoy-liveness-BgU_1jJf.js} +2 -2
  253. package/server/{review-status-yljtTd-q.js → review-status-CGvlA4o_.js} +326 -110
  254. package/server/review-status-Dma9SFaN.js +3 -0
  255. package/server/{review-status-emit-CUExtHd5.js → review-status-emit-DURrmGYX.js} +3 -3
  256. package/server/{review-status-enrichment-QV_hQkgS.js → review-status-enrichment-8NiNXi5W.js} +3 -3
  257. package/server/{review-status-source-ylw5QZUR.js → review-status-source-BLx_1siH.js} +1 -1
  258. package/server/{review-status-source-CpvJnvnQ.js → review-status-source-DIk1JSow.js} +1 -1
  259. package/server/{review-status-sync-483sujRo.js → review-status-sync-0GxOqeqF.js} +11 -6
  260. package/server/{review-status-sync-NaWvI9Xf.js → review-status-sync-muT-EBp2.js} +1 -1
  261. package/server/{review-verdict-feedback-BPDn4li_.js → review-verdict-feedback-HwF6ODFy.js} +1 -1
  262. package/server/{review-verdict-feedback-CELeUinh.js → review-verdict-feedback-xJNdqBnX.js} +23 -9
  263. package/server/{rollup-DTNvelz9.js → rollup-BQaol5TX.js} +8 -8
  264. package/server/{rollup-DYZfq1c4.js → rollup-BR4t_wck.js} +1 -1
  265. package/server/{scanner-CV35oSn4.js → scanner-C-D2cFdX.js} +7 -7
  266. package/server/{sequence-io-DF_8iuhV.js → sequence-io-Bmf1EZM5.js} +4 -4
  267. package/server/{sequencer-agent-B2WeCtGi.js → sequencer-agent-CigMyKh2.js} +7 -6
  268. package/server/server.js +435 -418
  269. package/server/{service-Br9rpBNA.js → service-CD0DvFvD.js} +88 -59
  270. package/server/{session-fork-D0LY152N.js → session-fork-B6cQ5eya.js} +2 -2
  271. package/server/{session-history-BUyK29eq.js → session-history-3ON_IJjm.js} +7 -55
  272. package/server/settings-CVmWiJ-r.js +2 -0
  273. package/server/{settings-CvVGqNEs.js → settings-PilbFZAM.js} +2 -2
  274. package/server/{settings-Bse1Pdcj.js → settings-VN0qOh4U.js} +3 -3
  275. package/server/{shadow-engineering-BWLa8ODz.js → shadow-engineering-DXvx77oE.js} +3 -3
  276. package/server/{shadow-state-B4fpKxOO.js → shadow-state-BBk_zacw.js} +2 -2
  277. package/server/{shadow-state-FV6PHfEW.js → shadow-state-CZBp7pwq.js} +1 -1
  278. package/server/{shadow-utils-D7asqxOZ.js → shadow-utils-DdZ05AJS.js} +2 -2
  279. package/server/{ship-log-xplJ8t75.js → ship-log-7kJfjUX2.js} +1 -1
  280. package/server/{smart-compaction-CPp2Ykf6.js → smart-compaction-8fA5k5XN.js} +1 -1
  281. package/server/{smart-compaction-D3U_79f-.js → smart-compaction-ByhL9cRS.js} +7 -7
  282. package/server/{spawn-planning-session-DGfZ5B8D.js → spawn-planning-session-pcF-YeFE.js} +38 -50
  283. package/server/spawn-planning-session-vLUJoFjy.js +3 -0
  284. package/server/{specialist-completion-Br48eiDP.js → specialist-completion-B07XjWD2.js} +1 -1
  285. package/server/{specialist-context-cVbGnTa3.js → specialist-context-DJ-zFyL3.js} +5 -5
  286. package/server/{specialist-handoff-logger-DK-GTz4s.js → specialist-handoff-logger-aKSxbIgD.js} +2 -2
  287. package/server/{specialist-logs-Cl5-hqT8.js → specialist-logs-Dae-n52_.js} +3 -3
  288. package/server/{specialists-CNfYO3G2.js → specialists-6PWdtWcg.js} +298 -180
  289. package/server/{specialists-Tdezg_6N.js → specialists-Bz-wFT7R.js} +1 -1
  290. package/server/{specialists-Cicieuzu.js → specialists-DUiExaxb.js} +18 -18
  291. package/server/{specialists-JHsdU3pA.js → specialists-KR3pKulN.js} +1 -1
  292. package/server/specs--enInima.js +3 -0
  293. package/server/{src-CRmCHlma.js → src-B948bGVR.js} +57 -13
  294. package/server/{src-Ck028hjO.js → src-rac0Mepv.js} +6 -6
  295. package/server/{src-UWcGe0Ix.js → src-vHy2-oCv.js} +3 -3
  296. package/server/{stack-health-CJLMrLBl.js → stack-health-BikqHSjn.js} +1 -1
  297. package/server/{stack-health-DqSqx0zv.js → stack-health-DqLTiEu4.js} +2 -2
  298. package/server/{stale-task-claims-CYFOUNlT.js → stale-task-claims-Cab_Fo_Z.js} +5 -4
  299. package/server/{staleness-D47CUJok.js → staleness-C-a5rBxF.js} +1 -1
  300. package/server/{staleness-BQ-0gMYK.js → staleness-CGTZyp6V.js} +1 -1
  301. package/server/{state-home-BYV7qZTW.js → state-home-722Dkx92.js} +2 -2
  302. package/server/{state-mapping-BVldLhBf.js → state-mapping-CybR81Uf.js} +1 -1
  303. package/server/{state-migrate-CvvBtS0Y.js → state-migrate-2u8wIpoL.js} +4 -4
  304. package/server/{stuck-remediation-mkLC6G_t.js → stuck-remediation-CC6q3eqQ.js} +24 -23
  305. package/server/{stuck-remediation-Wt0UVvu1.js → stuck-remediation-r1TJu68G.js} +1 -1
  306. package/server/{substrate-bug-weights-service-XfLAKnmK.js → substrate-bug-weights-service-CzIyyWFT.js} +3 -3
  307. package/server/{summary-fork-CD7GOts0.js → summary-fork-BqgmgPDt.js} +2 -2
  308. package/server/{summary-fork-xiXBnWG9.js → summary-fork-Df2WFijM.js} +8 -8
  309. package/server/supervisor/{injection-budget-B5SbvDx2.js → injection-budget-Cg_KIb3o.js} +1 -1
  310. package/server/supervisor/{paths-K3noE4N_.js → paths-BBOnCYlO.js} +10 -2
  311. package/server/supervisor/pty-supervisor.js +4 -4
  312. package/server/supervisor/{pty-token-B7lp0ElT.js → pty-token-BbjwEUUM.js} +3 -3
  313. package/server/supervisor-B4anCCSm.js +2 -0
  314. package/server/{supervisor-DL788vos.js → supervisor-BxqSpjcN.js} +3 -3
  315. package/server/{swarm-readiness-BV14DF5N.js → swarm-readiness-DfFxa9-n.js} +3 -3
  316. package/server/{system-prerequisites-pdWG6ZQs.js → system-prerequisites-ICLSkhhZ.js} +2 -2
  317. package/server/{teardown-workspace-l2F4_zim.js → teardown-workspace-DRdi_CPa.js} +15 -15
  318. package/server/{test-agent-queue-qakFIIGz.js → test-agent-queue-A_-p-i0I.js} +8 -7
  319. package/server/{test-verdict-Gw-btEfb.js → test-verdict-BHgTAwIG.js} +1 -1
  320. package/server/{test-verdict-BJYDggMm.js → test-verdict-C4i9aqEP.js} +1 -1
  321. package/server/{tldr-daemon-BKOYB616.js → tldr-daemon-CvWXBhX1.js} +1 -1
  322. package/server/{tldr-daemon-CBaWkV9k.js → tldr-daemon-wvsU6bKv.js} +2 -2
  323. package/server/{tmux-B1Wbxz5o.js → tmux-CfDHob9M.js} +174 -4
  324. package/server/{tmux-DQ6jB76i.js → tmux-Ctk6RV5l.js} +1 -1
  325. package/server/{token-Cxbk023d.js → token-DrxwytsZ.js} +2 -2
  326. package/server/{token-util-CLq2MmQt.js → token-util-B48BlCba.js} +1 -1
  327. package/server/token-util-D411CAq9.js +3 -0
  328. package/server/{tracker-config-DZ8Zn2nQ.js → tracker-config-BcPMElRB.js} +2 -2
  329. package/server/{tracker-utils-L0FKtjq2.js → tracker-utils-CJ6BHjcD.js} +2 -2
  330. package/server/{traefik-connect-bNX6jKkb.js → traefik-connect-DZ6nMYMj.js} +1 -1
  331. package/server/{tunnel-CjSnHdTc.js → tunnel-Bp-dRHZz.js} +1 -1
  332. package/server/{tunnel-BAm1XgjG.js → tunnel-DUbUPElU.js} +3 -3
  333. package/server/{typed-errors-BHhE85Ul.js → typed-errors-CKeoDdU3.js} +1 -1
  334. package/server/{typed-errors-2BTMxkZq.js → typed-errors-DyjseiB6.js} +1 -1
  335. package/server/{types-hraoaQIp.js → types-Cm5ASJbq.js} +1 -1
  336. package/server/{types-q67TYYg5.js → types-Di8wdakq.js} +1 -1
  337. package/server/{uat-promote-verification-CKB9ZrKC.js → uat-promote-verification-CoJuh7XO.js} +5 -5
  338. package/server/{uat-train-D5UjcyAa.js → uat-train-4Q0k06CQ.js} +0 -0
  339. package/server/{uat-train-Cu-4nvbf.js → uat-train-Dewoatps.js} +1 -1
  340. package/server/{validate-Cxsx5Uz1.js → validate-B0C8p66t.js} +3 -3
  341. package/server/{validation-VZgJxmqc.js → validation-B_kIRfNe.js} +4 -4
  342. package/server/{validation-DEaTZafj.js → validation-hVOwQk8T.js} +1 -1
  343. package/server/{verification-artifact-C85cRTc_.js → verification-artifact-BxlxTiYK.js} +1 -1
  344. package/server/{verification-artifact-g3yuxQDL.js → verification-artifact-D70AtckY.js} +1 -1
  345. package/server/{verification-runner-DlZI8yhw.js → verification-runner-Bc3cJvpC.js} +1 -1
  346. package/server/{verification-runner-KDZIsBj4.js → verification-runner-KZTz6u72.js} +19 -19
  347. package/server/{vtt-parser-Jr94BF3Y.js → vtt-parser-CE_i3Bcw.js} +1 -1
  348. package/server/{work-agent-prompt-C-vuP3_J.js → work-agent-prompt-ByrPAzOy.js} +9 -9
  349. package/server/{workflows-D0oip4eV.js → workflows-D0vP1WrK.js} +113 -43
  350. package/server/workflows-DtDX08ed.js +2 -0
  351. package/server/{workspace-BqFg__wH.js → workspace-COWvdibH.js} +1 -1
  352. package/server/{workspace-C0fH3aek.js → workspace-DQkRPLlQ.js} +3 -3
  353. package/server/{workspace-anchor-drift-CZKofakh.js → workspace-anchor-drift-DXYIAHzr.js} +4 -4
  354. package/server/{workspace-anchor-drift-B4gMRHl4.js → workspace-anchor-drift-pwz23TI1.js} +1 -1
  355. package/server/{workspace-config-B123aZl-.js → workspace-config-BdZM4PvZ.js} +1 -1
  356. package/server/{workspace-manager-CwO-Hek7.js → workspace-manager-BPgTrG66.js} +13 -13
  357. package/server/{workspace-manager-CDTKjjdU.js → workspace-manager-C1F3XsnS.js} +1 -1
  358. package/server/{workspace-metadata-D4M8BM4W.js → workspace-metadata-CdjzAP8x.js} +1 -1
  359. package/server/{workspace-metadata-CQv00QwK.js → workspace-metadata-DkO_iTLo.js} +2 -2
  360. package/server/{workspaces-j1e_6aAT.js → workspaces-CRBJikLp.js} +136 -113
  361. package/sync-sources/skills/pan-merge/SKILL.md +7 -5
  362. package/sync-sources/skills/pan-release/SKILL.md +57 -0
  363. package/server/agent-state-service-hZpxIw1E.js +0 -2
  364. package/server/archive-planning-0FJ6Xd3b.js +0 -2
  365. package/server/cli-DmXETsw-.js +0 -3
  366. package/server/conflict-gate-Dh754uyA.js +0 -3
  367. package/server/deacon-swarm-I2JfX5Tg.js +0 -2
  368. package/server/dist-DSlxIU1H.js +0 -3
  369. package/server/durable-review-pipeline-jpgCJZFp.js +0 -3
  370. package/server/forge-DK3blQb_.js +0 -3
  371. package/server/hume-Dq--7rOQ.js +0 -3
  372. package/server/inspect-agent-BVwDrVrz.js +0 -2
  373. package/server/label-reconciler--F85rufp.js +0 -113
  374. package/server/merge-ops-DdpTiEMt.js +0 -2
  375. package/server/merge-rebase-DGQpYJU3.js +0 -2
  376. package/server/merge-sync-Ca7F5JnQ.js +0 -3
  377. package/server/public/assets/index-Cc7cnFC4.css +0 -1
  378. package/server/public/assets/mermaid-GHXKKRXX-DyDHFXHV.js +0 -1
  379. package/server/rally-YDjU513q.js +0 -3
  380. package/server/resume-u9byntrq.js +0 -3
  381. package/server/review-status-BZH8h-6W.js +0 -3
  382. package/server/settings-CdvIF84R.js +0 -2
  383. package/server/spawn-planning-session-1nFi3gfk.js +0 -2
  384. package/server/specs-Bt7WJDoC.js +0 -3
  385. package/server/supervisor-UWiQNK-y.js +0 -2
  386. package/server/token-util-zlz9U0ki.js +0 -3
  387. package/server/workflows-CHrx_hcW.js +0 -2
@@ -1,16 +1,16 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Er as GitError, Fr as init_errors, Gn as init_projects, Gr as OVERDECK_HOME, Pr as VcsError, Zn as loadProjectsConfigSync, ci as init_paths, f as loadConfigSync, gr as init_issue_id, t as init_config_yaml, vr as parseIssueIdSync } from "./config-yaml-CmOPzmBb.js";
2
+ import { Er as GitError, Fr as init_errors, Gn as init_projects, Gr as OVERDECK_HOME, Pr as VcsError, Zn as loadProjectsConfigSync, f as loadConfigSync, gr as init_issue_id, li as init_paths, t as init_config_yaml, vr as parseIssueIdSync } from "./config-yaml-CxdwhAIA.js";
3
3
  import { i as emitActivityTtsSync, o as init_activity_logger, r as emitActivityEntrySync } from "./activity-logger-CyteR4JO.js";
4
- import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-BjuxvjdS.js";
5
- import { D as killSession, H as sessionExists, M as listSessionNames, i as capturePane, w as init_tmux, z as sendKeys } from "./tmux-B1Wbxz5o.js";
6
- import { S as setReviewStatusSync, T as init_pipeline, f as init_review_status, g as markWorkspaceStuck, u as getReviewStatusSync, w as capturePipelineStageForIssue } from "./review-status-yljtTd-q.js";
7
- import { n as resolveGitHubIssueSync, t as init_tracker_utils } from "./tracker-utils-L0FKtjq2.js";
8
- import { l as resolveWorkspaceRepoRootsSync, r as init_project_repos } from "./project-repos-C0nuoBGv.js";
9
- import { n as recordFeatureRegistryLifecycle, t as init_feature_registry_population } from "./feature-registry-population--YUXU999.js";
10
- import { a as init_git_utils, t as cleanupStaleLocks } from "./git-utils-ameCgDdy.js";
11
- import { i as verifyMergedBeforeLifecycle, n as init_merge_verification } from "./merge-verification-x3JO8Dtz.js";
12
- import { n as init_merged_docker_cleanup_worker, t as enqueueMergedDockerCleanup } from "./merged-docker-cleanup-worker-CTpC27Bs.js";
13
- import { i as runQualityGates, n as init_validation } from "./validation-VZgJxmqc.js";
4
+ import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-BDQDRopn.js";
5
+ import { D as killSession, H as sessionExists, M as listSessionNames, i as capturePane, w as init_tmux, z as sendKeys } from "./tmux-CfDHob9M.js";
6
+ import { C as setReviewStatusSync, E as init_pipeline, T as capturePipelineStageForIssue, _ as markWorkspaceStuck, d as getReviewStatusSync, p as init_review_status } from "./review-status-CGvlA4o_.js";
7
+ import { n as resolveGitHubIssueSync, t as init_tracker_utils } from "./tracker-utils-CJ6BHjcD.js";
8
+ import { l as resolveWorkspaceRepoRootsSync, r as init_project_repos } from "./project-repos-B5pIphKg.js";
9
+ import { n as recordFeatureRegistryLifecycle, t as init_feature_registry_population } from "./feature-registry-population-B6HpNWRy.js";
10
+ import { a as init_git_utils, t as cleanupStaleLocks } from "./git-utils-CsvYfJU3.js";
11
+ import { i as verifyMergedBeforeLifecycle, n as init_merge_verification } from "./merge-verification-NvaAd8CZ.js";
12
+ import { n as init_merged_docker_cleanup_worker, t as enqueueMergedDockerCleanup } from "./merged-docker-cleanup-worker-Y1R06TEl.js";
13
+ import { i as runQualityGates, n as init_validation } from "./validation-B_kIRfNe.js";
14
14
  import { dirname, resolve } from "node:path";
15
15
  import { Data, Effect } from "effect";
16
16
  import { appendFileSync, existsSync, mkdirSync } from "fs";
@@ -23,7 +23,7 @@ import { promisify } from "util";
23
23
  //#region ../../lib/cloister/merge-agent-step0.ts
24
24
  async function shouldRestartForPostMerge(repoRoot, dependencies = {}) {
25
25
  if ((await (dependencies.computeStaleness ?? (async () => {
26
- const [{ getBuildInfo }, { computeBuildStaleness }] = await Promise.all([import("./build-info-BP160gU7.js"), import("./staleness-BQ-0gMYK.js")]);
26
+ const [{ getBuildInfo }, { computeBuildStaleness }] = await Promise.all([import("./build-info-CpG__c63.js"), import("./staleness-CGTZyp6V.js")]);
27
27
  return computeBuildStaleness({
28
28
  repoRoot,
29
29
  buildCommit: getBuildInfo().buildCommit
@@ -32,9 +32,9 @@ async function shouldRestartForPostMerge(repoRoot, dependencies = {}) {
32
32
  (dependencies.log ?? console.log)("Running build already contains origin/main build inputs — skipping deploy restart");
33
33
  return false;
34
34
  }
35
- const assessment = await (dependencies.getWindowAssessment ?? (async () => (await import("./deploy-window-jOiPRHL0.js")).getDeployWindowAssessment()))();
35
+ const assessment = await (dependencies.getWindowAssessment ?? (async () => (await import("./deploy-window-CFRZ0-kt.js")).getDeployWindowAssessment()))();
36
36
  if (assessment.reason) {
37
- await (dependencies.recordIntent ?? (await import("./deploy-queue-9SrhZR63.js")).recordDeployIntent)({
37
+ await (dependencies.recordIntent ?? (await import("./deploy-queue-gHJBycaF.js")).recordDeployIntent)({
38
38
  requestedBy: "merge-step0",
39
39
  reason: assessment.reason,
40
40
  blockedBy: assessment.verifyingIssues
@@ -730,7 +730,7 @@ async function notifyTldrDaemon(projectPath, _sourceBranch) {
730
730
  return;
731
731
  }
732
732
  console.log(`[merge-agent] Found ${changedFiles.length} changed source files to reindex`);
733
- const { getTldrDaemonServiceSync } = await import("./tldr-daemon-BKOYB616.js");
733
+ const { getTldrDaemonServiceSync } = await import("./tldr-daemon-CvWXBhX1.js");
734
734
  const tldrService = getTldrDaemonServiceSync(projectPath, venvPath);
735
735
  if (!(await tldrService.getStatus()).running) {
736
736
  console.log(`[merge-agent] TLDR daemon not running, skipping notification`);
@@ -766,7 +766,7 @@ async function postMergeLifecycle(issueId, projectPath, sourceBranch, options) {
766
766
  return;
767
767
  }
768
768
  try {
769
- const { findSpecByIssue } = await import("./specs-Bt7WJDoC.js");
769
+ const { findSpecByIssue } = await import("./specs--enInima.js");
770
770
  const spec = await Effect.runPromise(findSpecByIssue(projectPath, issueId));
771
771
  if (spec && (spec.status === "completed" || spec.status === "cancelled")) {
772
772
  console.log(`[merge-agent] ${issueId} is closed out (spec ${spec.status}) — skipping post-merge lifecycle`);
@@ -793,7 +793,7 @@ async function postMergeLifecycle(issueId, projectPath, sourceBranch, options) {
793
793
  }
794
794
  let dockerRetryReason = null;
795
795
  try {
796
- const { teardownWorkspaceDockerByNamePromise } = await import("./docker-BMVTSFL5.js");
796
+ const { teardownWorkspaceDockerByNamePromise } = await import("./docker-Y3PElJb0.js");
797
797
  const teardown = await teardownWorkspaceDockerByNamePromise(issueId.toLowerCase());
798
798
  if (teardown.networkRemoved) {
799
799
  console.log(`[merge-agent] ✓ Removed Docker stack/network: ${teardown.steps.join("; ")}`);
@@ -844,7 +844,7 @@ async function postMergeLifecycle(issueId, projectPath, sourceBranch, options) {
844
844
  }
845
845
  console.log(`[merge-agent] Running post-merge verify handoff for ${issueId}`);
846
846
  try {
847
- const { cleanupMergedLabels } = await import("./label-cleanup-Dv7AV_R1.js");
847
+ const { cleanupMergedLabels } = await import("./label-cleanup-Dwnky8FG.js");
848
848
  const ghResolved = resolveGitHubIssueSync(issueId);
849
849
  const labelCtx = ghResolved.isGitHub ? {
850
850
  issueId,
@@ -894,8 +894,8 @@ async function postMergeLifecycle(issueId, projectPath, sourceBranch, options) {
894
894
  console.warn(`[merge-agent] Async post-merge release trigger failed for ${issueId}: ${err instanceof Error ? err.message : String(err)}`);
895
895
  });
896
896
  try {
897
- const { setAgentPaused, getAgentState } = await import("./agents-BKKkxKgK.js");
898
- const { killSession, sessionExists } = await import("./tmux-DQ6jB76i.js");
897
+ const { setAgentPaused, getAgentState } = await import("./agents-ePFVoZbu.js");
898
+ const { killSession, sessionExists } = await import("./tmux-Ctk6RV5l.js");
899
899
  const issueLower = issueId.toLowerCase();
900
900
  const reason = "awaiting close-out (verify on main)";
901
901
  for (const agentId of [`agent-${issueLower}`, `planning-${issueLower}`]) {
@@ -920,8 +920,8 @@ async function postMergeLifecycle(issueId, projectPath, sourceBranch, options) {
920
920
  console.warn(`[merge-agent] Could not pause or kill agent sessions: ${err}`);
921
921
  }
922
922
  try {
923
- const { killAllReviewerSessions } = await import("./review-agent-CD4RCI0Y.js");
924
- const { resolveProjectFromIssueSync } = await import("./projects-B03Wr-xc.js");
923
+ const { killAllReviewerSessions } = await import("./review-agent-BTCNkq2h.js");
924
+ const { resolveProjectFromIssueSync } = await import("./projects-_n3Zui6K.js");
925
925
  const projectKey = resolveProjectFromIssueSync(issueId)?.projectKey;
926
926
  if (projectKey) {
927
927
  const { killed } = await Effect.runPromise(killAllReviewerSessions(projectKey, issueId));
@@ -935,7 +935,7 @@ async function postMergeLifecycle(issueId, projectPath, sourceBranch, options) {
935
935
  }
936
936
  await killPostMergeRoleSessions(issueId);
937
937
  try {
938
- const { createResetMarker } = await import("./cli-DmXETsw-.js");
938
+ const { createResetMarker } = await import("./cli-CjOCSnfj.js");
939
939
  const timestamp = (/* @__PURE__ */ new Date()).toISOString();
940
940
  const marker = await createResetMarker({
941
941
  projectId: basename$1(projectPath),
@@ -973,7 +973,7 @@ async function triggerPostMergeReleaseIfConfigured(issueId, projectPath) {
973
973
  console.log(`[merge-agent] Release already started or completed for ${issueId} (${currentStatus}), skipping`);
974
974
  return;
975
975
  }
976
- const { resolveProjectFromIssueSync, getProjectSync } = await import("./projects-B03Wr-xc.js");
976
+ const { resolveProjectFromIssueSync, getProjectSync } = await import("./projects-_n3Zui6K.js");
977
977
  const resolved = resolveProjectFromIssueSync(issueId);
978
978
  if (!(resolved ? getProjectSync(resolved.projectKey) : null)?.release) {
979
979
  setReviewStatusSync(issueId, {
@@ -983,7 +983,7 @@ async function triggerPostMergeReleaseIfConfigured(issueId, projectPath) {
983
983
  console.log(`[merge-agent] No release config for ${issueId}; marked release skipped`);
984
984
  return;
985
985
  }
986
- const { runRelease } = await import("./release-engine-lPUp-MTd.js");
986
+ const { runRelease } = await import("./release-engine-B2X9AfFC.js");
987
987
  try {
988
988
  await runRelease(issueId, projectPath);
989
989
  } catch (err) {
@@ -1002,11 +1002,11 @@ async function triggerPostMergeReleaseIfConfigured(issueId, projectPath) {
1002
1002
  async function transitionIssueToVerifyingOnMain(issueId, projectPath) {
1003
1003
  const [effectModule, issueLifecycleModule, githubModule, linearModule, rallyModule, errorsModule] = await Promise.all([
1004
1004
  import("effect"),
1005
- import("./issue-lifecycle-9gk3fnXN.js"),
1006
- import("./github-client-Cj0yl_07.js"),
1007
- import("./linear-client-CY4O_Tu3.js"),
1008
- import("./rally-client-CxsA6ExK.js"),
1009
- import("./typed-errors-BHhE85Ul.js")
1005
+ import("./issue-lifecycle-BqSuQvbn.js"),
1006
+ import("./github-client-B6KM9_wA.js"),
1007
+ import("./linear-client-CnbtHiic.js"),
1008
+ import("./rally-client-CCX0hADj.js"),
1009
+ import("./typed-errors-CKeoDdU3.js")
1010
1010
  ]);
1011
1011
  const { Effect, Layer } = effectModule;
1012
1012
  const { IssueLifecycle, IssueLifecycleLive } = issueLifecycleModule;
@@ -1742,4 +1742,4 @@ var init_merge_agent = __esmMin((() => {
1742
1742
  //#endregion
1743
1743
  export { init_operations as C, gitPush as S, listGitOperationsSync as T, scanGitPatterns as _, init_merge_agent as a, triggerPostMergeReleaseIfConfigured as b, isSyncMainMainPreferredPath as c, parseAgentOutput as d, postMergeLifecycle as f, scanForConflictMarkers as g, salvageStrandedMerge as h, captureTmuxOutput as i, logMergeHistory as l, runProjectQualityGates as m, GIT_PATTERNS as n, isAutoCommitExcludedPath as o, resetPostMergeState as p, autoCommitWorkspaceChangesBeforeSync as r, isMergeAgentRunning as s, AUTO_COMMIT_EXCLUDED_PATHS as t, notifyTldrDaemon as u, sendMessageToAgent as v, init_git_activity as w, MainDivergedError as x, syncMainIntoWorkspace as y };
1744
1744
 
1745
- //# sourceMappingURL=merge-agent-DdMVSV2Y.js.map
1745
+ //# sourceMappingURL=merge-agent-BLUgRsz3.js.map
@@ -1,3 +1,3 @@
1
- import { _ as scanGitPatterns, a as init_merge_agent, b as triggerPostMergeReleaseIfConfigured, c as isSyncMainMainPreferredPath, d as parseAgentOutput, f as postMergeLifecycle, g as scanForConflictMarkers, h as salvageStrandedMerge, i as captureTmuxOutput, l as logMergeHistory, m as runProjectQualityGates, n as GIT_PATTERNS, o as isAutoCommitExcludedPath, p as resetPostMergeState, r as autoCommitWorkspaceChangesBeforeSync, s as isMergeAgentRunning, t as AUTO_COMMIT_EXCLUDED_PATHS, u as notifyTldrDaemon, v as sendMessageToAgent, y as syncMainIntoWorkspace } from "./merge-agent-DdMVSV2Y.js";
1
+ import { _ as scanGitPatterns, a as init_merge_agent, b as triggerPostMergeReleaseIfConfigured, c as isSyncMainMainPreferredPath, d as parseAgentOutput, f as postMergeLifecycle, g as scanForConflictMarkers, h as salvageStrandedMerge, i as captureTmuxOutput, l as logMergeHistory, m as runProjectQualityGates, n as GIT_PATTERNS, o as isAutoCommitExcludedPath, p as resetPostMergeState, r as autoCommitWorkspaceChangesBeforeSync, s as isMergeAgentRunning, t as AUTO_COMMIT_EXCLUDED_PATHS, u as notifyTldrDaemon, v as sendMessageToAgent, y as syncMainIntoWorkspace } from "./merge-agent-BLUgRsz3.js";
2
2
  init_merge_agent();
3
3
  export { AUTO_COMMIT_EXCLUDED_PATHS, GIT_PATTERNS, autoCommitWorkspaceChangesBeforeSync, captureTmuxOutput, isAutoCommitExcludedPath, isMergeAgentRunning, isSyncMainMainPreferredPath, logMergeHistory, notifyTldrDaemon, parseAgentOutput, postMergeLifecycle, resetPostMergeState, runProjectQualityGates, salvageStrandedMerge, scanForConflictMarkers, scanGitPatterns, sendMessageToAgent, syncMainIntoWorkspace, triggerPostMergeReleaseIfConfigured };
@@ -44,4 +44,4 @@ async function shipMergeBatch(issueIds, deps) {
44
44
  //#endregion
45
45
  export { shipMergeBatch };
46
46
 
47
- //# sourceMappingURL=merge-batch-C5q1c1GX.js.map
47
+ //# sourceMappingURL=merge-batch-Cp_j9BGk.js.map
@@ -1,7 +1,7 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { r as init_project_repos, s as resolveProjectReposForIssueSync } from "./project-repos-C0nuoBGv.js";
3
- import { a as patchMergeSetRepoSync, i as init_merge_set, n as ensureMergeSetForIssueSync, o as patchMergeSetReposSync, r as getMergeSetSync } from "./merge-set-DH7ot3yz.js";
4
- import { n as getForgeAdapter, r as init_forge } from "./forge-CZbSg6Ds.js";
2
+ import { r as init_project_repos, s as resolveProjectReposForIssueSync } from "./project-repos-B5pIphKg.js";
3
+ import { a as patchMergeSetRepoSync, i as init_merge_set, n as ensureMergeSetForIssueSync, o as patchMergeSetReposSync, r as getMergeSetSync } from "./merge-set-CBgHfwM0.js";
4
+ import { n as getForgeAdapter, r as init_forge } from "./forge-BaKGCya6.js";
5
5
  import { exec } from "node:child_process";
6
6
  import { promisify } from "node:util";
7
7
  //#region ../../lib/cloister/merge-completeness.ts
@@ -274,4 +274,4 @@ var init_merge_completeness = __esmMin((() => {
274
274
  //#endregion
275
275
  export { observeForgeMergeState as a, init_merge_completeness as i, assessRepoMergeCompleteness as n, reconcileStrandedRepos as o, hasPositiveMergedEvidence as r, assessMergeCompleteness as t };
276
276
 
277
- //# sourceMappingURL=merge-completeness-BMm8tMyZ.js.map
277
+ //# sourceMappingURL=merge-completeness-B46KqhtY.js.map
@@ -1,3 +1,3 @@
1
- import { a as observeForgeMergeState, i as init_merge_completeness, n as assessRepoMergeCompleteness, o as reconcileStrandedRepos } from "./merge-completeness-BMm8tMyZ.js";
1
+ import { a as observeForgeMergeState, i as init_merge_completeness, n as assessRepoMergeCompleteness, o as reconcileStrandedRepos } from "./merge-completeness-B46KqhtY.js";
2
2
  init_merge_completeness();
3
3
  export { assessRepoMergeCompleteness, observeForgeMergeState, reconcileStrandedRepos };
@@ -0,0 +1,2 @@
1
+ import { c as triggerMerge } from "./workspaces-CRBJikLp.js";
2
+ export { triggerMerge };
@@ -0,0 +1,2 @@
1
+ import { t as rebaseFeatureBranch } from "./merge-rebase-DIkBjgwq.js";
2
+ export { rebaseFeatureBranch };
@@ -1,4 +1,4 @@
1
- import { Ar as MergeConflictError, Er as GitError, Fr as init_errors } from "./config-yaml-CmOPzmBb.js";
1
+ import { Ar as MergeConflictError, Er as GitError, Fr as init_errors } from "./config-yaml-CxdwhAIA.js";
2
2
  import { Effect } from "effect";
3
3
  import { existsSync } from "fs";
4
4
  import { join } from "path";
@@ -131,4 +131,4 @@ function rebaseFeatureBranch(workspacePath, featureBranch, baseBranch, issueId)
131
131
  //#endregion
132
132
  export { rebaseFeatureBranch as t };
133
133
 
134
- //# sourceMappingURL=merge-rebase-xLnMlw5h.js.map
134
+ //# sourceMappingURL=merge-rebase-DIkBjgwq.js.map
@@ -1,7 +1,7 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Gn as init_projects, ar as resolveProjectFromIssueSync, br as resolveIssueIdSync, gr as init_issue_id } from "./config-yaml-CmOPzmBb.js";
3
- import { o as getMergeSetFromDb, s as init_merge_sync, v as patchMergeSetRepo, w as upsertMergeSet, y as patchMergeSetRepos } from "./merge-sync-CQ-LgZ1_.js";
4
- import { c as resolveProjectReposFromResolvedIssueSync, r as init_project_repos } from "./project-repos-C0nuoBGv.js";
2
+ import { Gn as init_projects, ar as resolveProjectFromIssueSync, br as resolveIssueIdSync, gr as init_issue_id } from "./config-yaml-CxdwhAIA.js";
3
+ import { T as upsertMergeSet, b as patchMergeSetRepos, c as init_merge_sync, s as getMergeSetFromDb, y as patchMergeSetRepo } from "./merge-sync-kr4vqyjM.js";
4
+ import { c as resolveProjectReposFromResolvedIssueSync, r as init_project_repos } from "./project-repos-B5pIphKg.js";
5
5
  import "effect";
6
6
  //#region ../../lib/merge-set.ts
7
7
  function upsertMergeSetSync(mergeSet) {
@@ -86,4 +86,4 @@ var init_merge_set = __esmMin((() => {
86
86
  //#endregion
87
87
  export { patchMergeSetRepoSync as a, withRepoArtifactUrlSync as c, init_merge_set as i, withRepoStateSync as l, ensureMergeSetForIssueSync as n, patchMergeSetReposSync as o, getMergeSetSync as r, upsertMergeSetSync as s, buildMergeSetForIssueSync as t };
88
88
 
89
- //# sourceMappingURL=merge-set-DH7ot3yz.js.map
89
+ //# sourceMappingURL=merge-set-CBgHfwM0.js.map
@@ -1,3 +1,3 @@
1
- import { c as withRepoArtifactUrlSync, i as init_merge_set, l as withRepoStateSync, n as ensureMergeSetForIssueSync, r as getMergeSetSync, s as upsertMergeSetSync } from "./merge-set-DH7ot3yz.js";
1
+ import { c as withRepoArtifactUrlSync, i as init_merge_set, l as withRepoStateSync, n as ensureMergeSetForIssueSync, r as getMergeSetSync, s as upsertMergeSetSync } from "./merge-set-CBgHfwM0.js";
2
2
  init_merge_set();
3
3
  export { ensureMergeSetForIssueSync, getMergeSetSync, upsertMergeSetSync, withRepoArtifactUrlSync, withRepoStateSync };
@@ -1,2 +1,2 @@
1
- import { A as UatNotPromotable, B as readyForMerge, C as RepoMergeStatus, D as UatMember, E as UatGenerationNotFound, F as enqueueMerge, I as getAllActiveQueues, L as getCurrentMerge, M as UatStatus, N as WorkspaceType, O as UatMemberRole, P as dequeueMerge, R as getQueueForProject, S as RepoKey, T as UatGenerationFilter, _ as NotReadyForMerge, a as ForgeMergeFailed, b as QueueView, c as MergeInProgress, d as MergeSet, f as MergeSetNotFound, g as MergeWriterLive, h as MergeWriter, i as AutoMergeStatus, j as UatResolution, k as UatName, l as MergeResolver, m as MergeSetStatus, n as AutoMergeFilter, o as GateStatus, p as MergeSetRepo, r as AutoMergeNotFound, s as MergeApi, t as AutoMerge, u as MergeResolverLive, v as ProjectKey, w as UatGeneration, x as RebaseStatus, y as QueueEntryStatus, z as markMergeProcessing } from "./merge-Bpx4jjht.js";
1
+ import { A as UatNotPromotable, B as readyForMerge, C as RepoMergeStatus, D as UatMember, E as UatGenerationNotFound, F as enqueueMerge, I as getAllActiveQueues, L as getCurrentMerge, M as UatStatus, N as WorkspaceType, O as UatMemberRole, P as dequeueMerge, R as getQueueForProject, S as RepoKey, T as UatGenerationFilter, _ as NotReadyForMerge, a as ForgeMergeFailed, b as QueueView, c as MergeInProgress, d as MergeSet, f as MergeSetNotFound, g as MergeWriterLive, h as MergeWriter, i as AutoMergeStatus, j as UatResolution, k as UatName, l as MergeResolver, m as MergeSetStatus, n as AutoMergeFilter, o as GateStatus, p as MergeSetRepo, r as AutoMergeNotFound, s as MergeApi, t as AutoMerge, u as MergeResolverLive, v as ProjectKey, w as UatGeneration, x as RebaseStatus, y as QueueEntryStatus, z as markMergeProcessing } from "./merge-DiW9RdSB.js";
2
2
  export { AutoMerge, AutoMergeFilter, AutoMergeNotFound, AutoMergeStatus, ForgeMergeFailed, GateStatus, MergeApi, MergeInProgress, MergeResolver, MergeResolverLive, MergeSet, MergeSetNotFound, MergeSetRepo, MergeSetStatus, MergeWriter, MergeWriterLive, NotReadyForMerge, ProjectKey, QueueEntryStatus, QueueView, RebaseStatus, RepoKey, RepoMergeStatus, UatGeneration, UatGenerationFilter, UatGenerationNotFound, UatMember, UatMemberRole, UatName, UatNotPromotable, UatResolution, UatStatus, WorkspaceType, dequeueMerge, enqueueMerge, getAllActiveQueues, getCurrentMerge, getQueueForProject, markMergeProcessing, readyForMerge };
@@ -0,0 +1,3 @@
1
+ import { A as listUatGenerationsSync, C as scheduleAutoMergeWithResult, D as hasUncleanedTerminalUatGenerationSync, E as getUatGenerationSync, F as updateUatGenerationSync, M as markUatGenerationRepoPromotedSync, N as setUatGenerationStackStartedAtSync, O as insertUatGenerationSync, P as updateUatGenerationStatusSync, S as resetProcessingToQueued, T as upsertMergeSet, _ as markMerged, a as getAllActiveQueues, b as patchMergeSetRepos, c as init_merge_sync, d as isMergeTrainEnabledForProject, f as listActiveAutoMerges, g as markFailed, h as markBlocked, i as getActionableAutoMerge, j as listUatGenerationsWithStacksSync, k as listUatGenerationNamesSync, l as isFlywheelGloballyPaused, m as listProblemAutoMerges, n as countActionableAutoMerges, o as getAllMergeSetsFromDb, p as listDuePendingAutoMerges, r as deleteMergeSet, s as getMergeSetFromDb, t as cancelPending, u as isMergeTrainEnabled, v as markMergingBlocked, w as transitionToMerging, x as requeueToPending, y as patchMergeSetRepo } from "./merge-sync-kr4vqyjM.js";
2
+ init_merge_sync();
3
+ export { cancelPending, countActionableAutoMerges, deleteMergeSet, getActionableAutoMerge, getAllActiveQueues, getAllMergeSetsFromDb, getMergeSetFromDb, getUatGenerationSync, hasUncleanedTerminalUatGenerationSync, insertUatGenerationSync, isFlywheelGloballyPaused, isMergeTrainEnabled, isMergeTrainEnabledForProject, listActiveAutoMerges, listDuePendingAutoMerges, listProblemAutoMerges, listUatGenerationNamesSync, listUatGenerationsSync, listUatGenerationsWithStacksSync, markBlocked, markFailed, markMerged, markMergingBlocked, markUatGenerationRepoPromotedSync, patchMergeSetRepo, patchMergeSetRepos, requeueToPending, resetProcessingToQueued, scheduleAutoMergeWithResult, setUatGenerationStackStartedAtSync, transitionToMerging, updateUatGenerationStatusSync, updateUatGenerationSync, upsertMergeSet };
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-BjuxvjdS.js";
2
+ import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-BDQDRopn.js";
3
3
  //#region ../../lib/overdeck/merge-sync-time.ts
4
4
  /**
5
5
  * merge-sync-time.ts — timestamp conversion shared by the merge-domain sync
@@ -444,7 +444,7 @@ function markMergingBlocked(id, reason) {
444
444
  }
445
445
  /** Drop-in for markMerged() from pending-auto-merges-db.ts. */
446
446
  function markMerged(id) {
447
- return getOverdeckDatabaseSync().prepare("UPDATE pending_auto_merges SET status = 'merged', merged_at = ? WHERE id = ? AND status = 'merging'").run(nowMillis(), id).changes === 1;
447
+ return getOverdeckDatabaseSync().prepare("UPDATE pending_auto_merges SET status = 'merged', merged_at = ? WHERE id = ? AND status IN ('pending','blocked','failed','merging')").run(nowMillis(), id).changes === 1;
448
448
  }
449
449
  /** Drop-in for cancelPending() from pending-auto-merges-db.ts. */
450
450
  function cancelPending(id, cancelledBy) {
@@ -455,6 +455,9 @@ function getActionableAutoMerge(issueId) {
455
455
  const row = getOverdeckDatabaseSync().prepare("SELECT * FROM pending_auto_merges WHERE issue_id = ? AND status IN ('pending','merging','blocked','failed') ORDER BY id DESC LIMIT 1").get(issueId);
456
456
  return row ? rowToPendingAutoMerge(row) : null;
457
457
  }
458
+ function countActionableAutoMerges(issueId) {
459
+ return getOverdeckDatabaseSync().prepare("SELECT COUNT(*) AS n FROM pending_auto_merges WHERE issue_id = ? AND status IN ('pending','merging','blocked','failed')").get(issueId)?.n ?? 0;
460
+ }
458
461
  /** Drop-in for listActiveAutoMerges() from pending-auto-merges-db.ts. */
459
462
  function listActiveAutoMerges(limit = 100) {
460
463
  return getOverdeckDatabaseSync().prepare("SELECT * FROM pending_auto_merges WHERE status IN ('pending','merging') ORDER BY scheduled_merge_at ASC, id ASC LIMIT ?").all(limit).map(rowToPendingAutoMerge);
@@ -652,6 +655,6 @@ var init_merge_sync = __esmMin((() => {
652
655
  MERGE_SET_REPO_CAS_FAILED = /* @__PURE__ */ new Error("merge-set-repo-cas-failed");
653
656
  }));
654
657
  //#endregion
655
- export { listUatGenerationsWithStacksSync as A, transitionToMerging as C, insertUatGenerationSync as D, hasUncleanedTerminalUatGenerationSync as E, setUatGenerationStackStartedAtSync as M, updateUatGenerationStatusSync as N, listUatGenerationNamesSync as O, updateUatGenerationSync as P, scheduleAutoMergeWithResult as S, getUatGenerationSync as T, markMergingBlocked as _, getAllMergeSetsFromDb as a, requeueToPending as b, isFlywheelGloballyPaused as c, listActiveAutoMerges as d, listDuePendingAutoMerges as f, markMerged as g, markFailed as h, getAllActiveQueues as i, markUatGenerationRepoPromotedSync as j, listUatGenerationsSync as k, isMergeTrainEnabled as l, markBlocked as m, deleteMergeSet as n, getMergeSetFromDb as o, listProblemAutoMerges as p, getActionableAutoMerge as r, init_merge_sync as s, cancelPending as t, isMergeTrainEnabledForProject as u, patchMergeSetRepo as v, upsertMergeSet as w, resetProcessingToQueued as x, patchMergeSetRepos as y };
658
+ export { listUatGenerationsSync as A, scheduleAutoMergeWithResult as C, hasUncleanedTerminalUatGenerationSync as D, getUatGenerationSync as E, updateUatGenerationSync as F, markUatGenerationRepoPromotedSync as M, setUatGenerationStackStartedAtSync as N, insertUatGenerationSync as O, updateUatGenerationStatusSync as P, resetProcessingToQueued as S, upsertMergeSet as T, markMerged as _, getAllActiveQueues as a, patchMergeSetRepos as b, init_merge_sync as c, isMergeTrainEnabledForProject as d, listActiveAutoMerges as f, markFailed as g, markBlocked as h, getActionableAutoMerge as i, listUatGenerationsWithStacksSync as j, listUatGenerationNamesSync as k, isFlywheelGloballyPaused as l, listProblemAutoMerges as m, countActionableAutoMerges as n, getAllMergeSetsFromDb as o, listDuePendingAutoMerges as p, deleteMergeSet as r, getMergeSetFromDb as s, cancelPending as t, isMergeTrainEnabled as u, markMergingBlocked as v, transitionToMerging as w, requeueToPending as x, patchMergeSetRepo as y };
656
659
 
657
- //# sourceMappingURL=merge-sync-CQ-LgZ1_.js.map
660
+ //# sourceMappingURL=merge-sync-kr4vqyjM.js.map
@@ -1,5 +1,5 @@
1
- import { Gn as init_projects, ar as resolveProjectFromIssueSync, zn as getProjectSync } from "./config-yaml-CmOPzmBb.js";
2
- import { s as init_merge_sync, u as isMergeTrainEnabledForProject } from "./merge-sync-CQ-LgZ1_.js";
1
+ import { Gn as init_projects, ar as resolveProjectFromIssueSync, zn as getProjectSync } from "./config-yaml-CxdwhAIA.js";
2
+ import { c as init_merge_sync, d as isMergeTrainEnabledForProject } from "./merge-sync-kr4vqyjM.js";
3
3
  //#region ../../lib/cloister/merge-train-reconciler.ts
4
4
  init_projects();
5
5
  init_merge_sync();
@@ -72,9 +72,9 @@ async function runMergeTrainReconcile(mergedIssueId, opts = {}) {
72
72
  if (!config) return false;
73
73
  return isMergeTrainEnabledForProject(config);
74
74
  }))()) return [];
75
- return reconcileStaleSiblings(mergedIssueId, opts.deps ?? (await import("./merge-train-deps-CNPJzepw.js")).buildRealReconcileDeps());
75
+ return reconcileStaleSiblings(mergedIssueId, opts.deps ?? (await import("./merge-train-deps-D_uGX91G.js")).buildRealReconcileDeps());
76
76
  }
77
77
  //#endregion
78
78
  export { runMergeTrainReconcile };
79
79
 
80
- //# sourceMappingURL=merge-train-DTEMyIu4.js.map
80
+ //# sourceMappingURL=merge-train-Dmrcus12.js.map
@@ -1,6 +1,6 @@
1
- import { Gn as init_projects, ar as resolveProjectFromIssueSync } from "./config-yaml-CmOPzmBb.js";
2
- import { b as init_agents, dt as spawnRun } from "./queries-DHJm7bTd.js";
3
- import { c as init_review_status_sync, r as getAllReviewStatusesFromDb } from "./review-status-sync-483sujRo.js";
1
+ import { Gn as init_projects, ar as resolveProjectFromIssueSync } from "./config-yaml-CxdwhAIA.js";
2
+ import { b as init_agents, dt as spawnRun } from "./queries-C-MUZaIy.js";
3
+ import { c as init_review_status_sync, r as getAllReviewStatusesFromDb } from "./review-status-sync-0GxOqeqF.js";
4
4
  import { join } from "path";
5
5
  import { exec } from "child_process";
6
6
  import { promisify } from "util";
@@ -47,23 +47,29 @@ function buildRealReconcileDeps() {
47
47
  }
48
48
  },
49
49
  reDispatchVerification: async (issueId) => {
50
- await spawnRun(issueId, "review", { prompt: "Your branch was automatically rebased onto the latest main after another feature merged. Re-review on the new HEAD and confirm the issue is still correct and ready to merge." });
50
+ await spawnRun(issueId, "review", {
51
+ prompt: "Your branch was automatically rebased onto the latest main after another feature merged. Re-review on the new HEAD and confirm the issue is still correct and ready to merge.",
52
+ startedBy: "merge-train:verification"
53
+ });
51
54
  },
52
55
  dispatchConflictResolver: async (issueId, mergedIssueId) => {
53
- await spawnRun(issueId, "work", { prompt: [
54
- `Your feature branch could not be cleanly rebased onto the latest main because ${mergedIssueId} just merged and conflicts with your changes.`,
55
- "",
56
- `Resolve the rebase conflict WITHOUT degrading either feature:`,
57
- `1. Read what ${mergedIssueId} changed (git log/diff on origin/main) AND what your issue (${issueId}) intended.`,
58
- `2. Rebase your branch onto origin/main and resolve each conflict so BOTH features' intent is preserved.`,
59
- `3. Build, run tests, commit, and push, then re-request review.`,
60
- "",
61
- `Do not blindly accept one side of a conflict — understand both changesets first.`
62
- ].join("\n") });
56
+ await spawnRun(issueId, "work", {
57
+ prompt: [
58
+ `Your feature branch could not be cleanly rebased onto the latest main because ${mergedIssueId} just merged and conflicts with your changes.`,
59
+ "",
60
+ `Resolve the rebase conflict WITHOUT degrading either feature:`,
61
+ `1. Read what ${mergedIssueId} changed (git log/diff on origin/main) AND what your issue (${issueId}) intended.`,
62
+ `2. Rebase your branch onto origin/main and resolve each conflict so BOTH features' intent is preserved.`,
63
+ `3. Build, run tests, commit, and push, then re-request review.`,
64
+ "",
65
+ `Do not blindly accept one side of a conflict — understand both changesets first.`
66
+ ].join("\n"),
67
+ startedBy: "merge-train:conflict-resolver"
68
+ });
63
69
  }
64
70
  };
65
71
  }
66
72
  //#endregion
67
73
  export { buildRealReconcileDeps };
68
74
 
69
- //# sourceMappingURL=merge-train-deps-CNPJzepw.js.map
75
+ //# sourceMappingURL=merge-train-deps-D_uGX91G.js.map
@@ -1,9 +1,9 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Gn as init_projects, ar as resolveProjectFromIssueSync } from "./config-yaml-CmOPzmBb.js";
3
- import { n as resolveGitHubIssueSync, t as init_tracker_utils } from "./tracker-utils-L0FKtjq2.js";
4
- import { i as init_merge_set, r as getMergeSetSync } from "./merge-set-DH7ot3yz.js";
5
- import { f as init_github_app, p as isGitHubAppConfigured, v as listPullRequestsForHead } from "./github-app-CQ1Lo6LA.js";
6
- import { i as init_merge_completeness, r as hasPositiveMergedEvidence, t as assessMergeCompleteness } from "./merge-completeness-BMm8tMyZ.js";
2
+ import { Gn as init_projects, ar as resolveProjectFromIssueSync } from "./config-yaml-CxdwhAIA.js";
3
+ import { n as resolveGitHubIssueSync, t as init_tracker_utils } from "./tracker-utils-CJ6BHjcD.js";
4
+ import { i as init_merge_set, r as getMergeSetSync } from "./merge-set-CBgHfwM0.js";
5
+ import { f as init_github_app, p as isGitHubAppConfigured, v as listPullRequestsForHead } from "./github-app-CmNk0zLU.js";
6
+ import { i as init_merge_completeness, r as hasPositiveMergedEvidence, t as assessMergeCompleteness } from "./merge-completeness-B46KqhtY.js";
7
7
  import { Effect } from "effect";
8
8
  import { exec } from "node:child_process";
9
9
  import { promisify } from "node:util";
@@ -217,4 +217,4 @@ var init_merge_verification = __esmMin((() => {
217
217
  //#endregion
218
218
  export { verifyMergedBeforeLifecycle as i, init_merge_verification as n, shouldSkipDispatchAsMerged as r, handlePostRebaseVerificationDeferral as t };
219
219
 
220
- //# sourceMappingURL=merge-verification-x3JO8Dtz.js.map
220
+ //# sourceMappingURL=merge-verification-NvaAd8CZ.js.map
@@ -1,3 +1,3 @@
1
- import { n as init_merged_docker_cleanup_worker, r as reconcileMergedDockerCleanupQueue } from "./merged-docker-cleanup-worker-CTpC27Bs.js";
1
+ import { n as init_merged_docker_cleanup_worker, r as reconcileMergedDockerCleanupQueue } from "./merged-docker-cleanup-worker-Y1R06TEl.js";
2
2
  init_merged_docker_cleanup_worker();
3
3
  export { reconcileMergedDockerCleanupQueue };
@@ -1,6 +1,6 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
2
  import { o as init_activity_logger, r as emitActivityEntrySync } from "./activity-logger-CyteR4JO.js";
3
- import { n as init_review_status_source, s as resolveCanonicalReviewStatus } from "./review-status-source-CpvJnvnQ.js";
3
+ import { n as init_review_status_source, s as resolveCanonicalReviewStatus } from "./review-status-source-DIk1JSow.js";
4
4
  //#region ../../lib/cloister/merged-docker-cleanup-worker.ts
5
5
  function retryDelayMs(attempts) {
6
6
  return Math.min(RETRY_BASE_MS * 2 ** Math.max(0, attempts - 1), RETRY_MAX_MS);
@@ -30,7 +30,7 @@ function recordFailure(entry, reason) {
30
30
  console.warn(`[deacon] Merged-issue Docker cleanup failed for ${entry.issueId}; retry ${entry.attempts} after ${new Date(entry.nextAttemptAt).toISOString()}: ${reason}`);
31
31
  }
32
32
  async function drainQueue() {
33
- const { teardownWorkspaceDockerByNamePromise } = await import("./docker-BMVTSFL5.js");
33
+ const { teardownWorkspaceDockerByNamePromise } = await import("./docker-Y3PElJb0.js");
34
34
  for (let entry = nextEligibleEntry(); entry; entry = nextEligibleEntry()) {
35
35
  entry.running = true;
36
36
  const eligibility = resolveCanonicalReviewStatus(entry.issueId);
@@ -104,4 +104,4 @@ var init_merged_docker_cleanup_worker = __esmMin((() => {
104
104
  //#endregion
105
105
  export { init_merged_docker_cleanup_worker as n, reconcileMergedDockerCleanupQueue as r, enqueueMergedDockerCleanup as t };
106
106
 
107
- //# sourceMappingURL=merged-docker-cleanup-worker-CTpC27Bs.js.map
107
+ //# sourceMappingURL=merged-docker-cleanup-worker-Y1R06TEl.js.map
@@ -1,5 +1,5 @@
1
1
  import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { a as File, i as init_esm_min, n as FormData, t as init_from } from "./from-D_4_dk7i.js";
2
+ import { a as File, i as init_esm_min, n as FormData, t as init_from } from "./from-B3tZbB55.js";
3
3
  //#region ../../../node_modules/.bun/node-fetch@3.3.2/node_modules/node-fetch/src/utils/multipart-parser.js
4
4
  function _fileName(headerValue) {
5
5
  const m = headerValue.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);
@@ -293,4 +293,4 @@ __esmMin((() => {
293
293
  }))();
294
294
  export { toFormData };
295
295
 
296
- //# sourceMappingURL=multipart-parser-IMSBfePV.js.map
296
+ //# sourceMappingURL=multipart-parser-R-oC8dQg.js.map
@@ -89,4 +89,4 @@ var init_no_resume_mode = __esmMin((() => {
89
89
  //#endregion
90
90
  export { init_boot_gates as a, formatBootGateState as i, isExplicitNoResumeRequest as n, resolveBootGates as o, isNoResumeValueEnabled as r, init_no_resume_mode as t };
91
91
 
92
- //# sourceMappingURL=no-resume-mode-C5ULAXwO.js.map
92
+ //# sourceMappingURL=no-resume-mode-BgD0JUmM.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@overdeck/desktop-server",
3
- "version": "0.46.0",
3
+ "version": "0.47.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
@@ -302,9 +302,9 @@
302
302
  }
303
303
  },
304
304
  "node_modules/@types/node": {
305
- "version": "26.1.1",
306
- "resolved": "https://registry.npmjs.org/@types/node/-/node-26.1.1.tgz",
307
- "integrity": "sha512-nxAkRSVkN1Y0JC1W8ky/fTfkGsMmcrRsbx+3XoZE+rMOX71kLYTV7fLXpqud1GpbpP5TuffXFqfX7fH2GgZREw==",
305
+ "version": "26.1.2",
306
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-26.1.2.tgz",
307
+ "integrity": "sha512-Vu4a5UFA9rIIFJ7rB/Vaafh9lrCQszopTCx6KjFboXTGQbPNasehVR5TEiithSDGyd1DEiUByggTZsg8jukeIg==",
308
308
  "license": "MIT",
309
309
  "dependencies": {
310
310
  "undici-types": "~8.3.0"
@@ -8,7 +8,7 @@ This package contains type definitions for node (https://nodejs.org/).
8
8
  Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node.
9
9
 
10
10
  ### Additional Details
11
- * Last updated: Wed, 08 Jul 2026 06:47:45 GMT
11
+ * Last updated: Mon, 27 Jul 2026 17:32:10 GMT
12
12
  * Dependencies: [undici-types](https://npmjs.com/package/undici-types)
13
13
 
14
14
  # Credits
@@ -1185,7 +1185,7 @@ declare module "node:crypto" {
1185
1185
  * and it will be impossible to extract the private key from the returned object.
1186
1186
  * @since v11.6.0
1187
1187
  */
1188
- function createPublicKey(key: PublicKeyInput | RawPublicKeyInput | JsonWebKeyInput | BinaryLike): KeyObject;
1188
+ function createPublicKey(key: PublicKeyInput | RawPublicKeyInput | JsonWebKeyInput | KeyLike): KeyObject;
1189
1189
  /**
1190
1190
  * Creates and returns a new key object containing a secret key for symmetric
1191
1191
  * encryption or `Hmac`.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@types/node",
3
- "version": "26.1.1",
3
+ "version": "26.1.2",
4
4
  "description": "TypeScript definitions for node",
5
5
  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node",
6
6
  "license": "MIT",
@@ -150,6 +150,6 @@
150
150
  "undici-types": "~8.3.0"
151
151
  },
152
152
  "peerDependencies": {},
153
- "typesPublisherContentHash": "a59119b073061829bc67a5bf6bc2b8ecb0a5a6196058e3c73172a00440f4e16d",
153
+ "typesPublisherContentHash": "359a01a58cecf5a30fb7b7a7b10c4f5c332339421ef5cbc9932fc492f472a5b4",
154
154
  "typeScriptVersion": "5.6"
155
155
  }