@overdeck/desktop 0.45.11 → 0.45.12

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 (602) hide show
  1. package/drizzle/overdeck/0000_overdeck_init.sql +6 -0
  2. package/package.json +1 -1
  3. package/server/{acceptance-criteria-l0DSvFFS.js → acceptance-criteria-1LHgD9vg.js} +2 -2
  4. package/server/{advancing-selfheal-BezNfM3P.js → advancing-selfheal-BqsLWqEM.js} +4 -4
  5. package/server/{agent-gc-BtAzj8QN.js → agent-gc-CUb52n7s.js} +3 -3
  6. package/server/{agent-state-BUANcaA7.js → agent-state-D-moNwhA.js} +1 -1
  7. package/server/{agent-state-service-DmFpIMbP.js → agent-state-service-BaZH7sXJ.js} +1 -1
  8. package/server/{agent-state-service-tXUdp6UF.js → agent-state-service-BzESvLOf.js} +4 -4
  9. package/server/{agents-C7V4odQ6.js → agents-B5LfpLPv.js} +256 -185
  10. package/server/{agents-C-vqmKDi.js → agents-C4kZ8a2r.js} +1 -1
  11. package/server/{archive-planning-B4Qi02bk.js → archive-planning-BbZe-8IK.js} +1 -1
  12. package/server/{archive-planning-zTvWWHG_.js → archive-planning-oX1pj6nY.js} +3 -3
  13. package/server/{artifact-index-jobs-BrByqVkB.js → artifact-index-jobs-DGr6bxev.js} +3 -3
  14. package/server/{auto-commit-DoIPFoEs.js → auto-commit-CGQlb4rV.js} +1 -1
  15. package/server/{backlog-auto-trigger-Cb8PR-5w.js → backlog-auto-trigger-BlJHikOm.js} +2 -2
  16. package/server/{bd-process-lock-CJkoG7hW.js → bd-process-lock-i3CYMS-B.js} +3 -3
  17. package/server/{beads-AmCXEv_E.js → beads-BNU-fb48.js} +1 -1
  18. package/server/{beads-DlZm-vrG.js → beads-DD7fYCl5.js} +4 -4
  19. package/server/{beads-query-BrVNWoSL.js → beads-query-e6oku4P5.js} +2 -2
  20. package/server/{behavior-By-2Wipv.js → behavior-CPf0pbOt.js} +2 -2
  21. package/server/{briefing-freshness-CXhZdnB8.js → briefing-freshness-B2FdLwIv.js} +27 -15
  22. package/server/{checkpoint-manager-CfNpHOp4.js → checkpoint-manager-JryW6MpM.js} +2 -2
  23. package/server/{checkpoint-manager-CPw51H2n.js → checkpoint-manager-eFgaMMu4.js} +1 -1
  24. package/server/checkpoint-worker.js +1 -1
  25. package/server/{checkpoints-BjlBWOA8.js → checkpoints-BK17oicz.js} +1 -1
  26. package/server/{checkpoints-BbfH1EIy.js → checkpoints-qvOqvMuC.js} +2 -2
  27. package/server/{claude-permissions-DrRAs_0F.js → claude-permissions-B6bWGh9d.js} +3 -3
  28. package/server/{claude-settings-overlay-CEWlIFL-.js → claude-settings-overlay-BPdhTPjo.js} +1 -1
  29. package/server/{claude-settings-overlay-BSeS7Ki3.js → claude-settings-overlay-CRyyKKXQ.js} +2 -2
  30. package/server/{cli-BgzbB6h3.js → cli-B75AieAM.js} +9 -9
  31. package/server/cli-Ch_BWJB2.js +3 -0
  32. package/server/{cliproxy-J-_1iIXe.js → cliproxy-CCzwuSNe.js} +2 -2
  33. package/server/{cliproxy-BOcmOK6l.js → cliproxy-DOQf66G9.js} +1 -1
  34. package/server/{close-issue-BWf3pxn4.js → close-issue-_X3MXJyG.js} +4 -4
  35. package/server/{closed-issue-reaper-D7XPq5pY.js → closed-issue-reaper-BsUfBSjM.js} +13 -13
  36. package/server/{closed-issue-reaper-VSTSTROK.js → closed-issue-reaper-CLR7ClsO.js} +1 -1
  37. package/server/{codex-DcInrhok.js → codex-B4KEpX5V.js} +5 -5
  38. package/server/{codex-BUZjrnqH.js → codex-CY-QRuU9.js} +1 -1
  39. package/server/{compact-beads-omhUgj5b.js → compact-beads-cZds2MTr.js} +1 -1
  40. package/server/{compact-beads-RFwdZFPA.js → compact-beads-uEDccC76.js} +3 -3
  41. package/server/{config-oWoKf5jO.js → config-8sjaU6jZ.js} +2 -2
  42. package/server/{config-CzcWQ24p.js → config-DARrpYWA.js} +1 -1
  43. package/server/{config-yaml-DPAieL_G.js → config-yaml-ClpGgrf6.js} +100 -99
  44. package/server/{conflict-gate-FFEvTDVA.js → conflict-gate-BtB_o-Vi.js} +3 -3
  45. package/server/{conflict-gate-DwOslTij.js → conflict-gate-Ds9_2yjd.js} +1 -1
  46. package/server/{context-layers-DxKsseHI.js → context-layers-CRCk1QG7.js} +2 -2
  47. package/server/{context-layers-CTjQwcEQ.js → context-layers-r2ywnQYA.js} +3 -3
  48. package/server/{control-settings-BMqUkXmR.js → control-settings-D1B3u6HP.js} +4 -4
  49. package/server/{conversation-compaction-CL5Ti4j4.js → conversation-compaction-CZRVk4hg.js} +1 -1
  50. package/server/{conversation-compaction-CCqN4hWk.js → conversation-compaction-D86Zo2Ci.js} +9 -9
  51. package/server/{conversation-service-WKl-sw58.js → conversation-service-CkL-6MuG.js} +1 -1
  52. package/server/{conversation-service-DvG8vZSV.js → conversation-service-CuTVU8dV.js} +5 -5
  53. package/server/{conversations-Dcx6LeIh.js → conversations-BmWEluPL.js} +1 -1
  54. package/server/{conversations-DL_BAWVk.js → conversations-DfJKBDwB.js} +5 -5
  55. package/server/{cost-C2CuA66z.js → cost-CCnqa5xK.js} +2 -2
  56. package/server/{cost-DaOG8sUB.js → cost-DAPYN6iA.js} +3 -3
  57. package/server/{cost-sync-8lkDeL9g.js → cost-sync-BDL10Nwu.js} +3 -3
  58. package/server/{dag-jH8ZkewR.js → dag-Dv2r5bVD.js} +3 -3
  59. package/server/dashboard-db-worker.js +6 -6
  60. package/server/{deacon-CGHl90eC.js → deacon-CM0MxbS8.js} +179 -179
  61. package/server/{deacon-DMPh40Im.js → deacon-DYnZH7kC.js} +3 -3
  62. package/server/{deacon-nudge-log-CJGA6aSQ.js → deacon-nudge-log-B-naf89q.js} +2 -2
  63. package/server/{deacon-swarm-aMMJTq6t.js → deacon-swarm-BstYoz8Q.js} +17 -17
  64. package/server/deacon-swarm-CSWGRfzr.js +2 -0
  65. package/server/deacon.js +7 -7
  66. package/server/{devcontainer-renderer-DUJYYRQB.js → devcontainer-renderer-CaYOG9JN.js} +2 -2
  67. package/server/{docker-Q4bphryk.js → docker-DDI1shu3.js} +2 -2
  68. package/server/{ensure-devcontainer-BCB6fHp9.js → ensure-devcontainer-CbSXvN9W.js} +1 -1
  69. package/server/{ensure-devcontainer-XLL0vtgV.js → ensure-devcontainer-DCAg3ksz.js} +3 -3
  70. package/server/{event-store-DTJXZjCl.js → event-store-DCMqyI07.js} +3 -3
  71. package/server/{event-store-DIk9wvnS.js → event-store-DU3HkZlN.js} +1 -1
  72. package/server/{events-DGWZzye2.js → events-BfiosVAn.js} +3 -3
  73. package/server/{events-BlzVUyTx.js → events-DLRxpSuV.js} +1 -1
  74. package/server/{factory-rG4T40su.js → factory-BMtWV9iv.js} +4 -4
  75. package/server/{feature-registry-population-Dwyj9gEM.js → feature-registry-population-DA7bO6Zn.js} +5 -5
  76. package/server/{feature-registry-storage-CnGyNgAq.js → feature-registry-storage-nAY1fbBt.js} +3 -3
  77. package/server/{features-CYY2_Eeh.js → features-DMu7eGmU.js} +2 -2
  78. package/server/{feedback-target-nQSM6ygL.js → feedback-target-B2SEai8-.js} +1 -1
  79. package/server/{feedback-target-dJjFfITP.js → feedback-target-DHqcw3cN.js} +6 -6
  80. package/server/{feedback-writer-thrdxYpK.js → feedback-writer-DMBdS_jL.js} +1 -1
  81. package/server/{feedback-writer-DMaO0XXa.js → feedback-writer-qvm7UON7.js} +4 -4
  82. package/server/{flywheel-Cqf8vu7N.js → flywheel-D2LdPSic.js} +13 -13
  83. package/server/{flywheel-BLoVNtJV.js → flywheel-Dfpx4bIV.js} +11 -11
  84. package/server/{flywheel-PJsbrXNY.js → flywheel-k4FPtCQ_.js} +1 -1
  85. package/server/{flywheel-merge-order-B7BH8mZ3.js → flywheel-merge-order-CB4lbXeJ.js} +6 -6
  86. package/server/{flywheel-merge-order-CCwF60b-.js → flywheel-merge-order-CttTazRY.js} +1 -1
  87. package/server/{forge-BixzckB0.js → forge-CoPFXFyl.js} +3 -3
  88. package/server/forge-IgLR0Ist.js +2 -0
  89. package/server/{from-D4xmArTA.js → from-B0YoJl9-.js} +2 -2
  90. package/server/{fts-db-DPtxOAjp.js → fts-db-DAHW1yA_.js} +2 -2
  91. package/server/{fts-operations-VrGjsT0w.js → fts-operations-DDXDBi0d.js} +3 -3
  92. package/server/{git-utils-D_cax3fD.js → git-utils-B90Zjzfl.js} +2 -2
  93. package/server/{git-utils-RAmTwjFB.js → git-utils-DbfC0zls.js} +1 -1
  94. package/server/{github-app-FMXgo3vK.js → github-app-BecAnXRX.js} +2 -2
  95. package/server/{github-app-B5PDHMyn.js → github-app-C7lftMNj.js} +1 -1
  96. package/server/{github-client-VRiB6N-4.js → github-client-BwtKZtM0.js} +1 -1
  97. package/server/{github-client-yjbXaqpR.js → github-client-D21rCIXk.js} +2 -2
  98. package/server/{github-pr-lookup-t8X8R0c0.js → github-pr-lookup-CzVWuysl.js} +2 -2
  99. package/server/{harness-resolve-B3f9G1Kp.js → harness-resolve-SkRJm4a7.js} +3 -3
  100. package/server/{health-events-DaLX4-0a.js → health-events-BT0aAfeA.js} +2 -2
  101. package/server/{health-events-CD6q47ub.js → health-events-DA_JLpgZ.js} +1 -1
  102. package/server/{hooks-D-cbMUzQ.js → hooks-BQxRXtRb.js} +1 -1
  103. package/server/{hooks-CmHFSj_Z.js → hooks-DxEn2BoY.js} +2 -2
  104. package/server/{idle-stack-reaper-DdnERp3G.js → idle-stack-reaper-C7fJL8jH.js} +1 -1
  105. package/server/{idle-stack-reaper-DBKQ9SKu.js → idle-stack-reaper-DGy7tvC9.js} +2 -2
  106. package/server/{infra-CpKlYZA9.js → infra-DE3C4PMr.js} +22 -4
  107. package/server/{injection-CszhePD2.js → injection-Cc4Qt8LZ.js} +7 -7
  108. package/server/{injection-DKzL2Axk.js → injection-Dt22tGvS.js} +1 -1
  109. package/server/inspect-agent-CYoWAeeB.js +2 -0
  110. package/server/{inspect-agent-CKF5-SJr.js → inspect-agent-DOaCDkCF.js} +9 -9
  111. package/server/{internal-token-CQUx9YLc.js → internal-token-B_1YLWLI.js} +3 -3
  112. package/server/{internal-token-DrGdpLFo.js → internal-token-nobT6FhA.js} +1 -1
  113. package/server/{io-Wy8YpFeP.js → io-A7ZuOBkz.js} +2 -2
  114. package/server/{issue-closed-BO84g03t.js → issue-closed-Da3DeomA.js} +4 -4
  115. package/server/{issue-lifecycle-5LbOcATP.js → issue-lifecycle-543pQX9D.js} +28 -28
  116. package/server/{issue-lifecycle-CjYqQ669.js → issue-lifecycle-Bd9XBJAQ.js} +1 -1
  117. package/server/{issue-service-singleton-B8iu_TKV.js → issue-service-singleton-BC2JLZi7.js} +1 -1
  118. package/server/{issue-service-singleton-CDGt__oQ.js → issue-service-singleton-Brc3t0SV.js} +8 -8
  119. package/server/{issues-ChNcfHta.js → issues-D3kt9UWE.js} +2 -2
  120. package/server/{label-cleanup-bVXCGWBM.js → label-cleanup-w9X_T3AQ.js} +2 -2
  121. package/server/{layers-vdvlpFki.js → layers-Cwe1J-9o.js} +2 -2
  122. package/server/{lifecycle-CEg4sHZH.js → lifecycle-f1GbDK33.js} +6 -6
  123. package/server/{lifecycle-io-DSrv9xGh.js → lifecycle-io-Bqvj0m3i.js} +4 -4
  124. package/server/{lifecycle-io-CdqPkCyk.js → lifecycle-io-D56q8zlO.js} +1 -1
  125. package/server/{linear-client-BxKvL6U8.js → linear-client-Bh4T4S-c.js} +1 -1
  126. package/server/{linear-client-E0HdXtWs.js → linear-client-CfJMTAYd.js} +2 -2
  127. package/server/memory-fts-worker.js +1 -1
  128. package/server/{merge-D3wEbmUJ.js → merge-DRMPa8CQ.js} +1 -1
  129. package/server/{merge-UlAwCk80.js → merge-ZrXFM3jv.js} +3 -3
  130. package/server/{merge-agent-C81xPIGd.js → merge-agent-CHHs5S_0.js} +25 -25
  131. package/server/{merge-agent-7nBiCytp.js → merge-agent-CfohxFWM.js} +1 -1
  132. package/server/{merge-blockers-DwdQNsYD.js → merge-blockers-BMhDpMl_.js} +2 -2
  133. package/server/merge-ops-Czke6UAp.js +2 -0
  134. package/server/{merge-rebase-CH12_ufi.js → merge-rebase-R7MfqpiE.js} +2 -2
  135. package/server/{merge-set-TRxJwR-w.js → merge-set-B3Breacq.js} +3 -3
  136. package/server/{merge-set-rXK3ehnB.js → merge-set-D-iXNP0I.js} +1 -1
  137. package/server/{merge-sync-CaLRt2cB.js → merge-sync-DHWbGtjR.js} +2 -2
  138. package/server/{merge-sync-BKLKu9kz.js → merge-sync-bOOtfeXR.js} +1 -1
  139. package/server/{merge-train-D3qzRccL.js → merge-train-98ptZrPT.js} +3 -3
  140. package/server/{merge-train-deps-Be5ElC_P.js → merge-train-deps-B5FWJTE2.js} +4 -4
  141. package/server/{merge-verification-DA9rvqsE.js → merge-verification-BGiuiXAK.js} +4 -4
  142. package/server/{multipart-parser-DtIEUW2B.js → multipart-parser-D7mzNNDm.js} +2 -2
  143. package/server/node_modules/.package-lock.json +1 -0
  144. package/server/{orphan-proposed-reconciler-Boq_XaRe.js → orphan-proposed-reconciler-BSGCNJ6X.js} +9 -9
  145. package/server/{orphan-proposed-reconciler-C0sPnDq_.js → orphan-proposed-reconciler-CSuxivr9.js} +1 -1
  146. package/server/package-lock.json +2 -0
  147. package/server/package.json +1 -0
  148. package/server/{pan-dir-BgBeeZDX.js → pan-dir-DoPtdHrp.js} +3 -3
  149. package/server/{paths-TE1GOZDr.js → paths-CVDLPxXp.js} +2 -2
  150. package/server/{pipeline-notifier-lwMa--Gz.js → pipeline-notifier-BtYHbBPl.js} +1 -1
  151. package/server/{pipeline-notifier-aX_5EqQO.js → pipeline-notifier-WD2dnOsR.js} +2 -2
  152. package/server/{projects-BNmVxnNt.js → projects-Bqfwuqet.js} +1 -1
  153. package/server/{prompts-CelsUdrx.js → prompts-Cg7e9FPb.js} +2 -2
  154. package/server/{providers-BOnRq5XK.js → providers-JjK6izqX.js} +1 -1
  155. package/server/{providers-4-xOzHQu.js → providers-fLduChnX.js} +7 -7
  156. package/server/public/assets/{chunk-BO2N2NFS-BjULspib.js → chunk-BO2N2NFS-aNlsGDCu.js} +4 -4
  157. package/server/public/assets/{diagram-OG6HWLK6-4ER5ovy_.js → diagram-OG6HWLK6-CnjkrvT8.js} +1 -1
  158. package/server/public/assets/{dist-CBUe_1pC.js → dist-Bg3Sbsx4.js} +3 -3
  159. package/server/public/assets/{dist-DVM-OI65.js → dist-CGKBCieA.js} +1 -1
  160. package/server/public/assets/{ganttDiagram-6RSMTGT7-DQ3nocJU.js → ganttDiagram-6RSMTGT7-C8LLKj23.js} +1 -1
  161. package/server/public/assets/{highlighted-body-OFNGDK62-BcLOHe75.js → highlighted-body-OFNGDK62-BSDEUvhW.js} +1 -1
  162. package/server/public/assets/{index-B-m-cSFg.css → index-CZiADHcL.css} +1 -1
  163. package/server/public/assets/index-LQIfhmgI.js +796 -0
  164. package/server/public/assets/{linear-Acq5WFAt.js → linear-DEbYZoxg.js} +1 -1
  165. package/server/public/assets/mermaid-GHXKKRXX-CZOsRYoT.js +1 -0
  166. package/server/public/assets/{pieDiagram-4H26LBE5-BEmjmqLh.js → pieDiagram-4H26LBE5-BtZL5pXE.js} +1 -1
  167. package/server/public/assets/{prod-D-3YYika.js → prod-DYVvIyuh.js} +4 -4
  168. package/server/public/assets/{quadrantDiagram-W4KKPZXB-DyeZ0jBC.js → quadrantDiagram-W4KKPZXB-a7vS8Jc8.js} +1 -1
  169. package/server/public/assets/{sankeyDiagram-5OEKKPKP-DSD--Pbl.js → sankeyDiagram-5OEKKPKP-Ckbq2SWH.js} +1 -1
  170. package/server/public/assets/{xychartDiagram-2RQKCTM6-idS7x7Bb.js → xychartDiagram-2RQKCTM6-DJyeNa99.js} +1 -1
  171. package/server/public/index.html +2 -2
  172. package/server/{pull-requests-CH4iBFLl.js → pull-requests-1WXmTBlo.js} +3 -3
  173. package/server/{pull-requests-DL_4klIb.js → pull-requests-D2SjJIwY.js} +1 -1
  174. package/server/{rally-D0mKv2t8.js → rally-8aQlLLVj.js} +3 -3
  175. package/server/rally-Ba9QoNYc.js +3 -0
  176. package/server/{rally-api-CcCdecF-.js → rally-api-BtvwdX6d.js} +1 -1
  177. package/server/{rally-api-DgAt6FbN.js → rally-api-H5I2CBO0.js} +2 -2
  178. package/server/{rally-client-DYjtgTOu.js → rally-client-33CYZYYu.js} +4 -4
  179. package/server/{rally-client-X0bEEN2B.js → rally-client-Bt-qHiOh.js} +1 -1
  180. package/server/{rebuild-stack-ByFCMqTK.js → rebuild-stack-CXSgAGPR.js} +1 -1
  181. package/server/{rebuild-stack-BLG3rlWa.js → rebuild-stack-KHkkrGjx.js} +6 -6
  182. package/server/{reconstruct-cache-C2pCltOq.js → reconstruct-cache-D_Ml65_6.js} +7 -7
  183. package/server/{record-DjPikotp.js → record-De2syxNB.js} +1 -1
  184. package/server/{remote-TN0cV8k-.js → remote-CGuognN3.js} +3 -3
  185. package/server/{remote-B1Trmr0N.js → remote-D0Old0Cv.js} +3 -3
  186. package/server/{remote-agents-CmbIKw7E.js → remote-agents-DfhMq6kQ.js} +5 -5
  187. package/server/{remote-agents-DNuaAgU6.js → remote-agents-UHoi4oGr.js} +1 -1
  188. package/server/{remote-completion-BmxD5UMQ.js → remote-completion-RZYePR_0.js} +12 -12
  189. package/server/resume-CmxF3Kjz.js +3 -0
  190. package/server/{review-agent-D6P6d3pz.js → review-agent-sZBCpEVv.js} +22 -22
  191. package/server/{review-agent-DTINEffB.js → review-agent-uwVftH98.js} +1 -1
  192. package/server/{review-artifacts-BGc69epg.js → review-artifacts-C7a45b1_.js} +7 -7
  193. package/server/{review-context-Dyo0tsBa.js → review-context-CErbQpKL.js} +7 -7
  194. package/server/{review-monitor-BKG2ubt5.js → review-monitor-DHD9m_kh.js} +2 -2
  195. package/server/{review-status-h7BXIA4z.js → review-status-JhQ3qlDS.js} +1 -1
  196. package/server/{review-status-enrichment-CGlcApSn.js → review-status-enrichment-qWvWckYN.js} +3 -3
  197. package/server/{review-status-B5ZASOo4.js → review-status-gPndPUBc.js} +53 -30
  198. package/server/{review-status-sync-BxHBVH8s.js → review-status-sync-B_GrEke8.js} +1 -1
  199. package/server/{review-status-sync-BWHnrq-k.js → review-status-sync-D3A9KX95.js} +2 -2
  200. package/server/{review-verdict-feedback-B70VbfRL.js → review-verdict-feedback-4WZ5ZdbC.js} +7 -7
  201. package/server/{review-verdict-feedback-CorgH49f.js → review-verdict-feedback-Zo0r_z4m.js} +1 -1
  202. package/server/{rollup-DBNy1yFB.js → rollup-Bmhn80tB.js} +1 -1
  203. package/server/{rollup-BJE-Vc7H.js → rollup-BrUIKMv_.js} +7 -7
  204. package/server/{scanner-CUGpdp4i.js → scanner-BIGumel_.js} +7 -7
  205. package/server/{sequence-io-6YP8fVpH.js → sequence-io-DA0akEQN.js} +5 -5
  206. package/server/{sequencer-agent-ja-nkEc1.js → sequencer-agent-DeflKafB.js} +6 -6
  207. package/server/server.js +561 -548
  208. package/server/{service-HKDrIy0h.js → service-V0sUK-OR.js} +64 -64
  209. package/server/{session-fork-DDSDVoIK.js → session-fork-Yx3UcAQf.js} +2 -2
  210. package/server/{settings-CBrei_kx.js → settings-CFEeQRj2.js} +2 -2
  211. package/server/{settings-D2wt4nku.js → settings-CxVate0h.js} +3 -3
  212. package/server/settings-DEhYpW0k.js +2 -0
  213. package/server/{shadow-engineering-Ba1D0QUN.js → shadow-engineering-BRxnVSDk.js} +2 -2
  214. package/server/{shadow-state-BOaq8BrD.js → shadow-state-1aS8FijU.js} +1 -1
  215. package/server/{shadow-state-DTC7AMHc.js → shadow-state-BiMwdyl1.js} +2 -2
  216. package/server/{smart-compaction-uke1npUz.js → smart-compaction-Bw1K_Sbl.js} +7 -7
  217. package/server/{smart-compaction-L0LSnF0_.js → smart-compaction-xblMyVpT.js} +1 -1
  218. package/server/{spawn-planning-session-CSMWco8B.js → spawn-planning-session-CzDFSKAQ.js} +1 -1
  219. package/server/{spawn-planning-session-CXc0NkwV.js → spawn-planning-session-DxLxcM7m.js} +15 -15
  220. package/server/{specialist-context-BGCJ24LH.js → specialist-context-BfkTA81h.js} +5 -5
  221. package/server/{specialist-handoff-logger-B_2VsWli.js → specialist-handoff-logger-BiKuLtNm.js} +2 -2
  222. package/server/{specialist-logs--Uz-r8ia.js → specialist-logs-CFJjGsLC.js} +3 -3
  223. package/server/{specialists-DEfrAbWs.js → specialists-B4byf18k.js} +156 -156
  224. package/server/{specialists-Ca9XSBCS.js → specialists-BLIreoE7.js} +1 -1
  225. package/server/{specialists-DeZx9xom.js → specialists-DdvpFNt1.js} +1 -1
  226. package/server/{specialists-nZ0mRwpZ.js → specialists-DjHbwQ_p.js} +18 -18
  227. package/server/specs-CVH1kvz3.js +3 -0
  228. package/server/{src-Dp0WHgDZ.js → src-CALBEUMX.js} +3 -3
  229. package/server/{src-BswtmojL.js → src-mK_M_ZIj.js} +3 -3
  230. package/server/{stack-health-Deel1mSW.js → stack-health-BFM8YlHw.js} +1 -1
  231. package/server/{stack-health-BJVh1TCg.js → stack-health-Qd7rPiVe.js} +3 -3
  232. package/server/{state-home-Bgj7i-C7.js → state-home-C2Bicw9N.js} +6 -6
  233. package/server/{summary-fork-Xn0QUNmb.js → summary-fork-DezPkJSm.js} +16 -16
  234. package/server/{summary-fork-2a1L2DIU.js → summary-fork-EWWBvzgE.js} +2 -2
  235. package/server/supervisor/chunk-ruWRV7i3.js +30 -0
  236. package/server/supervisor/paths-3R6b989k.js +224 -0
  237. package/server/supervisor/pty-supervisor.js +391 -0
  238. package/server/supervisor/pty-token-CScQ32Rj.js +43 -0
  239. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/LICENSE +69 -0
  240. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/README.md +67 -0
  241. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/binding.gyp +123 -0
  242. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/.editorconfig +2 -0
  243. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/.drone.yml +17 -0
  244. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/.gitattributes +19 -0
  245. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/LICENSE +21 -0
  246. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/Makefile +166 -0
  247. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/README.md +151 -0
  248. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/RELEASES.md +280 -0
  249. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/VERSION.txt +1 -0
  250. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/configure +167 -0
  251. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/BufferResizeTests.cc +90 -0
  252. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/ChangeScreenBuffer.cc +53 -0
  253. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/ClearConsole.cc +72 -0
  254. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/ConinMode.cc +117 -0
  255. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/ConinMode.ps1 +116 -0
  256. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/ConoutMode.cc +113 -0
  257. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/DebugClient.py +42 -0
  258. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/DebugServer.py +63 -0
  259. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/DumpLines.py +5 -0
  260. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/EnableExtendedFlags.txt +46 -0
  261. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Font-Report-June2016/CP437-Consolas.txt +528 -0
  262. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Font-Report-June2016/CP437-Lucida.txt +633 -0
  263. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Font-Report-June2016/CP932.txt +630 -0
  264. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Font-Report-June2016/CP936.txt +630 -0
  265. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Font-Report-June2016/CP949.txt +630 -0
  266. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Font-Report-June2016/CP950.txt +630 -0
  267. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Font-Report-June2016/MinimumWindowWidths.txt +16 -0
  268. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Font-Report-June2016/Results.txt +4 -0
  269. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Font-Report-June2016/Windows10SetFontBugginess.txt +144 -0
  270. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/FontSurvey.cc +100 -0
  271. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/FormatChar.h +21 -0
  272. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/FreezePerfTest.cc +62 -0
  273. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/GetCh.cc +20 -0
  274. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/GetConsolePos.cc +41 -0
  275. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/GetFont.cc +261 -0
  276. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/IdentifyConsoleWindow.ps1 +51 -0
  277. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/IsNewConsole.cc +87 -0
  278. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/MouseInputNotes.txt +90 -0
  279. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/MoveConsoleWindow.cc +34 -0
  280. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Notes.txt +219 -0
  281. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/OSVersion.cc +27 -0
  282. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/ScreenBufferFreezeInactive.cc +101 -0
  283. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/ScreenBufferTest.cc +671 -0
  284. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/ScreenBufferTest2.cc +151 -0
  285. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/SelectAllTest.cc +45 -0
  286. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/SetBufferSize.cc +32 -0
  287. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/SetCursorPos.cc +10 -0
  288. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/SetFont.cc +145 -0
  289. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/SetWindowRect.cc +36 -0
  290. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/ShowArgv.cc +12 -0
  291. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/ShowConsoleInput.cc +40 -0
  292. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Spew.py +5 -0
  293. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/TestUtil.cc +172 -0
  294. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/UnicodeDoubleWidthTest.cc +102 -0
  295. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/UnicodeWideTest1.cc +246 -0
  296. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/UnicodeWideTest2.cc +130 -0
  297. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/UnixEcho.cc +89 -0
  298. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Utf16Echo.cc +46 -0
  299. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/VeryLargeRead.cc +122 -0
  300. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/VkEscapeTest.cc +56 -0
  301. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Win10ResizeWhileFrozen.cc +52 -0
  302. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Win10WrapTest1.cc +57 -0
  303. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Win10WrapTest2.cc +30 -0
  304. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Win32Echo1.cc +26 -0
  305. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Win32Echo2.cc +19 -0
  306. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Win32Test1.cc +46 -0
  307. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Win32Test2.cc +70 -0
  308. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Win32Test3.cc +78 -0
  309. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/Win32Write1.cc +44 -0
  310. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/WindowsBugCrashReader.cc +27 -0
  311. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/WriteConsole.cc +106 -0
  312. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/build32.sh +9 -0
  313. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/build64.sh +9 -0
  314. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/color-test.sh +212 -0
  315. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/font-notes.txt +300 -0
  316. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/misc/winbug-15048.cc +201 -0
  317. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/ship/build-pty4j-libpty.bat +36 -0
  318. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/ship/common_ship.py +53 -0
  319. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/ship/make_msvc_package.py +165 -0
  320. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/ship/ship.py +108 -0
  321. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Agent.cc +613 -0
  322. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Agent.h +103 -0
  323. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/AgentCreateDesktop.cc +84 -0
  324. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/AgentCreateDesktop.h +28 -0
  325. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/ConsoleFont.cc +632 -0
  326. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/ConsoleFont.h +28 -0
  327. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/ConsoleInput.cc +852 -0
  328. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/ConsoleInput.h +109 -0
  329. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/ConsoleInputReencoding.cc +121 -0
  330. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/ConsoleInputReencoding.h +36 -0
  331. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/ConsoleLine.cc +152 -0
  332. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/ConsoleLine.h +41 -0
  333. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Coord.h +87 -0
  334. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/DebugShowInput.cc +239 -0
  335. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/DebugShowInput.h +32 -0
  336. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/DefaultInputMap.cc +422 -0
  337. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/DefaultInputMap.h +28 -0
  338. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/DsrSender.h +30 -0
  339. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/EventLoop.cc +99 -0
  340. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/EventLoop.h +47 -0
  341. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/InputMap.cc +246 -0
  342. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/InputMap.h +114 -0
  343. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/LargeConsoleRead.cc +71 -0
  344. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/LargeConsoleRead.h +68 -0
  345. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/NamedPipe.cc +378 -0
  346. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/NamedPipe.h +125 -0
  347. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Scraper.cc +699 -0
  348. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Scraper.h +103 -0
  349. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/SimplePool.h +75 -0
  350. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/SmallRect.h +143 -0
  351. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Terminal.cc +535 -0
  352. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Terminal.h +69 -0
  353. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/UnicodeEncoding.h +157 -0
  354. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/UnicodeEncodingTest.cc +189 -0
  355. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Win32Console.cc +107 -0
  356. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Win32Console.h +67 -0
  357. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Win32ConsoleBuffer.cc +193 -0
  358. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/Win32ConsoleBuffer.h +99 -0
  359. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/main.cc +114 -0
  360. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/agent/subdir.mk +61 -0
  361. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/configurations.gypi +60 -0
  362. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/debugserver/DebugServer.cc +117 -0
  363. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/debugserver/subdir.mk +41 -0
  364. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/include/winpty.h +242 -0
  365. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/include/winpty_constants.h +131 -0
  366. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/libwinpty/AgentLocation.cc +75 -0
  367. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/libwinpty/AgentLocation.h +28 -0
  368. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/libwinpty/LibWinptyException.h +54 -0
  369. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/libwinpty/WinptyInternal.h +72 -0
  370. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/libwinpty/subdir.mk +46 -0
  371. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/libwinpty/winpty.cc +970 -0
  372. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/AgentMsg.h +38 -0
  373. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/BackgroundDesktop.cc +122 -0
  374. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/BackgroundDesktop.h +73 -0
  375. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/Buffer.cc +103 -0
  376. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/Buffer.h +102 -0
  377. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/DebugClient.cc +187 -0
  378. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/DebugClient.h +38 -0
  379. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/GenRandom.cc +138 -0
  380. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/GenRandom.h +55 -0
  381. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/GetCommitHash.bat +13 -0
  382. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/Mutex.h +54 -0
  383. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/OsModule.h +63 -0
  384. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/OwnedHandle.cc +36 -0
  385. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/OwnedHandle.h +45 -0
  386. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/PrecompiledHeader.h +43 -0
  387. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/StringBuilder.h +227 -0
  388. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/StringBuilderTest.cc +114 -0
  389. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/StringUtil.cc +55 -0
  390. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/StringUtil.h +80 -0
  391. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/TimeMeasurement.h +63 -0
  392. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/UnixCtrlChars.h +45 -0
  393. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/UpdateGenVersion.bat +20 -0
  394. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/WindowsSecurity.cc +460 -0
  395. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/WindowsSecurity.h +104 -0
  396. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/WindowsVersion.cc +252 -0
  397. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/WindowsVersion.h +29 -0
  398. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/WinptyAssert.cc +55 -0
  399. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/WinptyAssert.h +64 -0
  400. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/WinptyException.cc +57 -0
  401. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/WinptyException.h +43 -0
  402. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/WinptyVersion.cc +42 -0
  403. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/WinptyVersion.h +27 -0
  404. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/shared/winpty_snprintf.h +99 -0
  405. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/subdir.mk +5 -0
  406. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/tests/subdir.mk +28 -0
  407. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/tests/trivial_test.cc +158 -0
  408. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/unix-adapter/InputHandler.cc +114 -0
  409. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/unix-adapter/InputHandler.h +56 -0
  410. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/unix-adapter/OutputHandler.cc +80 -0
  411. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/unix-adapter/OutputHandler.h +53 -0
  412. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/unix-adapter/Util.cc +86 -0
  413. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/unix-adapter/Util.h +31 -0
  414. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/unix-adapter/WakeupFd.cc +70 -0
  415. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/unix-adapter/WakeupFd.h +42 -0
  416. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/unix-adapter/main.cc +729 -0
  417. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/unix-adapter/subdir.mk +41 -0
  418. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/src/winpty.gyp +235 -0
  419. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/deps/winpty/vcbuild.bat +83 -0
  420. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/conpty_console_list_agent.js +20 -0
  421. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/conpty_console_list_agent.js.map +1 -0
  422. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/eventEmitter2.js +47 -0
  423. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/eventEmitter2.js.map +1 -0
  424. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/eventEmitter2.test.js +30 -0
  425. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/eventEmitter2.test.js.map +1 -0
  426. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/index.js +52 -0
  427. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/index.js.map +1 -0
  428. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/interfaces.js +7 -0
  429. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/interfaces.js.map +1 -0
  430. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/prebuild-file-path.js +18 -0
  431. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/prebuild-file-path.js.map +1 -0
  432. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/prebuild-loader.js +19 -0
  433. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/prebuild-loader.js.map +1 -0
  434. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/shared/conout.js +11 -0
  435. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/shared/conout.js.map +1 -0
  436. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/terminal.js +190 -0
  437. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/terminal.js.map +1 -0
  438. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/terminal.test.js +139 -0
  439. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/terminal.test.js.map +1 -0
  440. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/testUtils.test.js +28 -0
  441. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/testUtils.test.js.map +1 -0
  442. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/types.js +7 -0
  443. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/types.js.map +1 -0
  444. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/unixTerminal.js +290 -0
  445. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/unixTerminal.js.map +1 -0
  446. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/unixTerminal.test.js +352 -0
  447. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/unixTerminal.test.js.map +1 -0
  448. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/utils.js +17 -0
  449. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/utils.js.map +1 -0
  450. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/windowsConoutConnection.js +125 -0
  451. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/windowsConoutConnection.js.map +1 -0
  452. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/windowsPtyAgent.js +345 -0
  453. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/windowsPtyAgent.js.map +1 -0
  454. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/windowsPtyAgent.test.js +90 -0
  455. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/windowsPtyAgent.test.js.map +1 -0
  456. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/windowsTerminal.js +201 -0
  457. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/windowsTerminal.js.map +1 -0
  458. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/windowsTerminal.test.js +217 -0
  459. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/windowsTerminal.test.js.map +1 -0
  460. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/worker/conoutSocketWorker.js +22 -0
  461. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/lib/worker/conoutSocketWorker.js.map +1 -0
  462. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/package.json +79 -0
  463. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi102.musl.node +0 -0
  464. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi102.node +0 -0
  465. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi108.musl.node +0 -0
  466. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi108.node +0 -0
  467. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi111.musl.node +0 -0
  468. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi111.node +0 -0
  469. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi115.musl.node +0 -0
  470. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi115.node +0 -0
  471. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi120.musl.node +0 -0
  472. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi120.node +0 -0
  473. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi127.musl.node +0 -0
  474. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi127.node +0 -0
  475. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi131.musl.node +0 -0
  476. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi131.node +0 -0
  477. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi137.musl.node +0 -0
  478. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm/node.abi137.node +0 -0
  479. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi102.musl.node +0 -0
  480. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi108.musl.node +0 -0
  481. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi108.node +0 -0
  482. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi111.musl.node +0 -0
  483. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi111.node +0 -0
  484. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi115.musl.node +0 -0
  485. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi115.node +0 -0
  486. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi120.musl.node +0 -0
  487. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi120.node +0 -0
  488. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi127.musl.node +0 -0
  489. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi127.node +0 -0
  490. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi131.musl.node +0 -0
  491. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi131.node +0 -0
  492. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi137.musl.node +0 -0
  493. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-arm64/node.abi137.node +0 -0
  494. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-ia32/node.abi108.node +0 -0
  495. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-ia32/node.abi111.node +0 -0
  496. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-ia32/node.abi115.node +0 -0
  497. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-ia32/node.abi120.node +0 -0
  498. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-ia32/node.abi127.node +0 -0
  499. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-ia32/node.abi131.node +0 -0
  500. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-ia32/node.abi137.node +0 -0
  501. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi102.musl.node +0 -0
  502. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi108.musl.node +0 -0
  503. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi108.node +0 -0
  504. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi111.musl.node +0 -0
  505. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi111.node +0 -0
  506. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi115.musl.node +0 -0
  507. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi115.node +0 -0
  508. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi120.musl.node +0 -0
  509. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi120.node +0 -0
  510. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi127.musl.node +0 -0
  511. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi127.node +0 -0
  512. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi131.musl.node +0 -0
  513. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi131.node +0 -0
  514. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi137.musl.node +0 -0
  515. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/prebuilds/linux-x64/node.abi137.node +0 -0
  516. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/scripts/check-prebuild.js +15 -0
  517. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/scripts/increment-version.js +54 -0
  518. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/scripts/install.js +18 -0
  519. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/scripts/post-install.js +83 -0
  520. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/conpty_console_list_agent.ts +19 -0
  521. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/eventEmitter2.test.ts +30 -0
  522. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/eventEmitter2.ts +48 -0
  523. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/index.ts +53 -0
  524. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/interfaces.ts +130 -0
  525. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/native.d.ts +54 -0
  526. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/prebuild-file-path.ts +21 -0
  527. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/prebuild-loader.ts +17 -0
  528. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/shared/conout.ts +15 -0
  529. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/terminal.test.ts +119 -0
  530. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/terminal.ts +211 -0
  531. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/testUtils.test.ts +23 -0
  532. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/tsconfig.json +22 -0
  533. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/types.ts +15 -0
  534. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/unix/pty.cc +796 -0
  535. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/unix/spawn-helper.cc +23 -0
  536. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/unixTerminal.test.ts +368 -0
  537. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/unixTerminal.ts +318 -0
  538. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/utils.ts +9 -0
  539. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/win/conpty.cc +583 -0
  540. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/win/conpty.h +41 -0
  541. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/win/conpty_console_list.cc +44 -0
  542. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/win/path_util.cc +95 -0
  543. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/win/path_util.h +26 -0
  544. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/win/winpty.cc +333 -0
  545. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/windowsConoutConnection.ts +82 -0
  546. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/windowsPtyAgent.test.ts +94 -0
  547. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/windowsPtyAgent.ts +342 -0
  548. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/windowsTerminal.test.ts +227 -0
  549. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/windowsTerminal.ts +208 -0
  550. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/src/worker/conoutSocketWorker.ts +22 -0
  551. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/third_party/conpty/1.22.250204002/win10-arm64/OpenConsole.exe +0 -0
  552. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/third_party/conpty/1.22.250204002/win10-arm64/conpty.dll +0 -0
  553. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/third_party/conpty/1.22.250204002/win10-x64/OpenConsole.exe +0 -0
  554. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/third_party/conpty/1.22.250204002/win10-x64/conpty.dll +0 -0
  555. package/server/supervisor/vendor/@homebridge/node-pty-prebuilt-multiarch/typings/node-pty.d.ts +230 -0
  556. package/server/{supervisor-0oXvLwyC.js → supervisor-D5GC5jUM.js} +8 -8
  557. package/server/supervisor-DQMK2e3I.js +2 -0
  558. package/server/{swarm-readiness-OBgamRql.js → swarm-readiness-Cf9mommA.js} +3 -3
  559. package/server/system-prerequisites-BsI9hxh9.js +166 -0
  560. package/server/{teardown-workspace-DhA6oAIK.js → teardown-workspace-CWz1pbEK.js} +12 -12
  561. package/server/{test-agent-queue-B_ukPyIK.js → test-agent-queue-TiVXe3ZT.js} +6 -6
  562. package/server/{test-verdict-D3Il7cBK.js → test-verdict-Bm4uv_AA.js} +2 -2
  563. package/server/{test-verdict-BkubHtti.js → test-verdict-CCDd25uN.js} +1 -1
  564. package/server/{tldr-daemon-CJqGsDFh.js → tldr-daemon-Big5IZ_M.js} +1 -1
  565. package/server/{tldr-daemon-CJW_P4On.js → tldr-daemon-C_1frSDj.js} +2 -2
  566. package/server/{tmux-ePNhMIMU.js → tmux-D57f-XNv.js} +2 -2
  567. package/server/{tmux-CeDD14p1.js → tmux-DClqWwb8.js} +1 -1
  568. package/server/{tracker-config-Drt_tx4D.js → tracker-config-B_Ubts1Z.js} +1 -1
  569. package/server/{tracker-config-C3hiPVAM.js → tracker-config-BmdJU_w6.js} +2 -2
  570. package/server/{tracker-utils-D6B8scEw.js → tracker-utils-Bg-Sevcv.js} +1 -1
  571. package/server/{tracker-utils-bpWs7Xyx.js → tracker-utils-CWFt6jjV.js} +2 -2
  572. package/server/{tunnel-3Ve8BS4H.js → tunnel-UBf2vyAL.js} +2 -2
  573. package/server/{tunnel-AporWhoi.js → tunnel-hOBNQbmF.js} +1 -1
  574. package/server/{uat-train-DPfGR9_I.js → uat-train-DGkIkLxu.js} +1 -1
  575. package/server/{uat-train-BLBAbJ8Y.js → uat-train-qNanv5hN.js} +54 -54
  576. package/server/{validation-CbqP_dze.js → validation-B0QaLIHP.js} +1 -1
  577. package/server/{validation-BmUB-26g.js → validation-C4wegCvH.js} +3 -3
  578. package/server/{verification-runner-R2-4XgMO.js → verification-runner-CntudBes.js} +11 -11
  579. package/server/{verification-runner-KTGTNugM.js → verification-runner-DdleMNLq.js} +1 -1
  580. package/server/{work-agent-prompt-DCdHsm-V.js → work-agent-prompt-CG5jFV9A.js} +11 -11
  581. package/server/{workflows-CSKX5MhC.js → workflows-BK2xs_a8.js} +13 -13
  582. package/server/workflows-pKw9yRSV.js +2 -0
  583. package/server/{workspace-DYv9kBg6.js → workspace-C9lC5o3E.js} +1 -1
  584. package/server/{workspace-4ZufqeMe.js → workspace-CLrSIRCx.js} +3 -3
  585. package/server/{workspace-manager-CEWK-OXd.js → workspace-manager-BJhW2sky.js} +10 -10
  586. package/server/{workspace-manager-B3PqQQSM.js → workspace-manager-Cb2a7bg9.js} +1 -1
  587. package/server/{workspace-metadata-C0I-nIDL.js → workspace-metadata-CTRnr323.js} +1 -1
  588. package/server/{workspace-metadata-1eu1RvAT.js → workspace-metadata-QQmo_Z0l.js} +2 -2
  589. package/server/{workspaces-DXLDgXo2.js → workspaces-Ca4zZs12.js} +223 -223
  590. package/server/cli-DCqy_wFa.js +0 -3
  591. package/server/deacon-swarm-CVTiNL0N.js +0 -2
  592. package/server/forge-BfP7OJwK.js +0 -2
  593. package/server/inspect-agent-CqpEWGWy.js +0 -2
  594. package/server/merge-ops-DE_6CnmZ.js +0 -2
  595. package/server/public/assets/index-DdqPXf3T.js +0 -796
  596. package/server/public/assets/mermaid-GHXKKRXX-BTHbMU88.js +0 -1
  597. package/server/rally-DffLLIdl.js +0 -3
  598. package/server/resume-C-nxu9Y4.js +0 -3
  599. package/server/settings-vLoKyghx.js +0 -2
  600. package/server/specs-DeS98l_p.js +0 -3
  601. package/server/supervisor-D1-XwmZ7.js +0 -2
  602. package/server/workflows-DVwXauef.js +0 -2
@@ -1,48 +1,48 @@
1
1
  import { i as __require, t as __commonJSMin } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { $n as extractPrefixSync, Br as getOverdeckHome, Dn as getProjectSync, Gn as resolveProjectFromIssueSync, Gr as sessionFilePath, Ln as listProjectsSync, Lr as encodeClaudeProjectDir, Mt as readIssueRecordForWorkspaceSync, Nn as init_projects, Nt as readIssueRecordSync, Or as OVERDECK_HOME, Ot as init_record, St as ensureIssueRecordSync, Vr as init_paths, an as queueBeadsAutoCommit, cn as getMainDivergence, cr as FsError, dn as isStatePlanePath, er as init_issue_id, f as loadConfigSync, hr as TmuxError, ln as init_state_plane, rn as init_auto_commit, s as init_load, sn as STATE_PLANE_PATHS, vr as init_errors, wn as getIssuePrefix, yr as AGENTS_DIR, zt as writeIssueRecordSync } from "./config-yaml-DPAieL_G.js";
2
+ import { $n as extractPrefixSync, Br as getOverdeckHome, Dn as getProjectSync, Gn as resolveProjectFromIssueSync, Gr as sessionFilePath, Ln as listProjectsSync, Lr as encodeClaudeProjectDir, Mt as readIssueRecordForWorkspaceSync, Nn as init_projects, Nt as readIssueRecordSync, Or as OVERDECK_HOME, Ot as init_record, St as ensureIssueRecordSync, Vr as init_paths, an as queueBeadsAutoCommit, cn as getMainDivergence, cr as FsError, dn as isStatePlanePath, er as init_issue_id, f as loadConfigSync, hr as TmuxError, ln as init_state_plane, rn as init_auto_commit, s as init_load, sn as STATE_PLANE_PATHS, vr as init_errors, wn as getIssuePrefix, yr as AGENTS_DIR, zt as writeIssueRecordSync } from "./config-yaml-ClpGgrf6.js";
3
3
  import { a as init_activity_logger, n as emitActivityEntrySync, r as emitActivityTtsSync } from "./activity-logger-pcbf-e30.js";
4
- import { C as isPaneDead, D as listPaneValuesSync, E as listPaneValues, F as sendKeysAsync, L as sessionExists, O as listSessionNames, P as sendKeys, R as sessionExistsSync, T as killSessionSync, i as capturePane, k as listSessions, w as killSession, x as init_tmux } from "./tmux-ePNhMIMU.js";
5
- import { a as init_event_store, i as initEventStore } from "./event-store-DTJXZjCl.js";
4
+ import { C as isPaneDead, D as listPaneValuesSync, E as listPaneValues, F as sendKeysAsync, L as sessionExists, O as listSessionNames, P as sendKeys, R as sessionExistsSync, T as killSessionSync, i as capturePane, k as listSessions, w as killSession, x as init_tmux } from "./tmux-D57f-XNv.js";
5
+ import { a as init_event_store, i as initEventStore } from "./event-store-DCMqyI07.js";
6
6
  import { n as CLAUDE_CODE_BEHAVIOR } from "./src-fgbU-jJ-.js";
7
- import { C as init_record_lock, S as needsReviewDispatch, c as init_review_status, h as reviewGatesPassedSync, s as getReviewStatusSync, u as loadReviewStatuses, w as withIssueRecordLock, x as init_review_dispatch_decision, y as setReviewStatusSync } from "./review-status-B5ZASOo4.js";
8
- import { d as init_agents, g as isTerminalIssueStage, h as getIssueStageSync, p as listAllAgentsSync } from "./briefing-freshness-CXhZdnB8.js";
9
- import { An as getAgentDir, B as createOhmypiRuntimeSync, Bn as markAgentRunningState, D as init_context_overflow, Dn as clearAgentTroubledSync, Dt as captureTranscriptUserRecordSnapshot, E as resumeAgent, Fn as init_agent_state, G as init_termination, Hn as markAgentTroubled, Jn as saveAgentStateSync, K as stopAgent, Kn as resetAgentFailureCount, Mn as getAgentState, On as clearYieldForResumeSync, Ot as init_transcript_landing, Pn as getAgentStateSync, Q as listRunningAgentsSync, U as spawnAgent, Un as recordAgentFailure, V as init_ohmypi, X as listAgentStates, Xn as setAgentPausedSync, Y as init_queries, Z as listRunningAgents, Zn as setAgentYieldedSync, _t as init_config, at as init_concurrency, cn as determineModel, ct as resetPatrolDispatchBudget, dt as workResumeSlotsAvailable, en as init_pi_fifo, er as init_persistent_logger, et as countRunningAgents, gn as buildDefaultResumeContinueMessage, gr as saveAgentRuntimeState, hr as init_runtime_state, ht as DEFAULT_CLOISTER_CONFIG, it as getConcurrencyLimits, j as messageAgent, k as isContextOverflowTail, lt as tryReserveAdvancingSlot, mr as getAgentRuntimeStateSync, mt as setCachedMemoryVerdict, nr as logDeaconEventSync, nt as describeRunningAgents, ot as releaseAdvancingSlot, pr as getAgentRuntimeState, pt as init_memory_verdict_cache, qn as saveAgentState, t as init_agents$1, tr as logAgentLifecycleSync, vt as loadCloisterConfig, wt as deliverInitialPromptWithRetry, yt as loadCloisterConfigSync } from "./agents-C7V4odQ6.js";
10
- import { t as init_behavior } from "./behavior-By-2Wipv.js";
11
- import { a as init_tracker_config, t as getGitHubConfig } from "./tracker-config-C3hiPVAM.js";
12
- import { i as resolveGitHubIssueSync, n as init_tracker_utils } from "./tracker-utils-bpWs7Xyx.js";
7
+ import { C as init_record_lock, S as needsReviewDispatch, c as init_review_status, h as reviewGatesPassedSync, s as getReviewStatusSync, u as loadReviewStatuses, w as withIssueRecordLock, x as init_review_dispatch_decision, y as setReviewStatusSync } from "./review-status-gPndPUBc.js";
8
+ import { d as init_agents, g as isTerminalIssueStage, h as getIssueStageSync, p as listAllAgentsSync } from "./briefing-freshness-B2FdLwIv.js";
9
+ import { An as getAgentDir, B as createOhmypiRuntimeSync, Bn as markAgentRunningState, D as init_context_overflow, Dn as clearAgentTroubledSync, Dt as captureTranscriptUserRecordSnapshot, E as resumeAgent, Fn as init_agent_state, G as init_termination, Hn as markAgentTroubled, Jn as saveAgentStateSync, K as stopAgent, Kn as resetAgentFailureCount, Mn as getAgentState, On as clearYieldForResumeSync, Ot as init_transcript_landing, Pn as getAgentStateSync, Q as listRunningAgentsSync, U as spawnAgent, Un as recordAgentFailure, V as init_ohmypi, X as listAgentStates, Xn as setAgentPausedSync, Y as init_queries, Z as listRunningAgents, Zn as setAgentYieldedSync, _r as init_runtime_state, _t as init_config, at as init_concurrency, cn as determineModel, ct as resetPatrolDispatchBudget, dt as workResumeSlotsAvailable, en as init_pi_fifo, er as init_persistent_logger, et as countRunningAgents, gn as buildDefaultResumeContinueMessage, gr as getAgentRuntimeStateSync, hr as getAgentRuntimeState, ht as DEFAULT_CLOISTER_CONFIG, it as getConcurrencyLimits, j as messageAgent, k as isContextOverflowTail, lt as tryReserveAdvancingSlot, mt as setCachedMemoryVerdict, nr as logDeaconEventSync, nt as describeRunningAgents, ot as releaseAdvancingSlot, pt as init_memory_verdict_cache, qn as saveAgentState, t as init_agents$1, tr as logAgentLifecycleSync, vr as saveAgentRuntimeState, vt as loadCloisterConfig, wt as deliverInitialPromptWithRetry, yt as loadCloisterConfigSync } from "./agents-B5LfpLPv.js";
10
+ import { t as init_behavior } from "./behavior-CPf0pbOt.js";
11
+ import { a as init_tracker_config, t as getGitHubConfig } from "./tracker-config-BmdJU_w6.js";
12
+ import { i as resolveGitHubIssueSync, n as init_tracker_utils } from "./tracker-utils-CWFt6jjV.js";
13
13
  import { n as mapGitHubStateToCanonical, t as init_state_mapping } from "./state-mapping-BvAgFK8n.js";
14
- import { c as init_review_status_sync, l as markWorkspaceStuck } from "./review-status-sync-BWHnrq-k.js";
15
- import { f as init_config$1, m as loadConfigSync$1, p as loadConfig$1 } from "./config-oWoKf5jO.js";
16
- import { a as init_launcher_generator, n as init_state_home, t as findRecreatedLegacyStatePaths } from "./state-home-Bgj7i-C7.js";
17
- import { i as createCodexRuntimeSync, l as init_codex } from "./codex-DcInrhok.js";
18
- import { T as stampBootReconciliation, f as isFlywheelGloballyPaused, h as setBootReconciliationDecision, i as getFlywheelActiveRunId, l as isDeaconGloballyPaused, r as getBootReconciliationState, s as init_control_settings } from "./control-settings-BMqUkXmR.js";
19
- import { c as init_docker_stats, s as DockerStatsCollector } from "./stack-health-BJVh1TCg.js";
20
- import { a as queryBeadsForIssue, o as queryReadyBeadsByIssueLabels, r as init_beads_query, s as resolveBeadsQueryRoot } from "./beads-query-BrVNWoSL.js";
14
+ import { c as init_review_status_sync, l as markWorkspaceStuck } from "./review-status-sync-D3A9KX95.js";
15
+ import { f as init_config$1, m as loadConfigSync$1, p as loadConfig$1 } from "./config-8sjaU6jZ.js";
16
+ import { a as init_launcher_generator, n as init_state_home, t as findRecreatedLegacyStatePaths } from "./state-home-C2Bicw9N.js";
17
+ import { i as createCodexRuntimeSync, l as init_codex } from "./codex-B4KEpX5V.js";
18
+ import { T as stampBootReconciliation, f as isFlywheelGloballyPaused, h as setBootReconciliationDecision, i as getFlywheelActiveRunId, l as isDeaconGloballyPaused, r as getBootReconciliationState, s as init_control_settings } from "./control-settings-D1B3u6HP.js";
19
+ import { c as init_docker_stats, s as DockerStatsCollector } from "./stack-health-Qd7rPiVe.js";
20
+ import { a as queryBeadsForIssue, o as queryReadyBeadsByIssueLabels, r as init_beads_query, s as resolveBeadsQueryRoot } from "./beads-query-e6oku4P5.js";
21
21
  import { n as __filename, r as init_esm_shims } from "./esm-shims-DiV9jHa_.js";
22
- import { O as init_specialists, R as parseReviewerSessionName, T as getTmuxSessionName, at as init_jsonl_parser, d as getAllProjectSpecialistStatuses, it as getSessionFilesSync, rt as getProjectDirsSync, st as parseClaudeSessionSync } from "./specialists-nZ0mRwpZ.js";
23
- import { t as recordDeaconNudge } from "./deacon-nudge-log-CJGA6aSQ.js";
24
- import { n as init_review_monitor, t as REVIEW_SUB_ROLES } from "./review-monitor-BKG2ubt5.js";
25
- import { a as inferBranchFromWorkspace, i as findWorkspacePath, o as init_archive_planning } from "./archive-planning-zTvWWHG_.js";
26
- import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-BO84g03t.js";
27
- import { n as shouldSkipDispatchAsMerged, t as init_merge_verification } from "./merge-verification-DA9rvqsE.js";
28
- import { n as init_review_verdict_feedback, t as deliverReviewVerdictFeedback } from "./review-verdict-feedback-B70VbfRL.js";
22
+ import { O as init_specialists, R as parseReviewerSessionName, T as getTmuxSessionName, at as init_jsonl_parser, d as getAllProjectSpecialistStatuses, it as getSessionFilesSync, rt as getProjectDirsSync, st as parseClaudeSessionSync } from "./specialists-DjHbwQ_p.js";
23
+ import { t as recordDeaconNudge } from "./deacon-nudge-log-B-naf89q.js";
24
+ import { n as init_review_monitor, t as REVIEW_SUB_ROLES } from "./review-monitor-DHD9m_kh.js";
25
+ import { a as inferBranchFromWorkspace, i as findWorkspacePath, o as init_archive_planning } from "./archive-planning-oX1pj6nY.js";
26
+ import { n as init_issue_closed, r as isIssueClosed } from "./issue-closed-Da3DeomA.js";
27
+ import { n as shouldSkipDispatchAsMerged, t as init_merge_verification } from "./merge-verification-BGiuiXAK.js";
28
+ import { n as init_review_verdict_feedback, t as deliverReviewVerdictFeedback } from "./review-verdict-feedback-4WZ5ZdbC.js";
29
29
  import { n as reconcileTraefikNetworks, t as init_traefik_connect } from "./traefik-connect-5EP1WS_Z.js";
30
- import { _ as recordRecoveryFailure, b as listFeatureWorkspaces, g as decideAgentAutonomousRedrive, r as coordinateSwarmSlots } from "./deacon-swarm-aMMJTq6t.js";
30
+ import { _ as recordRecoveryFailure, b as listFeatureWorkspaces, g as decideAgentAutonomousRedrive, r as coordinateSwarmSlots } from "./deacon-swarm-BstYoz8Q.js";
31
31
  import { n as isExplicitNoResumeRequest, t as init_no_resume_mode } from "./no-resume-mode-yrPEQ_pC.js";
32
- import { n as reconcileClosedIssueAgents } from "./closed-issue-reaper-D7XPq5pY.js";
32
+ import { n as reconcileClosedIssueAgents } from "./closed-issue-reaper-BsUfBSjM.js";
33
33
  import { a as RELEASED_LABEL, i as READY_LABEL, n as OBJECTION_LABEL, o as VETOED_LABEL, r as PARKED_LABEL, t as BLOCKS_MAIN_LABEL } from "./pickup-KLRUhThD.js";
34
- import { n as pruneTerminalStoppedAgents } from "./agent-gc-BtAzj8QN.js";
35
- import { a as spawnWorkAgentThroughAgentsEndpoint, i as reconcileOrphanProposedSpecs, o as triggerRebuildAndStart } from "./orphan-proposed-reconciler-Boq_XaRe.js";
36
- import { n as reconcileIdleWorkspaceStacks } from "./idle-stack-reaper-DBKQ9SKu.js";
37
- import { i as readTestVerdictArtifact, n as decideUnsignaledTestAction, r as init_test_verdict } from "./test-verdict-D3Il7cBK.js";
34
+ import { n as pruneTerminalStoppedAgents } from "./agent-gc-CUb52n7s.js";
35
+ import { a as spawnWorkAgentThroughAgentsEndpoint, i as reconcileOrphanProposedSpecs, o as triggerRebuildAndStart } from "./orphan-proposed-reconciler-BSGCNJ6X.js";
36
+ import { n as reconcileIdleWorkspaceStacks } from "./idle-stack-reaper-DGy7tvC9.js";
37
+ import { i as readTestVerdictArtifact, n as decideUnsignaledTestAction, r as init_test_verdict } from "./test-verdict-Bm4uv_AA.js";
38
38
  import { createRequire } from "node:module";
39
+ import { join } from "node:path";
39
40
  import { Effect } from "effect";
40
41
  import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync, rmSync, statSync, unlinkSync, writeFileSync } from "fs";
41
- import { dirname, join } from "path";
42
+ import { dirname as dirname$1, join as join$1 } from "path";
42
43
  import { cpus, homedir, loadavg } from "os";
43
44
  import { cpus as cpus$1, freemem as freemem$1, homedir as homedir$1, loadavg as loadavg$1, platform as platform$1, totalmem as totalmem$1 } from "node:os";
44
45
  import { closeSync as closeSync$1, existsSync as existsSync$1, openSync as openSync$1, readFileSync as readFileSync$1, readdirSync as readdirSync$1, unlinkSync as unlinkSync$1, writeFileSync as writeFileSync$1 } from "node:fs";
45
- import { join as join$1 } from "node:path";
46
46
  import { access, readFile } from "node:fs/promises";
47
47
  import { readFile as readFile$1, readdir as readdir$1, stat as stat$2, writeFile as writeFile$1 } from "fs/promises";
48
48
  import { exec, execFile, spawn } from "node:child_process";
@@ -358,7 +358,7 @@ function isOwnActiveSpecialist(role) {
358
358
  return role === "review" || role === "test" || role === "ship";
359
359
  }
360
360
  function getClaudeProjectDir(workspacePath) {
361
- return join(homedir(), ".claude", "projects", encodeClaudeProjectDir(workspacePath));
361
+ return join$1(homedir(), ".claude", "projects", encodeClaudeProjectDir(workspacePath));
362
362
  }
363
363
  async function getActiveSessionPath(projectDir) {
364
364
  if (!existsSync(projectDir)) return null;
@@ -369,8 +369,8 @@ async function getActiveSessionPath(projectDir) {
369
369
  try {
370
370
  return {
371
371
  name: f,
372
- path: join(projectDir, f),
373
- mtime: (await stat$2(join(projectDir, f))).mtime.getTime()
372
+ path: join$1(projectDir, f),
373
+ mtime: (await stat$2(join$1(projectDir, f))).mtime.getTime()
374
374
  };
375
375
  } catch {
376
376
  return null;
@@ -390,14 +390,14 @@ function getProjectPathByPrefix(issuePrefix) {
390
390
  if (config) {
391
391
  for (const { owner, repo, prefix } of config.repos) if ((prefix || repo.toUpperCase().replace(/-CLI$/, "").replace(/-/g, "")).toUpperCase() === issuePrefix.toUpperCase()) {
392
392
  const possiblePaths = [
393
- join(homedir(), "Projects", repo),
394
- join(homedir(), "Projects", repo.replace(/-cli$/, "")),
395
- join(homedir(), "Projects", owner, repo)
393
+ join$1(homedir(), "Projects", repo),
394
+ join$1(homedir(), "Projects", repo.replace(/-cli$/, "")),
395
+ join$1(homedir(), "Projects", owner, repo)
396
396
  ];
397
397
  for (const path of possiblePaths) if (existsSync(path)) return path;
398
398
  }
399
399
  }
400
- return join(homedir(), "Projects");
400
+ return join$1(homedir(), "Projects");
401
401
  }
402
402
  async function getAgentWorkspacePromise(agentId) {
403
403
  const workspace = getAgentStateSync(agentId)?.workspace;
@@ -412,7 +412,7 @@ async function getAgentWorkspacePromise(agentId) {
412
412
  if (!prefix) return null;
413
413
  try {
414
414
  const projectPath = getProjectPathByPrefix(prefix);
415
- const workspacePath = join(projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
415
+ const workspacePath = join$1(projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
416
416
  if (existsSync(workspacePath)) return workspacePath;
417
417
  return projectPath;
418
418
  } catch {
@@ -445,7 +445,7 @@ async function countPendingAskUserQuestionsForAgentPromise(agentId) {
445
445
  }
446
446
  let total = 0;
447
447
  for (const f of files) try {
448
- const scan = await scanPendingInputsPromise(join(projectDir, f));
448
+ const scan = await scanPendingInputsPromise(join$1(projectDir, f));
449
449
  total += scan.askUserQuestions.length;
450
450
  } catch {}
451
451
  return total;
@@ -22287,9 +22287,9 @@ new ((/* @__PURE__ */ __commonJSMin(((exports, module) => {
22287
22287
  * isSmeeProcessRunning();
22288
22288
  */
22289
22289
  init_errors();
22290
- const SMEE_URL_PATH = join$1(homedir$1(), ".overdeck", "github-app", "smee-url");
22291
- const SMEE_PID_PATH = join$1(homedir$1(), ".overdeck", "github-app", "smee.pid");
22292
- const SMEE_LOG_PATH = join$1(homedir$1(), ".overdeck", "logs", "smee.log");
22290
+ const SMEE_URL_PATH = join(homedir$1(), ".overdeck", "github-app", "smee-url");
22291
+ const SMEE_PID_PATH = join(homedir$1(), ".overdeck", "github-app", "smee.pid");
22292
+ const SMEE_LOG_PATH = join(homedir$1(), ".overdeck", "logs", "smee.log");
22293
22293
  const require$1 = createRequire(import.meta.url);
22294
22294
  function getSmeeUrl() {
22295
22295
  try {
@@ -22464,7 +22464,7 @@ const DEFAULT_RESOURCE_CONFIG = {
22464
22464
  };
22465
22465
  const KB = 1024;
22466
22466
  const GIB$1 = 1024 ** 3;
22467
- const GLOBAL_CONFIG_PATH = join$1(homedir$1(), ".overdeck", "config.yaml");
22467
+ const GLOBAL_CONFIG_PATH = join(homedir$1(), ".overdeck", "config.yaml");
22468
22468
  let dockerStatsCollector$1 = null;
22469
22469
  let previousCpuSample = null;
22470
22470
  let previousCpuSampleAt = 0;
@@ -23124,7 +23124,7 @@ init_agents$1();
23124
23124
  init_tmux();
23125
23125
  init_jsonl_parser();
23126
23126
  init_errors();
23127
- const CLAUDE_PROJECTS_DIR = join(homedir(), ".claude", "projects");
23127
+ const CLAUDE_PROJECTS_DIR = join$1(homedir(), ".claude", "projects");
23128
23128
  /**
23129
23129
  * Claude Code Runtime implementation
23130
23130
  */
@@ -23143,7 +23143,7 @@ var ClaudeCodeRuntimeSync = class {
23143
23143
  if (!existsSync(CLAUDE_PROJECTS_DIR)) return null;
23144
23144
  const projectDirs = getProjectDirsSync();
23145
23145
  for (const projectDir of projectDirs) {
23146
- const indexPath = join(projectDir, "sessions-index.json");
23146
+ const indexPath = join$1(projectDir, "sessions-index.json");
23147
23147
  if (existsSync(indexPath)) try {
23148
23148
  if (readFileSync(indexPath, "utf-8").includes(workspace)) return projectDir;
23149
23149
  } catch {}
@@ -23154,7 +23154,7 @@ var ClaudeCodeRuntimeSync = class {
23154
23154
  * Get the active session ID for an agent from the sessions index
23155
23155
  */
23156
23156
  getActiveSessionId(projectDir) {
23157
- const indexPath = join(projectDir, "sessions-index.json");
23157
+ const indexPath = join$1(projectDir, "sessions-index.json");
23158
23158
  if (!existsSync(indexPath)) return null;
23159
23159
  try {
23160
23160
  const indexContent = readFileSync(indexPath, "utf-8");
@@ -23186,7 +23186,7 @@ var ClaudeCodeRuntimeSync = class {
23186
23186
  if (!projectDir) return null;
23187
23187
  const sessionId = this.getActiveSessionId(projectDir);
23188
23188
  if (sessionId) {
23189
- const sessionPath = join(projectDir, `${sessionId}.jsonl`);
23189
+ const sessionPath = join$1(projectDir, `${sessionId}.jsonl`);
23190
23190
  if (existsSync(sessionPath)) return sessionPath;
23191
23191
  }
23192
23192
  return this.getMostRecentJSONL(projectDir);
@@ -23209,7 +23209,7 @@ var ClaudeCodeRuntimeSync = class {
23209
23209
  * Read active heartbeat file if it exists
23210
23210
  */
23211
23211
  getActiveHeartbeat(agentId) {
23212
- const heartbeatPath = join(homedir(), ".overdeck", "heartbeats", `${agentId}.json`);
23212
+ const heartbeatPath = join$1(homedir(), ".overdeck", "heartbeats", `${agentId}.json`);
23213
23213
  if (!existsSync(heartbeatPath)) return null;
23214
23214
  try {
23215
23215
  const content = readFileSync(heartbeatPath, "utf-8");
@@ -23298,9 +23298,9 @@ var ClaudeCodeRuntimeSync = class {
23298
23298
  async sendMessage(agentId, message) {
23299
23299
  if (!sessionExistsSync(agentId)) throw new Error(`Agent ${agentId} is not running`);
23300
23300
  await Effect.runPromise(sendKeys(agentId, message));
23301
- const mailDir = join(getAgentDir(agentId), "mail");
23301
+ const mailDir = join$1(getAgentDir(agentId), "mail");
23302
23302
  mkdirSync(mailDir, { recursive: true });
23303
- writeFileSync(join(mailDir, `${(/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-")}.md`), `# Message\n\n${message}\n`);
23303
+ writeFileSync(join$1(mailDir, `${(/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-")}.md`), `# Message\n\n${message}\n`);
23304
23304
  }
23305
23305
  /**
23306
23306
  * Kill an agent
@@ -23526,7 +23526,7 @@ async function checkInspectAgentTimeouts(now = /* @__PURE__ */ new Date()) {
23526
23526
  console.warn(`[deacon] Failed to kill inspect session ${sessionName}: ${msg}`);
23527
23527
  });
23528
23528
  try {
23529
- const { messageAgent } = await import("./agents-C-vqmKDi.js");
23529
+ const { messageAgent } = await import("./agents-C4kZ8a2r.js");
23530
23530
  await messageAgent(`agent-${issueId.toLowerCase()}`, verdict, "deacon:inspect-watchdog");
23531
23531
  } catch (err) {
23532
23532
  const msg = err instanceof Error ? err.message : String(err);
@@ -23689,7 +23689,7 @@ async function maybeProactivelyCompactContext(sessionName, now) {
23689
23689
  if (!sessionName.startsWith("agent-")) return null;
23690
23690
  let lastAttempt = contextProactiveCompactState.get(sessionName)?.lastAttempt ?? 0;
23691
23691
  if (!lastAttempt) try {
23692
- const stamp = await readFile$1(join(getAgentDir(sessionName), PROACTIVE_COMPACT_STAMP_FILE), "utf-8");
23692
+ const stamp = await readFile$1(join$1(getAgentDir(sessionName), PROACTIVE_COMPACT_STAMP_FILE), "utf-8");
23693
23693
  const parsed = Date.parse(stamp.trim());
23694
23694
  if (!Number.isNaN(parsed)) lastAttempt = parsed;
23695
23695
  } catch {}
@@ -23701,7 +23701,7 @@ async function maybeProactivelyCompactContext(sessionName, now) {
23701
23701
  if (!agentState?.workspace || !sessionId || !agentState.model) return null;
23702
23702
  let usage = null;
23703
23703
  try {
23704
- const { computeContextUsage } = await import("./conversation-service-WKl-sw58.js");
23704
+ const { computeContextUsage } = await import("./conversation-service-CkL-6MuG.js");
23705
23705
  usage = await computeContextUsage(sessionFilePath(agentState.workspace, sessionId), agentState.model);
23706
23706
  } catch {
23707
23707
  return null;
@@ -23710,7 +23710,7 @@ async function maybeProactivelyCompactContext(sessionName, now) {
23710
23710
  await Effect.runPromise(sendKeys(sessionName, "/compact"));
23711
23711
  contextProactiveCompactState.set(sessionName, { lastAttempt: now });
23712
23712
  try {
23713
- await writeFile$1(join(getAgentDir(sessionName), PROACTIVE_COMPACT_STAMP_FILE), new Date(now).toISOString(), "utf-8");
23713
+ await writeFile$1(join$1(getAgentDir(sessionName), PROACTIVE_COMPACT_STAMP_FILE), new Date(now).toISOString(), "utf-8");
23714
23714
  } catch {}
23715
23715
  emitActivityEntrySync({
23716
23716
  source: "cloister",
@@ -23798,13 +23798,13 @@ async function checkApiErrorAgents() {
23798
23798
  const st = getAgentStateSync(sessionName);
23799
23799
  const sid = st?.sessionId ?? runtimeState?.claudeSessionId;
23800
23800
  if (st?.workspace && sid && st.model) {
23801
- const { computeContextUsage } = await import("./conversation-service-WKl-sw58.js");
23801
+ const { computeContextUsage } = await import("./conversation-service-CkL-6MuG.js");
23802
23802
  const usage = await computeContextUsage(sessionFilePath(st.workspace, sid), st.model);
23803
23803
  if (usage && usage.percentUsed < 85) recoveredPct = usage.percentUsed;
23804
23804
  }
23805
23805
  } catch {}
23806
23806
  if (recoveredPct !== null) {
23807
- const { clearWorkspaceStuck } = await import("./review-status-sync-BxHBVH8s.js");
23807
+ const { clearWorkspaceStuck } = await import("./review-status-sync-B_GrEke8.js");
23808
23808
  clearWorkspaceStuck(issueId);
23809
23809
  stuckOverflowNativeRecoveryState.delete(sessionName);
23810
23810
  actions.push(`Context overflow recovery: cleared stuck flag for ${sessionName} (context back to ${Math.round(recoveredPct)}%)`);
@@ -23820,7 +23820,7 @@ async function checkApiErrorAgents() {
23820
23820
  rec.attempts += 1;
23821
23821
  rec.lastAttempt = now;
23822
23822
  stuckOverflowNativeRecoveryState.set(sessionName, rec);
23823
- const { resumeAgent } = await import("./agents-C-vqmKDi.js");
23823
+ const { resumeAgent } = await import("./agents-C4kZ8a2r.js");
23824
23824
  const recovered = await resumeAgent(sessionName, void 0, { compact: true });
23825
23825
  if (recovered.success) {
23826
23826
  stuckOverflowNativeRecoveryState.delete(sessionName);
@@ -23868,7 +23868,7 @@ async function checkApiErrorAgents() {
23868
23868
  }
23869
23869
  const compactAttempts = (ov?.compactAttempts ?? 0) + 1;
23870
23870
  if (issueId !== null) {
23871
- const { resumeAgent } = await import("./agents-C-vqmKDi.js");
23871
+ const { resumeAgent } = await import("./agents-C4kZ8a2r.js");
23872
23872
  const resumeResult = await resumeAgent(sessionName, void 0, { compact: true });
23873
23873
  contextOverflowRecoveryState.set(sessionName, {
23874
23874
  lastAttempt: now,
@@ -24233,7 +24233,7 @@ function reviewConvoyLiveness(issueId) {
24233
24233
  */
24234
24234
  async function recoverUnhealthyTestStack(issueId, workspacePath) {
24235
24235
  const key = issueId.toUpperCase();
24236
- const { getWorkspaceStackHealth } = await import("./stack-health-Deel1mSW.js");
24236
+ const { getWorkspaceStackHealth } = await import("./stack-health-BFM8YlHw.js");
24237
24237
  const health = await Effect.runPromise(getWorkspaceStackHealth(issueId, { workspacePath }));
24238
24238
  if (health.healthy) {
24239
24239
  testStackRebuildState.delete(key);
@@ -24265,7 +24265,7 @@ async function recoverUnhealthyTestStack(issueId, workspacePath) {
24265
24265
  record.attempts += 1;
24266
24266
  testStackRebuildState.set(key, record);
24267
24267
  console.log(`[deacon] Test stack for ${key} unhealthy (${health.reasons.join("; ")}) — rebuilding (attempt ${record.attempts}/${TEST_STACK_REBUILD_MAX_ATTEMPTS})`);
24268
- const { rebuildWorkspaceStack } = await import("./rebuild-stack-ByFCMqTK.js");
24268
+ const { rebuildWorkspaceStack } = await import("./rebuild-stack-CXSgAGPR.js");
24269
24269
  const result = await Effect.runPromise(rebuildWorkspaceStack(issueId, { onProgress: (m) => console.log(`[deacon] ${key} stack rebuild: ${m}`) }));
24270
24270
  if (!result.success) {
24271
24271
  console.warn(`[deacon] Test stack rebuild failed for ${key}: ${result.error}`);
@@ -24393,7 +24393,7 @@ async function handleReviewCoordinatorDied(issueId, _sessionName, _reason) {
24393
24393
  return actions;
24394
24394
  }
24395
24395
  try {
24396
- const { spawnReviewRoleForIssue } = await import("./review-agent-DTINEffB.js");
24396
+ const { spawnReviewRoleForIssue } = await import("./review-agent-uwVftH98.js");
24397
24397
  const dispatchResult = await Effect.runPromise(spawnReviewRoleForIssue({
24398
24398
  issueId,
24399
24399
  workspace,
@@ -24466,7 +24466,7 @@ async function reconcileReviewStatusOrphan(issueId, rawStatus) {
24466
24466
  try {
24467
24467
  const project = resolveProjectFromIssueSync(issueId);
24468
24468
  if (project) {
24469
- const workspacePath = join(project.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
24469
+ const workspacePath = join$1(project.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
24470
24470
  if (existsSync(workspacePath)) {
24471
24471
  const { stdout } = await execAsync$5("git rev-parse HEAD", { cwd: workspacePath });
24472
24472
  reviewUpdate["reviewedAtCommit"] = stdout.trim();
@@ -24516,14 +24516,14 @@ async function reconcileReviewStatusOrphan(issueId, rawStatus) {
24516
24516
  return actions;
24517
24517
  }
24518
24518
  const agentIdForCheck = `agent-${issueId.toLowerCase()}`;
24519
- if (!existsSync(join(AGENTS_DIR, agentIdForCheck, "completed.processed"))) return actions;
24519
+ if (!existsSync(join$1(AGENTS_DIR, agentIdForCheck, "completed.processed"))) return actions;
24520
24520
  const agentState = getAgentStateSync(agentIdForCheck);
24521
24521
  const resolved = resolveProjectFromIssueSync(issueId);
24522
24522
  const issueLower = issueId.toLowerCase();
24523
24523
  const workspace = agentState?.workspace || (resolved ? findWorkspacePath(resolved.projectPath, issueLower) : null);
24524
24524
  if (workspace && resolved && !tryReserveAdvancingSlot() && !await tryYieldForAdvancingDispatch("review", issueId)) actions.push(`Deferred review re-dispatch for ${issueId} — advancing-role concurrency ceiling reached`);
24525
24525
  else if (workspace && resolved) try {
24526
- const { spawnReviewRoleForIssue } = await import("./review-agent-DTINEffB.js");
24526
+ const { spawnReviewRoleForIssue } = await import("./review-agent-uwVftH98.js");
24527
24527
  const dispatchResult = await Effect.runPromise(spawnReviewRoleForIssue({
24528
24528
  issueId,
24529
24529
  workspace,
@@ -24548,8 +24548,8 @@ async function reconcileReviewStatusOrphan(issueId, rawStatus) {
24548
24548
  const workspace = agentState?.workspace || (resolved ? findWorkspacePath(resolved.projectPath, issueLower) : null);
24549
24549
  if (workspace && resolved) {
24550
24550
  const branch = `feature/${issueLower}`;
24551
- const { spawnRun } = await import("./agents-C-vqmKDi.js");
24552
- const { buildTestRolePrompt } = await import("./test-agent-queue-B_ukPyIK.js");
24551
+ const { spawnRun } = await import("./agents-C4kZ8a2r.js");
24552
+ const { buildTestRolePrompt } = await import("./test-agent-queue-TiVXe3ZT.js");
24553
24553
  const stackRecovery = await recoverUnhealthyTestStack(issueId, workspace);
24554
24554
  if (stackRecovery === "cooldown" || stackRecovery === "exhausted") {
24555
24555
  setReviewStatusSync(issueId, { testStatus: "dispatch_failed" });
@@ -24687,7 +24687,7 @@ async function recoverStalledReviewConvoys(getCanonicalState = getAutoCloseOutCa
24687
24687
  record.lastAttempt = now;
24688
24688
  record.attempts += 1;
24689
24689
  stalledReviewConvoyRecoveryState.set(key, record);
24690
- const { spawnReviewRoleForIssue } = await import("./review-agent-DTINEffB.js");
24690
+ const { spawnReviewRoleForIssue } = await import("./review-agent-uwVftH98.js");
24691
24691
  try {
24692
24692
  const result = await Effect.runPromise(spawnReviewRoleForIssue({
24693
24693
  issueId,
@@ -24727,8 +24727,8 @@ async function checkMissingReviewStatuses() {
24727
24727
  if (!agent.id.startsWith("agent-")) continue;
24728
24728
  const issueId = agent.id.replace("agent-", "").toUpperCase();
24729
24729
  if (statuses[issueId]) continue;
24730
- const completedFile = join(AGENTS_DIR, agent.id, "completed");
24731
- const processedFile = join(AGENTS_DIR, agent.id, "completed.processed");
24730
+ const completedFile = join$1(AGENTS_DIR, agent.id, "completed");
24731
+ const processedFile = join$1(AGENTS_DIR, agent.id, "completed.processed");
24732
24732
  if (!existsSync(completedFile) && !existsSync(processedFile)) continue;
24733
24733
  const rowCreated = await handleWorkCompleted(issueId);
24734
24734
  actions.push(...rowCreated);
@@ -24758,7 +24758,7 @@ async function checkMissingReviewStatuses() {
24758
24758
  continue;
24759
24759
  }
24760
24760
  try {
24761
- const { spawnReviewRoleForIssue } = await import("./review-agent-DTINEffB.js");
24761
+ const { spawnReviewRoleForIssue } = await import("./review-agent-uwVftH98.js");
24762
24762
  await Effect.runPromise(spawnReviewRoleForIssue({
24763
24763
  issueId,
24764
24764
  workspace,
@@ -24809,7 +24809,7 @@ async function checkStuckReviewing() {
24809
24809
  const actions = [];
24810
24810
  const REVIEW_STUCK_THRESHOLD_MS = 1800 * 1e3;
24811
24811
  try {
24812
- const { loadReviewStatuses, setReviewStatusSync } = await import("./review-status-h7BXIA4z.js");
24812
+ const { loadReviewStatuses, setReviewStatusSync } = await import("./review-status-JhQ3qlDS.js");
24813
24813
  const statuses = loadReviewStatuses();
24814
24814
  const now = Date.now();
24815
24815
  const activeReviewIssues = /* @__PURE__ */ new Set();
@@ -24825,7 +24825,7 @@ async function checkStuckReviewing() {
24825
24825
  if (rState?.state === "active" && rState.currentIssue) activeReviewIssues.add(rState.currentIssue.toUpperCase());
24826
24826
  }
24827
24827
  try {
24828
- const { listRunningAgents } = await import("./agents-C-vqmKDi.js");
24828
+ const { listRunningAgents } = await import("./agents-C4kZ8a2r.js");
24829
24829
  const agents = await Effect.runPromise(listRunningAgents());
24830
24830
  for (const agent of agents) {
24831
24831
  if (agent.status === "stopped" || agent.status === "error") continue;
@@ -24876,7 +24876,7 @@ function isSynthesisForActiveReviewRun(dirPath, status, synthesisMtimeMs) {
24876
24876
  const spawnedAtMs = Date.parse(status.reviewSpawnedAt);
24877
24877
  if (!Number.isFinite(spawnedAtMs)) return true;
24878
24878
  if (synthesisMtimeMs < spawnedAtMs) return false;
24879
- const contextPath = join(dirPath, "context.json");
24879
+ const contextPath = join$1(dirPath, "context.json");
24880
24880
  if (!existsSync(contextPath)) return false;
24881
24881
  let context;
24882
24882
  try {
@@ -24903,14 +24903,14 @@ async function checkCompletedButUnsignaledReviews() {
24903
24903
  if (!resolved) continue;
24904
24904
  const wsPath = findWorkspacePath(resolved.projectPath, issueId.toLowerCase());
24905
24905
  if (!wsPath) continue;
24906
- const reviewBaseDir = join(wsPath, ".pan", "review");
24906
+ const reviewBaseDir = join$1(wsPath, ".pan", "review");
24907
24907
  if (!existsSync(reviewBaseDir)) continue;
24908
24908
  let latestDir = null;
24909
24909
  let latestMtime = 0;
24910
24910
  for (const entry of readdirSync(reviewBaseDir)) {
24911
24911
  if (!entry.startsWith(`agent-${issueId.toLowerCase()}-review`)) continue;
24912
- const dirPath = join(reviewBaseDir, entry);
24913
- const synthPath = join(dirPath, "synthesis.md");
24912
+ const dirPath = join$1(reviewBaseDir, entry);
24913
+ const synthPath = join$1(dirPath, "synthesis.md");
24914
24914
  if (!existsSync(synthPath)) continue;
24915
24915
  const mtime = statSync(synthPath).mtimeMs;
24916
24916
  if (!isSynthesisForActiveReviewRun(dirPath, status, mtime)) continue;
@@ -24927,8 +24927,8 @@ async function checkCompletedButUnsignaledReviews() {
24927
24927
  const sessionAlive = sessionExistsSync(reviewSession);
24928
24928
  const paneDead = sessionAlive ? await Effect.runPromise(isPaneDead(reviewSession)).catch(() => true) : true;
24929
24929
  const activeReviewState = sessionAlive && !paneDead ? getAgentStateSync(reviewSession) : null;
24930
- if (activeReviewState?.reviewRunId && latestDir !== join(reviewBaseDir, activeReviewState.reviewRunId)) continue;
24931
- const synthesisPath = join(latestDir, "synthesis.md");
24930
+ if (activeReviewState?.reviewRunId && latestDir !== join$1(reviewBaseDir, activeReviewState.reviewRunId)) continue;
24931
+ const synthesisPath = join$1(latestDir, "synthesis.md");
24932
24932
  let verdict = null;
24933
24933
  let topBlocker = "";
24934
24934
  try {
@@ -24958,7 +24958,7 @@ async function checkCompletedButUnsignaledReviews() {
24958
24958
  }
24959
24959
  const nudge = `Your review synthesis is already written and saved. Your ONLY remaining task is to execute this Bash command immediately — do not analyze, do not summarize, do not ask questions, just run it:\n\n${`pan admin specialists done review ${issueId} --status ${verdict}${verdict === "blocked" || verdict === "failed" ? ` --notes "${topBlocker || "See synthesis.md"}"` : ""}`}\n\nRun this command NOW. Do not write any other response before executing it.`;
24960
24960
  try {
24961
- const { messageAgent } = await import("./agents-C-vqmKDi.js");
24961
+ const { messageAgent } = await import("./agents-C4kZ8a2r.js");
24962
24962
  await messageAgent(reviewSession, nudge);
24963
24963
  unsignaledReviewNudges.set(latestDir, now);
24964
24964
  actions.push(`Nudged ${reviewSession} to signal ${verdict} (synthesis written ${Math.round((now - latestMtime) / 6e4)}min ago)`);
@@ -25079,8 +25079,8 @@ async function respawnIdleReviewer(state, agentId) {
25079
25079
  return false;
25080
25080
  }
25081
25081
  try {
25082
- const { spawnReviewSubRoleForIssue } = await import("./review-agent-DTINEffB.js");
25083
- const contextManifestPath = join(dirname(outputPath), "context.json");
25082
+ const { spawnReviewSubRoleForIssue } = await import("./review-agent-uwVftH98.js");
25083
+ const contextManifestPath = join$1(dirname$1(outputPath), "context.json");
25084
25084
  const result = await Effect.runPromise(spawnReviewSubRoleForIssue({
25085
25085
  issueId: state.issueId,
25086
25086
  workspace: state.workspace,
@@ -25116,14 +25116,14 @@ async function nudgeSynthesisForCompleteReviewerReports(states) {
25116
25116
  for (const state of synthesisStates) {
25117
25117
  const status = getReviewStatusSync(state.issueId);
25118
25118
  if (!status || status.reviewStatus !== "reviewing") continue;
25119
- const reviewDir = join(state.workspace, ".pan", "review", state.reviewRunId);
25120
- if (existsSync(join(reviewDir, "synthesis.md"))) continue;
25119
+ const reviewDir = join$1(state.workspace, ".pan", "review", state.reviewRunId);
25120
+ if (existsSync(join$1(reviewDir, "synthesis.md"))) continue;
25121
25121
  const startedMs = Date.parse(state.startedAt);
25122
25122
  const readyLines = [];
25123
25123
  const reports = [];
25124
25124
  let allReportsPresent = true;
25125
25125
  for (const subRole of REVIEW_SUB_ROLES) {
25126
- const outputPath = join(reviewDir, `${subRole}.md`);
25126
+ const outputPath = join$1(reviewDir, `${subRole}.md`);
25127
25127
  if (!existsSync(outputPath)) {
25128
25128
  allReportsPresent = false;
25129
25129
  break;
@@ -25162,7 +25162,7 @@ async function nudgeSynthesisForCompleteReviewerReports(states) {
25162
25162
  reviewDir,
25163
25163
  reports
25164
25164
  });
25165
- writeFileSync(join(reviewDir, "synthesis.md"), synthesis.body);
25165
+ writeFileSync(join$1(reviewDir, "synthesis.md"), synthesis.body);
25166
25166
  let fallbackHead;
25167
25167
  try {
25168
25168
  const { execFile } = await import("node:child_process");
@@ -25208,7 +25208,7 @@ async function nudgeSynthesisForCompleteReviewerReports(states) {
25208
25208
  "Read the four reports, write synthesis.md, then signal review status exactly as roles/review.md instructs."
25209
25209
  ].join("\n");
25210
25210
  try {
25211
- const { messageAgent } = await import("./agents-C-vqmKDi.js");
25211
+ const { messageAgent } = await import("./agents-C4kZ8a2r.js");
25212
25212
  await messageAgent(state.id, message);
25213
25213
  reviewReportsPresentNudges.set(nudgeKey, now);
25214
25214
  const action = `Nudged ${state.id} to synthesize from ${REVIEW_SUB_ROLES.length} reviewer reports`;
@@ -25239,7 +25239,7 @@ async function monitorReviewConvoySignals() {
25239
25239
  if (!state.reviewSubRole || !state.reviewSynthesisAgentId) continue;
25240
25240
  if (state.reviewMonitorSignaled) continue;
25241
25241
  const startedMs = Date.parse(state.startedAt);
25242
- const signalMarker = join(AGENTS_DIR, agentId, "reviewer-signaled");
25242
+ const signalMarker = join$1(AGENTS_DIR, agentId, "reviewer-signaled");
25243
25243
  if (existsSync(signalMarker)) try {
25244
25244
  if (Number.isFinite(startedMs) && statSync(signalMarker).mtimeMs >= startedMs) continue;
25245
25245
  } catch {}
@@ -25287,7 +25287,7 @@ async function monitorReviewConvoySignals() {
25287
25287
  if (!signal) continue;
25288
25288
  const message = signal === "ready" ? `REVIEWER_READY ${state.reviewSubRole} ${outputPath}` : signal === "timeout" ? `REVIEWER_TIMEOUT ${state.reviewSubRole} ${reason}` : `REVIEWER_FAILED ${state.reviewSubRole} ${reason}`;
25289
25289
  try {
25290
- const { messageAgent } = await import("./agents-C-vqmKDi.js");
25290
+ const { messageAgent } = await import("./agents-C4kZ8a2r.js");
25291
25291
  await messageAgent(state.reviewSynthesisAgentId, message);
25292
25292
  state.reviewMonitorSignaled = signal;
25293
25293
  saveAgentStateSync(state);
@@ -25295,7 +25295,7 @@ async function monitorReviewConvoySignals() {
25295
25295
  actions.push(action);
25296
25296
  logDeaconEventSync(`monitorReviewConvoySignals: ${action}`);
25297
25297
  if (signal === "ready") try {
25298
- const { notifyPipelineSync } = await import("./pipeline-notifier-lwMa--Gz.js");
25298
+ const { notifyPipelineSync } = await import("./pipeline-notifier-BtYHbBPl.js");
25299
25299
  notifyPipelineSync({
25300
25300
  type: "reviewer_completed",
25301
25301
  issueId: state.issueId,
@@ -25303,7 +25303,7 @@ async function monitorReviewConvoySignals() {
25303
25303
  });
25304
25304
  } catch {}
25305
25305
  else if (signal === "timeout") try {
25306
- const { notifyPipelineSync } = await import("./pipeline-notifier-lwMa--Gz.js");
25306
+ const { notifyPipelineSync } = await import("./pipeline-notifier-BtYHbBPl.js");
25307
25307
  notifyPipelineSync({
25308
25308
  type: "reviewer_timed_out",
25309
25309
  issueId: state.issueId,
@@ -25403,7 +25403,7 @@ const FORK_CACHE_CHECK_DELAY_MS = 180 * 1e3;
25403
25403
  async function checkStalledReviewDiscovery() {
25404
25404
  const actions = [];
25405
25405
  try {
25406
- const { listAgentStates } = await import("./agents-C-vqmKDi.js");
25406
+ const { listAgentStates } = await import("./agents-C4kZ8a2r.js");
25407
25407
  const states = listAgentStates();
25408
25408
  const now = Date.now();
25409
25409
  for (const state of states) {
@@ -25412,7 +25412,7 @@ async function checkStalledReviewDiscovery() {
25412
25412
  const aged = Number.isFinite(startedMs) && now - startedMs > 48e4;
25413
25413
  const dead = !await Effect.runPromise(sessionExists(state.id)).catch(() => false) || await Effect.runPromise(isPaneDead(state.id)).catch(() => true);
25414
25414
  if (!aged && !dead) continue;
25415
- const { handleReviewDiscoveryReady } = await import("./review-agent-DTINEffB.js");
25415
+ const { handleReviewDiscoveryReady } = await import("./review-agent-uwVftH98.js");
25416
25416
  const result = await handleReviewDiscoveryReady(state.issueId, { source: dead ? "deacon-backstop (parent dead)" : "deacon-backstop (discovery timeout)" });
25417
25417
  actions.push(result.message);
25418
25418
  logDeaconEventSync(`checkStalledReviewDiscovery: ${result.message}`);
@@ -25435,8 +25435,8 @@ async function checkStalledReviewDiscovery() {
25435
25435
  async function checkStalledReviewParents() {
25436
25436
  const actions = [];
25437
25437
  try {
25438
- const { listAgentStates, markAgentStoppedState } = await import("./agents-C-vqmKDi.js");
25439
- const { PARENT_REVIEW_TIMEOUT_MS } = await import("./review-agent-DTINEffB.js");
25438
+ const { listAgentStates, markAgentStoppedState } = await import("./agents-C4kZ8a2r.js");
25439
+ const { PARENT_REVIEW_TIMEOUT_MS } = await import("./review-agent-uwVftH98.js");
25440
25440
  const states = listAgentStates();
25441
25441
  const now = Date.now();
25442
25442
  for (const state of states) {
@@ -25485,8 +25485,8 @@ async function checkStalledReviewParents() {
25485
25485
  async function checkReviewForkCacheMisses() {
25486
25486
  const actions = [];
25487
25487
  try {
25488
- const { listAgentStates, saveAgentState } = await import("./agents-C-vqmKDi.js");
25489
- const { readEventsSync } = await import("./events-BlzVUyTx.js");
25488
+ const { listAgentStates, saveAgentState } = await import("./agents-C4kZ8a2r.js");
25489
+ const { readEventsSync } = await import("./events-DLRxpSuV.js");
25490
25490
  const { emitActivityEntrySync } = await import("./activity-logger-DvYvFhwZ.js");
25491
25491
  const states = listAgentStates();
25492
25492
  const now = Date.now();
@@ -25633,7 +25633,7 @@ async function reconcileStaleMergeStatus() {
25633
25633
  if (!project) continue;
25634
25634
  let specStatus;
25635
25635
  try {
25636
- const { findSpecByIssue } = await import("./specs-DeS98l_p.js");
25636
+ const { findSpecByIssue } = await import("./specs-CVH1kvz3.js");
25637
25637
  const spec = await Effect.runPromise(findSpecByIssue(project.projectPath, issueId));
25638
25638
  specStatus = spec?.status;
25639
25639
  if (spec && (spec.status === "completed" || spec.status === "cancelled")) {
@@ -25648,7 +25648,7 @@ async function reconcileStaleMergeStatus() {
25648
25648
  if (branchTip.stdout.trim() === mainTip.stdout.trim()) console.log(`[deacon] ${issueId}: branch ${branch} points at main; not treating zero-commit branch as merged`);
25649
25649
  } catch {}
25650
25650
  if (!isMerged) {
25651
- const { resolveGitHubIssueSync: _resolveGitHubIssue } = await import("./tracker-utils-D6B8scEw.js");
25651
+ const { resolveGitHubIssueSync: _resolveGitHubIssue } = await import("./tracker-utils-Bg-Sevcv.js");
25652
25652
  const ghResolved = _resolveGitHubIssue(issueId);
25653
25653
  if (ghResolved.isGitHub) try {
25654
25654
  const { stdout } = await execFileAsync$4("gh", [
@@ -25685,7 +25685,7 @@ async function reconcileStaleMergeStatus() {
25685
25685
  actions.push(msg);
25686
25686
  console.log(`[deacon] ${msg}`);
25687
25687
  try {
25688
- const { postMergeLifecycle } = await import("./merge-agent-7nBiCytp.js");
25688
+ const { postMergeLifecycle } = await import("./merge-agent-CfohxFWM.js");
25689
25689
  postMergeLifecycle(issueId, project.projectPath, branch, { skipDeploy: true }).catch((err) => console.warn(`[deacon] postMergeLifecycle (reconcile) failed for ${issueId}: ${err}`));
25690
25690
  } catch (err) {
25691
25691
  console.warn(`[deacon] Could not import postMergeLifecycle: ${err}`);
@@ -25710,7 +25710,7 @@ const falseMergedReset = /* @__PURE__ */ new Set();
25710
25710
  async function reconcileFalseMerged() {
25711
25711
  const actions = [];
25712
25712
  try {
25713
- const { getPullRequestState, isGitHubAppConfigured } = await import("./github-app-B5PDHMyn.js");
25713
+ const { getPullRequestState, isGitHubAppConfigured } = await import("./github-app-C7lftMNj.js");
25714
25714
  if (!isGitHubAppConfigured()) return actions;
25715
25715
  const statuses = loadReviewStatuses();
25716
25716
  for (const [issueId, status] of Object.entries(statuses)) {
@@ -25755,7 +25755,7 @@ const CLOSED_PR_RECONCILE_COOLDOWN_MS = 600 * 1e3;
25755
25755
  async function reconcileClosedPrReadyForMerge() {
25756
25756
  const actions = [];
25757
25757
  try {
25758
- const { getPullRequestState, isGitHubAppConfigured } = await import("./github-app-B5PDHMyn.js");
25758
+ const { getPullRequestState, isGitHubAppConfigured } = await import("./github-app-C7lftMNj.js");
25759
25759
  if (!isGitHubAppConfigured()) return actions;
25760
25760
  const statuses = loadReviewStatuses();
25761
25761
  const now = Date.now();
@@ -25827,7 +25827,7 @@ const STALE_MERGE_BLOCKER_COOLDOWN_MS = 120 * 1e3;
25827
25827
  async function reconcileStaleMergeBlockers() {
25828
25828
  const actions = [];
25829
25829
  try {
25830
- const { resolveConflictGate, buildRealConflictGateDeps } = await import("./conflict-gate-DwOslTij.js");
25830
+ const { resolveConflictGate, buildRealConflictGateDeps } = await import("./conflict-gate-Ds9_2yjd.js");
25831
25831
  const statuses = loadReviewStatuses();
25832
25832
  const now = Date.now();
25833
25833
  const deps = buildRealConflictGateDeps();
@@ -25839,7 +25839,7 @@ async function reconcileStaleMergeBlockers() {
25839
25839
  staleMergeBlockerCooldowns.set(issueId, now + STALE_MERGE_BLOCKER_COOLDOWN_MS);
25840
25840
  const resolved = resolveProjectFromIssueSync(issueId);
25841
25841
  if (!resolved) continue;
25842
- const workspacePath = join(resolved.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
25842
+ const workspacePath = join$1(resolved.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
25843
25843
  if (!existsSync(workspacePath)) continue;
25844
25844
  try {
25845
25845
  if ((await resolveConflictGate(issueId, workspacePath, "main", deps)).clearedStaleBlocker) {
@@ -25970,7 +25970,7 @@ async function checkFailedMergeRetry() {
25970
25970
  if (ciEntry.count === 5) {
25971
25971
  console.log(`[deacon] CI check failure for ${issueId} — retries exhausted, notifying work agent`);
25972
25972
  const ciNotes = status.mergeNotes || "CI checks are failing on the PR";
25973
- const { writeFeedbackFile } = await import("./feedback-writer-thrdxYpK.js");
25973
+ const { writeFeedbackFile } = await import("./feedback-writer-DMBdS_jL.js");
25974
25974
  const ciFileResult = await Effect.runPromise(writeFeedbackFile({
25975
25975
  issueId,
25976
25976
  specialist: "merge-agent",
@@ -26002,7 +26002,7 @@ async function checkFailedMergeRetry() {
26002
26002
  ciRetryMap.set(issueId, ciEntry);
26003
26003
  console.log(`[deacon] CI check failure for ${issueId} — notifying agent to re-submit (attempt ${ciEntry.count}/5)`);
26004
26004
  const ciNotes = status.mergeNotes || "CI checks are failing on the PR";
26005
- const { writeFeedbackFile } = await import("./feedback-writer-thrdxYpK.js");
26005
+ const { writeFeedbackFile } = await import("./feedback-writer-DMBdS_jL.js");
26006
26006
  const ciFileResult2 = await Effect.runPromise(writeFeedbackFile({
26007
26007
  issueId,
26008
26008
  specialist: "merge-agent",
@@ -26030,7 +26030,7 @@ async function checkFailedMergeRetry() {
26030
26030
  const lastNudge = timeoutNudgeCooldowns.get(issueIdForFb);
26031
26031
  if (!lastNudge || now - lastNudge >= TIMEOUT_NUDGE_COOLDOWN_MS) {
26032
26032
  const timeoutNotes = status.mergeNotes;
26033
- const { writeFeedbackFile } = await import("./feedback-writer-thrdxYpK.js");
26033
+ const { writeFeedbackFile } = await import("./feedback-writer-DMBdS_jL.js");
26034
26034
  await Effect.runPromise(writeFeedbackFile({
26035
26035
  issueId: issueIdForFb,
26036
26036
  specialist: "merge-agent",
@@ -26135,7 +26135,7 @@ async function autoCloseOut(now = /* @__PURE__ */ new Date()) {
26135
26135
  } } : {}
26136
26136
  };
26137
26137
  try {
26138
- const { closeOut } = await import("./workflows-DVwXauef.js");
26138
+ const { closeOut } = await import("./workflows-pKw9yRSV.js");
26139
26139
  const result = await Effect.runPromise(closeOut(ctx));
26140
26140
  if (!result.success) {
26141
26141
  const failed = result.steps.find((step) => !step.success && !step.skipped);
@@ -26182,8 +26182,8 @@ async function checkFirstCompletionAgents() {
26182
26182
  const agentId = agent.id;
26183
26183
  if (!agentId || !agentId.startsWith("agent-") || !agent.tmuxActive) continue;
26184
26184
  if (agentId.startsWith("specialist-")) continue;
26185
- const completedFile = join(AGENTS_DIR, agent.id, "completed");
26186
- const processedMarker = join(AGENTS_DIR, agent.id, "completed.processed");
26185
+ const completedFile = join$1(AGENTS_DIR, agent.id, "completed");
26186
+ const processedMarker = join$1(AGENTS_DIR, agent.id, "completed.processed");
26187
26187
  if (existsSync(completedFile) || existsSync(processedMarker)) continue;
26188
26188
  if (!isAgentIdleForNudge(agent.id, FIRST_COMPLETION_IDLE_MS)) continue;
26189
26189
  const runtimeState = getAgentRuntimeStateSync(agent.id);
@@ -26203,7 +26203,7 @@ async function checkFirstCompletionAgents() {
26203
26203
  } catch {}
26204
26204
  const agentStateForGate = getAgentStateSync(agent.id);
26205
26205
  if (agentStateForGate?.workspace) {
26206
- const feedbackDir = join(agentStateForGate.workspace, ".pan", "feedback");
26206
+ const feedbackDir = join$1(agentStateForGate.workspace, ".pan", "feedback");
26207
26207
  if (existsSync(feedbackDir)) try {
26208
26208
  const feedbackFiles = readdirSync(feedbackDir);
26209
26209
  if (feedbackFiles.length > 0) {
@@ -26226,7 +26226,7 @@ async function checkFirstCompletionAgents() {
26226
26226
  try {
26227
26227
  const subdirs = readdirSync(agentState.workspace, { withFileTypes: true }).filter((d) => d.isDirectory() && !d.name.startsWith("."));
26228
26228
  for (const sub of subdirs) try {
26229
- const { stdout: subLog } = await execAsync$4("git log --oneline -3 2>/dev/null", { cwd: join(agentState.workspace, sub.name) });
26229
+ const { stdout: subLog } = await execAsync$4("git log --oneline -3 2>/dev/null", { cwd: join$1(agentState.workspace, sub.name) });
26230
26230
  if (subLog.trim().length > 0) {
26231
26231
  hasCommits = true;
26232
26232
  break;
@@ -26292,7 +26292,7 @@ function bootReconciliationSkipReason(agent) {
26292
26292
  if (!agent.workspace || !existsSync(agent.workspace)) return "workspace_missing";
26293
26293
  const review = getReviewStatusSync(agent.issueId);
26294
26294
  if (review?.mergeStatus === "merged" || agent.merged === true || review?.readyForMerge === true && review.reviewStatus === "passed" && review.testStatus === "passed") return "merged";
26295
- if ((existsSync(join$1(getAgentDir(agent.id), "completed")) || existsSync(join$1(getAgentDir(agent.id), "completed.processed"))) && review?.reviewStatus === "passed" && review.testStatus === "passed") return "completed";
26295
+ if ((existsSync(join(getAgentDir(agent.id), "completed")) || existsSync(join(getAgentDir(agent.id), "completed.processed"))) && review?.reviewStatus === "passed" && review.testStatus === "passed") return "completed";
26296
26296
  return null;
26297
26297
  }
26298
26298
  //#endregion
@@ -26303,7 +26303,7 @@ init_config();
26303
26303
  let graceTimer = null;
26304
26304
  function hasCompletionMarker(workspace) {
26305
26305
  if (!workspace) return false;
26306
- return existsSync$1(join$1(workspace, ".pan", "completed")) || existsSync$1(join$1(workspace, ".pan", "completed.processed"));
26306
+ return existsSync$1(join(workspace, ".pan", "completed")) || existsSync$1(join(workspace, ".pan", "completed.processed"));
26307
26307
  }
26308
26308
  function newestAgentTimestampMs(agent) {
26309
26309
  const timestamps = [
@@ -26469,7 +26469,7 @@ function hasCompletedReviewArtifact(state) {
26469
26469
  if (state.role !== "review") return false;
26470
26470
  if (state.reviewSubRole) return reviewArtifactExistsForRun(state.reviewOutputPath, state.startedAt);
26471
26471
  if (!state.workspace || !state.reviewRunId) return false;
26472
- return reviewArtifactExistsForRun(join(state.workspace, ".pan", "review", state.reviewRunId, "synthesis.md"), state.startedAt);
26472
+ return reviewArtifactExistsForRun(join$1(state.workspace, ".pan", "review", state.reviewRunId, "synthesis.md"), state.startedAt);
26473
26473
  }
26474
26474
  const RAPID_POST_RESUME_DEATH_MS = 12e4;
26475
26475
  function isRapidPostResumeDeath(state) {
@@ -26650,7 +26650,7 @@ function hasLandedUserRecordSinceResume(state, snapshot) {
26650
26650
  return lastUserAt >= resumeAt;
26651
26651
  }
26652
26652
  function cooldownActive(agentId, filename, cooldownMs) {
26653
- const cooldownFile = join(getAgentDir(agentId), filename);
26653
+ const cooldownFile = join$1(getAgentDir(agentId), filename);
26654
26654
  if (!existsSync(cooldownFile)) return false;
26655
26655
  try {
26656
26656
  const last = parseInt(readFileSync(cooldownFile, "utf-8").trim(), 10);
@@ -26660,11 +26660,11 @@ function cooldownActive(agentId, filename, cooldownMs) {
26660
26660
  }
26661
26661
  }
26662
26662
  function recordCooldown(agentId, filename) {
26663
- writeFileSync(join(getAgentDir(agentId), filename), String(Date.now()), "utf-8");
26663
+ writeFileSync(join$1(getAgentDir(agentId), filename), String(Date.now()), "utf-8");
26664
26664
  }
26665
26665
  function buildStalledResumePrompt(state) {
26666
26666
  if (state.kickoffDelivered === false) {
26667
- const promptPath = join(getAgentDir(state.id), "initial-prompt.md");
26667
+ const promptPath = join$1(getAgentDir(state.id), "initial-prompt.md");
26668
26668
  try {
26669
26669
  return readFileSync(promptPath, "utf-8");
26670
26670
  } catch (err) {
@@ -26697,7 +26697,7 @@ async function nudgeStalledResumeWorkAgents() {
26697
26697
  const message = buildStalledResumePrompt(state);
26698
26698
  if (!message) continue;
26699
26699
  try {
26700
- const { messageAgent } = await import("./agents-C-vqmKDi.js");
26700
+ const { messageAgent } = await import("./agents-C4kZ8a2r.js");
26701
26701
  await messageAgent(agentId, message);
26702
26702
  recordCooldown(agentId, ".last-stalled-resume-nudge");
26703
26703
  const action = `Re-sent stalled resume prompt to ${agentId} (${state.issueId})`;
@@ -26727,7 +26727,7 @@ async function redeliverUndeliveredKickoffs() {
26727
26727
  const startedMs = Date.parse(state.startedAt ?? "");
26728
26728
  if (!Number.isFinite(startedMs) || Date.now() - startedMs <= 18e4) continue;
26729
26729
  if (cooldownActive(agentId, ".last-kickoff-redelivery", KICKOFF_REDELIVERY_COOLDOWN_MS)) continue;
26730
- const promptPath = join(getAgentDir(agentId), "initial-prompt.md");
26730
+ const promptPath = join$1(getAgentDir(agentId), "initial-prompt.md");
26731
26731
  let prompt;
26732
26732
  try {
26733
26733
  prompt = readFileSync(promptPath, "utf-8");
@@ -26786,7 +26786,7 @@ async function nudgeIdleWorkAgentsWithOpenBeads() {
26786
26786
  }
26787
26787
  if (!await Effect.runPromise(sessionExists(agentId))) continue;
26788
26788
  if (!isAgentIdleForNudge(agentId)) continue;
26789
- const cooldownFile = join(getAgentDir(agentId), ".last-bead-nudge");
26789
+ const cooldownFile = join$1(getAgentDir(agentId), ".last-bead-nudge");
26790
26790
  if (existsSync(cooldownFile)) try {
26791
26791
  const last = parseInt(readFileSync(cooldownFile, "utf-8").trim(), 10);
26792
26792
  if (!Number.isNaN(last) && Date.now() - last < BEAD_NUDGE_COOLDOWN_MS) continue;
@@ -26804,7 +26804,7 @@ async function nudgeIdleWorkAgentsWithOpenBeads() {
26804
26804
  const openBeads = ready.byIssue[state.issueId.toLowerCase()] ?? [];
26805
26805
  if (openBeads.length === 0) continue;
26806
26806
  const firstBead = readyBeadLine(openBeads[0]).slice(0, 200);
26807
- const briefPath = join(getAgentDir(agentId), "initial-prompt.md");
26807
+ const briefPath = join$1(getAgentDir(agentId), "initial-prompt.md");
26808
26808
  const message = [
26809
26809
  `Deacon idle-nudge: your tmux is alive but Claude is idle and you have ${openBeads.length} open bead(s) remaining for ${state.issueId}.`,
26810
26810
  ``,
@@ -26815,9 +26815,9 @@ async function nudgeIdleWorkAgentsWithOpenBeads() {
26815
26815
  "Continue the per-bead workflow without asking — claim it (`bd update <bead-id> --claim`), implement, commit, close. Inspection is conditional on metadata.requiresInspection (default false; check the plan item before deciding to call `pan inspect`). Do NOT end your turn with a multi-paragraph summary; just advance to the next bead."
26816
26816
  ].join("\n");
26817
26817
  try {
26818
- const { messageAgent } = await import("./agents-C-vqmKDi.js");
26818
+ const { messageAgent } = await import("./agents-C4kZ8a2r.js");
26819
26819
  await messageAgent(agentId, message);
26820
- writeFileSync(join(getAgentDir(agentId), ".last-bead-nudge"), String(Date.now()), "utf-8");
26820
+ writeFileSync(join$1(getAgentDir(agentId), ".last-bead-nudge"), String(Date.now()), "utf-8");
26821
26821
  const action = `Nudged idle ${agentId} (${state.issueId}) — ${openBeads.length} open bead(s)`;
26822
26822
  actions.push(action);
26823
26823
  logDeaconEventSync(`nudgeIdleWorkAgentsWithOpenBeads: ${action}`);
@@ -26913,8 +26913,8 @@ async function handleAgentStoppedEvent$1(agentId, opts = {}, deps) {
26913
26913
  return null;
26914
26914
  }
26915
26915
  }
26916
- const completedFile = join(getAgentDir(agentId), "completed");
26917
- const processedFile = join(getAgentDir(agentId), "completed.processed");
26916
+ const completedFile = join$1(getAgentDir(agentId), "completed");
26917
+ const processedFile = join$1(getAgentDir(agentId), "completed.processed");
26918
26918
  const handedOffViaDone = existsSync(completedFile) || existsSync(processedFile);
26919
26919
  let review = getReviewStatusSync(state.issueId);
26920
26920
  if (handedOffViaDone) if (review?.reviewStatus === "blocked" || review?.reviewStatus === "failed" || review?.testStatus === "failed") logDeaconEventSync(`handleAgentStoppedEvent: ${agentId} resuming despite completed marker — review/test needs fixing (review=${review?.reviewStatus}, test=${review?.testStatus})`);
@@ -27304,12 +27304,12 @@ async function recordMainDivergenceHealth(state, projects = listProjectsSync(),
27304
27304
  init_paths();
27305
27305
  init_tmux();
27306
27306
  function agentDir(agentId) {
27307
- return join(getOverdeckHome(), "agents", agentId);
27307
+ return join$1(getOverdeckHome(), "agents", agentId);
27308
27308
  }
27309
27309
  /** Read the launcher-recorded exit code + UTC timestamp, or null if absent. */
27310
27310
  function readAgentExitStatus(agentId) {
27311
27311
  try {
27312
- const p = join(agentDir(agentId), "exit-status");
27312
+ const p = join$1(agentDir(agentId), "exit-status");
27313
27313
  if (!existsSync(p)) return null;
27314
27314
  const raw = readFileSync(p, "utf-8").trim();
27315
27315
  if (!raw) return null;
@@ -27336,7 +27336,7 @@ function describeAgentDeath(agentId) {
27336
27336
  if (paneExit) parts.push(`pane_exit=${paneExit}`);
27337
27337
  }
27338
27338
  try {
27339
- const logPath = join(agentDir(agentId), "output.log");
27339
+ const logPath = join$1(agentDir(agentId), "output.log");
27340
27340
  if (existsSync(logPath)) {
27341
27341
  const tail = readFileSync(logPath, "utf-8").slice(-1500).trim().split("\n").slice(-6).join(" | ").trim();
27342
27342
  if (tail) parts.push(`output.log tail: ${tail}`);
@@ -27348,10 +27348,10 @@ function describeAgentDeath(agentId) {
27348
27348
  //#region ../../lib/cloister/stuck-remediation-state.ts
27349
27349
  init_paths();
27350
27350
  function agentStateDir(agentId) {
27351
- return join(getOverdeckHome(), "agents", agentId);
27351
+ return join$1(getOverdeckHome(), "agents", agentId);
27352
27352
  }
27353
27353
  function statePath(agentId) {
27354
- return join(agentStateDir(agentId), "stuck-remediation.json");
27354
+ return join$1(agentStateDir(agentId), "stuck-remediation.json");
27355
27355
  }
27356
27356
  function readStuckRemediationState(agentId) {
27357
27357
  const filePath = statePath(agentId);
@@ -27592,7 +27592,7 @@ async function remediateFlywheelOrchestrator(agentId, now, actions, reason) {
27592
27592
  now
27593
27593
  });
27594
27594
  if (decision.kind === "noop") return;
27595
- const { resumeFlywheel, pauseFlywheel } = await import("./flywheel-PJsbrXNY.js");
27595
+ const { resumeFlywheel, pauseFlywheel } = await import("./flywheel-k4FPtCQ_.js");
27596
27596
  const prev = readStuckRemediationState(agentId);
27597
27597
  const nowIso = new Date(now).toISOString();
27598
27598
  if (decision.kind === "escalate") {
@@ -28301,7 +28301,7 @@ async function cleanupOrphanedInspectSessions() {
28301
28301
  return actions;
28302
28302
  }
28303
28303
  for (const session of inspectSessions) {
28304
- const hasStateFile = existsSync(join(AGENTS_DIR, session, "state.json"));
28304
+ const hasStateFile = existsSync(join$1(AGENTS_DIR, session, "state.json"));
28305
28305
  const paneDead = await Effect.runPromise(isPaneDead(session)).catch(() => false);
28306
28306
  if (hasStateFile && !paneDead) continue;
28307
28307
  try {
@@ -28360,10 +28360,10 @@ const DEFAULT_CONFIG = {
28360
28360
  massDeathThreshold: 2,
28361
28361
  massDeathWindowMs: 6e4
28362
28362
  };
28363
- const DEACON_DIR = join(OVERDECK_HOME, "deacon");
28364
- const STATE_FILE = join(DEACON_DIR, "health-state.json");
28365
- const CONFIG_FILE = join(DEACON_DIR, "config.json");
28366
- const DEACON_LOG_FILE = join(OVERDECK_HOME, "logs", "deacon.log");
28363
+ const DEACON_DIR = join$1(OVERDECK_HOME, "deacon");
28364
+ const STATE_FILE = join$1(DEACON_DIR, "health-state.json");
28365
+ const CONFIG_FILE = join$1(DEACON_DIR, "config.json");
28366
+ const DEACON_LOG_FILE = join$1(OVERDECK_HOME, "logs", "deacon.log");
28367
28367
  let deaconInterval = null;
28368
28368
  const deaconPatrolGuard = createInFlightGuard();
28369
28369
  let config = { ...DEFAULT_CONFIG };
@@ -28556,7 +28556,7 @@ async function cleanupStaleAgentState() {
28556
28556
  try {
28557
28557
  const dirs = readdirSync(AGENTS_DIR, { withFileTypes: true }).filter((d) => d.isDirectory());
28558
28558
  for (const dir of dirs) {
28559
- const agentDir = join(AGENTS_DIR, dir.name);
28559
+ const agentDir = join$1(AGENTS_DIR, dir.name);
28560
28560
  const isReviewer = dir.name.startsWith("review-");
28561
28561
  const effectiveRetentionMs = isReviewer ? reviewerRetentionMs : retentionMs;
28562
28562
  try {
@@ -28569,7 +28569,7 @@ async function cleanupStaleAgentState() {
28569
28569
  const ageMs = now - statSync(agentDir).mtimeMs;
28570
28570
  if (ageMs < effectiveRetentionMs) continue;
28571
28571
  if (!isReviewer) {
28572
- const completedFile = join(agentDir, "completed");
28572
+ const completedFile = join$1(agentDir, "completed");
28573
28573
  if (existsSync(completedFile)) {
28574
28574
  if (now - statSync(completedFile).mtimeMs < 10080 * 60 * 1e3) continue;
28575
28575
  }
@@ -28608,10 +28608,10 @@ async function cleanupStaleAgentState() {
28608
28608
  */
28609
28609
  async function cleanupAbandonedFeedback() {
28610
28610
  const actions = [];
28611
- const { getReviewStatusSync } = await import("./review-status-h7BXIA4z.js");
28612
- const { clearFeedbackFiles } = await import("./feedback-writer-thrdxYpK.js");
28611
+ const { getReviewStatusSync } = await import("./review-status-JhQ3qlDS.js");
28612
+ const { clearFeedbackFiles } = await import("./feedback-writer-DMBdS_jL.js");
28613
28613
  for (const { issueId, workspacePath } of listFeatureWorkspaces()) {
28614
- const panFeedbackDir = join(workspacePath, ".pan", "feedback");
28614
+ const panFeedbackDir = join$1(workspacePath, ".pan", "feedback");
28615
28615
  if (!existsSync(panFeedbackDir)) continue;
28616
28616
  const issueLower = issueId.toLowerCase();
28617
28617
  const agentSession = `agent-${issueLower}`;
@@ -28640,7 +28640,7 @@ async function cleanupAbandonedFeedback() {
28640
28640
  const ORPHAN_REVIEWER_AGE_MS = 3600 * 1e3;
28641
28641
  async function loadTmuxSessionsWithCreationTimes() {
28642
28642
  try {
28643
- const { stdout } = await execAsync(`tmux -L overdeck -f ${join(OVERDECK_HOME, "tmux", "overdeck.tmux.conf")} list-sessions -F '#{session_name} #{session_created}'`, { encoding: "utf-8" });
28643
+ const { stdout } = await execAsync(`tmux -L overdeck -f ${join$1(OVERDECK_HOME, "tmux", "overdeck.tmux.conf")} list-sessions -F '#{session_name} #{session_created}'`, { encoding: "utf-8" });
28644
28644
  const lines = stdout.split("\n").filter((l) => l.trim());
28645
28645
  const sessions = [];
28646
28646
  const creationTimes = /* @__PURE__ */ new Map();
@@ -28680,7 +28680,7 @@ async function handleOrphanReviewerSession(sessionName, sessions, creationTimes,
28680
28680
  if (!issueId) return null;
28681
28681
  const agentSession = `agent-${issueId.toLowerCase()}`;
28682
28682
  if (sessions.includes(agentSession)) return null;
28683
- const { getReviewStatusSync } = await import("./review-status-h7BXIA4z.js");
28683
+ const { getReviewStatusSync } = await import("./review-status-JhQ3qlDS.js");
28684
28684
  try {
28685
28685
  if (getReviewStatusSync(issueId)?.reviewStatus === "reviewing") return null;
28686
28686
  } catch {}
@@ -28800,7 +28800,7 @@ async function checkOrphanedCompletions() {
28800
28800
  async function checkPendingTestDispatch() {
28801
28801
  const actions = [];
28802
28802
  try {
28803
- const { loadReviewStatuses, setReviewStatusSync } = await import("./review-status-h7BXIA4z.js");
28803
+ const { loadReviewStatuses, setReviewStatusSync } = await import("./review-status-JhQ3qlDS.js");
28804
28804
  const statuses = loadReviewStatuses();
28805
28805
  const now = Date.now();
28806
28806
  for (const [issueId, status] of Object.entries(statuses)) {
@@ -28833,7 +28833,7 @@ async function checkPendingTestDispatch() {
28833
28833
  console.log(`[deacon] ${issueId}: skipping test re-dispatch — issue is closed`);
28834
28834
  continue;
28835
28835
  }
28836
- const { resolveProjectFromIssueSync } = await import("./projects-BNmVxnNt.js");
28836
+ const { resolveProjectFromIssueSync } = await import("./projects-Bqfwuqet.js");
28837
28837
  const resolved = resolveProjectFromIssueSync(issueId);
28838
28838
  if (!resolved) continue;
28839
28839
  const issueLower = issueId.toLowerCase();
@@ -28848,8 +28848,8 @@ async function checkPendingTestDispatch() {
28848
28848
  logDeaconEventSync(`checkPendingTestDispatch: deferred test for ${issueId} — advancing ceiling reached (PAN-1665) — ${describeRunningAgents()}`);
28849
28849
  continue;
28850
28850
  }
28851
- const { spawnRun } = await import("./agents-C-vqmKDi.js");
28852
- const { buildTestRolePrompt } = await import("./test-agent-queue-B_ukPyIK.js");
28851
+ const { spawnRun } = await import("./agents-C4kZ8a2r.js");
28852
+ const { buildTestRolePrompt } = await import("./test-agent-queue-TiVXe3ZT.js");
28853
28853
  try {
28854
28854
  const run = await spawnRun(issueId, "test", {
28855
28855
  workspace,
@@ -28972,7 +28972,7 @@ async function checkCompletedButUnsignaledTests() {
28972
28972
  const cmd = `pan admin specialists done test ${issueId} --status ${decision.status}${noteArg}`;
28973
28973
  const nudge = `Your test verdict (${decision.status}) is already written to .pan/test/result.json. Your ONLY remaining task is to execute this Bash command immediately — do not analyze, do not summarize, do not ask questions, just run it:\n\n${cmd}\n\nRun this command NOW. Do not write any other response before executing it.`;
28974
28974
  try {
28975
- const { messageAgent } = await import("./agents-C-vqmKDi.js");
28975
+ const { messageAgent } = await import("./agents-C4kZ8a2r.js");
28976
28976
  await messageAgent(testSession, nudge);
28977
28977
  unsignaledTestNudges.set(testSession, now);
28978
28978
  const msg = `Nudged ${testSession} to signal ${decision.status} (verdict artifact present)`;
@@ -28986,7 +28986,7 @@ async function checkCompletedButUnsignaledTests() {
28986
28986
  case "nudge-write": {
28987
28987
  const nudge = `Your test run for ${issueId} looks finished but no verdict was recorded. Decide the verdict from the gates/UAT you ran, then do BOTH of these now: (1) write the workspace file .pan/test/result.json as {"status":"passed"|"failed","notes":"<evidence>"}, and (2) run: pan admin specialists done test ${issueId} --status passed|failed. Do this immediately — do not summarize or ask questions, just write the file and run the command.`;
28988
28988
  try {
28989
- const { messageAgent } = await import("./agents-C-vqmKDi.js");
28989
+ const { messageAgent } = await import("./agents-C4kZ8a2r.js");
28990
28990
  await messageAgent(testSession, nudge);
28991
28991
  unsignaledTestNudges.set(testSession, now);
28992
28992
  const msg = `Nudged ${testSession} to write+signal a test verdict (no artifact yet)`;
@@ -29009,15 +29009,15 @@ async function checkCompletedButUnsignaledTests() {
29009
29009
  async function checkVerificationReviewContradiction() {
29010
29010
  const actions = [];
29011
29011
  try {
29012
- const { loadReviewStatuses, setReviewStatusSync } = await import("./review-status-h7BXIA4z.js");
29013
- const { resolveProjectFromIssueSync } = await import("./projects-BNmVxnNt.js");
29012
+ const { loadReviewStatuses, setReviewStatusSync } = await import("./review-status-JhQ3qlDS.js");
29013
+ const { resolveProjectFromIssueSync } = await import("./projects-Bqfwuqet.js");
29014
29014
  const statuses = loadReviewStatuses();
29015
29015
  for (const [issueId, status] of Object.entries(statuses)) if (status.verificationStatus === "passed" && status.reviewStatus === "reviewing" && status.stuckReason === "review_infrastructure_failure") {
29016
29016
  let reviewedAtCommit;
29017
29017
  try {
29018
29018
  const project = resolveProjectFromIssueSync(issueId);
29019
29019
  if (project) {
29020
- const workspacePath = join(project.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
29020
+ const workspacePath = join$1(project.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
29021
29021
  if (existsSync(workspacePath)) {
29022
29022
  const { stdout } = await execAsync("git rev-parse HEAD", { cwd: workspacePath });
29023
29023
  reviewedAtCommit = stdout.trim();
@@ -29059,7 +29059,7 @@ async function checkPostReviewCommits() {
29059
29059
  const actions = [];
29060
29060
  try {
29061
29061
  const statuses = loadReviewStatuses();
29062
- const { resolveProjectFromIssueSync } = await import("./projects-BNmVxnNt.js");
29062
+ const { resolveProjectFromIssueSync } = await import("./projects-Bqfwuqet.js");
29063
29063
  for (const [issueId, status] of Object.entries(statuses)) {
29064
29064
  if (status.mergeStatus === "merged") continue;
29065
29065
  if (!status.reviewedAtCommit) continue;
@@ -29070,7 +29070,7 @@ async function checkPostReviewCommits() {
29070
29070
  }
29071
29071
  const project = resolveProjectFromIssueSync(issueId);
29072
29072
  if (!project) continue;
29073
- const workspacePath = join(project.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
29073
+ const workspacePath = join$1(project.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
29074
29074
  if (!existsSync(workspacePath)) continue;
29075
29075
  let currentHead;
29076
29076
  try {
@@ -29114,7 +29114,7 @@ async function checkPostReviewCommits() {
29114
29114
  actions.push(`Deferred post-review re-dispatch for ${issueId} — advancing-role concurrency ceiling reached`);
29115
29115
  logDeaconEventSync(`checkPostReviewCommits: deferred review for ${issueId} — advancing ceiling reached (PAN-1665) — ${describeRunningAgents()}`);
29116
29116
  } else if (freshStatus?.reviewStatus === "pending") {
29117
- const { spawnReviewRoleForIssue } = await import("./review-agent-DTINEffB.js");
29117
+ const { spawnReviewRoleForIssue } = await import("./review-agent-uwVftH98.js");
29118
29118
  const branch = `feature/${issueId.toLowerCase()}`;
29119
29119
  const dispatchResult = await Effect.runPromise(spawnReviewRoleForIssue({
29120
29120
  issueId,
@@ -29214,7 +29214,7 @@ async function checkReadyForMergeStuck() {
29214
29214
  const testStatusGreenCiReconcileCooldowns = /* @__PURE__ */ new Map();
29215
29215
  const TEST_STATUS_GREEN_CI_RECONCILE_COOLDOWN_MS = 300 * 1e3;
29216
29216
  async function reconcileTestStatusFromGreenCi() {
29217
- const { getCiCheckRunsState, getPullRequestHeadState, isGitHubAppConfigured } = await import("./github-app-B5PDHMyn.js");
29217
+ const { getCiCheckRunsState, getPullRequestHeadState, isGitHubAppConfigured } = await import("./github-app-C7lftMNj.js");
29218
29218
  return reconcileTestStatusFromGreenCiWithDeps({
29219
29219
  isGitHubAppConfigured,
29220
29220
  loadReviewStatuses,
@@ -29235,17 +29235,17 @@ async function reconcileTestStatusFromGreenCi() {
29235
29235
  */
29236
29236
  async function clearStaleCiFeedback(issueId) {
29237
29237
  const { readdir, rm } = await import("fs/promises");
29238
- const { resolveProjectFromIssueSync } = await import("./projects-BNmVxnNt.js");
29238
+ const { resolveProjectFromIssueSync } = await import("./projects-Bqfwuqet.js");
29239
29239
  const projectConfig = resolveProjectFromIssueSync(issueId);
29240
29240
  if (!projectConfig) return;
29241
29241
  const repoDir = projectConfig.projectPath;
29242
29242
  if (!repoDir) return;
29243
- const feedbackDir = join(repoDir, "workspaces", `feature-${issueId.toLowerCase()}`, ".pan", "feedback");
29243
+ const feedbackDir = join$1(repoDir, "workspaces", `feature-${issueId.toLowerCase()}`, ".pan", "feedback");
29244
29244
  try {
29245
29245
  if (!existsSync(feedbackDir)) return;
29246
29246
  const files = await readdir(feedbackDir);
29247
29247
  for (const file of files) if (file.includes("merge-agent") && file.includes("ci-failure") && file.endsWith(".md")) {
29248
- await rm(join(feedbackDir, file));
29248
+ await rm(join$1(feedbackDir, file));
29249
29249
  console.log(`[deacon] Cleared stale CI feedback: ${file} for ${issueId}`);
29250
29250
  }
29251
29251
  } catch (err) {
@@ -29374,10 +29374,10 @@ async function checkDeadEndAgents() {
29374
29374
  if (resolved) {
29375
29375
  const wsPath = findWorkspacePath(resolved.projectPath, issueId.toLowerCase());
29376
29376
  if (wsPath) {
29377
- const feedbackDir = join(wsPath, ".pan", "feedback");
29377
+ const feedbackDir = join$1(wsPath, ".pan", "feedback");
29378
29378
  if (existsSync(feedbackDir)) {
29379
29379
  const files = (await readdir$1(feedbackDir)).filter((f) => f.endsWith(".md")).sort();
29380
- if (files.length > 0) latestFeedbackPath = join(feedbackDir, files[files.length - 1]);
29380
+ if (files.length > 0) latestFeedbackPath = join$1(feedbackDir, files[files.length - 1]);
29381
29381
  }
29382
29382
  }
29383
29383
  }
@@ -29535,7 +29535,7 @@ async function checkWorkspaceContainerHealth(sharedState) {
29535
29535
  }
29536
29536
  }
29537
29537
  try {
29538
- const { resolveProjectFromIssueSync } = await import("./projects-BNmVxnNt.js");
29538
+ const { resolveProjectFromIssueSync } = await import("./projects-Bqfwuqet.js");
29539
29539
  const resolved = resolveProjectFromIssueSync(issueLower.toUpperCase());
29540
29540
  if (resolved) await killOrphanedWorkspaceProcesses(`${resolved.projectPath}/workspaces/feature-${issueLower}`);
29541
29541
  } catch {}
@@ -29585,7 +29585,7 @@ async function checkMergedWorkSessions() {
29585
29585
  const actions = [];
29586
29586
  try {
29587
29587
  const { selectMergedWorkSessions } = await import("./reap-terminal-sessions-BwJb2DLJ.js");
29588
- const { setAgentPaused } = await import("./agents-C-vqmKDi.js");
29588
+ const { setAgentPaused } = await import("./agents-C4kZ8a2r.js");
29589
29589
  const toKill = selectMergedWorkSessions(loadReviewStatuses(), [...await Effect.runPromise(listSessionNames())]);
29590
29590
  for (const session of toKill) try {
29591
29591
  await Effect.runPromise(setAgentPaused(session, "merged — awaiting close-out (verify on main)", true));
@@ -29681,19 +29681,19 @@ async function runPatrol() {
29681
29681
  const stuckRemediationActions = await checkStuckAgentRemediation();
29682
29682
  actions.push(...stuckRemediationActions);
29683
29683
  for (const a of stuckRemediationActions) addLog("action", a, state.patrolCycle);
29684
- const { reconcileInFlightJournals } = await import("./advancing-selfheal-BezNfM3P.js");
29684
+ const { reconcileInFlightJournals } = await import("./advancing-selfheal-BqsLWqEM.js");
29685
29685
  const reconciledJournalActions = await reconcileInFlightJournals();
29686
29686
  actions.push(...reconciledJournalActions);
29687
29687
  for (const a of reconciledJournalActions) addLog("action", a, state.patrolCycle);
29688
29688
  try {
29689
- const pendingFile = join(OVERDECK_HOME, "pending-post-merge.json");
29689
+ const pendingFile = join$1(OVERDECK_HOME, "pending-post-merge.json");
29690
29690
  if (existsSync(pendingFile)) {
29691
29691
  const content = readFileSync(pendingFile, "utf-8");
29692
29692
  const pending = JSON.parse(content);
29693
29693
  const age = Date.now() - (pending.timestamp ?? 0);
29694
29694
  if (age < 3600 * 1e3) {
29695
29695
  console.log(`[deacon] Processing pending post-merge lifecycle for ${pending.issueId} (age: ${Math.round(age / 1e3)}s)`);
29696
- const { postMergeLifecycle } = await import("./merge-agent-7nBiCytp.js");
29696
+ const { postMergeLifecycle } = await import("./merge-agent-CfohxFWM.js");
29697
29697
  const { unlinkSync } = await import("fs");
29698
29698
  unlinkSync(pendingFile);
29699
29699
  await postMergeLifecycle(pending.issueId, pending.projectPath, pending.sourceBranch, { skipDeploy: true });
@@ -29738,13 +29738,13 @@ async function runPatrol() {
29738
29738
  actions.push(...suspendActions);
29739
29739
  for (const a of suspendActions) addLog("action", a, state.patrolCycle);
29740
29740
  try {
29741
- const { resolveProjectFromIssueSync } = await import("./projects-BNmVxnNt.js");
29741
+ const { resolveProjectFromIssueSync } = await import("./projects-Bqfwuqet.js");
29742
29742
  const allStatuses = loadReviewStatuses();
29743
29743
  for (const [issueId, status] of Object.entries(allStatuses)) {
29744
29744
  if (!status.readyForMerge || status.mergeStatus === "merged") continue;
29745
29745
  const project = resolveProjectFromIssueSync(issueId);
29746
29746
  if (!project) continue;
29747
- if (!existsSync(join(project.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`))) {
29747
+ if (!existsSync(join$1(project.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`))) {
29748
29748
  setReviewStatusSync(issueId, {
29749
29749
  readyForMerge: false,
29750
29750
  mergeStatus: "failed",
@@ -29758,7 +29758,7 @@ async function runPatrol() {
29758
29758
  } catch (err) {
29759
29759
  console.warn(`[deacon] Failed to check workspace existence: ${err.message}`);
29760
29760
  }
29761
- const { checkMergedAdvancingSessions } = await import("./advancing-selfheal-BezNfM3P.js");
29761
+ const { checkMergedAdvancingSessions } = await import("./advancing-selfheal-BqsLWqEM.js");
29762
29762
  const reapedWorkActions = await checkMergedWorkSessions();
29763
29763
  actions.push(...reapedWorkActions);
29764
29764
  for (const a of reapedWorkActions) addLog("action", a, state.patrolCycle);
@@ -29766,7 +29766,7 @@ async function runPatrol() {
29766
29766
  actions.push(...reapedMergedAdvancingActions);
29767
29767
  for (const a of reapedMergedAdvancingActions) addLog("action", a, state.patrolCycle);
29768
29768
  try {
29769
- const { refreshClaudeCredentialsForActiveRemoteAgents } = await import("./remote-completion-BmxD5UMQ.js");
29769
+ const { refreshClaudeCredentialsForActiveRemoteAgents } = await import("./remote-completion-RZYePR_0.js");
29770
29770
  const remoteCredentialActions = await refreshClaudeCredentialsForActiveRemoteAgents();
29771
29771
  actions.push(...remoteCredentialActions);
29772
29772
  for (const a of remoteCredentialActions) addLog(a.includes("failed") ? "warn" : "action", a, state.patrolCycle);
@@ -29774,7 +29774,7 @@ async function runPatrol() {
29774
29774
  addLog("warn", `Remote credential refresh patrol failed: ${err.message}`, state.patrolCycle);
29775
29775
  }
29776
29776
  try {
29777
- const { refreshHostHeartbeatForEphemeralVms } = await import("./remote-agents-DNuaAgU6.js");
29777
+ const { refreshHostHeartbeatForEphemeralVms } = await import("./remote-agents-UHoi4oGr.js");
29778
29778
  const heartbeatActions = await refreshHostHeartbeatForEphemeralVms();
29779
29779
  actions.push(...heartbeatActions);
29780
29780
  for (const a of heartbeatActions) addLog(a.includes("failed") ? "warn" : "action", a, state.patrolCycle);
@@ -29782,7 +29782,7 @@ async function runPatrol() {
29782
29782
  addLog("warn", `Remote heartbeat refresh patrol failed: ${err.message}`, state.patrolCycle);
29783
29783
  }
29784
29784
  try {
29785
- const { reapCompletedRemoteAgents } = await import("./remote-completion-BmxD5UMQ.js");
29785
+ const { reapCompletedRemoteAgents } = await import("./remote-completion-RZYePR_0.js");
29786
29786
  const remoteReap = await reapCompletedRemoteAgents();
29787
29787
  for (const r of remoteReap) if (r.status === "handed-off" || r.status === "error") {
29788
29788
  const msg = `Remote reap ${r.issueId}: ${r.status} (${r.details.join("; ")})`;
@@ -29960,7 +29960,7 @@ async function runPatrol() {
29960
29960
  const issueId = runtimeState.currentIssue;
29961
29961
  try {
29962
29962
  if (getReviewStatusSync(issueId)?.mergeStatus === "merging") {
29963
- const { resolveProjectFromIssueSync } = await import("./projects-BNmVxnNt.js");
29963
+ const { resolveProjectFromIssueSync } = await import("./projects-Bqfwuqet.js");
29964
29964
  const resolved = resolveProjectFromIssueSync(issueId);
29965
29965
  if (resolved) {
29966
29966
  const branch = `feature/${issueId.toLowerCase()}`;
@@ -29974,7 +29974,7 @@ async function runPatrol() {
29974
29974
  mergeStatus: "merged",
29975
29975
  readyForMerge: false
29976
29976
  });
29977
- const { postMergeLifecycle } = await import("./merge-agent-7nBiCytp.js");
29977
+ const { postMergeLifecycle } = await import("./merge-agent-CfohxFWM.js");
29978
29978
  postMergeLifecycle(issueId, resolved.projectPath).catch((err) => console.warn(`[deacon] postMergeLifecycle failed for ${issueId}: ${err}`));
29979
29979
  actions.push(`Auto-completed stale merge for ${issueId}`);
29980
29980
  } else {
@@ -30061,7 +30061,7 @@ function addLog(level, message, cycle) {
30061
30061
  };
30062
30062
  deaconLogs.push(entry);
30063
30063
  try {
30064
- mkdirSync(dirname(DEACON_LOG_FILE), { recursive: true });
30064
+ mkdirSync(dirname$1(DEACON_LOG_FILE), { recursive: true });
30065
30065
  appendFileSync(DEACON_LOG_FILE, JSON.stringify(entry) + "\n", "utf-8");
30066
30066
  } catch {}
30067
30067
  if (deaconLogs.length > MAX_LOG_ENTRIES) deaconLogs.splice(0, deaconLogs.length - MAX_LOG_ENTRIES);
@@ -30120,7 +30120,7 @@ async function checkThinkingSignatureCorruption() {
30120
30120
  try {
30121
30121
  await Effect.runPromise(killSession(agentId));
30122
30122
  } catch {}
30123
- const sessionFile = join(AGENTS_DIR, agentId, "session.id");
30123
+ const sessionFile = join$1(AGENTS_DIR, agentId, "session.id");
30124
30124
  if (existsSync(sessionFile)) try {
30125
30125
  rmSync(sessionFile);
30126
30126
  } catch {}
@@ -30154,7 +30154,7 @@ function startDeacon() {
30154
30154
  logDeaconEventSync(`startDeacon: health monitor starting (patrol every ${config.patrolIntervalMs / 1e3}s)`);
30155
30155
  (async () => {
30156
30156
  await reconcileAgentLiveness();
30157
- const { runBootAdvancingSelfHeal } = await import("./advancing-selfheal-BezNfM3P.js");
30157
+ const { runBootAdvancingSelfHeal } = await import("./advancing-selfheal-BqsLWqEM.js");
30158
30158
  await runBootAdvancingSelfHeal();
30159
30159
  runScheduledPatrol("startup");
30160
30160
  })().catch((err) => {
@@ -30226,4 +30226,4 @@ function assessDeaconPatrolFreshness(params) {
30226
30226
  //#endregion
30227
30227
  export { isPreKickoffLaunchDeath as $, scanPendingInputsPromise as $t, reconcileAgentLiveness as A, stalledReviewConvoyRecoveryState as At, applyIssueBlocksMainLabel as B, formatUptime as Bt, getLastPatrolResult as C, isSynthesisForActiveReviewRun as Ct, isDeaconRunning as D, handleWorkCompleted as Dt, handleAgentStoppedForOrphanReviewerSessions as E, handleReviewCoordinatorDied as Et, setAgentStatusChangedNotifier as F, INSPECT_TIMEOUT_MS as Ft, applyIssueVetoedLabel as G, isSmeeConfiguredSync as Gt, applyIssueParkedLabel as H, getCurrentDockerStats as Ht, setAgentStoppedNotifier as I, checkInspectAgentTimeouts as It, removeIssueParkedLabel as J, countPendingAskUserQuestionsForAgent as Jt, removeIssueBlocksMainLabel as K, startSmeeProcessSync as Kt, setMergeReadyNotifier as L, getRuntimeForAgent as Lt, resetPatrolHeartbeatForStartup as M, contextOverflowRecoveryState as Mt, runPatrol as N, contextProactiveCompactState as Nt, loadConfig as O, recoverStalledReviewConvoys as Ot, saveState as P, stuckOverflowNativeRecoveryState as Pt, createInFlightGuard as Q, getAgentWorkspace as Qt, startDeacon as R, classifyMemoryPressure as Rt, getDeaconStatus as S, checkStuckReviewing as St, handleAgentStoppedEvent as T, checkOrphanedReviewStatuses as Tt, applyIssueReadyLabel as U, getResourceConfig as Ut, applyIssueObjectionLabel as V, getContainerHistory as Vt, applyIssueReleasedLabel as W, getSystemHealthSnapshot as Wt, removeIssueReleasedLabel as X, getAgentJsonlPath as Xt, removeIssueReadyLabel as Y, getAgentJsonlMtime as Yt, removeIssueVetoedLabel as Z, getAgentPendingQuestions as Zt, cleanupOrphanReviewerSessions as _, withConcurrencyLimit as _t, checkCompletedButUnsignaledTests as a, listBootReconciliationCandidates as at, containerRestartBackoffMs as b, synthesizeReviewFromReports as bt, checkMergedWorkSessions as c, checkFailedMergeRetry as ct, checkPostReviewCommits as d, reconcileClosedPrReadyForMerge as dt, detectAwaitingInputForAgent as en, isRapidPostResumeDeath as et, checkReadyForMergeStuck as f, reconcileFalseMerged as ft, cleanupAbandonedFeedback as g, reconcileStuckReadyForMerge as gt, checkWorkspaceContainerHealth as h, reconcileStaleMergeStatus as ht, checkAwaitingTestWorkSessions as i, isBootReconciliationCandidate as it, reconcileTestStatusFromGreenCi as j, checkApiErrorAgents as jt, loadState as k, reviewConvoyLiveness as kt, checkOrphanedCompletions as l, checkFirstCompletionAgents as lt, checkVerificationReviewContradiction as m, reconcileStaleMergeBlockers as mt, assessDeaconPatrolFreshness as n, normalizeAwaitingInputPrompt as nn, nudgeStalledResumeWorkAgents as nt, checkDeadEndAgents as o, startBootReconciliation as ot, checkStuckWorkAgents as p, reconcileMergedButReviewing as pt, removeIssueObjectionLabel as q, computeAgentEnrichment as qt, checkAndSuspendIdleAgents as r, parseCodexApprovalPrompt as rn, redeliverUndeliveredKickoffs as rt, checkMassDeath as s, autoCloseOut as st, applyBootReconciliationDecision as t, detectAwaitingInputFromPaneSync as tn, nudgeIdleWorkAgentsWithOpenBeads as tt, checkPendingTestDispatch as u, ciRetryMap as ut, cleanupOrphanedPlanningSessions as v, cleanupOrphanedReviewSessions as vt, handleAgentHeartbeatDeadEvent as w, checkMissingReviewStatuses as wt, getDeaconLogs as x, checkCompletedButUnsignaledReviews as xt, cleanupStaleAgentState as y, monitorReviewConvoySignals as yt, stopDeacon as z, getResourceStacks as zt };
30228
30228
 
30229
- //# sourceMappingURL=deacon-CGHl90eC.js.map
30229
+ //# sourceMappingURL=deacon-CM0MxbS8.js.map