@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,39 +1,39 @@
1
1
  import { a as __toCommonJS } from "./rolldown-runtime-DNCzzKnI.js";
2
- import { $n as extractPrefixSync, Br as getOverdeckHome, C as resolveTieredExecutionEnabled, Dn as getProjectSync, E as canUseHarnessSync, Gn as resolveProjectFromIssueSync, Lr as encodeClaudeProjectDir, Nn as init_projects, O as init_harness_policy, S as init_tier_table, Vr as init_paths, X as resolveModel, cr as FsError, er as init_issue_id, f as loadConfigSync, fn as init_state_read_home, mn as shouldCommitLegacyWorkspaceArtifacts, nr as parseIssueIdSync, t as init_config_yaml, vr as init_errors, w as resolveTieredExecutionEnabledForIssue } from "./config-yaml-DPAieL_G.js";
2
+ import { $n as extractPrefixSync, Br as getOverdeckHome, C as resolveTieredExecutionEnabled, Dn as getProjectSync, E as canUseHarnessSync, Gn as resolveProjectFromIssueSync, Lr as encodeClaudeProjectDir, Nn as init_projects, O as init_harness_policy, S as init_tier_table, Vr as init_paths, X as resolveModel, cr as FsError, er as init_issue_id, f as loadConfigSync, fn as init_state_read_home, mn as shouldCommitLegacyWorkspaceArtifacts, nr as parseIssueIdSync, t as init_config_yaml, vr as init_errors, w as resolveTieredExecutionEnabledForIssue } from "./config-yaml-ClpGgrf6.js";
3
3
  import { a as init_activity_logger, n as emitActivityEntrySync } from "./activity-logger-pcbf-e30.js";
4
- import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-CpKlYZA9.js";
5
- import { K as buildChildEnvWithoutTmuxSync, L as sessionExists, R as sessionExistsSync, i as capturePane, k as listSessions, q as init_child_env, w as killSession, x as init_tmux } from "./tmux-ePNhMIMU.js";
6
- import { a as init_event_store, n as getEventStore } from "./event-store-DTJXZjCl.js";
4
+ import { d as getOverdeckDatabaseSync, f as init_infra } from "./infra-DE3C4PMr.js";
5
+ import { K as buildChildEnvWithoutTmuxSync, L as sessionExists, R as sessionExistsSync, i as capturePane, k as listSessions, q as init_child_env, w as killSession, x as init_tmux } from "./tmux-D57f-XNv.js";
6
+ import { a as init_event_store, n as getEventStore } from "./event-store-DCMqyI07.js";
7
7
  import { C as normalizeChannelReplyPayload, a as getHarnessBehavior, b as DomainEvent, t as init_src } from "./src-fgbU-jJ-.js";
8
- import { D as AGENT_COLUMNS_FOR_DB, M as stateToOverdeckParamsForDb, c as init_review_status, k as init_agent_state_sync, s as getReviewStatusSync, u as loadReviewStatuses, y as setReviewStatusSync } from "./review-status-B5ZASOo4.js";
9
- import { a as EventStoreService, c as ReadModelService, d as init_read_model, i as init_issue_lifecycle, s as init_domain_services, t as IssueLifecycle, u as getClosedIssueIdsForReadSource } from "./issue-lifecycle-5LbOcATP.js";
10
- import { o as getPricingSync, s as init_cost, t as calculateCostSync } from "./cost-C2CuA66z.js";
11
- import { $n as writeAgentStateJsonSync, An as getAgentDir, Bt as resolveStaffing, C as restartAgent, Ct as deliverAgentPermissionDecision, E as resumeAgent, En as clearAgentTroubled, Et as setAgentDeliveryMethod, F as getActivity, I as getLatestSessionId, Jn as saveAgentStateSync, Jt as getProviderAuthMode, K as stopAgent, L as getLatestSessionIdSync, Lt as transitionIssueToInProgress, M as init_operator_interventions, Mn as getAgentState, N as operatorInterventionEvent, Pn as getAgentStateSync, Qn as wipeAgentStateDirs, R as getSessionId, S as recoverAgent, St as deliverAgentMessage, Vn as markAgentStoppedState, X as listAgentStates, Yn as setAgentPaused, Z as listRunningAgents, _t as init_config, cn as determineModel, er as init_persistent_logger, fn as init_provider_health, g as init_tier_escalation, gr as saveAgentRuntimeState, h as decideEscalation, j as messageAgent, lr as normalizeAgentId, mr as getAgentRuntimeStateSync, pn as validateProviderHealth, pr as getAgentRuntimeState, qn as saveAgentState, t as init_agents, tr as logAgentLifecycleSync, wn as clearAgentPaused, yt as loadCloisterConfigSync, z as saveSessionId, zt as init_staffing } from "./agents-C7V4odQ6.js";
12
- import { t as init_behavior } from "./behavior-By-2Wipv.js";
13
- import { a as performHandoff, i as checkAllTriggers, s as getAgentHealth, t as getCloisterService } from "./service-HKDrIy0h.js";
14
- import { a as init_tracker_config, t as getGitHubConfig } from "./tracker-config-C3hiPVAM.js";
15
- import { n as init_issue_service_singleton, r as issue_service_singleton_exports } from "./issue-service-singleton-CDGt__oQ.js";
8
+ import { D as AGENT_COLUMNS_FOR_DB, M as stateToOverdeckParamsForDb, c as init_review_status, k as init_agent_state_sync, s as getReviewStatusSync, u as loadReviewStatuses, y as setReviewStatusSync } from "./review-status-gPndPUBc.js";
9
+ import { a as EventStoreService, c as ReadModelService, d as init_read_model, i as init_issue_lifecycle, s as init_domain_services, t as IssueLifecycle, u as getClosedIssueIdsForReadSource } from "./issue-lifecycle-543pQX9D.js";
10
+ import { o as getPricingSync, s as init_cost, t as calculateCostSync } from "./cost-CCnqa5xK.js";
11
+ import { $n as writeAgentStateJsonSync, An as getAgentDir, Bt as resolveStaffing, C as restartAgent, Ct as deliverAgentPermissionDecision, E as resumeAgent, En as clearAgentTroubled, Et as setAgentDeliveryMethod, F as getActivity, I as getLatestSessionId, Jn as saveAgentStateSync, Jt as getProviderAuthMode, K as stopAgent, L as getLatestSessionIdSync, Lt as transitionIssueToInProgress, M as init_operator_interventions, Mn as getAgentState, N as operatorInterventionEvent, Pn as getAgentStateSync, Qn as wipeAgentStateDirs, R as getSessionId, S as recoverAgent, St as deliverAgentMessage, Vn as markAgentStoppedState, X as listAgentStates, Yn as setAgentPaused, Z as listRunningAgents, _t as init_config, cn as determineModel, dr as normalizeAgentId, er as init_persistent_logger, fn as init_provider_health, g as init_tier_escalation, gr as getAgentRuntimeStateSync, h as decideEscalation, hr as getAgentRuntimeState, j as messageAgent, pn as validateProviderHealth, qn as saveAgentState, t as init_agents, tr as logAgentLifecycleSync, vr as saveAgentRuntimeState, wn as clearAgentPaused, yt as loadCloisterConfigSync, z as saveSessionId, zt as init_staffing } from "./agents-B5LfpLPv.js";
12
+ import { t as init_behavior } from "./behavior-CPf0pbOt.js";
13
+ import { a as performHandoff, i as checkAllTriggers, s as getAgentHealth, t as getCloisterService } from "./service-V0sUK-OR.js";
14
+ import { a as init_tracker_config, t as getGitHubConfig } from "./tracker-config-BmdJU_w6.js";
15
+ import { n as init_issue_service_singleton, r as issue_service_singleton_exports } from "./issue-service-singleton-Brc3t0SV.js";
16
16
  import { a as PAN_DIRNAME, i as PAN_CONTINUE_FILENAME, p as init_types } from "./types-CE1m_daD.js";
17
- import { I as generateVBriefFilename, L as init_lifecycle, f as readTierOverrides, g as serializeVBriefDocument, h as recordTierPromotion, m as readWorkspacePlanSync, o as init_io, r as findPlan, u as readPlan } from "./io-Wy8YpFeP.js";
18
- import { d as getCliproxyAuthDir, g as getCliproxyLogPath, l as decodeJwtPayload, v as init_cliproxy } from "./cliproxy-J-_1iIXe.js";
19
- import { _ as init_codex_conversation_parser, c as parseEntireConversation, d as init_pi_conversation_parser, g as parseOhmypiConversationMessages, m as init_ohmypi_conversation_parser, p as parsePiConversationMessages, t as init_conversation_service, v as parseCodexConversationMessages } from "./conversation-service-DvG8vZSV.js";
20
- import { n as recordFeatureRegistryLifecycle, t as init_feature_registry_population } from "./feature-registry-population-Dwyj9gEM.js";
21
- import { c as requireModelOverrideSync, n as init_state_home, o as init_model_validation, r as isStateMigrated, s as normalizeModelOverrideSync } from "./state-home-Bgj7i-C7.js";
22
- import { a as init_stack_health, i as getWorkspaceStackHealth } from "./stack-health-BJVh1TCg.js";
23
- import { s as getDispatchableItems, u as init_dag } from "./dag-jH8ZkewR.js";
24
- import { i as queryBeadById, r as init_beads_query } from "./beads-query-BrVNWoSL.js";
25
- import { a as init_lifecycle_io, c as updatePlanStatus, s as transitionVBriefOnMain } from "./lifecycle-io-DSrv9xGh.js";
26
- import { Lt as getRuntimeForAgent, Q as createInFlightGuard, Qt as getAgentWorkspace$1, Rt as classifyMemoryPressure, Ut as getResourceConfig, Wt as getSystemHealthSnapshot, Xt as getAgentJsonlPath$1, Zt as getAgentPendingQuestions$1, nn as normalizeAwaitingInputPrompt, qt as computeAgentEnrichment } from "./deacon-CGHl90eC.js";
27
- import { o as stopWorkspaceDocker, r as init_workspace_manager } from "./workspace-manager-CEWK-OXd.js";
28
- import { at as init_jsonl_parser, ot as normalizeModelName } from "./specialists-nZ0mRwpZ.js";
17
+ import { I as generateVBriefFilename, L as init_lifecycle, f as readTierOverrides, g as serializeVBriefDocument, h as recordTierPromotion, m as readWorkspacePlanSync, o as init_io, r as findPlan, u as readPlan } from "./io-A7ZuOBkz.js";
18
+ import { d as getCliproxyAuthDir, g as getCliproxyLogPath, l as decodeJwtPayload, v as init_cliproxy } from "./cliproxy-CCzwuSNe.js";
19
+ import { _ as init_codex_conversation_parser, c as parseEntireConversation, d as init_pi_conversation_parser, g as parseOhmypiConversationMessages, m as init_ohmypi_conversation_parser, p as parsePiConversationMessages, t as init_conversation_service, v as parseCodexConversationMessages } from "./conversation-service-CuTVU8dV.js";
20
+ import { n as recordFeatureRegistryLifecycle, t as init_feature_registry_population } from "./feature-registry-population-DA7bO6Zn.js";
21
+ import { c as requireModelOverrideSync, n as init_state_home, o as init_model_validation, r as isStateMigrated, s as normalizeModelOverrideSync } from "./state-home-C2Bicw9N.js";
22
+ import { a as init_stack_health, i as getWorkspaceStackHealth } from "./stack-health-Qd7rPiVe.js";
23
+ import { s as getDispatchableItems, u as init_dag } from "./dag-Dv2r5bVD.js";
24
+ import { i as queryBeadById, r as init_beads_query } from "./beads-query-e6oku4P5.js";
25
+ import { a as init_lifecycle_io, c as updatePlanStatus, s as transitionVBriefOnMain } from "./lifecycle-io-Bqvj0m3i.js";
26
+ import { Lt as getRuntimeForAgent, Q as createInFlightGuard, Qt as getAgentWorkspace$1, Rt as classifyMemoryPressure, Ut as getResourceConfig, Wt as getSystemHealthSnapshot, Xt as getAgentJsonlPath$1, Zt as getAgentPendingQuestions$1, nn as normalizeAwaitingInputPrompt, qt as computeAgentEnrichment } from "./deacon-CM0MxbS8.js";
27
+ import { o as stopWorkspaceDocker, r as init_workspace_manager } from "./workspace-manager-BJhW2sky.js";
28
+ import { at as init_jsonl_parser, ot as normalizeModelName } from "./specialists-DjHbwQ_p.js";
29
29
  import { t as withBdMutex } from "./bd-mutex-BItGvLQ8.js";
30
- import { a as loadWorkspaceMetadataSync } from "./workspace-metadata-1eu1RvAT.js";
31
- import { c as syncBeadStatusToVBrief } from "./beads-DlZm-vrG.js";
30
+ import { a as loadWorkspaceMetadataSync } from "./workspace-metadata-QQmo_Z0l.js";
31
+ import { c as syncBeadStatusToVBrief } from "./beads-DD7fYCl5.js";
32
+ import { dirname, join } from "node:path";
32
33
  import { Cause, Data, Effect, Layer, Option, Schema, Stream } from "effect";
33
- import { join } from "path";
34
+ import { join as join$1 } from "path";
34
35
  import { homedir } from "node:os";
35
36
  import { existsSync } from "node:fs";
36
- import { dirname as dirname$1, join as join$1 } from "node:path";
37
37
  import { HttpRouter, HttpServerRequest, HttpServerResponse } from "effect/unstable/http";
38
38
  import { access, appendFile, cp, lstat, mkdir, open, readFile, readdir, rm, stat as stat$1, writeFile } from "node:fs/promises";
39
39
  import { randomUUID } from "crypto";
@@ -159,7 +159,7 @@ init_cliproxy();
159
159
  /** Wrapper error for Codex auth probing — preserves the underlying cause. */
160
160
  var CodexAuthCheckError = class extends Data.TaggedError("CodexAuthCheckError") {};
161
161
  async function checkCodexAuthStatusPromise(options = {}) {
162
- const credPath = join(getCliproxyAuthDir(), "codex-primary.json");
162
+ const credPath = join$1(getCliproxyAuthDir(), "codex-primary.json");
163
163
  let raw;
164
164
  let credMtimeMs = null;
165
165
  try {
@@ -473,15 +473,15 @@ function behaviorForHarness(harness) {
473
473
  async function pickFreshestSessionId(candidates, agentId, opts) {
474
474
  if (candidates.length === 0) return null;
475
475
  if (candidates.length === 1) return candidates[0];
476
- const projectsRoot = opts.claudeProjectsDirOverride ?? join$1(homedir(), ".claude", "projects");
476
+ const projectsRoot = opts.claudeProjectsDirOverride ?? join(homedir(), ".claude", "projects");
477
477
  let candidatePaths = [];
478
478
  try {
479
479
  const workspace = await Effect.runPromise(getAgentWorkspace$1(agentId));
480
480
  if (workspace) {
481
- const projectDir = join$1(projectsRoot, encodeClaudeProjectDir(workspace));
481
+ const projectDir = join(projectsRoot, encodeClaudeProjectDir(workspace));
482
482
  candidatePaths = candidates.map((id) => ({
483
483
  id,
484
- path: join$1(projectDir, `${id}.jsonl`)
484
+ path: join(projectDir, `${id}.jsonl`)
485
485
  }));
486
486
  }
487
487
  } catch {}
@@ -492,7 +492,7 @@ async function pickFreshestSessionId(candidates, agentId, opts) {
492
492
  if (!SAFE_DIR.test(dir)) continue;
493
493
  candidatePaths.push({
494
494
  id,
495
- path: join$1(projectsRoot, dir, `${id}.jsonl`)
495
+ path: join(projectsRoot, dir, `${id}.jsonl`)
496
496
  });
497
497
  }
498
498
  } catch {}
@@ -508,10 +508,10 @@ async function pickFreshestSessionId(candidates, agentId, opts) {
508
508
  }
509
509
  /** Async equivalent of getLatestSessionId from lib/agents.ts. */
510
510
  async function resolveClaudeSessionId(agentId, opts = {}) {
511
- const agentDir = join$1(opts.agentsDirOverride ?? join$1(getOverdeckHome(), "agents"), agentId);
512
- const sessionIdTrimmed = (await readOptional(join$1(agentDir, "session.id")))?.trim();
511
+ const agentDir = join(opts.agentsDirOverride ?? join(getOverdeckHome(), "agents"), agentId);
512
+ const sessionIdTrimmed = (await readOptional(join(agentDir, "session.id")))?.trim();
513
513
  if (sessionIdTrimmed) return sessionIdTrimmed;
514
- const sessionsRaw = await readOptional(join$1(agentDir, "sessions.json"));
514
+ const sessionsRaw = await readOptional(join(agentDir, "sessions.json"));
515
515
  if (sessionsRaw) try {
516
516
  const parsed = JSON.parse(sessionsRaw);
517
517
  if (Array.isArray(parsed)) {
@@ -545,7 +545,7 @@ const LAUNCHER_SESSION_ID_RE = new RegExp(`--session-id\\s+'?(${LAUNCHER_UUID})'
545
545
  const LAUNCHER_RESUME_RE = new RegExp(`--resume\\s+'?(${LAUNCHER_UUID})'?`);
546
546
  async function readLauncherPinnedSessionId(tmuxSession, opts = {}) {
547
547
  const home = opts.overdeckHomeOverride ?? getOverdeckHome();
548
- const candidates = [join$1(home, "conversations", tmuxSession, "launcher.sh"), join$1(home, "agents", tmuxSession, "launcher.sh")];
548
+ const candidates = [join(home, "conversations", tmuxSession, "launcher.sh"), join(home, "agents", tmuxSession, "launcher.sh")];
549
549
  for (const path of candidates) {
550
550
  const text = await readOptional(path);
551
551
  if (!text) continue;
@@ -561,7 +561,7 @@ async function readLauncherPinnedSessionId(tmuxSession, opts = {}) {
561
561
  */
562
562
  async function readRecordedState(agentId, opts) {
563
563
  if (opts.agentsDirOverride) try {
564
- const raw = await readFile(join$1(opts.agentsDirOverride, agentId, "state.json"), "utf8");
564
+ const raw = await readFile(join(opts.agentsDirOverride, agentId, "state.json"), "utf8");
565
565
  const s = JSON.parse(raw);
566
566
  return {
567
567
  harness: typeof s.harness === "string" ? s.harness : null,
@@ -614,7 +614,7 @@ async function agentHasClaudeTranscript(agentId, opts = {}) {
614
614
  if (!sessionId) return false;
615
615
  const workspace = (await readRecordedState(agentId, opts)).workspace;
616
616
  if (!workspace) return false;
617
- return pathExists$1(join$1(opts.claudeProjectsDirOverride ?? join$1(homedir(), ".claude", "projects"), encodeClaudeProjectDir(workspace), `${sessionId}.jsonl`));
617
+ return pathExists$1(join(opts.claudeProjectsDirOverride ?? join(homedir(), ".claude", "projects"), encodeClaudeProjectDir(workspace), `${sessionId}.jsonl`));
618
618
  }
619
619
  /**
620
620
  * Resolve the Codex rollout JSONL for a codex-harness agent (PAN-1805).
@@ -626,11 +626,11 @@ async function agentHasClaudeTranscript(agentId, opts = {}) {
626
626
  * the newest one is its current thread.
627
627
  */
628
628
  async function resolveCodexRolloutPath(agentId, opts = {}) {
629
- const agentDir = join$1(opts.agentsDirOverride ?? join$1(getOverdeckHome(), "agents"), agentId);
630
- const codexHome = join$1(agentDir, "codex-home");
629
+ const agentDir = join(opts.agentsDirOverride ?? join(getOverdeckHome(), "agents"), agentId);
630
+ const codexHome = join(agentDir, "codex-home");
631
631
  if (!await pathExists$1(codexHome)) return null;
632
- const { findRolloutPath, findLatestRollout } = await import("./codex-BUZjrnqH.js");
633
- const threadId = (await readOptional(join$1(agentDir, "codex-thread-id")))?.trim();
632
+ const { findRolloutPath, findLatestRollout } = await import("./codex-CY-QRuU9.js");
633
+ const threadId = (await readOptional(join(agentDir, "codex-thread-id")))?.trim();
634
634
  if (threadId) {
635
635
  const rollout = findRolloutPath(codexHome, threadId);
636
636
  if (rollout) return rollout;
@@ -645,14 +645,14 @@ async function resolveCodexRolloutPath(agentId, opts = {}) {
645
645
  * Return the freshest transcript by mtime, or null if pi hasn't written one yet.
646
646
  */
647
647
  async function resolvePiSessionPath(agentId, opts = {}) {
648
- const agentDir = join$1(opts.agentsDirOverride ?? join$1(getOverdeckHome(), "agents"), agentId);
648
+ const agentDir = join(opts.agentsDirOverride ?? join(getOverdeckHome(), "agents"), agentId);
649
649
  const NON_TRANSCRIPT = new Set([
650
650
  "cost-events.jsonl",
651
651
  "activity.jsonl",
652
652
  "pending-events.jsonl"
653
653
  ]);
654
654
  let best = null;
655
- for (const dir of [join$1(agentDir, "sessions"), agentDir]) {
655
+ for (const dir of [join(agentDir, "sessions"), agentDir]) {
656
656
  let entries;
657
657
  try {
658
658
  entries = await readdir(dir);
@@ -661,7 +661,7 @@ async function resolvePiSessionPath(agentId, opts = {}) {
661
661
  }
662
662
  for (const name of entries) {
663
663
  if (!name.endsWith(".jsonl") || NON_TRANSCRIPT.has(name)) continue;
664
- const p = join$1(dir, name);
664
+ const p = join(dir, name);
665
665
  try {
666
666
  const m = (await stat$1(p)).mtimeMs;
667
667
  if (!best || m > best.mtime) best = {
@@ -686,7 +686,7 @@ async function resolveJsonlPath(agentId, workspacePath, opts = {}) {
686
686
  if (behavior.transcriptKind === "ohmypi-jsonl") return resolvePiSessionPath(agentId, opts);
687
687
  const claudeSessionId = await resolveClaudeSessionId(agentId, opts);
688
688
  if (!claudeSessionId) return null;
689
- const jsonlPath = join$1(opts.claudeProjectsDirOverride ?? join$1(homedir(), ".claude", "projects"), encodeClaudeProjectDir(workspacePath), `${claudeSessionId}.jsonl`);
689
+ const jsonlPath = join(opts.claudeProjectsDirOverride ?? join(homedir(), ".claude", "projects"), encodeClaudeProjectDir(workspacePath), `${claudeSessionId}.jsonl`);
690
690
  if (await pathExists$1(jsonlPath)) return jsonlPath;
691
691
  return null;
692
692
  }
@@ -875,18 +875,18 @@ const cache = /* @__PURE__ */ new Map();
875
875
  * sees branch flips in worktrees.
876
876
  */
877
877
  async function locateHeadPath(absPath) {
878
- const gitMarker = join$1(absPath, ".git");
878
+ const gitMarker = join(absPath, ".git");
879
879
  let markerStat;
880
880
  try {
881
881
  markerStat = await stat$1(gitMarker);
882
882
  } catch {
883
883
  return null;
884
884
  }
885
- if (markerStat.isDirectory()) return join$1(gitMarker, "HEAD");
885
+ if (markerStat.isDirectory()) return join(gitMarker, "HEAD");
886
886
  if (markerStat.isFile()) try {
887
887
  const match = (await readFile(gitMarker, "utf-8")).match(/^gitdir:\s*(.+)$/m);
888
888
  if (!match) return null;
889
- return join$1(match[1].trim(), "HEAD");
889
+ return join(match[1].trim(), "HEAD");
890
890
  } catch {
891
891
  return null;
892
892
  }
@@ -1011,9 +1011,9 @@ async function spawnPanCommandDetached(input) {
1011
1011
  const { agentSessionName, issueId, role, workspacePath, args } = input;
1012
1012
  const cwd = input.cwd ?? workspacePath;
1013
1013
  const activityId = `activity-${Date.now()}`;
1014
- const agentDir = join$1(homedir(), ".overdeck", "agents", agentSessionName);
1014
+ const agentDir = join(homedir(), ".overdeck", "agents", agentSessionName);
1015
1015
  await mkdir(agentDir, { recursive: true });
1016
- const spawnLogPath = join$1(agentDir, "spawn.log");
1016
+ const spawnLogPath = join(agentDir, "spawn.log");
1017
1017
  const spawnLogHandle = await open(spawnLogPath, "a");
1018
1018
  const child = spawn("pan", args, {
1019
1019
  cwd,
@@ -1115,7 +1115,7 @@ async function readInternalTokenForRequest() {
1115
1115
  const fromEnv = process.env.OVERDECK_INTERNAL_TOKEN;
1116
1116
  if (fromEnv && fromEnv.length > 0) return fromEnv;
1117
1117
  try {
1118
- const token = (await readFile(join$1(getOverdeckHome(), "internal-token"), "utf8")).trim();
1118
+ const token = (await readFile(join(getOverdeckHome(), "internal-token"), "utf8")).trim();
1119
1119
  return token.length > 0 ? token : null;
1120
1120
  } catch {
1121
1121
  return null;
@@ -1140,14 +1140,14 @@ async function validateAgentRuntimeEventAuth(request) {
1140
1140
  };
1141
1141
  }
1142
1142
  async function appendAgentLifecycleLog(agentId, event, details = {}) {
1143
- const agentDir = join$1(homedir(), ".overdeck", "agents", agentId);
1143
+ const agentDir = join(homedir(), ".overdeck", "agents", agentId);
1144
1144
  await mkdir(agentDir, { recursive: true });
1145
1145
  const logLine = JSON.stringify({
1146
1146
  ts: (/* @__PURE__ */ new Date()).toISOString(),
1147
1147
  event,
1148
1148
  ...details
1149
1149
  });
1150
- await appendFile(join$1(agentDir, "lifecycle.log"), logLine + "\n");
1150
+ await appendFile(join(agentDir, "lifecycle.log"), logLine + "\n");
1151
1151
  }
1152
1152
  function updateRegistryForAgentStart(issueId, workspacePath, agentId) {
1153
1153
  recordFeatureRegistryLifecycle({
@@ -1278,7 +1278,7 @@ function buildStoppedAgentLifecycle(agentOrIssueId, state, runtimeData) {
1278
1278
  };
1279
1279
  }
1280
1280
  async function readRemoteAgentState(agentId) {
1281
- const remoteStateFile = join$1(homedir(), ".overdeck", "agents", agentId, "remote-state.json");
1281
+ const remoteStateFile = join(homedir(), ".overdeck", "agents", agentId, "remote-state.json");
1282
1282
  if (!existsSync(remoteStateFile)) return {};
1283
1283
  try {
1284
1284
  return JSON.parse(await readFile(remoteStateFile, "utf-8"));
@@ -1291,7 +1291,7 @@ async function captureAgentOutputBeforeKill(agentId) {
1291
1291
  if (!output) return;
1292
1292
  const agentDir = getAgentDir(agentId);
1293
1293
  await mkdir(agentDir, { recursive: true });
1294
- await writeFile(join$1(agentDir, "output.log"), output);
1294
+ await writeFile(join(agentDir, "output.log"), output);
1295
1295
  }
1296
1296
  function buildHostOverrideConfirmation(issueId) {
1297
1297
  return `I understand this bypasses workspace isolation for ${issueId.toUpperCase()}`;
@@ -1304,26 +1304,26 @@ function getProjectPath(linearProjectId, issuePrefix) {
1304
1304
  if (config) {
1305
1305
  for (const { owner, repo, prefix } of config.repos) if ((prefix || repo.toUpperCase().replace(/-CLI$/, "").replace(/-/g, "")).toUpperCase() === issuePrefix.toUpperCase()) {
1306
1306
  const possiblePaths = [
1307
- join$1(homedir(), "Projects", repo),
1308
- join$1(homedir(), "Projects", repo.replace(/-cli$/, "")),
1309
- join$1(homedir(), "Projects", owner, repo)
1307
+ join(homedir(), "Projects", repo),
1308
+ join(homedir(), "Projects", repo.replace(/-cli$/, "")),
1309
+ join(homedir(), "Projects", owner, repo)
1310
1310
  ];
1311
1311
  for (const path of possiblePaths) if (existsSync(path)) return path;
1312
1312
  }
1313
1313
  }
1314
1314
  }
1315
- return join$1(homedir(), "Projects");
1315
+ return join(homedir(), "Projects");
1316
1316
  }
1317
1317
  async function getWorkspaceLocation(issueId) {
1318
1318
  try {
1319
- const workspacesDir = join$1(homedir(), ".overdeck", "workspaces");
1319
+ const workspacesDir = join(homedir(), ".overdeck", "workspaces");
1320
1320
  const variations = [
1321
1321
  issueId.toLowerCase(),
1322
1322
  issueId.toUpperCase(),
1323
1323
  issueId
1324
1324
  ];
1325
1325
  for (const v of variations) {
1326
- const yamlPath = join$1(workspacesDir, `${v}.yaml`);
1326
+ const yamlPath = join(workspacesDir, `${v}.yaml`);
1327
1327
  if (existsSync(yamlPath)) {
1328
1328
  if ((await readFile(yamlPath, "utf-8")).includes("location: remote")) return "remote";
1329
1329
  return "local";
@@ -1485,7 +1485,7 @@ const getAgentsRoute = HttpRouter.add("GET", "/api/agents", httpHandler(Effect.g
1485
1485
  const isRemote = remoteState.location === "remote";
1486
1486
  const runtimeData = await Effect.runPromise(getAgentRuntimeState(name));
1487
1487
  const startedAt = state.startedAt || (session ? new Date(session.created).toISOString() : (/* @__PURE__ */ new Date()).toISOString());
1488
- const healthFile = join$1(homedir(), ".overdeck", "agents", name, "health.json");
1488
+ const healthFile = join(homedir(), ".overdeck", "agents", name, "health.json");
1489
1489
  let health = { killCount: 0 };
1490
1490
  if (existsSync(healthFile)) try {
1491
1491
  health = {
@@ -1605,11 +1605,11 @@ const getAgentsRoute = HttpRouter.add("GET", "/api/agents", httpHandler(Effect.g
1605
1605
  const gitStatus = workspace && !isRemote ? await getGitStatusAsync(workspace) : null;
1606
1606
  let contextPercent = null;
1607
1607
  let initialContextPercent = null;
1608
- const agentCtxDir = join$1(homedir(), ".overdeck", "agents", name);
1608
+ const agentCtxDir = join(homedir(), ".overdeck", "agents", name);
1609
1609
  try {
1610
- const ctxFile = join$1(agentCtxDir, "context-pct");
1610
+ const ctxFile = join(agentCtxDir, "context-pct");
1611
1611
  contextPercent = parseInt((await readFile(ctxFile, "utf-8").catch(() => "")).trim(), 10) || null;
1612
- const initCtxFile = join$1(agentCtxDir, "initial-context-pct");
1612
+ const initCtxFile = join(agentCtxDir, "initial-context-pct");
1613
1613
  initialContextPercent = parseInt((await readFile(initCtxFile, "utf-8").catch(() => "")).trim(), 10) || null;
1614
1614
  } catch {}
1615
1615
  return {
@@ -1707,8 +1707,8 @@ const getAgentOutputRoute = HttpRouter.add("GET", "/api/agents/:id/output", http
1707
1707
  const lines = Option.isSome(urlOpt) ? urlOpt.value.searchParams.get("lines") ?? "100" : "100";
1708
1708
  return yield* Effect.promise(async () => {
1709
1709
  try {
1710
- const agentStateDir = join$1(homedir(), ".overdeck", "agents", id);
1711
- const remoteStateFile = join$1(agentStateDir, "remote-state.json");
1710
+ const agentStateDir = join(homedir(), ".overdeck", "agents", id);
1711
+ const remoteStateFile = join(agentStateDir, "remote-state.json");
1712
1712
  let isRemote = false;
1713
1713
  let vmName = "";
1714
1714
  if (existsSync(remoteStateFile)) try {
@@ -1720,11 +1720,11 @@ const getAgentOutputRoute = HttpRouter.add("GET", "/api/agents/:id/output", http
1720
1720
  } catch {}
1721
1721
  let stdout;
1722
1722
  if (isRemote && vmName) {
1723
- const { getRemoteAgentOutput } = await import("./remote-agents-DNuaAgU6.js");
1723
+ const { getRemoteAgentOutput } = await import("./remote-agents-UHoi4oGr.js");
1724
1724
  stdout = await getRemoteAgentOutput(id, vmName, parseInt(String(lines), 10) || 100);
1725
1725
  } else stdout = await Effect.runPromise(capturePane(id, parseInt(String(lines), 10) || 100));
1726
1726
  if (!stdout || stdout.trim() === "" || stdout.trim() === "Session not found") {
1727
- const logContent = await readFile(join$1(agentStateDir, "output.log"), "utf-8").catch(() => null);
1727
+ const logContent = await readFile(join(agentStateDir, "output.log"), "utf-8").catch(() => null);
1728
1728
  if (logContent) {
1729
1729
  const logLines = logContent.split("\n");
1730
1730
  const numLines = parseInt(String(lines), 10) || 100;
@@ -1735,7 +1735,7 @@ const getAgentOutputRoute = HttpRouter.add("GET", "/api/agents/:id/output", http
1735
1735
  return jsonResponse({ output: stdout });
1736
1736
  } catch (error) {
1737
1737
  try {
1738
- const logContent = await readFile(join$1(join$1(homedir(), ".overdeck", "agents", id), "output.log"), "utf-8").catch(() => null);
1738
+ const logContent = await readFile(join(join(homedir(), ".overdeck", "agents", id), "output.log"), "utf-8").catch(() => null);
1739
1739
  if (logContent) return jsonResponse({ output: logContent });
1740
1740
  } catch {}
1741
1741
  return jsonResponse({ output: "" });
@@ -1790,7 +1790,7 @@ async function buildConversationResponse(id) {
1790
1790
  if (pinnedSessionId) {
1791
1791
  const workspace = await Effect.runPromise(getAgentWorkspace(id));
1792
1792
  if (workspace) {
1793
- const candidate = join$1(homedir(), ".claude", "projects", encodeClaudeProjectDir(workspace), `${pinnedSessionId}.jsonl`);
1793
+ const candidate = join(homedir(), ".claude", "projects", encodeClaudeProjectDir(workspace), `${pinnedSessionId}.jsonl`);
1794
1794
  if (existsSync(candidate)) jsonlPath = candidate;
1795
1795
  }
1796
1796
  }
@@ -1862,7 +1862,7 @@ const getAgentTimelineRoute = HttpRouter.add("GET", "/api/agents/:id/timeline",
1862
1862
  //#region routes/agents/messaging.ts
1863
1863
  init_agents();
1864
1864
  async function sendAgentMessage(id, message) {
1865
- const remoteStateFile = join$1(join$1(homedir(), ".overdeck", "agents", id), "remote-state.json");
1865
+ const remoteStateFile = join(join(homedir(), ".overdeck", "agents", id), "remote-state.json");
1866
1866
  let isRemote = false;
1867
1867
  if (existsSync(remoteStateFile)) try {
1868
1868
  const state = JSON.parse(await readFile(remoteStateFile, "utf-8"));
@@ -2134,7 +2134,7 @@ const postInternalAgentPermissionRequestRoute = HttpRouter.add("POST", "/api/int
2134
2134
  error: "missing agent id"
2135
2135
  }, { status: 400 });
2136
2136
  const request = yield* HttpServerRequest.HttpServerRequest;
2137
- const { INTERNAL_TOKEN_HEADER, getInternalTokenSync } = yield* Effect.promise(() => import("./internal-token-DrGdpLFo.js"));
2137
+ const { INTERNAL_TOKEN_HEADER, getInternalTokenSync } = yield* Effect.promise(() => import("./internal-token-nobT6FhA.js"));
2138
2138
  const expected = getInternalTokenSync();
2139
2139
  if (!expected) return jsonResponse({
2140
2140
  ok: false,
@@ -2401,7 +2401,7 @@ const getAgentHealthHistoryRoute = HttpRouter.add("GET", "/api/agents/:id/health
2401
2401
  const request = yield* HttpServerRequest.HttpServerRequest;
2402
2402
  const urlOpt = HttpServerRequest.toURL(request);
2403
2403
  const hours = Option.isSome(urlOpt) ? urlOpt.value.searchParams.get("hours") ?? "24" : "24";
2404
- const { getHealthHistory } = yield* Effect.promise(() => import("./health-events-CD6q47ub.js"));
2404
+ const { getHealthHistory } = yield* Effect.promise(() => import("./health-events-DA_JLpgZ.js"));
2405
2405
  const endTime = /* @__PURE__ */ new Date();
2406
2406
  const startTime = /* @__PURE__ */ new Date(endTime.getTime() - parseInt(hours) * 60 * 60 * 1e3);
2407
2407
  const events = getHealthHistory(id, startTime.toISOString(), endTime.toISOString());
@@ -2442,7 +2442,7 @@ function emitAgentRuntimeEvent(id, body, timestamp) {
2442
2442
  detail: String(decoded.failure)
2443
2443
  }, { status: 400 })
2444
2444
  };
2445
- const { AgentStateService } = yield* Effect.promise(() => import("./agent-state-service-DmFpIMbP.js"));
2445
+ const { AgentStateService } = yield* Effect.promise(() => import("./agent-state-service-BaZH7sXJ.js"));
2446
2446
  yield* (yield* AgentStateService).emit(decoded.success);
2447
2447
  return {
2448
2448
  ok: true,
@@ -2524,7 +2524,7 @@ const getAgentRuntimeRoute = HttpRouter.add("GET", "/api/agents/:id/runtime", ht
2524
2524
  success: false,
2525
2525
  error: "missing agent id"
2526
2526
  }, { status: 400 });
2527
- const { AgentStateService } = yield* Effect.promise(() => import("./agent-state-service-DmFpIMbP.js"));
2527
+ const { AgentStateService } = yield* Effect.promise(() => import("./agent-state-service-BaZH7sXJ.js"));
2528
2528
  const snapshot = yield* (yield* AgentStateService).get(id);
2529
2529
  if (!snapshot) return jsonResponse({
2530
2530
  success: false,
@@ -2635,8 +2635,8 @@ function createAgentStopHandler(lifecycleEvent) {
2635
2635
  yield* stopAgent(id);
2636
2636
  if (stateBeforeStop?.issueId) yield* Effect.promise(async () => {
2637
2637
  try {
2638
- const { resolveProjectFromIssueSync } = await import("./projects-BNmVxnNt.js");
2639
- const { findWorkspacePath } = await import("./archive-planning-B4Qi02bk.js");
2638
+ const { resolveProjectFromIssueSync } = await import("./projects-Bqfwuqet.js");
2639
+ const { findWorkspacePath } = await import("./archive-planning-BbZe-8IK.js");
2640
2640
  const issueLower = stateBeforeStop.issueId.toLowerCase();
2641
2641
  const workspacePath = findWorkspacePath(resolveProjectFromIssueSync(stateBeforeStop.issueId)?.projectPath ?? process.cwd(), issueLower);
2642
2642
  if (workspacePath) {
@@ -3124,9 +3124,9 @@ const postAgentRestartFreshRoute = HttpRouter.add("POST", "/api/agents/:id/resta
3124
3124
  let effectiveHarness = null;
3125
3125
  if (harness) effectiveHarness = (yield* Effect.promise(async () => canUseHarnessSync(harness, spawnModel, await getProviderAuthMode(spawnModel)))).allowed ? harness : "claude-code";
3126
3126
  const agentSessionName = `agent-${issueId.toLowerCase()}`;
3127
- const projectPath = agentState.workspace ? dirname$1(agentState.workspace) : void 0;
3127
+ const projectPath = agentState.workspace ? dirname(agentState.workspace) : void 0;
3128
3128
  const projectRoot = resolveProjectFromIssueSync(issueId)?.projectPath ?? projectPath ?? process.cwd();
3129
- const workspacePath = agentState.workspace ?? join$1(projectRoot, "workspaces", `feature-${issueId.toLowerCase()}`);
3129
+ const workspacePath = agentState.workspace ?? join(projectRoot, "workspaces", `feature-${issueId.toLowerCase()}`);
3130
3130
  const args = buildPanStartArgs({
3131
3131
  issueId,
3132
3132
  model: spawnModel,
@@ -3239,9 +3239,9 @@ const postAgentResetSessionRoute = HttpRouter.add("POST", "/api/agents/:id/reset
3239
3239
  lifecycle
3240
3240
  }, { status: 404 });
3241
3241
  const agentDir = getAgentDir(id);
3242
- yield* Effect.promise(() => rm(join$1(agentDir, "session.id"), { force: true }));
3243
- yield* Effect.promise(() => rm(join$1(agentDir, "sessions.json"), { force: true }));
3244
- const runtimeFile = join$1(agentDir, "runtime.json");
3242
+ yield* Effect.promise(() => rm(join(agentDir, "session.id"), { force: true }));
3243
+ yield* Effect.promise(() => rm(join(agentDir, "sessions.json"), { force: true }));
3244
+ const runtimeFile = join(agentDir, "runtime.json");
3245
3245
  if (existsSync(runtimeFile)) try {
3246
3246
  const runtimeContent = yield* Effect.promise(() => readFile(runtimeFile, "utf-8"));
3247
3247
  const runtime = JSON.parse(runtimeContent);
@@ -3508,11 +3508,11 @@ const getAgentCostRoute = HttpRouter.add("GET", "/api/agents/:id/cost", httpHand
3508
3508
  let cacheWriteTokens = 0;
3509
3509
  let detectedModel = agentState.model || "";
3510
3510
  const countedUsageIds = /* @__PURE__ */ new Set();
3511
- const claudeProjectsDir = join$1(process.env.HOME || homedir(), ".claude", "projects");
3511
+ const claudeProjectsDir = join(process.env.HOME || homedir(), ".claude", "projects");
3512
3512
  const workspacePath = agentState.workspace;
3513
3513
  if (workspacePath) {
3514
- const projectDir = join$1(claudeProjectsDir, encodeClaudeProjectDir(workspacePath));
3515
- const sessionsIndexPath = join$1(projectDir, "sessions-index.json");
3514
+ const projectDir = join(claudeProjectsDir, encodeClaudeProjectDir(workspacePath));
3515
+ const sessionsIndexPath = join(projectDir, "sessions-index.json");
3516
3516
  const parseJsonlCost = async (filePath) => {
3517
3517
  const lines = (await readFile(filePath, "utf-8")).split("\n").filter((l) => l.trim());
3518
3518
  for (const line of lines) try {
@@ -3536,7 +3536,7 @@ const getAgentCostRoute = HttpRouter.add("GET", "/api/agents/:id/cost", httpHand
3536
3536
  } catch {}
3537
3537
  if (inputTokens === 0 && existsSync(projectDir)) try {
3538
3538
  const files = (yield* Effect.promise(() => readdir(projectDir))).filter((f) => f.endsWith(".jsonl"));
3539
- for (const file of files) yield* Effect.promise(() => parseJsonlCost(join$1(projectDir, file)));
3539
+ for (const file of files) yield* Effect.promise(() => parseJsonlCost(join(projectDir, file)));
3540
3540
  } catch {}
3541
3541
  }
3542
3542
  if (inputTokens > 0 || outputTokens > 0) {
@@ -3677,8 +3677,8 @@ function synthesizeMinimalVBrief(issue) {
3677
3677
  async function writeAutoStartVBriefPromise(projectRoot, workspacePath, issue) {
3678
3678
  const document = synthesizeMinimalVBrief(issue);
3679
3679
  const canonicalFilename = document.plan.metadata?.canonicalFilename;
3680
- const projectSpecsDir = join(projectRoot, ".pan", "specs");
3681
- const projectSpecPath = join(projectSpecsDir, canonicalFilename);
3680
+ const projectSpecsDir = join$1(projectRoot, ".pan", "specs");
3681
+ const projectSpecPath = join$1(projectSpecsDir, canonicalFilename);
3682
3682
  const projectDocument = {
3683
3683
  ...document,
3684
3684
  plan: {
@@ -3715,15 +3715,15 @@ init_agents();
3715
3715
  function handleRemoteAgentSpawn(input) {
3716
3716
  return Effect.gen(function* () {
3717
3717
  const { issueId, workspacePath, workspaceMetadata, spawnModel, projectPath, spawnGuardrails, lifecycle } = input;
3718
- const { spawnRemoteAgent, checkRemoteSpendCap } = yield* Effect.promise(() => import("./remote-agents-DNuaAgU6.js"));
3719
- const { createFlyProviderFromConfig } = yield* Effect.promise(() => import("./remote-B1Trmr0N.js"));
3720
- const { loadConfigSync: loadPanConfig } = yield* Effect.promise(() => import("./config-CzcWQ24p.js"));
3718
+ const { spawnRemoteAgent, checkRemoteSpendCap } = yield* Effect.promise(() => import("./remote-agents-UHoi4oGr.js"));
3719
+ const { createFlyProviderFromConfig } = yield* Effect.promise(() => import("./remote-D0Old0Cv.js"));
3720
+ const { loadConfigSync: loadPanConfig } = yield* Effect.promise(() => import("./config-DARrpYWA.js"));
3721
3721
  const panConfig = loadPanConfig();
3722
3722
  const spendCap = checkRemoteSpendCap(panConfig);
3723
3723
  if (!spendCap.allowed) return jsonResponse({ error: spendCap.message }, { status: 429 });
3724
3724
  const fly = createFlyProviderFromConfig(panConfig.remote);
3725
3725
  yield* Effect.promise(() => fly.syncAllCredentials(workspaceMetadata.vmName));
3726
- const { buildWorkAgentPrompt, getTrackerContext } = yield* Effect.promise(() => import("./work-agent-prompt-DCdHsm-V.js"));
3726
+ const { buildWorkAgentPrompt, getTrackerContext } = yield* Effect.promise(() => import("./work-agent-prompt-CG5jFV9A.js"));
3727
3727
  const trackerContext = yield* Effect.promise(() => getTrackerContext(issueId, workspacePath));
3728
3728
  const agentPrompt = yield* Effect.promise(() => buildWorkAgentPrompt({
3729
3729
  issueId,
@@ -3820,7 +3820,7 @@ function handleContainerOrchestration(input) {
3820
3820
  if (value !== expected) throw new Error(`Invalid COMPOSE_PROJECT_NAME in ${devPath}: expected ${expected}`);
3821
3821
  return value;
3822
3822
  };
3823
- const devScriptPaths = [join$1(wPath, ".devcontainer", "dev"), join$1(wPath, "dev")];
3823
+ const devScriptPaths = [join(wPath, ".devcontainer", "dev"), join(wPath, "dev")];
3824
3824
  for (const devPath of devScriptPaths) try {
3825
3825
  if (existsSync(devPath)) {
3826
3826
  const content = await readFile(devPath, "utf-8");
@@ -3872,7 +3872,7 @@ function handleContainerOrchestration(input) {
3872
3872
  }));
3873
3873
  if (!containersReady && !allowHost) {
3874
3874
  const earlyAgentId = agentSessionName;
3875
- const earlyStateDir = join$1(homedir(), ".overdeck", "agents", earlyAgentId);
3875
+ const earlyStateDir = join(homedir(), ".overdeck", "agents", earlyAgentId);
3876
3876
  yield* Effect.promise(() => mkdir(earlyStateDir, { recursive: true }));
3877
3877
  saveAgentStateSync({
3878
3878
  id: earlyAgentId,
@@ -3954,7 +3954,7 @@ function handleContainerOrchestration(input) {
3954
3954
  });
3955
3955
  return;
3956
3956
  }
3957
- for (const nmDir of [join$1(workspacePath, "node_modules"), join$1(workspacePath, "src", "dashboard", "frontend", "node_modules")]) try {
3957
+ for (const nmDir of [join(workspacePath, "node_modules"), join(workspacePath, "src", "dashboard", "frontend", "node_modules")]) try {
3958
3958
  if (existsSync(nmDir)) {
3959
3959
  if (!(await lstat(nmDir)).isSymbolicLink()) {
3960
3960
  await rm(nmDir, {
@@ -4173,9 +4173,9 @@ const postAgentsRoute = HttpRouter.add("POST", "/api/agents", httpHandler(Effect
4173
4173
  const resolvedProject = resolveProjectFromIssueSync(String(issueId));
4174
4174
  const projectConfig = resolvedProject ? getProjectSync(resolvedProject.projectKey) : null;
4175
4175
  const projectPath = projectConfig?.path ?? getProjectPath(projectId, issuePrefix);
4176
- const workspacePath = join$1(projectPath, "workspaces", `feature-${issueLower}`);
4176
+ const workspacePath = join(projectPath, "workspaces", `feature-${issueLower}`);
4177
4177
  if (!existsSync(workspacePath)) try {
4178
- const nodeDir = dirname$1(process.execPath);
4178
+ const nodeDir = dirname(process.execPath);
4179
4179
  yield* Effect.promise(() => execAsync$1(`pan workspace create ${issueId} --local`, {
4180
4180
  cwd: projectPath,
4181
4181
  encoding: "utf-8",
@@ -4188,11 +4188,11 @@ const postAgentsRoute = HttpRouter.add("POST", "/api/agents", httpHandler(Effect
4188
4188
  hint: "Try creating the workspace manually: pan workspace create " + issueId + " --local"
4189
4189
  }, { status: 500 });
4190
4190
  }
4191
- const workspacePanDir = join$1(workspacePath, PAN_DIRNAME);
4192
- const workspacePanContinuePath = join$1(workspacePanDir, PAN_CONTINUE_FILENAME);
4193
- const workspaceBeadsDir = join$1(workspacePath, ".beads");
4191
+ const workspacePanDir = join(workspacePath, PAN_DIRNAME);
4192
+ const workspacePanContinuePath = join(workspacePanDir, PAN_CONTINUE_FILENAME);
4193
+ const workspaceBeadsDir = join(workspacePath, ".beads");
4194
4194
  if (!existsSync(workspaceBeadsDir)) {
4195
- const projectRootBeadsDir = join$1(projectPath, ".beads");
4195
+ const projectRootBeadsDir = join(projectPath, ".beads");
4196
4196
  if (existsSync(projectRootBeadsDir)) try {
4197
4197
  yield* Effect.promise(() => cp(projectRootBeadsDir, workspaceBeadsDir, { recursive: true }));
4198
4198
  } catch {}
@@ -4252,7 +4252,7 @@ const postAgentsRoute = HttpRouter.add("POST", "/api/agents", httpHandler(Effect
4252
4252
  if (!hasBeads) {
4253
4253
  console.log(`[agents] No beads for ${issueId} — attempting auto-recovery via createBeadsFromVBrief`);
4254
4254
  try {
4255
- const { createBeadsFromVBrief } = yield* Effect.promise(() => import("./beads-AmCXEv_E.js"));
4255
+ const { createBeadsFromVBrief } = yield* Effect.promise(() => import("./beads-BNU-fb48.js"));
4256
4256
  const recovery = yield* createBeadsFromVBrief(workspacePath);
4257
4257
  beadCount = recovery.created.length;
4258
4258
  hasBeads = recovery.created.length > 0 && (planItemCount === null || recovery.created.length === planItemCount);
@@ -4397,7 +4397,7 @@ const postAgentsRoute = HttpRouter.add("POST", "/api/agents", httpHandler(Effect
4397
4397
  if (allowHost) console.warn(`[agents] agent-spawn-host-override: ${issueId.toUpperCase()} (dashboard-confirmed)`);
4398
4398
  if (shouldCommitLegacyWorkspaceArtifacts(projectConfig ? yield* Effect.promise(() => isStateMigrated(projectConfig)) : false) && (existsSync(workspacePanContinuePath) || existsSync(workspacePanDir))) yield* Effect.gen(function* () {
4399
4399
  const gitRoot = workspacePath;
4400
- if (existsSync(join$1(gitRoot, ".pan"))) {
4400
+ if (existsSync(join(gitRoot, ".pan"))) {
4401
4401
  yield* Effect.promise(() => execAsync$1(`git add .pan/`, {
4402
4402
  cwd: gitRoot,
4403
4403
  encoding: "utf-8"
@@ -4407,7 +4407,7 @@ const postAgentsRoute = HttpRouter.add("POST", "/api/agents", httpHandler(Effect
4407
4407
  encoding: "utf-8"
4408
4408
  }));
4409
4409
  }
4410
- if (existsSync(join$1(gitRoot, ".beads"))) yield* Effect.promise(() => execAsync$1(`git add .beads/`, {
4410
+ if (existsSync(join(gitRoot, ".beads"))) yield* Effect.promise(() => execAsync$1(`git add .beads/`, {
4411
4411
  cwd: gitRoot,
4412
4412
  encoding: "utf-8"
4413
4413
  }));
@@ -4442,7 +4442,7 @@ const postAgentsRoute = HttpRouter.add("POST", "/api/agents", httpHandler(Effect
4442
4442
  console.warn(`[start-agent] Failed to set plan.status=running (non-fatal): ${planStatusErr?.message ?? planStatusErr}`);
4443
4443
  }
4444
4444
  try {
4445
- const { appendSessionEntry, getProjectConfigFromWorkspacePath, resolveProjectForIssue } = yield* Effect.promise(() => import("./record-DjPikotp.js"));
4445
+ const { appendSessionEntry, getProjectConfigFromWorkspacePath, resolveProjectForIssue } = yield* Effect.promise(() => import("./record-De2syxNB.js"));
4446
4446
  const recordProject = resolveProjectForIssue(issueId) ?? getProjectConfigFromWorkspacePath(workspacePath);
4447
4447
  yield* Effect.promise(() => appendSessionEntry(recordProject, issueId, {
4448
4448
  timestamp: (/* @__PURE__ */ new Date()).toISOString(),
@@ -4462,8 +4462,8 @@ const postAgentsRoute = HttpRouter.add("POST", "/api/agents", httpHandler(Effect
4462
4462
  spawnGuardrails,
4463
4463
  lifecycle
4464
4464
  });
4465
- const devScript = join$1(workspacePath, "dev");
4466
- const hasPlanning = existsSync(join$1(workspacePath, PAN_DIRNAME));
4465
+ const devScript = join(workspacePath, "dev");
4466
+ const hasPlanning = existsSync(join(workspacePath, PAN_DIRNAME));
4467
4467
  yield* Effect.promise(() => appendAgentLifecycleLog(agentSessionName, "agent.start_requested", {
4468
4468
  issueId,
4469
4469
  workspacePath,
@@ -4617,7 +4617,7 @@ const postAgentsRoute = HttpRouter.add("POST", "/api/agents", httpHandler(Effect
4617
4617
  }, { status: 500 });
4618
4618
  }
4619
4619
  const earlyAgentId = agentSessionName;
4620
- const earlyStateDir = join$1(homedir(), ".overdeck", "agents", earlyAgentId);
4620
+ const earlyStateDir = join(homedir(), ".overdeck", "agents", earlyAgentId);
4621
4621
  yield* Effect.promise(() => mkdir(earlyStateDir, { recursive: true }));
4622
4622
  saveAgentStateSync({
4623
4623
  id: earlyAgentId,
@@ -4741,7 +4741,7 @@ function handleTieredInspectFailureEscalation(issueId, notes, deps = {}) {
4741
4741
  if (!tiered.escalation.enabled) return null;
4742
4742
  const project = resolveProject(issueId);
4743
4743
  if (!project) return null;
4744
- const workspacePath = join$1(project.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
4744
+ const workspacePath = join(project.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
4745
4745
  if (!exists(workspacePath)) return null;
4746
4746
  const doc = readPlan(workspacePath);
4747
4747
  if (!resolveTieredExecutionEnabled(tiered, doc?.plan.metadata)) return null;
@@ -4860,10 +4860,10 @@ const _serverManagedMerges = /* @__PURE__ */ new Set();
4860
4860
  function firePostMergeLifecycle(issueId, options) {
4861
4861
  const started = postMergeGuard.run(issueId, async () => {
4862
4862
  const projectPath = getProjectPathForIssue(extractPrefixSync(issueId) ?? issueId.split("-")[0]);
4863
- const { postMergeLifecycle } = await import("./merge-agent-7nBiCytp.js");
4863
+ const { postMergeLifecycle } = await import("./merge-agent-CfohxFWM.js");
4864
4864
  await postMergeLifecycle(issueId, projectPath, options?.sourceBranch, options?.verifiedMergedRef ? { verifiedMergedRef: options.verifiedMergedRef } : void 0);
4865
4865
  console.log(`[merge] post-merge lifecycle completed for ${issueId}`);
4866
- const { runMergeTrainReconcile } = await import("./merge-train-D3qzRccL.js");
4866
+ const { runMergeTrainReconcile } = await import("./merge-train-98ptZrPT.js");
4867
4867
  const outcomes = await runMergeTrainReconcile(issueId);
4868
4868
  if (outcomes.length > 0) console.log(`[merge-train] reconciled ${outcomes.length} sibling(s) after ${issueId}: ` + outcomes.map((o) => `${o.issueId}=${o.result}`).join(", "));
4869
4869
  }, (err) => console.error(`[merge] post-merge lifecycle failed for ${issueId}:`, err));
@@ -4873,7 +4873,7 @@ function firePostMergeLifecycle(issueId, options) {
4873
4873
  function getProjectPathForIssue(issuePrefix) {
4874
4874
  const resolved = resolveProjectFromIssueSync(`${issuePrefix}-1`);
4875
4875
  if (resolved) return resolved.projectPath;
4876
- return join$1(homedir(), "Projects");
4876
+ return join(homedir(), "Projects");
4877
4877
  }
4878
4878
  //#endregion
4879
4879
  //#region routes/specialists/legacy-routes.ts
@@ -4884,15 +4884,15 @@ init_io();
4884
4884
  init_domain_services();
4885
4885
  init_tmux();
4886
4886
  const getSpecialistsRoute = HttpRouter.add("GET", "/api/specialists", httpHandler(Effect.gen(function* () {
4887
- const { getAllSpecialistStatus, getAllProjectSpecialistStatuses } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
4887
+ const { getAllSpecialistStatus, getAllProjectSpecialistStatuses } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
4888
4888
  return jsonResponse({
4889
4889
  specialists: yield* Effect.promise(() => getAllSpecialistStatus()),
4890
4890
  projects: yield* Effect.promise(() => getAllProjectSpecialistStatuses())
4891
4891
  });
4892
4892
  })));
4893
4893
  const postSpecialistsResetAllRoute = HttpRouter.add("POST", "/api/specialists/reset-all", httpHandler(Effect.gen(function* () {
4894
- const { getAllSpecialists, isRunning, getTmuxSessionName } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
4895
- const { clearHookSync } = yield* Effect.promise(() => import("./hooks-D-cbMUzQ.js"));
4894
+ const { getAllSpecialists, isRunning, getTmuxSessionName } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
4895
+ const { clearHookSync } = yield* Effect.promise(() => import("./hooks-BQxRXtRb.js"));
4896
4896
  const specialists = getAllSpecialists();
4897
4897
  const results = [];
4898
4898
  for (const specialist of specialists) {
@@ -4989,7 +4989,7 @@ const postSpecialistsDoneRoute = HttpRouter.add("POST", "/api/specialists/done",
4989
4989
  if (specialist === "inspect" && status === "failed") yield* Effect.promise(() => reportTieredInspectFailureEscalation(normalizedIssueId, notes));
4990
4990
  yield* Effect.promise(async () => {
4991
4991
  try {
4992
- const { getTmuxSessionName, updateRunMetadata, makeSpecialistRegistryKey } = await import("./specialists-DeZx9xom.js");
4992
+ const { getTmuxSessionName, updateRunMetadata, makeSpecialistRegistryKey } = await import("./specialists-DdvpFNt1.js");
4993
4993
  const projectKey = resolveProjectFromIssueSync(normalizedIssueId)?.projectKey;
4994
4994
  const tmuxSession = projectKey ? getTmuxSessionName(`${specialist}-agent`, projectKey, normalizedIssueId) : getTmuxSessionName(`${specialist}-agent`);
4995
4995
  saveAgentRuntimeState(tmuxSession, {
@@ -5008,7 +5008,7 @@ const postSpecialistsDoneRoute = HttpRouter.add("POST", "/api/specialists/done",
5008
5008
  });
5009
5009
  console.log(`[specialists/done] Cleared registry lock for ${registryKey} (${projectKey})`);
5010
5010
  }
5011
- const { updateSpecialistHandoffStatus } = await import("./specialist-handoff-logger-B_2VsWli.js");
5011
+ const { updateSpecialistHandoffStatus } = await import("./specialist-handoff-logger-BiKuLtNm.js");
5012
5012
  if (await Effect.runPromise(updateSpecialistHandoffStatus(normalizedIssueId, `${specialist}-agent`, status === "passed" ? "completed" : "failed", status === "passed" ? "success" : "failure"))) console.log(`[specialists/done] Updated handoff log: ${specialist}-agent ${normalizedIssueId} → ${status}`);
5013
5013
  } catch (err) {
5014
5014
  console.error(`[specialists/done] Error managing specialist state:`, err);
@@ -5018,9 +5018,9 @@ const postSpecialistsDoneRoute = HttpRouter.add("POST", "/api/specialists/done",
5018
5018
  try {
5019
5019
  const project = resolveProjectFromIssueSync(normalizedIssueId);
5020
5020
  if (project) {
5021
- const workspacePath = join$1(project.projectPath, "workspaces", `feature-${normalizedIssueId.toLowerCase()}`);
5021
+ const workspacePath = join(project.projectPath, "workspaces", `feature-${normalizedIssueId.toLowerCase()}`);
5022
5022
  if (existsSync(workspacePath)) {
5023
- const { getWorkspaceGitInfo } = await import("./git-utils-RAmTwjFB.js");
5023
+ const { getWorkspaceGitInfo } = await import("./git-utils-DbfC0zls.js");
5024
5024
  const { HEAD } = await Effect.runPromise(getWorkspaceGitInfo(workspacePath));
5025
5025
  setReviewStatusSync(normalizedIssueId, { reviewedAtCommit: HEAD });
5026
5026
  console.log(`[specialists/done] Snapshotted reviewedAtCommit=${HEAD.substring(0, 8)} for ${normalizedIssueId}`);
@@ -5032,11 +5032,11 @@ const postSpecialistsDoneRoute = HttpRouter.add("POST", "/api/specialists/done",
5032
5032
  });
5033
5033
  if (specialist === "inspect" && status === "passed") yield* Effect.promise(async () => {
5034
5034
  try {
5035
- const { onInspectComplete } = await import("./inspect-agent-CqpEWGWy.js");
5035
+ const { onInspectComplete } = await import("./inspect-agent-CYoWAeeB.js");
5036
5036
  const beadId = (notes?.match(/[Bb]ead\s+(\S+)/))?.[1] || "unknown";
5037
5037
  const project = resolveProjectFromIssueSync(normalizedIssueId);
5038
5038
  if (project) {
5039
- const workspacePath = join$1(project.projectPath, "workspaces", `feature-${normalizedIssueId.toLowerCase()}`);
5039
+ const workspacePath = join(project.projectPath, "workspaces", `feature-${normalizedIssueId.toLowerCase()}`);
5040
5040
  if (existsSync(workspacePath)) {
5041
5041
  await Effect.runPromise(onInspectComplete(project.projectKey, normalizedIssueId, beadId, "passed", workspacePath));
5042
5042
  try {
@@ -5075,9 +5075,9 @@ const postSpecialistsDoneRoute = HttpRouter.add("POST", "/api/specialists/done",
5075
5075
  try {
5076
5076
  const project = resolveProjectFromIssueSync(normalizedIssueId);
5077
5077
  if (project) {
5078
- if (existsSync(join$1(project.projectPath, "workspaces", `feature-${normalizedIssueId.toLowerCase()}`))) {
5078
+ if (existsSync(join(project.projectPath, "workspaces", `feature-${normalizedIssueId.toLowerCase()}`))) {
5079
5079
  setReviewStatusSync(normalizedIssueId, { testStatus: "passed" });
5080
- const { initEventStore } = await import("./event-store-DIk9wvnS.js");
5080
+ const { initEventStore } = await import("./event-store-DU3HkZlN.js");
5081
5081
  await (await initEventStore()).appendAsync({
5082
5082
  type: "test.passed",
5083
5083
  timestamp: (/* @__PURE__ */ new Date()).toISOString(),
@@ -5094,7 +5094,7 @@ const postSpecialistsDoneRoute = HttpRouter.add("POST", "/api/specialists/done",
5094
5094
  if (status === "failed" && specialist !== "inspect") try {
5095
5095
  const project = resolveProjectFromIssueSync(normalizedIssueId);
5096
5096
  if (project) {
5097
- const workspacePath = join$1(project.projectPath, "workspaces", `feature-${normalizedIssueId.toLowerCase()}`);
5097
+ const workspacePath = join(project.projectPath, "workspaces", `feature-${normalizedIssueId.toLowerCase()}`);
5098
5098
  transitionIssueToInProgress(normalizedIssueId, existsSync(workspacePath) ? workspacePath : void 0).catch((err) => {
5099
5099
  const errMsg = err instanceof Error ? err.message : String(err);
5100
5100
  console.warn(`[specialists/done] Could not transition ${normalizedIssueId} back to in_progress: ${errMsg}`);
@@ -5130,8 +5130,8 @@ const postSpecialistsDoneRoute = HttpRouter.add("POST", "/api/specialists/done",
5130
5130
  if (notes?.toLowerCase().includes("conflict")) yield* Effect.promise(async () => {
5131
5131
  try {
5132
5132
  const workAgentId = `agent-${normalizedIssueId.toLowerCase()}`;
5133
- const { sessionExists } = await import("./tmux-CeDD14p1.js");
5134
- const { messageAgent, spawnAgent, getAgentStateSync } = await import("./agents-C-vqmKDi.js");
5133
+ const { sessionExists } = await import("./tmux-DClqWwb8.js");
5134
+ const { messageAgent, spawnAgent, getAgentStateSync } = await import("./agents-C4kZ8a2r.js");
5135
5135
  if (await Effect.runPromise(sessionExists(workAgentId))) {
5136
5136
  await messageAgent(workAgentId, `MERGE CONFLICT: The merge-agent could not rebase your branch onto main due to conflicts. Please fix this now:\n\n1. git fetch origin main\n2. git rebase origin/main\n3. Resolve any conflicts (git add <file> && git rebase --continue)\n4. git push --force-with-lease\n5. Resubmit: curl -s -X POST http://localhost:3011/api/review/${normalizedIssueId}/request -H "Content-Type: application/json" -d "{}"\n\nConflict details: ${notes}`);
5137
5137
  console.log(`[specialists/done] Sent rebase instructions to ${workAgentId}`);
@@ -5144,8 +5144,8 @@ const postSpecialistsDoneRoute = HttpRouter.add("POST", "/api/specialists/done",
5144
5144
  if (specialist === "review" && (status === "failed" || status === "blocked")) yield* Effect.promise(async () => {
5145
5145
  try {
5146
5146
  const project = resolveProjectFromIssueSync(normalizedIssueId);
5147
- const workspacePath = project ? join$1(project.projectPath, "workspaces", `feature-${normalizedIssueId.toLowerCase()}`) : void 0;
5148
- const { deliverReviewVerdictFeedback } = await import("./review-verdict-feedback-CorgH49f.js");
5147
+ const workspacePath = project ? join(project.projectPath, "workspaces", `feature-${normalizedIssueId.toLowerCase()}`) : void 0;
5148
+ const { deliverReviewVerdictFeedback } = await import("./review-verdict-feedback-Zo0r_z4m.js");
5149
5149
  const result = await Effect.runPromise(deliverReviewVerdictFeedback({
5150
5150
  issueId: normalizedIssueId,
5151
5151
  verdict: status === "failed" ? "failed" : "blocked",
@@ -5186,7 +5186,7 @@ const postSpecialistsDoneRoute = HttpRouter.add("POST", "/api/specialists/done",
5186
5186
  });
5187
5187
  })));
5188
5188
  const postSpecialistsLogsCleanupAllRoute = HttpRouter.add("POST", "/api/specialists/logs/cleanup-all", httpHandler(Effect.gen(function* () {
5189
- const { cleanupAllLogsSync } = yield* Effect.promise(() => import("./specialist-logs--Uz-r8ia.js"));
5189
+ const { cleanupAllLogsSync } = yield* Effect.promise(() => import("./specialist-logs-CFJjGsLC.js"));
5190
5190
  const results = cleanupAllLogsSync();
5191
5191
  return jsonResponse({
5192
5192
  success: true,
@@ -5196,7 +5196,7 @@ const postSpecialistsLogsCleanupAllRoute = HttpRouter.add("POST", "/api/speciali
5196
5196
  });
5197
5197
  })));
5198
5198
  const getSpecialistsProjectsRoute = HttpRouter.add("GET", "/api/specialists/projects", httpHandler(Effect.gen(function* () {
5199
- const { getAllProjectSpecialistStatuses } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
5199
+ const { getAllProjectSpecialistStatuses } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
5200
5200
  return jsonResponse(yield* Effect.promise(() => getAllProjectSpecialistStatuses()));
5201
5201
  })));
5202
5202
  const postSpecialistWakeRoute = HttpRouter.add("POST", "/api/specialists/:name/wake", httpHandler(Effect.gen(function* () {
@@ -5223,9 +5223,9 @@ const postSpecialistReportStatusRoute = HttpRouter.add("POST", "/api/specialists
5223
5223
  "failed",
5224
5224
  "in-progress"
5225
5225
  ].includes(status)) return jsonResponse({ error: "status must be: passed, blocked, failed, or in-progress" }, { status: 400 });
5226
- const specialistDir = join$1(homedir(), ".overdeck", "specialists", name);
5226
+ const specialistDir = join(homedir(), ".overdeck", "specialists", name);
5227
5227
  yield* Effect.promise(() => mkdir(specialistDir, { recursive: true }));
5228
- const statusFile = join$1(specialistDir, `${issueId}-status.json`);
5228
+ const statusFile = join(specialistDir, `${issueId}-status.json`);
5229
5229
  const statusData = {
5230
5230
  issueId,
5231
5231
  specialist: name,
@@ -5240,7 +5240,7 @@ const postSpecialistReportStatusRoute = HttpRouter.add("POST", "/api/specialists
5240
5240
  "blocked",
5241
5241
  "failed"
5242
5242
  ].includes(status)) {
5243
- const { getTmuxSessionName } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
5243
+ const { getTmuxSessionName } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
5244
5244
  saveAgentRuntimeState(getTmuxSessionName(name), {
5245
5245
  state: "idle",
5246
5246
  lastActivity: (/* @__PURE__ */ new Date()).toISOString()
@@ -5361,7 +5361,7 @@ const postProjectSpecialistKillRoute = HttpRouter.add("POST", "/api/specialists/
5361
5361
  const issueId = params["issueId"];
5362
5362
  const type = params["type"];
5363
5363
  if (!validateSpecialistAgentName(type)) return jsonResponse({ error: "Invalid specialist type. Must be review-agent, test-agent, or merge-agent" }, { status: 400 });
5364
- const { getTmuxSessionName, makeSpecialistRegistryKey, getRunMetadata } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
5364
+ const { getTmuxSessionName, makeSpecialistRegistryKey, getRunMetadata } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
5365
5365
  const tmuxSession = getRunMetadata(project, makeSpecialistRegistryKey(type, issueId)).tmuxSession ?? getTmuxSessionName(type, project, issueId);
5366
5366
  yield* Effect.promise(() => Effect.runPromise(killSession(tmuxSession)).catch(() => {}));
5367
5367
  saveAgentRuntimeState(tmuxSession, {
@@ -5388,7 +5388,7 @@ const getProjectSpecialistRunsRoute = HttpRouter.add("GET", "/api/specialists/:p
5388
5388
  if (limitParam) limit = parseInt(limitParam, 10);
5389
5389
  if (offsetParam) offset = parseInt(offsetParam, 10);
5390
5390
  }
5391
- const { listRunLogsSync } = yield* Effect.promise(() => import("./specialist-logs--Uz-r8ia.js"));
5391
+ const { listRunLogsSync } = yield* Effect.promise(() => import("./specialist-logs-CFJjGsLC.js"));
5392
5392
  return jsonResponse(listRunLogsSync(project, type, {
5393
5393
  limit,
5394
5394
  offset
@@ -5399,7 +5399,7 @@ const getProjectSpecialistRunStreamRoute = HttpRouter.add("GET", "/api/specialis
5399
5399
  const project = params["project"];
5400
5400
  const type = params["type"];
5401
5401
  const runId = params["runId"];
5402
- const { getRunLogPath, isRunLogActive } = yield* Effect.promise(() => import("./specialist-logs--Uz-r8ia.js"));
5402
+ const { getRunLogPath, isRunLogActive } = yield* Effect.promise(() => import("./specialist-logs-CFJjGsLC.js"));
5403
5403
  const logPath = getRunLogPath(project, type, runId);
5404
5404
  if (!existsSync(logPath)) return jsonResponse({ error: "Run log not found" }, { status: 404 });
5405
5405
  const encoder = new TextEncoder();
@@ -5458,7 +5458,7 @@ const getProjectSpecialistRunRoute = HttpRouter.add("GET", "/api/specialists/:pr
5458
5458
  const project = params["project"];
5459
5459
  const type = params["type"];
5460
5460
  const runId = params["runId"];
5461
- const { getRunLogSync, parseLogMetadata } = yield* Effect.promise(() => import("./specialist-logs--Uz-r8ia.js"));
5461
+ const { getRunLogSync, parseLogMetadata } = yield* Effect.promise(() => import("./specialist-logs-CFJjGsLC.js"));
5462
5462
  const content = getRunLogSync(project, type, runId);
5463
5463
  if (!content) return jsonResponse({ error: "Run log not found" }, { status: 404 });
5464
5464
  return jsonResponse({
@@ -5472,7 +5472,7 @@ const postProjectSpecialistRunTerminateRoute = HttpRouter.add("POST", "/api/spec
5472
5472
  const project = params["project"];
5473
5473
  const type = params["type"];
5474
5474
  if (!validateSpecialistAgentName(type)) return jsonResponse({ error: "Invalid specialist type. Must be review-agent, test-agent, or merge-agent" }, { status: 400 });
5475
- const { terminateSpecialist } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
5475
+ const { terminateSpecialist } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
5476
5476
  yield* Effect.promise(() => terminateSpecialist(project, type));
5477
5477
  return jsonResponse({
5478
5478
  success: true,
@@ -5484,7 +5484,7 @@ const postProjectSpecialistGracePauseRoute = HttpRouter.add("POST", "/api/specia
5484
5484
  const project = params["project"];
5485
5485
  const type = params["type"];
5486
5486
  if (!validateSpecialistAgentName(type)) return jsonResponse({ error: "Invalid specialist type. Must be review-agent, test-agent, or merge-agent" }, { status: 400 });
5487
- const { pauseGracePeriod } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
5487
+ const { pauseGracePeriod } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
5488
5488
  if (pauseGracePeriod(project, type)) return jsonResponse({
5489
5489
  success: true,
5490
5490
  message: "Grace period paused"
@@ -5496,7 +5496,7 @@ const postProjectSpecialistGraceResumeRoute = HttpRouter.add("POST", "/api/speci
5496
5496
  const project = params["project"];
5497
5497
  const type = params["type"];
5498
5498
  if (!validateSpecialistAgentName(type)) return jsonResponse({ error: "Invalid specialist type. Must be review-agent, test-agent, or merge-agent" }, { status: 400 });
5499
- const { resumeGracePeriod } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
5499
+ const { resumeGracePeriod } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
5500
5500
  if (resumeGracePeriod(project, type)) return jsonResponse({
5501
5501
  success: true,
5502
5502
  message: "Grace period resumed"
@@ -5508,7 +5508,7 @@ const postProjectSpecialistGraceExitRoute = HttpRouter.add("POST", "/api/special
5508
5508
  const project = params["project"];
5509
5509
  const type = params["type"];
5510
5510
  if (!validateSpecialistAgentName(type)) return jsonResponse({ error: "Invalid specialist type. Must be review-agent, test-agent, or merge-agent" }, { status: 400 });
5511
- const { exitGracePeriod } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
5511
+ const { exitGracePeriod } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
5512
5512
  exitGracePeriod(project, type);
5513
5513
  return jsonResponse({
5514
5514
  success: true,
@@ -5520,7 +5520,7 @@ const getProjectSpecialistGraceRoute = HttpRouter.add("GET", "/api/specialists/:
5520
5520
  const project = params["project"];
5521
5521
  const type = params["type"];
5522
5522
  if (!validateSpecialistAgentName(type)) return jsonResponse({ error: "Invalid specialist type. Must be review-agent, test-agent, or merge-agent" }, { status: 400 });
5523
- const { getGracePeriodState } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
5523
+ const { getGracePeriodState } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
5524
5524
  const state = getGracePeriodState(project, type);
5525
5525
  if (state) return jsonResponse(state);
5526
5526
  else return jsonResponse({ error: "No active grace period" }, { status: 404 });
@@ -5529,7 +5529,7 @@ const getProjectSpecialistContextRoute = HttpRouter.add("GET", "/api/specialists
5529
5529
  const params = yield* HttpRouter.params;
5530
5530
  const project = params["project"];
5531
5531
  const type = params["type"];
5532
- const { loadContextDigest } = yield* Effect.promise(() => import("./specialist-context-BGCJ24LH.js"));
5532
+ const { loadContextDigest } = yield* Effect.promise(() => import("./specialist-context-BfkTA81h.js"));
5533
5533
  const digest = loadContextDigest(project, type);
5534
5534
  if (digest) return jsonResponse({ digest });
5535
5535
  else return jsonResponse({ error: "No context digest found" }, { status: 404 });
@@ -5538,7 +5538,7 @@ const postProjectSpecialistContextRegenerateRoute = HttpRouter.add("POST", "/api
5538
5538
  const params = yield* HttpRouter.params;
5539
5539
  const project = params["project"];
5540
5540
  const type = params["type"];
5541
- const { regenerateContextDigest } = yield* Effect.promise(() => import("./specialist-context-BGCJ24LH.js"));
5541
+ const { regenerateContextDigest } = yield* Effect.promise(() => import("./specialist-context-BfkTA81h.js"));
5542
5542
  const digest = yield* Effect.promise(() => regenerateContextDigest(project, type));
5543
5543
  if (digest) return jsonResponse({
5544
5544
  digest,
@@ -5557,7 +5557,7 @@ const postProjectSpecialistCompleteRoute = HttpRouter.add("POST", "/api/speciali
5557
5557
  "blocked"
5558
5558
  ].includes(status)) return jsonResponse({ error: "Valid status (passed/failed/blocked) is required" }, { status: 400 });
5559
5559
  if (!validateSpecialistAgentName(type)) return jsonResponse({ error: "Invalid specialist type. Must be review-agent, test-agent, or merge-agent" }, { status: 400 });
5560
- const { signalSpecialistCompletion } = yield* Effect.promise(() => import("./specialists-DeZx9xom.js"));
5560
+ const { signalSpecialistCompletion } = yield* Effect.promise(() => import("./specialists-DdvpFNt1.js"));
5561
5561
  signalSpecialistCompletion(project, type, {
5562
5562
  status,
5563
5563
  notes
@@ -5571,7 +5571,7 @@ const getProjectSpecialistLatestLogRoute = HttpRouter.add("GET", "/api/specialis
5571
5571
  const params = yield* HttpRouter.params;
5572
5572
  const project = params["project"];
5573
5573
  const type = params["type"];
5574
- const runsDir = join$1(homedir(), ".overdeck", "specialists", project, type, "runs");
5574
+ const runsDir = join(homedir(), ".overdeck", "specialists", project, type, "runs");
5575
5575
  if (!existsSync(runsDir)) return jsonResponse({
5576
5576
  log: null,
5577
5577
  message: "No runs found"
@@ -5582,7 +5582,7 @@ const getProjectSpecialistLatestLogRoute = HttpRouter.add("GET", "/api/specialis
5582
5582
  message: "No run logs found"
5583
5583
  });
5584
5584
  return jsonResponse({
5585
- log: yield* Effect.promise(() => readFile(join$1(runsDir, files[0]), "utf-8")),
5585
+ log: yield* Effect.promise(() => readFile(join(runsDir, files[0]), "utf-8")),
5586
5586
  file: files[0],
5587
5587
  totalRuns: files.length
5588
5588
  });
@@ -5591,8 +5591,8 @@ const postProjectSpecialistLogsCleanupRoute = HttpRouter.add("POST", "/api/speci
5591
5591
  const params = yield* HttpRouter.params;
5592
5592
  const project = params["project"];
5593
5593
  const type = params["type"];
5594
- const { cleanupOldLogsSync } = yield* Effect.promise(() => import("./specialist-logs--Uz-r8ia.js"));
5595
- const { getSpecialistRetention } = yield* Effect.promise(() => import("./projects-BNmVxnNt.js"));
5594
+ const { cleanupOldLogsSync } = yield* Effect.promise(() => import("./specialist-logs-CFJjGsLC.js"));
5595
+ const { getSpecialistRetention } = yield* Effect.promise(() => import("./projects-Bqfwuqet.js"));
5596
5596
  const retention = getSpecialistRetention(project);
5597
5597
  const deleted = cleanupOldLogsSync(project, type, {
5598
5598
  maxDays: retention.max_days,
@@ -5613,11 +5613,11 @@ const postProjectReviewRestartRoute = HttpRouter.add("POST", "/api/specialists/:
5613
5613
  const project = params["project"];
5614
5614
  const issueId = params["issueId"];
5615
5615
  const { model, harness } = yield* readJsonBody;
5616
- const { killAllReviewerSessions } = yield* Effect.promise(() => import("./review-agent-DTINEffB.js"));
5616
+ const { killAllReviewerSessions } = yield* Effect.promise(() => import("./review-agent-uwVftH98.js"));
5617
5617
  const killResult = yield* killAllReviewerSessions(project, issueId);
5618
5618
  const projectConfig = resolveProjectFromIssueSync(issueId);
5619
5619
  if (!projectConfig) return jsonResponse({ error: `Cannot resolve project for ${issueId}` }, { status: 404 });
5620
- const workspacePath = join$1(projectConfig.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
5620
+ const workspacePath = join(projectConfig.projectPath, "workspaces", `feature-${issueId.toLowerCase()}`);
5621
5621
  if (!existsSync(workspacePath)) return jsonResponse({ error: `Workspace not found: ${workspacePath}` }, { status: 404 });
5622
5622
  let branch = "unknown";
5623
5623
  try {
@@ -5627,7 +5627,7 @@ const postProjectReviewRestartRoute = HttpRouter.add("POST", "/api/specialists/:
5627
5627
  }));
5628
5628
  branch = stdout.trim() || "unknown";
5629
5629
  } catch {}
5630
- const { spawnReviewRoleForIssue } = yield* Effect.promise(() => import("./review-agent-DTINEffB.js"));
5630
+ const { spawnReviewRoleForIssue } = yield* Effect.promise(() => import("./review-agent-uwVftH98.js"));
5631
5631
  const prUrl = getReviewStatusSync(issueId)?.prUrl;
5632
5632
  const result = yield* spawnReviewRoleForIssue({
5633
5633
  issueId,
@@ -5778,4 +5778,4 @@ const specialistsRouteLayer = Layer.mergeAll(specialistsLegacyRouteLayer, specia
5778
5778
  //#endregion
5779
5779
  export { validateOrigin as C, jsonResponse as D, httpHandler as E, jsonStringResponse as O, normalizeOrigin as S, checkCodexAuthStatus as T, resolveJsonlPath as _, agentsRouteLayer as a, getTrustedOrigins as b, evaluateSpawnGuardrails as c, resolveConversationGitInfo as d, getWorkAgentLifecycleStateSync as f, resolveCodexRolloutPath as g, resolveClaudeSessionId as h, validateSpecialistAutoCompleteMetadata as i, invalidateAgentsCache as l, resolveAgentHarness as m, _serverManagedMerges as n, saveAgentStateAndEmitEvent as o, readLauncherPinnedSessionId as p, firePostMergeLifecycle as r, saveAgentStateAndEmitEventProgram as s, specialistsRouteLayer as t, resolveAgentGitInfo as u, resolvePiSessionPath as v, validateOriginHeaders as w, isTrustedOriginForHost as x, getHeaderFromMap as y };
5780
5780
 
5781
- //# sourceMappingURL=specialists-DEfrAbWs.js.map
5781
+ //# sourceMappingURL=specialists-B4byf18k.js.map