@overdeck/desktop 0.45.21 → 0.45.22

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 (344) hide show
  1. package/package.json +1 -1
  2. package/server/{acceptance-criteria-CJIFA8Vg.js → acceptance-criteria-BH7ac_1G.js} +2 -2
  3. package/server/{advancing-selfheal-CPOBO5ZS.js → advancing-selfheal-cSvXNZLZ.js} +6 -6
  4. package/server/{agent-gc-D6PUckBB.js → agent-gc-Dj2gncak.js} +4 -4
  5. package/server/{agent-state-BV_6RHnO.js → agent-state-Co5Sy2Fw.js} +1 -1
  6. package/server/{agent-state-service-DHwemt96.js → agent-state-service-CsQ07Pxe.js} +1 -1
  7. package/server/{agent-state-service-6MFQqnFy.js → agent-state-service-DistflNn.js} +5 -5
  8. package/server/{agents-DbrHWunF.js → agents-DXdHmRTC.js} +4 -4
  9. package/server/{agents-Czz6R57Z.js → agents-DyHKlq1I.js} +1 -1
  10. package/server/{archive-planning-BOnwJq8M.js → archive-planning-BvDuWNMo.js} +5 -5
  11. package/server/{archive-planning-MPpvQJL4.js → archive-planning-Cp_DC1j-.js} +1 -1
  12. package/server/{artifact-index-jobs-BOoySTKD.js → artifact-index-jobs-CDBFL4OU.js} +2 -2
  13. package/server/{backlog-auto-trigger-BUaFI44J.js → backlog-auto-trigger-DmA1IbYf.js} +3 -3
  14. package/server/{behavior-Dg-D8eBG.js → behavior-CGj16clS.js} +2 -2
  15. package/server/{briefing-freshness-OouGbJ7d.js → briefing-freshness-C12WgkaB.js} +2 -2
  16. package/server/{build-info-Cv6CI7Gu.js → build-info-BRpqQvNd.js} +1 -1
  17. package/server/{build-info-27NlbKhV.js → build-info-NU3KbXYw.js} +3 -3
  18. package/server/{checkpoint-manager-D64fCC4p.js → checkpoint-manager-CTPjAmtH.js} +2 -2
  19. package/server/{checkpoint-manager-C7mFCY_E.js → checkpoint-manager-rOgT98WY.js} +1 -1
  20. package/server/checkpoint-worker.js +1 -1
  21. package/server/{checkpoints-DwZqT2qQ.js → checkpoints-B5jFNi2G.js} +1 -1
  22. package/server/{checkpoints-Vh-J15ge.js → checkpoints-BJum14fs.js} +2 -2
  23. package/server/{claude-hooks-provision-CS5W_dhI.js → claude-hooks-provision-BhwWK-TQ.js} +1 -1
  24. package/server/{claude-hooks-provision-BVLGfHrv.js → claude-hooks-provision-D7p5WcKZ.js} +2 -2
  25. package/server/{claude-permissions-C2OrLYKL.js → claude-permissions-nSFKH78M.js} +2 -2
  26. package/server/{claude-settings-overlay-DX-fMFpC.js → claude-settings-overlay-BI_UIke0.js} +2 -2
  27. package/server/{claude-settings-overlay-DWXjafJh.js → claude-settings-overlay-DHBwjS1X.js} +1 -1
  28. package/server/cli-BRORS9qY.js +3 -0
  29. package/server/{cli-mvpEOb3w.js → cli-CbKNkFE5.js} +9 -9
  30. package/server/{cliproxy-Dvsr4ZkW.js → cliproxy-Brf_5MuG.js} +2 -2
  31. package/server/{cliproxy-7g1nObvB.js → cliproxy-bONZDBbC.js} +1 -1
  32. package/server/{close-issue-8F6uawYj.js → close-issue-CxReRxIc.js} +5 -5
  33. package/server/{closed-issue-reaper-BaYQYF6w.js → closed-issue-reaper-CQ3kqha7.js} +9 -9
  34. package/server/{closed-issue-reaper-BhV-r-tC.js → closed-issue-reaper-DXP2Xyv3.js} +1 -1
  35. package/server/{codex-D_UBEOwL.js → codex-CbmztVcc.js} +9 -6
  36. package/server/{codex-BBeZ8c3s.js → codex-DNyiQDKW.js} +1 -1
  37. package/server/{codex-parser-BTzlOZiV.js → codex-parser-jl8AeAmB.js} +2 -2
  38. package/server/{config-nAB_F-Gp.js → config-BJKocXKd.js} +1 -1
  39. package/server/{config-G1TOMJZA.js → config-DeTsoZdR.js} +2 -2
  40. package/server/{config-CrduXs4a.js → config-q4Gvd8dq.js} +2 -2
  41. package/server/{config-yaml-Ciyp2mYe.js → config-yaml-ig8Nwtiw.js} +124 -27
  42. package/server/{conflict-gate-BLUNMs1i.js → conflict-gate-CFqPVxEg.js} +3 -3
  43. package/server/{conflict-gate-BKalpcjL.js → conflict-gate-CHU9K1vU.js} +1 -1
  44. package/server/{context-layers-Cg9ZgVfx.js → context-layers-15gDOk20.js} +3 -3
  45. package/server/{context-layers-YNpf6Q_I.js → context-layers-DlQKkHH2.js} +2 -2
  46. package/server/{control-settings-D_79A6gp.js → control-settings-D_odMIaC.js} +4 -4
  47. package/server/{conversation-compaction-DiuZbIUB.js → conversation-compaction-B6YSRLda.js} +8 -8
  48. package/server/{conversation-compaction-CMIeWW4_.js → conversation-compaction-CN4-5YYt.js} +1 -1
  49. package/server/{conversation-service-DQybSPUK.js → conversation-service-C3avRVEr.js} +6 -6
  50. package/server/{conversation-service-CWk8mEym.js → conversation-service-Dq33SYEj.js} +1 -1
  51. package/server/{conversations-BJ-t3BRm.js → conversations-H9if0bCQ.js} +1 -1
  52. package/server/{conversations-BUgGvqVL.js → conversations-bYpM9-kZ.js} +4 -4
  53. package/server/{cost-Drm7qeD5.js → cost-Codk1pc2.js} +2 -2
  54. package/server/{cost-sync-DzHP6zaR.js → cost-sync-D_cre6WM.js} +3 -3
  55. package/server/{cost-jJ2cgDcG.js → cost-wH46-WsJ.js} +3 -3
  56. package/server/{dag-DIji6O2b.js → dag-CJpgf9A3.js} +2 -2
  57. package/server/{dangerous-git-ops-BebB-61h.js → dangerous-git-ops-D6AF-Hg_.js} +1 -1
  58. package/server/dashboard-db-worker.js +7 -7
  59. package/server/{deacon-pleYrvIm.js → deacon-B8HbQdqU.js} +3 -3
  60. package/server/{deacon-1s7bM5zn.js → deacon-CkT_kznS.js} +1377 -407
  61. package/server/{deacon-nudge-log-C5VCKtyi.js → deacon-nudge-log-D6K9K-rE.js} +3 -3
  62. package/server/{deacon-swarm-DmA3rJ7k.js → deacon-swarm-BryRr6AO.js} +13 -13
  63. package/server/deacon-swarm-CV54eNmU.js +2 -0
  64. package/server/deacon.js +8 -8
  65. package/server/{deploy-patrol-DmM6F-yw.js → deploy-patrol-1IrZxicY.js} +6 -6
  66. package/server/{deploy-window-ClLq1RYf.js → deploy-window-7ZYHh7Zp.js} +1 -1
  67. package/server/{deploy-window-jw4S_Y-c.js → deploy-window-wDf4UgHt.js} +6 -6
  68. package/server/{dev-supervisor-Do2Stz49.js → dev-supervisor-C7p9kEpc.js} +2 -2
  69. package/server/{devcontainer-renderer-D8ylupco.js → devcontainer-renderer-CNmQy0pL.js} +3 -3
  70. package/server/{dist-yfR7G1BL.js → dist-D-Ed5yVw.js} +1 -1
  71. package/server/dist-j64RzSrQ.js +3 -0
  72. package/server/{docker-ClwPQaba.js → docker-BCZ89M9X.js} +2 -2
  73. package/server/{dod-BLphkhjs.js → dod-DbJLYcHv.js} +1 -1
  74. package/server/{ensure-devcontainer-BA3bICoY.js → ensure-devcontainer-Cs6W9Yzj.js} +1 -1
  75. package/server/{ensure-devcontainer-CFpQatOc.js → ensure-devcontainer-V5JWaAva.js} +4 -4
  76. package/server/{esm-shims-BZw-fTQ6.js → esm-shims-dTeNdq7X.js} +1 -1
  77. package/server/{event-store-DABarGNz.js → event-store-CpBGsO6_.js} +1 -1
  78. package/server/{event-store-BVnON3vf.js → event-store-TnWdydfB.js} +3 -3
  79. package/server/{events-CmERlnwn.js → events-DSUdR-04.js} +3 -3
  80. package/server/{events-LGeUehYW.js → events-Dsuv6qyB.js} +1 -1
  81. package/server/{factory-CQNprtHe.js → factory-BMrK4TrE.js} +4 -4
  82. package/server/{feature-registry-population-D9Z3tYSa.js → feature-registry-population-B-CI9hgE.js} +4 -4
  83. package/server/{feature-registry-storage-BWymOgXE.js → feature-registry-storage-B972ph_A.js} +2 -2
  84. package/server/{features--fOza5g5.js → features-Bc-Bmiye.js} +2 -2
  85. package/server/{feedback-target-Dn9vfPpz.js → feedback-target-DS6NUuSs.js} +1 -1
  86. package/server/{feedback-target-Dqik2WTe.js → feedback-target-DZ-iAnAa.js} +7 -7
  87. package/server/{feedback-writer-Wlq5-qgS.js → feedback-writer-BXP6g75N.js} +4 -4
  88. package/server/{feedback-writer-DDQNV8uc.js → feedback-writer-Bx5z11mF.js} +1 -1
  89. package/server/{flywheel-DPUc8r3V.js → flywheel-6WHU4O7A.js} +14 -14
  90. package/server/{flywheel-1Wd8WDlh.js → flywheel-COR0mbRI.js} +12 -12
  91. package/server/{flywheel-Q-38YhZG.js → flywheel-Ctr5uuvo.js} +1 -1
  92. package/server/{flywheel-merge-order-CeBuX0EJ.js → flywheel-merge-order-CNKAY489.js} +1 -1
  93. package/server/{flywheel-merge-order-4SqOXFAr.js → flywheel-merge-order-CTgHeg-W.js} +7 -7
  94. package/server/forge-B0_opi-V.js +2 -0
  95. package/server/{forge-DBbDpiYc.js → forge-B1S_KZv4.js} +2 -2
  96. package/server/{from-hh6vTBGl.js → from-DpwQ-sc3.js} +1 -1
  97. package/server/{fts-db-6ponMie2.js → fts-db-DmAcuCkV.js} +2 -2
  98. package/server/{fts-operations-KIRK165y.js → fts-operations-7d_RkmWp.js} +2 -2
  99. package/server/git-utils-Cc3FHDKd.js +198 -0
  100. package/server/{git-utils-DmF5xkj8.js → git-utils-CsKGnzFA.js} +1 -1
  101. package/server/{github-app-B3yfECo8.js → github-app-CDPtGF7J.js} +2 -2
  102. package/server/{github-app-CeSVFL6C.js → github-app-CU14oYzP.js} +1 -1
  103. package/server/{github-client-4A6FgA8O.js → github-client-CwBZZ3t7.js} +1 -1
  104. package/server/{github-client-Dslipypz.js → github-client-XjTJbBm7.js} +2 -2
  105. package/server/{github-pr-lookup-DBP0YHMr.js → github-pr-lookup-CFGeVhqv.js} +2 -2
  106. package/server/harness-binary-B2CTcD84.js +106 -0
  107. package/server/{harness-resolve-BGpO-OVM.js → harness-resolve-D5FVQTmy.js} +9 -15
  108. package/server/{health-events-CnwV_SSz.js → health-events-C1whmd58.js} +1 -1
  109. package/server/{health-events-CZGZ5I-A.js → health-events-DREeevle.js} +2 -2
  110. package/server/{hooks-DvX33gY_.js → hooks-B-HItBiS.js} +1 -1
  111. package/server/{hooks-CoNscX84.js → hooks-yxRsjk-z.js} +2 -2
  112. package/server/hume-BmhvfVbV.js +3 -0
  113. package/server/{hume-DSJt5eA_.js → hume-Dz_OymXE.js} +2 -2
  114. package/server/{idle-stack-reaper-5DVRoY6P.js → idle-stack-reaper-DrCv0OAG.js} +1 -1
  115. package/server/{idle-stack-reaper-BfL8HqYy.js → idle-stack-reaper-Yf34xXxY.js} +2 -2
  116. package/server/{in-flight-guard-tVGiI5ee.js → in-flight-guard-BoWm66Kh.js} +2 -2
  117. package/server/{infra-DN2wSxle.js → infra-D4iNWMA5.js} +4 -4
  118. package/server/{injection-DK9zh_HL.js → injection-BVNa4MQW.js} +1 -1
  119. package/server/{injection-DtlT8Akv.js → injection-D7T75Pye.js} +7 -7
  120. package/server/{inspect-agent-DKByUS_F.js → inspect-agent-BXCgNeZ4.js} +13 -9
  121. package/server/inspect-agent-Dq0z1k3H.js +2 -0
  122. package/server/{internal-token-7bYL5v6K.js → internal-token-C9DdEOKY.js} +1 -1
  123. package/server/{internal-token-DhfFiwW7.js → internal-token-CXsfxslp.js} +2 -2
  124. package/server/{io-BiM-7Zsx.js → io-DQR9PMgS.js} +3 -3
  125. package/server/{issue-closed-Dfw3QDyZ.js → issue-closed-DtmJM0D0.js} +7 -7
  126. package/server/{issue-lifecycle-ytsEdDlK.js → issue-lifecycle-8PSS9Anq.js} +1 -1
  127. package/server/{issue-lifecycle-B7HZWnTA.js → issue-lifecycle-CeyW_HoD.js} +21 -21
  128. package/server/{issue-service-singleton-D5EB5eYr.js → issue-service-singleton-DBZabEl7.js} +1 -1
  129. package/server/{issue-service-singleton-CPESc4Or.js → issue-service-singleton-D_RVYBuL.js} +8 -8
  130. package/server/{issues-XYtFMxrH.js → issues-pDW9VUNz.js} +2 -2
  131. package/server/{jsonl-parser-DJV2eZUP.js → jsonl-parser-C3HVNR5d.js} +3 -3
  132. package/server/{label-cleanup-CJ4m8iRU.js → label-cleanup-DPwiZlWo.js} +3 -3
  133. package/server/{label-reconciler-CNf3Ylm3.js → label-reconciler-Df1ZduPH.js} +4 -4
  134. package/server/{launcher-generator-5DJRiovn.js → launcher-generator-COgR2By1.js} +6 -6
  135. package/server/{layers-cZx7ibtV.js → layers-Cp1To4L8.js} +2 -2
  136. package/server/{lifecycle-CE7619Xw.js → lifecycle-CtPDcZ9u.js} +6 -6
  137. package/server/{lifecycle-io-CUpsxG0p.js → lifecycle-io-DmY2qwCn.js} +1 -1
  138. package/server/{lifecycle-io-DMurK4oM.js → lifecycle-io-taIb0PoH.js} +4 -4
  139. package/server/{linear-client-BLyN-NiP.js → linear-client-DsFkIxee.js} +2 -2
  140. package/server/{linear-client-Bj1l4FOA.js → linear-client-YwZMDIwQ.js} +1 -1
  141. package/server/memory-fts-worker.js +1 -1
  142. package/server/{merge-CwX2_AWm.js → merge-BwsyNRJV.js} +1 -1
  143. package/server/{merge-hSC2BENe.js → merge-C1t-bspg.js} +3 -3
  144. package/server/{merge-agent-CnORPiri.js → merge-agent-B-SnXOoc.js} +1 -1
  145. package/server/{merge-agent-DnBsms_V.js → merge-agent-DDiIjzk-.js} +369 -213
  146. package/server/{merge-batch-C2w2U2eK.js → merge-batch-Byt-QnEl.js} +1 -1
  147. package/server/{merge-blockers-DhRgh76x.js → merge-blockers-BYjeXrVN.js} +2 -2
  148. package/server/merge-ops-DwWCkSgo.js +2 -0
  149. package/server/{merge-rebase-CE-ZyOMY.js → merge-rebase-Cm6fXaZN.js} +2 -2
  150. package/server/{merge-set-DHkzPCJU.js → merge-set-6LEglm6o.js} +1 -1
  151. package/server/{merge-set-D7YNU1ZB.js → merge-set-DiISXcC-.js} +3 -3
  152. package/server/{merge-sync-CpGA9Kg7.js → merge-sync-B95_4in_.js} +1 -1
  153. package/server/{merge-sync-De1FYva5.js → merge-sync-Do8_q32h.js} +2 -2
  154. package/server/{merge-train-SvkRJZ-k.js → merge-train-CKana8EH.js} +3 -3
  155. package/server/{merge-train-deps-CECJTElu.js → merge-train-deps-BgmqwIfA.js} +4 -4
  156. package/server/{merge-verification-B3meGcXF.js → merge-verification-CqnUzGEK.js} +4 -4
  157. package/server/{multipart-parser-ByTMgYV5.js → multipart-parser-tdOQDJ3o.js} +2 -2
  158. package/server/{no-resume-mode-BnInAFKs.js → no-resume-mode-BWOSZjWd.js} +1 -1
  159. package/server/node_modules/.package-lock.json +5 -5
  160. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/README.md +3 -3
  161. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.d.ts.map +1 -1
  162. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js +2 -2
  163. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/dist/NodeChildProcessSpawner.js.map +1 -1
  164. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/package.json +5 -5
  165. package/server/node_modules/@effect/platform-node/node_modules/@effect/platform-node-shared/src/NodeChildProcessSpawner.ts +6 -8
  166. package/server/{orphan-proposed-reconciler-CAfuWTA1.js → orphan-proposed-reconciler-DSvsJ5M7.js} +1 -1
  167. package/server/{orphan-proposed-reconciler-AxAGUouN.js → orphan-proposed-reconciler-xklgvNA7.js} +19 -12
  168. package/server/package-lock.json +6 -6
  169. package/server/package.json +1 -1
  170. package/server/{pan-dir-Rw17YjT1.js → pan-dir-DOcf6ug3.js} +4 -4
  171. package/server/{paths-FP8v3lTz.js → paths-DooHpt9p.js} +2 -2
  172. package/server/{pickup-xi3KTLaJ.js → pickup-CaskQ7j6.js} +2 -2
  173. package/server/{pipeline-membership-BtKMNY7v.js → pipeline-membership-1LGRjo-k.js} +11 -8
  174. package/server/{pipeline-notifier-BM2HLF7B.js → pipeline-notifier-B6FVsYF9.js} +2 -2
  175. package/server/{pipeline-notifier-dQ-U4NSb.js → pipeline-notifier-CZsrU_nj.js} +1 -1
  176. package/server/{project-pipelines-B59NfN44.js → project-pipelines-CtNG_rvs.js} +2 -2
  177. package/server/projects-BKkwpH6q.js +3 -0
  178. package/server/{prompts-CbqaVjbe.js → prompts-EvhMeeHG.js} +2 -2
  179. package/server/{providers-d3pwXGVE.js → providers-BDDPULlp.js} +7 -7
  180. package/server/providers-DNSQqy2V.js +3 -0
  181. package/server/public/assets/{chunk-BO2N2NFS-BxYSL7J-.js → chunk-BO2N2NFS-sym_ufXe.js} +4 -4
  182. package/server/public/assets/{diagram-OG6HWLK6-C_F9Q2as.js → diagram-OG6HWLK6-CQJPBNBu.js} +1 -1
  183. package/server/public/assets/{dist-DQNg4CiF.js → dist-Bio7THQU.js} +1 -1
  184. package/server/public/assets/{dist-CLSlc6cV.js → dist-DukGS2YZ.js} +3 -3
  185. package/server/public/assets/{ganttDiagram-6RSMTGT7-Cq0my-0C.js → ganttDiagram-6RSMTGT7-D4lWwte3.js} +1 -1
  186. package/server/public/assets/{highlighted-body-OFNGDK62-eZC03dGh.js → highlighted-body-OFNGDK62-CaLboCt5.js} +1 -1
  187. package/server/public/assets/{index-C6NLz_1S.css → index-Bdc4V9ba.css} +1 -1
  188. package/server/public/assets/{index-SLYGA8AQ.js → index-Bwejq-5s.js} +147 -145
  189. package/server/public/assets/{linear-6Fi3qnGg.js → linear-qUWmMZ-c.js} +1 -1
  190. package/server/public/assets/mermaid-GHXKKRXX-B5v_r7cI.js +1 -0
  191. package/server/public/assets/{pieDiagram-4H26LBE5-Dpmc6xsv.js → pieDiagram-4H26LBE5-C4zYulEm.js} +1 -1
  192. package/server/public/assets/{prod-ojHllFvN.js → prod-C8VtLuWC.js} +4 -4
  193. package/server/public/assets/{quadrantDiagram-W4KKPZXB-Ulr9gON5.js → quadrantDiagram-W4KKPZXB-qP04zyZC.js} +1 -1
  194. package/server/public/assets/{sankeyDiagram-5OEKKPKP-CwdHGXfL.js → sankeyDiagram-5OEKKPKP-eMPTX_cG.js} +1 -1
  195. package/server/public/assets/{xychartDiagram-2RQKCTM6-r-bEDzJh.js → xychartDiagram-2RQKCTM6-Dme1PIt6.js} +1 -1
  196. package/server/public/index.html +54 -10
  197. package/server/{pull-requests-CjjPj7v6.js → pull-requests-8z2N1UOV.js} +3 -3
  198. package/server/{pull-requests-D3N6HQzI.js → pull-requests-By_BteaL.js} +1 -1
  199. package/server/{queries-B5hl7lMQ.js → queries-ZABd5aXP.js} +95 -71
  200. package/server/rally-OSJXdiHK.js +3 -0
  201. package/server/{rally-api-DGaFz5L5.js → rally-api-DqKqIMNR.js} +2 -2
  202. package/server/{rally-api-CKr0O4DJ.js → rally-api-xHazRk0d.js} +1 -1
  203. package/server/{rally-client-Cqf6EX_r.js → rally-client-CGWEHaPd.js} +1 -1
  204. package/server/{rally-client-SVbjGvqj.js → rally-client-COYz1vYR.js} +4 -4
  205. package/server/{rally-Dp0Gb1DN.js → rally-i_goYmiA.js} +3 -3
  206. package/server/reap-terminal-sessions-CaMkFOIH.js +4 -0
  207. package/server/{reap-terminal-sessions-CjqRAGw7.js → reap-terminal-sessions-DG9eiMVz.js} +11 -28
  208. package/server/{rebuild-stack-DjdpALr1.js → rebuild-stack-CKjJAI8L.js} +1 -1
  209. package/server/{rebuild-stack-DHqCLvLX.js → rebuild-stack-JUm0jqYP.js} +6 -6
  210. package/server/{reconstruct-cache-BqrCQt0o.js → reconstruct-cache-wU79aCee.js} +6 -6
  211. package/server/record-rwK-nKv_.js +3 -0
  212. package/server/{record-update-RviRDSNs.js → record-update-Crz74r-6.js} +2 -2
  213. package/server/{record-update-BlB8mpKO.js → record-update-D3N6WMFR.js} +1 -1
  214. package/server/{recovery-trip-l1Hsi37x.js → recovery-trip-DkzJSej9.js} +2 -2
  215. package/server/{release-engine-CSI4K6Oj.js → release-engine-DMINVN8S.js} +5 -5
  216. package/server/{release-set-BywwggrE.js → release-set-DeUSOEHy.js} +3 -3
  217. package/server/{remote-DYziAkiZ.js → remote-Dr5kGYSZ.js} +3 -3
  218. package/server/{remote-agents-CZ2rc8I0.js → remote-agents-Ct_WOyke.js} +6 -6
  219. package/server/{remote-agents-BNORDWAX.js → remote-agents-D6O_zETW.js} +1 -1
  220. package/server/{remote-cnoeuDWn.js → remote-b-c5bOce.js} +3 -3
  221. package/server/{remote-completion-W67FNQ-A.js → remote-completion-Dca3hAaa.js} +13 -13
  222. package/server/resume-wZZsWtzz.js +3 -0
  223. package/server/{review-agent-CSswH985.js → review-agent-CCum8sGe.js} +1 -1
  224. package/server/{review-agent-CqSqSHkU.js → review-agent-CThvgK2r.js} +23 -23
  225. package/server/{review-artifacts-BBgnd5df.js → review-artifacts-CXywD0F2.js} +5 -5
  226. package/server/{review-context-Ctp9BdNJ.js → review-context-OYfKUprb.js} +8 -8
  227. package/server/{review-status-DXeqFpk5.js → review-status-Bnh-rdkY.js} +1 -1
  228. package/server/{review-status-CCgPVK1h.js → review-status-DFRjDFef.js} +21 -37
  229. package/server/{review-status-enrichment-DtDRGpst.js → review-status-enrichment-crNAtIpL.js} +3 -3
  230. package/server/review-status-source-CxuEjLGg.js +39 -0
  231. package/server/{review-status-sync-C792ksoJ.js → review-status-sync-D60PJWNL.js} +1 -1
  232. package/server/{review-status-sync-jnLgd04F.js → review-status-sync-DpAMD_WO.js} +2 -2
  233. package/server/{review-verdict-feedback-CMsIpTpy.js → review-verdict-feedback-CpUZl5aE.js} +7 -7
  234. package/server/{review-verdict-feedback-D5lW0o3k.js → review-verdict-feedback-JImjut0z.js} +1 -1
  235. package/server/{rollup-B3kQmNpl.js → rollup-CZ02qgxk.js} +1 -1
  236. package/server/{rollup-CLj_AK9f.js → rollup-SyuF09e4.js} +8 -8
  237. package/server/{scanner-C4NeC4FE.js → scanner-Br0Z5S6R.js} +7 -7
  238. package/server/{sequence-io-Ce-6grIY.js → sequence-io-fxU0DlwW.js} +4 -4
  239. package/server/{sequencer-agent-Bpz0yGmG.js → sequencer-agent-B5YC5XVP.js} +5 -5
  240. package/server/server.js +583 -387
  241. package/server/{service-CqAY8Kmk.js → service-Bagb90KZ.js} +150 -47
  242. package/server/{session-fork-uNo4rMRA.js → session-fork-BqQxd-V6.js} +2 -2
  243. package/server/{session-history-DUehL3KN.js → session-history-XdS0JKp3.js} +4 -4
  244. package/server/{settings-DP2OYLXL.js → settings-BNbocWOg.js} +3 -3
  245. package/server/settings-BlUsVaUc.js +2 -0
  246. package/server/{settings-D9grjmaP.js → settings-uLc6DEYI.js} +2 -2
  247. package/server/{shadow-engineering-Bi_oIMtF.js → shadow-engineering-D4X_s3fA.js} +3 -3
  248. package/server/{shadow-state-a_ztFBJe.js → shadow-state-C_NkP-sa.js} +2 -2
  249. package/server/{shadow-state-CDxEuPlE.js → shadow-state-CbvsN3qG.js} +1 -1
  250. package/server/{shadow-utils-CyOg6_Xq.js → shadow-utils-CYMRPeRT.js} +2 -2
  251. package/server/{ship-log-DDcueaIR.js → ship-log-__QtAFXG.js} +1 -1
  252. package/server/{smart-compaction--Oj65Uov.js → smart-compaction-CLZOWin1.js} +7 -7
  253. package/server/{smart-compaction-C1_VVLEd.js → smart-compaction-jdMkG1vo.js} +1 -1
  254. package/server/{spawn-planning-session-LFtK2QCE.js → spawn-planning-session-8D6mE033.js} +1 -1
  255. package/server/{spawn-planning-session-AiUSsBnH.js → spawn-planning-session-D5OXo8pT.js} +19 -15
  256. package/server/{specialist-completion-qOgqdqXH.js → specialist-completion-CqmduO92.js} +1 -1
  257. package/server/{specialist-context-gjj8Z4Ii.js → specialist-context-CJ-QjFR-.js} +5 -5
  258. package/server/{specialist-handoff-logger-BsBNvVZv.js → specialist-handoff-logger-Dnjlwt7g.js} +2 -2
  259. package/server/{specialist-logs-CSLtvPx6.js → specialist-logs-CQnKzuZs.js} +3 -3
  260. package/server/{specialists-DAegTvRt.js → specialists-Bg9v4z3F.js} +122 -94
  261. package/server/{specialists-CYRwELzc.js → specialists-CwZHb5cb.js} +18 -18
  262. package/server/{specialists-D0VBf8g_.js → specialists-D0gGXMZx.js} +1 -1
  263. package/server/{specialists-C6WkeKFK.js → specialists-Dqe6_HE5.js} +1 -1
  264. package/server/specs-BhOKBzqk.js +3 -0
  265. package/server/{src-OLoJhUiJ.js → src-BMMoA_ba.js} +6 -6
  266. package/server/{src-BqTcrfO_.js → src-Bqdtd6po.js} +3 -3
  267. package/server/{src-Dpq1yFIl.js → src-k039WVYY.js} +337 -4
  268. package/server/{stack-health-I713ELld.js → stack-health-Bd06frFn.js} +1 -1
  269. package/server/{stack-health-DV_f-lK0.js → stack-health-C-ifC7b0.js} +2 -2
  270. package/server/{stale-task-claims-CQSKZVq0.js → stale-task-claims-L7pJkQFL.js} +4 -4
  271. package/server/{staleness-BbsGxmF2.js → staleness-BID1BKdr.js} +1 -1
  272. package/server/{staleness-zGp4P1hd.js → staleness-_Tr-GwdA.js} +1 -1
  273. package/server/{state-home-DixkE-up.js → state-home-CONQvZR0.js} +36 -23
  274. package/server/state-migrate-BeBW0KXA.js +478 -0
  275. package/server/{stuck-remediation-BWkK_O7A.js → stuck-remediation-CKnIryGT.js} +20 -18
  276. package/server/{stuck-remediation-CTPRC2S5.js → stuck-remediation-CsGD5Ksb.js} +1 -1
  277. package/server/{substrate-bug-weights-service-DXd0ID83.js → substrate-bug-weights-service-CpIZILj9.js} +3 -3
  278. package/server/{summary-fork-CdLn8Chr.js → summary-fork-agEMsPSo.js} +2 -2
  279. package/server/{summary-fork-f3DpgjXh.js → summary-fork-bX6ax6X7.js} +8 -8
  280. package/server/supervisor-COVHrBTg.js +2 -0
  281. package/server/{supervisor-Ch8CDuoF.js → supervisor-Ctt4eRYz.js} +3 -3
  282. package/server/{swarm-readiness-C9P2iPap.js → swarm-readiness-DdmJVX7y.js} +3 -3
  283. package/server/{system-prerequisites-DkoQBn1q.js → system-prerequisites-DSXBvffY.js} +24 -44
  284. package/server/{teardown-workspace-D-5yMyit.js → teardown-workspace-DDCf5n-a.js} +15 -15
  285. package/server/{test-agent-queue-BwpUpu-o.js → test-agent-queue-BJZ9Nfcc.js} +6 -6
  286. package/server/{test-verdict-BRiSu7eW.js → test-verdict-Cp5tljlJ.js} +1 -1
  287. package/server/{test-verdict-BQ1yx7d4.js → test-verdict-D_-sXIz_.js} +1 -1
  288. package/server/{tldr-daemon-BJA7TkqS.js → tldr-daemon-B8_oT5gx.js} +1 -1
  289. package/server/{tldr-daemon-DjxP5g6Y.js → tldr-daemon-BQFmmFp0.js} +2 -2
  290. package/server/{tmux-HQLgwo_C.js → tmux-BAvtac_u.js} +1 -1
  291. package/server/{tmux-y1blSxks.js → tmux-L5LgvGLp.js} +2 -2
  292. package/server/{token-LUrbM9sU.js → token-BkQLy4yS.js} +2 -2
  293. package/server/token-util-BArZLN6w.js +3 -0
  294. package/server/{token-util-BZaDAQ8S.js → token-util-DI8sGlmF.js} +1 -1
  295. package/server/{tracker-config-DSFZBdXP.js → tracker-config-DdT-nUAM.js} +2 -2
  296. package/server/{tracker-utils-DiceZN3a.js → tracker-utils-CawsPSS2.js} +2 -2
  297. package/server/{tracker-utils-WtP_V-yn.js → tracker-utils-DV3h1FYG.js} +1 -1
  298. package/server/{traefik-connect-BXqfOP4-.js → traefik-connect-C6mJckNs.js} +1 -1
  299. package/server/{tunnel-WcJImbAC.js → tunnel-BIFl98rc.js} +1 -1
  300. package/server/{tunnel-DTng1rfQ.js → tunnel-IdK1iTHx.js} +3 -3
  301. package/server/{types-BjaZ1oqH.js → types-7-GnJn0t.js} +1 -1
  302. package/server/{types-DqeBMmJN.js → types-hraoaQIp.js} +1 -1
  303. package/server/{uat-train-Wismge7h.js → uat-train-0Ujk8GCv.js} +1 -1
  304. package/server/{uat-train-BpLnp7Cx.js → uat-train-j0cPeMSj.js} +25 -25
  305. package/server/{validation-BA4e5EGm.js → validation-CabEISJT.js} +4 -4
  306. package/server/{validation-CUWamZ4X.js → validation-DcAgXTQp.js} +1 -1
  307. package/server/{verification-artifact-Dr_0g9nb.js → verification-artifact-BuTA1QbL.js} +1 -1
  308. package/server/{verification-artifact-CrbI4tJE.js → verification-artifact-Ck1tefmz.js} +1 -1
  309. package/server/{verification-runner-Dcksl_P-.js → verification-runner-DlJezzef.js} +1 -1
  310. package/server/{verification-runner-gAzh3cVD.js → verification-runner-FiuAZ-H2.js} +15 -14
  311. package/server/{vtt-parser-3VZKsmSm.js → vtt-parser-BnRsYzcz.js} +1 -1
  312. package/server/{work-agent-prompt-ULdcANl5.js → work-agent-prompt-DLthEPAq.js} +12 -11
  313. package/server/{workflows-B8ROFlfw.js → workflows-BZNNYkGC.js} +18 -18
  314. package/server/workflows-C4mR0Reb.js +2 -0
  315. package/server/{workspace-DSjUJaJN.js → workspace-3IC-UkAi.js} +1 -1
  316. package/server/{workspace-DhTDA8nB.js → workspace-D9ppycdg.js} +3 -3
  317. package/server/{workspace-config-BAAsAv-o.js → workspace-config-Bigl_-Lk.js} +1 -1
  318. package/server/{workspace-manager-CcujONCR.js → workspace-manager-B1WOfKvB.js} +1 -1
  319. package/server/{workspace-manager-DsN52IMG.js → workspace-manager-ClkCIWTe.js} +13 -13
  320. package/server/{workspace-metadata-CftOpNLs.js → workspace-metadata-BE0efUv_.js} +1 -1
  321. package/server/{workspace-metadata-DIL5_U4c.js → workspace-metadata-tiSRIWJP.js} +2 -2
  322. package/server/{workspaces-Dmlh1YXm.js → workspaces-CFPcL0vl.js} +96 -96
  323. package/sync-sources/skills/pan-start/SKILL.md +23 -0
  324. package/server/cli-ChErG518.js +0 -3
  325. package/server/deacon-swarm-uudlSCLM.js +0 -2
  326. package/server/dist-BEDL2alY.js +0 -3
  327. package/server/forge-DbhJyH6u.js +0 -2
  328. package/server/git-utils-Bkxzr1Xf.js +0 -129
  329. package/server/hume-BrA1tUuk.js +0 -3
  330. package/server/inspect-agent-CyXNo9fM.js +0 -2
  331. package/server/merge-ops-BpTtuO8x.js +0 -2
  332. package/server/projects-IRHJIPYC.js +0 -3
  333. package/server/providers-BqCdTryq.js +0 -3
  334. package/server/public/assets/mermaid-GHXKKRXX-BNwFoQsf.js +0 -1
  335. package/server/rally-DGimSRBQ.js +0 -3
  336. package/server/reap-terminal-sessions-C1mfzoZo.js +0 -3
  337. package/server/record-us0YECMO.js +0 -3
  338. package/server/resume-OyN3dEXE.js +0 -3
  339. package/server/settings-BaPXXJsT.js +0 -2
  340. package/server/specs-BsNcum0h.js +0 -3
  341. package/server/state-migrate-_zJJ6XKE.js +0 -362
  342. package/server/supervisor-Qy1QecAs.js +0 -2
  343. package/server/token-util-Cg-QnowA.js +0 -3
  344. package/server/workflows-C5c-RPsY.js +0 -2
@@ -1,129 +0,0 @@
1
- import { n as __esmMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { Or as init_errors, vr as FsError, yr as GitError } from "./config-yaml-Ciyp2mYe.js";
3
- import { Effect } from "effect";
4
- import { existsSync, readdirSync, unlinkSync } from "fs";
5
- import { join } from "path";
6
- import { exec } from "child_process";
7
- import { promisify } from "util";
8
- //#region ../../lib/git-utils.ts
9
- /**
10
- * Git utilities for handling common git operations and recovery
11
- */
12
- /**
13
- * Check if any git processes are currently running in a specific repository
14
- *
15
- * This checks if there are git processes with the repository path in their command line.
16
- * If we can't determine repository-specific processes, we conservatively return false
17
- * (no processes detected) to allow cleanup to proceed.
18
- */
19
- async function hasRunningGitProcesses(repoPath) {
20
- try {
21
- try {
22
- const { stdout } = await execAsync(`fuser "${join(repoPath, ".git")}" 2>/dev/null`, { encoding: "utf-8" });
23
- return stdout.trim().length > 0;
24
- } catch {
25
- try {
26
- const { stdout } = await execAsync(`ps aux | grep -E "git.*${repoPath.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}" | grep -v grep`, { encoding: "utf-8" });
27
- return stdout.trim().length > 0;
28
- } catch {
29
- return false;
30
- }
31
- }
32
- } catch {
33
- return false;
34
- }
35
- }
36
- /**
37
- * Find all git lock files in a repository
38
- */
39
- function findGitLockFiles(repoPath) {
40
- const lockFiles = [];
41
- const indexLock = join(repoPath, ".git", "index.lock");
42
- if (existsSync(indexLock)) lockFiles.push(indexLock);
43
- const refsDir = join(repoPath, ".git", "refs");
44
- if (existsSync(refsDir)) {
45
- const findLocksRecursive = (dir) => {
46
- const entries = readdirSync(dir, { withFileTypes: true });
47
- for (const entry of entries) {
48
- const fullPath = join(dir, entry.name);
49
- if (entry.isDirectory()) findLocksRecursive(fullPath);
50
- else if (entry.name.endsWith(".lock")) lockFiles.push(fullPath);
51
- }
52
- };
53
- try {
54
- findLocksRecursive(refsDir);
55
- } catch {}
56
- }
57
- return lockFiles;
58
- }
59
- async function cleanupStaleLocksPromise(repoPath) {
60
- const result = {
61
- found: [],
62
- removed: [],
63
- errors: []
64
- };
65
- const lockFiles = findGitLockFiles(repoPath);
66
- result.found = lockFiles;
67
- if (lockFiles.length === 0) return result;
68
- if (await hasRunningGitProcesses(repoPath)) {
69
- result.errors.push({
70
- file: "N/A",
71
- error: "Git processes are running - not safe to remove locks"
72
- });
73
- return result;
74
- }
75
- for (const lockFile of lockFiles) try {
76
- unlinkSync(lockFile);
77
- result.removed.push(lockFile);
78
- } catch (error) {
79
- const msg = error instanceof Error ? error.message : String(error);
80
- result.errors.push({
81
- file: lockFile,
82
- error: msg
83
- });
84
- }
85
- return result;
86
- }
87
- async function getWorkspaceGitInfoPromise(workspacePath) {
88
- try {
89
- const [headResult, branchResult] = await Promise.all([execAsync("git rev-parse HEAD", { cwd: workspacePath }), execAsync("git rev-parse --abbrev-ref HEAD", { cwd: workspacePath })]);
90
- return {
91
- HEAD: headResult.stdout.trim(),
92
- branch: branchResult.stdout.trim()
93
- };
94
- } catch (err) {
95
- const msg = err instanceof Error ? err.message : String(err);
96
- throw new Error(`getWorkspaceGitInfo failed for ${workspacePath}: ${msg}`);
97
- }
98
- }
99
- async function hasStaleLocksPromise(repoPath) {
100
- if (findGitLockFiles(repoPath).length === 0) return false;
101
- return !await hasRunningGitProcesses(repoPath);
102
- }
103
- var execAsync, cleanupStaleLocks, getWorkspaceGitInfo, hasStaleLocks;
104
- var init_git_utils = __esmMin((() => {
105
- init_errors();
106
- execAsync = promisify(exec);
107
- cleanupStaleLocks = (repoPath) => Effect.tryPromise({
108
- try: () => cleanupStaleLocksPromise(repoPath),
109
- catch: (cause) => new FsError({
110
- path: repoPath,
111
- operation: "cleanupStaleLocks",
112
- cause
113
- })
114
- });
115
- getWorkspaceGitInfo = (workspacePath) => Effect.tryPromise({
116
- try: () => getWorkspaceGitInfoPromise(workspacePath),
117
- catch: (cause) => new GitError({
118
- command: ["rev-parse", "HEAD"],
119
- stderr: cause instanceof Error ? cause.message : String(cause),
120
- exitCode: -1,
121
- cause
122
- })
123
- });
124
- hasStaleLocks = (repoPath) => Effect.promise(() => hasStaleLocksPromise(repoPath));
125
- }));
126
- //#endregion
127
- export { init_git_utils as i, getWorkspaceGitInfo as n, hasStaleLocks as r, cleanupStaleLocks as t };
128
-
129
- //# sourceMappingURL=git-utils-Bkxzr1Xf.js.map
@@ -1,3 +0,0 @@
1
- import { i as init_hume, r as deleteHumeConfig } from "./hume-DSJt5eA_.js";
2
- init_hume();
3
- export { deleteHumeConfig };
@@ -1,2 +0,0 @@
1
- import { n as onInspectComplete } from "./inspect-agent-DKByUS_F.js";
2
- export { onInspectComplete };
@@ -1,2 +0,0 @@
1
- import { c as triggerMerge } from "./workspaces-Dmlh1YXm.js";
2
- export { triggerMerge };
@@ -1,3 +0,0 @@
1
- import { $n as resolveProjectFromIssueSync, An as getIssuePrefix, Bn as initializeProjectsConfig, Cn as createDefaultProjectsConfig, Dn as findProjectByTeam, En as findProjectByPathSync, Fn as getSpecialistPromptOverride, Gn as loadProjectsConfigSync, Hn as listProjects, In as getSpecialistRetention, Jn as registerProjectSync, Ln as hasProjects, Mn as getProjectSwarmHotspots, Nn as getProjectSync, On as findProjectByTeamSync, Pn as getSpecialistConfig, Qn as resolveProjectFromIssue, Rn as hasProjectsSync, Sn as ProjectRenameError, Tn as findProjectByPath, Un as listProjectsSync, Vn as initializeProjectsConfigSync, Wn as loadProjectsConfig, Xn as renameProjectSync, Yn as renameProject, Zn as resolveInfraRepo, ar as unregisterProject, er as resolveProjectPath, ir as setProjectSwarmPolicySync, jn as getProject, kn as findProjectsByRallyProject, nr as saveProjectsConfigSync, or as unregisterProjectSync, qn as registerProject, rr as setProjectAutoMergeDefaultSync, tr as saveProjectsConfig, wn as extractTeamPrefix, xn as PROJECTS_CONFIG_FILE, zn as init_projects } from "./config-yaml-Ciyp2mYe.js";
2
- init_projects();
3
- export { PROJECTS_CONFIG_FILE, ProjectRenameError, createDefaultProjectsConfig, extractTeamPrefix, findProjectByPath, findProjectByPathSync, findProjectByTeam, findProjectByTeamSync, findProjectsByRallyProject, getIssuePrefix, getProject, getProjectSwarmHotspots, getProjectSync, getSpecialistConfig, getSpecialistPromptOverride, getSpecialistRetention, hasProjects, hasProjectsSync, initializeProjectsConfig, initializeProjectsConfigSync, listProjects, listProjectsSync, loadProjectsConfig, loadProjectsConfigSync, registerProject, registerProjectSync, renameProject, renameProjectSync, resolveInfraRepo, resolveProjectFromIssue, resolveProjectFromIssueSync, resolveProjectPath, saveProjectsConfig, saveProjectsConfigSync, setProjectAutoMergeDefaultSync, setProjectSwarmPolicySync, unregisterProject, unregisterProjectSync };
@@ -1,3 +0,0 @@
1
- import { B as init_providers, R as getProviderEnvSync, z as getProviderForModelSync } from "./config-yaml-Ciyp2mYe.js";
2
- init_providers();
3
- export { getProviderEnvSync, getProviderForModelSync };
@@ -1 +0,0 @@
1
- import{C as e}from"./chunk-BO2N2NFS-BxYSL7J-.js";export{e as Mermaid};
@@ -1,3 +0,0 @@
1
- import { n as init_rally, t as RallyTracker } from "./rally-Dp0Gb1DN.js";
2
- init_rally();
3
- export { RallyTracker };
@@ -1,3 +0,0 @@
1
- import { a as selectAwaitingTestWorkSessions, c as selectNonMergedTerminalAdvancingSessions, r as isRoleTerminal, s as selectMergedWorkSessions, t as init_reap_terminal_sessions } from "./reap-terminal-sessions-CjqRAGw7.js";
2
- init_reap_terminal_sessions();
3
- export { isRoleTerminal, selectAwaitingTestWorkSessions, selectMergedWorkSessions, selectNonMergedTerminalAdvancingSessions };
@@ -1,3 +0,0 @@
1
- import { $t as writeStatusOverride, At as init_record, Bt as writeCloseOutDodGate, Ct as ensureIssueRecord, Dt as getIssueRecordPathForWorkspace, Et as getIssueRecordPath, Ft as readIssueRecordSync, Gt as writeRecordDecisionsSync, Ht as writeIssueRecordForWorkspaceSync, It as readRecordContinueViewSync, Jt as writeRecordResumePoint, Kt as writeRecordHazards, Lt as resolveProjectForIssue, Mt as queueIssueRecordCommit, Nt as readIssueRecord, Ot as getIssueWorkspacePath, Pt as readIssueRecordForWorkspaceSync, Qt as writeRecordTieredExecutionOverrideSync, Rt as writeAgentHarnessModel, St as clearRecordFeedbackSync, Tt as getIssueRecordBasePath, Ut as writeIssueRecordSync, Vt as writeCloseOutDodGateSync, Wt as writeRecordDecisions, Xt as writeRecordScopeDriftSync, Yt as writeRecordResumePointSync, Zt as writeRecordTieredExecutionOverride, _t as appendSessionEntry, bt as claimIssueOwner, en as writeStatusOverrideSync, gt as appendFeedbackEntrySync, ht as appendFeedbackEntry, jt as markRecordPipelineClosedOutSync, kt as getProjectConfigFromWorkspacePath, mt as RECORD_SCHEMA_VERSION, pt as RECORD_DIRNAME, qt as writeRecordHazardsSync, tn as writeStatusOverridesSync, vt as appendSessionEntrySync, wt as ensureIssueRecordSync, xt as clearIssueOwner, yt as buildOwnUri, zt as writeAgentHarnessModelSync } from "./config-yaml-Ciyp2mYe.js";
2
- init_record();
3
- export { RECORD_DIRNAME, RECORD_SCHEMA_VERSION, appendFeedbackEntry, appendFeedbackEntrySync, appendSessionEntry, appendSessionEntrySync, buildOwnUri, claimIssueOwner, clearIssueOwner, clearRecordFeedbackSync, ensureIssueRecord, ensureIssueRecordSync, getIssueRecordBasePath, getIssueRecordPath, getIssueRecordPathForWorkspace, getIssueWorkspacePath, getProjectConfigFromWorkspacePath, markRecordPipelineClosedOutSync, queueIssueRecordCommit, readIssueRecord, readIssueRecordForWorkspaceSync, readIssueRecordSync, readRecordContinueViewSync, resolveProjectForIssue, writeAgentHarnessModel, writeAgentHarnessModelSync, writeCloseOutDodGate, writeCloseOutDodGateSync, writeIssueRecordForWorkspaceSync, writeIssueRecordSync, writeRecordDecisions, writeRecordDecisionsSync, writeRecordHazards, writeRecordHazardsSync, writeRecordResumePoint, writeRecordResumePointSync, writeRecordScopeDriftSync, writeRecordTieredExecutionOverride, writeRecordTieredExecutionOverrideSync, writeStatusOverride, writeStatusOverrideSync, writeStatusOverridesSync };
@@ -1,3 +0,0 @@
1
- import { M as resumeAgent, j as init_resume } from "./queries-B5hl7lMQ.js";
2
- init_resume();
3
- export { resumeAgent };
@@ -1,2 +0,0 @@
1
- import { t as getAgentCommandSync } from "./settings-D9grjmaP.js";
2
- export { getAgentCommandSync };
@@ -1,3 +0,0 @@
1
- import { C as init_specs, x as findSpecByIssue } from "./io-BiM-7Zsx.js";
2
- init_specs();
3
- export { findSpecByIssue };
@@ -1,362 +0,0 @@
1
- import { Nn as getProjectSync, Zn as resolveInfraRepo, an as init_auto_commit, cn as STATE_BRANCH_PATHS, dn as init_state_plane, hn as init_state_migration_lock, in as flushAutoCommits, mn as acquireStateMigrationLock, zn as init_projects } from "./config-yaml-Ciyp2mYe.js";
2
- import { l as stateWorktreePath, n as STATE_BRANCH, o as init_state_home, r as clearStateMigrationCache, t as MIGRATION_COMPLETE_MARKER } from "./state-home-DixkE-up.js";
3
- import { dirname, join } from "node:path";
4
- import { Effect } from "effect";
5
- import { tmpdir } from "node:os";
6
- import { copyFileSync, cpSync, existsSync, lstatSync, mkdirSync, readFileSync, readdirSync, renameSync, rmSync, writeFileSync } from "node:fs";
7
- import { execFile } from "node:child_process";
8
- import { promisify } from "node:util";
9
- import { createHash } from "node:crypto";
10
- //#region ../../lib/state-migration-manifest.ts
11
- init_projects();
12
- init_state_migration_lock();
13
- init_state_plane();
14
- init_auto_commit();
15
- init_state_home();
16
- function manifestEntry(source, destination) {
17
- const stat = lstatSync(source);
18
- const bytes = readFileSync(source);
19
- return {
20
- source,
21
- destination,
22
- mode: stat.mode & 511,
23
- size: stat.size,
24
- sha256: createHash("sha256").update(bytes).digest("hex")
25
- };
26
- }
27
- function verifyStateMigrationManifest(entries) {
28
- for (const expected of entries) {
29
- const actual = manifestEntry(expected.destination, expected.destination);
30
- if ((actual.mode & 64) !== (expected.mode & 64) || actual.size !== expected.size || actual.sha256 !== expected.sha256) throw new Error(`State migration no-loss mismatch: ${expected.source} -> ${expected.destination}`);
31
- }
32
- }
33
- //#endregion
34
- //#region ../../cli/commands/admin/state-migrate.ts
35
- const execFileAsync = promisify(execFile);
36
- async function git(cwd, args, env) {
37
- const { stdout } = await execFileAsync("git", args, {
38
- cwd,
39
- env: {
40
- ...process.env,
41
- ...env
42
- },
43
- encoding: "utf8",
44
- maxBuffer: 32 * 1024 * 1024
45
- });
46
- return stdout.trim();
47
- }
48
- function destinationForTracked(path) {
49
- if (!path.startsWith(".pan/")) return null;
50
- const flat = path.slice(5);
51
- return STATE_BRANCH_PATHS.some((prefix) => flat.startsWith(prefix)) ? flat : null;
52
- }
53
- async function trackedManifest(repo, sourceSha, stateRoot) {
54
- return (await git(repo, [
55
- "ls-tree",
56
- "-r",
57
- "--name-only",
58
- sourceSha,
59
- "--",
60
- ".pan"
61
- ])).split("\n").filter(Boolean).flatMap((path) => {
62
- const destination = destinationForTracked(path);
63
- if (!destination) return [];
64
- const source = join(repo, path);
65
- const target = join(stateRoot, destination);
66
- if (!existsSync(target)) {
67
- mkdirSync(dirname(target), { recursive: true });
68
- copyFileSync(source, target);
69
- }
70
- return [manifestEntry(source, target)];
71
- });
72
- }
73
- async function createOrphanStateCommit(repo, sourceSha) {
74
- const index = join(tmpdir(), `overdeck-state-index-${process.pid}-${Date.now()}`);
75
- const env = { GIT_INDEX_FILE: index };
76
- try {
77
- await git(repo, ["read-tree", "--empty"], env);
78
- const rows = (await git(repo, [
79
- "ls-tree",
80
- "-r",
81
- sourceSha,
82
- "--",
83
- ".pan"
84
- ])).split("\n").filter(Boolean);
85
- for (const row of rows) {
86
- const match = row.match(/^(\d+)\s+\w+\s+([0-9a-f]+)\t(.+)$/);
87
- if (!match) continue;
88
- const destination = destinationForTracked(match[3]);
89
- if (destination) await git(repo, [
90
- "update-index",
91
- "--add",
92
- "--cacheinfo",
93
- `${match[1]},${match[2]},${destination}`
94
- ], env);
95
- }
96
- return await git(repo, [
97
- "commit-tree",
98
- await git(repo, ["write-tree"], env),
99
- "-m",
100
- "chore(state): seed overdeck-state"
101
- ]);
102
- } finally {
103
- rmSync(index, { force: true });
104
- }
105
- }
106
- function copyLegacyState(sourceRoot, stateRoot) {
107
- const manifest = [];
108
- for (const sourcePath of STATE_BRANCH_PATHS) {
109
- const source = join(sourceRoot, ".pan", sourcePath);
110
- if (!existsSync(source)) continue;
111
- const destination = join(stateRoot, sourcePath);
112
- cpSync(source, destination, {
113
- recursive: true,
114
- preserveTimestamps: true
115
- });
116
- const visit = (sourceDir, destinationDir) => {
117
- for (const entry of readdirSync(sourceDir, { withFileTypes: true })) {
118
- const sourceEntry = join(sourceDir, entry.name);
119
- const destinationEntry = join(destinationDir, entry.name);
120
- if (entry.isDirectory()) visit(sourceEntry, destinationEntry);
121
- else if (entry.isFile()) manifest.push(manifestEntry(sourceEntry, destinationEntry));
122
- }
123
- };
124
- visit(source, destination);
125
- }
126
- return manifest;
127
- }
128
- function hasNonStateDirtyState(porcelain) {
129
- return porcelain.split("\n").filter(Boolean).some((line) => {
130
- const path = line.slice(3).split(" -> ").at(-1) ?? "";
131
- if (path === ".pan" || path.startsWith(".pan/")) return false;
132
- return true;
133
- });
134
- }
135
- function dedupeManifest(entries) {
136
- return [...new Map(entries.map((entry) => [entry.destination, entry])).values()];
137
- }
138
- const GITIGNORE_MANAGED_LINES = [
139
- "# PAN-2541: permanent state is on overdeck-state; workspace runtime stays local.",
140
- ".pan/",
141
- ".overdeck/continue.json",
142
- ".overdeck/spec.vbrief.json",
143
- ".overdeck/sessions.jsonl",
144
- ".overdeck/feedback/",
145
- ".overdeck/review/",
146
- ".overdeck/test/",
147
- ".overdeck/kickoff.md",
148
- ".overdeck/agent-mcp.json"
149
- ];
150
- function rewriteGitignore(repo) {
151
- const path = join(repo, ".gitignore");
152
- const prior = existsSync(path) ? readFileSync(path, "utf8") : "";
153
- const managed = new Set([...GITIGNORE_MANAGED_LINES, ".overdeck/"]);
154
- const kept = prior.split("\n").filter((line) => !managed.has(line.trim()));
155
- while (kept.length > 0 && kept[kept.length - 1]?.trim() === "") kept.pop();
156
- writeFileSync(path, [
157
- ...kept,
158
- "",
159
- ...GITIGNORE_MANAGED_LINES,
160
- ""
161
- ].join("\n"));
162
- }
163
- async function migrateProjectState(projectKey, options = {}, projectOverride) {
164
- const project = projectOverride ?? getProjectSync(projectKey);
165
- if (!project) throw new Error(`Unknown project: ${projectKey}`);
166
- const { repoPath: repo } = resolveInfraRepo(project);
167
- const legacyStateSource = project.path;
168
- const sourceIsHostRepo = legacyStateSource === repo;
169
- const stateRoot = stateWorktreePath(project, { projectKey });
170
- console.log(`PAN-2541 state migration plan for ${projectKey}:`);
171
- console.log(` ${legacyStateSource}/.pan/{${STATE_BRANCH_PATHS.map((p) => p.slice(0, -1)).join(",")}} -> ${stateRoot}/`);
172
- console.log(` ${legacyStateSource}/.pan/context -> ${legacyStateSource}/.overdeck/context`);
173
- if (options.dryRun) return;
174
- const release = acquireStateMigrationLock(projectKey);
175
- try {
176
- await Effect.runPromise(flushAutoCommits(repo));
177
- if (hasNonStateDirtyState(await git(repo, ["status", "--porcelain"]))) throw new Error("Primary checkout is dirty outside legacy state paths; migration refused before mutation");
178
- await git(repo, [
179
- "fetch",
180
- "--prune",
181
- "origin"
182
- ]);
183
- const sourceMainSha = await git(repo, ["rev-parse", "main"]);
184
- if (sourceMainSha !== await git(repo, ["rev-parse", "origin/main"])) throw new Error("main is not exactly at origin/main; migration refused");
185
- if (await git(repo, ["show", `origin/overdeck-state:migration-complete.json`]).catch(() => "")) {
186
- console.log("State migration already complete on origin; nothing to do.");
187
- return;
188
- }
189
- let stateSha = await git(repo, ["rev-parse", STATE_BRANCH]).catch(() => "");
190
- const remoteStateSha = await git(repo, ["rev-parse", `origin/${STATE_BRANCH}`]).catch(() => "");
191
- if (stateSha && remoteStateSha && stateSha !== remoteStateSha) throw new Error("Local and remote overdeck-state diverged; refusing non-fast-forward migration");
192
- if (!stateSha) {
193
- stateSha = remoteStateSha || await createOrphanStateCommit(repo, sourceMainSha);
194
- await git(repo, [
195
- "update-ref",
196
- `refs/heads/${STATE_BRANCH}`,
197
- stateSha
198
- ]);
199
- }
200
- if (!remoteStateSha) await git(repo, [
201
- "push",
202
- "origin",
203
- STATE_BRANCH
204
- ]);
205
- if (!existsSync(stateRoot)) {
206
- mkdirSync(dirname(stateRoot), { recursive: true });
207
- await git(repo, [
208
- "worktree",
209
- "add",
210
- stateRoot,
211
- STATE_BRANCH
212
- ]);
213
- }
214
- const manifest = sourceIsHostRepo ? dedupeManifest([...await trackedManifest(repo, sourceMainSha, stateRoot), ...copyLegacyState(legacyStateSource, stateRoot)]) : copyLegacyState(legacyStateSource, stateRoot);
215
- if (manifest.length > 0) {
216
- await git(stateRoot, ["add", "--all"]);
217
- if (await git(stateRoot, [
218
- "diff",
219
- "--cached",
220
- "--name-only"
221
- ])) await git(stateRoot, [
222
- "commit",
223
- "-m",
224
- "chore(state): seed legacy project state"
225
- ]);
226
- await git(stateRoot, [
227
- "push",
228
- "origin",
229
- STATE_BRANCH
230
- ]);
231
- }
232
- const untracked = sourceIsHostRepo ? (await git(repo, [
233
- "ls-files",
234
- "--others",
235
- "--",
236
- ".pan"
237
- ])).split("\n").filter((path) => path.split("/").length === 2 && existsSync(join(repo, path)) && lstatSync(join(repo, path)).isFile()) : existsSync(join(legacyStateSource, ".pan")) ? readdirSync(join(legacyStateSource, ".pan"), { withFileTypes: true }).filter((entry) => entry.isFile()).map((entry) => `.pan/${entry.name}`) : [];
238
- for (const path of untracked) {
239
- if (!existsSync(join(legacyStateSource, path))) continue;
240
- const destination = join(stateRoot, "notes", path.slice(5));
241
- if (existsSync(destination)) {
242
- if (!readFileSync(join(legacyStateSource, path)).equals(readFileSync(destination))) throw new Error(`Untracked-note destination collision: ${destination}`);
243
- manifest.push(manifestEntry(join(legacyStateSource, path), destination));
244
- continue;
245
- }
246
- mkdirSync(dirname(destination), { recursive: true });
247
- copyFileSync(join(legacyStateSource, path), destination);
248
- manifest.push(manifestEntry(join(legacyStateSource, path), destination));
249
- }
250
- if (untracked.length > 0) {
251
- await git(stateRoot, ["add", "notes"]);
252
- if (await git(stateRoot, [
253
- "diff",
254
- "--cached",
255
- "--name-only"
256
- ])) await git(stateRoot, [
257
- "commit",
258
- "-m",
259
- "chore(state): preserve untracked operator notes"
260
- ]);
261
- await git(stateRoot, [
262
- "push",
263
- "origin",
264
- STATE_BRANCH
265
- ]);
266
- }
267
- if (await git(repo, ["rev-parse", "main"]) !== sourceMainSha) throw new Error("main advanced during migration; refusing cleanup");
268
- if (sourceIsHostRepo) await git(repo, [
269
- "rm",
270
- "-r",
271
- "--cached",
272
- "--ignore-unmatch",
273
- ".pan/records",
274
- ".pan/continues",
275
- ".pan/specs",
276
- ".pan/drafts",
277
- ".pan/review",
278
- ".pan/test",
279
- ".pan/feedback",
280
- ".pan/backlog",
281
- ".pan/notes"
282
- ]);
283
- const oldContext = join(legacyStateSource, ".pan", "context");
284
- const newContext = join(legacyStateSource, ".overdeck", "context");
285
- let movedContext = false;
286
- if (existsSync(oldContext) && !existsSync(newContext)) {
287
- mkdirSync(dirname(newContext), { recursive: true });
288
- renameSync(oldContext, newContext);
289
- movedContext = true;
290
- }
291
- rewriteGitignore(legacyStateSource);
292
- if (sourceIsHostRepo) {
293
- if (await git(repo, [
294
- "ls-files",
295
- "--",
296
- ".pan/context"
297
- ])) await git(repo, [
298
- "add",
299
- "-u",
300
- "--",
301
- ".pan/context"
302
- ]);
303
- const addPaths = [".gitignore"];
304
- if (movedContext || existsSync(newContext)) addPaths.push(".overdeck/context");
305
- await git(repo, [
306
- "add",
307
- "--",
308
- ...addPaths
309
- ]);
310
- if (await git(repo, [
311
- "diff",
312
- "--cached",
313
- "--name-only"
314
- ])) await git(repo, [
315
- "commit",
316
- "-m",
317
- "chore(state): move permanent state to overdeck-state"
318
- ]);
319
- }
320
- verifyStateMigrationManifest(manifest);
321
- for (const entry of manifest) rmSync(entry.source, { force: true });
322
- if (!sourceIsHostRepo) rmSync(join(legacyStateSource, ".pan"), {
323
- recursive: true,
324
- force: true
325
- });
326
- stateSha = await git(stateRoot, ["rev-parse", "HEAD"]);
327
- writeFileSync(join(stateRoot, MIGRATION_COMPLETE_MARKER), `${JSON.stringify({
328
- sourceMainSha,
329
- stateBranchSha: stateSha,
330
- completedAt: (/* @__PURE__ */ new Date()).toISOString(),
331
- version: 1
332
- }, null, 2)}\n`);
333
- await git(stateRoot, ["add", MIGRATION_COMPLETE_MARKER]);
334
- await git(stateRoot, [
335
- "commit",
336
- "-m",
337
- "chore(state): complete state migration"
338
- ]);
339
- await git(repo, [
340
- "push",
341
- "--atomic",
342
- "--dry-run",
343
- "origin",
344
- "main",
345
- STATE_BRANCH
346
- ]);
347
- await git(repo, [
348
- "push",
349
- "--atomic",
350
- "origin",
351
- "main",
352
- STATE_BRANCH
353
- ]);
354
- clearStateMigrationCache();
355
- } finally {
356
- release();
357
- }
358
- }
359
- //#endregion
360
- export { migrateProjectState };
361
-
362
- //# sourceMappingURL=state-migrate-_zJJ6XKE.js.map
@@ -1,2 +0,0 @@
1
- import { n as getSupervisorUrlSync } from "./supervisor-Ch8CDuoF.js";
2
- export { getSupervisorUrlSync };
@@ -1,3 +0,0 @@
1
- import { t as require_token_util } from "./token-util-BZaDAQ8S.js";
2
- export default require_token_util();
3
- export {};
@@ -1,2 +0,0 @@
1
- import { a as deepWipe, i as closeOut } from "./workflows-B8ROFlfw.js";
2
- export { closeOut, deepWipe };