@poe-platform/safe-bash 0.1.800 → 0.1.802

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 (502) hide show
  1. package/README.md +16 -5
  2. package/dist/image-ast/index.browser.js +122 -76
  3. package/dist/image-ast/index.js +122 -76
  4. package/dist/pdf-ast/index.js +4 -3
  5. package/dist/safe-bash/chunks/chunk-3HQU4OJO.js +13 -0
  6. package/dist/safe-bash/chunks/{chunk-LUOFIVNI.js → chunk-3NDIFSNM.js} +3 -3
  7. package/dist/safe-bash/chunks/{chunk-4SEW2Q6H.js → chunk-3R3AANOR.js} +1 -1
  8. package/dist/safe-bash/chunks/{chunk-K4YMYFRJ.js → chunk-44ALJ4QG.js} +5809 -7424
  9. package/dist/safe-bash/chunks/{chunk-KHMGTPD6.js → chunk-46Z5E5EV.js} +2 -2
  10. package/dist/safe-bash/chunks/chunk-4BSJLKNM.js +14 -0
  11. package/dist/safe-bash/chunks/chunk-4D4N7IU2.js +47 -0
  12. package/dist/safe-bash/chunks/chunk-55YJASTN.js +14 -0
  13. package/dist/safe-bash/chunks/{chunk-XB3B7KMM.js → chunk-6O77NL2S.js} +1 -1
  14. package/dist/safe-bash/chunks/{chunk-T3JTVIEP.js → chunk-6PAVEFT3.js} +1 -1
  15. package/dist/safe-bash/chunks/{chunk-PYVEAFJM.js → chunk-74GHTNJA.js} +3 -2
  16. package/dist/safe-bash/chunks/{chunk-LQHGH25W.js → chunk-7R5BDCG7.js} +1 -1
  17. package/dist/safe-bash/chunks/chunk-7ZBU7KYV.js +14 -0
  18. package/dist/safe-bash/chunks/{chunk-MHZ24KEI.js → chunk-AM5ESLPH.js} +1 -1
  19. package/dist/safe-bash/chunks/{chunk-3L3T6LYV.js → chunk-AUSNDQTJ.js} +1 -1
  20. package/dist/safe-bash/chunks/{chunk-YG5WAHK7.js → chunk-B7TAL7S5.js} +1 -3
  21. package/dist/safe-bash/chunks/{chunk-QVSRRNZT.js → chunk-BJA5XNP6.js} +6 -6
  22. package/dist/safe-bash/chunks/{chunk-K7IQZE7D.js → chunk-C5OWC2TL.js} +1 -1
  23. package/dist/safe-bash/chunks/{chunk-F3RV2F72.js → chunk-CHYGPFVM.js} +1 -1
  24. package/dist/safe-bash/chunks/{chunk-M4CFCXHN.js → chunk-CS4MNM6I.js} +1 -1
  25. package/dist/safe-bash/chunks/{chunk-H6JW3E4F.js → chunk-CTVWDACF.js} +1 -1
  26. package/dist/safe-bash/chunks/{chunk-BHJE5LPZ.js → chunk-D3ANYGMC.js} +1 -1
  27. package/dist/safe-bash/chunks/chunk-DQP3VHSB.js +15 -0
  28. package/dist/safe-bash/chunks/{chunk-NLAW7KDI.js → chunk-E7OYNDGL.js} +1 -1
  29. package/dist/safe-bash/chunks/{chunk-SOZK5JVX.js → chunk-FBUCWVTE.js} +1 -1
  30. package/dist/safe-bash/chunks/chunk-FZE4HW6G.js +11 -0
  31. package/dist/safe-bash/chunks/chunk-GEG3BWGE.js +14 -0
  32. package/dist/safe-bash/chunks/{chunk-HHW7MGS2.js → chunk-GETUOD5D.js} +4 -4
  33. package/dist/safe-bash/chunks/chunk-HBCN24ZA.js +50 -0
  34. package/dist/safe-bash/chunks/chunk-HZ7BWKQ3.js +13 -0
  35. package/dist/safe-bash/chunks/{chunk-JJSTTIEZ.js → chunk-HZAMGT5I.js} +3 -3
  36. package/dist/safe-bash/chunks/{chunk-KCVSVD65.js → chunk-I5HZ4FGE.js} +1 -1
  37. package/dist/safe-bash/chunks/{chunk-KV7PKOHV.js → chunk-IWDICZVK.js} +1 -1
  38. package/dist/safe-bash/chunks/{chunk-I4OAEOP6.js → chunk-J42RIHHJ.js} +1 -1
  39. package/dist/safe-bash/chunks/{chunk-K2VCOJ2B.js → chunk-K6VCD7IY.js} +7 -12
  40. package/dist/safe-bash/chunks/chunk-KDNSPLII.js +83 -0
  41. package/dist/safe-bash/chunks/{chunk-63FXVDGF.js → chunk-LVOBFF4D.js} +1 -1
  42. package/dist/safe-bash/chunks/{chunk-U5NUZPCC.js → chunk-MHMMRCYC.js} +1 -1
  43. package/dist/safe-bash/chunks/{chunk-KW24TAIU.js → chunk-NQCM3TYR.js} +922 -658
  44. package/dist/safe-bash/chunks/{chunk-VYZTG3GV.js → chunk-NZQXYWA3.js} +1 -1
  45. package/dist/safe-bash/chunks/{chunk-TFGRKY43.js → chunk-OQRVVGR6.js} +1 -1
  46. package/dist/safe-bash/chunks/{chunk-PPYM75Z3.js → chunk-OV6IHKO6.js} +2 -2
  47. package/dist/safe-bash/chunks/{chunk-TYD7EVUJ.js → chunk-PH63PLPZ.js} +8 -8
  48. package/dist/safe-bash/chunks/chunk-QGUV42T5.js +44 -0
  49. package/dist/safe-bash/chunks/chunk-R3NAKOED.js +51 -0
  50. package/dist/safe-bash/chunks/chunk-RRR7AQ24.js +38 -0
  51. package/dist/safe-bash/chunks/{chunk-RKKRJ54E.js → chunk-RSTHLAF3.js} +30 -23
  52. package/dist/safe-bash/chunks/{chunk-RMWLWH7Q.js → chunk-SHEMU2Z7.js} +378 -1148
  53. package/dist/safe-bash/chunks/{chunk-7YSRXFEG.js → chunk-TFIBK2GI.js} +1 -1
  54. package/dist/safe-bash/chunks/{chunk-I7L3G3NX.js → chunk-UE5KZDEK.js} +2 -2
  55. package/dist/safe-bash/chunks/{chunk-QU3BVQ53.js → chunk-UTBUUFDM.js} +1 -1
  56. package/dist/safe-bash/chunks/{chunk-6HZYFL3H.js → chunk-VKNVHEX3.js} +2 -7
  57. package/dist/safe-bash/chunks/chunk-VSAJ4OTM.js +962 -0
  58. package/dist/safe-bash/chunks/{chunk-46UISJCK.js → chunk-VTH3MLDU.js} +1 -1
  59. package/dist/safe-bash/chunks/{chunk-JTLSUJ7V.js → chunk-WDLGKIHD.js} +56 -39
  60. package/dist/safe-bash/chunks/chunk-XAQMU6OY.js +14 -0
  61. package/dist/safe-bash/chunks/{chunk-LLZCZ24K.js → chunk-XVOSKJE2.js} +1 -1
  62. package/dist/safe-bash/chunks/chunk-ZVD5IS4V.js +49 -0
  63. package/dist/safe-bash/chunks/{csvkit-QGP3GAOB.js → csvkit-TACDU7FC.js} +3 -3
  64. package/dist/safe-bash/chunks/{ffmpeg-JTVH26MK.js → ffmpeg-WTC3TEFI.js} +2 -2
  65. package/dist/safe-bash/chunks/{gh-I7QX7N5C.js → gh-6WU6PXL4.js} +2 -2
  66. package/dist/safe-bash/chunks/{git-MA7NKYVP.js → git-EFZIGJW4.js} +2 -2
  67. package/dist/safe-bash/chunks/{imagemagick-Y4NPWX2Q.js → imagemagick-EIEYGWPF.js} +2 -2
  68. package/dist/safe-bash/chunks/{implementation-BWDKOVQJ.js → implementation-MLFHUQ5M.js} +2 -2
  69. package/dist/safe-bash/chunks/{mmdc-44PELHDG.js → mmdc-ROQJT5HQ.js} +2 -2
  70. package/dist/safe-bash/chunks/{pdfimages-635TRW4Q.js → pdfimages-DW7LWXFI.js} +2 -2
  71. package/dist/safe-bash/chunks/{pdfinfo-FSDAA2KY.js → pdfinfo-TIP6XLUQ.js} +2 -2
  72. package/dist/safe-bash/chunks/{pdftk-GQ5UH3VG.js → pdftk-DMG22ITZ.js} +2 -2
  73. package/dist/safe-bash/chunks/{pdftoppm-YTXQCAYT.js → pdftoppm-WNDYR72T.js} +2 -2
  74. package/dist/safe-bash/chunks/{pdftotext-CVA2G7FY.js → pdftotext-5IPZ4NI7.js} +2 -2
  75. package/dist/safe-bash/chunks/{qpdf-HZMIFG4A.js → qpdf-TTX2DIUA.js} +2 -2
  76. package/dist/safe-bash/chunks/{sips-E7UBDP33.js → sips-XYS46JPJ.js} +2 -2
  77. package/dist/safe-bash/chunks/{soffice-ELASUWUK.js → soffice-TU73E5KL.js} +2 -2
  78. package/dist/safe-bash/chunks/{wkhtmltopdf-EPO6YCMG.js → wkhtmltopdf-FSZ2CHGE.js} +2 -2
  79. package/dist/safe-bash/command-chunks/{chunk-QBGA56UH.js → chunk-2ELYGJDD.js} +7 -7
  80. package/dist/safe-bash/command-chunks/{chunk-52PCQXD2.js → chunk-2NHI5F5S.js} +2 -1
  81. package/dist/safe-bash/command-chunks/{chunk-HDKVO47G.js → chunk-2SQEIUGJ.js} +3 -3
  82. package/dist/safe-bash/command-chunks/{chunk-5LSGEIZY.js → chunk-3HHCU5YU.js} +4 -3
  83. package/dist/safe-bash/command-chunks/{chunk-TF6OA2GK.js → chunk-3NV3HYT2.js} +1 -1
  84. package/dist/safe-bash/command-chunks/{chunk-2QHG43WJ.js → chunk-4BB2SWJ5.js} +1 -1
  85. package/dist/safe-bash/command-chunks/{chunk-IEXHHNOF.js → chunk-4J5CZ2DP.js} +2 -7
  86. package/dist/safe-bash/command-chunks/{chunk-WDHI3S6Y.js → chunk-4OOUQTQO.js} +1 -1
  87. package/dist/safe-bash/command-chunks/{chunk-YMONDXET.js → chunk-4ZQWGOZB.js} +2 -2
  88. package/dist/safe-bash/command-chunks/{chunk-L6DVEBW3.js → chunk-5BSTFCXG.js} +2 -2
  89. package/dist/safe-bash/command-chunks/{chunk-Q3DII3Q7.js → chunk-5PWJG2UK.js} +1 -1
  90. package/dist/safe-bash/command-chunks/{chunk-JMPP4TCW.js → chunk-5UBXNSFZ.js} +3 -2
  91. package/dist/safe-bash/command-chunks/{chunk-3NG75MOB.js → chunk-67GQA75T.js} +1 -1
  92. package/dist/safe-bash/command-chunks/{chunk-L6SU4S26.js → chunk-6B7WQIKB.js} +0 -7
  93. package/dist/safe-bash/command-chunks/{chunk-V6MSPQLA.js → chunk-6BNTBWIK.js} +4 -39
  94. package/dist/safe-bash/command-chunks/{chunk-SAMH7SQE.js → chunk-6GWJUQAV.js} +237 -145
  95. package/dist/safe-bash/command-chunks/{chunk-JN7WIP6S.js → chunk-6KJ3LPI2.js} +2 -2
  96. package/dist/safe-bash/command-chunks/{chunk-HLDTOR7M.js → chunk-6ZVI7LUY.js} +1 -1
  97. package/dist/safe-bash/command-chunks/{chunk-X6NJC3IC.js → chunk-75OFBY5R.js} +1 -1
  98. package/dist/safe-bash/command-chunks/{chunk-MRW5HD2D.js → chunk-7O3E4LPT.js} +4 -22
  99. package/dist/safe-bash/command-chunks/{chunk-TEVJJPTC.js → chunk-7U7EXOXX.js} +1 -1
  100. package/dist/safe-bash/command-chunks/{chunk-6CYTRQ24.js → chunk-7VTKQUA5.js} +20 -17
  101. package/dist/safe-bash/command-chunks/{chunk-BZPAWTUL.js → chunk-AEF5BA3D.js} +1 -1
  102. package/dist/safe-bash/command-chunks/{chunk-63R3FEZJ.js → chunk-AIV5BF5W.js} +1 -1
  103. package/dist/safe-bash/command-chunks/{chunk-AYUTO323.js → chunk-AKJG2XD3.js} +2 -18
  104. package/dist/safe-bash/command-chunks/{chunk-J34TZVMW.js → chunk-ALDC4XP4.js} +0 -5
  105. package/dist/safe-bash/command-chunks/{chunk-CKXV2CLD.js → chunk-ARBYOQUZ.js} +1 -1
  106. package/dist/safe-bash/command-chunks/{chunk-44AHAB5O.js → chunk-BDSMROQZ.js} +1 -4
  107. package/dist/safe-bash/command-chunks/{chunk-53P53XFM.js → chunk-BPE5INLI.js} +1 -1
  108. package/dist/safe-bash/command-chunks/{chunk-OT4LZMLB.js → chunk-BR73BIOW.js} +1 -1
  109. package/dist/safe-bash/command-chunks/{chunk-WB5SVIG7.js → chunk-C5YYCQHW.js} +498 -88
  110. package/dist/safe-bash/command-chunks/{chunk-EUSPTFAX.js → chunk-CAP7ZJSY.js} +7 -7
  111. package/dist/safe-bash/command-chunks/{chunk-DWFLVJC6.js → chunk-CCRHMAU5.js} +2 -1
  112. package/dist/safe-bash/command-chunks/{chunk-GI4CJED2.js → chunk-CQTRW45K.js} +1 -1
  113. package/dist/safe-bash/command-chunks/{chunk-KKG4BAFZ.js → chunk-DIEPXUM4.js} +6 -0
  114. package/dist/safe-bash/command-chunks/{chunk-QJAFJP2G.js → chunk-DZCY63VJ.js} +12 -10
  115. package/dist/safe-bash/command-chunks/{chunk-QUENU6GM.js → chunk-E55UKBIE.js} +3 -3
  116. package/dist/safe-bash/command-chunks/{chunk-MC3VWLIZ.js → chunk-FDBUV4HJ.js} +28 -19
  117. package/dist/safe-bash/command-chunks/{chunk-7FKUC34S.js → chunk-FPVUD6TH.js} +6 -3
  118. package/dist/safe-bash/command-chunks/{chunk-E2LB7FRT.js → chunk-FXOA7RBK.js} +1 -1
  119. package/dist/safe-bash/command-chunks/{chunk-QWIDNAAK.js → chunk-FZTK4MFI.js} +3 -3
  120. package/dist/safe-bash/command-chunks/{chunk-K543PB3I.js → chunk-G66QUHIZ.js} +6 -35
  121. package/dist/safe-bash/command-chunks/{chunk-YJDV76GL.js → chunk-GFQZCKO6.js} +29 -19
  122. package/dist/safe-bash/command-chunks/{chunk-FKKB5X5V.js → chunk-GOB777HR.js} +1 -1
  123. package/dist/safe-bash/command-chunks/{chunk-IYPAQ7PH.js → chunk-GRBWW4SG.js} +6 -0
  124. package/dist/safe-bash/command-chunks/{chunk-EFANWIHL.js → chunk-GY3BWK7K.js} +1 -0
  125. package/dist/safe-bash/command-chunks/{chunk-PPNBNFAU.js → chunk-GYQ2HAKQ.js} +8 -8
  126. package/dist/safe-bash/command-chunks/{chunk-PJJUYO3R.js → chunk-II77KPZN.js} +2 -2
  127. package/dist/safe-bash/command-chunks/{chunk-VL67NWNS.js → chunk-JDYXY44P.js} +2 -2
  128. package/dist/safe-bash/command-chunks/{chunk-4QJOYXVB.js → chunk-JV7LBUTP.js} +1 -1
  129. package/dist/safe-bash/command-chunks/{chunk-IKS2YXZQ.js → chunk-K67MWWWH.js} +3 -3
  130. package/dist/safe-bash/command-chunks/{chunk-BKCNF5U3.js → chunk-KQLD3AED.js} +2 -2
  131. package/dist/safe-bash/command-chunks/{chunk-UMDIOL3O.js → chunk-KXU3IRUO.js} +1 -1
  132. package/dist/safe-bash/command-chunks/{chunk-QZF3SINC.js → chunk-LAOM65EE.js} +2 -2
  133. package/dist/safe-bash/command-chunks/{chunk-HFII3QYO.js → chunk-LWS62ISU.js} +46 -32
  134. package/dist/safe-bash/command-chunks/{chunk-BZDDAPSV.js → chunk-LWSBAWLT.js} +1 -1
  135. package/dist/safe-bash/command-chunks/{chunk-U6G67N23.js → chunk-MIXBO6U7.js} +18 -5
  136. package/dist/safe-bash/command-chunks/{chunk-JQ74HC37.js → chunk-MQFIPHIQ.js} +23 -50
  137. package/dist/safe-bash/command-chunks/{chunk-ZJBR5Q5I.js → chunk-MSFXC3OC.js} +4 -4
  138. package/dist/safe-bash/command-chunks/{chunk-NI7MKJPN.js → chunk-MTQH74CF.js} +3 -55
  139. package/dist/safe-bash/command-chunks/chunk-MWUZZWXK.js +354 -0
  140. package/dist/safe-bash/command-chunks/{chunk-RVLO4DYT.js → chunk-N4PFUSRM.js} +1 -1
  141. package/dist/safe-bash/command-chunks/{chunk-WBNZ4PRE.js → chunk-NGG2XL56.js} +7 -4
  142. package/dist/safe-bash/command-chunks/{chunk-D4OP2BR3.js → chunk-NKFYQSES.js} +1 -2
  143. package/dist/safe-bash/command-chunks/{chunk-NGWB2YBL.js → chunk-O4JQSB7O.js} +1 -1
  144. package/dist/safe-bash/command-chunks/{chunk-GLOZX57Y.js → chunk-OQKC5ZU2.js} +23 -114
  145. package/dist/safe-bash/command-chunks/{chunk-7L24L4UO.js → chunk-OQU6UT6X.js} +2 -20
  146. package/dist/safe-bash/command-chunks/{chunk-TYCGMRLM.js → chunk-OYYV7ZAF.js} +1 -1
  147. package/dist/safe-bash/command-chunks/{chunk-SVULUDOP.js → chunk-P2N33UMN.js} +20 -81
  148. package/dist/safe-bash/command-chunks/{chunk-Q7Q5GM5S.js → chunk-P5APDEFB.js} +2 -2
  149. package/dist/safe-bash/command-chunks/{chunk-3HXDA5PT.js → chunk-PMBFZXTK.js} +1 -1
  150. package/dist/safe-bash/command-chunks/{chunk-4Y3WVMK4.js → chunk-PV66YWHB.js} +1 -0
  151. package/dist/safe-bash/command-chunks/{chunk-AXK3H4PX.js → chunk-QJ33BHI4.js} +1 -1
  152. package/dist/safe-bash/command-chunks/{chunk-3LSOYLNV.js → chunk-QKFSRZGQ.js} +2 -2
  153. package/dist/safe-bash/command-chunks/{chunk-JZSNU2MY.js → chunk-QKJLP53H.js} +2 -2
  154. package/dist/safe-bash/command-chunks/{chunk-LC2MFKT4.js → chunk-RMWQAAO5.js} +24 -25
  155. package/dist/safe-bash/command-chunks/{chunk-QDTBMSBE.js → chunk-RO62EWX6.js} +2 -2
  156. package/dist/safe-bash/command-chunks/{chunk-4C6QI5BQ.js → chunk-RZZI24ZE.js} +4 -4
  157. package/dist/safe-bash/command-chunks/{chunk-PFAADCB5.js → chunk-SDNBCQ3X.js} +10 -24
  158. package/dist/safe-bash/command-chunks/{chunk-36O5OT7E.js → chunk-T35Y7YQD.js} +1 -1
  159. package/dist/safe-bash/command-chunks/{chunk-6HMX4CQS.js → chunk-TGSNCQSR.js} +44 -16
  160. package/dist/safe-bash/command-chunks/{chunk-5T7CRJHW.js → chunk-TIOCQVUQ.js} +4 -7
  161. package/dist/safe-bash/command-chunks/{chunk-GN2TKLE7.js → chunk-TS65BJHG.js} +5 -5
  162. package/dist/safe-bash/command-chunks/{chunk-7RGB363W.js → chunk-TSCGT46G.js} +3 -2
  163. package/dist/safe-bash/command-chunks/{chunk-KBEURXFF.js → chunk-UN6WS55J.js} +3 -3
  164. package/dist/safe-bash/command-chunks/{chunk-SX2X3IH4.js → chunk-V2V5OCL3.js} +1 -1
  165. package/dist/safe-bash/command-chunks/{chunk-ERYJLO6G.js → chunk-V7A7DRTU.js} +1 -1
  166. package/dist/safe-bash/command-chunks/{chunk-5SHGJ7NO.js → chunk-VA5ZHYYA.js} +73 -33
  167. package/dist/safe-bash/command-chunks/{chunk-XETLEHZP.js → chunk-VPR5LQYX.js} +3 -2
  168. package/dist/safe-bash/command-chunks/{chunk-3DT2YOGW.js → chunk-VSRGNQCP.js} +3 -3
  169. package/dist/safe-bash/command-chunks/{chunk-N2F74VRO.js → chunk-VT6MJBEI.js} +1 -1
  170. package/dist/safe-bash/command-chunks/{chunk-J5SN3PZ3.js → chunk-VXSLJH7G.js} +53 -3
  171. package/dist/safe-bash/command-chunks/{chunk-PXYOWWMV.js → chunk-W7RAD4EW.js} +4 -3
  172. package/dist/safe-bash/command-chunks/{chunk-YGC6OS5O.js → chunk-WECIOOQB.js} +5 -8
  173. package/dist/safe-bash/command-chunks/{chunk-HHP343KT.js → chunk-WTECBRU4.js} +1 -1
  174. package/dist/safe-bash/command-chunks/{chunk-AO6Z5EQ7.js → chunk-WVE64WM2.js} +6 -5
  175. package/dist/safe-bash/command-chunks/{chunk-Z7RVSD5K.js → chunk-WVHONVZ4.js} +1 -1
  176. package/dist/safe-bash/command-chunks/{chunk-HLGKIZ25.js → chunk-X54L3DBL.js} +6 -9
  177. package/dist/safe-bash/command-chunks/{chunk-QNIMV57G.js → chunk-XNLFHHOC.js} +1 -1
  178. package/dist/safe-bash/command-chunks/{chunk-XAFSZDY2.js → chunk-XS72HTMA.js} +11 -0
  179. package/dist/safe-bash/command-chunks/{chunk-KYSPGS33.js → chunk-YIQACGEW.js} +2 -0
  180. package/dist/safe-bash/command-chunks/{chunk-NAY27PXB.js → chunk-YOFC45RK.js} +1 -1
  181. package/dist/safe-bash/command-chunks/{chunk-T5H5UJQ3.js → chunk-YVNGTIJO.js} +1 -1
  182. package/dist/safe-bash/command-chunks/{chunk-QI7LGHJJ.js → chunk-Z45N42QC.js} +21 -6
  183. package/dist/safe-bash/command-chunks/{chunk-67IQF5GC.js → chunk-ZYHTWNAE.js} +23 -9
  184. package/dist/safe-bash/command-chunks/{chunk-STC3LEWJ.js → chunk-ZYXH3B66.js} +5 -3
  185. package/dist/safe-bash/commands/apply-patch/index.browser.js +14 -0
  186. package/dist/safe-bash/commands/archive/index.browser.js +36 -0
  187. package/dist/safe-bash/commands/bytes/compression/index.js +3 -2
  188. package/dist/safe-bash/commands/column/index.browser.js +12 -0
  189. package/dist/safe-bash/commands/copy-preserve.d.ts +1 -0
  190. package/dist/safe-bash/commands/csplit/index.browser.js +2 -2
  191. package/dist/safe-bash/commands/docx/index.browser.js +1 -1
  192. package/dist/safe-bash/commands/du/index.browser.js +14 -0
  193. package/dist/safe-bash/commands/execution.js +19 -13
  194. package/dist/safe-bash/commands/expr/index.browser.js +12 -0
  195. package/dist/safe-bash/commands/factor/index.browser.js +2 -2
  196. package/dist/safe-bash/commands/file/index.browser.js +14 -0
  197. package/dist/safe-bash/commands/filesystem.d.ts +1 -1
  198. package/dist/safe-bash/commands/filesystem.js +26 -15
  199. package/dist/safe-bash/commands/getopt/index.browser.js +2 -2
  200. package/dist/safe-bash/commands/grep-aliases/index.browser.js +14 -0
  201. package/dist/safe-bash/commands/hexdump/index.browser.js +2 -2
  202. package/dist/safe-bash/commands/html-to-markdown/index.browser.js +16 -0
  203. package/dist/safe-bash/commands/htmlq/index.d.ts +1 -1
  204. package/dist/safe-bash/commands/iconv/index.browser.js +2 -2
  205. package/dist/safe-bash/commands/line-endings/index.browser.js +2 -2
  206. package/dist/safe-bash/commands/llm/index.browser.js +2 -2
  207. package/dist/safe-bash/commands/llm/providers/index.browser.js +1 -1
  208. package/dist/safe-bash/commands/mdq/index.browser.js +3 -3
  209. package/dist/safe-bash/commands/media/index.browser.js +1 -1
  210. package/dist/safe-bash/commands/metadata/index.browser.js +21 -0
  211. package/dist/safe-bash/commands/network/curl.d.ts +1 -1
  212. package/dist/safe-bash/commands/network/curl.js +1 -3
  213. package/dist/safe-bash/commands/network/index.browser.js +4 -4
  214. package/dist/safe-bash/commands/network/platform-portable.d.ts +1 -5
  215. package/dist/safe-bash/commands/network/platform-portable.js +1 -26
  216. package/dist/safe-bash/commands/network/public.d.ts +2 -2
  217. package/dist/safe-bash/commands/network/public.js +2 -2
  218. package/dist/safe-bash/commands/network/transport.js +2 -2
  219. package/dist/safe-bash/commands/network/wget.d.ts +1 -1
  220. package/dist/safe-bash/commands/network/wget.js +1 -3
  221. package/dist/safe-bash/commands/node/filesystem.js +3 -2
  222. package/dist/safe-bash/commands/node/index.browser.js +8 -8
  223. package/dist/safe-bash/commands/node/types.js +1 -1
  224. package/dist/safe-bash/commands/op/index.browser.js +3 -3
  225. package/dist/safe-bash/commands/pr/index.browser.js +2 -2
  226. package/dist/safe-bash/commands/python/host-capabilities.js +31 -14
  227. package/dist/safe-bash/commands/python/index.browser.js +11 -11
  228. package/dist/safe-bash/commands/python/manifest.d.ts +1 -0
  229. package/dist/safe-bash/commands/python/manifest.js +6 -3
  230. package/dist/safe-bash/commands/python/shell-capability.d.ts +1 -0
  231. package/dist/safe-bash/commands/python/shell-capability.js +3 -2
  232. package/dist/safe-bash/commands/python/worker.browser.js +3 -3
  233. package/dist/safe-bash/commands/regex-execution/public.browser.js +8 -6
  234. package/dist/safe-bash/commands/safejs/runtime.js +16 -7
  235. package/dist/safe-bash/commands/split/index.browser.js +14 -0
  236. package/dist/safe-bash/commands/standard.d.ts +1 -0
  237. package/dist/safe-bash/commands/standard.js +2 -1
  238. package/dist/safe-bash/commands/stream-format/index.browser.js +11 -0
  239. package/dist/safe-bash/commands/stream-inspection/index.browser.js +11 -0
  240. package/dist/safe-bash/commands/streams.js +11 -29
  241. package/dist/safe-bash/commands/table-text/index.browser.js +11 -0
  242. package/dist/safe-bash/commands/text.js +269 -496
  243. package/dist/safe-bash/commands/time-env/index.browser.js +15 -0
  244. package/dist/safe-bash/commands/tree/index.browser.js +14 -0
  245. package/dist/safe-bash/commands/tsort/index.browser.js +2 -2
  246. package/dist/safe-bash/commands/xml/index.browser.js +2 -2
  247. package/dist/safe-bash/commands/yq/index.browser.js +2 -2
  248. package/dist/safe-bash/core.browser.js +1 -1
  249. package/dist/safe-bash/core.d.ts +6 -1
  250. package/dist/safe-bash/core.js +1 -1
  251. package/dist/safe-bash/full-core.browser.js +308 -295
  252. package/dist/safe-bash/jobs.browser.js +5 -5
  253. package/dist/safe-bash/opt-in/commands/dd/index.js +2 -0
  254. package/dist/safe-bash/opt-in/optional/commands/shuf/options.d.ts +1 -0
  255. package/dist/safe-bash/opt-in/optional/commands/shuf/options.js +2 -4
  256. package/dist/safe-bash/opt-in/optional/commands/shuf/shuf.js +2 -1
  257. package/dist/safe-bash/optional-host.browser.js +15 -15
  258. package/dist/safe-bash/plugins/composition.d.ts +1 -0
  259. package/dist/safe-bash/plugins/composition.js +3 -8
  260. package/dist/safe-bash/plugins/index.browser.js +41 -27
  261. package/dist/safe-bash/registry-entry.browser.js +42 -28
  262. package/dist/safe-bash/search.browser.js +48 -0
  263. package/dist/safe-bash/shell/arrays/bindings.js +1 -1
  264. package/dist/safe-bash/shell/arrays/state.js +4 -0
  265. package/dist/safe-bash/shell/brace-expansion.js +1 -1
  266. package/dist/safe-bash/shell/dynamic-variables.d.ts +10 -0
  267. package/dist/safe-bash/shell/dynamic-variables.js +25 -0
  268. package/dist/safe-bash/shell/parser.js +8 -1
  269. package/dist/safe-bash/shell/runtime.d.ts +4 -13
  270. package/dist/safe-bash/shell/runtime.js +334 -1049
  271. package/dist/safe-bash/shell/shell.js +2 -54
  272. package/dist/safe-bash/shell-entry.browser.js +35 -26
  273. package/dist/safe-bash/trap.browser.js +4 -4
  274. package/dist/safe-bash/yq-browser/index.js +1 -1
  275. package/dist/safe-bash-base-encoding-engine/base.js +2 -2
  276. package/dist/safe-bash-base-encoding-engine/shared.js +1 -1
  277. package/dist/safe-bash-byte-input-engine/index.d.ts +3 -2
  278. package/dist/safe-bash-byte-input-engine/index.js +4 -1
  279. package/dist/safe-bash-checksum-engine/index.js +13 -6
  280. package/dist/safe-bash-command-apply-patch/apply.d.ts +1 -1
  281. package/dist/safe-bash-command-apply-patch/apply.js +4 -3
  282. package/dist/safe-bash-command-apply-patch/index.js +3 -3
  283. package/dist/safe-bash-command-apply-patch/matcher.js +1 -1
  284. package/dist/safe-bash-command-apply-patch/parser.js +1 -1
  285. package/dist/safe-bash-command-awk/awk-inspection.js +2 -2
  286. package/dist/safe-bash-command-awk/awk-runtime.js +3 -3
  287. package/dist/safe-bash-command-awk/awk-syntax.d.ts +1 -1
  288. package/dist/safe-bash-command-awk/awk-syntax.js +2 -2
  289. package/dist/safe-bash-command-awk/awk-values.js +1 -1
  290. package/dist/safe-bash-command-awk/awk.js +5 -5
  291. package/dist/safe-bash-command-awk/index.js +5 -5
  292. package/dist/safe-bash-command-bc/index.d.ts +2 -0
  293. package/dist/safe-bash-command-bc/index.js +123 -92
  294. package/dist/safe-bash-command-column/column.js +5 -5
  295. package/dist/safe-bash-command-column/display.d.ts +1 -1
  296. package/dist/safe-bash-command-column/display.js +1 -1
  297. package/dist/safe-bash-command-column/index.js +5 -5
  298. package/dist/safe-bash-command-column/internal.d.ts +0 -2
  299. package/dist/safe-bash-command-column/internal.js +1 -1
  300. package/dist/safe-bash-command-column/layout.js +4 -4
  301. package/dist/safe-bash-command-column/table.js +2 -2
  302. package/dist/safe-bash-command-comm/comm.js +1 -1
  303. package/dist/safe-bash-command-comm/index.js +1 -1
  304. package/dist/safe-bash-command-csvcut/index.d.ts +1 -0
  305. package/dist/safe-bash-command-csvcut/index.js +1 -0
  306. package/dist/safe-bash-command-csvgrep/index.d.ts +1 -0
  307. package/dist/safe-bash-command-csvgrep/index.js +2 -2
  308. package/dist/safe-bash-command-csvkit/index.js +9 -9
  309. package/dist/safe-bash-command-csvkit/sync-support.js +1 -1
  310. package/dist/safe-bash-command-curl/curl.js +1 -1
  311. package/dist/safe-bash-command-curl/index.js +1 -1
  312. package/dist/safe-bash-command-dd/index.js +2 -0
  313. package/dist/safe-bash-command-diff/diff.js +1 -1
  314. package/dist/safe-bash-command-diff/index.js +1 -1
  315. package/dist/safe-bash-command-exiftool/index.d.ts +1 -0
  316. package/dist/safe-bash-command-fd/index.js +9 -9
  317. package/dist/safe-bash-command-ffmpeg/index.js +31 -8
  318. package/dist/safe-bash-command-file/index.js +1 -1
  319. package/dist/safe-bash-command-file/shared.js +1 -1
  320. package/dist/safe-bash-command-find/find.js +1 -1
  321. package/dist/safe-bash-command-find/index.js +1 -1
  322. package/dist/safe-bash-command-gzip/index.js +3 -2
  323. package/dist/safe-bash-command-hexdump/command.js +4 -4
  324. package/dist/safe-bash-command-hexdump/custom.d.ts +24 -0
  325. package/dist/safe-bash-command-hexdump/index.js +4 -4
  326. package/dist/safe-bash-command-hexdump/internal.d.ts +2 -0
  327. package/dist/safe-bash-command-hexdump/internal.js +1 -1
  328. package/dist/safe-bash-command-hexdump/io.js +2 -2
  329. package/dist/safe-bash-command-hexdump/options.d.ts +3 -0
  330. package/dist/safe-bash-command-hexdump/options.js +2 -2
  331. package/dist/safe-bash-command-hostname/index.js +1 -1
  332. package/dist/safe-bash-command-html-to-markdown/budget.js +1 -1
  333. package/dist/safe-bash-command-html-to-markdown/entities.js +3 -3
  334. package/dist/safe-bash-command-html-to-markdown/index.js +6 -6
  335. package/dist/safe-bash-command-html-to-markdown/input.js +5 -5
  336. package/dist/safe-bash-command-html-to-markdown/parser.d.ts +1 -0
  337. package/dist/safe-bash-command-html-to-markdown/parser.js +4 -4
  338. package/dist/safe-bash-command-html-to-markdown/render.js +5 -5
  339. package/dist/safe-bash-command-html-to-markdown/text.js +2 -2
  340. package/dist/safe-bash-command-htmlq/index.d.ts +1 -0
  341. package/dist/safe-bash-command-htmlq/index.js +27 -9
  342. package/dist/safe-bash-command-iconv/codec.js +1 -1
  343. package/dist/safe-bash-command-iconv/command.js +2 -2
  344. package/dist/safe-bash-command-iconv/index.js +2 -2
  345. package/dist/safe-bash-command-imagemagick/index.js +24 -6
  346. package/dist/safe-bash-command-join/index.js +1 -1
  347. package/dist/safe-bash-command-join/join.js +1 -1
  348. package/dist/safe-bash-command-jq/index.js +1 -1
  349. package/dist/safe-bash-command-jq/jq.js +1 -1
  350. package/dist/safe-bash-command-less/index.js +43 -28
  351. package/dist/safe-bash-command-mmdc/index.d.ts +1 -0
  352. package/dist/safe-bash-command-nl/index.js +1 -1
  353. package/dist/safe-bash-command-nl/nl.js +1 -1
  354. package/dist/safe-bash-command-numfmt/index.js +0 -11
  355. package/dist/safe-bash-command-od/index.js +101 -68
  356. package/dist/safe-bash-command-pandoc/command.js +1 -1
  357. package/dist/safe-bash-command-pandoc/index.js +1 -1
  358. package/dist/safe-bash-command-paste/index.js +1 -1
  359. package/dist/safe-bash-command-paste/paste.js +1 -1
  360. package/dist/safe-bash-command-pathchk/index.js +3 -13
  361. package/dist/safe-bash-command-pdfimages/index.js +27 -11
  362. package/dist/safe-bash-command-pdfinfo/index.js +19 -10
  363. package/dist/safe-bash-command-pdftk/index.js +3 -3
  364. package/dist/safe-bash-command-pdftoppm/index.js +26 -10
  365. package/dist/safe-bash-command-pdftotext/index.js +27 -13
  366. package/dist/safe-bash-command-qpdf/index.js +5 -5
  367. package/dist/safe-bash-command-rg/index.js +1 -1
  368. package/dist/safe-bash-command-rg/rg-command.d.ts +0 -1
  369. package/dist/safe-bash-command-rg/rg-command.js +3 -5
  370. package/dist/safe-bash-command-sed/index.js +1 -1
  371. package/dist/safe-bash-command-sed/sed.js +1 -1
  372. package/dist/safe-bash-command-shuf/options.d.ts +1 -0
  373. package/dist/safe-bash-command-shuf/options.js +2 -4
  374. package/dist/safe-bash-command-shuf/shuf.js +2 -1
  375. package/dist/safe-bash-command-soffice/index.js +20 -16
  376. package/dist/safe-bash-command-split/index.js +3 -3
  377. package/dist/safe-bash-command-split/io.js +1 -1
  378. package/dist/safe-bash-command-split/outputs.js +2 -2
  379. package/dist/safe-bash-command-split/split.js +3 -3
  380. package/dist/safe-bash-command-sqlite3/btree.d.ts +1 -0
  381. package/dist/safe-bash-command-sqlite3/engine.d.ts +6 -0
  382. package/dist/safe-bash-command-sqlite3/index.js +284 -85
  383. package/dist/safe-bash-command-ssconvert/commands.js +9 -9
  384. package/dist/safe-bash-command-ssconvert/core.js +8 -8
  385. package/dist/safe-bash-command-ssconvert/formats/csv.js +9 -9
  386. package/dist/safe-bash-command-ssconvert/formats/ods.js +8 -8
  387. package/dist/safe-bash-command-ssconvert/formats/spreadsheetml.js +2 -2
  388. package/dist/safe-bash-command-ssconvert/formats/xls.js +9 -9
  389. package/dist/safe-bash-command-ssconvert/formats/xlsx.js +8 -8
  390. package/dist/safe-bash-command-ssconvert/index.js +20 -20
  391. package/dist/safe-bash-command-tar/extract.js +1 -1
  392. package/dist/safe-bash-command-tar/index.js +5 -4
  393. package/dist/safe-bash-command-tar/modes.js +2 -2
  394. package/dist/safe-bash-command-tree/arguments.js +3 -3
  395. package/dist/safe-bash-command-tree/charset.js +1 -1
  396. package/dist/safe-bash-command-tree/index.js +4 -4
  397. package/dist/safe-bash-command-tree/io.js +1 -1
  398. package/dist/safe-bash-command-tree/pattern.js +2 -2
  399. package/dist/safe-bash-command-tree/tree.js +4 -4
  400. package/dist/safe-bash-command-unexpand/index.js +1 -1
  401. package/dist/safe-bash-command-unexpand/unexpand.js +1 -1
  402. package/dist/safe-bash-command-unrtf/index.js +14 -7
  403. package/dist/safe-bash-command-unzip/index.js +1 -1
  404. package/dist/safe-bash-command-unzip/unzip.js +1 -1
  405. package/dist/safe-bash-command-wget/index.js +1 -1
  406. package/dist/safe-bash-command-wget/wget.js +1 -1
  407. package/dist/safe-bash-command-xan/argv.d.ts +1 -1
  408. package/dist/safe-bash-command-xan/argv.js +1 -1
  409. package/dist/safe-bash-command-xan/commands.js +5 -3
  410. package/dist/safe-bash-command-xan/csv.d.ts +1 -1
  411. package/dist/safe-bash-command-xan/csv.js +1 -1
  412. package/dist/safe-bash-command-xan/index.js +7 -7
  413. package/dist/safe-bash-command-xan/io.js +3 -3
  414. package/dist/safe-bash-command-xmllint/index.js +1 -1
  415. package/dist/safe-bash-command-xxd/index.js +105 -91
  416. package/dist/safe-bash-command-xz/command.d.ts +2 -0
  417. package/dist/safe-bash-command-xz/index.d.ts +1 -1
  418. package/dist/safe-bash-command-xz/index.js +8 -0
  419. package/dist/safe-bash-command-yq/query.js +1 -1
  420. package/dist/safe-bash-command-zip/index.js +1 -1
  421. package/dist/safe-bash-command-zip/zip.js +1 -1
  422. package/dist/safe-bash-contracts/escaping.js +3 -3
  423. package/dist/safe-bash-contracts/filesystem-output.js +2 -2
  424. package/dist/safe-bash-contracts/index.d.ts +1 -0
  425. package/dist/safe-bash-contracts/index.js +7 -3
  426. package/dist/safe-bash-contracts/io.d.ts +4 -1
  427. package/dist/safe-bash-contracts/io.js +3 -1
  428. package/dist/safe-bash-contracts/managed-abort.d.ts +10 -0
  429. package/dist/safe-bash-contracts/output.js +2 -2
  430. package/dist/safe-bash-diff-engine/index.js +1 -1
  431. package/dist/safe-bash-diff-engine/shared.d.ts +3 -2
  432. package/dist/safe-bash-diff-engine/shared.js +1 -1
  433. package/dist/safe-bash-io-engine/commands/archive/internal.js +5 -23
  434. package/dist/safe-bash-io-engine/commands/search/requirements.js +2 -2
  435. package/dist/safe-bash-io-engine/commands/text-programs/shared.js +33 -44
  436. package/dist/safe-bash-io-engine/internal.js +1 -1
  437. package/dist/safe-bash-io-engine/shell/pattern.js +1 -1
  438. package/dist/safe-bash-io-engine/shell/string-operations.js +1 -1
  439. package/dist/safe-bash-mcp/index.browser.d.ts +155 -35
  440. package/dist/safe-bash-mcp/index.browser.js +416 -0
  441. package/dist/safe-bash-mcp/index.d.ts +54 -2
  442. package/dist/safe-bash-mcp/index.js +286 -90
  443. package/dist/safe-bash-network-engine/aggregate.js +2 -2
  444. package/dist/safe-bash-network-engine/args.js +4 -4
  445. package/dist/safe-bash-network-engine/authorizer.js +1 -1
  446. package/dist/safe-bash-network-engine/body.js +6 -6
  447. package/dist/safe-bash-network-engine/decode.d.ts +1 -1
  448. package/dist/safe-bash-network-engine/decode.js +3 -4
  449. package/dist/safe-bash-network-engine/fetch-transport.js +3 -3
  450. package/dist/safe-bash-network-engine/form-content-type.js +2 -2
  451. package/dist/safe-bash-network-engine/form-headers.js +2 -2
  452. package/dist/safe-bash-network-engine/glob.js +1 -1
  453. package/dist/safe-bash-network-engine/index.js +4 -4
  454. package/dist/safe-bash-network-engine/input.js +6 -6
  455. package/dist/safe-bash-network-engine/output.js +2 -2
  456. package/dist/safe-bash-network-engine/platform-portable.js +3 -3
  457. package/dist/safe-bash-network-engine/shared.js +2 -2
  458. package/dist/safe-bash-network-engine/types.d.ts +7 -2
  459. package/dist/safe-bash-network-engine/types.js +1 -1
  460. package/dist/safe-bash-network-engine/url.js +2 -2
  461. package/dist/safe-bash-query-engine/capture.js +3 -3
  462. package/dist/safe-bash-query-engine/delpaths.js +3 -3
  463. package/dist/safe-bash-query-engine/formats.js +2 -2
  464. package/dist/safe-bash-query-engine/index.js +11 -11
  465. package/dist/safe-bash-query-engine/indices.js +3 -3
  466. package/dist/safe-bash-query-engine/input.js +1 -1
  467. package/dist/safe-bash-query-engine/interpreter.js +9 -9
  468. package/dist/safe-bash-query-engine/parser.js +1 -1
  469. package/dist/safe-bash-query-engine/query-core.js +11 -11
  470. package/dist/safe-bash-query-engine/regex.js +4 -4
  471. package/dist/safe-bash-query-engine/splits.js +5 -5
  472. package/dist/safe-bash-query-engine/values.js +2 -2
  473. package/dist/safe-bash-regex-engine/ere/matcher.js +102 -30
  474. package/dist/safe-bash-regex-engine/execution/bounded-provider.js +55 -67
  475. package/dist/safe-bash-regex-engine/execution/portable.d.ts +0 -1
  476. package/dist/safe-bash-regex-engine/execution/portable.js +6 -10
  477. package/dist/safe-bash-regex-engine/execution/protocol.d.ts +0 -5
  478. package/dist/safe-bash-regex-engine/execution/protocol.js +1 -3
  479. package/dist/safe-bash-regex-engine/index.js +6 -4
  480. package/dist/safe-bash-regex-engine/text/budget.d.ts +1 -1
  481. package/dist/safe-bash-regex-engine/text/budget.js +1 -1
  482. package/dist/safe-bash-regex-engine/text/regex.d.ts +14 -0
  483. package/dist/safe-bash-regex-engine/text/regex.js +6 -4
  484. package/dist/safe-bash-regex-engine/text/replacement-buffer.js +2 -2
  485. package/dist/safe-bash-regex-engine/text/rust-syntax.js +2 -2
  486. package/dist/safe-bash-search-engine/grep.js +189 -227
  487. package/dist/safe-bash-table-text-engine/table-text/internal.d.ts +7 -5
  488. package/dist/safe-bash-table-text-engine/table-text/internal.js +39 -21
  489. package/dist/safe-playwright-cloudflare/browser-trace-budget.js +6 -2
  490. package/dist/spreadsheet-engine/codecs/odf-hyperlinks.js +8 -2
  491. package/dist/spreadsheet-engine/formulas/functions/captured-bessel-phase.js +2 -2
  492. package/dist/spreadsheet-engine/formulas/label-references.js +54 -33
  493. package/dist/spreadsheet-engine/formulas/parser.js +3 -1
  494. package/dist/spreadsheet-engine/formulas/rewriting.js +13 -3
  495. package/dist/spreadsheet-format-xls/biff-data-tables.js +4 -6
  496. package/dist/spreadsheet-format-xls/biff-formulas.js +3 -0
  497. package/dist/spreadsheet-format-xls/biff-label-ranges.js +9 -6
  498. package/dist/spreadsheet-format-xls/biff.js +1 -1
  499. package/dist/xlsx-ast/xlsx.js +8 -5
  500. package/package.json +68 -12
  501. package/dist/safe-bash/command-chunks/chunk-KAGBORIC.js +0 -88
  502. /package/dist/safe-bash/command-chunks/{chunk-BWNXWI33.js → chunk-2LMZVE3I.js} +0 -0
@@ -0,0 +1,14 @@
1
+ import {
2
+ createEgrepCommand,
3
+ createFgrepCommand,
4
+ createGrepAliasCommands,
5
+ grepAliasCommands
6
+ } from "../../chunks/chunk-RRR7AQ24.js";
7
+ import "../../chunks/chunk-E7OYNDGL.js";
8
+ import "../../chunks/chunk-B7TAL7S5.js";
9
+ export {
10
+ createGrepAliasCommands,
11
+ createEgrepCommand as egrepCommand,
12
+ createFgrepCommand as fgrepCommand,
13
+ grepAliasCommands
14
+ };
@@ -3,8 +3,8 @@ import {
3
3
  createHexdumpCommand,
4
4
  createHexdumpCommands,
5
5
  hexdumpCommands
6
- } from "../../chunks/chunk-M4CFCXHN.js";
7
- import "../../chunks/chunk-YG5WAHK7.js";
6
+ } from "../../chunks/chunk-CS4MNM6I.js";
7
+ import "../../chunks/chunk-B7TAL7S5.js";
8
8
  export {
9
9
  createHdCommand,
10
10
  createHexdumpCommand,
@@ -0,0 +1,16 @@
1
+ import {
2
+ createHtmlToMarkdownCommand,
3
+ createHtmlToMarkdownCommands,
4
+ evalSyncHtmlToMarkdown,
5
+ evalSyncShuf,
6
+ htmlToMarkdownCommands
7
+ } from "../../chunks/chunk-DQP3VHSB.js";
8
+ import "../../chunks/chunk-IWDICZVK.js";
9
+ import "../../chunks/chunk-B7TAL7S5.js";
10
+ export {
11
+ createHtmlToMarkdownCommand,
12
+ createHtmlToMarkdownCommands,
13
+ evalSyncHtmlToMarkdown,
14
+ evalSyncShuf,
15
+ htmlToMarkdownCommands
16
+ };
@@ -1,6 +1,6 @@
1
1
  import { HtmlError, detachHtmlNode, htmlText, htmlq, htmlqBaseline, htmlqBytes, inclusiveHtmlDescendants, parseHtml, parseHtmlSync, parseHtmlqArguments, selectHtml, serializeHtml, serializeHtmlBytes } from "../../../safe-bash-command-htmlq/index.js";
2
2
  export { selectHtml, parseHtmlqArguments, htmlqBytes, htmlq, parseHtml, parseHtmlSync, inclusiveHtmlDescendants, serializeHtml, serializeHtmlBytes, htmlText, detachHtmlNode, HtmlError, htmlqBaseline, };
3
- export type { HtmlqArguments, HtmlqCommandOptions, HtmlqCommandsOptions, HtmlqRunOptions, HtmlqResult, HtmlAccounting, HtmlOptions, HtmlLimits, HtmlNode, HtmlNamespace, HtmlAttribute, HtmlErrorCode, } from "../../../safe-bash-command-htmlq/index.js";
3
+ export type { HtmlqArguments, HtmlqCommandOptions, HtmlqCommandsOptions, HtmlqLimits, HtmlqRunOptions, HtmlqResult, HtmlAccounting, HtmlOptions, HtmlLimits, HtmlNode, HtmlNamespace, HtmlAttribute, HtmlErrorCode, } from "../../../safe-bash-command-htmlq/index.js";
4
4
  export { createHtmlqCommand, createHtmlqCommands, htmlqCommand, htmlqCommands } from "../../../safe-bash-command-htmlq/index.js";
5
5
  export declare function evalSyncHtmlq(inBytes: Uint8Array | undefined, opArgs: readonly string[], readFileSync?: (filePath: string) => Uint8Array | undefined, writeFileSync?: (filePath: string, bytes: Uint8Array) => boolean): string | undefined;
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -3,8 +3,8 @@ import {
3
3
  createIconvCommands,
4
4
  evalSyncIconv,
5
5
  iconvCommands
6
- } from "../../chunks/chunk-H6JW3E4F.js";
7
- import "../../chunks/chunk-YG5WAHK7.js";
6
+ } from "../../chunks/chunk-CTVWDACF.js";
7
+ import "../../chunks/chunk-B7TAL7S5.js";
8
8
  export {
9
9
  createIconvCommand,
10
10
  createIconvCommands,
@@ -6,8 +6,8 @@ import {
6
6
  dos2unixCommands,
7
7
  dos2unixCommands2,
8
8
  evalSyncLineEndings
9
- } from "../../chunks/chunk-4SEW2Q6H.js";
10
- import "../../chunks/chunk-YG5WAHK7.js";
9
+ } from "../../chunks/chunk-3R3AANOR.js";
10
+ import "../../chunks/chunk-B7TAL7S5.js";
11
11
  export {
12
12
  createDos2unixCommand,
13
13
  createDos2unixCommands,
@@ -22,8 +22,8 @@ import {
22
22
  templateYaml,
23
23
  validateLlmTemplateParameters,
24
24
  validateModelOptions
25
- } from "../../chunks/chunk-TFGRKY43.js";
26
- import "../../chunks/chunk-YG5WAHK7.js";
25
+ } from "../../chunks/chunk-OQRVVGR6.js";
26
+ import "../../chunks/chunk-B7TAL7S5.js";
27
27
  export {
28
28
  createElevenLabsProvider,
29
29
  createLlmCommand,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  init_platform
3
- } from "../../../chunks/chunk-YG5WAHK7.js";
3
+ } from "../../../chunks/chunk-B7TAL7S5.js";
4
4
 
5
5
  // packages/safe-bash/src/commands/llm/providers/index.ts
6
6
  init_platform();
@@ -7,9 +7,9 @@ import {
7
7
  mdqCommand,
8
8
  mdqCommands,
9
9
  parseMdqArguments
10
- } from "../../chunks/chunk-PPYM75Z3.js";
11
- import "../../chunks/chunk-NLAW7KDI.js";
12
- import "../../chunks/chunk-YG5WAHK7.js";
10
+ } from "../../chunks/chunk-OV6IHKO6.js";
11
+ import "../../chunks/chunk-E7OYNDGL.js";
12
+ import "../../chunks/chunk-B7TAL7S5.js";
13
13
  export {
14
14
  MdqError,
15
15
  createMdqCommand,
@@ -3,7 +3,7 @@ import {
3
3
  __commonJS,
4
4
  __toESM,
5
5
  init_platform
6
- } from "../../chunks/chunk-YG5WAHK7.js";
6
+ } from "../../chunks/chunk-B7TAL7S5.js";
7
7
 
8
8
  // node_modules/xmlchars/xml/1.0/ed5.js
9
9
  var require_ed5 = __commonJS({
@@ -0,0 +1,21 @@
1
+ import {
2
+ createMetadataCommands,
3
+ evalSyncMktemp,
4
+ evalSyncStat,
5
+ evalSyncTruncate,
6
+ metadataCommands
7
+ } from "../../chunks/chunk-VSAJ4OTM.js";
8
+ import "../../chunks/chunk-D3ANYGMC.js";
9
+ import "../../chunks/chunk-VTH3MLDU.js";
10
+ import "../../chunks/chunk-NZQXYWA3.js";
11
+ import "../../chunks/chunk-74GHTNJA.js";
12
+ import "../../chunks/chunk-E7OYNDGL.js";
13
+ import "../../chunks/chunk-IWDICZVK.js";
14
+ import "../../chunks/chunk-B7TAL7S5.js";
15
+ export {
16
+ createMetadataCommands,
17
+ evalSyncMktemp,
18
+ evalSyncStat,
19
+ evalSyncTruncate,
20
+ metadataCommands
21
+ };
@@ -1,4 +1,4 @@
1
1
  import type { NetworkCommandsOptions } from "./types.js";
2
2
  export * from "../../../safe-bash-command-curl/curl.js";
3
- export declare function createCurlCommand(options: NetworkCommandsOptions): import("../../../safe-bash-contracts/index.js").CommandDefinition;
3
+ export declare function createCurlCommand(options?: NetworkCommandsOptions): import("../../../safe-bash-contracts/index.js").CommandDefinition;
4
4
  //# sourceMappingURL=curl.d.ts.map
@@ -2,9 +2,7 @@ import { createCurlCommand as createPortableCommand } from "../../../safe-bash-c
2
2
  import { createDefaultHttpTransport, requiresFiniteUrlLimits } from "#safe-bash-network-platform";
3
3
  import { limitsFor } from "./shared.js";
4
4
  export * from "../../../safe-bash-command-curl/curl.js";
5
- export function createCurlCommand(options) {
6
- if (typeof options?.authorize !== "function")
7
- throw new TypeError("curl requires an explicit network authorizer");
5
+ export function createCurlCommand(options = {}) {
8
6
  const limits = limitsFor(options.limits);
9
7
  if (requiresFiniteUrlLimits && (!Number.isFinite(limits.maxUrls) || !Number.isFinite(limits.maxBufferBytes)))
10
8
  throw new TypeError("Portable network commands require finite maxUrls and maxBufferBytes limits");
@@ -12,10 +12,10 @@ import {
12
12
  evalSyncCurl,
13
13
  evalSyncWget,
14
14
  networkCommands
15
- } from "../../chunks/chunk-K2VCOJ2B.js";
16
- import "../../chunks/chunk-KV7PKOHV.js";
17
- import "../../chunks/chunk-NLAW7KDI.js";
18
- import "../../chunks/chunk-YG5WAHK7.js";
15
+ } from "../../chunks/chunk-K6VCD7IY.js";
16
+ import "../../chunks/chunk-E7OYNDGL.js";
17
+ import "../../chunks/chunk-IWDICZVK.js";
18
+ import "../../chunks/chunk-B7TAL7S5.js";
19
19
  export {
20
20
  CurlError,
21
21
  cloudflareWorkerNetworkLimits,
@@ -1,6 +1,2 @@
1
- export declare const requiresFiniteUrlLimits = true;
2
- export declare function createDefaultHttpTransport(): never;
3
- export declare function randomBytes(length: number): Uint8Array;
4
- export declare function validateHeaderName(name: string): void;
5
- export declare function validateHeaderValue(_name: string, value: string): void;
1
+ export * from "../../../safe-bash-network-engine/platform-portable.js";
6
2
  //# sourceMappingURL=platform-portable.d.ts.map
@@ -1,27 +1,2 @@
1
- export const requiresFiniteUrlLimits = true;
2
- export function createDefaultHttpTransport() {
3
- throw new TypeError("Portable network commands require an explicit HTTP transport; inject createFetchTransport() or a host transport");
4
- }
5
- export function randomBytes(length) {
6
- const bytes = new Uint8Array(length);
7
- globalThis.crypto.getRandomValues(bytes);
8
- return bytes;
9
- }
10
- export function validateHeaderName(name) {
11
- if (!name.length)
12
- throw new TypeError("Invalid HTTP header name");
13
- for (const character of name) {
14
- const code = character.charCodeAt(0);
15
- if (!(code >= 48 && code <= 57 || code >= 65 && code <= 90 || code >= 97 && code <= 122 || "!#$%&'*+-.^_`|~".includes(character))) {
16
- throw new TypeError("Invalid HTTP header name");
17
- }
18
- }
19
- }
20
- export function validateHeaderValue(_name, value) {
21
- for (const character of value) {
22
- const code = character.charCodeAt(0);
23
- if (code !== 9 && (code < 32 || code === 127 || code > 255))
24
- throw new TypeError("Invalid HTTP header value");
25
- }
26
- }
1
+ export * from "../../../safe-bash-network-engine/platform-portable.js";
27
2
  //# sourceMappingURL=platform-portable.js.map
@@ -6,8 +6,8 @@ export { createFetchTransport, type FetchTransportOptions } from "./fetch-transp
6
6
  export { createOriginAuthorizer, type OriginAllowlist, type OriginAuthorizerOptions } from "./authorizer.js";
7
7
  export { createCurlCommand } from "./curl.js";
8
8
  export { createWgetCommand } from "./wget.js";
9
- export declare function createNetworkCommands(options: NetworkCommandsOptions): readonly CommandDefinition[];
10
- export declare function networkCommands(options: NetworkCommandsOptions): VirtualShellPlugin;
9
+ export declare function createNetworkCommands(options?: NetworkCommandsOptions): readonly CommandDefinition[];
10
+ export declare function networkCommands(options?: NetworkCommandsOptions): VirtualShellPlugin;
11
11
  export declare const createCurlCommands: typeof createNetworkCommands;
12
12
  export declare const curlCommands: typeof networkCommands;
13
13
  export declare function evalSyncCurl(opArgs: readonly string[]): string | undefined;
@@ -7,10 +7,10 @@ export { createFetchTransport } from "./fetch-transport.js";
7
7
  export { createOriginAuthorizer } from "./authorizer.js";
8
8
  export { createCurlCommand } from "./curl.js";
9
9
  export { createWgetCommand } from "./wget.js";
10
- export function createNetworkCommands(options) {
10
+ export function createNetworkCommands(options = {}) {
11
11
  return [createCurlCommand(options), createWgetCommand(options)];
12
12
  }
13
- export function networkCommands(options) {
13
+ export function networkCommands(options = {}) {
14
14
  const definitions = createNetworkCommands(options);
15
15
  return {
16
16
  name: "network-commands",
@@ -102,12 +102,12 @@ export function createNodeHttpTransport(options = {}) {
102
102
  request = (url.protocol === "https:" ? httpsRequest : httpRequest)(url, {
103
103
  method: input.method,
104
104
  path: curlRequestTarget(input.url),
105
- headers: pinned && headers.host?.length === 1 ? { ...headers, host: headers.host[0] } : headers,
105
+ headers: headers.host?.length === 1 ? { ...headers, host: headers.host[0] } : headers,
106
106
  signal, maxHeaderSize: Number.isFinite(maxHeaderSize) ? maxHeaderSize : Number.MAX_SAFE_INTEGER, agent: false,
107
107
  ...(requestCa === undefined ? {} : { ca: requestCa }),
108
108
  ...(input.ca === undefined ? {} : { rejectUnauthorized: true }),
109
109
  ...pinned,
110
- ...(pinned && url.protocol === "https:" ? {
110
+ ...(url.protocol === "https:" ? {
111
111
  servername: isIP(hostname) ? "" : hostname,
112
112
  rejectUnauthorized: true,
113
113
  checkServerIdentity: (_servername, certificate) => checkServerIdentity(hostname, certificate),
@@ -1,4 +1,4 @@
1
1
  import type { NetworkCommandsOptions } from "./types.js";
2
2
  export * from "../../../safe-bash-command-wget/wget.js";
3
- export declare function createWgetCommand(options: NetworkCommandsOptions): import("../../../safe-bash-contracts/index.js").CommandDefinition;
3
+ export declare function createWgetCommand(options?: NetworkCommandsOptions): import("../../../safe-bash-contracts/index.js").CommandDefinition;
4
4
  //# sourceMappingURL=wget.d.ts.map
@@ -2,9 +2,7 @@ import { createWgetCommand as createPortableCommand } from "../../../safe-bash-c
2
2
  import { createDefaultHttpTransport, requiresFiniteUrlLimits } from "#safe-bash-network-platform";
3
3
  import { limitsFor } from "./shared.js";
4
4
  export * from "../../../safe-bash-command-wget/wget.js";
5
- export function createWgetCommand(options) {
6
- if (typeof options?.authorize !== "function")
7
- throw new TypeError("wget requires an explicit network authorizer");
5
+ export function createWgetCommand(options = {}) {
8
6
  const limits = limitsFor(options.limits);
9
7
  if (requiresFiniteUrlLimits && (!Number.isFinite(limits.maxUrls) || !Number.isFinite(limits.maxBufferBytes)))
10
8
  throw new TypeError("Portable network commands require finite maxUrls and maxBufferBytes limits");
@@ -1,4 +1,5 @@
1
1
  import { commandLimits } from "../safejs/options.js";
2
+ import { yieldTurn } from "../../../safe-bash-contracts/yield.js";
2
3
  import { SafeJsCommandLimitError } from "../safejs/types.js";
3
4
  export function nodeReadFile(options, fs, signal, fail, pending) {
4
5
  const read = fs.readFile;
@@ -21,11 +22,11 @@ export function nodeReadFile(options, fs, signal, fail, pending) {
21
22
  }
22
23
  const done = callback;
23
24
  const completion = Promise.resolve().then(() => read(path, encoding)).then(async (text) => {
24
- await new Promise(resolve => setImmediate(resolve));
25
+ await yieldTurn(signal);
25
26
  signal.throwIfAborted();
26
27
  return done(null, text);
27
28
  }, async (error) => {
28
- await new Promise(resolve => setImmediate(resolve));
29
+ await yieldTurn(signal);
29
30
  signal.throwIfAborted();
30
31
  return done(error);
31
32
  }).then(() => undefined).catch(fail).finally(() => pending.delete(completion));
@@ -2,14 +2,14 @@ import {
2
2
  createSafeJsNodeCommand,
3
3
  createSafeJsNodeCommands,
4
4
  safeJsNodeCommands
5
- } from "../../chunks/chunk-RKKRJ54E.js";
6
- import "../../chunks/chunk-TYD7EVUJ.js";
7
- import "../../chunks/chunk-BHJE5LPZ.js";
8
- import "../../chunks/chunk-VYZTG3GV.js";
9
- import "../../chunks/chunk-PYVEAFJM.js";
10
- import "../../chunks/chunk-KV7PKOHV.js";
11
- import "../../chunks/chunk-NLAW7KDI.js";
12
- import "../../chunks/chunk-YG5WAHK7.js";
5
+ } from "../../chunks/chunk-RSTHLAF3.js";
6
+ import "../../chunks/chunk-PH63PLPZ.js";
7
+ import "../../chunks/chunk-D3ANYGMC.js";
8
+ import "../../chunks/chunk-NZQXYWA3.js";
9
+ import "../../chunks/chunk-74GHTNJA.js";
10
+ import "../../chunks/chunk-E7OYNDGL.js";
11
+ import "../../chunks/chunk-IWDICZVK.js";
12
+ import "../../chunks/chunk-B7TAL7S5.js";
13
13
  export {
14
14
  createSafeJsNodeCommand as createNodeCommand,
15
15
  createSafeJsNodeCommands as createNodeCommands,
@@ -5,7 +5,7 @@ export function resolveNodeLimits(options = {}) {
5
5
  for (const [name, value] of Object.entries(options)) {
6
6
  if (name === "sabBytes" || !Object.hasOwn(nodeLimits, name))
7
7
  throw new TypeError(`Unknown Node limit: ${name}`);
8
- if (!Number.isSafeInteger(value) || value < 0 || ["admissionMs", "oldGenerationMiB", "youngGenerationMiB", "codeMiB", "stackMiB"].includes(name) && value < 1)
8
+ if (value !== Infinity && (!Number.isSafeInteger(value) || value < 0 || ["admissionMs", "oldGenerationMiB", "youngGenerationMiB", "codeMiB", "stackMiB"].includes(name) && value < 1))
9
9
  throw new RangeError(`Invalid Node limit: ${name}`);
10
10
  }
11
11
  return Object.freeze({ ...nodeLimits, ...options });
@@ -19,9 +19,9 @@ import {
19
19
  restoreEnvironment,
20
20
  selectOpBackendContext,
21
21
  selectOpGlobalFlags
22
- } from "../../chunks/chunk-I7L3G3NX.js";
23
- import "../../chunks/chunk-NLAW7KDI.js";
24
- import "../../chunks/chunk-YG5WAHK7.js";
22
+ } from "../../chunks/chunk-UE5KZDEK.js";
23
+ import "../../chunks/chunk-E7OYNDGL.js";
24
+ import "../../chunks/chunk-B7TAL7S5.js";
25
25
  export {
26
26
  captureEnvironment,
27
27
  createDocumentHandlers,
@@ -3,8 +3,8 @@ import {
3
3
  createPrCommands,
4
4
  evalSyncPr,
5
5
  prCommands
6
- } from "../../chunks/chunk-F3RV2F72.js";
7
- import "../../chunks/chunk-YG5WAHK7.js";
6
+ } from "../../chunks/chunk-CHYGPFVM.js";
7
+ import "../../chunks/chunk-B7TAL7S5.js";
8
8
  export {
9
9
  createPrCommand,
10
10
  createPrCommands,
@@ -22,6 +22,7 @@ export function createPythonHostBridge(capabilities, options) {
22
22
  const pending = new Set();
23
23
  const streams = new Map();
24
24
  const jobs = new Map();
25
+ const activeCalls = new Set();
25
26
  const cleanupFailures = [];
26
27
  const jobWork = new Set();
27
28
  let nextJob = 1;
@@ -93,16 +94,17 @@ export function createPythonHostBridge(capabilities, options) {
93
94
  const stream = streams.get(handle);
94
95
  if (!stream)
95
96
  throw new Error('Unknown Python host stream');
96
- streams.delete(handle);
97
- if (cancel)
98
- stream.controller.abort(new Error('Python host stream released'));
99
- try {
100
- await stream.iterator.return?.();
101
- }
102
- catch (error) {
103
- cleanupFailures.push(error);
104
- throw error;
97
+ if (!stream.closing) {
98
+ stream.closing = Promise.resolve().then(async () => {
99
+ if (cancel)
100
+ stream.controller.abort(new Error('Python host stream released'));
101
+ await stream.iterator.return?.();
102
+ // Retained iterators consume admission until cleanup succeeds, including
103
+ // when a host ignores cancellation or its cleanup fails.
104
+ streams.delete(handle);
105
+ }).catch(error => { cleanupFailures.push(error); throw error; });
105
106
  }
107
+ await stream.closing;
106
108
  };
107
109
  const pull = async (handle) => {
108
110
  const stream = streams.get(handle);
@@ -140,6 +142,7 @@ export function createPythonHostBridge(capabilities, options) {
140
142
  const payload = data(incoming);
141
143
  if (!payload || Array.isArray(payload) || typeof payload !== 'object' || payload.version !== 1)
142
144
  throw new TypeError('Unsupported Python host protocol');
145
+ let reservation;
143
146
  const operation = Promise.resolve().then(async () => {
144
147
  assertLive();
145
148
  if (payload.operation === 'poll' || payload.operation === 'cancel') {
@@ -151,23 +154,29 @@ export function createPythonHostBridge(capabilities, options) {
151
154
  throw new Error('Unknown Python host job');
152
155
  if (payload.operation === 'cancel') {
153
156
  jobs.delete(handle);
157
+ if (job.settled)
158
+ activeCalls.delete(job.reservation);
154
159
  job.controller.abort(new Error('Python guest cancelled host operation'));
155
160
  return null;
156
161
  }
157
162
  if (job.result === undefined && !job.failed)
158
163
  return { done: false };
159
164
  jobs.delete(handle);
165
+ if (job.settled)
166
+ activeCalls.delete(job.reservation);
160
167
  return job.failed ? { done: true, error: 'Python host operation failed', errorCode: job.failed } : { done: true, value: job.result };
161
168
  }
162
- if (Math.max(jobWork.size, jobs.size) >= maxConcurrentCalls)
169
+ if (activeCalls.size >= maxConcurrentCalls)
163
170
  throw new Error('Python host call concurrency limit exceeded');
171
+ reservation = {};
172
+ activeCalls.add(reservation);
164
173
  if (payload.operation === 'begin' || payload.operation === 'begin-next') {
165
174
  let work;
166
175
  let child;
167
176
  let reservedStream;
168
177
  if (payload.operation === 'begin-next') {
169
178
  const stream = typeof payload.handle === 'number' ? streams.get(payload.handle) : undefined;
170
- if (!stream || stream.busy)
179
+ if (!stream || stream.busy || stream.closing)
171
180
  throw new Error('Unknown or busy Python host stream');
172
181
  reservedStream = stream;
173
182
  stream.busy = true;
@@ -182,8 +191,10 @@ export function createPythonHostBridge(capabilities, options) {
182
191
  work = childSignal => capability.call(payload.value ?? null, { signal: childSignal });
183
192
  }
184
193
  const handle = nextJob++;
185
- const job = { controller: child };
194
+ const job = { controller: child, reservation, settled: false };
186
195
  jobs.set(handle, job);
196
+ // Transfer admission to the job until both host work and guest ownership end.
197
+ reservation = undefined;
187
198
  const task = Promise.resolve().then(() => {
188
199
  const childSignal = AbortSignal.any([signal, child.signal]);
189
200
  childSignal.throwIfAborted();
@@ -193,6 +204,9 @@ export function createPythonHostBridge(capabilities, options) {
193
204
  child.signal.throwIfAborted();
194
205
  job.result = data(value);
195
206
  }).catch(error => { job.failed = pythonHostFailureCode(error); }).finally(() => {
207
+ job.settled = true;
208
+ if (!jobs.has(handle))
209
+ activeCalls.delete(job.reservation);
196
210
  if (reservedStream)
197
211
  reservedStream.busy = false;
198
212
  jobWork.delete(task);
@@ -207,8 +221,8 @@ export function createPythonHostBridge(capabilities, options) {
207
221
  const stream = streams.get(handle);
208
222
  if (!stream)
209
223
  throw new Error('Unknown Python host stream');
210
- if (stream.busy)
211
- throw new Error('Python host stream already pulling');
224
+ if (stream.busy || stream.closing)
225
+ throw new Error('Python host stream already pulling or closing');
212
226
  if (payload.operation === 'release') {
213
227
  await release(handle);
214
228
  return null;
@@ -248,6 +262,8 @@ export function createPythonHostBridge(capabilities, options) {
248
262
  }
249
263
  finally {
250
264
  pending.delete(operation);
265
+ if (reservation)
266
+ activeCalls.delete(reservation);
251
267
  }
252
268
  };
253
269
  const close = () => {
@@ -260,6 +276,7 @@ export function createPythonHostBridge(capabilities, options) {
260
276
  job.controller.abort(controller.signal.reason);
261
277
  await Promise.allSettled([...pending, ...jobWork]);
262
278
  jobs.clear();
279
+ activeCalls.clear();
263
280
  const results = await Promise.allSettled([...streams.keys()].map(handle => release(handle)));
264
281
  registry.clear();
265
282
  for (const result of results)
@@ -16,20 +16,20 @@ import {
16
16
  pythonCommands,
17
17
  pythonDocumentPackages,
18
18
  pythonHostFailureCode
19
- } from "../../chunks/chunk-JTLSUJ7V.js";
20
- import "../../chunks/chunk-KCVSVD65.js";
21
- import "../../chunks/chunk-JJSTTIEZ.js";
22
- import "../../chunks/chunk-46UISJCK.js";
23
- import "../../chunks/chunk-VYZTG3GV.js";
24
- import "../../chunks/chunk-PYVEAFJM.js";
25
- import "../../chunks/chunk-LQHGH25W.js";
19
+ } from "../../chunks/chunk-WDLGKIHD.js";
20
+ import "../../chunks/chunk-HZAMGT5I.js";
26
21
  import {
27
22
  PythonFailure,
28
23
  inspectPythonCapabilities
29
- } from "../../chunks/chunk-63FXVDGF.js";
30
- import "../../chunks/chunk-KV7PKOHV.js";
31
- import "../../chunks/chunk-NLAW7KDI.js";
32
- import "../../chunks/chunk-YG5WAHK7.js";
24
+ } from "../../chunks/chunk-LVOBFF4D.js";
25
+ import "../../chunks/chunk-I5HZ4FGE.js";
26
+ import "../../chunks/chunk-7R5BDCG7.js";
27
+ import "../../chunks/chunk-VTH3MLDU.js";
28
+ import "../../chunks/chunk-NZQXYWA3.js";
29
+ import "../../chunks/chunk-74GHTNJA.js";
30
+ import "../../chunks/chunk-E7OYNDGL.js";
31
+ import "../../chunks/chunk-IWDICZVK.js";
32
+ import "../../chunks/chunk-B7TAL7S5.js";
33
33
  export {
34
34
  PythonFailure,
35
35
  PythonPackageConflictError,
@@ -18,6 +18,7 @@ export declare class PythonPackageConflictError extends Error {
18
18
  export declare function createPythonPackageManifestStore(options?: {
19
19
  readonly maxBytes?: number;
20
20
  readonly maxEntries?: number;
21
+ readonly maxScopeLength?: number;
21
22
  }): PythonPackageManifestStore & {
22
23
  dispose(): void;
23
24
  };
@@ -9,14 +9,15 @@ export class PythonPackageConflictError extends Error {
9
9
  export function createPythonPackageManifestStore(options = {}) {
10
10
  const maxBytes = options.maxBytes ?? Infinity;
11
11
  const maxEntries = options.maxEntries ?? Infinity;
12
- for (const [name, value] of Object.entries({ maxBytes, maxEntries })) {
12
+ const maxScopeLength = options.maxScopeLength ?? Infinity;
13
+ for (const [name, value] of Object.entries({ maxBytes, maxEntries, maxScopeLength })) {
13
14
  if (value !== Infinity && (!Number.isSafeInteger(value) || value < 1)) {
14
15
  throw new RangeError(`Python manifest ${name} must be a positive safe integer or Infinity`);
15
16
  }
16
17
  }
17
18
  const manifests = new Map();
18
19
  let retainedBytes = 0;
19
- let revision = 0;
20
+ let revision = 0n;
20
21
  let disposed = false;
21
22
  const check = (scope, signal) => {
22
23
  signal.throwIfAborted();
@@ -24,6 +25,8 @@ export function createPythonPackageManifestStore(options = {}) {
24
25
  throw new Error('Python manifest store is disposed');
25
26
  if (typeof scope !== 'string' || !scope)
26
27
  throw new TypeError('Invalid Python manifest scope');
28
+ if (scope.length > maxScopeLength)
29
+ throw new RangeError('Python manifest scope budget exhausted');
27
30
  };
28
31
  return {
29
32
  async get(scope, { signal }) {
@@ -39,7 +42,7 @@ export function createPythonPackageManifestStore(options = {}) {
39
42
  if (!(bytes instanceof Uint8Array))
40
43
  throw new TypeError('Python manifest must contain bytes');
41
44
  const nextBytes = retainedBytes - (current?.bytes.length ?? 0) + bytes.length;
42
- if (nextBytes > maxBytes || (!current && manifests.size >= maxEntries) || revision >= Number.MAX_SAFE_INTEGER) {
45
+ if (nextBytes > maxBytes || (!current && manifests.size >= maxEntries)) {
43
46
  throw new RangeError('Python manifest store budget exhausted');
44
47
  }
45
48
  manifests.set(scope, { revision: String(++revision), bytes: Uint8Array.from(bytes) });
@@ -5,6 +5,7 @@ export declare function pythonShellDispatchActive(scope: object | undefined): bo
5
5
  export declare function createPythonShellCapability(context: CommandContext, options?: {
6
6
  readonly maxInputBytes?: number;
7
7
  readonly maxOutputBytes?: number;
8
+ readonly maxBufferedOutputBytes?: number;
8
9
  readonly maxConcurrentCalls?: number;
9
10
  readonly maxStreamChunkBytes?: number;
10
11
  }): PythonHostCapability;
@@ -8,8 +8,9 @@ export function createPythonShellCapability(context, options = {}) {
8
8
  throw new TypeError('Python shell capability requires a parent shell invocation');
9
9
  const maxInputBytes = options.maxInputBytes ?? Infinity;
10
10
  const maxOutputBytes = options.maxOutputBytes ?? Infinity;
11
+ const maxBufferedOutputBytes = options.maxBufferedOutputBytes ?? Infinity;
11
12
  const maxConcurrentCalls = options.maxConcurrentCalls ?? Infinity;
12
- for (const limit of [maxInputBytes, maxOutputBytes, maxConcurrentCalls])
13
+ for (const limit of [maxInputBytes, maxOutputBytes, maxBufferedOutputBytes, maxConcurrentCalls])
13
14
  if (limit !== Infinity && (!Number.isSafeInteger(limit) || limit < 1))
14
15
  throw new RangeError('Invalid Python shell limit');
15
16
  const chunkBytes = options.maxStreamChunkBytes ?? 16384;
@@ -28,7 +29,7 @@ export function createPythonShellCapability(context, options = {}) {
28
29
  const requestedOutput = request.maxOutputBytes;
29
30
  if (requestedOutput !== undefined && (typeof requestedOutput !== 'number' || requestedOutput !== Infinity && (!Number.isSafeInteger(requestedOutput) || requestedOutput < 0)))
30
31
  throw new RangeError('Invalid Python shell output limit');
31
- const outputLimit = Math.min(maxOutputBytes, typeof requestedOutput === 'number' ? requestedOutput : maxOutputBytes);
32
+ const outputLimit = Math.min(maxOutputBytes, publish ? Infinity : maxBufferedOutputBytes, typeof requestedOutput === 'number' ? requestedOutput : Infinity);
32
33
  const timeoutMs = request.timeoutMs;
33
34
  if (timeoutMs !== undefined && (typeof timeoutMs !== 'number' || !Number.isSafeInteger(timeoutMs) || timeoutMs < 1 || timeoutMs > 2147483647))
34
35
  throw new RangeError('Invalid Python shell timeout');
@@ -8,11 +8,11 @@ import {
8
8
  pythonRuntimeRelocation,
9
9
  pythonStatProjection,
10
10
  pythonTreeCleanup
11
- } from "../../chunks/chunk-63FXVDGF.js";
12
- import "../../chunks/chunk-KV7PKOHV.js";
11
+ } from "../../chunks/chunk-LVOBFF4D.js";
12
+ import "../../chunks/chunk-IWDICZVK.js";
13
13
  import {
14
14
  init_platform
15
- } from "../../chunks/chunk-YG5WAHK7.js";
15
+ } from "../../chunks/chunk-B7TAL7S5.js";
16
16
 
17
17
  // packages/safe-bash/src/commands/python/worker.ts
18
18
  init_platform();