@symerian/symi 3.5.20 → 3.5.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (257) hide show
  1. package/dist/{agent-D0Z4r5fr.js → agent-DgVWcnlD.js} +1 -1
  2. package/dist/{agent-DCDT-MPE.js → agent-NT0EKnK_.js} +18 -18
  3. package/dist/{agent-scope-DOrZjOnW.js → agent-scope-Bnsyyeci.js} +18 -18
  4. package/dist/{agents-CdkBeP0d.js → agents-Dlcpc1K3.js} +3 -3
  5. package/dist/{agents.config-B7sNDvhz.js → agents.config-DA0ISLi7.js} +1 -1
  6. package/dist/{audit-B7deV4Lp.js → audit-CPloCzEZ.js} +2 -2
  7. package/dist/{audit-BCStg-Hv.js → audit-CXIXYDRx.js} +20 -20
  8. package/dist/{auth-choice-BIGcxSzP.js → auth-choice--DymOp5O.js} +2 -2
  9. package/dist/{auth-choice-B3DU-aBr.js → auth-choice-BtXIQPTU.js} +11 -11
  10. package/dist/{auth-profiles-Ce7R_25e.js → auth-profiles-D5nYBj_Z.js} +2 -2
  11. package/dist/{auth-token-Cr28IDKY.js → auth-token-fgnCQEHT.js} +3 -3
  12. package/dist/{banner-ChNdzPjD.js → banner-CY_9VW7E.js} +1 -1
  13. package/dist/{browser-cli-C9xaKW8l.js → browser-cli-C5VVk6C9.js} +3 -3
  14. package/dist/{browser-cli-BTg8SVs-.js → browser-cli-DOTM7UBC.js} +9 -9
  15. package/dist/build-info.json +3 -3
  16. package/dist/bundled/boot-md/handler.js +2 -2
  17. package/dist/bundled/session-memory/handler.js +2 -2
  18. package/dist/{call-BccaLPi8.js → call-Bpjj5p7I.js} +9 -9
  19. package/dist/{call-DZg43vv8.js → call-C2urR5Fj.js} +1 -1
  20. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  21. package/dist/{channel-options-CUptVX8c.js → channel-options-XRJiHUm5.js} +1 -1
  22. package/dist/{channel-options-LLmAnD_L.js → channel-options-rFgJaKzJ.js} +1 -1
  23. package/dist/{channels-cli-xoromnio.js → channels-cli-CQ4M05oy.js} +57 -57
  24. package/dist/{channels-cli-B0OQvVUL.js → channels-cli-QMHCRAb5.js} +9 -9
  25. package/dist/{chrome-DJChpTwP.js → chrome-38OnGyuN.js} +2 -2
  26. package/dist/{chrome-3jl2ulOE.js → chrome-DNssqQJs.js} +7 -7
  27. package/dist/{cli-C7v-sID8.js → cli-B-uoiYP2.js} +45 -45
  28. package/dist/{cli-CMNR7ULk.js → cli-BafqEuaj.js} +6 -6
  29. package/dist/{client-k0MT6NBw.js → client-CTrfpKT3.js} +7 -2
  30. package/dist/{client-DCxeV1bw.js → client-yVTJ5jx5.js} +6 -1
  31. package/dist/{command-registry-CXcvXjUR.js → command-registry-CLm8TAH3.js} +11 -11
  32. package/dist/{commands-registry-Ca5hh7nh.js → commands-registry-CwXsDVuO.js} +1 -1
  33. package/dist/{completion-cli-DJ1YCeSg.js → completion-cli-Cn_81QBb.js} +12 -12
  34. package/dist/{completion-cli-B1Fg6Lmg.js → completion-cli-DOBXkVwG.js} +2 -2
  35. package/dist/{config-B4jkreCN.js → config-BngIfn5l.js} +2 -2
  36. package/dist/{config-cli-D5DlWt6T.js → config-cli-B1cPkJ4p.js} +4 -4
  37. package/dist/{config-cli-CQ1FAvY_.js → config-cli-BgHYqFH1.js} +1 -1
  38. package/dist/{config-guard-BRm3RiOi.js → config-guard-DStz4_V2.js} +6 -6
  39. package/dist/{config-validation-Cdyg1BZB.js → config-validation-Dxj9LRzr.js} +1 -1
  40. package/dist/{configure-bhJB2Dti.js → configure-C7zmSgvC.js} +14 -14
  41. package/dist/{configure-DG1lf0Ld.js → configure-DmzM0S7L.js} +6 -6
  42. package/dist/{consolidate-DymnvvYm.js → consolidate-CO32_TEx.js} +6 -6
  43. package/dist/{control-service-D8kKOts5.js → control-service-CUreKVeY.js} +4 -4
  44. package/dist/control-ui/css/style.css +281 -0
  45. package/dist/control-ui/index.html +45 -115
  46. package/dist/control-ui/js/scheduling.js +85 -224
  47. package/dist/control-ui/js/subagents.js +78 -394
  48. package/dist/control-ui/js/symframe-awaiting.js +306 -0
  49. package/dist/control-ui/js/symframe-pin-store.js +104 -0
  50. package/dist/control-ui/js/symframe-substrate.js +11 -7
  51. package/dist/control-ui/js/symframe.js +250 -30
  52. package/dist/{control-ui-assets-CJQ97d4u.js → control-ui-assets-B8B9z_Ll.js} +1 -1
  53. package/dist/{cost-cli-DWiVCOCx.js → cost-cli-D-ssjcRF.js} +3 -3
  54. package/dist/{cron-cli-8RaBr1CM.js → cron-cli-BNBs3zue.js} +3 -3
  55. package/dist/{cron-cli-fW3wtftG.js → cron-cli-otPeKxmi.js} +7 -7
  56. package/dist/{daemon-cli-Y6clFgva.js → daemon-cli-DDqeG2nd.js} +2 -2
  57. package/dist/{daemon-cli-0EiZTQ2A.js → daemon-cli-qDdMg615.js} +11 -11
  58. package/dist/daemon-cli.js +6 -1
  59. package/dist/{daemon-runtime-DlQla_dA.js → daemon-runtime-CKn0wmCk.js} +10 -10
  60. package/dist/{deliver-lTZLIQqf.js → deliver-CWMFmMCv.js} +2 -2
  61. package/dist/{deliver-f3cIWxXT.js → deliver-q23ar_Pm.js} +4 -4
  62. package/dist/{deps-Bf9dt2UO.js → deps-CdibsPMx.js} +1 -1
  63. package/dist/{devices-cli-C2gQTsB0.js → devices-cli-BJ3rVWOw.js} +2 -2
  64. package/dist/{devices-cli-DfiSkZ7k.js → devices-cli-DDPwF2Nx.js} +6 -6
  65. package/dist/{diagnostics-DlZODdRf.js → diagnostics-CYkqD5lP.js} +5 -5
  66. package/dist/{directory-cli-Bm5QYEo-.js → directory-cli-giqTe8Yg.js} +3 -3
  67. package/dist/{dm-policy-shared-CeFt0nch.js → dm-policy-shared-B61_yf6G.js} +1 -1
  68. package/dist/{dns-cli-CubLq4j9.js → dns-cli-Dssz4RqF.js} +3 -3
  69. package/dist/{docs-cli-PS8m1er7.js → docs-cli-Ct1STieY.js} +1 -1
  70. package/dist/{doctor-completion-CfF0J8fs.js → doctor-completion-CL7MyXlo.js} +2 -2
  71. package/dist/{doctor-completion-ScxFfN93.js → doctor-completion-k0HiL05o.js} +1 -1
  72. package/dist/{doctor-config-flow-C52W1uUK.js → doctor-config-flow-ljVnQJjo.js} +9 -9
  73. package/dist/entry.js +1 -1
  74. package/dist/{exec-approvals-cli-Cl-vWA1q.js → exec-approvals-cli-Cau1vPQI.js} +4 -4
  75. package/dist/{exec-approvals-cli-BaKWIf56.js → exec-approvals-cli-DsBoQu5H.js} +13 -13
  76. package/dist/extensionAPI.js +4 -4
  77. package/dist/{file-lock-BVUYnlQv.js → file-lock-2AecMjCa.js} +8 -8
  78. package/dist/{fs-safe-BdejYjW8.js → fs-safe-B0Is-oLk.js} +6 -6
  79. package/dist/{gateway-cli-kq5EWlnF.js → gateway-cli-DG_2YZ8B.js} +98 -98
  80. package/dist/{gateway-cli-CK-5nguV.js → gateway-cli-DgmGygc6.js} +16 -16
  81. package/dist/{gateway-rpc-Bzg_TTKP.js → gateway-rpc-Kv0-8W2E.js} +1 -1
  82. package/dist/{gateway-rpc-D12UaJS5.js → gateway-rpc-gaoD882s.js} +1 -1
  83. package/dist/{glass-ui-ws-B6p0iPsO.js → glass-ui-ws-Bof7krDJ.js} +67 -67
  84. package/dist/{glass-ui-ws-CVr0_1gT.js → glass-ui-ws-Dl45d7eU.js} +13 -13
  85. package/dist/{health-CPU9rQGj.js → health-CMbUI4aN.js} +4 -4
  86. package/dist/{health-CJb2CYtg.js → health-znS85U-F.js} +1 -1
  87. package/dist/{hooks-cli-DbgVZaP4.js → hooks-cli-Cb9BzCOY.js} +7 -7
  88. package/dist/{hooks-cli-13HCu5Xs.js → hooks-cli-Cgjor7F-.js} +59 -59
  89. package/dist/{image-ops-L70xVnpG.js → image-ops-BzCBIakN.js} +10 -10
  90. package/dist/index.js +52 -52
  91. package/dist/{inspect-CGKsaVZ4.js → inspect-DzYUb_Dl.js} +4 -4
  92. package/dist/{install-safe-path-B2JrFspY.js → install-safe-path-BrpA09f2.js} +11 -11
  93. package/dist/{installs-D890uIIW.js → installs-bnDlOSq2.js} +10 -10
  94. package/dist/{internal-DVCddhhN.js → internal-csqU78gW.js} +9 -9
  95. package/dist/{lifecycle-core-wFwnK_mD.js → lifecycle-core-cSR_xiIO.js} +5 -5
  96. package/dist/llm-slug-generator.js +2 -2
  97. package/dist/{local-roots-CgDCgCuM.js → local-roots-2Jb79HZ8.js} +1 -1
  98. package/dist/{logs-cli-R16VTptK.js → logs-cli-Kr145PO_.js} +7 -7
  99. package/dist/{logs-cli-CQeK5fn7.js → logs-cli-LiAjkog2.js} +3 -3
  100. package/dist/{manager-CxFs8Z_F.js → manager-CceVgXHV.js} +1 -1
  101. package/dist/{manager-B2SWSuad.js → manager-DDynl084.js} +1 -1
  102. package/dist/{manager-CHLdCC6u.js → manager-DG6PODgu.js} +15 -15
  103. package/dist/{manager-LPPGAsqn.js → manager-qrAOWmHt.js} +1 -1
  104. package/dist/{memory-DFpqcIst.js → memory-A2D5e8dL.js} +2 -2
  105. package/dist/{memory-DavRjdTi.js → memory-BFnx3v3_.js} +5 -5
  106. package/dist/{memory-cli-DZnq3S6s.js → memory-cli-1zjVJITN.js} +2 -2
  107. package/dist/{memory-cli-B-Cp1Sb1.js → memory-cli-CHNghdrm.js} +12 -12
  108. package/dist/{model-MUMSB_7d.js → model-Cwbcw-km.js} +1 -1
  109. package/dist/{model-auth-1EAQvYRv.js → model-auth-_C07_3Yr.js} +2 -2
  110. package/dist/{model-catalog-IWi6-nY9.js → model-catalog-BWurV7gl.js} +3 -3
  111. package/dist/{model-picker-Cf6UgQEh.js → model-picker-Dpkr5xBW.js} +5 -5
  112. package/dist/{model-selection-7wdmO-Iw.js → model-selection-CCTzD29o.js} +1 -1
  113. package/dist/{models-Cht7Mzvs.js → models-BYev6YAG.js} +3 -3
  114. package/dist/{models-cli-B_motPDX.js → models-cli-BbK8HMKa.js} +55 -55
  115. package/dist/{models-cli-DXswzgUR.js → models-cli-Fa5r1QYP.js} +9 -9
  116. package/dist/{models-config-B5Xxy-c-.js → models-config-DlXge3Sd.js} +8 -8
  117. package/dist/{node-cli-D-gsjRXY.js → node-cli-BPnBosC4.js} +27 -27
  118. package/dist/{node-cli-VmKhIXuP.js → node-cli-Cv7x1gGu.js} +1 -1
  119. package/dist/{node-service-BH08wY5j.js → node-service-Cc18m-uk.js} +1 -1
  120. package/dist/{nodes-cli-BMvxQGCp.js → nodes-cli-CN_m6PO5.js} +10 -10
  121. package/dist/{nodes-cli-D199d74o.js → nodes-cli-DaHOBbd4.js} +3 -3
  122. package/dist/{nodes-screen-De9ma6e1.js → nodes-screen-Cp5QP3ET.js} +4 -4
  123. package/dist/{npm-registry-spec-DTqn-NXZ.js → npm-registry-spec-C-muP97-.js} +9 -9
  124. package/dist/{onboard-DFJcbABp.js → onboard-B2IcTMv-.js} +15 -15
  125. package/dist/{onboard-CdRA8BRG.js → onboard-D-m6WTZl.js} +3 -3
  126. package/dist/{onboard-channels-fadyQGBK.js → onboard-channels-Z-Jkrk5-.js} +1 -1
  127. package/dist/{onboard-channels-Ca7ZFQ2Y.js → onboard-channels-wfGO5Zlh.js} +4 -4
  128. package/dist/{onboard-custom-BcRYreNG.js → onboard-custom-DnDrvxSg.js} +3 -3
  129. package/dist/{onboard-helpers-CQBpac8h.js → onboard-helpers-BKejzolA.js} +8 -8
  130. package/dist/{onboard-helpers-BcLPSb5N.js → onboard-helpers-Dhr98nj8.js} +1 -1
  131. package/dist/{onboard-hooks-2SCajRKc.js → onboard-hooks-D9jHwImb.js} +1 -1
  132. package/dist/{onboard-remote-Bo3tpC9N.js → onboard-remote-DZdMxd1Q.js} +1 -1
  133. package/dist/{onboard-remote-BWK5Ths4.js → onboard-remote-y3ZmP90U.js} +1 -1
  134. package/dist/{onboard-skills-BLl8HPJO.js → onboard-skills-2SUv-W7i.js} +1 -1
  135. package/dist/{onboard-skills-DvacccqZ.js → onboard-skills-BFhHfrt9.js} +3 -3
  136. package/dist/{onboarding-ojb2rFkA.js → onboarding-BckHLQMV.js} +7 -7
  137. package/dist/{onboarding-BywueA1d.js → onboarding-DqlPV372.js} +12 -12
  138. package/dist/{onboarding.finalize-DdxBQpUU.js → onboarding.finalize-Bwjv3jew.js} +31 -31
  139. package/dist/{onboarding.finalize-DHvlZi9G.js → onboarding.finalize-CbH_ShIW.js} +9 -9
  140. package/dist/{onboarding.gateway-config-DPBNWNV6.js → onboarding.gateway-config-CiRo9EMt.js} +8 -8
  141. package/dist/{onboarding.gateway-config-ZK9517uR.js → onboarding.gateway-config-sNSeEykB.js} +3 -3
  142. package/dist/{openai-model-default-BkuuK-Di.js → openai-model-default-De-UAjwg.js} +2 -2
  143. package/dist/{pairing-cli-Rsae0KnN.js → pairing-cli-CBMMCNnx.js} +5 -5
  144. package/dist/{pairing-store-BNhJOnWn.js → pairing-store-Be-ZQK87.js} +1 -1
  145. package/dist/{pairing-token-Dcy37-4s.js → pairing-token-B703A1U3.js} +7 -7
  146. package/dist/{paths-DObzwe08.js → paths-BWqg8NZT.js} +1 -1
  147. package/dist/{pi-auth-json-Db8XJVGL.js → pi-auth-json-D-vdh-nY.js} +6 -6
  148. package/dist/{pi-embedded-Da0QRlM0.js → pi-embedded-CviuByGd.js} +32 -16
  149. package/dist/{pi-embedded-helpers-D-OFjhdI.js → pi-embedded-helpers-j1JrlsI0.js} +6 -6
  150. package/dist/{pi-tools.policy-H2t-Xkfc.js → pi-tools.policy-CvAqjEH9.js} +3 -3
  151. package/dist/{plugin-auto-enable-DJBhDIMq.js → plugin-auto-enable-BXSJTxI7.js} +1 -1
  152. package/dist/{plugin-registry-tG7NXc3Y.js → plugin-registry-B43UosQh.js} +3 -3
  153. package/dist/{plugin-registry-Tlmjr-LX.js → plugin-registry-CS4WgHbu.js} +1 -1
  154. package/dist/plugin-sdk/gateway/protocol/schema/logs-chat.d.ts +1 -1
  155. package/dist/plugin-sdk/infra/symframe-broadcast.d.ts +18 -6
  156. package/dist/{plugins-cli-CRKD8aho.js → plugins-cli-BV2wbjfI.js} +54 -54
  157. package/dist/{plugins-cli-Cm0G_-Y5.js → plugins-cli-BY42hyHP.js} +7 -7
  158. package/dist/{ports-r7LBic2V.js → ports-Bi3V_3n9.js} +1 -1
  159. package/dist/{ports-gxLM5ahL.js → ports-CB_Iu83U.js} +2 -2
  160. package/dist/{program-DEmAlwmD.js → program-P9F1DxBa.js} +12 -12
  161. package/dist/{program-context-DRCRbDpu.js → program-context-BmXxHUKe.js} +40 -40
  162. package/dist/{prompt-select-styled-pomsR-zf.js → prompt-select-styled-B2ah467m.js} +7 -7
  163. package/dist/{prompt-select-styled-B41Tx9aC.js → prompt-select-styled-BlQZX6pK.js} +38 -38
  164. package/dist/{provider-auth-helpers-rKWs_r7a.js → provider-auth-helpers-Bgb_Bfp9.js} +1 -1
  165. package/dist/{provider-auth-helpers-CdQwOam7.js → provider-auth-helpers-WLwb6tL4.js} +6 -6
  166. package/dist/{push-apns-eCM0qmrY.js → push-apns-CBGvXev_.js} +4 -4
  167. package/dist/{push-apns-CZPUHftn.js → push-apns-DnSCjFu7.js} +1 -1
  168. package/dist/{pw-ai-BiBvIJzd.js → pw-ai-CP5pn3eU.js} +7 -7
  169. package/dist/{pw-ai-DOAsQ5NX.js → pw-ai-v__CyAlM.js} +1 -1
  170. package/dist/{qmd-manager-C8-M4Pru.js → qmd-manager-Dxyue7B1.js} +19 -19
  171. package/dist/{qr-cli-1sCVaPcF.js → qr-cli-DHw6muwK.js} +3 -3
  172. package/dist/{register.agent-BQPvYYdn.js → register.agent-BuEcmVg0.js} +12 -12
  173. package/dist/{register.agent-N1hoqMFR.js → register.agent-CXdTiqyP.js} +67 -67
  174. package/dist/{register.configure-BHHZ44xB.js → register.configure-DVcn-gCO.js} +70 -70
  175. package/dist/{register.configure-BAc3P4Z-.js → register.configure-YDKJ-KQg.js} +14 -14
  176. package/dist/{register.maintenance-lX0a3Hzl.js → register.maintenance-BiGvpEj-.js} +13 -13
  177. package/dist/{register.maintenance-DDgy5Iyy.js → register.maintenance-cpspl8D6.js} +67 -67
  178. package/dist/{register.message-Br-IH_0z.js → register.message-BIuLbESM.js} +7 -7
  179. package/dist/{register.message-B4lDhHpE.js → register.message-BjcYy5UG.js} +47 -47
  180. package/dist/{register.onboard-B-GoYJIc.js → register.onboard-C4vIASed.js} +6 -6
  181. package/dist/{register.onboard-Bv0s2_KV.js → register.onboard-D4RN92s2.js} +25 -25
  182. package/dist/{register.setup-DQ6KLkAI.js → register.setup-BvoXF0xl.js} +28 -28
  183. package/dist/{register.setup-4lNdC98i.js → register.setup-D-Jt2e1d.js} +6 -6
  184. package/dist/{register.status-health-sessions-Cg7bK5K2.js → register.status-health-sessions-BY9hMD1s.js} +8 -8
  185. package/dist/{register.status-health-sessions-ByGn71_M.js → register.status-health-sessions-DjDvCXBn.js} +41 -41
  186. package/dist/{register.subclis-FMlcLBX0.js → register.subclis-Cibmeapc.js} +20 -20
  187. package/dist/{replies-CbXXjn9X.js → replies-B_3j7R_Q.js} +1 -1
  188. package/dist/{reply-prefix-BFNeXT65.js → reply-prefix-CtZtkTJK.js} +1 -1
  189. package/dist/{resolve-route-C1IIA6kH.js → resolve-route-Du0VftVs.js} +1 -1
  190. package/dist/{routes-ivqbutvM.js → routes-BwTUoI5h.js} +10 -10
  191. package/dist/{rpc-Dk1Az_d8.js → rpc-BnAKPQDB.js} +1 -1
  192. package/dist/{rpc-JAmDaTYt.js → rpc-CwxSZZOx.js} +1 -1
  193. package/dist/{run-main-DSyeVDsT.js → run-main-BhEQjKtM.js} +20 -20
  194. package/dist/{sandbox-BkznAPKO.js → sandbox-CZGTCone.js} +18 -18
  195. package/dist/{sandbox-cli-Bb9cBtBH.js → sandbox-cli-DEtGT_4y.js} +13 -13
  196. package/dist/{security-cli-DmgGLP83.js → security-cli-CS-ZT1LE.js} +3 -3
  197. package/dist/{security-cli-D47LQbpf.js → security-cli-DJd7Fcdy.js} +29 -29
  198. package/dist/{send-B0jHSNMF.js → send-CxjvucMO.js} +7 -7
  199. package/dist/{server-context-ChcbJgNo.js → server-context-DXdk410X.js} +5 -5
  200. package/dist/{server-methods-DGBBt49x.js → server-methods-CWxr5b-w.js} +19 -13
  201. package/dist/{server-methods-BkHB2MOW.js → server-methods-DfVfzYqq.js} +68 -62
  202. package/dist/{server-node-events-C186LRm0.js → server-node-events-B0yC6hi1.js} +48 -48
  203. package/dist/{server-node-events-D-Akk3uq.js → server-node-events-ClDEcUTJ.js} +8 -8
  204. package/dist/{service-e6MzlLCd.js → service-CRZoXO_n.js} +15 -15
  205. package/dist/{session-dirs-C9E2G0yZ.js → session-dirs-a00Ad2SO.js} +2 -2
  206. package/dist/{session-utils-Cs1jlD-q.js → session-utils-CJhcRx3E.js} +14 -14
  207. package/dist/{sessions-Dxf5Kjig.js → sessions-BCc3THTm.js} +10 -10
  208. package/dist/{shared-1xPo9ygd.js → shared-C39SiDDJ.js} +1 -1
  209. package/dist/{shared-COtpr3Ad.js → shared-Dh-O8nRd.js} +3 -3
  210. package/dist/{skill-commands-DDGGlq68.js → skill-commands-DWvXs3lz.js} +4 -4
  211. package/dist/{skill-scanner-BCgVcIwi.js → skill-scanner-CIlHPszT.js} +5 -5
  212. package/dist/{skills-BwDmcZdt.js → skills-CYcBtLGH.js} +4 -4
  213. package/dist/{skills-cli-B-7TY-vS.js → skills-cli-CD9s3cgm.js} +7 -7
  214. package/dist/{skills-install-Dwzsjoc8.js → skills-install-BTa9IuQ6.js} +3 -3
  215. package/dist/{skills-remote-bz71Bstn.js → skills-remote-BcRQTDsZ.js} +3 -3
  216. package/dist/{skills-status-BKX1PjCc.js → skills-status-DLnCHUZ2.js} +1 -1
  217. package/dist/{sqlite-Cod7C5ba.js → sqlite-BpogPlQW.js} +5 -5
  218. package/dist/{status-CFgCSaDq.js → status-BWxLtb3D.js} +23 -23
  219. package/dist/{status-poPDyC8O.js → status-Doq8T1zj.js} +3 -3
  220. package/dist/{status-Bahhq7OQ.js → status-K1k4g3Ai.js} +1 -1
  221. package/dist/{status-D9LC5P_Y.js → status-ojZB_Lrf.js} +5 -5
  222. package/dist/{status.update-DGJi0OLl.js → status.update-CKfyV6zw.js} +3 -3
  223. package/dist/{subagent-registry-V2o45tIn.js → subagent-registry-BOt7g9hn.js} +21 -10
  224. package/dist/{symframe-cli-bxdpivve.js → symframe-cli-CrUtJw_7.js} +31 -7
  225. package/dist/{symframe-cli-ppdMo15M.js → symframe-cli-D1CtN3pf.js} +37 -13
  226. package/dist/{symi-root-BQ0IpoW2.js → symi-root-DeCVdZB4.js} +2 -2
  227. package/dist/{synthesis-B2EyHFXy.js → synthesis-BIQLrbys.js} +6 -6
  228. package/dist/{synthesis-C2WbvLOI.js → synthesis-D91XE0n4.js} +2 -2
  229. package/dist/{synthesis-DGau1ONT.js → synthesis-DuP2d469.js} +4 -4
  230. package/dist/{synthesis-CPSq83PP.js → synthesis-VZNnlUTf.js} +45 -45
  231. package/dist/{system-cli-nPyjUPBH.js → system-cli-CvN-Wq9U.js} +3 -3
  232. package/dist/{system-cli-BroqLjZ6.js → system-cli-r7WJj0Xh.js} +7 -7
  233. package/dist/{systemd-CUIM0n5P.js → systemd-CsoVnIbM.js} +5 -5
  234. package/dist/{systemd-hints-CsrzMCTD.js → systemd-hints-QISwLlFU.js} +6 -6
  235. package/dist/{systemd-linger-BzYk7A6M.js → systemd-linger-BnhuRdbt.js} +1 -1
  236. package/dist/{tui-Bp9k5skv.js → tui-BxgdImL_.js} +2 -2
  237. package/dist/{tui-DzROrE20.js → tui-J7Jxp-FF.js} +7 -7
  238. package/dist/{tui-cli-BHBF8O-3.js → tui-cli-DR48dU_C.js} +19 -19
  239. package/dist/{tui-cli-Dv4hBFdc.js → tui-cli-DqvgN5ng.js} +3 -3
  240. package/dist/{unified-runner-CIQIkbvi.js → unified-runner-CdJx7yN8.js} +25 -9
  241. package/dist/{unified-runner-CduaBH_0.js → unified-runner-DXjH-prv.js} +117 -106
  242. package/dist/{update-yYduAjKd.js → update-Cb0Fmxic.js} +3 -3
  243. package/dist/{update-check-BCL_K7kx.js → update-check-u6Jgr1cz.js} +5 -5
  244. package/dist/{update-cli-WcLxjBiY.js → update-cli-CKpjWtlv.js} +77 -77
  245. package/dist/{update-cli-BKnHBe8a.js → update-cli-Dn6QQZLd.js} +14 -14
  246. package/dist/{update-runner-BLV8SI96.js → update-runner-G2YgEATs.js} +15 -15
  247. package/dist/{webhooks-cli-D5k-Y2A8.js → webhooks-cli-DjUITimx.js} +4 -4
  248. package/dist/{with-timeout-DPR4A2dx.js → with-timeout-CLrF-Yr_.js} +1 -1
  249. package/dist/{workspace-dirs-jKFQf7of.js → workspace-dirs-DCICLTHx.js} +1 -1
  250. package/dist/{wsl-CglTdtlb.js → wsl-DTi7eX-V.js} +2 -2
  251. package/extensions/memory-core/package.json +1 -1
  252. package/extensions/msteams/CHANGELOG.md +12 -0
  253. package/extensions/msteams/package.json +1 -1
  254. package/extensions/open-prose/package.json +1 -1
  255. package/extensions/outlook/package.json +1 -1
  256. package/extensions/slack/package.json +1 -1
  257. package/package.json +1 -1
@@ -3,18 +3,18 @@ import "./paths-By0XjHBk.js";
3
3
  import "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import "./exec-DuYbft0z.js";
6
- import "./agent-scope-DOrZjOnW.js";
7
- import "./model-selection-7wdmO-Iw.js";
8
- import "./config-B4jkreCN.js";
6
+ import "./agent-scope-Bnsyyeci.js";
7
+ import "./model-selection-CCTzD29o.js";
8
+ import "./config-BngIfn5l.js";
9
9
  import "./boolean-CbZoNRMn.js";
10
10
  import "./env-BRnPI9sO.js";
11
11
  import "./shell-env-Dc3iU7HK.js";
12
12
  import "./manifest-registry-D1MLZEjS.js";
13
13
  import { r as isLoopbackHost } from "./ws-C7Ktmt-R.js";
14
14
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-DgjXWzf-.js";
15
- import { Gt as approveDevicePairing, Jt as listDevicePairing, en as summarizeDeviceTokens } from "./client-k0MT6NBw.js";
16
- import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BccaLPi8.js";
17
- import "./pairing-token-Dcy37-4s.js";
15
+ import { Gt as approveDevicePairing, Jt as listDevicePairing, en as summarizeDeviceTokens } from "./client-CTrfpKT3.js";
16
+ import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-Bpjj5p7I.js";
17
+ import "./pairing-token-B703A1U3.js";
18
18
  import { n as formatTimeAgo } from "./format-relative-D4GQsWlP.js";
19
19
  import { n as withProgress } from "./progress-swt2y17x.js";
20
20
  import { t as renderTable } from "./table-0A3xKJVC.js";
@@ -1,5 +1,5 @@
1
- import { s as resolveGatewayLogPaths } from "./service-e6MzlLCd.js";
2
- import fs from "node:fs/promises";
1
+ import { s as resolveGatewayLogPaths } from "./service-CRZoXO_n.js";
2
+ import fsPromises from "node:fs/promises";
3
3
 
4
4
  //#region src/daemon/diagnostics.ts
5
5
  const GATEWAY_LOG_ERROR_PATTERNS = [
@@ -11,7 +11,7 @@ const GATEWAY_LOG_ERROR_PATTERNS = [
11
11
  ];
12
12
  async function readLastLogLine(filePath) {
13
13
  try {
14
- const lines = (await fs.readFile(filePath, "utf8")).split(/\r?\n/).map((line) => line.trim());
14
+ const lines = (await fsPromises.readFile(filePath, "utf8")).split(/\r?\n/).map((line) => line.trim());
15
15
  for (let i = lines.length - 1; i >= 0; i -= 1) if (lines[i]) return lines[i];
16
16
  return null;
17
17
  } catch {
@@ -20,8 +20,8 @@ async function readLastLogLine(filePath) {
20
20
  }
21
21
  async function readLastGatewayErrorLine(env) {
22
22
  const { stdoutPath, stderrPath } = resolveGatewayLogPaths(env);
23
- const stderrRaw = await fs.readFile(stderrPath, "utf8").catch(() => "");
24
- const stdoutRaw = await fs.readFile(stdoutPath, "utf8").catch(() => "");
23
+ const stderrRaw = await fsPromises.readFile(stderrPath, "utf8").catch(() => "");
24
+ const stdoutRaw = await fsPromises.readFile(stdoutPath, "utf8").catch(() => "");
25
25
  const lines = [...stderrRaw.split(/\r?\n/), ...stdoutRaw.split(/\r?\n/)].map((line) => line.trim());
26
26
  for (let i = lines.length - 1; i >= 0; i -= 1) {
27
27
  const line = lines[i];
@@ -3,9 +3,9 @@ import "./paths-By0XjHBk.js";
3
3
  import "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import "./exec-DuYbft0z.js";
6
- import "./agent-scope-DOrZjOnW.js";
7
- import "./model-selection-7wdmO-Iw.js";
8
- import { i as loadConfig } from "./config-B4jkreCN.js";
6
+ import "./agent-scope-Bnsyyeci.js";
7
+ import "./model-selection-CCTzD29o.js";
8
+ import { i as loadConfig } from "./config-BngIfn5l.js";
9
9
  import "./boolean-CbZoNRMn.js";
10
10
  import "./env-BRnPI9sO.js";
11
11
  import "./shell-env-Dc3iU7HK.js";
@@ -1,5 +1,5 @@
1
1
  import { c as normalizeStringEntries } from "./dock-hF45sewN.js";
2
- import { i as readChannelAllowFromStore } from "./pairing-store-BNhJOnWn.js";
2
+ import { i as readChannelAllowFromStore } from "./pairing-store-Be-ZQK87.js";
3
3
 
4
4
  //#region src/security/dm-policy-shared.ts
5
5
  async function resolveDmAllowState(params) {
@@ -3,9 +3,9 @@ import "./paths-By0XjHBk.js";
3
3
  import "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import "./exec-DuYbft0z.js";
6
- import "./agent-scope-DOrZjOnW.js";
7
- import "./model-selection-7wdmO-Iw.js";
8
- import { i as loadConfig } from "./config-B4jkreCN.js";
6
+ import "./agent-scope-Bnsyyeci.js";
7
+ import "./model-selection-CCTzD29o.js";
8
+ import { i as loadConfig } from "./config-BngIfn5l.js";
9
9
  import "./boolean-CbZoNRMn.js";
10
10
  import "./env-BRnPI9sO.js";
11
11
  import "./shell-env-Dc3iU7HK.js";
@@ -7,7 +7,7 @@ import { t as runCommandWithTimeout } from "./exec-DuYbft0z.js";
7
7
  import "./boolean-CbZoNRMn.js";
8
8
  import "./manifest-registry-D1MLZEjS.js";
9
9
  import { d as hasBinary } from "./frontmatter-B_jqcova.js";
10
- import "./skills-BwDmcZdt.js";
10
+ import "./skills-CYcBtLGH.js";
11
11
  import "./redact-B3O-RBO1.js";
12
12
  import "./errors-bI7Tdx75.js";
13
13
  import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
@@ -1,7 +1,7 @@
1
1
  import { n as resolveCliName } from "./cli-name-CzMV-gJF.js";
2
- import { t as resolveSymiPackageRoot } from "./symi-root-BQ0IpoW2.js";
2
+ import { t as resolveSymiPackageRoot } from "./symi-root-DeCVdZB4.js";
3
3
  import { t as note } from "./note-D9FXI2qW.js";
4
- import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-DJ1YCeSg.js";
4
+ import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-Cn_81QBb.js";
5
5
  import path from "node:path";
6
6
  import { spawnSync } from "node:child_process";
7
7
 
@@ -1,7 +1,7 @@
1
1
  import { n as resolveCliName } from "./cli-name-DY75UA5M.js";
2
2
  import { t as resolveSymiPackageRoot } from "./symi-root-Ctw1Rb_n.js";
3
3
  import { t as note } from "./note-BIAQpZxi.js";
4
- import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-B1Fg6Lmg.js";
4
+ import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-DOBXkVwG.js";
5
5
  import { spawnSync } from "node:child_process";
6
6
  import path from "node:path";
7
7
 
@@ -2,17 +2,17 @@ import { _ as resolveStateDir, h as resolveOAuthDir, m as resolveNewStateDir, p
2
2
  import { m as resolveHomeDir, u as isRecord } from "./utils-CTPsqyE_.js";
3
3
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
4
4
  import { n as DEFAULT_MAIN_KEY, o as normalizeAgentId, p as DEFAULT_ACCOUNT_ID, r as buildAgentMainSessionKey } from "./session-key-DUSb7CCb.js";
5
- import { l as resolveDefaultAgentId } from "./agent-scope-DOrZjOnW.js";
6
- import { d as SymiSchema, n as migrateLegacyConfig, o as readConfigFileSnapshot } from "./config-B4jkreCN.js";
7
- import { l as saveSessionStore, z as canonicalizeMainSessionAlias } from "./sessions-Dxf5Kjig.js";
5
+ import { l as resolveDefaultAgentId } from "./agent-scope-Bnsyyeci.js";
6
+ import { d as SymiSchema, n as migrateLegacyConfig, o as readConfigFileSnapshot } from "./config-BngIfn5l.js";
7
+ import { l as saveSessionStore, z as canonicalizeMainSessionAlias } from "./sessions-BCc3THTm.js";
8
8
  import { t as note } from "./note-D9FXI2qW.js";
9
- import { t as applyPluginAutoEnable } from "./plugin-auto-enable-DJBhDIMq.js";
9
+ import { t as applyPluginAutoEnable } from "./plugin-auto-enable-BXSJTxI7.js";
10
10
  import { t as isWithinDir } from "./path-safety-CkXjT453.js";
11
11
  import path from "node:path";
12
12
  import fs from "node:fs";
13
13
  import os from "node:os";
14
14
  import JSON5 from "json5";
15
- import fs$1 from "node:fs/promises";
15
+ import fsPromises from "node:fs/promises";
16
16
 
17
17
  //#region src/commands/doctor-legacy-config.ts
18
18
  function normalizeLegacyConfigValues(cfg) {
@@ -1063,7 +1063,7 @@ async function maybeMigrateLegacyConfig() {
1063
1063
  const targetDir = path.join(home, ".symi");
1064
1064
  const targetPath = path.join(targetDir, "symi.json");
1065
1065
  try {
1066
- await fs$1.access(targetPath);
1066
+ await fsPromises.access(targetPath);
1067
1067
  return changes;
1068
1068
  } catch {}
1069
1069
  const legacyCandidates = [
@@ -1073,14 +1073,14 @@ async function maybeMigrateLegacyConfig() {
1073
1073
  ];
1074
1074
  let legacyPath = null;
1075
1075
  for (const candidate of legacyCandidates) try {
1076
- await fs$1.access(candidate);
1076
+ await fsPromises.access(candidate);
1077
1077
  legacyPath = candidate;
1078
1078
  break;
1079
1079
  } catch {}
1080
1080
  if (!legacyPath) return changes;
1081
- await fs$1.mkdir(targetDir, { recursive: true });
1081
+ await fsPromises.mkdir(targetDir, { recursive: true });
1082
1082
  try {
1083
- await fs$1.copyFile(legacyPath, targetPath, fs$1.constants.COPYFILE_EXCL);
1083
+ await fsPromises.copyFile(legacyPath, targetPath, fsPromises.constants.COPYFILE_EXCL);
1084
1084
  changes.push(`Migrated legacy config: ${legacyPath} -> ${targetPath}`);
1085
1085
  } catch {}
1086
1086
  return changes;
package/dist/entry.js CHANGED
@@ -2315,7 +2315,7 @@ if (!ensureExperimentalWarningSuppressed()) {
2315
2315
  applyCliProfileEnv({ profile: parsed.profile });
2316
2316
  process$1.argv = parsed.argv;
2317
2317
  }
2318
- import("./run-main-DSyeVDsT.js").then(({ runCli }) => runCli(process$1.argv)).catch((error) => {
2318
+ import("./run-main-BhEQjKtM.js").then(({ runCli }) => runCli(process$1.argv)).catch((error) => {
2319
2319
  console.error("[symi] Failed to start CLI:", error instanceof Error ? error.stack ?? error.message : error);
2320
2320
  process$1.exitCode = 1;
2321
2321
  });
@@ -5,20 +5,20 @@ import "./model-selection-CMx1evaF.js";
5
5
  import "./manifest-registry-CVLmi8rz.js";
6
6
  import "./config-D7TcU4qN.js";
7
7
  import "./shell-env-CTYaxUs_.js";
8
- import "./client-DCxeV1bw.js";
9
- import "./call-DZg43vv8.js";
8
+ import "./client-yVTJ5jx5.js";
9
+ import "./call-C2urR5Fj.js";
10
10
  import "./message-channel-DXToSaWK.js";
11
11
  import "./pairing-token-B-OTYROz.js";
12
12
  import { n as formatTimeAgo } from "./format-relative-CxLpEQOX.js";
13
13
  import { c as readExecApprovalsSnapshot, p as saveExecApprovals } from "./exec-approvals-DEjIocmZ.js";
14
14
  import { t as formatDocsLink } from "./links-Dnmd-RS-.js";
15
15
  import "./progress-CI19Xh3z.js";
16
- import { n as callGatewayFromCli } from "./gateway-rpc-Bzg_TTKP.js";
16
+ import { n as callGatewayFromCli } from "./gateway-rpc-Kv0-8W2E.js";
17
17
  import "./systemd-CNnW7Chw.js";
18
18
  import "./service-DYpU1ajf.js";
19
19
  import { t as renderTable } from "./table-D0JXlEhQ.js";
20
20
  import { t as describeUnknownError } from "./shared-Dl4ZrOve.js";
21
- import { i as resolveNodeId, r as nodesCallOpts } from "./rpc-Dk1Az_d8.js";
21
+ import { i as resolveNodeId, r as nodesCallOpts } from "./rpc-BnAKPQDB.js";
22
22
  import JSON5 from "json5";
23
23
  import fs from "node:fs/promises";
24
24
 
@@ -3,29 +3,29 @@ import "./paths-By0XjHBk.js";
3
3
  import "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import "./exec-DuYbft0z.js";
6
- import "./agent-scope-DOrZjOnW.js";
7
- import "./model-selection-7wdmO-Iw.js";
8
- import "./config-B4jkreCN.js";
6
+ import "./agent-scope-Bnsyyeci.js";
7
+ import "./model-selection-CCTzD29o.js";
8
+ import "./config-BngIfn5l.js";
9
9
  import "./boolean-CbZoNRMn.js";
10
10
  import "./env-BRnPI9sO.js";
11
11
  import "./shell-env-Dc3iU7HK.js";
12
12
  import "./manifest-registry-D1MLZEjS.js";
13
13
  import "./message-channel-DgjXWzf-.js";
14
- import "./client-k0MT6NBw.js";
15
- import "./call-BccaLPi8.js";
16
- import "./pairing-token-Dcy37-4s.js";
14
+ import "./client-CTrfpKT3.js";
15
+ import "./call-Bpjj5p7I.js";
16
+ import "./pairing-token-B703A1U3.js";
17
17
  import { n as formatTimeAgo } from "./format-relative-D4GQsWlP.js";
18
18
  import { c as readExecApprovalsSnapshot, p as saveExecApprovals } from "./exec-approvals-DioSaIeH.js";
19
19
  import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
20
20
  import "./progress-swt2y17x.js";
21
- import { n as callGatewayFromCli } from "./gateway-rpc-D12UaJS5.js";
22
- import "./systemd-CUIM0n5P.js";
23
- import "./service-e6MzlLCd.js";
21
+ import { n as callGatewayFromCli } from "./gateway-rpc-gaoD882s.js";
22
+ import "./systemd-CsoVnIbM.js";
23
+ import "./service-CRZoXO_n.js";
24
24
  import { t as renderTable } from "./table-0A3xKJVC.js";
25
- import { t as describeUnknownError } from "./shared-1xPo9ygd.js";
26
- import { i as resolveNodeId, r as nodesCallOpts } from "./rpc-JAmDaTYt.js";
25
+ import { t as describeUnknownError } from "./shared-C39SiDDJ.js";
26
+ import { i as resolveNodeId, r as nodesCallOpts } from "./rpc-CwxSZZOx.js";
27
27
  import JSON5 from "json5";
28
- import fs from "node:fs/promises";
28
+ import fsPromises from "node:fs/promises";
29
29
 
30
30
  //#region src/cli/exec-approvals-cli.ts
31
31
  async function readStdin() {
@@ -315,7 +315,7 @@ function registerExecApprovalsCli(program) {
315
315
  if (!opts.file && !opts.stdin) exitWithError("Provide --file or --stdin.");
316
316
  if (opts.file && opts.stdin) exitWithError("Use either --file or --stdin (not both).");
317
317
  const { source, nodeId, targetLabel, baseHash } = await loadWritableSnapshotTarget(opts);
318
- const raw = opts.stdin ? await readStdin() : await fs.readFile(String(opts.file), "utf8");
318
+ const raw = opts.stdin ? await readStdin() : await fsPromises.readFile(String(opts.file), "utf8");
319
319
  let file;
320
320
  try {
321
321
  file = JSON5.parse(raw);
@@ -6,8 +6,8 @@ import { _ as DEFAULT_PROVIDER, g as DEFAULT_MODEL, p as resolveThinkingDefault
6
6
  import { a as resolveAgentIdentity } from "./reply-prefix-i-FPYcoQ.js";
7
7
  import "./plugins-CZ_mYwXq.js";
8
8
  import "./replies-0nzkXt6o.js";
9
- import { a as resolveAgentTimeoutMs, r as runEmbeddedPiAgent } from "./pi-embedded-Da0QRlM0.js";
10
- import { $ as loadSessionStore, nt as saveSessionStore } from "./deliver-f3cIWxXT.js";
9
+ import { a as resolveAgentTimeoutMs, r as runEmbeddedPiAgent } from "./pi-embedded-CviuByGd.js";
10
+ import { $ as loadSessionStore, nt as saveSessionStore } from "./deliver-q23ar_Pm.js";
11
11
  import "./diagnostic-BdRnGknC.js";
12
12
  import "./diagnostic-session-state-DpxCUzoM.js";
13
13
  import "./chunk-CAZujdOi.js";
@@ -16,14 +16,14 @@ import "./ssrf-BCSnhba8.js";
16
16
  import "./boolean-BW6OTjPi.js";
17
17
  import "./shell-env-DgjeObDZ.js";
18
18
  import "./manifest-registry-CAWGTwb5.js";
19
- import "./chrome-3jl2ulOE.js";
19
+ import "./chrome-DNssqQJs.js";
20
20
  import "./skills-DO7WNsVJ.js";
21
21
  import "./redact-DSOAcWMe.js";
22
22
  import "./errors-BEU7IHU6.js";
23
23
  import "./tokens-yWO1wD7Z.js";
24
24
  import "./thinking-DgjGxdSP.js";
25
25
  import { n as resolveSessionFilePath, s as resolveStorePath } from "./paths-BsT3BvfH.js";
26
- import "./manager-LPPGAsqn.js";
26
+ import "./manager-qrAOWmHt.js";
27
27
  import "./github-copilot-token-dYUr1mDQ.js";
28
28
  import "./sqlite-D8iYC_CU.js";
29
29
  import "./markdown-tables-jQzXAsf3.js";
@@ -1,6 +1,6 @@
1
1
  import { n as isPidAlive, t as resolveProcessScopedMap } from "./process-scoped-map-lWFQjQ3p.js";
2
2
  import path from "node:path";
3
- import fs from "node:fs/promises";
3
+ import fsPromises from "node:fs/promises";
4
4
 
5
5
  //#region src/plugin-sdk/file-lock.ts
6
6
  const HELD_LOCKS = resolveProcessScopedMap(Symbol.for("symi.fileLockHeldLocks"));
@@ -11,7 +11,7 @@ function computeDelayMs(retries, attempt) {
11
11
  }
12
12
  async function readLockPayload(lockPath) {
13
13
  try {
14
- const raw = await fs.readFile(lockPath, "utf8");
14
+ const raw = await fsPromises.readFile(lockPath, "utf8");
15
15
  const parsed = JSON.parse(raw);
16
16
  if (typeof parsed.pid !== "number" || typeof parsed.createdAt !== "string") return null;
17
17
  return {
@@ -25,9 +25,9 @@ async function readLockPayload(lockPath) {
25
25
  async function resolveNormalizedFilePath(filePath) {
26
26
  const resolved = path.resolve(filePath);
27
27
  const dir = path.dirname(resolved);
28
- await fs.mkdir(dir, { recursive: true });
28
+ await fsPromises.mkdir(dir, { recursive: true });
29
29
  try {
30
- const realDir = await fs.realpath(dir);
30
+ const realDir = await fsPromises.realpath(dir);
31
31
  return path.join(realDir, path.basename(resolved));
32
32
  } catch {
33
33
  return resolved;
@@ -41,7 +41,7 @@ async function isStaleLock(lockPath, staleMs) {
41
41
  if (!Number.isFinite(createdAt) || Date.now() - createdAt > staleMs) return true;
42
42
  }
43
43
  try {
44
- const stat = await fs.stat(lockPath);
44
+ const stat = await fsPromises.stat(lockPath);
45
45
  return Date.now() - stat.mtimeMs > staleMs;
46
46
  } catch {
47
47
  return true;
@@ -54,7 +54,7 @@ async function releaseHeldLock(normalizedFile) {
54
54
  if (current.count > 0) return;
55
55
  HELD_LOCKS.delete(normalizedFile);
56
56
  await current.handle.close().catch(() => void 0);
57
- await fs.rm(current.lockPath, { force: true }).catch(() => void 0);
57
+ await fsPromises.rm(current.lockPath, { force: true }).catch(() => void 0);
58
58
  }
59
59
  async function acquireFileLock(filePath, options) {
60
60
  const normalizedFile = await resolveNormalizedFilePath(filePath);
@@ -69,7 +69,7 @@ async function acquireFileLock(filePath, options) {
69
69
  }
70
70
  const attempts = Math.max(1, options.retries.retries + 1);
71
71
  for (let attempt = 0; attempt < attempts; attempt += 1) try {
72
- const handle = await fs.open(lockPath, "wx");
72
+ const handle = await fsPromises.open(lockPath, "wx");
73
73
  await handle.writeFile(JSON.stringify({
74
74
  pid: process.pid,
75
75
  createdAt: (/* @__PURE__ */ new Date()).toISOString()
@@ -86,7 +86,7 @@ async function acquireFileLock(filePath, options) {
86
86
  } catch (err) {
87
87
  if (err.code !== "EEXIST") throw err;
88
88
  if (await isStaleLock(lockPath, options.stale)) {
89
- await fs.rm(lockPath, { force: true }).catch(() => void 0);
89
+ await fsPromises.rm(lockPath, { force: true }).catch(() => void 0);
90
90
  continue;
91
91
  }
92
92
  if (attempt >= attempts - 1) break;
@@ -1,6 +1,6 @@
1
1
  import path from "node:path";
2
2
  import { constants } from "node:fs";
3
- import fs$1 from "node:fs/promises";
3
+ import fsPromises from "node:fs/promises";
4
4
 
5
5
  //#region src/infra/fs-safe.ts
6
6
  var SafeOpenError = class extends Error {
@@ -20,19 +20,19 @@ const isSymlinkOpenError = (err) => isNodeError(err) && (err.code === "ELOOP" ||
20
20
  async function openVerifiedLocalFile(filePath) {
21
21
  let handle;
22
22
  try {
23
- handle = await fs$1.open(filePath, OPEN_READ_FLAGS);
23
+ handle = await fsPromises.open(filePath, OPEN_READ_FLAGS);
24
24
  } catch (err) {
25
25
  if (isNotFoundError(err)) throw new SafeOpenError("not-found", "file not found");
26
26
  if (isSymlinkOpenError(err)) throw new SafeOpenError("symlink", "symlink open blocked", { cause: err });
27
27
  throw err;
28
28
  }
29
29
  try {
30
- const [stat, lstat] = await Promise.all([handle.stat(), fs$1.lstat(filePath)]);
30
+ const [stat, lstat] = await Promise.all([handle.stat(), fsPromises.lstat(filePath)]);
31
31
  if (lstat.isSymbolicLink()) throw new SafeOpenError("symlink", "symlink not allowed");
32
32
  if (!stat.isFile()) throw new SafeOpenError("not-file", "not a file");
33
33
  if (stat.ino !== lstat.ino || stat.dev !== lstat.dev) throw new SafeOpenError("path-mismatch", "path changed during read");
34
- const realPath = await fs$1.realpath(filePath);
35
- const realStat = await fs$1.stat(realPath);
34
+ const realPath = await fsPromises.realpath(filePath);
35
+ const realStat = await fsPromises.stat(realPath);
36
36
  if (stat.ino !== realStat.ino || stat.dev !== realStat.dev) throw new SafeOpenError("path-mismatch", "path mismatch");
37
37
  return {
38
38
  handle,
@@ -49,7 +49,7 @@ async function openVerifiedLocalFile(filePath) {
49
49
  async function openFileWithinRoot(params) {
50
50
  let rootReal;
51
51
  try {
52
- rootReal = await fs$1.realpath(params.rootDir);
52
+ rootReal = await fsPromises.realpath(params.rootDir);
53
53
  } catch (err) {
54
54
  if (isNotFoundError(err)) throw new SafeOpenError("not-found", "root dir not found");
55
55
  throw err;