0sec-cli 0.24.1 → 0.26.0

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 (246) hide show
  1. package/0.js +67 -62
  2. package/README.md +121 -82
  3. package/chunks/{adapt-loop-L77BWMNE.js → adapt-loop-P4HKONB5.js} +6 -5
  4. package/chunks/{artifact-scraper-BV67RAP5.js → artifact-scraper-IIRJNYKT.js} +4 -3
  5. package/chunks/{assumption-mining-RPVR77A3.js → assumption-mining-YA6VJ2V6.js} +22 -20
  6. package/chunks/{backend-connections-ACIXNYZN.js → backend-connections-64PKYKL7.js} +5 -4
  7. package/chunks/chunk-36J5ZLFE.js +18729 -0
  8. package/chunks/{chunk-ZM6ANQZJ.js → chunk-3MWQNNJU.js} +16180 -34467
  9. package/chunks/{chunk-GV5WXDHY.js → chunk-3VQ5EZKG.js} +11 -9
  10. package/chunks/chunk-5XOYTAOK.js +1546 -0
  11. package/chunks/{chunk-UJE4WOQS.js → chunk-6GV5G6U3.js} +1 -1
  12. package/chunks/{chunk-X2ZMSRTP.js → chunk-6SNOKNCS.js} +333 -3
  13. package/chunks/{chunk-BMDG6T7D.js → chunk-72PU46MS.js} +178 -133
  14. package/chunks/{chunk-KCA35IL3.js → chunk-7PUJI64A.js} +11 -9
  15. package/chunks/chunk-A7G6S5RA.js +90 -0
  16. package/chunks/chunk-ABKUI3QB.js +196 -0
  17. package/chunks/{chunk-5ETI27Q3.js → chunk-AFJ2UMPR.js} +3 -3
  18. package/chunks/{chunk-XA2IBHPB.js → chunk-B7XL6RON.js} +1 -1
  19. package/chunks/{chunk-TVS6WVSK.js → chunk-BM6EYP2D.js} +3 -3
  20. package/chunks/{chunk-7UHAXEOV.js → chunk-D4M5WURF.js} +226 -4
  21. package/chunks/{chunk-K74DRDC5.js → chunk-EHNVP6QB.js} +1 -1
  22. package/chunks/{chunk-I43YYHDU.js → chunk-FBZBJYZS.js} +5 -50
  23. package/chunks/{chunk-GXXX7AGH.js → chunk-GYEYTNHK.js} +144 -14
  24. package/chunks/{chunk-IJ6UPW3H.js → chunk-HS2NQ7K6.js} +393 -58
  25. package/chunks/chunk-HUZ2EC2R.js +196 -0
  26. package/chunks/{chunk-SU4IHQQI.js → chunk-IUUNIJPM.js} +1 -1
  27. package/chunks/chunk-JGDA6EIJ.js +49 -0
  28. package/chunks/{chunk-CJRZSWII.js → chunk-K3PTYN43.js} +3 -3
  29. package/chunks/{chunk-2NBZZFRG.js → chunk-KCABBZHN.js} +8 -10
  30. package/chunks/{chunk-3LPBJMHB.js → chunk-LRD5N2TQ.js} +1 -1
  31. package/chunks/{chunk-SQCBHFWN.js → chunk-LWMEJYCP.js} +2 -2
  32. package/chunks/chunk-MNK373HF.js +57 -0
  33. package/chunks/{chunk-R2XBH476.js → chunk-MOEVVXML.js} +2 -2
  34. package/chunks/{chunk-F2P25DJY.js → chunk-MOGWEHSC.js} +1448 -1050
  35. package/chunks/{chunk-6XMFCVJS.js → chunk-N7YCONYR.js} +1 -1
  36. package/chunks/{chunk-3WUPCZGF.js → chunk-NA3FKCI2.js} +1 -1
  37. package/chunks/{chunk-S2GITRD5.js → chunk-NABVDAAO.js} +2 -2
  38. package/chunks/{chunk-SZDD77KX.js → chunk-NNMOTHKC.js} +6 -10
  39. package/chunks/{chunk-LMP2T4G2.js → chunk-OILVEROI.js} +22 -172
  40. package/chunks/{chunk-YERUDEXT.js → chunk-PAE7ZAV6.js} +2780 -1255
  41. package/chunks/{chunk-NBV4I237.js → chunk-PAMJEXE2.js} +1 -1
  42. package/chunks/{chunk-PJU24AKR.js → chunk-R7VWEY45.js} +337 -257
  43. package/chunks/{chunk-QNRYOJEB.js → chunk-RZZ6VPRY.js} +1 -1
  44. package/chunks/{chunk-WUPN3D37.js → chunk-S4DFH2FJ.js} +26 -1
  45. package/chunks/{chunk-5WAHHZBF.js → chunk-SIR7XW2S.js} +61910 -30777
  46. package/chunks/{chunk-BD7WULFS.js → chunk-SSPP64FF.js} +3 -2
  47. package/chunks/{chunk-BOBIAHKA.js → chunk-STPHTPSD.js} +3 -333
  48. package/chunks/{chunk-Q7JKIKKF.js → chunk-UGCTPKJG.js} +89 -17
  49. package/chunks/{chunk-5PFRE522.js → chunk-ULRLUXSS.js} +1 -1
  50. package/chunks/{chunk-GZA7RGK7.js → chunk-UQS7XCBV.js} +2085 -1093
  51. package/chunks/{chunk-X2IPO5JO.js → chunk-V2KJQVYE.js} +2676 -2959
  52. package/chunks/{chunk-CGBDEST2.js → chunk-VJBEB2K6.js} +1 -1
  53. package/chunks/{chunk-ILRMLA6J.js → chunk-VWE36MUN.js} +1 -1
  54. package/chunks/{chunk-RURJYCWY.js → chunk-WNWDQ2TO.js} +1 -1
  55. package/chunks/{chunk-GTED3FSZ.js → chunk-WPJMA5AK.js} +4 -99
  56. package/chunks/{chunk-5NFIY2SJ.js → chunk-XJ2TBEV7.js} +3 -3
  57. package/chunks/{chunk-PVJUPIQG.js → chunk-XOVYV7TT.js} +6 -6
  58. package/chunks/{chunk-IXT64DV5.js → chunk-XPDJE537.js} +97 -1
  59. package/chunks/{chunk-YKWARO3T.js → chunk-YGYJ2FTH.js} +95 -21
  60. package/chunks/{chunk-JWSOUKFF.js → chunk-YJGPPPUB.js} +66 -21
  61. package/chunks/chunk-YP2DHYNI.js +650 -0
  62. package/chunks/{chunk-RVJVM5L4.js → chunk-Z2VLJEQJ.js} +5 -5
  63. package/chunks/chunk-ZPVSDB63.js +3839 -0
  64. package/chunks/{codex-models-6XVNFRXZ.js → codex-models-CI22KIHY.js} +9 -8
  65. package/chunks/{commands-FRPOFIO4.js → commands-C2WRSCNB.js} +909 -610
  66. package/chunks/dashboard-XO2X2SPD.js +75 -0
  67. package/chunks/{db-BXJNWUYJ.js → db-FU3OIGQK.js} +5 -4
  68. package/chunks/{deep-review-GSJEBLCG.js → deep-review-5AL6QYTK.js} +37 -38
  69. package/chunks/{disclose-OU6Z6GVT.js → disclose-YPV5KIUU.js} +6 -5
  70. package/chunks/{dist-M2X367VW.js → dist-JAZWL3SC.js} +3 -2
  71. package/chunks/{dist-TQMHMSBZ.js → dist-ONIRKDH6.js} +376 -333
  72. package/chunks/{dist-RKLQIXDT.js → dist-QLMPTFT7.js} +4 -3
  73. package/chunks/{dist-7KSYDDSG.js → dist-QXJKD743.js} +5 -2
  74. package/chunks/{dist-LNXGATR2.js → dist-WNAOCQGA.js} +5 -4
  75. package/chunks/eval-runner-D3RUCU3R.js +38 -0
  76. package/chunks/{exploit-agent-Y2P4GFIY.js → exploit-agent-4E4HXKUA.js} +1 -1
  77. package/chunks/{exploit-autoclimb-YRZ3TMS2.js → exploit-autoclimb-5GRXI6VQ.js} +1 -1
  78. package/chunks/{exploit-climb-4LEY4SDW.js → exploit-climb-AHQEJ2I2.js} +4 -3
  79. package/chunks/{fix-RQSIG75B.js → fix-CHD7LXDS.js} +9 -8
  80. package/chunks/{harness-3NVC3DDY.js → harness-E63KDHPG.js} +5 -4
  81. package/chunks/{http-conformance-U5F6GKYG.js → http-conformance-AXMUOE6C.js} +3 -2
  82. package/chunks/hunt-scan-ME2Z4CTC.js +43 -0
  83. package/chunks/{kernel-primitive-T47V3RD3.js → kernel-primitive-S566GXWP.js} +4 -3
  84. package/chunks/{kernel-vm-runner-AEL5E3SV.js → kernel-vm-runner-KREBY4DC.js} +4 -3
  85. package/chunks/{local-engine-ZCW4YC6E.js → local-engine-ZRTZVSSX.js} +7 -6
  86. package/chunks/managed-operation-ZMLLRCCQ.js +59 -0
  87. package/chunks/{memsafety-scan-L2Z7E7TE.js → memsafety-scan-Q2MBZEGJ.js} +1 -2
  88. package/chunks/{native-loop-26X2CHBV.js → native-loop-UV3Z4Z2F.js} +31 -16
  89. package/chunks/operator-services-JOCREEBA.js +79 -0
  90. package/chunks/orchestrate-ZF6ZTSIQ.js +62 -0
  91. package/chunks/{prepare-C3KGMBXT.js → prepare-PLDVGLDX.js} +7 -6
  92. package/chunks/{provider-model-discovery-QGUGL3XW.js → provider-model-discovery-3X6DON3Y.js} +7 -2
  93. package/chunks/{remote-workflow-runtime-DB52SINR.js → remote-workflow-runtime-GOI4TYP5.js} +4 -3
  94. package/chunks/routing-WCQLO5SP.js +61 -0
  95. package/chunks/{runtime-AUBLQUOH.js → runtime-6ZIXFTW5.js} +4 -3
  96. package/chunks/{runtime-U66JNSAY.js → runtime-TVH5ORUK.js} +13 -8
  97. package/chunks/{scan-stream-34F3LTPV.js → scan-stream-HJVTWZ44.js} +6 -4
  98. package/chunks/{scope-HSTG63TQ.js → scope-RCYXVGJR.js} +4 -3
  99. package/chunks/service-plugins-TN6KDX4L.js +63 -0
  100. package/chunks/{session-store-MKAAP3WL.js → session-store-6QR3CVUA.js} +8 -5
  101. package/chunks/{variant-candidates-LG767HWH.js → variant-candidates-SGLKPPHI.js} +9 -8
  102. package/chunks/{web-recon-prepass-NJP6J3E4.js → web-recon-prepass-GO7CTMVQ.js} +7 -6
  103. package/chunks/{workflow-runtime-AR627I26.js → workflow-runtime-CQTDASFA.js} +50 -49
  104. package/dashboard/assets/{abnfDiagram-VCTEODGH-Cq149Jpk.js → abnfDiagram-VCTEODGH-DDZsU70-.js} +1 -1
  105. package/dashboard/assets/{arc-CpP-3TRW.js → arc-iDXNTSL6.js} +1 -1
  106. package/dashboard/assets/architecture-7GRP2DOG-DJcY9RFg.js +1 -0
  107. package/dashboard/assets/architectureDiagram-5GKGNRK7-d0ZuOniQ.js +36 -0
  108. package/dashboard/assets/{blockDiagram-I7D4REHJ-CZYkRRDi.js → blockDiagram-I7D4REHJ-B-EWfMy1.js} +2 -2
  109. package/dashboard/assets/{c4Diagram-7LVT6UL2-CV7Iu3_Z.js → c4Diagram-7LVT6UL2-KcZRuXZC.js} +1 -1
  110. package/dashboard/assets/channel-CeWMIm0w.js +1 -0
  111. package/dashboard/assets/{chunk-4HAMMTFA-PKCyW4m-.js → chunk-4HAMMTFA-DXWulBlo.js} +1 -1
  112. package/dashboard/assets/{chunk-75Z2AOVW-C5MlFTc_.js → chunk-75Z2AOVW-RiLZItrz.js} +1 -1
  113. package/dashboard/assets/chunk-DU6HZSFF-MBcaIyTX.js +127 -0
  114. package/dashboard/assets/{chunk-F27PBJKO-DTAok0qM.js → chunk-F27PBJKO-kLWCBX_W.js} +1 -1
  115. package/dashboard/assets/{chunk-FOHPRMQF-DHwB1DNv.js → chunk-FOHPRMQF-COOliuUh.js} +14 -14
  116. package/dashboard/assets/{chunk-GMAD6QVW-CPsr2F33.js → chunk-GMAD6QVW-BeQeSjpW.js} +7 -7
  117. package/dashboard/assets/{chunk-GVQU2GXP-C2AXGf9A.js → chunk-GVQU2GXP-CjCMlOIB.js} +1 -1
  118. package/dashboard/assets/{chunk-IMKFNOWR-DMG6yD_O.js → chunk-IMKFNOWR-BwNst53D.js} +1 -1
  119. package/dashboard/assets/{chunk-L3NEJ4N5-BSvwdbXx.js → chunk-L3NEJ4N5-CHXWQrkL.js} +1 -1
  120. package/dashboard/assets/{chunk-OSK3NFVY-CfB8V7FU.js → chunk-OSK3NFVY-B2vd19Ed.js} +1 -1
  121. package/dashboard/assets/{chunk-P2QGCYS3-CvmZvq6n.js → chunk-P2QGCYS3-Dk7Fyh6n.js} +1 -1
  122. package/dashboard/assets/{chunk-POPQ4Y6H-D_TvwDxL.js → chunk-POPQ4Y6H-CPAgOvYe.js} +1 -1
  123. package/dashboard/assets/{chunk-PWAF6VOD-Da5GnuOY.js → chunk-PWAF6VOD-BotyfMha.js} +1 -1
  124. package/dashboard/assets/{chunk-SHT3W25Y-CcsMJpR-.js → chunk-SHT3W25Y-Buz5gLRP.js} +1 -1
  125. package/dashboard/assets/{chunk-SVP7TREG-COojjieJ.js → chunk-SVP7TREG-_rpYEZcs.js} +1 -1
  126. package/dashboard/assets/{chunk-TICWLB2K-nBAmJwx6.js → chunk-TICWLB2K-DOJxPoec.js} +2 -2
  127. package/dashboard/assets/{chunk-XXDRQBXY-r5HyhWDv.js → chunk-XXDRQBXY-EXxKJbAs.js} +1 -1
  128. package/dashboard/assets/classDiagram-ZZMXUADV-DV_h1NoS.js +1 -0
  129. package/dashboard/assets/classDiagram-v2-VYDZK3BY-DV_h1NoS.js +1 -0
  130. package/dashboard/assets/common-VLJRx-Jq.js +5 -0
  131. package/dashboard/assets/cose-bilkent-JH36ORCC-B1SVC57o.js +1 -0
  132. package/dashboard/assets/cynefin-OW5HDTMX-BzhRorj4.js +1 -0
  133. package/dashboard/assets/{cynefinDiagram-5FMLGOSQ-xodkuQtW.js → cynefinDiagram-5FMLGOSQ-JXzRmldX.js} +1 -1
  134. package/dashboard/assets/cytoscape.esm-BbBREfsg.js +321 -0
  135. package/dashboard/assets/dagre-D7JM2Yhv.js +1 -0
  136. package/dashboard/assets/dagre-GXQ25YYZ-1LZ-X0-Z.js +4 -0
  137. package/dashboard/assets/{diagram-S7CK7UJ4-DNoTMlCO.js → diagram-S7CK7UJ4-C_-J_LQ4.js} +2 -2
  138. package/dashboard/assets/{diagram-UQ7AKVKN-COccuyew.js → diagram-UQ7AKVKN-CnxL1k8g.js} +1 -1
  139. package/dashboard/assets/{diagram-VSXAHHWV-g6D1tWRb.js → diagram-VSXAHHWV-WzSb3aby.js} +1 -1
  140. package/dashboard/assets/{diagram-VX7I27RA-DhO4eVIC.js → diagram-VX7I27RA-DKhrMInE.js} +1 -1
  141. package/dashboard/assets/{diagram-Z3DM3KII-DeOQFexd.js → diagram-Z3DM3KII-CDhI2WGP.js} +1 -1
  142. package/dashboard/assets/{dist-BQYeOQg3.js → dist-B0bfBMeP.js} +1 -1
  143. package/dashboard/assets/{ebnfDiagram-PWID7BFC-MtkX2feM.js → ebnfDiagram-PWID7BFC-iL5NQ1PE.js} +1 -1
  144. package/dashboard/assets/{erDiagram-RLTQ6QDP-DIWSsoYZ.js → erDiagram-RLTQ6QDP-RK2Voa5O.js} +1 -1
  145. package/dashboard/assets/eventmodeling-NTZA5JFV-WgE7OJBb.js +1 -0
  146. package/dashboard/assets/flowDiagram-HODETNUW-B9YcQ0Aq.js +1 -0
  147. package/dashboard/assets/{ganttDiagram-EL5Y4UJY-DKggkJe0.js → ganttDiagram-EL5Y4UJY-D8CJXHRF.js} +1 -1
  148. package/dashboard/assets/gitGraph-4MIJSDKK-BuZ9Lg04.js +1 -0
  149. package/dashboard/assets/{gitGraphDiagram-WWUBYQGX-r_iR8Qzo.js → gitGraphDiagram-WWUBYQGX-LEJMh54j.js} +1 -1
  150. package/dashboard/assets/info-A6RAGUB7-BL5k3pev.js +1 -0
  151. package/dashboard/assets/{infoDiagram-27XIBGKW-ClQk7UyQ.js → infoDiagram-27XIBGKW-LJvntUnZ.js} +1 -1
  152. package/dashboard/assets/{ishikawaDiagram-5VMMS53U-tR7Vziog.js → ishikawaDiagram-5VMMS53U-BYTYgKCG.js} +2 -2
  153. package/dashboard/assets/{journeyDiagram-3NMN7TZE-Cpb9IqKL.js → journeyDiagram-3NMN7TZE-G25qgQgO.js} +1 -1
  154. package/dashboard/assets/{kanban-definition-UXKFOSKX-BzUuKbA9.js → kanban-definition-UXKFOSKX-Bk3uLl1i.js} +1 -1
  155. package/dashboard/assets/{katex-BdBmVSus.js → katex-nLxf_RlZ.js} +2 -2
  156. package/dashboard/assets/{line-BHY_tSHu.js → line-i4qHBaWO.js} +1 -1
  157. package/dashboard/assets/linear-DmrqRsKG.js +1 -0
  158. package/dashboard/assets/mermaid-parser.core-BxbKr4QF.js +7 -0
  159. package/dashboard/assets/{mermaid.core-D_QsUPU8.js → mermaid.core-Cltee6FS.js} +9 -9
  160. package/dashboard/assets/{mindmap-definition-YA3MSWOX-CtfLTPPJ.js → mindmap-definition-YA3MSWOX-DkzO2JgS.js} +1 -1
  161. package/dashboard/assets/operations-B4_timQX.css +1 -0
  162. package/dashboard/assets/operations-DwppJviL.js +199 -0
  163. package/dashboard/assets/packet-AYTQ26CC-uZQUKnrE.js +1 -0
  164. package/dashboard/assets/{pegDiagram-XKGWAZYB-C1Dclbzj.js → pegDiagram-XKGWAZYB-CrOEi00T.js} +1 -1
  165. package/dashboard/assets/pie-WAS4IAKB-Dn9_tpQT.js +1 -0
  166. package/dashboard/assets/{pieDiagram-E7YTZNPT-Cd7XwYo5.js → pieDiagram-E7YTZNPT-D-niUkzc.js} +1 -1
  167. package/dashboard/assets/{quadrantDiagram-AXDQQJYC-CaS-GQ4X.js → quadrantDiagram-AXDQQJYC-CJOTiG5V.js} +1 -1
  168. package/dashboard/assets/radar-RG4KPBEZ-DIIVz4e8.js +1 -0
  169. package/dashboard/assets/railroad-74A4TZTK-1kiqDEID.js +1 -0
  170. package/dashboard/assets/railroad-abnf-HS5TGJTU-DK6rQPZR.js +1 -0
  171. package/dashboard/assets/railroad-ebnf-LZEXJU2U-C6cOgYW4.js +1 -0
  172. package/dashboard/assets/railroad-peg-WCYAUIDC-CQ3ptKef.js +1 -0
  173. package/dashboard/assets/{railroadDiagram-O6MQD6OU-BeesTrqn.js → railroadDiagram-O6MQD6OU-nEfkpa-m.js} +1 -1
  174. package/dashboard/assets/{requirementDiagram-BXWQKSXE-IjyK0DhW.js → requirementDiagram-BXWQKSXE-CdFMY8tG.js} +1 -1
  175. package/dashboard/assets/{sankeyDiagram-P5KCCOFB-DmIluQqo.js → sankeyDiagram-P5KCCOFB-C0KxrFYv.js} +1 -1
  176. package/dashboard/assets/{sequenceDiagram-WJ2MYXX4-CUp8ZjTc.js → sequenceDiagram-WJ2MYXX4-DeZ5ATiu.js} +2 -2
  177. package/dashboard/assets/sizeCapture-INFHLROL-3uHXrFqA.js +1 -0
  178. package/dashboard/assets/src-Cg-chcoE.js +1 -0
  179. package/dashboard/assets/{stateDiagram-D77RDMKH-Dy9TQb8P.js → stateDiagram-D77RDMKH-B9MwWL5B.js} +1 -1
  180. package/dashboard/assets/stateDiagram-v2-MP3YSRHH-SucFndhx.js +1 -0
  181. package/dashboard/assets/swimlanes-42K2YHIH-DB--fwQE.js +1 -0
  182. package/dashboard/assets/swimlanesDiagram-VR7AAH4N-BzH-rIaK.js +8 -0
  183. package/dashboard/assets/{timeline-definition-24CTP7MA-BGdXW-iY.js → timeline-definition-24CTP7MA-DLkkTbWb.js} +1 -1
  184. package/dashboard/assets/treeView-Q6P3EWNA-XkZ9rl9H.js +1 -0
  185. package/dashboard/assets/treemap-WGGIJYW6-JCtVKxCE.js +1 -0
  186. package/dashboard/assets/{vennDiagram-4TSXK5OY-DzKWHJsl.js → vennDiagram-4TSXK5OY-DEb-x29Z.js} +1 -1
  187. package/dashboard/assets/wardley-WFR3VGLG-DhI7ROY3.js +1 -0
  188. package/dashboard/assets/{wardleyDiagram-VM6X3IG4-DGsjYmNJ.js → wardleyDiagram-VM6X3IG4-KNckudc5.js} +1 -1
  189. package/dashboard/assets/{xychartDiagram-S5SC5T6Z-C7_T_tWt.js → xychartDiagram-S5SC5T6Z-D4c0ynCk.js} +1 -1
  190. package/dashboard/index.html +13 -2
  191. package/package.json +2 -5
  192. package/worker-assets/demo-target/README.md +7 -3
  193. package/chunks/chunk-2XGBEH53.js +0 -4304
  194. package/chunks/chunk-4ROZFLSR.js +0 -279
  195. package/chunks/chunk-56UTQKXO.js +0 -56
  196. package/chunks/chunk-BPU6M42R.js +0 -77
  197. package/chunks/chunk-H5QURBBK.js +0 -1123
  198. package/chunks/chunk-IIBNQTOK.js +0 -1532
  199. package/chunks/chunk-NJLKFC66.js +0 -4790
  200. package/chunks/chunk-OOMBOLAF.js +0 -295
  201. package/chunks/chunk-VIT5ALXF.js +0 -4054
  202. package/chunks/chunk-VU7V2SDW.js +0 -284
  203. package/chunks/chunk-W624J7NF.js +0 -117
  204. package/chunks/chunk-YSQWZ67M.js +0 -6027
  205. package/chunks/dashboard-5HDSNBAU.js +0 -76
  206. package/chunks/eval-runner-A2DIGVP7.js +0 -31
  207. package/chunks/hunt-scan-W246VWJC.js +0 -40
  208. package/chunks/managed-operation-6R2QPPW5.js +0 -60
  209. package/chunks/orchestrate-OBS37FWQ.js +0 -63
  210. package/chunks/run-MU3MFL2Z.js +0 -28242
  211. package/chunks/service-plugins-5B23PWXC.js +0 -64
  212. package/dashboard/assets/architecture-7GRP2DOG-z5EHYkyH.js +0 -1
  213. package/dashboard/assets/architectureDiagram-5GKGNRK7-ewtXpjR_.js +0 -36
  214. package/dashboard/assets/channel-CuYjfiC5.js +0 -1
  215. package/dashboard/assets/chunk-DU6HZSFF-3M37ulcO.js +0 -127
  216. package/dashboard/assets/classDiagram-ZZMXUADV-DCuOrWUV.js +0 -1
  217. package/dashboard/assets/classDiagram-v2-VYDZK3BY-DCuOrWUV.js +0 -1
  218. package/dashboard/assets/common-C6snVPsk.js +0 -5
  219. package/dashboard/assets/cose-bilkent-JH36ORCC-BLGcaZHk.js +0 -1
  220. package/dashboard/assets/cynefin-OW5HDTMX-DbZMK00I.js +0 -1
  221. package/dashboard/assets/cytoscape.esm-CGd-uY3x.js +0 -321
  222. package/dashboard/assets/dagre-GXQ25YYZ-CRk9qfSG.js +0 -4
  223. package/dashboard/assets/dagre-PrKaheQc.js +0 -1
  224. package/dashboard/assets/eventmodeling-NTZA5JFV-D_3ez4Gv.js +0 -1
  225. package/dashboard/assets/flowDiagram-HODETNUW-D2boyYEd.js +0 -1
  226. package/dashboard/assets/gitGraph-4MIJSDKK-DFOQYwXc.js +0 -1
  227. package/dashboard/assets/info-A6RAGUB7-DeednLoB.js +0 -1
  228. package/dashboard/assets/linear-naZZ1pHk.js +0 -1
  229. package/dashboard/assets/mermaid-parser.core-CPvd4cEx.js +0 -7
  230. package/dashboard/assets/operations-BwCzhVnT.js +0 -130
  231. package/dashboard/assets/operations-QjKT0Hwi.css +0 -1
  232. package/dashboard/assets/packet-AYTQ26CC-DDQbkT9I.js +0 -1
  233. package/dashboard/assets/pie-WAS4IAKB-LpU4ULAs.js +0 -1
  234. package/dashboard/assets/radar-RG4KPBEZ-CcxW3NJm.js +0 -1
  235. package/dashboard/assets/railroad-74A4TZTK-9P5Rl8fP.js +0 -1
  236. package/dashboard/assets/railroad-abnf-HS5TGJTU-CSfpwjna.js +0 -1
  237. package/dashboard/assets/railroad-ebnf-LZEXJU2U-D6R5qzr-.js +0 -1
  238. package/dashboard/assets/railroad-peg-WCYAUIDC-DKEX7ITG.js +0 -1
  239. package/dashboard/assets/sizeCapture-INFHLROL-B0uUizjq.js +0 -1
  240. package/dashboard/assets/src-r61wDjcA.js +0 -1
  241. package/dashboard/assets/stateDiagram-v2-MP3YSRHH-CQb0ZtPr.js +0 -1
  242. package/dashboard/assets/swimlanes-42K2YHIH-CZuDV7V5.js +0 -1
  243. package/dashboard/assets/swimlanesDiagram-VR7AAH4N-BxgWMq8X.js +0 -8
  244. package/dashboard/assets/treeView-Q6P3EWNA-DlRrayjM.js +0 -1
  245. package/dashboard/assets/treemap-WGGIJYW6-C6UqLKfI.js +0 -1
  246. package/dashboard/assets/wardley-WFR3VGLG-thmyHKb0.js +0 -1
@@ -0,0 +1,196 @@
1
+ #!/usr/bin/env node
2
+ import { createRequire as __0CreateRequire } from "node:module";
3
+ const require = __0CreateRequire(import.meta.url);
4
+
5
+ // node_modules/.pnpm/eventsource-parser@3.0.8/node_modules/eventsource-parser/dist/index.js
6
+ var ParseError = class extends Error {
7
+ constructor(message, options) {
8
+ super(message), this.name = "ParseError", this.type = options.type, this.field = options.field, this.value = options.value, this.line = options.line;
9
+ }
10
+ };
11
+ var LF = 10;
12
+ var CR = 13;
13
+ var SPACE = 32;
14
+ function noop(_arg) {
15
+ }
16
+ function createParser(callbacks) {
17
+ if (typeof callbacks == "function")
18
+ throw new TypeError(
19
+ "`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?"
20
+ );
21
+ const { onEvent = noop, onError = noop, onRetry = noop, onComment } = callbacks, pendingFragments = [];
22
+ let isFirstChunk = true, id, data = "", dataLines = 0, eventType;
23
+ function feed(chunk) {
24
+ if (isFirstChunk && (isFirstChunk = false, chunk.charCodeAt(0) === 239 && chunk.charCodeAt(1) === 187 && chunk.charCodeAt(2) === 191 && (chunk = chunk.slice(3))), pendingFragments.length === 0) {
25
+ const trailing2 = processLines(chunk);
26
+ trailing2 !== "" && pendingFragments.push(trailing2);
27
+ return;
28
+ }
29
+ if (chunk.indexOf(`
30
+ `) === -1 && chunk.indexOf("\r") === -1) {
31
+ pendingFragments.push(chunk);
32
+ return;
33
+ }
34
+ pendingFragments.push(chunk);
35
+ const input = pendingFragments.join("");
36
+ pendingFragments.length = 0;
37
+ const trailing = processLines(input);
38
+ trailing !== "" && pendingFragments.push(trailing);
39
+ }
40
+ function processLines(chunk) {
41
+ let searchIndex = 0;
42
+ if (chunk.indexOf("\r") === -1) {
43
+ let lfIndex = chunk.indexOf(`
44
+ `, searchIndex);
45
+ for (; lfIndex !== -1; ) {
46
+ if (searchIndex === lfIndex) {
47
+ dataLines > 0 && onEvent({ id, event: eventType, data }), id = void 0, data = "", dataLines = 0, eventType = void 0, searchIndex = lfIndex + 1, lfIndex = chunk.indexOf(`
48
+ `, searchIndex);
49
+ continue;
50
+ }
51
+ const firstCharCode = chunk.charCodeAt(searchIndex);
52
+ if (isDataPrefix(chunk, searchIndex, firstCharCode)) {
53
+ const valueStart = chunk.charCodeAt(searchIndex + 5) === SPACE ? searchIndex + 6 : searchIndex + 5, value = chunk.slice(valueStart, lfIndex);
54
+ if (dataLines === 0 && chunk.charCodeAt(lfIndex + 1) === LF) {
55
+ onEvent({ id, event: eventType, data: value }), id = void 0, data = "", eventType = void 0, searchIndex = lfIndex + 2, lfIndex = chunk.indexOf(`
56
+ `, searchIndex);
57
+ continue;
58
+ }
59
+ data = dataLines === 0 ? value : `${data}
60
+ ${value}`, dataLines++;
61
+ } else isEventPrefix(chunk, searchIndex, firstCharCode) ? eventType = chunk.slice(
62
+ chunk.charCodeAt(searchIndex + 6) === SPACE ? searchIndex + 7 : searchIndex + 6,
63
+ lfIndex
64
+ ) || void 0 : parseLine(chunk, searchIndex, lfIndex);
65
+ searchIndex = lfIndex + 1, lfIndex = chunk.indexOf(`
66
+ `, searchIndex);
67
+ }
68
+ return chunk.slice(searchIndex);
69
+ }
70
+ for (; searchIndex < chunk.length; ) {
71
+ const crIndex = chunk.indexOf("\r", searchIndex), lfIndex = chunk.indexOf(`
72
+ `, searchIndex);
73
+ let lineEnd = -1;
74
+ if (crIndex !== -1 && lfIndex !== -1 ? lineEnd = crIndex < lfIndex ? crIndex : lfIndex : crIndex !== -1 ? crIndex === chunk.length - 1 ? lineEnd = -1 : lineEnd = crIndex : lfIndex !== -1 && (lineEnd = lfIndex), lineEnd === -1)
75
+ break;
76
+ parseLine(chunk, searchIndex, lineEnd), searchIndex = lineEnd + 1, chunk.charCodeAt(searchIndex - 1) === CR && chunk.charCodeAt(searchIndex) === LF && searchIndex++;
77
+ }
78
+ return chunk.slice(searchIndex);
79
+ }
80
+ function parseLine(chunk, start, end) {
81
+ if (start === end) {
82
+ dispatchEvent();
83
+ return;
84
+ }
85
+ const firstCharCode = chunk.charCodeAt(start);
86
+ if (isDataPrefix(chunk, start, firstCharCode)) {
87
+ const valueStart = chunk.charCodeAt(start + 5) === SPACE ? start + 6 : start + 5, value2 = chunk.slice(valueStart, end);
88
+ data = dataLines === 0 ? value2 : `${data}
89
+ ${value2}`, dataLines++;
90
+ return;
91
+ }
92
+ if (isEventPrefix(chunk, start, firstCharCode)) {
93
+ eventType = chunk.slice(chunk.charCodeAt(start + 6) === SPACE ? start + 7 : start + 6, end) || void 0;
94
+ return;
95
+ }
96
+ if (firstCharCode === 105 && chunk.charCodeAt(start + 1) === 100 && chunk.charCodeAt(start + 2) === 58) {
97
+ const value2 = chunk.slice(chunk.charCodeAt(start + 3) === SPACE ? start + 4 : start + 3, end);
98
+ id = value2.includes("\0") ? void 0 : value2;
99
+ return;
100
+ }
101
+ if (firstCharCode === 58) {
102
+ if (onComment) {
103
+ const line2 = chunk.slice(start, end);
104
+ onComment(line2.slice(chunk.charCodeAt(start + 1) === SPACE ? 2 : 1));
105
+ }
106
+ return;
107
+ }
108
+ const line = chunk.slice(start, end), fieldSeparatorIndex = line.indexOf(":");
109
+ if (fieldSeparatorIndex === -1) {
110
+ processField(line, "", line);
111
+ return;
112
+ }
113
+ const field = line.slice(0, fieldSeparatorIndex), offset = line.charCodeAt(fieldSeparatorIndex + 1) === SPACE ? 2 : 1, value = line.slice(fieldSeparatorIndex + offset);
114
+ processField(field, value, line);
115
+ }
116
+ function processField(field, value, line) {
117
+ switch (field) {
118
+ case "event":
119
+ eventType = value || void 0;
120
+ break;
121
+ case "data":
122
+ data = dataLines === 0 ? value : `${data}
123
+ ${value}`, dataLines++;
124
+ break;
125
+ case "id":
126
+ id = value.includes("\0") ? void 0 : value;
127
+ break;
128
+ case "retry":
129
+ /^\d+$/.test(value) ? onRetry(parseInt(value, 10)) : onError(
130
+ new ParseError(`Invalid \`retry\` value: "${value}"`, {
131
+ type: "invalid-retry",
132
+ value,
133
+ line
134
+ })
135
+ );
136
+ break;
137
+ default:
138
+ onError(
139
+ new ParseError(
140
+ `Unknown field "${field.length > 20 ? `${field.slice(0, 20)}\u2026` : field}"`,
141
+ { type: "unknown-field", field, value, line }
142
+ )
143
+ );
144
+ break;
145
+ }
146
+ }
147
+ function dispatchEvent() {
148
+ dataLines > 0 && onEvent({
149
+ id,
150
+ event: eventType,
151
+ data
152
+ }), id = void 0, data = "", dataLines = 0, eventType = void 0;
153
+ }
154
+ function reset(options = {}) {
155
+ if (options.consume && pendingFragments.length > 0) {
156
+ const incompleteLine = pendingFragments.join("");
157
+ parseLine(incompleteLine, 0, incompleteLine.length);
158
+ }
159
+ isFirstChunk = true, id = void 0, data = "", dataLines = 0, eventType = void 0, pendingFragments.length = 0;
160
+ }
161
+ return { feed, reset };
162
+ }
163
+ function isDataPrefix(chunk, i, firstCharCode) {
164
+ return firstCharCode === 100 && chunk.charCodeAt(i + 1) === 97 && chunk.charCodeAt(i + 2) === 116 && chunk.charCodeAt(i + 3) === 97 && chunk.charCodeAt(i + 4) === 58;
165
+ }
166
+ function isEventPrefix(chunk, i, firstCharCode) {
167
+ return firstCharCode === 101 && chunk.charCodeAt(i + 1) === 118 && chunk.charCodeAt(i + 2) === 101 && chunk.charCodeAt(i + 3) === 110 && chunk.charCodeAt(i + 4) === 116 && chunk.charCodeAt(i + 5) === 58;
168
+ }
169
+
170
+ // node_modules/.pnpm/eventsource-parser@3.0.8/node_modules/eventsource-parser/dist/stream.js
171
+ var EventSourceParserStream = class extends TransformStream {
172
+ constructor({ onError, onRetry, onComment } = {}) {
173
+ let parser;
174
+ super({
175
+ start(controller) {
176
+ parser = createParser({
177
+ onEvent: (event) => {
178
+ controller.enqueue(event);
179
+ },
180
+ onError(error) {
181
+ onError === "terminate" ? controller.error(error) : typeof onError == "function" && onError(error);
182
+ },
183
+ onRetry,
184
+ onComment
185
+ });
186
+ },
187
+ transform(chunk) {
188
+ parser.feed(chunk);
189
+ }
190
+ });
191
+ }
192
+ };
193
+
194
+ export {
195
+ EventSourceParserStream
196
+ };
@@ -8,13 +8,13 @@ import {
8
8
  parsePatch,
9
9
  readEvolutionArtifact,
10
10
  resolveScopedPath
11
- } from "./chunk-YKWARO3T.js";
11
+ } from "./chunk-YGYJ2FTH.js";
12
12
  import {
13
13
  homeStateDir
14
- } from "./chunk-GXXX7AGH.js";
14
+ } from "./chunk-GYEYTNHK.js";
15
15
  import {
16
16
  external_exports
17
- } from "./chunk-VIT5ALXF.js";
17
+ } from "./chunk-5XOYTAOK.js";
18
18
 
19
19
  // packages/core/dist/fix/source-fix.js
20
20
  import { execFile } from "node:child_process";
@@ -3,7 +3,7 @@ import { createRequire as __0CreateRequire } from "node:module";
3
3
  const require = __0CreateRequire(import.meta.url);
4
4
  import {
5
5
  homeStateDir
6
- } from "./chunk-GXXX7AGH.js";
6
+ } from "./chunk-GYEYTNHK.js";
7
7
 
8
8
  // packages/core/dist/triage/kernel-vm-runner.js
9
9
  import { execFileSync, spawn } from "node:child_process";
@@ -5,13 +5,13 @@ import {
5
5
  makeSkepticVerifier,
6
6
  runHuntScan,
7
7
  scoreGeometry
8
- } from "./chunk-YSQWZ67M.js";
8
+ } from "./chunk-SIR7XW2S.js";
9
9
  import {
10
10
  runReproducerInKernelVm
11
- } from "./chunk-XA2IBHPB.js";
11
+ } from "./chunk-B7XL6RON.js";
12
12
  import {
13
13
  LlmApiRuntime
14
- } from "./chunk-IJ6UPW3H.js";
14
+ } from "./chunk-HS2NQ7K6.js";
15
15
  import {
16
16
  __commonJS,
17
17
  __require,
@@ -2,20 +2,237 @@
2
2
  import { createRequire as __0CreateRequire } from "node:module";
3
3
  const require = __0CreateRequire(import.meta.url);
4
4
  import {
5
- spinnerGlyph
6
- } from "./chunk-OOMBOLAF.js";
5
+ presentationEventBus
6
+ } from "./chunk-S4DFH2FJ.js";
7
7
  import {
8
8
  loadLayeredSettings
9
- } from "./chunk-X2IPO5JO.js";
9
+ } from "./chunk-V2KJQVYE.js";
10
10
  import {
11
+ createPresentationEvent,
11
12
  homeStateDir
12
- } from "./chunk-GXXX7AGH.js";
13
+ } from "./chunk-GYEYTNHK.js";
14
+
15
+ // packages/cli/src/presentation/process-output.ts
16
+ import { format } from "node:util";
17
+ var streamBridgeSuppressionDepth = 0;
18
+ var activeStreamBridge = null;
19
+ function currentPresentationTimestamp() {
20
+ return (/* @__PURE__ */ new Date()).toISOString();
21
+ }
22
+ function createProcessPresentationOutput(options = {}) {
23
+ const stdout = options.stdout ?? { write: process.stdout.write.bind(process.stdout) };
24
+ const stderr = options.stderr ?? { write: process.stderr.write.bind(process.stderr) };
25
+ const source = options.source ?? "cli";
26
+ const now = options.now ?? currentPresentationTimestamp;
27
+ let sequence = 0;
28
+ const write = (channel, target, text, eventType) => {
29
+ const event = createPresentationEvent({
30
+ source,
31
+ sequence: ++sequence,
32
+ at: now(),
33
+ eventType,
34
+ payload: { channel, text }
35
+ });
36
+ streamBridgeSuppressionDepth += 1;
37
+ try {
38
+ target.write(text);
39
+ } finally {
40
+ streamBridgeSuppressionDepth -= 1;
41
+ }
42
+ options.onEvent?.(event);
43
+ return event;
44
+ };
45
+ return {
46
+ stdout(text, eventType = "output.stdout") {
47
+ return write("stdout", stdout, text, eventType);
48
+ },
49
+ stderr(text, eventType = "output.stderr") {
50
+ return write("stderr", stderr, text, eventType);
51
+ }
52
+ };
53
+ }
54
+ function createConsolePresentationOutput(options = {}) {
55
+ const source = options.source ?? "cli";
56
+ const now = options.now ?? currentPresentationTimestamp;
57
+ let sequence = 0;
58
+ const emit = (channel, text, eventType) => {
59
+ const event = createPresentationEvent({
60
+ source,
61
+ sequence: ++sequence,
62
+ at: now(),
63
+ eventType,
64
+ payload: { channel, text }
65
+ });
66
+ streamBridgeSuppressionDepth += 1;
67
+ try {
68
+ if (channel === "stdout") {
69
+ (options.log ?? console.log)(text);
70
+ } else {
71
+ (options.error ?? console.error)(text);
72
+ }
73
+ } finally {
74
+ streamBridgeSuppressionDepth -= 1;
75
+ }
76
+ options.onEvent?.(event);
77
+ return event;
78
+ };
79
+ return {
80
+ stdout(text, eventType = "output.stdout") {
81
+ return emit("stdout", text, eventType);
82
+ },
83
+ stderr(text, eventType = "output.stderr") {
84
+ return emit("stderr", text, eventType);
85
+ }
86
+ };
87
+ }
88
+ var consolePresentationOutput = createConsolePresentationOutput({
89
+ onEvent(event) {
90
+ presentationEventBus.emit(event);
91
+ }
92
+ });
93
+ function installConsolePresentationBridge(options = {}) {
94
+ const target = options.target ?? console;
95
+ const originals = {
96
+ log: target.log,
97
+ info: target.info,
98
+ warn: target.warn,
99
+ error: target.error
100
+ };
101
+ const source = options.source ?? "cli";
102
+ const now = options.now ?? currentPresentationTimestamp;
103
+ let sequence = 0;
104
+ const emit = (method, channel, args, eventType) => {
105
+ const text = format(...args);
106
+ if (streamBridgeSuppressionDepth > 0) {
107
+ originals[method].call(target, text);
108
+ return;
109
+ }
110
+ const event = createPresentationEvent({
111
+ source,
112
+ sequence: ++sequence,
113
+ at: now(),
114
+ eventType,
115
+ payload: { channel, text }
116
+ });
117
+ streamBridgeSuppressionDepth += 1;
118
+ try {
119
+ originals[method].call(target, text);
120
+ } finally {
121
+ streamBridgeSuppressionDepth -= 1;
122
+ }
123
+ presentationEventBus.emit(event);
124
+ options.onEvent?.(event);
125
+ };
126
+ const bridgedLog = (...args) => emit("log", "stdout", args, "output.console.log");
127
+ const bridgedInfo = (...args) => emit("info", "stdout", args, "output.console.info");
128
+ const bridgedWarn = (...args) => emit("warn", "stderr", args, "output.console.warn");
129
+ const bridgedError = (...args) => emit("error", "stderr", args, "output.console.error");
130
+ target.log = bridgedLog;
131
+ target.info = bridgedInfo;
132
+ target.warn = bridgedWarn;
133
+ target.error = bridgedError;
134
+ return {
135
+ restore() {
136
+ if (target.log === bridgedLog) target.log = originals.log;
137
+ if (target.info === bridgedInfo) target.info = originals.info;
138
+ if (target.warn === bridgedWarn) target.warn = originals.warn;
139
+ if (target.error === bridgedError) target.error = originals.error;
140
+ }
141
+ };
142
+ }
143
+ function installProcessPresentationStreamBridge(options = {}) {
144
+ if (activeStreamBridge) return activeStreamBridge;
145
+ const source = options.source ?? "cli";
146
+ const now = options.now ?? currentPresentationTimestamp;
147
+ let sequence = 0;
148
+ let suspended = false;
149
+ const streams = [];
150
+ const emit = (channel, chunk, encoding) => {
151
+ const text = typeof chunk === "string" ? chunk : chunk instanceof Uint8Array ? Buffer.from(chunk).toString(typeof encoding === "string" ? encoding : "utf8") : String(chunk ?? "");
152
+ if (channel === "stdout" && text.startsWith("ZERO_EVENT_")) return;
153
+ const event = createPresentationEvent({
154
+ source,
155
+ sequence: ++sequence,
156
+ at: now(),
157
+ eventType: channel === "stdout" ? "output.stream.stdout" : "output.stream.stderr",
158
+ payload: { channel, text }
159
+ });
160
+ presentationEventBus.emit(event);
161
+ options.onEvent?.(event);
162
+ };
163
+ for (const [channel, stream] of [
164
+ ["stdout", options.stdout ?? process.stdout],
165
+ ["stderr", options.stderr ?? process.stderr]
166
+ ]) {
167
+ const original = stream.write;
168
+ const patched = ((chunk, encoding, callback) => {
169
+ const result = original.call(stream, chunk, encoding, callback);
170
+ if (!suspended && streamBridgeSuppressionDepth === 0) emit(channel, chunk, encoding);
171
+ return result;
172
+ });
173
+ streams.push({ channel, stream, original, patched });
174
+ }
175
+ const bridge = {
176
+ suspend() {
177
+ if (suspended) return;
178
+ suspended = true;
179
+ for (const item of streams) {
180
+ if (item.stream.write === item.patched) item.stream.write = item.original;
181
+ }
182
+ },
183
+ resume() {
184
+ if (!suspended) return;
185
+ suspended = false;
186
+ for (const item of streams) {
187
+ if (item.stream.write === item.original) item.stream.write = item.patched;
188
+ }
189
+ },
190
+ restore() {
191
+ for (const item of streams) {
192
+ if (item.stream.write === item.patched) item.stream.write = item.original;
193
+ }
194
+ if (activeStreamBridge === bridge) activeStreamBridge = null;
195
+ }
196
+ };
197
+ for (const item of streams) item.stream.write = item.patched;
198
+ activeStreamBridge = bridge;
199
+ return bridge;
200
+ }
201
+ var processPresentationOutput = createProcessPresentationOutput({
202
+ onEvent(event) {
203
+ presentationEventBus.emit(event);
204
+ }
205
+ });
206
+ function writePresentationLine(text, eventType = "output.stdout") {
207
+ return processPresentationOutput.stdout(`${text}
208
+ `, eventType);
209
+ }
13
210
 
14
211
  // packages/cli/src/utils/update-check.ts
15
212
  import { readFileSync, writeFileSync, mkdirSync } from "node:fs";
16
213
  import { join } from "node:path";
17
214
  import { spawn } from "node:child_process";
18
215
 
216
+ // packages/cli/src/tui/animations.ts
217
+ function safeFrame(frame) {
218
+ if (!Number.isFinite(frame)) return 0;
219
+ const t = Math.trunc(frame);
220
+ return t < 0 ? 0 : t;
221
+ }
222
+ var SPINNER_PERIOD = 8;
223
+ var TOAST_ENTER_FRAMES = 6;
224
+ var TOAST_HOLD_FRAMES = 28;
225
+ var TOAST_EXIT_FRAMES = 6;
226
+ var TOAST_TOTAL_FRAMES = TOAST_ENTER_FRAMES + TOAST_HOLD_FRAMES + TOAST_EXIT_FRAMES;
227
+ var SPINNER_FRAMES = ["\u280B", "\u2819", "\u2839", "\u2838", "\u283C", "\u2834", "\u2826", "\u2827"];
228
+ function spinnerFrame(frame, opts = {}) {
229
+ if (opts.reduceMotion) return 0;
230
+ return safeFrame(frame) % SPINNER_PERIOD;
231
+ }
232
+ function spinnerGlyph(frame, opts = {}) {
233
+ return SPINNER_FRAMES[spinnerFrame(frame, opts)] ?? SPINNER_FRAMES[0];
234
+ }
235
+
19
236
  // packages/cli/src/utils/terminal-progress.ts
20
237
  function terminalProgress(label, output = process.stderr, reduceMotion = false) {
21
238
  const animated = Boolean(output.isTTY && process.env["TERM"] !== "dumb");
@@ -284,6 +501,11 @@ async function runStartupUpdate(version) {
284
501
  }
285
502
 
286
503
  export {
504
+ consolePresentationOutput,
505
+ installConsolePresentationBridge,
506
+ installProcessPresentationStreamBridge,
507
+ processPresentationOutput,
508
+ writePresentationLine,
287
509
  performAutoUpdate,
288
510
  runStartupUpdate
289
511
  };
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-O6KPVYOI.js";
7
7
  import {
8
8
  LlmApiRuntime
9
- } from "./chunk-IJ6UPW3H.js";
9
+ } from "./chunk-HS2NQ7K6.js";
10
10
  import {
11
11
  readCacheUsage
12
12
  } from "./chunk-RS4MAN3Q.js";
@@ -1,6 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __0CreateRequire } from "node:module";
3
3
  const require = __0CreateRequire(import.meta.url);
4
+ import {
5
+ buildShareUrl
6
+ } from "./chunk-MNK373HF.js";
4
7
  import {
5
8
  source_default
6
9
  } from "./chunk-HLFS6WV2.js";
@@ -8,59 +11,14 @@ import {
8
11
  formatHtml,
9
12
  formatMarkdown,
10
13
  formatSarif
11
- } from "./chunk-H5QURBBK.js";
14
+ } from "./chunk-YP2DHYNI.js";
12
15
  import {
13
16
  compareFindingsByBusinessPriority,
14
17
  createAuditReportDocument,
15
18
  createReviewReportDocument,
16
19
  createScanReportDocument,
17
20
  getFindingPriority
18
- } from "./chunk-GXXX7AGH.js";
19
-
20
- // packages/cli/src/utils.ts
21
- import { gzipSync } from "zlib";
22
- async function getRuntimeAvailability() {
23
- const { detectAvailableRuntimes, LlmApiRuntime } = await import("./dist-TQMHMSBZ.js");
24
- const apiRuntimeDiagnostics = new LlmApiRuntime({ type: "api", timeout: 5e3 }).getConfigurationDiagnostics();
25
- const hasApiKey = apiRuntimeDiagnostics.valid;
26
- const availableRuntimes = [...await detectAvailableRuntimes()];
27
- return {
28
- hasApiKey,
29
- availableRuntimes,
30
- apiRuntime: {
31
- configured: apiRuntimeDiagnostics.reason !== "missing_key",
32
- valid: apiRuntimeDiagnostics.valid,
33
- providerLabel: apiRuntimeDiagnostics.providerLabel,
34
- error: apiRuntimeDiagnostics.fatalError
35
- }
36
- };
37
- }
38
- async function checkRuntimeAvailability(runtime) {
39
- const availability = await getRuntimeAvailability();
40
- const { hasApiKey, availableRuntimes, apiRuntime } = availability;
41
- if (hasApiKey) return;
42
- console.log("");
43
- if ((runtime === "api" || runtime === "auto") && apiRuntime.configured && apiRuntime.error) {
44
- console.log(source_default.red(` ${apiRuntime.providerLabel} config error: ${apiRuntime.error.split("\n")[0]}`));
45
- }
46
- if (runtime === "api") {
47
- console.log(source_default.yellow(
48
- apiRuntime.configured ? " Warning: `--runtime api` needs a valid provider configuration. AI analysis will fail until this is fixed." : " Warning: `--runtime api` needs provider credentials. AI analysis may be skipped."
49
- ));
50
- } else if (availableRuntimes.length > 0) {
51
- console.log(source_default.cyan(` Using local runtime(s): ${availableRuntimes.join(", ")}`));
52
- } else {
53
- console.log(source_default.yellow(" Warning: No API key or local agent runtime detected. AI analysis will be skipped."));
54
- }
55
- console.log(source_default.gray(" Provider credentials: ZERO_CHATGPT_ACCESS_TOKEN | ZERO_CHATGPT_OAUTH_REFRESH_TOKEN, OPENROUTER_API_KEY, ANTHROPIC_API_KEY, AZURE_OPENAI_API_KEY, OPENAI_API_KEY"));
56
- console.log("");
57
- }
58
- function buildShareUrl(report) {
59
- const json = JSON.stringify(report);
60
- const compressed = gzipSync(Buffer.from(json, "utf-8"));
61
- const b64 = compressed.toString("base64url");
62
- return `https://0.security/r#${b64}`;
63
- }
21
+ } from "./chunk-GYEYTNHK.js";
64
22
 
65
23
  // packages/cli/src/formatters/terminal.ts
66
24
  var SEVERITY_COUNT_COLOR = {
@@ -554,9 +512,6 @@ function formatReviewReport(report, format) {
554
512
 
555
513
  export {
556
514
  renderReplay,
557
- getRuntimeAvailability,
558
- checkRuntimeAvailability,
559
- buildShareUrl,
560
515
  TIMELINE_FORMATS,
561
516
  isTimelineFormat,
562
517
  formatTimeline,