@overdeck/desktop 0.45.10 → 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 (603) 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-CMlGznKv.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-xk_G8t90.js → agent-state-D-moNwhA.js} +1 -1
  7. package/server/{agent-state-service-C1iUF9Ft.js → agent-state-service-BaZH7sXJ.js} +1 -1
  8. package/server/{agent-state-service-5ge9xxhx.js → agent-state-service-BzESvLOf.js} +4 -4
  9. package/server/{agents-DHvsjsuP.js → agents-B5LfpLPv.js} +256 -185
  10. package/server/{agents-BIggLvi_.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-COm_R96V.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-CvK9xuSS.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-BnpErnD1.js → close-issue-_X3MXJyG.js} +4 -4
  35. package/server/{closed-issue-reaper-DRqK5k39.js → closed-issue-reaper-BsUfBSjM.js} +13 -13
  36. package/server/{closed-issue-reaper-BLCQwTpF.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-BhKvrPxn.js → conflict-gate-BtB_o-Vi.js} +3 -3
  45. package/server/{conflict-gate-JdFuhKuF.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-Ba5aZdrb.js → conversation-compaction-CZRVk4hg.js} +1 -1
  50. package/server/{conversation-compaction-C5o_eKEm.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-j3qSZ7--.js → deacon-CM0MxbS8.js} +235 -178
  61. package/server/{deacon-Cv2RMfHs.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-DadWNi5J.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-C4DaDSZ8.js → feedback-target-B2SEai8-.js} +1 -1
  79. package/server/{feedback-target-oE4-Esxl.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-DefHRzY4.js → flywheel-D2LdPSic.js} +13 -13
  83. package/server/{flywheel-ClMjGW_u.js → flywheel-Dfpx4bIV.js} +11 -11
  84. package/server/{flywheel-BqDdGvrQ.js → flywheel-k4FPtCQ_.js} +1 -1
  85. package/server/{flywheel-merge-order-CuDcqTRJ.js → flywheel-merge-order-CB4lbXeJ.js} +6 -6
  86. package/server/{flywheel-merge-order-B6YDSElh.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-DKeSVsJL.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-BKKc0XnB.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-DnhQgddB.js → issue-lifecycle-543pQX9D.js} +28 -28
  116. package/server/{issue-lifecycle-nY4esZn8.js → issue-lifecycle-Bd9XBJAQ.js} +1 -1
  117. package/server/{issue-service-singleton-Bnqv1uaa.js → issue-service-singleton-BC2JLZi7.js} +1 -1
  118. package/server/{issue-service-singleton-_AquSBTl.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-CGKm7doE.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-BcgAYStl.js → merge-agent-CHHs5S_0.js} +25 -25
  131. package/server/{merge-agent-Dh8Y9PDO.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-DmxlYbEo.js → merge-train-98ptZrPT.js} +3 -3
  140. package/server/{merge-train-deps-DBHsOWt9.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-Db8tUhce.js → orphan-proposed-reconciler-BSGCNJ6X.js} +9 -9
  145. package/server/{orphan-proposed-reconciler-mXV--tcB.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-_tDZ2D72.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-Bklh6loJ.js → remote-completion-RZYePR_0.js} +12 -12
  189. package/server/resume-CmxF3Kjz.js +3 -0
  190. package/server/{review-agent-phzqNqIs.js → review-agent-sZBCpEVv.js} +35 -26
  191. package/server/review-agent-uwVftH98.js +3 -0
  192. package/server/{review-artifacts-BGc69epg.js → review-artifacts-C7a45b1_.js} +7 -7
  193. package/server/{review-context-CCq56O_Y.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-bBkqUj5i.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-BQjqQXZG.js → review-status-gPndPUBc.js} +66 -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-wqnikhMK.js → review-verdict-feedback-4WZ5ZdbC.js} +7 -7
  201. package/server/{review-verdict-feedback-cZh9Wi9G.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-B2GmilSI.js → sequence-io-DA0akEQN.js} +5 -5
  206. package/server/{sequencer-agent-D8pW2aU_.js → sequencer-agent-DeflKafB.js} +6 -6
  207. package/server/server.js +576 -552
  208. package/server/{service-CILd-uOt.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-CrP90OFE.js → smart-compaction-Bw1K_Sbl.js} +7 -7
  217. package/server/{smart-compaction-Bgp_gwcA.js → smart-compaction-xblMyVpT.js} +1 -1
  218. package/server/{spawn-planning-session-D15KbPOy.js → spawn-planning-session-CzDFSKAQ.js} +1 -1
  219. package/server/{spawn-planning-session-BmJWHSCu.js → spawn-planning-session-DxLxcM7m.js} +15 -15
  220. package/server/{specialist-context-CwKkcXL9.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-CvDxquV_.js → specialist-logs-CFJjGsLC.js} +3 -3
  223. package/server/{specialists-D07ybnam.js → specialists-B4byf18k.js} +156 -156
  224. package/server/{specialists-BCjcG4uE.js → specialists-BLIreoE7.js} +1 -1
  225. package/server/{specialists-F2uMO4QS.js → specialists-DdvpFNt1.js} +1 -1
  226. package/server/{specialists-BYi0k8CZ.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-EjvOkEPl.js → summary-fork-DezPkJSm.js} +16 -16
  234. package/server/{summary-fork-DedqguZb.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-5LCVbjfq.js → teardown-workspace-CWz1pbEK.js} +12 -12
  561. package/server/{test-agent-queue-qfsq6uaC.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-C3hWXtip.js → uat-train-DGkIkLxu.js} +1 -1
  575. package/server/{uat-train-CtNGgXxj.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-BPAhPWR7.js → verification-runner-CntudBes.js} +11 -11
  579. package/server/{verification-runner-DuZRHjPU.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-H-COJ84X.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-CRU9_vRn.js → workspaces-Ca4zZs12.js} +223 -223
  590. package/server/cli-CJDWXE_Y.js +0 -3
  591. package/server/deacon-swarm-D1iAUX-P.js +0 -2
  592. package/server/forge-BfP7OJwK.js +0 -2
  593. package/server/inspect-agent-vm88mLYr.js +0 -2
  594. package/server/merge-ops-QdBiQ8XB.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-DnIsmIgC.js +0 -3
  599. package/server/review-agent-DgySDb-G.js +0 -3
  600. package/server/settings-vLoKyghx.js +0 -2
  601. package/server/specs-DeS98l_p.js +0 -3
  602. package/server/supervisor-D1-XwmZ7.js +0 -2
  603. package/server/workflows-Cz8OtiB4.js +0 -2
@@ -0,0 +1,613 @@
1
+ // Copyright (c) 2011-2015 Ryan Prichard
2
+ //
3
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ // of this software and associated documentation files (the "Software"), to
5
+ // deal in the Software without restriction, including without limitation the
6
+ // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7
+ // sell copies of the Software, and to permit persons to whom the Software is
8
+ // furnished to do so, subject to the following conditions:
9
+ //
10
+ // The above copyright notice and this permission notice shall be included in
11
+ // all copies or substantial portions of the Software.
12
+ //
13
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18
+ // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
19
+ // IN THE SOFTWARE.
20
+
21
+ #include "Agent.h"
22
+
23
+ #include <windows.h>
24
+
25
+ #include <stdint.h>
26
+ #include <stdio.h>
27
+ #include <stdlib.h>
28
+ #include <string.h>
29
+
30
+ #include <string>
31
+ #include <utility>
32
+ #include <vector>
33
+
34
+ #include "../include/winpty_constants.h"
35
+
36
+ #include "../shared/AgentMsg.h"
37
+ #include "../shared/Buffer.h"
38
+ #include "../shared/DebugClient.h"
39
+ #include "../shared/GenRandom.h"
40
+ #include "../shared/StringBuilder.h"
41
+ #include "../shared/StringUtil.h"
42
+ #include "../shared/WindowsVersion.h"
43
+ #include "../shared/WinptyAssert.h"
44
+
45
+ #include "ConsoleFont.h"
46
+ #include "ConsoleInput.h"
47
+ #include "NamedPipe.h"
48
+ #include "Scraper.h"
49
+ #include "Terminal.h"
50
+ #include "Win32ConsoleBuffer.h"
51
+
52
+ namespace {
53
+
54
+ static BOOL WINAPI consoleCtrlHandler(DWORD dwCtrlType)
55
+ {
56
+ if (dwCtrlType == CTRL_C_EVENT) {
57
+ // Do nothing and claim to have handled the event.
58
+ return TRUE;
59
+ }
60
+ return FALSE;
61
+ }
62
+
63
+ // We can detect the new Windows 10 console by observing the effect of the
64
+ // Mark command. In older consoles, Mark temporarily moves the cursor to the
65
+ // top-left of the console window. In the new console, the cursor isn't
66
+ // initially moved.
67
+ //
68
+ // We might like to use Mark to freeze the console, but we can't, because when
69
+ // the Mark command ends, the console moves the cursor back to its starting
70
+ // point, even if the console application has moved it in the meantime.
71
+ static void detectNewWindows10Console(
72
+ Win32Console &console, Win32ConsoleBuffer &buffer)
73
+ {
74
+ if (!isAtLeastWindows8()) {
75
+ return;
76
+ }
77
+
78
+ ConsoleScreenBufferInfo info = buffer.bufferInfo();
79
+
80
+ // Make sure the window isn't 1x1. AFAIK, this should never happen
81
+ // accidentally. It is difficult to make it happen deliberately.
82
+ if (info.srWindow.Left == info.srWindow.Right &&
83
+ info.srWindow.Top == info.srWindow.Bottom) {
84
+ trace("detectNewWindows10Console: Initial console window was 1x1 -- "
85
+ "expanding for test");
86
+ setSmallFont(buffer.conout(), 400, false);
87
+ buffer.moveWindow(SmallRect(0, 0, 1, 1));
88
+ buffer.resizeBuffer(Coord(400, 1));
89
+ buffer.moveWindow(SmallRect(0, 0, 2, 1));
90
+ // This use of GetLargestConsoleWindowSize ought to be unnecessary
91
+ // given the behavior I've seen from moveWindow(0, 0, 1, 1), but
92
+ // I'd like to be especially sure, considering that this code will
93
+ // rarely be tested.
94
+ const auto largest = GetLargestConsoleWindowSize(buffer.conout());
95
+ buffer.moveWindow(
96
+ SmallRect(0, 0, std::min(largest.X, buffer.bufferSize().X), 1));
97
+ info = buffer.bufferInfo();
98
+ ASSERT(info.srWindow.Right > info.srWindow.Left &&
99
+ "Could not expand console window from 1x1");
100
+ }
101
+
102
+ // Test whether MARK moves the cursor.
103
+ const Coord initialPosition(info.srWindow.Right, info.srWindow.Bottom);
104
+ buffer.setCursorPosition(initialPosition);
105
+ ASSERT(!console.frozen());
106
+ console.setFreezeUsesMark(true);
107
+ console.setFrozen(true);
108
+ const bool isNewW10 = (buffer.cursorPosition() == initialPosition);
109
+ console.setFrozen(false);
110
+ buffer.setCursorPosition(Coord(0, 0));
111
+
112
+ trace("Attempting to detect new Windows 10 console using MARK: %s",
113
+ isNewW10 ? "detected" : "not detected");
114
+ console.setFreezeUsesMark(false);
115
+ console.setNewW10(isNewW10);
116
+ }
117
+
118
+ static inline WriteBuffer newPacket() {
119
+ WriteBuffer packet;
120
+ packet.putRawValue<uint64_t>(0); // Reserve space for size.
121
+ return packet;
122
+ }
123
+
124
+ static HANDLE duplicateHandle(HANDLE h) {
125
+ HANDLE ret = nullptr;
126
+ if (!DuplicateHandle(
127
+ GetCurrentProcess(), h,
128
+ GetCurrentProcess(), &ret,
129
+ 0, FALSE, DUPLICATE_SAME_ACCESS)) {
130
+ ASSERT(false && "DuplicateHandle failed!");
131
+ }
132
+ return ret;
133
+ }
134
+
135
+ // It's safe to truncate a handle from 64-bits to 32-bits, or to sign-extend it
136
+ // back to 64-bits. See the MSDN article, "Interprocess Communication Between
137
+ // 32-bit and 64-bit Applications".
138
+ // https://msdn.microsoft.com/en-us/library/windows/desktop/aa384203.aspx
139
+ static int64_t int64FromHandle(HANDLE h) {
140
+ return static_cast<int64_t>(reinterpret_cast<intptr_t>(h));
141
+ }
142
+
143
+ } // anonymous namespace
144
+
145
+ Agent::Agent(LPCWSTR controlPipeName,
146
+ uint64_t agentFlags,
147
+ int mouseMode,
148
+ int initialCols,
149
+ int initialRows) :
150
+ m_useConerr((agentFlags & WINPTY_FLAG_CONERR) != 0),
151
+ m_plainMode((agentFlags & WINPTY_FLAG_PLAIN_OUTPUT) != 0),
152
+ m_mouseMode(mouseMode)
153
+ {
154
+ trace("Agent::Agent entered");
155
+
156
+ ASSERT(initialCols >= 1 && initialRows >= 1);
157
+ initialCols = std::min(initialCols, MAX_CONSOLE_WIDTH);
158
+ initialRows = std::min(initialRows, MAX_CONSOLE_HEIGHT);
159
+
160
+ const bool outputColor =
161
+ !m_plainMode || (agentFlags & WINPTY_FLAG_COLOR_ESCAPES);
162
+ const Coord initialSize(initialCols, initialRows);
163
+
164
+ auto primaryBuffer = openPrimaryBuffer();
165
+ if (m_useConerr) {
166
+ m_errorBuffer = Win32ConsoleBuffer::createErrorBuffer();
167
+ }
168
+
169
+ detectNewWindows10Console(m_console, *primaryBuffer);
170
+
171
+ m_controlPipe = &connectToControlPipe(controlPipeName);
172
+ m_coninPipe = &createDataServerPipe(false, L"conin");
173
+ m_conoutPipe = &createDataServerPipe(true, L"conout");
174
+ if (m_useConerr) {
175
+ m_conerrPipe = &createDataServerPipe(true, L"conerr");
176
+ }
177
+
178
+ // Send an initial response packet to winpty.dll containing pipe names.
179
+ {
180
+ auto setupPacket = newPacket();
181
+ setupPacket.putWString(m_coninPipe->name());
182
+ setupPacket.putWString(m_conoutPipe->name());
183
+ if (m_useConerr) {
184
+ setupPacket.putWString(m_conerrPipe->name());
185
+ }
186
+ writePacket(setupPacket);
187
+ }
188
+
189
+ std::unique_ptr<Terminal> primaryTerminal;
190
+ primaryTerminal.reset(new Terminal(*m_conoutPipe,
191
+ m_plainMode,
192
+ outputColor));
193
+ m_primaryScraper.reset(new Scraper(m_console,
194
+ *primaryBuffer,
195
+ std::move(primaryTerminal),
196
+ initialSize));
197
+ if (m_useConerr) {
198
+ std::unique_ptr<Terminal> errorTerminal;
199
+ errorTerminal.reset(new Terminal(*m_conerrPipe,
200
+ m_plainMode,
201
+ outputColor));
202
+ m_errorScraper.reset(new Scraper(m_console,
203
+ *m_errorBuffer,
204
+ std::move(errorTerminal),
205
+ initialSize));
206
+ }
207
+
208
+ m_console.setTitle(m_currentTitle);
209
+
210
+ const HANDLE conin = GetStdHandle(STD_INPUT_HANDLE);
211
+ m_consoleInput.reset(
212
+ new ConsoleInput(conin, m_mouseMode, *this, m_console));
213
+
214
+ // Setup Ctrl-C handling. First restore default handling of Ctrl-C. This
215
+ // attribute is inherited by child processes. Then register a custom
216
+ // Ctrl-C handler that does nothing. The handler will be called when the
217
+ // agent calls GenerateConsoleCtrlEvent.
218
+ SetConsoleCtrlHandler(NULL, FALSE);
219
+ SetConsoleCtrlHandler(consoleCtrlHandler, TRUE);
220
+
221
+ setPollInterval(25);
222
+ }
223
+
224
+ Agent::~Agent()
225
+ {
226
+ trace("Agent::~Agent entered");
227
+ try {
228
+ agentShutdown();
229
+ if (m_childProcess != NULL) {
230
+ CloseHandle(m_childProcess);
231
+ }
232
+ } catch (const std::exception &e) {
233
+ // Log the exception or handle it as needed
234
+ trace("Exception in Agent::~Agent: %s", e.what());
235
+ } catch (...) {
236
+ // Catch any other types of exceptions
237
+ trace("Unknown exception in Agent::~Agent");
238
+ }
239
+ }
240
+
241
+ // Write a "Device Status Report" command to the terminal. The terminal will
242
+ // reply with a row+col escape sequence. Presumably, the DSR reply will not
243
+ // split a keypress escape sequence, so it should be safe to assume that the
244
+ // bytes before it are complete keypresses.
245
+ void Agent::sendDsr()
246
+ {
247
+ if (!m_plainMode && !m_conoutPipe->isClosed()) {
248
+ m_conoutPipe->write("\x1B[6n");
249
+ }
250
+ }
251
+
252
+ NamedPipe &Agent::connectToControlPipe(LPCWSTR pipeName)
253
+ {
254
+ NamedPipe &pipe = createNamedPipe();
255
+ pipe.connectToServer(pipeName, NamedPipe::OpenMode::Duplex);
256
+ pipe.setReadBufferSize(64 * 1024);
257
+ return pipe;
258
+ }
259
+
260
+ // Returns a new server named pipe. It has not yet been connected.
261
+ NamedPipe &Agent::createDataServerPipe(bool write, const wchar_t *kind)
262
+ {
263
+ const auto name =
264
+ (WStringBuilder(128)
265
+ << L"\\\\.\\pipe\\winpty-"
266
+ << kind << L'-'
267
+ << GenRandom().uniqueName()).str_moved();
268
+ NamedPipe &pipe = createNamedPipe();
269
+ pipe.openServerPipe(
270
+ name.c_str(),
271
+ write ? NamedPipe::OpenMode::Writing
272
+ : NamedPipe::OpenMode::Reading,
273
+ write ? 8192 : 0,
274
+ write ? 0 : 256);
275
+ if (!write) {
276
+ pipe.setReadBufferSize(64 * 1024);
277
+ }
278
+ return pipe;
279
+ }
280
+
281
+ void Agent::onPipeIo(NamedPipe &namedPipe)
282
+ {
283
+ if (&namedPipe == m_conoutPipe || &namedPipe == m_conerrPipe) {
284
+ autoClosePipesForShutdown();
285
+ } else if (&namedPipe == m_coninPipe) {
286
+ pollConinPipe();
287
+ } else if (&namedPipe == m_controlPipe) {
288
+ pollControlPipe();
289
+ }
290
+ }
291
+
292
+ void Agent::pollControlPipe()
293
+ {
294
+ if (m_controlPipe->isClosed()) {
295
+ trace("Agent exiting (control pipe is closed)");
296
+ shutdown();
297
+ return;
298
+ }
299
+
300
+ while (true) {
301
+ uint64_t packetSize = 0;
302
+ const auto amt1 =
303
+ m_controlPipe->peek(&packetSize, sizeof(packetSize));
304
+ if (amt1 < sizeof(packetSize)) {
305
+ break;
306
+ }
307
+ ASSERT(packetSize >= sizeof(packetSize) && packetSize <= SIZE_MAX);
308
+ if (m_controlPipe->bytesAvailable() < packetSize) {
309
+ if (m_controlPipe->readBufferSize() < packetSize) {
310
+ m_controlPipe->setReadBufferSize(packetSize);
311
+ }
312
+ break;
313
+ }
314
+ std::vector<char> packetData;
315
+ packetData.resize(packetSize);
316
+ const auto amt2 = m_controlPipe->read(packetData.data(), packetSize);
317
+ ASSERT(amt2 == packetSize);
318
+ try {
319
+ ReadBuffer buffer(std::move(packetData));
320
+ buffer.getRawValue<uint64_t>(); // Discard the size.
321
+ handlePacket(buffer);
322
+ } catch (const ReadBuffer::DecodeError&) {
323
+ ASSERT(false && "Decode error");
324
+ }
325
+ }
326
+ }
327
+
328
+ void Agent::handlePacket(ReadBuffer &packet)
329
+ {
330
+ const int type = packet.getInt32();
331
+ switch (type) {
332
+ case AgentMsg::StartProcess:
333
+ handleStartProcessPacket(packet);
334
+ break;
335
+ case AgentMsg::SetSize:
336
+ // TODO: I think it might make sense to collapse consecutive SetSize
337
+ // messages. i.e. The terminal process can probably generate SetSize
338
+ // messages faster than they can be processed, and some GUIs might
339
+ // generate a flood of them, so if we can read multiple SetSize packets
340
+ // at once, we can ignore the early ones.
341
+ handleSetSizePacket(packet);
342
+ break;
343
+ case AgentMsg::GetConsoleProcessList:
344
+ handleGetConsoleProcessListPacket(packet);
345
+ break;
346
+ default:
347
+ trace("Unrecognized message, id:%d", type);
348
+ }
349
+ }
350
+
351
+ void Agent::writePacket(WriteBuffer &packet)
352
+ {
353
+ const auto &bytes = packet.buf();
354
+ packet.replaceRawValue<uint64_t>(0, bytes.size());
355
+ m_controlPipe->write(bytes.data(), bytes.size());
356
+ }
357
+
358
+ void Agent::handleStartProcessPacket(ReadBuffer &packet)
359
+ {
360
+ ASSERT(m_childProcess == nullptr);
361
+ ASSERT(!m_closingOutputPipes);
362
+
363
+ const uint64_t spawnFlags = packet.getInt64();
364
+ const bool wantProcessHandle = packet.getInt32() != 0;
365
+ const bool wantThreadHandle = packet.getInt32() != 0;
366
+ const auto program = packet.getWString();
367
+ const auto cmdline = packet.getWString();
368
+ const auto cwd = packet.getWString();
369
+ const auto env = packet.getWString();
370
+ const auto desktop = packet.getWString();
371
+ packet.assertEof();
372
+
373
+ auto cmdlineV = vectorWithNulFromString(cmdline);
374
+ auto desktopV = vectorWithNulFromString(desktop);
375
+ auto envV = vectorFromString(env);
376
+
377
+ LPCWSTR programArg = program.empty() ? nullptr : program.c_str();
378
+ LPWSTR cmdlineArg = cmdline.empty() ? nullptr : cmdlineV.data();
379
+ LPCWSTR cwdArg = cwd.empty() ? nullptr : cwd.c_str();
380
+ LPWSTR envArg = env.empty() ? nullptr : envV.data();
381
+
382
+ STARTUPINFOW sui = {};
383
+ PROCESS_INFORMATION pi = {};
384
+ sui.cb = sizeof(sui);
385
+ sui.lpDesktop = desktop.empty() ? nullptr : desktopV.data();
386
+ BOOL inheritHandles = FALSE;
387
+ if (m_useConerr) {
388
+ inheritHandles = TRUE;
389
+ sui.dwFlags |= STARTF_USESTDHANDLES;
390
+ sui.hStdInput = GetStdHandle(STD_INPUT_HANDLE);
391
+ sui.hStdOutput = GetStdHandle(STD_OUTPUT_HANDLE);
392
+ sui.hStdError = m_errorBuffer->conout();
393
+ }
394
+
395
+ const BOOL success =
396
+ CreateProcessW(programArg, cmdlineArg, nullptr, nullptr,
397
+ /*bInheritHandles=*/inheritHandles,
398
+ /*dwCreationFlags=*/CREATE_UNICODE_ENVIRONMENT,
399
+ envArg, cwdArg, &sui, &pi);
400
+ const int lastError = success ? 0 : GetLastError();
401
+
402
+ trace("CreateProcess: %s %u",
403
+ (success ? "success" : "fail"),
404
+ static_cast<unsigned int>(pi.dwProcessId));
405
+
406
+ auto reply = newPacket();
407
+ if (success) {
408
+ int64_t replyProcess = 0;
409
+ int64_t replyThread = 0;
410
+ if (wantProcessHandle) {
411
+ replyProcess = int64FromHandle(duplicateHandle(pi.hProcess));
412
+ }
413
+ if (wantThreadHandle) {
414
+ replyThread = int64FromHandle(duplicateHandle(pi.hThread));
415
+ }
416
+ CloseHandle(pi.hThread);
417
+ m_childProcess = pi.hProcess;
418
+ m_autoShutdown = (spawnFlags & WINPTY_SPAWN_FLAG_AUTO_SHUTDOWN) != 0;
419
+ m_exitAfterShutdown = (spawnFlags & WINPTY_SPAWN_FLAG_EXIT_AFTER_SHUTDOWN) != 0;
420
+ reply.putInt32(static_cast<int32_t>(StartProcessResult::ProcessCreated));
421
+ reply.putInt64(replyProcess);
422
+ reply.putInt64(replyThread);
423
+ } else {
424
+ reply.putInt32(static_cast<int32_t>(StartProcessResult::CreateProcessFailed));
425
+ reply.putInt32(lastError);
426
+ }
427
+ writePacket(reply);
428
+ }
429
+
430
+ void Agent::handleSetSizePacket(ReadBuffer &packet)
431
+ {
432
+ const int cols = packet.getInt32();
433
+ const int rows = packet.getInt32();
434
+ packet.assertEof();
435
+ resizeWindow(cols, rows);
436
+ auto reply = newPacket();
437
+ writePacket(reply);
438
+ }
439
+
440
+ void Agent::handleGetConsoleProcessListPacket(ReadBuffer &packet)
441
+ {
442
+ packet.assertEof();
443
+
444
+ auto processList = std::vector<DWORD>(64);
445
+ auto processCount = GetConsoleProcessList(&processList[0], processList.size());
446
+ if (processList.size() < processCount) {
447
+ processList.resize(processCount);
448
+ processCount = GetConsoleProcessList(&processList[0], processList.size());
449
+ }
450
+
451
+ if (processCount == 0) {
452
+ trace("GetConsoleProcessList failed");
453
+ }
454
+
455
+ auto reply = newPacket();
456
+ reply.putInt32(processCount);
457
+ for (DWORD i = 0; i < processCount; i++) {
458
+ reply.putInt32(processList[i]);
459
+ }
460
+ writePacket(reply);
461
+ }
462
+
463
+ void Agent::pollConinPipe()
464
+ {
465
+ const std::string newData = m_coninPipe->readAllToString();
466
+ if (hasDebugFlag("input_separated_bytes")) {
467
+ // This debug flag is intended to help with testing incomplete escape
468
+ // sequences and multibyte UTF-8 encodings. (I wonder if the normal
469
+ // code path ought to advance a state machine one byte at a time.)
470
+ for (size_t i = 0; i < newData.size(); ++i) {
471
+ m_consoleInput->writeInput(newData.substr(i, 1));
472
+ }
473
+ } else {
474
+ m_consoleInput->writeInput(newData);
475
+ }
476
+ }
477
+
478
+ void Agent::onPollTimeout()
479
+ {
480
+ m_consoleInput->updateInputFlags();
481
+ const bool enableMouseMode = m_consoleInput->shouldActivateTerminalMouse();
482
+
483
+ // Give the ConsoleInput object a chance to flush input from an incomplete
484
+ // escape sequence (e.g. pressing ESC).
485
+ m_consoleInput->flushIncompleteEscapeCode();
486
+
487
+ const bool shouldScrapeContent = !m_closingOutputPipes;
488
+
489
+ // Check if the child process has exited.
490
+ if (m_autoShutdown &&
491
+ m_childProcess != nullptr &&
492
+ WaitForSingleObject(m_childProcess, 0) == WAIT_OBJECT_0) {
493
+ CloseHandle(m_childProcess);
494
+ m_childProcess = nullptr;
495
+
496
+ // Close the data socket to signal to the client that the child
497
+ // process has exited. If there's any data left to send, send it
498
+ // before closing the socket.
499
+ m_closingOutputPipes = true;
500
+ }
501
+
502
+ // Scrape for output *after* the above exit-check to ensure that we collect
503
+ // the child process's final output.
504
+ if (shouldScrapeContent) {
505
+ syncConsoleTitle();
506
+ scrapeBuffers();
507
+ }
508
+
509
+ // We must ensure that we disable mouse mode before closing the CONOUT
510
+ // pipe, so update the mouse mode here.
511
+ m_primaryScraper->terminal().enableMouseMode(
512
+ enableMouseMode && !m_closingOutputPipes);
513
+
514
+ autoClosePipesForShutdown();
515
+ }
516
+
517
+ void Agent::autoClosePipesForShutdown()
518
+ {
519
+ if (m_closingOutputPipes) {
520
+ // We don't want to close a pipe before it's connected! If we do, the
521
+ // libwinpty client may try to connect to a non-existent pipe. This
522
+ // case is important for short-lived programs.
523
+ if (m_conoutPipe->isConnected() &&
524
+ m_conoutPipe->bytesToSend() == 0) {
525
+ trace("Closing CONOUT pipe (auto-shutdown)");
526
+ m_conoutPipe->closePipe();
527
+ }
528
+ if (m_conerrPipe != nullptr &&
529
+ m_conerrPipe->isConnected() &&
530
+ m_conerrPipe->bytesToSend() == 0) {
531
+ trace("Closing CONERR pipe (auto-shutdown)");
532
+ m_conerrPipe->closePipe();
533
+ }
534
+ if (m_exitAfterShutdown &&
535
+ m_conoutPipe->isClosed() &&
536
+ (m_conerrPipe == nullptr || m_conerrPipe->isClosed())) {
537
+ trace("Agent exiting (exit-after-shutdown)");
538
+ shutdown();
539
+ }
540
+ }
541
+ }
542
+
543
+ std::unique_ptr<Win32ConsoleBuffer> Agent::openPrimaryBuffer()
544
+ {
545
+ // If we're using a separate buffer for stderr, and a program were to
546
+ // activate the stderr buffer, then we could accidentally scrape the same
547
+ // buffer twice. That probably shouldn't happen in ordinary use, but it
548
+ // can be avoided anyway by using the original console screen buffer in
549
+ // that mode.
550
+ if (!m_useConerr) {
551
+ return Win32ConsoleBuffer::openConout();
552
+ } else {
553
+ return Win32ConsoleBuffer::openStdout();
554
+ }
555
+ }
556
+
557
+ void Agent::resizeWindow(int cols, int rows)
558
+ {
559
+ ASSERT(cols >= 1 && rows >= 1);
560
+ cols = std::min(cols, MAX_CONSOLE_WIDTH);
561
+ rows = std::min(rows, MAX_CONSOLE_HEIGHT);
562
+
563
+ Win32Console::FreezeGuard guard(m_console, m_console.frozen());
564
+ const Coord newSize(cols, rows);
565
+ ConsoleScreenBufferInfo info;
566
+ auto primaryBuffer = openPrimaryBuffer();
567
+ m_primaryScraper->resizeWindow(*primaryBuffer, newSize, info);
568
+ m_consoleInput->setMouseWindowRect(info.windowRect());
569
+ if (m_errorScraper) {
570
+ m_errorScraper->resizeWindow(*m_errorBuffer, newSize, info);
571
+ }
572
+
573
+ // Synthesize a WINDOW_BUFFER_SIZE_EVENT event. Normally, Windows
574
+ // generates this event only when the buffer size changes, not when the
575
+ // window size changes. This behavior is undesirable in two ways:
576
+ // - When winpty expands the window horizontally, it must expand the
577
+ // buffer first, then the window. At least some programs (e.g. the WSL
578
+ // bash.exe wrapper) use the window width rather than the buffer width,
579
+ // so there is a short timespan during which they can read the wrong
580
+ // value.
581
+ // - If the window's vertical size is changed, no event is generated,
582
+ // even though a typical well-behaved console program cares about the
583
+ // *window* height, not the *buffer* height.
584
+ // This synthesization works around a design flaw in the console. It's probably
585
+ // harmless. See https://github.com/rprichard/winpty/issues/110.
586
+ INPUT_RECORD sizeEvent {};
587
+ sizeEvent.EventType = WINDOW_BUFFER_SIZE_EVENT;
588
+ sizeEvent.Event.WindowBufferSizeEvent.dwSize = primaryBuffer->bufferSize();
589
+ DWORD actual {};
590
+ WriteConsoleInputW(GetStdHandle(STD_INPUT_HANDLE), &sizeEvent, 1, &actual);
591
+ }
592
+
593
+ void Agent::scrapeBuffers()
594
+ {
595
+ Win32Console::FreezeGuard guard(m_console, m_console.frozen());
596
+ ConsoleScreenBufferInfo info;
597
+ m_primaryScraper->scrapeBuffer(*openPrimaryBuffer(), info);
598
+ m_consoleInput->setMouseWindowRect(info.windowRect());
599
+ if (m_errorScraper) {
600
+ m_errorScraper->scrapeBuffer(*m_errorBuffer, info);
601
+ }
602
+ }
603
+
604
+ void Agent::syncConsoleTitle()
605
+ {
606
+ std::wstring newTitle = m_console.title();
607
+ if (newTitle != m_currentTitle) {
608
+ std::string command = std::string("\x1b]0;") +
609
+ utf8FromWide(newTitle) + "\x07";
610
+ m_conoutPipe->write(command.c_str());
611
+ m_currentTitle = newTitle;
612
+ }
613
+ }