@joshuafolkken/kit 1.3099.0 → 1.3125.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.
- package/.claude/skills/workflow-commands/split-assessment.md +2 -3
- package/.github/actions/setup-pnpm/action.yml +12 -4
- package/dist/.inputs-verified.json +1 -1
- package/dist/commands/adopt.js +20 -20
- package/dist/commands/auto-ok-judge-cli.js +30 -30
- package/dist/commands/auto-ok-main.js +64 -63
- package/dist/commands/backlog-budget-main.js +5 -5
- package/dist/commands/backlog-drive-cli.js +220 -203
- package/dist/commands/backlog-next-main.js +157 -101
- package/dist/commands/backlog-offer-main.js +168 -120
- package/dist/commands/backlog-plan-cli.js +159 -110
- package/dist/commands/backlog-triage-cli.js +171 -115
- package/dist/commands/backlogrun-cli.js +255 -245
- package/dist/commands/behavior-cli.js +16 -15
- package/dist/commands/bytes-command.js +41 -41
- package/dist/commands/cases-cli.js +3 -3
- package/dist/commands/check-commit-message-main.js +3 -3
- package/dist/commands/check-related.js +93 -93
- package/dist/commands/chunk-23PU6FAC.js +140 -0
- package/dist/commands/chunk-23TWJOAI.js +172 -0
- package/dist/commands/chunk-24MXEDSJ.js +81 -0
- package/dist/commands/chunk-25LVQDOF.js +183 -0
- package/dist/commands/chunk-25LYH5QR.js +85 -0
- package/dist/commands/chunk-2AH73ZTW.js +84 -0
- package/dist/commands/chunk-2BNLPPP4.js +42 -0
- package/dist/commands/chunk-2FD3N3OX.js +119 -0
- package/dist/commands/chunk-2GJ3WJVT.js +117 -0
- package/dist/commands/chunk-2JGOKYJQ.js +426 -0
- package/dist/commands/chunk-2MDLCJZ4.js +389 -0
- package/dist/commands/chunk-2ROVUERM.js +99 -0
- package/dist/commands/chunk-2TI22UNK.js +137 -0
- package/dist/commands/chunk-2TUA6V4F.js +191 -0
- package/dist/commands/chunk-2UXSF5YF.js +49 -0
- package/dist/commands/chunk-2ZDVX64H.js +66 -0
- package/dist/commands/chunk-33N7SBIU.js +18 -0
- package/dist/commands/chunk-373P5MM2.js +353 -0
- package/dist/commands/chunk-37RULO76.js +220 -0
- package/dist/commands/chunk-3EYRE3GI.js +173 -0
- package/dist/commands/chunk-3IXIYDC3.js +179 -0
- package/dist/commands/chunk-3OFJCJN4.js +30 -0
- package/dist/commands/chunk-3OSUM6DM.js +53 -0
- package/dist/commands/chunk-3PGB2RKZ.js +333 -0
- package/dist/commands/chunk-3QNEEG5O.js +117 -0
- package/dist/commands/chunk-3TN76RWK.js +156 -0
- package/dist/commands/chunk-3W2TJZMD.js +77 -0
- package/dist/commands/chunk-3Y32BYLU.js +1244 -0
- package/dist/commands/chunk-3ZQOMI5A.js +245 -0
- package/dist/commands/chunk-42W6WARP.js +263 -0
- package/dist/commands/chunk-44UIURBQ.js +130 -0
- package/dist/commands/chunk-45RCSJGE.js +321 -0
- package/dist/commands/chunk-4DNAAFF4.js +159 -0
- package/dist/commands/chunk-4E5WBWG7.js +70 -0
- package/dist/commands/chunk-4MRBLCDB.js +96 -0
- package/dist/commands/chunk-4NIHTEGD.js +332 -0
- package/dist/commands/chunk-4ODXKJJT.js +566 -0
- package/dist/commands/chunk-4P5F7CLB.js +47 -0
- package/dist/commands/chunk-52CGT2IN.js +119 -0
- package/dist/commands/chunk-54ZLBLLE.js +74 -0
- package/dist/commands/chunk-56344LLX.js +114 -0
- package/dist/commands/chunk-56GR7L5L.js +36 -0
- package/dist/commands/chunk-5ADJDGFT.js +126 -0
- package/dist/commands/chunk-5CMXAHCL.js +161 -0
- package/dist/commands/chunk-5DMFMP4V.js +121 -0
- package/dist/commands/chunk-5I3M4B3H.js +185 -0
- package/dist/commands/chunk-5JIMCETI.js +104 -0
- package/dist/commands/chunk-5KEESWMC.js +138 -0
- package/dist/commands/chunk-5LNRVX2R.js +214 -0
- package/dist/commands/chunk-5PLKHUQD.js +492 -0
- package/dist/commands/chunk-5QICRFVL.js +167 -0
- package/dist/commands/chunk-5RCBXYYD.js +101 -0
- package/dist/commands/chunk-5SOU366I.js +252 -0
- package/dist/commands/chunk-5VUHAXPI.js +77 -0
- package/dist/commands/chunk-5XJUUZ6U.js +773 -0
- package/dist/commands/chunk-5ZMVRU3U.js +46 -0
- package/dist/commands/chunk-5ZWU2B7T.js +507 -0
- package/dist/commands/chunk-5ZXR36N7.js +67 -0
- package/dist/commands/chunk-623LFKFM.js +60 -0
- package/dist/commands/chunk-64II6P7B.js +81 -0
- package/dist/commands/chunk-6DJT64DN.js +342 -0
- package/dist/commands/chunk-6HJ5CJSJ.js +121 -0
- package/dist/commands/chunk-6LGMEJRN.js +67 -0
- package/dist/commands/chunk-6LHMR3CR.js +126 -0
- package/dist/commands/chunk-6NXTP5JT.js +114 -0
- package/dist/commands/chunk-6OKVY2E3.js +128 -0
- package/dist/commands/chunk-6OUQZC6V.js +1153 -0
- package/dist/commands/chunk-6PL2AK3C.js +204 -0
- package/dist/commands/chunk-6PLIQCBG.js +326 -0
- package/dist/commands/chunk-6QVDEMGB.js +118 -0
- package/dist/commands/chunk-6T67GZMJ.js +60 -0
- package/dist/commands/chunk-6TC2ZMNB.js +64 -0
- package/dist/commands/chunk-6TOHJZ4J.js +224 -0
- package/dist/commands/chunk-6TOWGIY2.js +127 -0
- package/dist/commands/chunk-6TPGDOOD.js +48 -0
- package/dist/commands/chunk-6XXEW3NQ.js +159 -0
- package/dist/commands/chunk-72HZ2APA.js +229 -0
- package/dist/commands/chunk-72LAYP5S.js +46 -0
- package/dist/commands/chunk-72Y7PXUJ.js +83 -0
- package/dist/commands/chunk-77R6JEET.js +128 -0
- package/dist/commands/chunk-7GICNM73.js +137 -0
- package/dist/commands/chunk-7OZT74HR.js +78 -0
- package/dist/commands/chunk-7QAYL2RH.js +555 -0
- package/dist/commands/chunk-7T7GIZYW.js +92 -0
- package/dist/commands/chunk-7VXSMXVE.js +79 -0
- package/dist/commands/chunk-7WTVADW4.js +33 -0
- package/dist/commands/chunk-7YXCOW3X.js +114 -0
- package/dist/commands/chunk-7YYI3OX6.js +104 -0
- package/dist/commands/chunk-7Z25RNTV.js +516 -0
- package/dist/commands/chunk-A73RWSHJ.js +126 -0
- package/dist/commands/chunk-AAIZ2H66.js +58 -0
- package/dist/commands/chunk-AFGEGGIF.js +17 -0
- package/dist/commands/chunk-AJTXSSRD.js +29 -0
- package/dist/commands/chunk-AKM3BHVJ.js +48 -0
- package/dist/commands/chunk-AL2H63BP.js +48 -0
- package/dist/commands/chunk-AMQNHTDN.js +60 -0
- package/dist/commands/chunk-AQGVQMWF.js +168 -0
- package/dist/commands/chunk-B4OZF4XL.js +89 -0
- package/dist/commands/chunk-B4W77FVS.js +704 -0
- package/dist/commands/chunk-B4YBGU2C.js +580 -0
- package/dist/commands/chunk-B636LL4X.js +239 -0
- package/dist/commands/chunk-B762PNT6.js +66 -0
- package/dist/commands/chunk-B7UY7EOD.js +72 -0
- package/dist/commands/chunk-BAJABWKW.js +43 -0
- package/dist/commands/chunk-BAQRD3TC.js +105 -0
- package/dist/commands/chunk-BBPESBU3.js +85 -0
- package/dist/commands/chunk-BGKUZJT7.js +25 -0
- package/dist/commands/chunk-BIVM6OTE.js +19 -0
- package/dist/commands/chunk-BJQDQAQU.js +167 -0
- package/dist/commands/chunk-BU3WIUDD.js +230 -0
- package/dist/commands/chunk-C2WXQPF3.js +34 -0
- package/dist/commands/chunk-C3V6H6TW.js +183 -0
- package/dist/commands/chunk-C3Y42PHX.js +229 -0
- package/dist/commands/chunk-C7CDGSMW.js +112 -0
- package/dist/commands/chunk-C7JEMYPV.js +102 -0
- package/dist/commands/chunk-CCAVK7HN.js +4221 -0
- package/dist/commands/chunk-CFLCZ2WO.js +63 -0
- package/dist/commands/chunk-CGA2K3XV.js +137 -0
- package/dist/commands/chunk-CHQQ3VTL.js +184 -0
- package/dist/commands/chunk-CKD2G35M.js +86 -0
- package/dist/commands/chunk-CMTTDS7F.js +77 -0
- package/dist/commands/chunk-CRCQOA4Z.js +77 -0
- package/dist/commands/chunk-CT773QBI.js +161 -0
- package/dist/commands/chunk-CVZXDKCV.js +525 -0
- package/dist/commands/chunk-CXFN5W7O.js +116 -0
- package/dist/commands/chunk-CXVNQ7DS.js +88 -0
- package/dist/commands/chunk-CYYJLRIW.js +85 -0
- package/dist/commands/chunk-D6UXGFJ7.js +44 -0
- package/dist/commands/chunk-DIXUXHZ2.js +207 -0
- package/dist/commands/chunk-DM6I4PYD.js +110 -0
- package/dist/commands/chunk-DOM6HJL3.js +769 -0
- package/dist/commands/chunk-DVIOBFU7.js +210 -0
- package/dist/commands/chunk-E5CGA7FC.js +114 -0
- package/dist/commands/chunk-EG44IWNI.js +88 -0
- package/dist/commands/chunk-EHVFQQO6.js +45 -0
- package/dist/commands/chunk-EJG5ZJKD.js +1629 -0
- package/dist/commands/chunk-EKKUHXFD.js +241 -0
- package/dist/commands/chunk-ELCYNBZO.js +430 -0
- package/dist/commands/chunk-ELZQL6M3.js +100 -0
- package/dist/commands/chunk-EOPRRSCY.js +1891 -0
- package/dist/commands/chunk-EQTDNFPF.js +123 -0
- package/dist/commands/chunk-ERAABGU7.js +93 -0
- package/dist/commands/chunk-ESMIFITZ.js +715 -0
- package/dist/commands/chunk-EWBEYTVS.js +50 -0
- package/dist/commands/chunk-EYR2X5MZ.js +53 -0
- package/dist/commands/chunk-F546BPG3.js +74 -0
- package/dist/commands/chunk-F7SAHNGR.js +34 -0
- package/dist/commands/chunk-FBWNL3UA.js +209 -0
- package/dist/commands/chunk-FBZD6LOK.js +225 -0
- package/dist/commands/chunk-FDSSBZC7.js +75 -0
- package/dist/commands/chunk-FFLZPLWC.js +59 -0
- package/dist/commands/chunk-FHLV5BII.js +170 -0
- package/dist/commands/chunk-FITTCICF.js +247 -0
- package/dist/commands/chunk-FJ622XHY.js +179 -0
- package/dist/commands/chunk-FQPL6T66.js +80 -0
- package/dist/commands/chunk-FSM3WPTR.js +73 -0
- package/dist/commands/chunk-FSZA4DME.js +268 -0
- package/dist/commands/chunk-FVPRBMHE.js +38 -0
- package/dist/commands/chunk-FZ62KJXP.js +75 -0
- package/dist/commands/chunk-FZNYKSQS.js +335 -0
- package/dist/commands/chunk-FZYFGHRY.js +72 -0
- package/dist/commands/chunk-G4UVY3TO.js +90 -0
- package/dist/commands/chunk-G6H2TOAA.js +18 -0
- package/dist/commands/chunk-GC73YEU7.js +119 -0
- package/dist/commands/chunk-GHVL6IJA.js +653 -0
- package/dist/commands/chunk-GIGXVOKR.js +208 -0
- package/dist/commands/chunk-GL2DZXYD.js +103 -0
- package/dist/commands/chunk-GL3VOBWB.js +170 -0
- package/dist/commands/chunk-GLXOLYZE.js +64 -0
- package/dist/commands/chunk-GNRTFRSL.js +41 -0
- package/dist/commands/chunk-GX5XHW2F.js +132 -0
- package/dist/commands/chunk-GXXWRH6F.js +98 -0
- package/dist/commands/chunk-GY6O2WYG.js +120 -0
- package/dist/commands/chunk-H4IDKP55.js +37 -0
- package/dist/commands/chunk-H5WWD3TX.js +719 -0
- package/dist/commands/chunk-H6MHUR2Y.js +114 -0
- package/dist/commands/chunk-H6TBBVC2.js +73 -0
- package/dist/commands/chunk-HF52YP56.js +178 -0
- package/dist/commands/chunk-HKHGX7TW.js +173 -0
- package/dist/commands/chunk-HLQVLQEB.js +177 -0
- package/dist/commands/chunk-HN3EGYAI.js +169 -0
- package/dist/commands/chunk-HNZLKGKJ.js +43 -0
- package/dist/commands/chunk-HQ5U6OZR.js +315 -0
- package/dist/commands/chunk-HUCOQ4PI.js +161 -0
- package/dist/commands/chunk-HXAVYXUS.js +307 -0
- package/dist/commands/chunk-HXM26K3O.js +67 -0
- package/dist/commands/chunk-HYQ5Q6AE.js +304 -0
- package/dist/commands/chunk-HYVAEK6M.js +155 -0
- package/dist/commands/chunk-I2HHXZVG.js +46 -0
- package/dist/commands/chunk-I2RBOH4F.js +469 -0
- package/dist/commands/chunk-I36PDO6I.js +258 -0
- package/dist/commands/chunk-IAA73DWD.js +212 -0
- package/dist/commands/chunk-IBOCPSPK.js +103 -0
- package/dist/commands/chunk-IC5XLIE2.js +68 -0
- package/dist/commands/chunk-ICKP5W3Q.js +41 -0
- package/dist/commands/chunk-IHQHHNYR.js +1314 -0
- package/dist/commands/chunk-ILQU26IF.js +408 -0
- package/dist/commands/chunk-INOXSDDC.js +7712 -0
- package/dist/commands/chunk-IQMMYORJ.js +554 -0
- package/dist/commands/chunk-ISNZX75X.js +168 -0
- package/dist/commands/chunk-ISY5TFYT.js +80 -0
- package/dist/commands/chunk-IT2O5MOW.js +37 -0
- package/dist/commands/chunk-IV6ETHVB.js +155 -0
- package/dist/commands/chunk-IZPMBGAI.js +202 -0
- package/dist/commands/chunk-J56TYLAL.js +77 -0
- package/dist/commands/chunk-JGC4B5JR.js +94 -0
- package/dist/commands/chunk-JKPYLZ6T.js +198 -0
- package/dist/commands/chunk-JM3EJYA3.js +65 -0
- package/dist/commands/chunk-JN7IG7HT.js +426 -0
- package/dist/commands/chunk-JSJS3OT7.js +679 -0
- package/dist/commands/chunk-JUQN3OXG.js +351 -0
- package/dist/commands/chunk-JUXKVN77.js +100 -0
- package/dist/commands/chunk-JZZURWZH.js +33 -0
- package/dist/commands/chunk-K2FXMBIU.js +95 -0
- package/dist/commands/chunk-K2VIKG5M.js +34 -0
- package/dist/commands/chunk-K3LHBJDY.js +1223 -0
- package/dist/commands/chunk-K3TPIV56.js +480 -0
- package/dist/commands/chunk-K6QAQSCJ.js +98 -0
- package/dist/commands/chunk-KJ2ZIDQP.js +92 -0
- package/dist/commands/chunk-KMED24C4.js +459 -0
- package/dist/commands/chunk-KMVJKK43.js +88 -0
- package/dist/commands/chunk-KXZR7UAE.js +302 -0
- package/dist/commands/chunk-L7GYJHDX.js +223 -0
- package/dist/commands/chunk-LAQZJX5C.js +49 -0
- package/dist/commands/chunk-LAUKNN57.js +530 -0
- package/dist/commands/chunk-LDYDRXOY.js +88 -0
- package/dist/commands/chunk-LZNACCHR.js +174 -0
- package/dist/commands/chunk-MEJ2CQK2.js +102 -0
- package/dist/commands/chunk-MHTKSRAH.js +278 -0
- package/dist/commands/chunk-MI4NHZWO.js +65 -0
- package/dist/commands/chunk-MIDWHXJZ.js +46 -0
- package/dist/commands/chunk-MIZLGSHI.js +419 -0
- package/dist/commands/chunk-MKIHWQ65.js +218 -0
- package/dist/commands/chunk-MOAPWO34.js +292 -0
- package/dist/commands/chunk-MOLXF5KO.js +51 -0
- package/dist/commands/chunk-MQNKIKJ6.js +288 -0
- package/dist/commands/chunk-MT6TRLFD.js +91 -0
- package/dist/commands/chunk-MTPFNRYF.js +213 -0
- package/dist/commands/chunk-N2EE7MMH.js +305 -0
- package/dist/commands/chunk-N5FT5LYP.js +272 -0
- package/dist/commands/chunk-N5YPDLZM.js +114 -0
- package/dist/commands/chunk-NASUAXRJ.js +45 -0
- package/dist/commands/chunk-NAZ753DE.js +540 -0
- package/dist/commands/chunk-NDPR5U4U.js +897 -0
- package/dist/commands/chunk-NFRDCRDI.js +285 -0
- package/dist/commands/chunk-NHXMWRBI.js +16 -0
- package/dist/commands/chunk-NMG65AFQ.js +20 -0
- package/dist/commands/chunk-NQ4D2XZY.js +213 -0
- package/dist/commands/chunk-NQFQVSHV.js +56 -0
- package/dist/commands/chunk-NR4BD5DD.js +38 -0
- package/dist/commands/chunk-NV6Y4U37.js +338 -0
- package/dist/commands/chunk-NWMY2QJJ.js +133 -0
- package/dist/commands/chunk-NXWVWI4U.js +1062 -0
- package/dist/commands/chunk-NZ2UKIY5.js +445 -0
- package/dist/commands/chunk-OB3WF3DW.js +24 -0
- package/dist/commands/chunk-OBMXXG5D.js +181 -0
- package/dist/commands/chunk-OHZ6GLEJ.js +74 -0
- package/dist/commands/chunk-OJO5AADO.js +322 -0
- package/dist/commands/chunk-ORFXTHXU.js +108 -0
- package/dist/commands/chunk-OTCWA4QE.js +910 -0
- package/dist/commands/chunk-OYGNL5RO.js +290 -0
- package/dist/commands/chunk-OYZP5ANC.js +48 -0
- package/dist/commands/chunk-P35FFJXA.js +73 -0
- package/dist/commands/chunk-P3UODIMZ.js +272 -0
- package/dist/commands/chunk-PF2HZHJG.js +94 -0
- package/dist/commands/chunk-PIAVFPYB.js +52 -0
- package/dist/commands/chunk-PLE3MBGO.js +85 -0
- package/dist/commands/chunk-PM3YCN46.js +39 -0
- package/dist/commands/chunk-PMC2N6JK.js +91 -0
- package/dist/commands/chunk-PTJ6X3QK.js +330 -0
- package/dist/commands/chunk-PTRK3NBC.js +211 -0
- package/dist/commands/chunk-Q2VV3WT7.js +120 -0
- package/dist/commands/chunk-Q67SPFHV.js +44 -0
- package/dist/commands/chunk-Q7GMTDMG.js +44 -0
- package/dist/commands/chunk-QA44M56F.js +333 -0
- package/dist/commands/chunk-QDUWBRQC.js +61 -0
- package/dist/commands/chunk-QGTLTPXT.js +58 -0
- package/dist/commands/chunk-QHWQJCV5.js +250 -0
- package/dist/commands/chunk-QI72D6NY.js +54 -0
- package/dist/commands/chunk-QN3FWRDW.js +122 -0
- package/dist/commands/chunk-QQ2JKDSV.js +144 -0
- package/dist/commands/chunk-QRY55H5U.js +48 -0
- package/dist/commands/chunk-QUO5B2JH.js +260 -0
- package/dist/commands/chunk-QY7RITZQ.js +99 -0
- package/dist/commands/chunk-R4GZWGIN.js +160 -0
- package/dist/commands/chunk-RETTGONB.js +84 -0
- package/dist/commands/chunk-RH4LJ4D6.js +69 -0
- package/dist/commands/chunk-RKCENL5P.js +271 -0
- package/dist/commands/chunk-RLWK2CP3.js +82 -0
- package/dist/commands/chunk-RMDQQKXD.js +179 -0
- package/dist/commands/chunk-RRNC3QEB.js +449 -0
- package/dist/commands/chunk-RUCV7UYK.js +341 -0
- package/dist/commands/chunk-RVFE7JDZ.js +126 -0
- package/dist/commands/chunk-RVKFX3FD.js +70 -0
- package/dist/commands/chunk-RW7OILP7.js +71 -0
- package/dist/commands/chunk-S23MUFND.js +122 -0
- package/dist/commands/chunk-S3DRNZRT.js +74 -0
- package/dist/commands/chunk-SB3R6E3R.js +49 -0
- package/dist/commands/chunk-SCCUBRDO.js +237 -0
- package/dist/commands/chunk-SIPHEZXP.js +72 -0
- package/dist/commands/chunk-SK3GDQOI.js +20 -0
- package/dist/commands/chunk-SNXSRNFI.js +1052 -0
- package/dist/commands/chunk-SWHN7TNT.js +59 -0
- package/dist/commands/chunk-T5D3BW3D.js +85 -0
- package/dist/commands/chunk-T76CS2AQ.js +307 -0
- package/dist/commands/chunk-TBIX42IT.js +144 -0
- package/dist/commands/chunk-TGCIRQG5.js +109 -0
- package/dist/commands/chunk-TJAGKUS2.js +84 -0
- package/dist/commands/chunk-TKRUZZXG.js +103 -0
- package/dist/commands/chunk-TLCFZAL4.js +63 -0
- package/dist/commands/chunk-TNPFVNKX.js +585 -0
- package/dist/commands/chunk-TNU3IEAP.js +151 -0
- package/dist/commands/chunk-TQ6M5ICK.js +49 -0
- package/dist/commands/chunk-TR6NTNWR.js +128 -0
- package/dist/commands/chunk-TSS2RKBC.js +271 -0
- package/dist/commands/chunk-TWI7UTVE.js +799 -0
- package/dist/commands/chunk-TXXEXJAV.js +390 -0
- package/dist/commands/chunk-U6SMBYTN.js +472 -0
- package/dist/commands/chunk-U7JJGYYY.js +30 -0
- package/dist/commands/chunk-UACWDTJ5.js +106 -0
- package/dist/commands/chunk-UBWYGOEC.js +86 -0
- package/dist/commands/chunk-UC5ZOPKX.js +3983 -0
- package/dist/commands/chunk-UJFEMO6X.js +153 -0
- package/dist/commands/chunk-ULL3OIAG.js +59 -0
- package/dist/commands/chunk-UN6BPKQ5.js +922 -0
- package/dist/commands/chunk-UW3KES66.js +32 -0
- package/dist/commands/chunk-UWLANGIR.js +817 -0
- package/dist/commands/chunk-UYHREBT7.js +99 -0
- package/dist/commands/chunk-V2KHY4UQ.js +393 -0
- package/dist/commands/chunk-V36OV7AP.js +191 -0
- package/dist/commands/chunk-V37AWEYE.js +62 -0
- package/dist/commands/chunk-V4D4YV4B.js +110 -0
- package/dist/commands/chunk-V56NLG7I.js +217 -0
- package/dist/commands/chunk-V6WHDQAZ.js +74 -0
- package/dist/commands/chunk-V6WWW6HX.js +140 -0
- package/dist/commands/chunk-V7QOC5NV.js +51 -0
- package/dist/commands/chunk-VA4M733Q.js +127 -0
- package/dist/commands/chunk-VBZ47BVH.js +64 -0
- package/dist/commands/chunk-VD4ELMDA.js +158 -0
- package/dist/commands/chunk-VFW6XZH7.js +469 -0
- package/dist/commands/chunk-VHSGVCRM.js +244 -0
- package/dist/commands/chunk-VJNE7W7O.js +1153 -0
- package/dist/commands/chunk-VLDPUHGE.js +134 -0
- package/dist/commands/chunk-VMMNYTET.js +61 -0
- package/dist/commands/chunk-VO2GSW5P.js +99 -0
- package/dist/commands/chunk-VP3P7FLJ.js +168 -0
- package/dist/commands/chunk-VRS252GW.js +88 -0
- package/dist/commands/chunk-VWNVKWLV.js +298 -0
- package/dist/commands/chunk-VXWGPQJX.js +140 -0
- package/dist/commands/chunk-W4R6ZBLO.js +197 -0
- package/dist/commands/chunk-WE2UMZXX.js +47 -0
- package/dist/commands/chunk-WEEJU3EH.js +109 -0
- package/dist/commands/chunk-WHXGUOYP.js +48 -0
- package/dist/commands/chunk-WHYYBPIC.js +113 -0
- package/dist/commands/chunk-WKXMY7MW.js +84 -0
- package/dist/commands/chunk-WPSCCUTE.js +119 -0
- package/dist/commands/chunk-WQ3O7IKL.js +289 -0
- package/dist/commands/chunk-WSTNBBR3.js +22 -0
- package/dist/commands/chunk-WX3HQXBK.js +124 -0
- package/dist/commands/chunk-WYAY6CQI.js +541 -0
- package/dist/commands/chunk-XBXY3R4K.js +74 -0
- package/dist/commands/chunk-XDWCF4XH.js +347 -0
- package/dist/commands/chunk-XHLSJPV7.js +69 -0
- package/dist/commands/chunk-XHR7O2DE.js +52 -0
- package/dist/commands/chunk-XIV3UDHV.js +119 -0
- package/dist/commands/chunk-XMNPU3J5.js +469 -0
- package/dist/commands/chunk-XMZJB7JP.js +100 -0
- package/dist/commands/chunk-XO7S2BTY.js +365 -0
- package/dist/commands/chunk-XQDG56LP.js +47 -0
- package/dist/commands/chunk-XSBLCTDI.js +143 -0
- package/dist/commands/chunk-XT3W32DO.js +977 -0
- package/dist/commands/chunk-XUA7QZET.js +1263 -0
- package/dist/commands/chunk-XZQHP4JR.js +145 -0
- package/dist/commands/chunk-YDVFQL3G.js +23 -0
- package/dist/commands/chunk-YFD46GB2.js +45 -0
- package/dist/commands/chunk-YJMOFRL7.js +269 -0
- package/dist/commands/chunk-YPCMBQYP.js +88 -0
- package/dist/commands/chunk-YR5RS4YT.js +38 -0
- package/dist/commands/chunk-YSBLGTDZ.js +339 -0
- package/dist/commands/chunk-YSDBY2G7.js +186 -0
- package/dist/commands/chunk-YSL43R4Y.js +149 -0
- package/dist/commands/chunk-YUAIWKOM.js +132 -0
- package/dist/commands/chunk-YVNYX4UA.js +74 -0
- package/dist/commands/chunk-Z2GZIWAU.js +33 -0
- package/dist/commands/chunk-Z3XNSXQH.js +47 -0
- package/dist/commands/chunk-Z4E7V7YJ.js +18 -0
- package/dist/commands/chunk-Z7C2O5JC.js +299 -0
- package/dist/commands/chunk-Z7R6JWN7.js +1077 -0
- package/dist/commands/chunk-ZB25RO3U.js +208 -0
- package/dist/commands/chunk-ZBRUCKLP.js +133 -0
- package/dist/commands/chunk-ZCWBZOBM.js +61 -0
- package/dist/commands/chunk-ZDP6SKBK.js +246 -0
- package/dist/commands/chunk-ZEVI2ZGI.js +145 -0
- package/dist/commands/chunk-ZF3SZQRJ.js +44 -0
- package/dist/commands/chunk-ZHEUK3ZX.js +16 -0
- package/dist/commands/chunk-ZJ5C6KVM.js +1072 -0
- package/dist/commands/chunk-ZMDHJ6QF.js +42 -0
- package/dist/commands/chunk-ZMS3EFW3.js +1250 -0
- package/dist/commands/chunk-ZMWL7LZM.js +210 -0
- package/dist/commands/chunk-ZNFVJETO.js +263 -0
- package/dist/commands/chunk-ZQEKIMBV.js +82 -0
- package/dist/commands/chunk-ZW6DLYS4.js +646 -0
- package/dist/commands/ci-timing-cli.js +10 -10
- package/dist/commands/code-symbol-cli.js +11 -11
- package/dist/commands/codex-hook-adapter.js +105 -106
- package/dist/commands/command-derive.js +5 -5
- package/dist/commands/cost-audit-main.js +139 -99
- package/dist/commands/cspell-cached.js +38 -37
- package/dist/commands/defect-origin-main.js +32 -32
- package/dist/commands/defect-report-main.js +29 -29
- package/dist/commands/diff-summary-cli.js +3 -3
- package/dist/commands/disposition-cli.js +108 -96
- package/dist/commands/doctor.js +13 -13
- package/dist/commands/document-read-cli.js +35 -35
- package/dist/commands/document-section-main.js +35 -35
- package/dist/commands/dogfood-commit-cli.js +11 -11
- package/dist/commands/effect-audit-cli.js +41 -35
- package/dist/commands/epic-audit-main.js +77 -76
- package/dist/commands/epic-bundle-main.js +167 -111
- package/dist/commands/epic-check.js +29 -29
- package/dist/commands/epic-main.js +170 -117
- package/dist/commands/epic-next-main.js +73 -72
- package/dist/commands/format-edited-cli.js +43 -43
- package/dist/commands/format.js +21 -21
- package/dist/commands/fresh-machine-cli.js +9 -9
- package/dist/commands/gh-usage-cli.js +13 -13
- package/dist/commands/git-followup-workflow.js +130 -130
- package/dist/commands/git-gh-checks-failed-main.js +16 -16
- package/dist/commands/git-workflow.js +47 -47
- package/dist/commands/hook-ledger-cli.js +113 -74
- package/dist/commands/init-main.js +28 -28
- package/dist/commands/inputs.json +2011 -2001
- package/dist/commands/issue-ack-cli.js +17 -17
- package/dist/commands/issue-already-done-cli.js +88 -87
- package/dist/commands/issue-body-cli.js +78 -64
- package/dist/commands/issue-cite-main.js +26 -26
- package/dist/commands/issue-comment-main.js +29 -29
- package/dist/commands/issue-consolidate-cli.js +43 -43
- package/dist/commands/issue-file-main.js +181 -133
- package/dist/commands/issue-fold-existing-cli.js +169 -113
- package/dist/commands/issue-fold-main.js +44 -43
- package/dist/commands/issue-lint-main.js +55 -54
- package/dist/commands/issue-measured-cli.js +91 -90
- package/dist/commands/issue-plan-cli.js +136 -135
- package/dist/commands/issue-premise-unmet-cli.js +91 -90
- package/dist/commands/issue-priority-cli.js +28 -28
- package/dist/commands/issue-read-main.js +30 -30
- package/dist/commands/issue-release-class-cli.js +26 -26
- package/dist/commands/issue-release-main.js +28 -28
- package/dist/commands/issue-scout-main.js +168 -112
- package/dist/commands/issue-spill-main.js +194 -135
- package/dist/commands/issue-state-main.js +28 -28
- package/dist/commands/issue-tick-cli.js +28 -28
- package/dist/commands/josh-completion.js +12 -12
- package/dist/commands/lane-adopt-cli.js +38 -37
- package/dist/commands/lane-breakdown-cli.js +176 -166
- package/dist/commands/lane-cli.js +163 -163
- package/dist/commands/lane-launch-main.js +71 -70
- package/dist/commands/lane-limit-cli.js +162 -106
- package/dist/commands/lane-measure-cli.js +386 -254
- package/dist/commands/lane-pause-cli.js +33 -32
- package/dist/commands/lane-plan-cli.js +134 -133
- package/dist/commands/lane-resolve-cli.js +35 -35
- package/dist/commands/lane-restart-cli.js +157 -157
- package/dist/commands/lane-why-cli.js +131 -102
- package/dist/commands/lane-withdraw-cli.js +66 -65
- package/dist/commands/latest-if-required-cli.js +5 -5
- package/dist/commands/lines-command.js +3 -3
- package/dist/commands/lint-parallel-main.js +47 -46
- package/dist/commands/lint-related.js +86 -86
- package/dist/commands/lint-rule.js +46 -45
- package/dist/commands/lockfile-policy.js +18 -18
- package/dist/commands/main-merge-main.js +12 -12
- package/dist/commands/main-sync-main.js +12 -12
- package/dist/commands/managed-config-scope-cli.js +7 -7
- package/dist/commands/measure-rerun-cli.js +23 -23
- package/dist/commands/metrics-command.js +67 -67
- package/dist/commands/observation-record-cli.js +13 -13
- package/dist/commands/observations-flush-cli.js +41 -41
- package/dist/commands/package-scout-cli.js +52 -52
- package/dist/commands/pin-verify-cli.js +9 -9
- package/dist/commands/plan-consumers-main.js +6 -6
- package/dist/commands/plan-scaffold-cli.js +125 -125
- package/dist/commands/pr-classification-main.js +12 -12
- package/dist/commands/pre-commit-lint.js +14 -15
- package/dist/commands/pre-commit-type-check.js +46 -46
- package/dist/commands/pre-push-unit.js +51 -52
- package/dist/commands/pretool-guard-cli.js +94 -94
- package/dist/commands/prevent-main-commit.js +2 -2
- package/dist/commands/project-profile-cli.js +13 -13
- package/dist/commands/propagate.js +22 -22
- package/dist/commands/prose-stale-cli.js +32 -32
- package/dist/commands/read-set-cli.js +39 -39
- package/dist/commands/refactor-scan-cli.js +5 -5
- package/dist/commands/release-cli.js +95 -43
- package/dist/commands/release-scope-main.js +34 -34
- package/dist/commands/rename-cli.js +39 -38
- package/dist/commands/report-template-cli.js +3 -3
- package/dist/commands/reserved-run.js +10 -10
- package/dist/commands/retrospective-cli.js +141 -102
- package/dist/commands/review-attest-cli.js +19 -19
- package/dist/commands/review-brief-main.js +159 -159
- package/dist/commands/review-findings-cli.js +12 -12
- package/dist/commands/review-pair-cli.js +145 -145
- package/dist/commands/review-record-main.js +145 -145
- package/dist/commands/review-round2-cli.js +66 -65
- package/dist/commands/review-stops-cli.js +35 -34
- package/dist/commands/review-submit-cli.js +159 -159
- package/dist/commands/rule-list.js +59 -59
- package/dist/commands/rule-value-cli.js +129 -93
- package/dist/commands/ruleset-check-cli.js +12 -12
- package/dist/commands/run-add-cli.js +61 -61
- package/dist/commands/run-board-main.js +197 -156
- package/dist/commands/run-carry-cli.js +182 -150
- package/dist/commands/run-chain-cli.js +153 -153
- package/dist/commands/run-cut-cli.js +160 -160
- package/dist/commands/run-ending-cli.js +34 -34
- package/dist/commands/run-entry-cli.js +210 -201
- package/dist/commands/run-event-cli.js +9 -8
- package/dist/commands/run-handoff-cli.js +50 -50
- package/dist/commands/run-handoff-lanes-cli.js +34 -33
- package/dist/commands/run-hold-main.js +87 -86
- package/dist/commands/run-liveness-cli.js +31 -30
- package/dist/commands/run-merge-main.js +171 -139
- package/dist/commands/run-next-cli.js +110 -110
- package/dist/commands/run-park-cli.js +109 -109
- package/dist/commands/run-pause-cli.js +189 -165
- package/dist/commands/run-pickup-cli.js +34 -33
- package/dist/commands/run-prep-main.js +106 -106
- package/dist/commands/run-prime-cli.js +136 -136
- package/dist/commands/run-progress-main.js +174 -127
- package/dist/commands/run-report-cli.js +45 -44
- package/dist/commands/run-review-cli.js +188 -188
- package/dist/commands/run-ship-cli.js +239 -234
- package/dist/commands/run-ship-evidence-cli.js +53 -54
- package/dist/commands/run-ship-lap-DGUAMCPY.js +28 -0
- package/dist/commands/run-ship-wait-main.js +64 -63
- package/dist/commands/run-split-cli.js +183 -156
- package/dist/commands/run-stale-main.js +55 -54
- package/dist/commands/run-status-cli.js +28 -28
- package/dist/commands/run-step-cli.js +192 -190
- package/dist/commands/run-tail-cli.js +9 -9
- package/dist/commands/run-tidy-main.js +53 -52
- package/dist/commands/run-wake-main.js +178 -178
- package/dist/commands/run-watcher-guard-cli.js +51 -50
- package/dist/commands/security-audit-main.js +8 -8
- package/dist/commands/security-audit-provision-main.js +5 -5
- package/dist/commands/selfcheck-cli.js +47 -47
- package/dist/commands/session-language-main.js +51 -51
- package/dist/commands/sonar-hotspots-cli.js +5 -5
- package/dist/commands/sonar-new-code-cli.js +3 -3
- package/dist/commands/split-assess-cli.js +42 -41
- package/dist/commands/split-child-recover-cli.js +28 -28
- package/dist/commands/start.js +53 -53
- package/dist/commands/stash-pop-main.js +3 -3
- package/dist/commands/stash-push-main.js +4 -4
- package/dist/commands/stop-guard.js +183 -159
- package/dist/commands/sync-main.js +18 -18
- package/dist/commands/telegram-test-main.js +20 -20
- package/dist/commands/test-declared.js +15 -15
- package/dist/commands/test-e2e-guard.js +41 -41
- package/dist/commands/test-pinned-main.js +43 -43
- package/dist/commands/test-reach-cli.js +27 -27
- package/dist/commands/test-red-main.js +12 -12
- package/dist/commands/test-related-UHUIUC7X.js +112 -0
- package/dist/commands/test-related-main.js +75 -76
- package/dist/commands/test-unit-guard-main.js +21 -21
- package/dist/commands/time-cli.js +34 -34
- package/dist/commands/time-density-cli.js +13 -12
- package/dist/commands/tree-status-cli.js +4 -4
- package/dist/commands/type-check-command.js +14 -14
- package/dist/commands/ui-routes-cli.js +4 -4
- package/dist/commands/uninstall.js +30 -30
- package/dist/commands/unused-members-LOSERD3C.js +329 -0
- package/dist/commands/unused-members-cli.js +15 -15
- package/dist/commands/upstream-interrupt-main.js +183 -136
- package/dist/commands/verification-gate.js +71 -72
- package/dist/commands/version-check.js +12 -12
- package/dist/hooks/audit-provision.js +4 -4
- package/dist/hooks/chunk-2R62D5UU.js +12 -0
- package/dist/hooks/chunk-3J5M7SXZ.js +1059 -0
- package/dist/hooks/chunk-4UAA2YFC.js +258 -0
- package/dist/hooks/chunk-74D3EJGW.js +5204 -0
- package/dist/hooks/chunk-74FYAI2L.js +43 -0
- package/dist/hooks/chunk-ALY5AW75.js +1953 -0
- package/dist/hooks/chunk-FBDC6KVJ.js +77 -0
- package/dist/hooks/chunk-HKUR6WKR.js +6874 -0
- package/dist/hooks/chunk-NFTDYUN3.js +1915 -0
- package/dist/hooks/chunk-NP6BVTR3.js +9176 -0
- package/dist/hooks/chunk-OOEG63LD.js +321 -0
- package/dist/hooks/chunk-RWVA2SFN.js +28584 -0
- package/dist/hooks/chunk-U55QDXSC.js +32 -0
- package/dist/hooks/chunk-VWZOPSZX.js +5092 -0
- package/dist/hooks/chunk-Z6W64J64.js +11254 -0
- package/dist/hooks/codex-hook-adapter.js +12 -12
- package/dist/hooks/daemon.js +112 -40
- package/dist/hooks/format-edited.js +7 -7
- package/dist/hooks/inputs.json +612 -556
- package/dist/hooks/pretool-guard.js +10 -10
- package/dist/hooks/run-ship-lap-XDLXQIS3.js +8 -0
- package/dist/hooks/session-lang.js +7 -7
- package/dist/hooks/stop-guard.js +8396 -4497
- package/dist/inputs.json +76 -76
- package/dist/josh.js +31 -15
- package/dist/registry-migrate.mjs +32 -8
- package/dist/version/index.js +48 -19
- package/package.json +1 -1
- package/prompts/collaboration-workflow/issue-template.en.md +5 -0
- package/prompts/collaboration-workflow/issue-template.md +14 -1
- package/scripts/backlog/backlog-drive-cli.ts +2 -1
- package/scripts/backlog/backlog-drive-listing.ts +20 -6
- package/scripts/backlog/backlog-hold-text.ts +1 -0
- package/scripts/backlog/backlog-listing-trace.ts +35 -0
- package/scripts/backlog/backlog-offer-timing.ts +10 -2
- package/scripts/backlog/backlog-wait-cause.ts +10 -2
- package/scripts/document/document-byte-budget.ts +2 -2
- package/scripts/git/git-command.ts +7 -3
- package/scripts/git/git-pre-push-hook.ts +9 -5
- package/scripts/git/git-spawn.ts +20 -4
- package/scripts/hooks/implementation-shell-deny-git.ts +17 -3
- package/scripts/hooks/pre-push-related-switch.ts +3 -2
- package/scripts/hooks/pre-push-unit.ts +3 -1
- package/scripts/issue/effect-audit.ts +7 -0
- package/scripts/issue/issue-body-cli.ts +18 -2
- package/scripts/issue/issue-body-keys.ts +1 -0
- package/scripts/issue/issue-file-pass.ts +1 -0
- package/scripts/issue/issue-lint-cli.ts +16 -2
- package/scripts/issue/issue-lint.ts +16 -0
- package/scripts/issue/issue-publication-state.ts +82 -6
- package/scripts/issue/issue-spill.ts +18 -4
- package/scripts/issue/issue-template-section.ts +7 -1
- package/scripts/josh/josh-commands-ai.ts +3 -2
- package/scripts/lane/lane-chain-stop-stats.ts +19 -7
- package/scripts/lane/lane-concurrency-stats.ts +39 -14
- package/scripts/lane/lane-concurrency-wait.ts +64 -0
- package/scripts/lane/lane-core-wait-stats.ts +13 -4
- package/scripts/lane/lane-implement-read-calls.ts +123 -0
- package/scripts/lane/lane-implement-read.ts +8 -3
- package/scripts/lane/lane-implement-stats.ts +33 -6
- package/scripts/lane/lane-ledger-schema-ship.ts +17 -3
- package/scripts/lane/lane-measure-cli.ts +5 -3
- package/scripts/lane/lane-plan-size.ts +1 -1
- package/scripts/lane/lane-size-record.ts +4 -3
- package/scripts/lane/lane-size-stats.ts +21 -9
- package/scripts/lane/lane-stats-request.ts +12 -3
- package/scripts/lane/lane-stats-tables.ts +30 -9
- package/scripts/lane/lane-stop-stats.ts +10 -1
- package/scripts/lane/lane-table-rows.ts +26 -0
- package/scripts/lib/timeouts.ts +4 -3
- package/scripts/registry-migration/migrate-lock.ts +40 -8
- package/scripts/registry-migration/migrate.ts +6 -3
- package/scripts/release/release-publish.ts +23 -3
- package/scripts/release/release-step-time.ts +61 -0
- package/scripts/review/disposition-batch-filing.ts +13 -0
- package/scripts/rules/git-argv.ts +10 -3
- package/scripts/run/board/run-board-closed-pace.ts +76 -0
- package/scripts/run/board/run-board-github.ts +17 -28
- package/scripts/run/board/run-board-labels.ts +5 -2
- package/scripts/run/board/run-board-reason.ts +10 -0
- package/scripts/run/entry/run-entry-sync.ts +17 -5
- package/scripts/run/hold/run-hold-cli.ts +8 -2
- package/scripts/run/merge/run-merge-health.ts +9 -2
- package/scripts/run/review/run-review-pinned-accepted.ts +24 -1
- package/scripts/run/run-preflight.ts +81 -17
- package/scripts/run/ship/run-ship-pre-detach-pinned.ts +14 -9
- package/scripts/run/ship/run-ship-pre-detach.ts +16 -7
- package/scripts/run/ship/run-ship-stop-cause.ts +13 -2
- package/scripts/run/ship/run-ship.ts +7 -1
- package/scripts/split/split-assess.ts +7 -22
- package/scripts/split/split-cap.ts +31 -0
- package/scripts/test/direct-importers.ts +46 -3
- package/scripts/test/lockfile-changed-packages.ts +155 -0
- package/scripts/test/package-version-only.ts +30 -0
- package/scripts/test/pure-files-entries.ts +1 -27
- package/scripts/test/test-related-scope.ts +30 -5
- package/scripts/test/test-related.ts +3 -3
- package/scripts/test/test-unit-guard.ts +9 -9
- package/scripts/test/unit-worker-share.ts +21 -0
- package/scripts/test/whole-suite-files.ts +23 -2
- package/scripts/test/whole-suite-narrowing.ts +108 -0
- package/dist/commands/chunk-26JL4UU4.js +0 -365
- package/dist/commands/chunk-2BC33QPY.js +0 -183
- package/dist/commands/chunk-2BIVHPCA.js +0 -85
- package/dist/commands/chunk-2CKJODCK.js +0 -245
- package/dist/commands/chunk-2CNVIA35.js +0 -335
- package/dist/commands/chunk-2E6PSONB.js +0 -46
- package/dist/commands/chunk-2GA4775H.js +0 -77
- package/dist/commands/chunk-2O64H5UJ.js +0 -462
- package/dist/commands/chunk-2OEXY4GM.js +0 -252
- package/dist/commands/chunk-2ONSHOAY.js +0 -46
- package/dist/commands/chunk-2SA3W4JF.js +0 -41
- package/dist/commands/chunk-2VY7CJ2R.js +0 -212
- package/dist/commands/chunk-2WRDAQPJ.js +0 -74
- package/dist/commands/chunk-2XLR7R6E.js +0 -541
- package/dist/commands/chunk-34JJYCIY.js +0 -117
- package/dist/commands/chunk-36XHHYNU.js +0 -158
- package/dist/commands/chunk-3CJNQU7P.js +0 -179
- package/dist/commands/chunk-3D5T6KMW.js +0 -59
- package/dist/commands/chunk-3EW5LTN3.js +0 -114
- package/dist/commands/chunk-3F3RNIG2.js +0 -128
- package/dist/commands/chunk-3FLTEJZY.js +0 -74
- package/dist/commands/chunk-3JWPTRNI.js +0 -60
- package/dist/commands/chunk-3LUPGBW4.js +0 -137
- package/dist/commands/chunk-3PCUERXE.js +0 -19
- package/dist/commands/chunk-3U6A5WON.js +0 -173
- package/dist/commands/chunk-3VLDFM5I.js +0 -426
- package/dist/commands/chunk-3YT3RCSI.js +0 -140
- package/dist/commands/chunk-43DU7DYZ.js +0 -540
- package/dist/commands/chunk-43H725LG.js +0 -132
- package/dist/commands/chunk-46STCE6Q.js +0 -48
- package/dist/commands/chunk-46WEC6HZ.js +0 -82
- package/dist/commands/chunk-47J4KOZP.js +0 -46
- package/dist/commands/chunk-47W7PF4T.js +0 -22
- package/dist/commands/chunk-4F4KARQN.js +0 -229
- package/dist/commands/chunk-4HB7NWXP.js +0 -263
- package/dist/commands/chunk-4I5AA4P5.js +0 -237
- package/dist/commands/chunk-4IDINPBE.js +0 -525
- package/dist/commands/chunk-4NSIW3UB.js +0 -104
- package/dist/commands/chunk-4YTKV6WV.js +0 -37
- package/dist/commands/chunk-5ARNFMQK.js +0 -1263
- package/dist/commands/chunk-5AZTSESD.js +0 -114
- package/dist/commands/chunk-5FUI2MLY.js +0 -89
- package/dist/commands/chunk-5IHEBIPD.js +0 -333
- package/dist/commands/chunk-5KAW5GPF.js +0 -44
- package/dist/commands/chunk-5KSJEWXR.js +0 -77
- package/dist/commands/chunk-5PCK53WP.js +0 -168
- package/dist/commands/chunk-5PPWXOCF.js +0 -64
- package/dist/commands/chunk-5Y7FOJLX.js +0 -186
- package/dist/commands/chunk-5YTEMF4O.js +0 -110
- package/dist/commands/chunk-6AHAY5VZ.js +0 -69
- package/dist/commands/chunk-6FN37DER.js +0 -330
- package/dist/commands/chunk-6JD4VNO4.js +0 -124
- package/dist/commands/chunk-6KUA7MRG.js +0 -64
- package/dist/commands/chunk-6LDEZFYR.js +0 -88
- package/dist/commands/chunk-6NXIZMIK.js +0 -122
- package/dist/commands/chunk-6O45F6YI.js +0 -86
- package/dist/commands/chunk-6OHJBQDE.js +0 -184
- package/dist/commands/chunk-6TIVDEKG.js +0 -34
- package/dist/commands/chunk-6WDCCG3M.js +0 -1249
- package/dist/commands/chunk-6ZHXEQAI.js +0 -715
- package/dist/commands/chunk-736NECRD.js +0 -16
- package/dist/commands/chunk-77LEKVEE.js +0 -32
- package/dist/commands/chunk-7DGHFBU7.js +0 -247
- package/dist/commands/chunk-7EAYFMDN.js +0 -235
- package/dist/commands/chunk-7HYYHCTN.js +0 -402
- package/dist/commands/chunk-7JOOMFDI.js +0 -155
- package/dist/commands/chunk-7K5ITPHR.js +0 -338
- package/dist/commands/chunk-7OEBSPPU.js +0 -321
- package/dist/commands/chunk-7ULYLGUK.js +0 -492
- package/dist/commands/chunk-A3JYZWBS.js +0 -803
- package/dist/commands/chunk-A3LCN4KA.js +0 -84
- package/dist/commands/chunk-ABLXBG6C.js +0 -98
- package/dist/commands/chunk-ABM2MZBF.js +0 -161
- package/dist/commands/chunk-AN7BFVHU.js +0 -244
- package/dist/commands/chunk-AQCVEQSM.js +0 -99
- package/dist/commands/chunk-AU563VKH.js +0 -75
- package/dist/commands/chunk-AUTD5FV2.js +0 -1077
- package/dist/commands/chunk-AV26CMY6.js +0 -304
- package/dist/commands/chunk-B2PJEV3S.js +0 -246
- package/dist/commands/chunk-B545ENGY.js +0 -214
- package/dist/commands/chunk-B5HP6T4L.js +0 -170
- package/dist/commands/chunk-B73IIRMS.js +0 -207
- package/dist/commands/chunk-BBLEC4YQ.js +0 -109
- package/dist/commands/chunk-BDSG6JKH.js +0 -977
- package/dist/commands/chunk-BFKTUD3V.js +0 -33
- package/dist/commands/chunk-BLRXHK2V.js +0 -17
- package/dist/commands/chunk-BML6MEUB.js +0 -326
- package/dist/commands/chunk-BMM4RHCG.js +0 -69
- package/dist/commands/chunk-BPDNGJXY.js +0 -63
- package/dist/commands/chunk-BQLKWGGC.js +0 -118
- package/dist/commands/chunk-BRMJVCP7.js +0 -167
- package/dist/commands/chunk-BRWR5YKU.js +0 -268
- package/dist/commands/chunk-BUZAYEBD.js +0 -319
- package/dist/commands/chunk-C7FGDZWP.js +0 -224
- package/dist/commands/chunk-CC4BIGCA.js +0 -20
- package/dist/commands/chunk-CCHJZEF5.js +0 -4220
- package/dist/commands/chunk-CDK7QZWG.js +0 -44
- package/dist/commands/chunk-CDYFUCDC.js +0 -72
- package/dist/commands/chunk-CEADAQIL.js +0 -170
- package/dist/commands/chunk-CNL3SLM6.js +0 -116
- package/dist/commands/chunk-CNQ7D2GZ.js +0 -104
- package/dist/commands/chunk-COGKULQH.js +0 -119
- package/dist/commands/chunk-CQUZ6TNQ.js +0 -120
- package/dist/commands/chunk-CTXJVMHW.js +0 -48
- package/dist/commands/chunk-CUWT6UQO.js +0 -13
- package/dist/commands/chunk-D6CF5QGM.js +0 -80
- package/dist/commands/chunk-DACNQAXC.js +0 -20
- package/dist/commands/chunk-DDOS32JU.js +0 -74
- package/dist/commands/chunk-DF6QD4AF.js +0 -52
- package/dist/commands/chunk-DFEXNB44.js +0 -159
- package/dist/commands/chunk-DHDKG5HZ.js +0 -151
- package/dist/commands/chunk-DHJRFBKO.js +0 -223
- package/dist/commands/chunk-DKO5VTEH.js +0 -65
- package/dist/commands/chunk-DLHH3MLS.js +0 -85
- package/dist/commands/chunk-DOYNK72G.js +0 -81
- package/dist/commands/chunk-DS53UUDH.js +0 -679
- package/dist/commands/chunk-DUA4E4ES.js +0 -230
- package/dist/commands/chunk-DVCMQMRN.js +0 -191
- package/dist/commands/chunk-E3YKMCCJ.js +0 -108
- package/dist/commands/chunk-E4F2RTKC.js +0 -272
- package/dist/commands/chunk-E4PFCTXN.js +0 -127
- package/dist/commands/chunk-EAOTR2WL.js +0 -24
- package/dist/commands/chunk-EHPTXSAT.js +0 -315
- package/dist/commands/chunk-EHVEWJQ4.js +0 -33
- package/dist/commands/chunk-EMFSPPMH.js +0 -98
- package/dist/commands/chunk-EPICTV2P.js +0 -46
- package/dist/commands/chunk-ES42XPAD.js +0 -123
- package/dist/commands/chunk-ESUY7KTZ.js +0 -137
- package/dist/commands/chunk-EVVQJJFV.js +0 -507
- package/dist/commands/chunk-EWXXEGXL.js +0 -149
- package/dist/commands/chunk-F2U46HAE.js +0 -52
- package/dist/commands/chunk-F2VYWU6Z.js +0 -653
- package/dist/commands/chunk-F4SGOTUF.js +0 -36
- package/dist/commands/chunk-F4YMLVWN.js +0 -183
- package/dist/commands/chunk-F57LACNC.js +0 -84
- package/dist/commands/chunk-F5N2QIFD.js +0 -213
- package/dist/commands/chunk-FA7CN75F.js +0 -160
- package/dist/commands/chunk-FDASVHZD.js +0 -241
- package/dist/commands/chunk-FEYZ575X.js +0 -278
- package/dist/commands/chunk-FJM2HWKW.js +0 -299
- package/dist/commands/chunk-FJMXUDEY.js +0 -3985
- package/dist/commands/chunk-FM7VVAK6.js +0 -426
- package/dist/commands/chunk-FQWRM5FC.js +0 -67
- package/dist/commands/chunk-FT33ZCSB.js +0 -298
- package/dist/commands/chunk-FTAWHAI7.js +0 -170
- package/dist/commands/chunk-G2DNS74C.js +0 -53
- package/dist/commands/chunk-G3BBCAAH.js +0 -90
- package/dist/commands/chunk-G6BXCWPH.js +0 -141
- package/dist/commands/chunk-GABDPTDK.js +0 -907
- package/dist/commands/chunk-GAVSK6P6.js +0 -230
- package/dist/commands/chunk-GB2BRQVL.js +0 -300
- package/dist/commands/chunk-GBMZXFFC.js +0 -44
- package/dist/commands/chunk-GGWXF7RJ.js +0 -70
- package/dist/commands/chunk-GHOTKHI4.js +0 -30
- package/dist/commands/chunk-GMVN6ZP2.js +0 -48
- package/dist/commands/chunk-GNTTGRCX.js +0 -133
- package/dist/commands/chunk-GOY5JECO.js +0 -130
- package/dist/commands/chunk-GZL6ISVM.js +0 -72
- package/dist/commands/chunk-HALHQILI.js +0 -51
- package/dist/commands/chunk-HAT7AFBF.js +0 -85
- package/dist/commands/chunk-HDVSZ6CZ.js +0 -292
- package/dist/commands/chunk-HE3GOMR7.js +0 -88
- package/dist/commands/chunk-HEFUC4ZW.js +0 -65
- package/dist/commands/chunk-HHS3LYLV.js +0 -30
- package/dist/commands/chunk-HQSWPRUF.js +0 -61
- package/dist/commands/chunk-HQZ65PJE.js +0 -167
- package/dist/commands/chunk-HRN73FQJ.js +0 -77
- package/dist/commands/chunk-HSZECERZ.js +0 -271
- package/dist/commands/chunk-HYE3MBAN.js +0 -113
- package/dist/commands/chunk-IAB6LCJL.js +0 -18
- package/dist/commands/chunk-IAGENI2U.js +0 -42
- package/dist/commands/chunk-ICPVBHIX.js +0 -48
- package/dist/commands/chunk-ILIITIMQ.js +0 -126
- package/dist/commands/chunk-IONGJJYM.js +0 -179
- package/dist/commands/chunk-IP23WOWP.js +0 -126
- package/dist/commands/chunk-IPS7EBE5.js +0 -140
- package/dist/commands/chunk-IXZZSST7.js +0 -459
- package/dist/commands/chunk-IY3DSDRW.js +0 -173
- package/dist/commands/chunk-J2RUI4KN.js +0 -47
- package/dist/commands/chunk-J3PCRUVY.js +0 -1223
- package/dist/commands/chunk-J4XHEOOW.js +0 -156
- package/dist/commands/chunk-JDHLHYJJ.js +0 -208
- package/dist/commands/chunk-JGX7JIW4.js +0 -126
- package/dist/commands/chunk-JHIGDFBS.js +0 -59
- package/dist/commands/chunk-JI2EGXZX.js +0 -53
- package/dist/commands/chunk-JNV3VRK2.js +0 -47
- package/dist/commands/chunk-JPMAW2VZ.js +0 -91
- package/dist/commands/chunk-JQEY6KDP.js +0 -90
- package/dist/commands/chunk-JSJDIEGZ.js +0 -88
- package/dist/commands/chunk-JT5ICRFF.js +0 -44
- package/dist/commands/chunk-JU2MAYQ3.js +0 -997
- package/dist/commands/chunk-JUCJ4Y42.js +0 -77
- package/dist/commands/chunk-JZK33TA5.js +0 -99
- package/dist/commands/chunk-K3OZBV3L.js +0 -49
- package/dist/commands/chunk-K6P5PISC.js +0 -114
- package/dist/commands/chunk-KDCHY7XO.js +0 -88
- package/dist/commands/chunk-KDGX3JTV.js +0 -51
- package/dist/commands/chunk-KGSEWOKI.js +0 -353
- package/dist/commands/chunk-KIS7JFNP.js +0 -217
- package/dist/commands/chunk-KJPZPTS4.js +0 -245
- package/dist/commands/chunk-KKHD3C2P.js +0 -114
- package/dist/commands/chunk-KKIIY5I5.js +0 -67
- package/dist/commands/chunk-KN46UC77.js +0 -114
- package/dist/commands/chunk-KP2BVAS5.js +0 -125
- package/dist/commands/chunk-KPAJBJXG.js +0 -63
- package/dist/commands/chunk-KPMAJP6D.js +0 -145
- package/dist/commands/chunk-KR6WUAJM.js +0 -122
- package/dist/commands/chunk-KWLNK2NJ.js +0 -391
- package/dist/commands/chunk-KXK2A2HB.js +0 -158
- package/dist/commands/chunk-L2CLCNXW.js +0 -144
- package/dist/commands/chunk-L7MDU6D7.js +0 -155
- package/dist/commands/chunk-L7VD4MLF.js +0 -78
- package/dist/commands/chunk-LBVYFW3I.js +0 -38
- package/dist/commands/chunk-LIPUSINQ.js +0 -140
- package/dist/commands/chunk-LJVZWE3A.js +0 -1885
- package/dist/commands/chunk-LKSSQVDA.js +0 -49
- package/dist/commands/chunk-LNQOL2CL.js +0 -321
- package/dist/commands/chunk-LS7P324N.js +0 -72
- package/dist/commands/chunk-LU5EOGFQ.js +0 -50
- package/dist/commands/chunk-LX2ENXHZ.js +0 -197
- package/dist/commands/chunk-M3UGRNNB.js +0 -103
- package/dist/commands/chunk-M3ZDYCUF.js +0 -117
- package/dist/commands/chunk-MDGPJOLK.js +0 -351
- package/dist/commands/chunk-MDKRTUE4.js +0 -288
- package/dist/commands/chunk-MFZVRWRS.js +0 -34
- package/dist/commands/chunk-MHF6BDQI.js +0 -128
- package/dist/commands/chunk-MLJDW7YN.js +0 -64
- package/dist/commands/chunk-MNLHYAJO.js +0 -80
- package/dist/commands/chunk-MOD3FG4V.js +0 -419
- package/dist/commands/chunk-MRAEJLXL.js +0 -83
- package/dist/commands/chunk-MRW2WYJS.js +0 -68
- package/dist/commands/chunk-N2XH7QBY.js +0 -103
- package/dist/commands/chunk-N2ZF6T4E.js +0 -332
- package/dist/commands/chunk-N36NZMAL.js +0 -79
- package/dist/commands/chunk-N4EMFHQ6.js +0 -114
- package/dist/commands/chunk-N4P64UIH.js +0 -211
- package/dist/commands/chunk-NABSSY4P.js +0 -204
- package/dist/commands/chunk-NDQIJBRQ.js +0 -100
- package/dist/commands/chunk-NDR4PCVG.js +0 -29
- package/dist/commands/chunk-NEOCCN6D.js +0 -302
- package/dist/commands/chunk-NFKWFOFM.js +0 -45
- package/dist/commands/chunk-NFUPJBBG.js +0 -516
- package/dist/commands/chunk-NHEBKL7X.js +0 -170
- package/dist/commands/chunk-NHTEC5U4.js +0 -99
- package/dist/commands/chunk-NOSODWWK.js +0 -1132
- package/dist/commands/chunk-NPXXYG6Z.js +0 -580
- package/dist/commands/chunk-NR2JDBPV.js +0 -75
- package/dist/commands/chunk-NRULNBYI.js +0 -1153
- package/dist/commands/chunk-NTGF5N3N.js +0 -110
- package/dist/commands/chunk-NTIVNQKF.js +0 -73
- package/dist/commands/chunk-NUCFIYZL.js +0 -119
- package/dist/commands/chunk-NVMV7BYX.js +0 -88
- package/dist/commands/chunk-NYWPTYGL.js +0 -169
- package/dist/commands/chunk-O45BX4EL.js +0 -39
- package/dist/commands/chunk-O46T4ANI.js +0 -229
- package/dist/commands/chunk-O7ESC4HL.js +0 -566
- package/dist/commands/chunk-OBYLXHCH.js +0 -86
- package/dist/commands/chunk-OHN3QARP.js +0 -769
- package/dist/commands/chunk-OKBZGLD5.js +0 -393
- package/dist/commands/chunk-OKN63ZH5.js +0 -109
- package/dist/commands/chunk-ON4IKRGS.js +0 -469
- package/dist/commands/chunk-OT74RSQO.js +0 -82
- package/dist/commands/chunk-OVCVINYW.js +0 -143
- package/dist/commands/chunk-OZKLVTYI.js +0 -342
- package/dist/commands/chunk-OZN4HOZT.js +0 -74
- package/dist/commands/chunk-P3LJ2Q4N.js +0 -555
- package/dist/commands/chunk-P43GWYR6.js +0 -185
- package/dist/commands/chunk-P6ASP2DY.js +0 -132
- package/dist/commands/chunk-PBAEJ5PT.js +0 -38
- package/dist/commands/chunk-PCZROH3R.js +0 -100
- package/dist/commands/chunk-PJYTUUTH.js +0 -34
- package/dist/commands/chunk-PKXTISWR.js +0 -58
- package/dist/commands/chunk-PSGLUBSB.js +0 -74
- package/dist/commands/chunk-PVRDJU2B.js +0 -126
- package/dist/commands/chunk-Q42NF2TL.js +0 -47
- package/dist/commands/chunk-Q4ULMZAS.js +0 -106
- package/dist/commands/chunk-QCRUPRQ2.js +0 -207
- package/dist/commands/chunk-QGATHT4S.js +0 -114
- package/dist/commands/chunk-QKTTKAXM.js +0 -119
- package/dist/commands/chunk-QSBYULSS.js +0 -100
- package/dist/commands/chunk-QSJCZATC.js +0 -18
- package/dist/commands/chunk-QTJPCXEW.js +0 -23
- package/dist/commands/chunk-QTQAI2M2.js +0 -179
- package/dist/commands/chunk-QTVVFV4Q.js +0 -127
- package/dist/commands/chunk-QVOFWFWC.js +0 -134
- package/dist/commands/chunk-QX2EMUXV.js +0 -102
- package/dist/commands/chunk-QXBOECGL.js +0 -272
- package/dist/commands/chunk-QXCG3SG4.js +0 -88
- package/dist/commands/chunk-QZVMGAWV.js +0 -307
- package/dist/commands/chunk-R2THGPI3.js +0 -99
- package/dist/commands/chunk-R36VZIKU.js +0 -53
- package/dist/commands/chunk-R3F7F3TX.js +0 -94
- package/dist/commands/chunk-R5AABJZJ.js +0 -1062
- package/dist/commands/chunk-R7PYR4HW.js +0 -389
- package/dist/commands/chunk-RAQ3E6OT.js +0 -258
- package/dist/commands/chunk-RESNXNDG.js +0 -54
- package/dist/commands/chunk-RFIOZTXY.js +0 -305
- package/dist/commands/chunk-RFWB2KAV.js +0 -102
- package/dist/commands/chunk-RFXON3FK.js +0 -25
- package/dist/commands/chunk-RGEB5L37.js +0 -66
- package/dist/commands/chunk-RGRLLF2J.js +0 -119
- package/dist/commands/chunk-RLRIMYXM.js +0 -178
- package/dist/commands/chunk-RNB3DQOZ.js +0 -70
- package/dist/commands/chunk-RO4QEZJO.js +0 -172
- package/dist/commands/chunk-RS5HBJY6.js +0 -161
- package/dist/commands/chunk-RV7EQIE4.js +0 -202
- package/dist/commands/chunk-RWPCK3CO.js +0 -41
- package/dist/commands/chunk-RWYSVFIA.js +0 -250
- package/dist/commands/chunk-RYKK75YT.js +0 -289
- package/dist/commands/chunk-S4JE63QE.js +0 -704
- package/dist/commands/chunk-S5GX3H4P.js +0 -91
- package/dist/commands/chunk-SC57VV6A.js +0 -60
- package/dist/commands/chunk-SD4EX75H.js +0 -177
- package/dist/commands/chunk-SJITWFNY.js +0 -480
- package/dist/commands/chunk-SKGDMAIA.js +0 -33
- package/dist/commands/chunk-SNSZ25XZ.js +0 -393
- package/dist/commands/chunk-SOETJZWH.js +0 -7672
- package/dist/commands/chunk-SQZZHK6X.js +0 -119
- package/dist/commands/chunk-SRG6PKVS.js +0 -49
- package/dist/commands/chunk-SRTEE34O.js +0 -93
- package/dist/commands/chunk-SVTS7ACS.js +0 -18
- package/dist/commands/chunk-SYTCTLMD.js +0 -285
- package/dist/commands/chunk-T6JUDQMW.js +0 -181
- package/dist/commands/chunk-TEXUEBGE.js +0 -208
- package/dist/commands/chunk-TFDVTU6O.js +0 -910
- package/dist/commands/chunk-TFYYXETQ.js +0 -472
- package/dist/commands/chunk-TMFKVJUW.js +0 -121
- package/dist/commands/chunk-TRHWBUWE.js +0 -61
- package/dist/commands/chunk-TROCFVCU.js +0 -45
- package/dist/commands/chunk-TUBBESHU.js +0 -85
- package/dist/commands/chunk-TVZIFZZN.js +0 -62
- package/dist/commands/chunk-TXRWAL63.js +0 -144
- package/dist/commands/chunk-U46YTYJQ.js +0 -92
- package/dist/commands/chunk-U5EO4QEV.js +0 -48
- package/dist/commands/chunk-U7Y6RKLK.js +0 -168
- package/dist/commands/chunk-UCO333EX.js +0 -47
- package/dist/commands/chunk-UIXQ4IYT.js +0 -445
- package/dist/commands/chunk-UJGNYPMD.js +0 -716
- package/dist/commands/chunk-UREXZJDB.js +0 -210
- package/dist/commands/chunk-URZ4RDC4.js +0 -220
- package/dist/commands/chunk-UUA63LCI.js +0 -77
- package/dist/commands/chunk-UVY5ODCM.js +0 -60
- package/dist/commands/chunk-UWMB6EOU.js +0 -45
- package/dist/commands/chunk-UY62WJV6.js +0 -120
- package/dist/commands/chunk-UZDKCGDC.js +0 -198
- package/dist/commands/chunk-VAHQ4AFM.js +0 -585
- package/dist/commands/chunk-VL5I2IOD.js +0 -332
- package/dist/commands/chunk-VMG3QB6C.js +0 -81
- package/dist/commands/chunk-VO25PMGS.js +0 -58
- package/dist/commands/chunk-VPRQFM2T.js +0 -37
- package/dist/commands/chunk-VTLWODJ2.js +0 -133
- package/dist/commands/chunk-VUCDGQ6Y.js +0 -260
- package/dist/commands/chunk-VY7ZJMDT.js +0 -469
- package/dist/commands/chunk-W4BR6QNU.js +0 -1241
- package/dist/commands/chunk-W7X7MZZN.js +0 -449
- package/dist/commands/chunk-WCYRNNKF.js +0 -76
- package/dist/commands/chunk-WEUUJIWQ.js +0 -84
- package/dist/commands/chunk-WNBJK6QE.js +0 -84
- package/dist/commands/chunk-WORHUJ6T.js +0 -73
- package/dist/commands/chunk-WR5PKCQW.js +0 -61
- package/dist/commands/chunk-WR73HTRG.js +0 -121
- package/dist/commands/chunk-WRNMUQTD.js +0 -95
- package/dist/commands/chunk-WROJTXWZ.js +0 -138
- package/dist/commands/chunk-WTIPX5NG.js +0 -43
- package/dist/commands/chunk-WWLCQREY.js +0 -225
- package/dist/commands/chunk-WXLW7S4M.js +0 -71
- package/dist/commands/chunk-WXXLJQBO.js +0 -67
- package/dist/commands/chunk-X4LYH6Q4.js +0 -56
- package/dist/commands/chunk-XAEL24EG.js +0 -66
- package/dist/commands/chunk-XI2ABCRX.js +0 -209
- package/dist/commands/chunk-XRQMVAB4.js +0 -85
- package/dist/commands/chunk-XUXCFPDK.js +0 -218
- package/dist/commands/chunk-XZQWEVR3.js +0 -84
- package/dist/commands/chunk-Y6OGDG5I.js +0 -49
- package/dist/commands/chunk-YANDBVAT.js +0 -430
- package/dist/commands/chunk-YD7XK2TX.js +0 -550
- package/dist/commands/chunk-YEAE46TS.js +0 -98
- package/dist/commands/chunk-YEQFAEVW.js +0 -112
- package/dist/commands/chunk-YJZAD4Z5.js +0 -103
- package/dist/commands/chunk-YNCF66RK.js +0 -1052
- package/dist/commands/chunk-YOA25SII.js +0 -210
- package/dist/commands/chunk-YOZTZMAT.js +0 -38
- package/dist/commands/chunk-YSGRHVZG.js +0 -897
- package/dist/commands/chunk-YSLGWRQN.js +0 -646
- package/dist/commands/chunk-YT5JR2CB.js +0 -105
- package/dist/commands/chunk-YTXCLGGL.js +0 -168
- package/dist/commands/chunk-YVHJN2HS.js +0 -74
- package/dist/commands/chunk-YY7XVVSB.js +0 -43
- package/dist/commands/chunk-Z2NUK47W.js +0 -1314
- package/dist/commands/chunk-Z5GZV4DV.js +0 -16
- package/dist/commands/chunk-ZB52ZIEA.js +0 -1629
- package/dist/commands/chunk-ZCD4AV2P.js +0 -73
- package/dist/commands/chunk-ZCHZU6NX.js +0 -799
- package/dist/commands/chunk-ZEH2B3DF.js +0 -239
- package/dist/commands/chunk-ZGANVZCA.js +0 -92
- package/dist/commands/chunk-ZGEUWHFF.js +0 -297
- package/dist/commands/chunk-ZHSNQ2F7.js +0 -161
- package/dist/commands/chunk-ZI3SABMH.js +0 -347
- package/dist/commands/chunk-ZIIUBGON.js +0 -773
- package/dist/commands/chunk-ZJJLROJY.js +0 -269
- package/dist/commands/chunk-ZNIIA275.js +0 -59
- package/dist/commands/chunk-ZV6BZZJ2.js +0 -271
- package/dist/commands/run-ship-lap-W66LTXJJ.js +0 -28
- package/dist/commands/test-related-XBDH2IOH.js +0 -113
- package/dist/commands/unused-members-KVKZDTXD.js +0 -329
- package/dist/hooks/chunk-3SA3FIQC.js +0 -6869
- package/dist/hooks/chunk-46PTTMGE.js +0 -1625
- package/dist/hooks/chunk-5NIBRHWG.js +0 -77
- package/dist/hooks/chunk-76QKN2K3.js +0 -258
- package/dist/hooks/chunk-CHEKMGFP.js +0 -321
- package/dist/hooks/chunk-CY3ADSDR.js +0 -28580
- package/dist/hooks/chunk-DCILEVDR.js +0 -5173
- package/dist/hooks/chunk-HVNGIM5W.js +0 -5092
- package/dist/hooks/chunk-L6IZZ2IL.js +0 -11219
- package/dist/hooks/chunk-SAAPRHTK.js +0 -43
- package/dist/hooks/chunk-U3ON2GBN.js +0 -12
- package/dist/hooks/chunk-UZXMFOVK.js +0 -9170
- package/dist/hooks/chunk-WCJ2GWYJ.js +0 -1381
- package/dist/hooks/chunk-YEURBB4L.js +0 -32
- package/dist/hooks/chunk-YRKS5ZKE.js +0 -1915
- package/dist/hooks/run-ship-lap-P5555IG7.js +0 -8
|
@@ -0,0 +1,1059 @@
|
|
|
1
|
+
import {
|
|
2
|
+
buffered_process,
|
|
3
|
+
import_graph,
|
|
4
|
+
lint_related_scope,
|
|
5
|
+
resolve_tsx_runner,
|
|
6
|
+
run_board_usage_rusage,
|
|
7
|
+
toolchain_inputs
|
|
8
|
+
} from "./chunk-ALY5AW75.js";
|
|
9
|
+
import {
|
|
10
|
+
core_weights,
|
|
11
|
+
direct_launch,
|
|
12
|
+
project_checks,
|
|
13
|
+
resolve_package_bin
|
|
14
|
+
} from "./chunk-Z6W64J64.js";
|
|
15
|
+
import {
|
|
16
|
+
ESLINT_EDIT_CACHE_FLAGS,
|
|
17
|
+
cost_blocks,
|
|
18
|
+
find_package_directory,
|
|
19
|
+
time_batch_guard,
|
|
20
|
+
time_hook_transcript,
|
|
21
|
+
time_round_trips,
|
|
22
|
+
time_spans,
|
|
23
|
+
transcript_tail
|
|
24
|
+
} from "./chunk-NP6BVTR3.js";
|
|
25
|
+
import {
|
|
26
|
+
file_reader
|
|
27
|
+
} from "./chunk-NFTDYUN3.js";
|
|
28
|
+
import {
|
|
29
|
+
HOOK_PROCESS_TIMEOUT_MS,
|
|
30
|
+
LINT_TIMEOUT_MS,
|
|
31
|
+
atomic_write,
|
|
32
|
+
execa,
|
|
33
|
+
external_exports,
|
|
34
|
+
git_spawn_sync,
|
|
35
|
+
json_value,
|
|
36
|
+
stamp_file
|
|
37
|
+
} from "./chunk-RWVA2SFN.js";
|
|
38
|
+
|
|
39
|
+
// scripts/time-runtime/time-density.ts
|
|
40
|
+
var MIN_ROUND_TRIPS = 10;
|
|
41
|
+
var NOTICE_INTERVAL_MS = 3e5;
|
|
42
|
+
var ONE_CALL = 1;
|
|
43
|
+
var NONE = 0;
|
|
44
|
+
function has_whole_tail(text) {
|
|
45
|
+
const last = text.split("\n").findLast((line) => line.trim() !== "");
|
|
46
|
+
return last !== void 0 && time_spans.parse_line(last) !== void 0;
|
|
47
|
+
}
|
|
48
|
+
function assistant_lines(text) {
|
|
49
|
+
return text.split("\n").map((line) => time_spans.parse_line(line)).filter((line) => line?.type === time_spans.ASSISTANT_TYPE);
|
|
50
|
+
}
|
|
51
|
+
function last_turn_calls(text) {
|
|
52
|
+
if (!has_whole_tail(text)) return NONE;
|
|
53
|
+
const lines = assistant_lines(text);
|
|
54
|
+
const message_id = lines.at(-1)?.message_id;
|
|
55
|
+
if (message_id === void 0 || message_id === time_spans.NO_MESSAGE_ID) return NONE;
|
|
56
|
+
return lines.filter((line) => line.message_id === message_id).flatMap((line) => line.blocks).filter((block) => block.type === cost_blocks.TOOL_USE_TYPE).length;
|
|
57
|
+
}
|
|
58
|
+
function read_window(text) {
|
|
59
|
+
const { spans } = time_spans.parse_timeline(text);
|
|
60
|
+
const round_trip_count = time_round_trips.count_round_trips(spans);
|
|
61
|
+
const call_count = time_round_trips.count_calls(spans);
|
|
62
|
+
return {
|
|
63
|
+
density: time_round_trips.per_round_trip(call_count, round_trip_count),
|
|
64
|
+
round_trip_count,
|
|
65
|
+
turn_calls: last_turn_calls(text)
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
function is_due(reading, since_last_ms) {
|
|
69
|
+
if (reading.round_trip_count < MIN_ROUND_TRIPS || reading.turn_calls !== ONE_CALL || !time_round_trips.is_below_floor(reading.density)) {
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
return since_last_ms >= NOTICE_INTERVAL_MS;
|
|
73
|
+
}
|
|
74
|
+
function format_notice(reading, candidates = "") {
|
|
75
|
+
const density = time_round_trips.format_density(reading.density);
|
|
76
|
+
const floor = time_round_trips.format_density(time_round_trips.CALLS_PER_ROUND_TRIP_FLOOR);
|
|
77
|
+
return `\u26A0 batching: ${density} calls per round trip over the last ${String(reading.round_trip_count)}, under the ${floor} floor, and this turn issued one call. Independent reads, greps, gh queries and edits go out together; the criterion is whether this call's input needs another call's result, not what kind of call it is \u2014 prompts/collaboration-workflow/turn-batching.md.${candidates}`;
|
|
78
|
+
}
|
|
79
|
+
var time_density = {
|
|
80
|
+
MIN_ROUND_TRIPS,
|
|
81
|
+
NOTICE_INTERVAL_MS,
|
|
82
|
+
format_notice,
|
|
83
|
+
is_due,
|
|
84
|
+
last_turn_calls,
|
|
85
|
+
read_window
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
// scripts/time-runtime/time-density-hook.ts
|
|
89
|
+
var NOTICE_PREFIX = "josh-density-notice-";
|
|
90
|
+
var NEVER_MS = 0;
|
|
91
|
+
var payload_schema = external_exports.object({
|
|
92
|
+
transcript_path: external_exports.string().min(1).optional(),
|
|
93
|
+
// **`nullish`, not `optional`.** A payload spelling the absent agent as `null` has to read as "no
|
|
94
|
+
// fork"; rejected, it would fail `safeParse` for the whole payload and silence the line for every
|
|
95
|
+
// edit of the main line — the opposite of this module's stated failure direction.
|
|
96
|
+
agent_id: external_exports.string().nullish()
|
|
97
|
+
});
|
|
98
|
+
var notice_schema = external_exports.object({ notified_at_ms: external_exports.number() });
|
|
99
|
+
var call_schema = external_exports.object({ tool_name: external_exports.string().min(1), tool_input: external_exports.unknown() });
|
|
100
|
+
function parse_transcript_path(raw_payload) {
|
|
101
|
+
const payload = json_value.parse_with(raw_payload, payload_schema);
|
|
102
|
+
if (payload?.transcript_path === void 0) return void 0;
|
|
103
|
+
return time_hook_transcript.transcript_of(payload.transcript_path, payload.agent_id);
|
|
104
|
+
}
|
|
105
|
+
function parse_call(raw_payload) {
|
|
106
|
+
const call = json_value.parse_with(raw_payload, call_schema);
|
|
107
|
+
if (call === void 0) return void 0;
|
|
108
|
+
return { name: call.tool_name, input: call.tool_input };
|
|
109
|
+
}
|
|
110
|
+
function notice_path(transcript_path) {
|
|
111
|
+
return stamp_file.stamp_path(NOTICE_PREFIX, transcript_path);
|
|
112
|
+
}
|
|
113
|
+
function last_notice_ms(source) {
|
|
114
|
+
const raw = stamp_file.read_stamp_text(source);
|
|
115
|
+
if (raw === void 0) return NEVER_MS;
|
|
116
|
+
return json_value.parse_with(raw, notice_schema)?.notified_at_ms ?? NEVER_MS;
|
|
117
|
+
}
|
|
118
|
+
function arm_throttle(target, now_ms) {
|
|
119
|
+
try {
|
|
120
|
+
stamp_file.write_stamp(target, { notified_at_ms: now_ms });
|
|
121
|
+
} catch {
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
function notice_for(raw_payload, now_ms) {
|
|
125
|
+
const transcript_path = parse_transcript_path(raw_payload);
|
|
126
|
+
if (transcript_path === void 0) return void 0;
|
|
127
|
+
const tail = transcript_tail.read_tail(transcript_path);
|
|
128
|
+
const reading = time_density.read_window(tail);
|
|
129
|
+
const target = notice_path(transcript_path);
|
|
130
|
+
if (!time_density.is_due(reading, now_ms - last_notice_ms(target))) return void 0;
|
|
131
|
+
const candidates = time_batch_guard.pairing_candidates(tail, parse_call(raw_payload));
|
|
132
|
+
if (candidates === "") return void 0;
|
|
133
|
+
arm_throttle(target, now_ms);
|
|
134
|
+
return time_density.format_notice(reading, candidates);
|
|
135
|
+
}
|
|
136
|
+
function density_notice(raw_payload, now_ms = Date.now()) {
|
|
137
|
+
try {
|
|
138
|
+
return notice_for(raw_payload, now_ms);
|
|
139
|
+
} catch {
|
|
140
|
+
return void 0;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
var time_density_hook = {
|
|
144
|
+
density_notice,
|
|
145
|
+
notice_path,
|
|
146
|
+
parse_call,
|
|
147
|
+
parse_transcript_path
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
// scripts/hooks/format-edited-file.ts
|
|
151
|
+
import { existsSync as existsSync2 } from "node:fs";
|
|
152
|
+
import path7 from "node:path";
|
|
153
|
+
|
|
154
|
+
// scripts/lint/eslint-daemon.ts
|
|
155
|
+
import { createHash as createHash2 } from "node:crypto";
|
|
156
|
+
import { lstatSync, readFileSync as readFileSync3 } from "node:fs";
|
|
157
|
+
import { createRequire } from "node:module";
|
|
158
|
+
import path4 from "node:path";
|
|
159
|
+
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
160
|
+
|
|
161
|
+
// eslint/untyped-environment.js
|
|
162
|
+
var ENVIRONMENT_VARIABLE = "JOSH_ESLINT_UNTYPED";
|
|
163
|
+
var ENABLED = "1";
|
|
164
|
+
function is_requested(variables) {
|
|
165
|
+
return variables[ENVIRONMENT_VARIABLE] === ENABLED;
|
|
166
|
+
}
|
|
167
|
+
function environment() {
|
|
168
|
+
return { [ENVIRONMENT_VARIABLE]: ENABLED };
|
|
169
|
+
}
|
|
170
|
+
var untyped_environment = { environment, is_requested, ENVIRONMENT_VARIABLE };
|
|
171
|
+
|
|
172
|
+
// scripts/lint/eslint-daemon-calls.ts
|
|
173
|
+
import { appendFileSync, readFileSync } from "node:fs";
|
|
174
|
+
import path from "node:path";
|
|
175
|
+
var CALLS_RECORD = ".eslint_d-calls";
|
|
176
|
+
var LINE_SEPARATOR = "\n";
|
|
177
|
+
var DAEMON_RECORD_PID = /^\S+ \S+ (?<pid>\d+)/u;
|
|
178
|
+
var LAST_LINE = /total=(?<total>\d+) pid=(?<pid>\d+)$/u;
|
|
179
|
+
var DAEMON_CALLER = {
|
|
180
|
+
EDIT_HOOK: "edit-hook",
|
|
181
|
+
WARM: "warm",
|
|
182
|
+
PRE_COMMIT: "pre-commit",
|
|
183
|
+
LINT_RELATED: "lint:related"
|
|
184
|
+
};
|
|
185
|
+
function pid_of(daemon_record = "") {
|
|
186
|
+
return DAEMON_RECORD_PID.exec(daemon_record)?.groups?.["pid"];
|
|
187
|
+
}
|
|
188
|
+
function read_text(file) {
|
|
189
|
+
try {
|
|
190
|
+
return readFileSync(file, "utf8");
|
|
191
|
+
} catch {
|
|
192
|
+
return "";
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
function previous_total(text, pid) {
|
|
196
|
+
const groups = LAST_LINE.exec(text.trimEnd())?.groups;
|
|
197
|
+
if (groups?.["pid"] !== pid) return void 0;
|
|
198
|
+
return Number(groups["total"]);
|
|
199
|
+
}
|
|
200
|
+
function line_of(call, total, pid, now) {
|
|
201
|
+
const { caller, files } = call;
|
|
202
|
+
return `${now.toISOString()} caller=${caller} files=${String(files)} total=${String(total)} pid=${pid}${LINE_SEPARATOR}`;
|
|
203
|
+
}
|
|
204
|
+
function write_line(file, line, is_new_daemon) {
|
|
205
|
+
try {
|
|
206
|
+
if (is_new_daemon) atomic_write.replace_file(file, line);
|
|
207
|
+
else appendFileSync(file, line);
|
|
208
|
+
} catch {
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
function record(directory, daemon_record, call, now = /* @__PURE__ */ new Date()) {
|
|
212
|
+
const pid = pid_of(daemon_record);
|
|
213
|
+
if (pid === void 0) return;
|
|
214
|
+
const file = path.join(directory, CALLS_RECORD);
|
|
215
|
+
const previous = previous_total(read_text(file), pid);
|
|
216
|
+
write_line(file, line_of(call, (previous ?? 0) + call.files, pid, now), previous === void 0);
|
|
217
|
+
}
|
|
218
|
+
var eslint_daemon_calls = { pid_of, record, CALLS_RECORD, DAEMON_CALLER };
|
|
219
|
+
|
|
220
|
+
// scripts/lint/eslint-daemon-sources.ts
|
|
221
|
+
import { createHash } from "node:crypto";
|
|
222
|
+
import { readFileSync as readFileSync2 } from "node:fs";
|
|
223
|
+
import path2 from "node:path";
|
|
224
|
+
var CHANGED_FILES = ["diff", "HEAD", "--name-only", "--relative", "-z"];
|
|
225
|
+
var NEW_FILES = ["ls-files", "--others", "--exclude-standard", "-z"];
|
|
226
|
+
var PATH_SEPARATOR = "\0";
|
|
227
|
+
var LINE_SEPARATOR2 = "\n";
|
|
228
|
+
var ENTRY_SEPARATOR = " ";
|
|
229
|
+
var DIGEST_ALGORITHM = "sha256";
|
|
230
|
+
var ABSENT = "absent";
|
|
231
|
+
var UNREAD = ":unread";
|
|
232
|
+
function by_text(left, right) {
|
|
233
|
+
return left.localeCompare(right);
|
|
234
|
+
}
|
|
235
|
+
function lines_of(text) {
|
|
236
|
+
return text.split(LINE_SEPARATOR2).filter((line) => line !== "");
|
|
237
|
+
}
|
|
238
|
+
function content_digest(file) {
|
|
239
|
+
try {
|
|
240
|
+
return createHash(DIGEST_ALGORITHM).update(readFileSync2(file)).digest("hex");
|
|
241
|
+
} catch {
|
|
242
|
+
return ABSENT;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
function changed_paths(project_root) {
|
|
246
|
+
const listed = [CHANGED_FILES, NEW_FILES].map(
|
|
247
|
+
(git_arguments) => git_spawn_sync.read(git_arguments, { cwd: project_root }) ?? UNREAD
|
|
248
|
+
);
|
|
249
|
+
const paths = listed.join(PATH_SEPARATOR).split(PATH_SEPARATOR);
|
|
250
|
+
return [...new Set(paths.filter((relative) => relative !== ""))];
|
|
251
|
+
}
|
|
252
|
+
function snapshot(project_root) {
|
|
253
|
+
return changed_paths(project_root).map(
|
|
254
|
+
(relative) => `${relative}${ENTRY_SEPARATOR}${content_digest(path2.join(project_root, relative))}`
|
|
255
|
+
).toSorted(by_text).join(LINE_SEPARATOR2);
|
|
256
|
+
}
|
|
257
|
+
function refresh(recorded, current, relative) {
|
|
258
|
+
const prefix = `${relative}${ENTRY_SEPARATOR}`;
|
|
259
|
+
const [inputs = "", ...entries] = lines_of(recorded);
|
|
260
|
+
const others = entries.filter((line) => !line.startsWith(prefix));
|
|
261
|
+
const fresh = lines_of(current).filter((line) => line.startsWith(prefix));
|
|
262
|
+
return [inputs, ...[...others, ...fresh].toSorted(by_text)].join(LINE_SEPARATOR2);
|
|
263
|
+
}
|
|
264
|
+
var eslint_daemon_sources = { refresh, snapshot, LINE_SEPARATOR: LINE_SEPARATOR2 };
|
|
265
|
+
|
|
266
|
+
// scripts/lint/eslint-heap.ts
|
|
267
|
+
import path3 from "node:path";
|
|
268
|
+
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
269
|
+
var { ESLINT_HEAP_MIB } = core_weights;
|
|
270
|
+
var HEAP_FLAG = /--max[-_]old[-_]space[-_]size\b/u;
|
|
271
|
+
var NODE_OPTIONS = "NODE_OPTIONS";
|
|
272
|
+
var MODULE_DIRECTORY = path3.dirname(fileURLToPath(import.meta.url));
|
|
273
|
+
var MEMORY_PATH = path3.join(
|
|
274
|
+
find_package_directory(MODULE_DIRECTORY),
|
|
275
|
+
"scripts/lint/eslint-memory.js"
|
|
276
|
+
);
|
|
277
|
+
var MEMORY_IMPORT = `--import=${pathToFileURL(MEMORY_PATH).href}`;
|
|
278
|
+
function with_heap(given_options) {
|
|
279
|
+
const current = given_options?.trim() ?? "";
|
|
280
|
+
if (HEAP_FLAG.test(current)) return current;
|
|
281
|
+
const heap = `--max-old-space-size=${String(ESLINT_HEAP_MIB)}`;
|
|
282
|
+
return current === "" ? heap : `${current} ${heap}`;
|
|
283
|
+
}
|
|
284
|
+
function environment2() {
|
|
285
|
+
const child = buffered_process.child_environment();
|
|
286
|
+
return { ...child, [NODE_OPTIONS]: with_heap(child[NODE_OPTIONS]) };
|
|
287
|
+
}
|
|
288
|
+
async function run_cold(pnpm_arguments) {
|
|
289
|
+
const child = environment2();
|
|
290
|
+
return await buffered_process.run_buffered_direct(pnpm_arguments, {
|
|
291
|
+
environment: { ...child, [NODE_OPTIONS]: `${child[NODE_OPTIONS] ?? ""} ${MEMORY_IMPORT}` }
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
var eslint_heap = { environment: environment2, run_cold, with_heap };
|
|
295
|
+
|
|
296
|
+
// scripts/lint/eslint-daemon.ts
|
|
297
|
+
var ESLINT_DAEMON = "eslint_d";
|
|
298
|
+
var DAEMON_STOP = "stop";
|
|
299
|
+
var STOP_TIMEOUT_MS = 1e4;
|
|
300
|
+
var PNPM_EXEC = "exec";
|
|
301
|
+
var ESLINT_BIN = "eslint";
|
|
302
|
+
var PNPM_ESLINT_PREFIX_LENGTH = 2;
|
|
303
|
+
var NODE_MODULES = "node_modules";
|
|
304
|
+
var DAEMON_RECORD = ".eslint_d";
|
|
305
|
+
var FINGERPRINT_RECORD = ".eslint_d-toolchain";
|
|
306
|
+
var RECORD_SEPARATOR = "\n";
|
|
307
|
+
var NO_HEAD = "no-head";
|
|
308
|
+
var LIST_FILES = ["ls-files", "--cached", "--others", "--exclude-standard"];
|
|
309
|
+
var DIGEST_ALGORITHM2 = "sha256";
|
|
310
|
+
var MODULE_DIRECTORY2 = path4.dirname(fileURLToPath2(import.meta.url));
|
|
311
|
+
var DAEMON_STATE = {
|
|
312
|
+
REUSED: "daemon reused",
|
|
313
|
+
RESTARTED: "daemon restarted",
|
|
314
|
+
STARTED: "daemon started",
|
|
315
|
+
COLD_FALLBACK: "daemon unreachable, cold process"
|
|
316
|
+
};
|
|
317
|
+
function is_borrowed_install(project_root) {
|
|
318
|
+
return lstatSync(path4.join(project_root, NODE_MODULES), {
|
|
319
|
+
throwIfNoEntry: false
|
|
320
|
+
})?.isSymbolicLink() === true;
|
|
321
|
+
}
|
|
322
|
+
function resolve_daemon_cli(project_root) {
|
|
323
|
+
if (is_borrowed_install(project_root)) return void 0;
|
|
324
|
+
return resolve_package_bin(MODULE_DIRECTORY2, ESLINT_DAEMON, ESLINT_DAEMON) ?? resolve_package_bin(project_root, ESLINT_DAEMON, ESLINT_DAEMON);
|
|
325
|
+
}
|
|
326
|
+
function is_config_input(relative_path) {
|
|
327
|
+
return toolchain_inputs.is_input(relative_path);
|
|
328
|
+
}
|
|
329
|
+
function eslint_arguments_of(pnpm_arguments) {
|
|
330
|
+
if (pnpm_arguments[0] !== PNPM_EXEC || pnpm_arguments[1] !== ESLINT_BIN) return void 0;
|
|
331
|
+
return pnpm_arguments.slice(PNPM_ESLINT_PREFIX_LENGTH);
|
|
332
|
+
}
|
|
333
|
+
function digest_of(text) {
|
|
334
|
+
return createHash2(DIGEST_ALGORITHM2).update(text).digest("hex");
|
|
335
|
+
}
|
|
336
|
+
function fingerprint(project_root) {
|
|
337
|
+
const head = git_spawn_sync.read(["rev-parse", "HEAD"], { cwd: project_root }) ?? NO_HEAD;
|
|
338
|
+
const files = git_spawn_sync.read(LIST_FILES, { cwd: project_root }) ?? NO_HEAD;
|
|
339
|
+
const inputs = `${toolchain_inputs.digest(project_root)}:${head}:${digest_of(files)}`;
|
|
340
|
+
const sources = eslint_daemon_sources.snapshot(project_root);
|
|
341
|
+
return sources === "" ? inputs : `${inputs}${eslint_daemon_sources.LINE_SEPARATOR}${sources}`;
|
|
342
|
+
}
|
|
343
|
+
function eslint_directory(project_root) {
|
|
344
|
+
try {
|
|
345
|
+
return path4.dirname(
|
|
346
|
+
createRequire(path4.join(project_root, "package.json")).resolve("eslint/package.json")
|
|
347
|
+
);
|
|
348
|
+
} catch {
|
|
349
|
+
return void 0;
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
function read_text2(file) {
|
|
353
|
+
try {
|
|
354
|
+
return readFileSync3(file, "utf8");
|
|
355
|
+
} catch {
|
|
356
|
+
return void 0;
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
function read_record(project_root) {
|
|
360
|
+
const directory = eslint_directory(project_root);
|
|
361
|
+
if (directory === void 0) return { daemon: void 0, recorded: void 0 };
|
|
362
|
+
return {
|
|
363
|
+
daemon: read_text2(path4.join(directory, DAEMON_RECORD)),
|
|
364
|
+
recorded: read_text2(path4.join(directory, FINGERPRINT_RECORD))
|
|
365
|
+
};
|
|
366
|
+
}
|
|
367
|
+
function record_text(daemon, current) {
|
|
368
|
+
return `${daemon}${RECORD_SEPARATOR}${current}`;
|
|
369
|
+
}
|
|
370
|
+
function is_stale(record3, current) {
|
|
371
|
+
if (record3.daemon === void 0) return false;
|
|
372
|
+
return record3.recorded !== record_text(record3.daemon, current);
|
|
373
|
+
}
|
|
374
|
+
function state_of(record3, current) {
|
|
375
|
+
if (record3.daemon === void 0) return DAEMON_STATE.STARTED;
|
|
376
|
+
return is_stale(record3, current) ? DAEMON_STATE.RESTARTED : DAEMON_STATE.REUSED;
|
|
377
|
+
}
|
|
378
|
+
function remember(project_root, current) {
|
|
379
|
+
const directory = eslint_directory(project_root);
|
|
380
|
+
if (directory === void 0) return;
|
|
381
|
+
const daemon = read_text2(path4.join(directory, DAEMON_RECORD));
|
|
382
|
+
if (daemon === void 0) return;
|
|
383
|
+
try {
|
|
384
|
+
atomic_write.replace_file(
|
|
385
|
+
path4.join(directory, FINGERPRINT_RECORD),
|
|
386
|
+
record_text(daemon, current)
|
|
387
|
+
);
|
|
388
|
+
} catch {
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
function remember_read(project_root, record3, relative) {
|
|
392
|
+
const { daemon, recorded } = record3;
|
|
393
|
+
if (daemon === void 0 || recorded === void 0 || is_borrowed_install(project_root)) return;
|
|
394
|
+
const prefix = record_text(daemon, "");
|
|
395
|
+
if (!recorded.startsWith(prefix)) return;
|
|
396
|
+
const current = eslint_daemon_sources.snapshot(project_root);
|
|
397
|
+
remember(
|
|
398
|
+
project_root,
|
|
399
|
+
eslint_daemon_sources.refresh(recorded.slice(prefix.length), current, relative)
|
|
400
|
+
);
|
|
401
|
+
}
|
|
402
|
+
function remember_after_edit(project_root, before, edited) {
|
|
403
|
+
const after = read_record(project_root);
|
|
404
|
+
if (after.daemon !== before.daemon) remember(project_root, fingerprint(project_root));
|
|
405
|
+
else if (edited !== void 0) remember_read(project_root, after, edited);
|
|
406
|
+
}
|
|
407
|
+
function record_call(project_root, call) {
|
|
408
|
+
const directory = eslint_directory(project_root);
|
|
409
|
+
if (call === void 0 || directory === void 0 || is_borrowed_install(project_root)) return;
|
|
410
|
+
eslint_daemon_calls.record(directory, read_text2(path4.join(directory, DAEMON_RECORD)), call);
|
|
411
|
+
}
|
|
412
|
+
function launch_environment() {
|
|
413
|
+
return {
|
|
414
|
+
NODE_OPTIONS: eslint_heap.with_heap(process.env["NODE_OPTIONS"]),
|
|
415
|
+
ESLINT_D_MISS: "fail",
|
|
416
|
+
...untyped_environment.environment()
|
|
417
|
+
};
|
|
418
|
+
}
|
|
419
|
+
function daemon_environment() {
|
|
420
|
+
return { ...eslint_heap.environment(), ...launch_environment() };
|
|
421
|
+
}
|
|
422
|
+
async function spawn_daemon(cli, cli_arguments, options) {
|
|
423
|
+
const result = await execa(process.execPath, [cli, ...cli_arguments], {
|
|
424
|
+
reject: false,
|
|
425
|
+
all: true,
|
|
426
|
+
cwd: options.project_root,
|
|
427
|
+
env: daemon_environment(),
|
|
428
|
+
extendEnv: false,
|
|
429
|
+
...options.timeout_ms !== void 0 && { timeout: options.timeout_ms }
|
|
430
|
+
});
|
|
431
|
+
return { exit_code: result.exitCode ?? 1, stdout: result.stdout, output: result.all };
|
|
432
|
+
}
|
|
433
|
+
function is_start_failure(outcome) {
|
|
434
|
+
return outcome.exit_code !== 0 && outcome.stdout.length === 0;
|
|
435
|
+
}
|
|
436
|
+
async function run_current(cli, eslint_arguments, options) {
|
|
437
|
+
const { project_root } = options;
|
|
438
|
+
const current = fingerprint(project_root);
|
|
439
|
+
const daemon = state_of(read_record(project_root), current);
|
|
440
|
+
if (daemon === DAEMON_STATE.RESTARTED) await spawn_daemon(cli, [DAEMON_STOP], options);
|
|
441
|
+
const outcome = await spawn_daemon(cli, eslint_arguments, options);
|
|
442
|
+
if (is_start_failure(outcome)) return void 0;
|
|
443
|
+
remember(project_root, current);
|
|
444
|
+
record_call(project_root, options.call);
|
|
445
|
+
return { ...outcome, daemon };
|
|
446
|
+
}
|
|
447
|
+
async function stop(project_root) {
|
|
448
|
+
const cli = resolve_daemon_cli(project_root);
|
|
449
|
+
if (cli === void 0) return false;
|
|
450
|
+
const outcome = await spawn_daemon(cli, [DAEMON_STOP], {
|
|
451
|
+
project_root,
|
|
452
|
+
timeout_ms: STOP_TIMEOUT_MS
|
|
453
|
+
});
|
|
454
|
+
return outcome.exit_code === 0;
|
|
455
|
+
}
|
|
456
|
+
async function run(pnpm_arguments, options) {
|
|
457
|
+
const eslint_arguments = eslint_arguments_of(pnpm_arguments);
|
|
458
|
+
if (eslint_arguments === void 0) return void 0;
|
|
459
|
+
const cli = resolve_daemon_cli(options.project_root);
|
|
460
|
+
if (cli === void 0) return void 0;
|
|
461
|
+
return await run_current(cli, eslint_arguments, options);
|
|
462
|
+
}
|
|
463
|
+
async function run_or_cold(pnpm_arguments, call) {
|
|
464
|
+
const started_at = performance.now();
|
|
465
|
+
const outcome = await run(pnpm_arguments, { project_root: process.cwd(), call });
|
|
466
|
+
if (outcome === void 0) {
|
|
467
|
+
const cold = await eslint_heap.run_cold(pnpm_arguments);
|
|
468
|
+
return { ...cold, daemon: DAEMON_STATE.COLD_FALLBACK };
|
|
469
|
+
}
|
|
470
|
+
return {
|
|
471
|
+
output: outcome.output,
|
|
472
|
+
exit_code: outcome.exit_code,
|
|
473
|
+
elapsed_ms: performance.now() - started_at,
|
|
474
|
+
daemon: outcome.daemon
|
|
475
|
+
};
|
|
476
|
+
}
|
|
477
|
+
var eslint_daemon = {
|
|
478
|
+
eslint_arguments_of,
|
|
479
|
+
fingerprint,
|
|
480
|
+
is_config_input,
|
|
481
|
+
is_stale,
|
|
482
|
+
launch_environment,
|
|
483
|
+
read_record,
|
|
484
|
+
record_call,
|
|
485
|
+
record_text,
|
|
486
|
+
remember_after_edit,
|
|
487
|
+
resolve_daemon_cli,
|
|
488
|
+
run,
|
|
489
|
+
run_or_cold,
|
|
490
|
+
stop,
|
|
491
|
+
ESLINT_DAEMON
|
|
492
|
+
};
|
|
493
|
+
|
|
494
|
+
// scripts/lint/eslint-warm.ts
|
|
495
|
+
import { spawn } from "node:child_process";
|
|
496
|
+
import { fileURLToPath as fileURLToPath3 } from "node:url";
|
|
497
|
+
var WARM_CLI = fileURLToPath3(new URL("eslint-warm-cli.ts", import.meta.url));
|
|
498
|
+
var TYPED_SOURCES = ["ls-files", "--", "*.ts", ":!*.d.ts"];
|
|
499
|
+
var FALLBACK_TARGET = "eslint.config.js";
|
|
500
|
+
var LINE_SEPARATOR3 = "\n";
|
|
501
|
+
function warm_target(project_root) {
|
|
502
|
+
const listed = git_spawn_sync.read(TYPED_SOURCES, { cwd: project_root }) ?? "";
|
|
503
|
+
const [first] = listed.split(LINE_SEPARATOR3);
|
|
504
|
+
return first === void 0 || first === "" ? FALLBACK_TARGET : first;
|
|
505
|
+
}
|
|
506
|
+
async function warm(project_root) {
|
|
507
|
+
await eslint_daemon.run(["exec", "eslint", warm_target(project_root)], {
|
|
508
|
+
project_root,
|
|
509
|
+
timeout_ms: LINT_TIMEOUT_MS,
|
|
510
|
+
call: { caller: eslint_daemon_calls.DAEMON_CALLER.WARM, files: 1 }
|
|
511
|
+
});
|
|
512
|
+
}
|
|
513
|
+
function ignore_error() {
|
|
514
|
+
}
|
|
515
|
+
function start(project_root) {
|
|
516
|
+
if (process.env["VITEST"] !== void 0) return;
|
|
517
|
+
try {
|
|
518
|
+
const runner = resolve_tsx_runner();
|
|
519
|
+
const options = { cwd: project_root, detached: true, stdio: "ignore" };
|
|
520
|
+
const child = spawn(runner.executable, [...runner.leading_arguments, WARM_CLI], options);
|
|
521
|
+
child.on("error", ignore_error);
|
|
522
|
+
child.unref();
|
|
523
|
+
} catch {
|
|
524
|
+
ignore_error();
|
|
525
|
+
}
|
|
526
|
+
}
|
|
527
|
+
var eslint_warm = { start, warm };
|
|
528
|
+
|
|
529
|
+
// scripts/lint/eslint-trim.ts
|
|
530
|
+
var FOOTPRINT_LIMIT_MB = 600;
|
|
531
|
+
var BYTES_PER_KB = 1024;
|
|
532
|
+
var BYTES_PER_MB = BYTES_PER_KB * BYTES_PER_KB;
|
|
533
|
+
function default_reader() {
|
|
534
|
+
return run_board_usage_rusage.rusage_reader(process.platform, run_board_usage_rusage.load_builtin);
|
|
535
|
+
}
|
|
536
|
+
function is_heavy(project_root, reader) {
|
|
537
|
+
const pid = eslint_daemon_calls.pid_of(eslint_daemon.read_record(project_root).daemon);
|
|
538
|
+
if (pid === void 0 || reader === void 0) return false;
|
|
539
|
+
const footprint_bytes = reader(Number(pid))?.footprint_bytes ?? 0;
|
|
540
|
+
return footprint_bytes > FOOTPRINT_LIMIT_MB * BYTES_PER_MB;
|
|
541
|
+
}
|
|
542
|
+
async function trim(project_root, reader = default_reader()) {
|
|
543
|
+
if (!is_heavy(project_root, reader) || !await eslint_daemon.stop(project_root)) return false;
|
|
544
|
+
eslint_warm.start(project_root);
|
|
545
|
+
return true;
|
|
546
|
+
}
|
|
547
|
+
var eslint_trim = { trim, BYTES_PER_MB, FOOTPRINT_LIMIT_MB };
|
|
548
|
+
|
|
549
|
+
// scripts/lint/eslint-cache-dependencies.ts
|
|
550
|
+
import { rmSync, writeFileSync } from "node:fs";
|
|
551
|
+
import path5 from "node:path";
|
|
552
|
+
import { parse, stringify } from "flatted";
|
|
553
|
+
function is_record(value) {
|
|
554
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
555
|
+
}
|
|
556
|
+
function is_entry(item) {
|
|
557
|
+
if (!is_record(item)) return false;
|
|
558
|
+
const { key, value } = item;
|
|
559
|
+
return typeof key === "string" && is_record(value);
|
|
560
|
+
}
|
|
561
|
+
function is_entries(value) {
|
|
562
|
+
return Array.isArray(value) && value.every((item) => is_entry(item));
|
|
563
|
+
}
|
|
564
|
+
function parsed_or_undefined(content) {
|
|
565
|
+
try {
|
|
566
|
+
return parse(content);
|
|
567
|
+
} catch {
|
|
568
|
+
return void 0;
|
|
569
|
+
}
|
|
570
|
+
}
|
|
571
|
+
function read_entries(cache_file) {
|
|
572
|
+
const content = file_reader.read_optional(cache_file);
|
|
573
|
+
if (content === void 0) return void 0;
|
|
574
|
+
const parsed = parsed_or_undefined(content);
|
|
575
|
+
return is_entries(parsed) ? parsed : void 0;
|
|
576
|
+
}
|
|
577
|
+
function read_or_discard(cache_file) {
|
|
578
|
+
const entries = read_entries(cache_file);
|
|
579
|
+
if (entries === void 0) rmSync(cache_file, { force: true });
|
|
580
|
+
return entries ?? [];
|
|
581
|
+
}
|
|
582
|
+
function write_entries(cache_file, entries) {
|
|
583
|
+
writeFileSync(cache_file, stringify(entries));
|
|
584
|
+
}
|
|
585
|
+
function recorded_hash(entry) {
|
|
586
|
+
const { data } = entry.value;
|
|
587
|
+
if (!is_record(data)) return void 0;
|
|
588
|
+
const { dependencies } = data;
|
|
589
|
+
return typeof dependencies === "string" ? dependencies : void 0;
|
|
590
|
+
}
|
|
591
|
+
function drop_stale(cache_file, graph) {
|
|
592
|
+
const entries = read_or_discard(cache_file);
|
|
593
|
+
const hashes = new Map(entries.map((entry) => [entry.key, graph.closure_hash(entry.key)]));
|
|
594
|
+
const kept = entries.filter((entry) => recorded_hash(entry) === hashes.get(entry.key));
|
|
595
|
+
if (kept.length !== entries.length) write_entries(cache_file, kept);
|
|
596
|
+
return { hashes, drop: { dropped: entries.length - kept.length, total: entries.length } };
|
|
597
|
+
}
|
|
598
|
+
function record_entry(entry, hashes, graph) {
|
|
599
|
+
const { data } = entry.value;
|
|
600
|
+
if (!is_record(data) || "dependencies" in data) return false;
|
|
601
|
+
Object.assign(data, { dependencies: hashes.get(entry.key) ?? graph.closure_hash(entry.key) });
|
|
602
|
+
return true;
|
|
603
|
+
}
|
|
604
|
+
function record2(cache_file, hashes, graph) {
|
|
605
|
+
const entries = read_entries(cache_file);
|
|
606
|
+
if (entries === void 0) return;
|
|
607
|
+
const recorded = entries.filter((entry) => record_entry(entry, hashes, graph));
|
|
608
|
+
if (recorded.length > 0) write_entries(cache_file, entries);
|
|
609
|
+
}
|
|
610
|
+
async function guard_counted(cache_file, run3, root = process.cwd()) {
|
|
611
|
+
const graph = await import_graph.create(root);
|
|
612
|
+
if (graph === void 0) return { result: await run3() };
|
|
613
|
+
const location = path5.resolve(root, cache_file);
|
|
614
|
+
const { hashes, drop } = drop_stale(location, graph);
|
|
615
|
+
const result = await run3();
|
|
616
|
+
record2(location, hashes, graph);
|
|
617
|
+
return { result, drop };
|
|
618
|
+
}
|
|
619
|
+
async function guard(cache_file, run3, root = process.cwd()) {
|
|
620
|
+
const { result } = await guard_counted(cache_file, run3, root);
|
|
621
|
+
return result;
|
|
622
|
+
}
|
|
623
|
+
var eslint_cache_dependencies = { guard, guard_counted };
|
|
624
|
+
|
|
625
|
+
// scripts/lint/lint-shard.ts
|
|
626
|
+
var SHARD_FLAG_PREFIX = "--shard=";
|
|
627
|
+
var FIRST_SHARD = 1;
|
|
628
|
+
var SECOND_SHARD = 2;
|
|
629
|
+
var WHOLE_TREE = ".";
|
|
630
|
+
var IGNORE_PATTERN_FLAG = "--ignore-pattern";
|
|
631
|
+
var FORMATTING_SHARD_REASON = `shard ${String(FIRST_SHARD)} checks the whole tree's formatting`;
|
|
632
|
+
var FIRST_SHARD_DIRECTORIES = [
|
|
633
|
+
"scripts/run",
|
|
634
|
+
"scripts/issue",
|
|
635
|
+
"scripts/epic",
|
|
636
|
+
"scripts/review"
|
|
637
|
+
];
|
|
638
|
+
var SHARDS = [FIRST_SHARD, SECOND_SHARD];
|
|
639
|
+
function parse_shard(value) {
|
|
640
|
+
const shard = Number(value);
|
|
641
|
+
if (shard === FIRST_SHARD || shard === SECOND_SHARD) return shard;
|
|
642
|
+
throw new Error(
|
|
643
|
+
`josh lint: unknown shard "${value}" \u2014 use --shard=${String(FIRST_SHARD)} or --shard=${String(SECOND_SHARD)}`
|
|
644
|
+
);
|
|
645
|
+
}
|
|
646
|
+
function shard_of(arguments_) {
|
|
647
|
+
const flag = arguments_.find((argument) => argument.startsWith(SHARD_FLAG_PREFIX));
|
|
648
|
+
return flag === void 0 ? void 0 : parse_shard(flag.slice(SHARD_FLAG_PREFIX.length));
|
|
649
|
+
}
|
|
650
|
+
function shard_flag(shard) {
|
|
651
|
+
return `${SHARD_FLAG_PREFIX}${String(shard)}`;
|
|
652
|
+
}
|
|
653
|
+
function second_shard_targets() {
|
|
654
|
+
return [
|
|
655
|
+
WHOLE_TREE,
|
|
656
|
+
...FIRST_SHARD_DIRECTORIES.flatMap((directory) => [IGNORE_PATTERN_FLAG, `${directory}/`])
|
|
657
|
+
];
|
|
658
|
+
}
|
|
659
|
+
function eslint_targets(shard) {
|
|
660
|
+
if (shard === void 0) return [WHOLE_TREE];
|
|
661
|
+
return shard === FIRST_SHARD ? FIRST_SHARD_DIRECTORIES : second_shard_targets();
|
|
662
|
+
}
|
|
663
|
+
function checks_formatting(shard) {
|
|
664
|
+
return shard !== SECOND_SHARD;
|
|
665
|
+
}
|
|
666
|
+
function describe(shard) {
|
|
667
|
+
if (shard === void 0) return "";
|
|
668
|
+
return ` \xB7 shard ${String(shard)} of ${String(SECOND_SHARD)}`;
|
|
669
|
+
}
|
|
670
|
+
var lint_shard = {
|
|
671
|
+
FIRST_SHARD_DIRECTORIES,
|
|
672
|
+
FORMATTING_SHARD_REASON,
|
|
673
|
+
SHARDS,
|
|
674
|
+
WHOLE_TREE,
|
|
675
|
+
checks_formatting,
|
|
676
|
+
describe,
|
|
677
|
+
eslint_targets,
|
|
678
|
+
shard_flag,
|
|
679
|
+
shard_of
|
|
680
|
+
};
|
|
681
|
+
|
|
682
|
+
// scripts/lint/format-steps.ts
|
|
683
|
+
async function in_order(steps, execute) {
|
|
684
|
+
const results = [];
|
|
685
|
+
for (const step of steps) {
|
|
686
|
+
results.push(await execute(step));
|
|
687
|
+
}
|
|
688
|
+
return results;
|
|
689
|
+
}
|
|
690
|
+
async function run_step(step, directory) {
|
|
691
|
+
const environment3 = step.check === "eslint" ? { env: eslint_heap.environment(), extendEnv: false } : {};
|
|
692
|
+
const launch = direct_launch(directory, step.args);
|
|
693
|
+
const result = await execa(launch.file, [...launch.args], {
|
|
694
|
+
cwd: directory,
|
|
695
|
+
stdio: "inherit",
|
|
696
|
+
reject: false,
|
|
697
|
+
...environment3
|
|
698
|
+
});
|
|
699
|
+
return result.exitCode ?? 1;
|
|
700
|
+
}
|
|
701
|
+
async function run_unless_skipped(step, directory) {
|
|
702
|
+
const reason = step.check === "eslint" ? project_checks.eslint_skip_reason(directory) : project_checks.prettier_skip_reason(directory);
|
|
703
|
+
if (reason === void 0) return await run_step(step, directory);
|
|
704
|
+
console.info(project_checks.skip_notice(step.check, reason));
|
|
705
|
+
return 0;
|
|
706
|
+
}
|
|
707
|
+
async function run2(steps, cache_file, directory) {
|
|
708
|
+
const results = await in_order(steps, async (step) => {
|
|
709
|
+
if (step.check !== "eslint") return await run_unless_skipped(step, directory);
|
|
710
|
+
return await eslint_cache_dependencies.guard(
|
|
711
|
+
cache_file,
|
|
712
|
+
async () => await run_unless_skipped(step, directory),
|
|
713
|
+
directory
|
|
714
|
+
);
|
|
715
|
+
});
|
|
716
|
+
return results.find((code) => code !== 0) ?? 0;
|
|
717
|
+
}
|
|
718
|
+
async function run_scoped(scope, directory) {
|
|
719
|
+
const files = scope.mode === "all" ? [lint_shard.WHOLE_TREE] : scope.files;
|
|
720
|
+
const eslint = [...lint_related_scope.eslint_arguments(files), "--fix"];
|
|
721
|
+
const prettier = lint_related_scope.prettier_arguments(files, void 0, directory);
|
|
722
|
+
const steps = [{ check: "eslint", args: eslint }];
|
|
723
|
+
if (scope.mode === "all" || !prettier.includes(project_checks.WEB_FILES)) {
|
|
724
|
+
steps.push({
|
|
725
|
+
check: "prettier",
|
|
726
|
+
args: prettier.map((argument) => argument === "--check" ? "--write" : argument)
|
|
727
|
+
});
|
|
728
|
+
}
|
|
729
|
+
return await run2(steps, lint_related_scope.RELATED_CACHES.eslint_file, directory);
|
|
730
|
+
}
|
|
731
|
+
var format_steps = { in_order, run: run2, run_scoped };
|
|
732
|
+
|
|
733
|
+
// scripts/hooks/edited-cspell.ts
|
|
734
|
+
import { existsSync } from "node:fs";
|
|
735
|
+
import path6 from "node:path";
|
|
736
|
+
var CSPELL_EXTENSIONS = /* @__PURE__ */ new Set([
|
|
737
|
+
".ts",
|
|
738
|
+
".tsx",
|
|
739
|
+
".js",
|
|
740
|
+
".jsx",
|
|
741
|
+
".mjs",
|
|
742
|
+
".cjs",
|
|
743
|
+
".svelte",
|
|
744
|
+
".md",
|
|
745
|
+
".mdx",
|
|
746
|
+
".txt",
|
|
747
|
+
".json",
|
|
748
|
+
".jsonc",
|
|
749
|
+
".yml",
|
|
750
|
+
".yaml",
|
|
751
|
+
".html",
|
|
752
|
+
".css"
|
|
753
|
+
]);
|
|
754
|
+
var CSPELL_ARGS = [
|
|
755
|
+
"lint",
|
|
756
|
+
"--words-only",
|
|
757
|
+
"--unique",
|
|
758
|
+
"--no-progress",
|
|
759
|
+
"--no-summary"
|
|
760
|
+
];
|
|
761
|
+
var CSPELL_BIN = "cspell";
|
|
762
|
+
var STDIN_SCHEME = "stdin://";
|
|
763
|
+
var HEADER = "The edit hook found words cspell does not know; fix them or add them to `cspell.config.yaml` now rather than at the gate:";
|
|
764
|
+
var MAX_DIAGNOSTIC_CHARS = 4e3;
|
|
765
|
+
var TRUNCATION_NOTICE = "\n\u2026(unknown words truncated)";
|
|
766
|
+
function is_checkable(file_path, project_root) {
|
|
767
|
+
if (!existsSync(file_path) || !CSPELL_EXTENSIONS.has(path6.extname(file_path).toLowerCase())) {
|
|
768
|
+
return false;
|
|
769
|
+
}
|
|
770
|
+
const relative = path6.relative(path6.resolve(project_root), path6.resolve(file_path));
|
|
771
|
+
return relative !== "" && !relative.startsWith("..") && !path6.isAbsolute(relative);
|
|
772
|
+
}
|
|
773
|
+
function cspell_command(project_root) {
|
|
774
|
+
return direct_launch(project_root, ["exec", CSPELL_BIN]);
|
|
775
|
+
}
|
|
776
|
+
async function run_cspell(request) {
|
|
777
|
+
const launch = cspell_command(request.project_root);
|
|
778
|
+
const target = `${STDIN_SCHEME}${path6.resolve(request.file_path)}`;
|
|
779
|
+
const result = await execa(launch.file, [...launch.args, ...CSPELL_ARGS, target], {
|
|
780
|
+
reject: false,
|
|
781
|
+
cwd: request.project_root,
|
|
782
|
+
input: request.text,
|
|
783
|
+
stdout: "pipe",
|
|
784
|
+
stderr: "ignore",
|
|
785
|
+
timeout: HOOK_PROCESS_TIMEOUT_MS
|
|
786
|
+
});
|
|
787
|
+
return result.stdout;
|
|
788
|
+
}
|
|
789
|
+
function format_unknown_words(stdout) {
|
|
790
|
+
const words = stdout.split("\n").map((word) => word.trim()).filter((word) => word.length > 0);
|
|
791
|
+
if (words.length === 0) return void 0;
|
|
792
|
+
const joined = words.join("\n");
|
|
793
|
+
const body = joined.length > MAX_DIAGNOSTIC_CHARS ? `${joined.slice(0, MAX_DIAGNOSTIC_CHARS)}${TRUNCATION_NOTICE}` : joined;
|
|
794
|
+
return `${HEADER}
|
|
795
|
+
${body}`;
|
|
796
|
+
}
|
|
797
|
+
async function spelling_diagnostics(file_path, project_root, text, runner = run_cspell) {
|
|
798
|
+
if (file_path === void 0 || !is_checkable(file_path, project_root)) return void 0;
|
|
799
|
+
try {
|
|
800
|
+
return format_unknown_words(await runner({ file_path, project_root, text }));
|
|
801
|
+
} catch {
|
|
802
|
+
return void 0;
|
|
803
|
+
}
|
|
804
|
+
}
|
|
805
|
+
var edited_cspell = { cspell_command, format_unknown_words, run_cspell, spelling_diagnostics };
|
|
806
|
+
|
|
807
|
+
// scripts/hooks/format-rewrite-notice.ts
|
|
808
|
+
var MAX_REWRITE_CHARS = 600;
|
|
809
|
+
var REWRITE_TRUNCATION_NOTICE = "\n\u2026(truncated)";
|
|
810
|
+
var REWRITE_HEADER = "The format hook rewrote this file, so your copy is stale; re-read these lines before the next Edit.";
|
|
811
|
+
var REWRITE_RANGE_PREFIX = "Lines ";
|
|
812
|
+
var LINE_SEPARATOR4 = "\n";
|
|
813
|
+
var FIRST_LINE = 1;
|
|
814
|
+
function common_prefix_length(before, after) {
|
|
815
|
+
const limit = Math.min(before.length, after.length);
|
|
816
|
+
let index = 0;
|
|
817
|
+
while (index < limit && before[index] === after[index]) index += 1;
|
|
818
|
+
return index;
|
|
819
|
+
}
|
|
820
|
+
function common_suffix_length(before, after, prefix) {
|
|
821
|
+
const limit = Math.min(before.length, after.length) - prefix;
|
|
822
|
+
let index = 0;
|
|
823
|
+
while (index < limit && before.at(-1 - index) === after.at(-1 - index)) index += 1;
|
|
824
|
+
return index;
|
|
825
|
+
}
|
|
826
|
+
function changed_range(before, after) {
|
|
827
|
+
const before_lines = before.split(LINE_SEPARATOR4);
|
|
828
|
+
const after_lines = after.split(LINE_SEPARATOR4);
|
|
829
|
+
const prefix = common_prefix_length(before_lines, after_lines);
|
|
830
|
+
const last = after_lines.length - common_suffix_length(before_lines, after_lines, prefix);
|
|
831
|
+
return {
|
|
832
|
+
start_line: prefix + FIRST_LINE,
|
|
833
|
+
end_line: Math.max(prefix + FIRST_LINE, last),
|
|
834
|
+
body: after_lines.slice(prefix, last).join(LINE_SEPARATOR4)
|
|
835
|
+
};
|
|
836
|
+
}
|
|
837
|
+
function cap_body(body, budget) {
|
|
838
|
+
if (body.length <= budget) return body;
|
|
839
|
+
return `${body.slice(0, Math.max(0, budget - REWRITE_TRUNCATION_NOTICE.length))}${REWRITE_TRUNCATION_NOTICE}`;
|
|
840
|
+
}
|
|
841
|
+
function build(before, after) {
|
|
842
|
+
if (before === after) return void 0;
|
|
843
|
+
const range = changed_range(before, after);
|
|
844
|
+
const head = `${REWRITE_HEADER}
|
|
845
|
+
${REWRITE_RANGE_PREFIX}${String(range.start_line)}-${String(range.end_line)}:
|
|
846
|
+
`;
|
|
847
|
+
return `${head}${cap_body(range.body, MAX_REWRITE_CHARS - head.length)}`;
|
|
848
|
+
}
|
|
849
|
+
function read_text3(file_path) {
|
|
850
|
+
return file_path === void 0 ? "" : file_reader.read_if_readable(file_path) ?? "";
|
|
851
|
+
}
|
|
852
|
+
var rewrite_notice = { build, read_text: read_text3 };
|
|
853
|
+
|
|
854
|
+
// scripts/hooks/format-edited-file.ts
|
|
855
|
+
var hook_payload_schema = external_exports.object({
|
|
856
|
+
tool_input: external_exports.object({ file_path: external_exports.string().min(1) }).optional()
|
|
857
|
+
});
|
|
858
|
+
var PRETTIER_EXTENSIONS = /* @__PURE__ */ new Set([
|
|
859
|
+
".ts",
|
|
860
|
+
".tsx",
|
|
861
|
+
".js",
|
|
862
|
+
".jsx",
|
|
863
|
+
".mjs",
|
|
864
|
+
".cjs",
|
|
865
|
+
".svelte",
|
|
866
|
+
".json",
|
|
867
|
+
".jsonc",
|
|
868
|
+
".md",
|
|
869
|
+
".yml",
|
|
870
|
+
".yaml",
|
|
871
|
+
".css",
|
|
872
|
+
".html"
|
|
873
|
+
]);
|
|
874
|
+
var ESLINT_EXTENSIONS = /* @__PURE__ */ new Set([".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs", ".svelte"]);
|
|
875
|
+
var EXCLUDED_ANYWHERE = /* @__PURE__ */ new Set(["node_modules", ".git"]);
|
|
876
|
+
var EXCLUDED_AT_ROOT = /* @__PURE__ */ new Set(["dist", "build"]);
|
|
877
|
+
var PARENT_SEGMENT = "..";
|
|
878
|
+
var PRETTIER_BIN = "prettier";
|
|
879
|
+
var PRETTIER_ARGUMENTS = ["--write", "--ignore-unknown"];
|
|
880
|
+
var ESLINT_BIN2 = "eslint";
|
|
881
|
+
var ESLINT_ARGUMENTS = [
|
|
882
|
+
"--fix",
|
|
883
|
+
"--no-error-on-unmatched-pattern",
|
|
884
|
+
...ESLINT_EDIT_CACHE_FLAGS
|
|
885
|
+
];
|
|
886
|
+
var { ESLINT_DAEMON: ESLINT_DAEMON2 } = eslint_daemon;
|
|
887
|
+
var DAEMON_RESTART = "restart";
|
|
888
|
+
var DIAGNOSTIC_HEADER = "The edit hook could not auto-fix these lint problems; address them now rather than at the gate:";
|
|
889
|
+
var MAX_DIAGNOSTIC_CHARS2 = 4e3;
|
|
890
|
+
var DIAGNOSTIC_TRUNCATION_NOTICE = "\n\u2026(diagnostics truncated)";
|
|
891
|
+
var SECTION_SEPARATOR = "\n\n";
|
|
892
|
+
function parse_edited_path(raw_payload) {
|
|
893
|
+
return json_value.parse_with(raw_payload, hook_payload_schema)?.tool_input?.file_path;
|
|
894
|
+
}
|
|
895
|
+
function is_excluded(relative_path) {
|
|
896
|
+
const segments = relative_path.split(path7.sep);
|
|
897
|
+
return segments.some((segment) => EXCLUDED_ANYWHERE.has(segment)) || EXCLUDED_AT_ROOT.has(segments[0] ?? "");
|
|
898
|
+
}
|
|
899
|
+
function relative_to_root(project_root, file_path) {
|
|
900
|
+
const relative = path7.relative(path7.resolve(project_root), path7.resolve(file_path));
|
|
901
|
+
const is_inside_root = relative !== "" && relative.split(path7.sep)[0] !== PARENT_SEGMENT && !path7.isAbsolute(relative);
|
|
902
|
+
return is_inside_root ? relative : void 0;
|
|
903
|
+
}
|
|
904
|
+
function is_formattable(file_path, project_root) {
|
|
905
|
+
const relative = relative_to_root(project_root, file_path);
|
|
906
|
+
return relative !== void 0 && !is_excluded(relative) && existsSync2(file_path);
|
|
907
|
+
}
|
|
908
|
+
function plan_commands(file_path, project_root) {
|
|
909
|
+
if (!is_formattable(file_path, project_root)) return [];
|
|
910
|
+
const extension = path7.extname(file_path).toLowerCase();
|
|
911
|
+
const commands = [];
|
|
912
|
+
if (ESLINT_EXTENSIONS.has(extension)) {
|
|
913
|
+
commands.push({ bin: ESLINT_BIN2, command_arguments: [...ESLINT_ARGUMENTS, file_path] });
|
|
914
|
+
}
|
|
915
|
+
if (PRETTIER_EXTENSIONS.has(extension)) {
|
|
916
|
+
commands.push({ bin: PRETTIER_BIN, command_arguments: [...PRETTIER_ARGUMENTS, file_path] });
|
|
917
|
+
}
|
|
918
|
+
return commands;
|
|
919
|
+
}
|
|
920
|
+
function select_invocation(command, routes) {
|
|
921
|
+
if (routes.daemon_cli !== void 0) {
|
|
922
|
+
return {
|
|
923
|
+
bin: process.execPath,
|
|
924
|
+
command_arguments: [routes.daemon_cli, ...command.command_arguments]
|
|
925
|
+
};
|
|
926
|
+
}
|
|
927
|
+
return { bin: routes.launch.file, command_arguments: routes.launch.args };
|
|
928
|
+
}
|
|
929
|
+
var DAEMON_BINS = /* @__PURE__ */ new Set([ESLINT_BIN2, ESLINT_DAEMON2]);
|
|
930
|
+
function resolve_daemon_cli2(bin, project_root) {
|
|
931
|
+
if (!DAEMON_BINS.has(bin)) return void 0;
|
|
932
|
+
return eslint_daemon.resolve_daemon_cli(project_root);
|
|
933
|
+
}
|
|
934
|
+
function plan_daemon_restart(file_path, project_root) {
|
|
935
|
+
const relative = relative_to_root(project_root, file_path);
|
|
936
|
+
if (relative === void 0 || !eslint_daemon.is_config_input(relative) || resolve_daemon_cli2(ESLINT_DAEMON2, project_root) === void 0) {
|
|
937
|
+
return [];
|
|
938
|
+
}
|
|
939
|
+
return [{ bin: ESLINT_DAEMON2, command_arguments: [DAEMON_RESTART] }];
|
|
940
|
+
}
|
|
941
|
+
function resolve_invocations(command, project_root) {
|
|
942
|
+
const routes = {
|
|
943
|
+
daemon_cli: resolve_daemon_cli2(command.bin, project_root),
|
|
944
|
+
launch: direct_launch(project_root, ["exec", command.bin, ...command.command_arguments])
|
|
945
|
+
};
|
|
946
|
+
const without_daemon = select_invocation(command, { ...routes, daemon_cli: void 0 });
|
|
947
|
+
if (routes.daemon_cli === void 0) return [without_daemon];
|
|
948
|
+
return [select_invocation(command, routes), without_daemon];
|
|
949
|
+
}
|
|
950
|
+
function is_start_failure2(outcome) {
|
|
951
|
+
return outcome.exit_code !== 0 && outcome.stdout.length === 0;
|
|
952
|
+
}
|
|
953
|
+
async function spawn_invocation(invocation, project_root) {
|
|
954
|
+
const result = await execa(invocation.bin, [...invocation.command_arguments], {
|
|
955
|
+
reject: false,
|
|
956
|
+
cwd: project_root,
|
|
957
|
+
env: eslint_daemon.launch_environment(),
|
|
958
|
+
stdout: "pipe",
|
|
959
|
+
stderr: "ignore",
|
|
960
|
+
timeout: HOOK_PROCESS_TIMEOUT_MS
|
|
961
|
+
});
|
|
962
|
+
return { exit_code: result.exitCode ?? 1, stdout: result.stdout };
|
|
963
|
+
}
|
|
964
|
+
async function run_command(command, project_root) {
|
|
965
|
+
let outcome = { exit_code: 0, stdout: "" };
|
|
966
|
+
for (const invocation of resolve_invocations(command, project_root)) {
|
|
967
|
+
outcome = await spawn_invocation(invocation, project_root);
|
|
968
|
+
if (!is_start_failure2(outcome)) return outcome;
|
|
969
|
+
}
|
|
970
|
+
return outcome;
|
|
971
|
+
}
|
|
972
|
+
function eslint_unfixed(command, outcome) {
|
|
973
|
+
if (command.bin !== ESLINT_BIN2 || outcome.exit_code === 0 || outcome.stdout.length === 0) {
|
|
974
|
+
return void 0;
|
|
975
|
+
}
|
|
976
|
+
return outcome.stdout;
|
|
977
|
+
}
|
|
978
|
+
function format_diagnostics(unfixed) {
|
|
979
|
+
if (unfixed === void 0) return void 0;
|
|
980
|
+
const is_over = unfixed.length > MAX_DIAGNOSTIC_CHARS2;
|
|
981
|
+
const body = is_over ? `${unfixed.slice(0, MAX_DIAGNOSTIC_CHARS2)}${DIAGNOSTIC_TRUNCATION_NOTICE}` : unfixed;
|
|
982
|
+
return `${DIAGNOSTIC_HEADER}
|
|
983
|
+
${body}`;
|
|
984
|
+
}
|
|
985
|
+
async function collect_unfixed(plan, runner, project_root) {
|
|
986
|
+
const results = await format_steps.in_order(plan, async (command) => {
|
|
987
|
+
try {
|
|
988
|
+
return eslint_unfixed(command, await runner(command, project_root));
|
|
989
|
+
} catch {
|
|
990
|
+
return "";
|
|
991
|
+
}
|
|
992
|
+
});
|
|
993
|
+
return results.findLast(Boolean) ?? "";
|
|
994
|
+
}
|
|
995
|
+
function linted_path(plan, file_path, project_root) {
|
|
996
|
+
if (plan.every((command) => command.bin !== ESLINT_BIN2)) return void 0;
|
|
997
|
+
return relative_to_root(project_root, file_path);
|
|
998
|
+
}
|
|
999
|
+
async function record_lint(project_root) {
|
|
1000
|
+
const call = { caller: eslint_daemon_calls.DAEMON_CALLER.EDIT_HOOK, files: 1 };
|
|
1001
|
+
eslint_daemon.record_call(project_root, call);
|
|
1002
|
+
await eslint_trim.trim(project_root);
|
|
1003
|
+
}
|
|
1004
|
+
async function format_edited_file(raw_payload, runner, project_root) {
|
|
1005
|
+
const file_path = parse_edited_path(raw_payload);
|
|
1006
|
+
if (file_path === void 0) return void 0;
|
|
1007
|
+
const plan = [
|
|
1008
|
+
...plan_commands(file_path, project_root),
|
|
1009
|
+
...plan_daemon_restart(file_path, project_root)
|
|
1010
|
+
];
|
|
1011
|
+
const daemon_before = eslint_daemon.read_record(project_root);
|
|
1012
|
+
const unfixed = await collect_unfixed(plan, runner, project_root);
|
|
1013
|
+
const linted = linted_path(plan, file_path, project_root);
|
|
1014
|
+
eslint_daemon.remember_after_edit(project_root, daemon_before, linted);
|
|
1015
|
+
if (linted !== void 0) await record_lint(project_root);
|
|
1016
|
+
return format_diagnostics(unfixed === "" ? void 0 : unfixed);
|
|
1017
|
+
}
|
|
1018
|
+
async function format_edited_payload(raw_payload, project_root) {
|
|
1019
|
+
return await format_edited_file(raw_payload, run_command, project_root);
|
|
1020
|
+
}
|
|
1021
|
+
var HOOK_EVENT_NAME = "PostToolUse";
|
|
1022
|
+
function build_envelope(additional_context) {
|
|
1023
|
+
return JSON.stringify({
|
|
1024
|
+
hookSpecificOutput: { hookEventName: HOOK_EVENT_NAME, additionalContext: additional_context }
|
|
1025
|
+
});
|
|
1026
|
+
}
|
|
1027
|
+
function compose_context(notice, diagnostics) {
|
|
1028
|
+
const sections = [notice, diagnostics].filter(
|
|
1029
|
+
(section) => section !== void 0
|
|
1030
|
+
);
|
|
1031
|
+
return sections.length === 0 ? void 0 : sections.join(SECTION_SEPARATOR);
|
|
1032
|
+
}
|
|
1033
|
+
function report_no_payload() {
|
|
1034
|
+
process.stderr.write(
|
|
1035
|
+
"format:edited reads a Claude Code PostToolUse payload on stdin; it is not run by hand.\n"
|
|
1036
|
+
);
|
|
1037
|
+
}
|
|
1038
|
+
async function run_hook(payload) {
|
|
1039
|
+
const notice = time_density_hook.density_notice(payload);
|
|
1040
|
+
const file_path = parse_edited_path(payload);
|
|
1041
|
+
const before = rewrite_notice.read_text(file_path);
|
|
1042
|
+
const pending_spelling = edited_cspell.spelling_diagnostics(file_path, process.cwd(), before);
|
|
1043
|
+
const lint = await format_edited_payload(payload, process.cwd());
|
|
1044
|
+
const rewrite = rewrite_notice.build(before, rewrite_notice.read_text(file_path));
|
|
1045
|
+
const spelling = await pending_spelling;
|
|
1046
|
+
const parts = compose_context(rewrite, compose_context(lint, spelling));
|
|
1047
|
+
const context = compose_context(notice, parts);
|
|
1048
|
+
if (context !== void 0) process.stdout.write(`${build_envelope(context)}
|
|
1049
|
+
`);
|
|
1050
|
+
}
|
|
1051
|
+
|
|
1052
|
+
export {
|
|
1053
|
+
time_density_hook,
|
|
1054
|
+
format_edited_payload,
|
|
1055
|
+
build_envelope,
|
|
1056
|
+
compose_context,
|
|
1057
|
+
report_no_payload,
|
|
1058
|
+
run_hook
|
|
1059
|
+
};
|