@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
|
@@ -138,15 +138,29 @@ function follow_up_title(subject: SpillSubject): string {
|
|
|
138
138
|
return `Follow up ${issue_cite.plain_for('github', subject.issue_number)}: ${subject.title}`
|
|
139
139
|
}
|
|
140
140
|
|
|
141
|
-
//
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
141
|
+
// The plain-language summary `issue:file` requires first, for the person deciding on the follow-up,
|
|
142
|
+
// then the background's opening line.
|
|
143
|
+
function opening_lines(origin: string): ReadonlyArray<string> {
|
|
145
144
|
return [
|
|
145
|
+
issue_body_keys.heading('summary'),
|
|
146
|
+
'',
|
|
147
|
+
`**${origin} の受け入れ条件のうち、終わらなかった分を引き継ぐ Issue です。**`,
|
|
148
|
+
'',
|
|
149
|
+
`${origin} は一度に収まらなかったため、残った条件をここへ移し、${origin} は終わった分だけで閉じます。下の受け入れ条件を満たせば完了です。`,
|
|
150
|
+
'',
|
|
146
151
|
BACKGROUND_HEADING,
|
|
147
152
|
'',
|
|
148
153
|
`${origin} から切り出し。`,
|
|
149
154
|
'',
|
|
155
|
+
]
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
// `sizing` is the caller's size lines: the estimate, then a reason line when one was given.
|
|
159
|
+
function follow_up_body(subject: SpillSubject, sizing: ReadonlyArray<string>): string {
|
|
160
|
+
const origin = issue_cite.plain_for('github', subject.issue_number)
|
|
161
|
+
|
|
162
|
+
return [
|
|
163
|
+
...opening_lines(origin),
|
|
150
164
|
...declarations(subject.body),
|
|
151
165
|
...sizing,
|
|
152
166
|
'',
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { existsSync, readFileSync } from 'node:fs'
|
|
2
|
+
import path from 'node:path'
|
|
2
3
|
import { package_path } from '#scripts/init/init-paths'
|
|
3
4
|
import { issue_body_keys, type Column } from './issue-body-keys'
|
|
4
5
|
import { markdown_section } from './markdown-section'
|
|
@@ -34,6 +35,11 @@ function section_of(document: string, heading: string): string | undefined {
|
|
|
34
35
|
return [heading, ...markdown_section.section_lines(template, heading)].join('\n').trimEnd()
|
|
35
36
|
}
|
|
36
37
|
|
|
38
|
+
// The template document's file name in the body's column, for a refusal that sends the filer to it.
|
|
39
|
+
function document_name(): string {
|
|
40
|
+
return path.basename(TEMPLATE_PATHS[issue_body_keys.column()])
|
|
41
|
+
}
|
|
42
|
+
|
|
37
43
|
// A package without the template prints the bare problem rather than failing the lint.
|
|
38
44
|
function section(heading: string): string | undefined {
|
|
39
45
|
const template_path = package_path(TEMPLATE_PATHS[issue_body_keys.column()])
|
|
@@ -43,6 +49,6 @@ function section(heading: string): string | undefined {
|
|
|
43
49
|
return section_of(readFileSync(template_path, 'utf8'), heading)
|
|
44
50
|
}
|
|
45
51
|
|
|
46
|
-
const issue_template_section = { section, section_of }
|
|
52
|
+
const issue_template_section = { document_name, section, section_of }
|
|
47
53
|
|
|
48
54
|
export { issue_template_section }
|
|
@@ -512,10 +512,10 @@ const AI_COMMANDS: Record<string, CommandEntry> = {
|
|
|
512
512
|
'lane:stats': {
|
|
513
513
|
...MEASURE_ARGUMENTS,
|
|
514
514
|
description:
|
|
515
|
-
'Print period lane throughput, stage, stop (by failed CI check, longest first), check, runnable-to-dispatch wait and machine-load statistics; --sinks shows stage totals, --over lane chains, --why cause groups above a net-minute threshold, and --pairs scoped pair runs',
|
|
515
|
+
'Print period lane throughput, stage, stop (by failed CI check, longest first), check, runnable-to-dispatch wait and machine-load statistics; the per-lane core-budget wait and pre-split miss tables show their first 10 rows and a count of the rest unless --all; --sinks shows stage totals, --over lane chains, --why cause groups above a net-minute threshold, and --pairs scoped pair runs',
|
|
516
516
|
category: 'AI tools',
|
|
517
517
|
reference: [
|
|
518
|
-
'(--period <days> | --since <instant>) [--limit <lane-limit> | --sinks [<minutes>] | --over <minutes> | --why <minutes> | --pairs]',
|
|
518
|
+
'(--period <days> | --since <instant>) [[--limit <lane-limit>] [--all] | --sinks [<minutes>] | --over <minutes> | --why <minutes> | --pairs]',
|
|
519
519
|
'maintainer',
|
|
520
520
|
['none'],
|
|
521
521
|
],
|
|
@@ -523,6 +523,7 @@ const AI_COMMANDS: Record<string, CommandEntry> = {
|
|
|
523
523
|
usage: {
|
|
524
524
|
examples: [
|
|
525
525
|
{ arguments: '--period 7', note: "a 7-day period's stage medians and maxima" },
|
|
526
|
+
{ arguments: '--period 7 --all', note: 'the same with every per-lane table row' },
|
|
526
527
|
{ arguments: '--period 1 --sinks', note: 'stage totals of the lanes over 30 net min' },
|
|
527
528
|
{ arguments: '--period 1 --over 40', note: 'ledger chains of lanes over 40 net min' },
|
|
528
529
|
{ arguments: '--period 1 --why 40', note: 'cause groups of lanes over 40 net min' },
|
|
@@ -7,8 +7,10 @@ import { lane_stats, type StatsWindow } from './lane-stats'
|
|
|
7
7
|
// reduced to one row per stage and reason, printed by `josh lane:stats` so the re-runs that dominate a
|
|
8
8
|
// lane's implement time are counted by cause (joshuafolkken/kit#7024).
|
|
9
9
|
//
|
|
10
|
-
// **A stop lasts until the
|
|
11
|
-
//
|
|
10
|
+
// **A stop lasts until the run goes on for its issue** — the next `run:chain` or `josh ship` lap to
|
|
11
|
+
// start, its end less its length: a held review is settled and shipped, not re-chained
|
|
12
|
+
// (joshuafolkken/kit#7580). A stop nothing followed is counted under `not re-run`, kept out of the
|
|
13
|
+
// minutes.
|
|
12
14
|
|
|
13
15
|
const COLUMNS = ['stopped at', 'stops', 'to re-run (min)', 'median (min)', 'not re-run'] as const
|
|
14
16
|
const JOIN_SUFFIX = ' --join'
|
|
@@ -21,15 +23,25 @@ interface ChainStop {
|
|
|
21
23
|
wait_ms: number | undefined
|
|
22
24
|
}
|
|
23
25
|
|
|
26
|
+
// A ledger row that marks the run going on: a `run:chain` or a `josh ship` lap.
|
|
27
|
+
type Resume = Extract<
|
|
28
|
+
LedgerEntry,
|
|
29
|
+
{ kind: typeof lane_ledger.KIND.CHAIN | typeof lane_ledger.KIND.SHIP_LAP }
|
|
30
|
+
>
|
|
31
|
+
|
|
24
32
|
function is_chain(entry: LedgerEntry): entry is ChainEntry {
|
|
25
33
|
return entry.kind === lane_ledger.KIND.CHAIN
|
|
26
34
|
}
|
|
27
35
|
|
|
28
|
-
function
|
|
29
|
-
return
|
|
36
|
+
function is_resume(entry: LedgerEntry): entry is Resume {
|
|
37
|
+
return is_chain(entry) || entry.kind === lane_ledger.KIND.SHIP_LAP
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function started_ms(run: Resume): number {
|
|
41
|
+
return Date.parse(run.at) - run.elapsed_ms
|
|
30
42
|
}
|
|
31
43
|
|
|
32
|
-
function wait_ms(stop: ChainEntry, runs: ReadonlyArray<
|
|
44
|
+
function wait_ms(stop: ChainEntry, runs: ReadonlyArray<Resume>): number | undefined {
|
|
33
45
|
const stopped_ms = Date.parse(stop.at)
|
|
34
46
|
const starts = runs
|
|
35
47
|
.filter((run) => run.issue === stop.issue)
|
|
@@ -48,7 +60,7 @@ function cause_of(chain: ChainEntry): string | undefined {
|
|
|
48
60
|
|
|
49
61
|
function stops_of(
|
|
50
62
|
period: ReadonlyArray<ChainEntry>,
|
|
51
|
-
runs: ReadonlyArray<
|
|
63
|
+
runs: ReadonlyArray<Resume>,
|
|
52
64
|
): Array<ChainStop> {
|
|
53
65
|
return period.flatMap((chain) => {
|
|
54
66
|
const cause = cause_of(chain)
|
|
@@ -94,7 +106,7 @@ function causes_of(stops: ReadonlyArray<ChainStop>): Array<string> {
|
|
|
94
106
|
function table(entries: ReadonlyArray<LedgerEntry>, window: StatsWindow): string {
|
|
95
107
|
const stops = stops_of(
|
|
96
108
|
lane_stats.in_window(entries, window).filter(is_chain),
|
|
97
|
-
entries.filter(
|
|
109
|
+
entries.filter(is_resume),
|
|
98
110
|
)
|
|
99
111
|
const rows = causes_of(stops).map((cause) => cause_row(cause, stops))
|
|
100
112
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { MS_PER_MINUTE, MS_PER_SECOND } from '#scripts/lib/timeouts'
|
|
2
|
+
import { lane_concurrency_wait, type LaneWait } from './lane-concurrency-wait'
|
|
2
3
|
import { lane_ledger, type LedgerEntry, type LoadEntry } from './lane-ledger'
|
|
3
4
|
import { lane_stage_stats } from './lane-stage-stats'
|
|
4
5
|
import { lane_stats, type StatsWindow } from './lane-stats'
|
|
@@ -9,7 +10,9 @@ import { lane_transcript_stats } from './lane-transcript-stats'
|
|
|
9
10
|
// (joshuafolkken/kit#7025): the evidence a `JOSH_LANE_LIMIT` or verification-parallelism change is
|
|
10
11
|
// filed from. A call's lane count is the latest load sample's `lanes` at or before it started; a call
|
|
11
12
|
// with no sample within `SAMPLE_MAX_AGE_MS` before it is left out, since an old sample says nothing of
|
|
12
|
-
// the lanes it ran beside.
|
|
13
|
+
// the lanes it ran beside. Each command also reads the median core-budget wait of the calls a wait
|
|
14
|
+
// record ties to (joshuafolkken/kit#7550): beside the elapsed median, it shows how much of a run was
|
|
15
|
+
// admission rather than the run itself.
|
|
13
16
|
|
|
14
17
|
const TIMED_COMMANDS: ReadonlyArray<string> = ['lint:related', 'test:related']
|
|
15
18
|
const SAMPLE_MAX_AGE_MINUTES = 5
|
|
@@ -17,7 +20,11 @@ const SAMPLE_MAX_AGE_MS = SAMPLE_MAX_AGE_MINUTES * MS_PER_MINUTE
|
|
|
17
20
|
const DECIMALS = 1
|
|
18
21
|
const COLUMNS = [
|
|
19
22
|
'concurrent lanes',
|
|
20
|
-
...TIMED_COMMANDS.flatMap((name) => [
|
|
23
|
+
...TIMED_COMMANDS.flatMap((name) => [
|
|
24
|
+
`${name} runs`,
|
|
25
|
+
`${name} median (s)`,
|
|
26
|
+
`${name} core wait median (s)`,
|
|
27
|
+
]),
|
|
21
28
|
]
|
|
22
29
|
|
|
23
30
|
type CountedSample = LoadEntry & { lanes: number }
|
|
@@ -31,6 +38,7 @@ interface TimedRun {
|
|
|
31
38
|
name: string
|
|
32
39
|
lanes: number
|
|
33
40
|
ms: number
|
|
41
|
+
wait_ms: number | undefined
|
|
34
42
|
}
|
|
35
43
|
|
|
36
44
|
function is_counted(entry: LedgerEntry): entry is CountedSample {
|
|
@@ -52,23 +60,35 @@ function lanes_at(samples: ReadonlyArray<LaneSample>, started_ms: number): numbe
|
|
|
52
60
|
: undefined
|
|
53
61
|
}
|
|
54
62
|
|
|
55
|
-
|
|
63
|
+
interface RunRecords {
|
|
64
|
+
samples: ReadonlyArray<LaneSample>
|
|
65
|
+
waits: ReadonlyArray<LaneWait>
|
|
66
|
+
calls: ReadonlyArray<ToolCall>
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
function timed_run(name: string, call: ToolCall, records: RunRecords): Array<TimedRun> {
|
|
70
|
+
const lanes = lanes_at(records.samples, call.started_ms)
|
|
71
|
+
|
|
56
72
|
if (lanes === undefined || call.duration_ms === undefined) return []
|
|
57
73
|
|
|
58
|
-
|
|
74
|
+
const wait_ms = lane_concurrency_wait.wait_ms(records.waits, name, call, records.calls)
|
|
75
|
+
|
|
76
|
+
return [{ name, lanes, ms: call.duration_ms, wait_ms }]
|
|
59
77
|
}
|
|
60
78
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
): Array<TimedRun> {
|
|
79
|
+
// `timed` is the period's calls; `records.calls` is every call, so a call started before the period
|
|
80
|
+
// still holds its own wait records against one inside it.
|
|
81
|
+
function timed_runs(timed: ReadonlyArray<ToolCall>, records: RunRecords): Array<TimedRun> {
|
|
65
82
|
return TIMED_COMMANDS.flatMap((name) =>
|
|
66
|
-
lane_transcript_stats
|
|
67
|
-
.solo_calls(calls, name)
|
|
68
|
-
.flatMap((call) => timed_run(name, call, lanes_at(samples, call.started_ms))),
|
|
83
|
+
lane_transcript_stats.solo_calls(timed, name).flatMap((call) => timed_run(name, call, records)),
|
|
69
84
|
)
|
|
70
85
|
}
|
|
71
86
|
|
|
87
|
+
// A row's waits are the calls a record tied to; a row with none reads `not measured`, never 0.
|
|
88
|
+
function waits_of(runs: ReadonlyArray<TimedRun>): Array<number> {
|
|
89
|
+
return runs.map((run) => run.wait_ms).filter((wait_ms) => wait_ms !== undefined)
|
|
90
|
+
}
|
|
91
|
+
|
|
72
92
|
function seconds_cell(values: ReadonlyArray<number>): string {
|
|
73
93
|
const median = lane_stats.median(values)
|
|
74
94
|
|
|
@@ -80,9 +100,10 @@ function seconds_cell(values: ReadonlyArray<number>): string {
|
|
|
80
100
|
function lane_row(lanes: number, runs: ReadonlyArray<TimedRun>): string {
|
|
81
101
|
const at_count = runs.filter((run) => run.lanes === lanes)
|
|
82
102
|
const cells = TIMED_COMMANDS.flatMap((name) => {
|
|
83
|
-
const
|
|
103
|
+
const named = at_count.filter((run) => run.name === name)
|
|
104
|
+
const durations = named.map((run) => run.ms)
|
|
84
105
|
|
|
85
|
-
return [String(durations.length), seconds_cell(durations)]
|
|
106
|
+
return [String(durations.length), seconds_cell(durations), seconds_cell(waits_of(named))]
|
|
86
107
|
})
|
|
87
108
|
|
|
88
109
|
return lane_stats.to_row([String(lanes), ...cells])
|
|
@@ -95,7 +116,11 @@ function table(
|
|
|
95
116
|
calls: ReadonlyArray<ToolCall>,
|
|
96
117
|
window: StatsWindow,
|
|
97
118
|
): string {
|
|
98
|
-
const runs = timed_runs(lane_transcript_stats.in_period(calls, window),
|
|
119
|
+
const runs = timed_runs(lane_transcript_stats.in_period(calls, window), {
|
|
120
|
+
samples: samples_of(entries),
|
|
121
|
+
waits: lane_concurrency_wait.waits_of(entries),
|
|
122
|
+
calls,
|
|
123
|
+
})
|
|
99
124
|
const counts = [...new Set(runs.map((run) => run.lanes))].toSorted((left, right) => left - right)
|
|
100
125
|
|
|
101
126
|
return [
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { lane_ledger, type CoreWaitEntry, type LedgerEntry } from './lane-ledger'
|
|
2
|
+
import { lane_paused_spans } from './lane-paused-spans'
|
|
3
|
+
import type { ToolCall } from './lane-transcript-calls'
|
|
4
|
+
import { lane_transcript_stats } from './lane-transcript-stats'
|
|
5
|
+
|
|
6
|
+
// The core-budget wait inside one `lint:related` / `test:related` call (joshuafolkken/kit#7550): the
|
|
7
|
+
// `core_wait` records its own lane wrote for the same command while the call ran, summed — one call
|
|
8
|
+
// can admit more than one claim. `undefined` when no record ties to the call: no record is not a
|
|
9
|
+
// zero wait, since an admission with no decision and no wait writes nothing.
|
|
10
|
+
|
|
11
|
+
type LaneWait = CoreWaitEntry & { issue: number }
|
|
12
|
+
|
|
13
|
+
function is_lane_wait(entry: LedgerEntry): entry is LaneWait {
|
|
14
|
+
return (
|
|
15
|
+
(entry.kind === lane_ledger.KIND.CORE_WAIT || entry.kind === lane_ledger.KIND.CORE_ADMISSION) &&
|
|
16
|
+
entry.issue !== undefined
|
|
17
|
+
)
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
function waits_of(entries: ReadonlyArray<LedgerEntry>): Array<LaneWait> {
|
|
21
|
+
return entries.filter((entry) => is_lane_wait(entry))
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
function is_inside(wait: LaneWait, call: ToolCall): boolean {
|
|
25
|
+
const at_ms = Date.parse(wait.at)
|
|
26
|
+
|
|
27
|
+
return at_ms >= call.started_ms && at_ms <= call.started_ms + (call.duration_ms ?? 0)
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// Overlapping same-lane calls of one command (a background run beside a foreground one) would each
|
|
31
|
+
// read the other's records, so a record goes to one call: the latest that started by the time its
|
|
32
|
+
// wait began, else the earliest it falls inside.
|
|
33
|
+
function owner_of(wait: LaneWait, rivals: ReadonlyArray<ToolCall>): ToolCall | undefined {
|
|
34
|
+
const holding = rivals
|
|
35
|
+
.filter((rival) => is_inside(wait, rival))
|
|
36
|
+
.toSorted((left, right) => left.started_ms - right.started_ms)
|
|
37
|
+
const wait_started_ms = Date.parse(wait.at) - wait.waited_ms
|
|
38
|
+
|
|
39
|
+
return holding.findLast((rival) => rival.started_ms <= wait_started_ms) ?? holding[0]
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
function wait_ms(
|
|
43
|
+
waits: ReadonlyArray<LaneWait>,
|
|
44
|
+
name: string,
|
|
45
|
+
call: ToolCall,
|
|
46
|
+
calls: ReadonlyArray<ToolCall>,
|
|
47
|
+
): number | undefined {
|
|
48
|
+
const issue = lane_paused_spans.issue_of_lane(call.lane)
|
|
49
|
+
const rivals = calls.filter(
|
|
50
|
+
(rival) =>
|
|
51
|
+
rival.lane === call.lane &&
|
|
52
|
+
lane_transcript_stats.verification_commands(rival.command).includes(name),
|
|
53
|
+
)
|
|
54
|
+
const tied = waits.filter(
|
|
55
|
+
(wait) => wait.issue === issue && wait.command === name && owner_of(wait, rivals) === call,
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
return tied.length === 0 ? undefined : tied.reduce((sum, wait) => sum + wait.waited_ms, 0)
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
const lane_concurrency_wait = { waits_of, wait_ms }
|
|
62
|
+
|
|
63
|
+
export type { LaneWait }
|
|
64
|
+
export { lane_concurrency_wait }
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { lane_ledger, type CoreWaitEntry, type LedgerEntry } from './lane-ledger'
|
|
2
2
|
import { lane_stage_stats } from './lane-stage-stats'
|
|
3
3
|
import { lane_stats, type StatsWindow } from './lane-stats'
|
|
4
|
+
import { lane_table_rows, type TableOptions } from './lane-table-rows'
|
|
4
5
|
|
|
5
6
|
// How long each lane's commands waited for the core budget: the ledger's `core-wait` entries of one
|
|
6
7
|
// period reduced to one row per lane, printed by `josh lane:stats` so a lane's time splits into work
|
|
@@ -8,6 +9,7 @@ import { lane_stats, type StatsWindow } from './lane-stats'
|
|
|
8
9
|
// main checkout's — by its own row.
|
|
9
10
|
|
|
10
11
|
const COLUMNS = ['lane', 'total (min)', 'median (min)', 'waits'] as const
|
|
12
|
+
const LANE_ROWS = 10
|
|
11
13
|
const OUTSIDE_A_LANE = 'outside a lane'
|
|
12
14
|
const { NOT_MEASURED } = lane_stage_stats
|
|
13
15
|
// A period with no wait: the table still prints, so a reader sees zero waits rather than no table.
|
|
@@ -49,18 +51,25 @@ function lanes_of(waits: ReadonlyArray<CoreWaitEntry>): Array<string> {
|
|
|
49
51
|
)
|
|
50
52
|
}
|
|
51
53
|
|
|
52
|
-
// The period's table: `entries` is the whole ledger, filtered here to `window
|
|
53
|
-
|
|
54
|
+
// The period's table: `entries` is the whole ledger, filtered here to `window`; at most `LANE_ROWS`
|
|
55
|
+
// lanes unless `options` asks for all.
|
|
56
|
+
function table(
|
|
57
|
+
entries: ReadonlyArray<LedgerEntry>,
|
|
58
|
+
window: StatsWindow,
|
|
59
|
+
options: TableOptions,
|
|
60
|
+
): string {
|
|
54
61
|
const waits = lane_stats.in_window(entries, window).filter((entry) => is_core_wait(entry))
|
|
55
62
|
const rows = lanes_of(waits).map((lane) => lane_row(lane, waits))
|
|
56
63
|
|
|
57
64
|
return [
|
|
58
65
|
lane_stats.to_row(COLUMNS),
|
|
59
66
|
lane_stats.to_row(COLUMNS.map(() => '---')),
|
|
60
|
-
...(rows.length === 0
|
|
67
|
+
...(rows.length === 0
|
|
68
|
+
? [lane_stats.to_row(NONE_ROW)]
|
|
69
|
+
: lane_table_rows.capped(rows, LANE_ROWS, options)),
|
|
61
70
|
].join('\n')
|
|
62
71
|
}
|
|
63
72
|
|
|
64
|
-
const lane_core_wait_stats = { table }
|
|
73
|
+
const lane_core_wait_stats = { LANE_ROWS, table }
|
|
65
74
|
|
|
66
75
|
export { lane_core_wait_stats }
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { time_shell } from '#scripts/time-runtime/time-shell'
|
|
2
|
+
import { lane_implement_read } from './lane-implement-read'
|
|
3
|
+
import { lane_implement_stats } from './lane-implement-stats'
|
|
4
|
+
import type { ImplementLane } from './lane-implement-subagents'
|
|
5
|
+
import type { PausedSpans } from './lane-paused-spans'
|
|
6
|
+
import { lane_stage_stats } from './lane-stage-stats'
|
|
7
|
+
import { lane_stats, type StatsWindow } from './lane-stats'
|
|
8
|
+
import type { ToolCall } from './lane-transcript-calls'
|
|
9
|
+
import { lane_transcript_stats } from './lane-transcript-stats'
|
|
10
|
+
|
|
11
|
+
// The implement's `read` sub-stage tool time broken down by call kind (joshuafolkken/kit#7548), so a
|
|
12
|
+
// shortening Issue can pick its target: a josh run is `josh <subcommand>`, another Bash command its
|
|
13
|
+
// leading word past a `cd`, a subagent `Agent:<type>`, any other call its tool name.
|
|
14
|
+
|
|
15
|
+
const BASH_TOOL = 'Bash'
|
|
16
|
+
const AGENT_TOOL = 'Agent'
|
|
17
|
+
const UNKNOWN = 'unknown'
|
|
18
|
+
const TOP_KINDS = 10
|
|
19
|
+
const COLUMNS = [
|
|
20
|
+
'implement read by call',
|
|
21
|
+
'calls',
|
|
22
|
+
'lanes',
|
|
23
|
+
'median per lane (min)',
|
|
24
|
+
'total (min)',
|
|
25
|
+
] as const
|
|
26
|
+
|
|
27
|
+
interface CallTotal {
|
|
28
|
+
calls: number
|
|
29
|
+
ms: number
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
interface KindRow {
|
|
33
|
+
kind: string
|
|
34
|
+
lanes: ReadonlyArray<CallTotal>
|
|
35
|
+
total_ms: number
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// The command `time_shell` reads at the command position — past assignments, wrappers and navigation
|
|
39
|
+
// builtins such as `cd` — so the kinds match the per-command tables.
|
|
40
|
+
function leading_word(command: string): string {
|
|
41
|
+
const word = time_shell.leading_word(time_shell.unquoted(command))
|
|
42
|
+
|
|
43
|
+
return word === '' ? UNKNOWN : word
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
function bash_kind(command = ''): string {
|
|
47
|
+
const josh = lane_transcript_stats.josh_commands(command)
|
|
48
|
+
|
|
49
|
+
return josh.length > 0 ? `josh ${josh.join('+')}` : leading_word(command)
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function agent_kind(call: ToolCall): string {
|
|
53
|
+
return `${AGENT_TOOL}:${call.subagent?.type ?? UNKNOWN}`
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
function kind_of(call: ToolCall): string {
|
|
57
|
+
if (call.tool === BASH_TOOL) return bash_kind(call.command)
|
|
58
|
+
if (call.tool === AGENT_TOOL) return agent_kind(call)
|
|
59
|
+
|
|
60
|
+
return call.tool ?? UNKNOWN
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
// One lane's read calls and their tool time, by kind.
|
|
64
|
+
function lane_kinds(lane: ImplementLane): Map<string, CallTotal> {
|
|
65
|
+
const totals = new Map<string, CallTotal>()
|
|
66
|
+
|
|
67
|
+
for (const entry of lane_implement_read.read_calls(lane)) {
|
|
68
|
+
const kind = kind_of(entry.call)
|
|
69
|
+
const total = totals.get(kind) ?? { calls: 0, ms: 0 }
|
|
70
|
+
|
|
71
|
+
totals.set(kind, { calls: total.calls + 1, ms: total.ms + lane_implement_read.tool_ms(entry) })
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
return totals
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// Each kind's per-lane totals, over the lanes that made such a call.
|
|
78
|
+
function by_kind(lanes: ReadonlyArray<Map<string, CallTotal>>): Array<KindRow> {
|
|
79
|
+
const kinds = new Map<string, Array<CallTotal>>()
|
|
80
|
+
const entries = lanes.flatMap((totals) => [...totals])
|
|
81
|
+
|
|
82
|
+
for (const [kind, total] of entries) {
|
|
83
|
+
kinds.set(kind, [...(kinds.get(kind) ?? []), total])
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
return [...kinds].map(([kind, totals]) => ({
|
|
87
|
+
kind,
|
|
88
|
+
lanes: totals,
|
|
89
|
+
total_ms: lane_implement_read.sum(totals.map((total) => total.ms)),
|
|
90
|
+
}))
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
function by_total(left: KindRow, right: KindRow): number {
|
|
94
|
+
return right.total_ms - left.total_ms || left.kind.localeCompare(right.kind)
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
function kind_row({ kind, lanes, total_ms }: KindRow): Array<string> {
|
|
98
|
+
return [
|
|
99
|
+
kind,
|
|
100
|
+
String(lane_implement_read.sum(lanes.map((total) => total.calls))),
|
|
101
|
+
String(lanes.length),
|
|
102
|
+
lane_stage_stats.cell(lane_stats.median(lanes.map((total) => total.ms))),
|
|
103
|
+
lane_stage_stats.cell(total_ms),
|
|
104
|
+
]
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// The period's table: the kinds that took the most read tool time over the lanes that shipped in `window`.
|
|
108
|
+
function table(calls: ReadonlyArray<ToolCall>, window: StatsWindow, paused: PausedSpans): string {
|
|
109
|
+
const lanes = lane_implement_stats
|
|
110
|
+
.implement_lanes(calls, window, paused)
|
|
111
|
+
.map((lane) => lane_kinds(lane))
|
|
112
|
+
const rows = by_kind(lanes).toSorted(by_total).slice(0, TOP_KINDS)
|
|
113
|
+
|
|
114
|
+
return [
|
|
115
|
+
lane_stats.to_row(COLUMNS),
|
|
116
|
+
lane_stats.to_row(COLUMNS.map(() => '---')),
|
|
117
|
+
...rows.map((row) => lane_stats.to_row(kind_row(row))),
|
|
118
|
+
].join('\n')
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
const lane_implement_read_calls = { kind_of, table }
|
|
122
|
+
|
|
123
|
+
export { lane_implement_read_calls }
|
|
@@ -80,10 +80,15 @@ function sum(values: ReadonlyArray<number>): number {
|
|
|
80
80
|
return values.reduce((total, value) => total + value, 0)
|
|
81
81
|
}
|
|
82
82
|
|
|
83
|
-
|
|
84
|
-
|
|
83
|
+
// The lane's implement calls put to the `read` sub-stage.
|
|
84
|
+
function read_calls(lane: ImplementLane): Array<StagedCall> {
|
|
85
|
+
return lane_implement_stats
|
|
85
86
|
.staged(lane.calls, lane.paused)
|
|
86
87
|
.filter((entry) => entry.stage === READ_STAGE)
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
function breakdown(lane: ImplementLane): ReadBreakdown {
|
|
91
|
+
const reads = read_calls(lane)
|
|
87
92
|
const tool = sum(reads.map((entry) => tool_ms(entry)))
|
|
88
93
|
const files = files_read(reads)
|
|
89
94
|
const cited = cited_paths(lane.calls)
|
|
@@ -124,6 +129,6 @@ function table(calls: ReadonlyArray<ToolCall>, window: StatsWindow, paused: Paus
|
|
|
124
129
|
].join('\n')
|
|
125
130
|
}
|
|
126
131
|
|
|
127
|
-
const lane_implement_read = { table }
|
|
132
|
+
const lane_implement_read = { read_calls, sum, table, tool_ms }
|
|
128
133
|
|
|
129
134
|
export { lane_implement_read }
|
|
@@ -12,8 +12,10 @@ import { lane_transcript_stats } from './lane-transcript-stats'
|
|
|
12
12
|
// median over the period's lanes.
|
|
13
13
|
//
|
|
14
14
|
// **A lane's implement ends at its first `ship` or `run:chain --join --ship` call**, so a lane that never shipped in the period
|
|
15
|
-
// has no implement here. **`review-fix` runs from `run:review` on
|
|
16
|
-
//
|
|
15
|
+
// has no implement here. **`review-fix` runs from `run:review` on, or from the call after an open
|
|
16
|
+
// `run:chain`** (no `--join`) whose output shows it ran `run:review` (joshuafolkken/kit#7566) — the round's
|
|
17
|
+
// reviewer, fixes and their scoped checks; before it, an edit is `edit`, a scoped check, gate or open
|
|
18
|
+
// `run:chain` is `check`, and any other call is `plan`
|
|
17
19
|
// before the first edit, `read` after it. **A session's first call spans its own duration**, so the gap
|
|
18
20
|
// between two sessions of one lane is nobody's. **Nor is the time the lane stood paused**: a
|
|
19
21
|
// `lane:pause` leaves the call in flight on the clock, so its overlap with the lane's paused spans is
|
|
@@ -40,6 +42,7 @@ const SHIP_COMMANDS: ReadonlySet<string> = new Set(['ship'])
|
|
|
40
42
|
const JOIN_FLAG = /\s--join(?:\s|$)/u
|
|
41
43
|
const SHIP_FLAG = /\s--ship(?:\s|=|$)/u
|
|
42
44
|
const CHAIN_REACHED_SHIP = /^run:chain \d+ — (?:ran (?:[^\s]+ → )*ship$|stopped at ship \()/mu
|
|
45
|
+
const CHAIN_RAN_REVIEW = /^run:chain \d+ — ran (?:[^\s]+ → )*run:review$/mu
|
|
43
46
|
const FIRST_LINT_ROW = `lane first ${LINT_RELATED}`
|
|
44
47
|
// `backgrounded` counts a subagent row's untimed calls (`lane-implement-subagents.ts`); a sub-stage has none.
|
|
45
48
|
const COLUMNS = [
|
|
@@ -53,6 +56,7 @@ const COLUMNS = [
|
|
|
53
56
|
interface Phase {
|
|
54
57
|
edited: boolean
|
|
55
58
|
reviewing: boolean
|
|
59
|
+
chained: boolean
|
|
56
60
|
}
|
|
57
61
|
|
|
58
62
|
// The latest end of the calls seen so far in one session; calls run side by side overlap.
|
|
@@ -71,18 +75,41 @@ function is_edit(call: ToolCall): boolean {
|
|
|
71
75
|
return EDIT_TOOLS.has(call.tool ?? '')
|
|
72
76
|
}
|
|
73
77
|
|
|
74
|
-
|
|
78
|
+
function opens_chain(segment: string): boolean {
|
|
79
|
+
return (
|
|
80
|
+
lane_transcript_stats.josh_commands(segment).includes('run:chain') && !JOIN_FLAG.test(segment)
|
|
81
|
+
)
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function runs_open_chain(call: ToolCall): boolean {
|
|
85
|
+
return lane_transcript_stats
|
|
86
|
+
.command_segments(call.command)
|
|
87
|
+
.some((segment) => opens_chain(segment))
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
function is_check(call: ToolCall): boolean {
|
|
91
|
+
return runs_any(call, CHECK_COMMANDS) || runs_open_chain(call)
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
function chain_ran_review(call: ToolCall): boolean {
|
|
95
|
+
return runs_open_chain(call) && CHAIN_RAN_REVIEW.test(call.output)
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// The phase once `call` ran: an edit, or a review started, holds for the rest of the lane; an open
|
|
99
|
+
// `run:chain` is its own `check` and, once it ran `run:review`, starts the review from the next call —
|
|
100
|
+
// one that stopped before it leaves the fix and re-run that follow in `edit` and `check`.
|
|
75
101
|
function next_phase(call: ToolCall, phase: Phase): Phase {
|
|
76
102
|
return {
|
|
77
103
|
edited: phase.edited || is_edit(call),
|
|
78
|
-
reviewing: phase.reviewing || runs_any(call, REVIEW_COMMANDS),
|
|
104
|
+
reviewing: phase.reviewing || phase.chained || runs_any(call, REVIEW_COMMANDS),
|
|
105
|
+
chained: phase.chained || chain_ran_review(call),
|
|
79
106
|
}
|
|
80
107
|
}
|
|
81
108
|
|
|
82
109
|
function sub_stage_of(call: ToolCall, phase: Phase): SubStage {
|
|
83
110
|
if (phase.reviewing) return REVIEW_FIX
|
|
84
111
|
if (is_edit(call)) return EDIT
|
|
85
|
-
if (
|
|
112
|
+
if (is_check(call)) return CHECK
|
|
86
113
|
|
|
87
114
|
return phase.edited ? READ : PLAN
|
|
88
115
|
}
|
|
@@ -124,7 +151,7 @@ function staged(
|
|
|
124
151
|
paused: ReadonlyArray<PausedSpan>,
|
|
125
152
|
): Array<StagedCall> {
|
|
126
153
|
const result: Array<StagedCall> = []
|
|
127
|
-
let phase: Phase = { edited: false, reviewing: false }
|
|
154
|
+
let phase: Phase = { edited: false, reviewing: false, chained: false }
|
|
128
155
|
let reach = NO_REACH
|
|
129
156
|
|
|
130
157
|
for (const call of calls) {
|
|
@@ -30,8 +30,19 @@ const early_push_schema = z.object({
|
|
|
30
30
|
// failure or a followup `check` stopped on, so its re-ship can tell a fix-only tree from a moved base
|
|
31
31
|
// (joshuafolkken/kit#6141, joshuafolkken/kit#6675), absent on every other stop. `checks` names the CI
|
|
32
32
|
// checks a followup `check` stop's wait reported failed (joshuafolkken/kit#7333), absent on every other
|
|
33
|
-
// stop and on one recorded before it had them.
|
|
33
|
+
// stop and on one recorded before it had them. `unpinned` is the path an `unpinned` stop took and the
|
|
34
|
+
// unpinned places it found (joshuafolkken/kit#7552): `no-reason` with no recorded `--unpinned-ok` reason,
|
|
35
|
+
// `new-site` with one the places outran, `truncated` with one a check cut at its first unpinned hunk
|
|
36
|
+
// never applies (`run-review-pinned-accepted.ts`), absent on any other stop and on one recorded before
|
|
37
|
+
// it had it. On a cut check `hunks` is a lower bound and `remaining` counts the hunks it never probed,
|
|
38
|
+
// absent on an uncut one. How long it stayed stopped is derived
|
|
34
39
|
// from the next ship stage, not recorded, so a resumed ship never has to know the stop it ends.
|
|
40
|
+
const UNPINNED_PATHS = ['no-reason', 'new-site', 'truncated'] as const
|
|
41
|
+
const unpinned_stop_schema = z.object({
|
|
42
|
+
path: z.enum(UNPINNED_PATHS),
|
|
43
|
+
hunks: z.number(),
|
|
44
|
+
remaining: z.number().optional(),
|
|
45
|
+
})
|
|
35
46
|
const stop_schema = z.object({
|
|
36
47
|
kind: z.literal(KIND.STOP),
|
|
37
48
|
at: z.string(),
|
|
@@ -42,6 +53,7 @@ const stop_schema = z.object({
|
|
|
42
53
|
findings: z.array(z.string()).optional(),
|
|
43
54
|
base: z.string().optional(),
|
|
44
55
|
checks: z.array(z.string()).optional(),
|
|
56
|
+
unpinned: unpinned_stop_schema.optional(),
|
|
45
57
|
})
|
|
46
58
|
// One `josh run:chain` on `issue`, done or stopped: `at` is its end and `elapsed_ms` its length, so the
|
|
47
59
|
// next run's start ends the wait after a stop. `stage` names where it stopped and `reason` why — the
|
|
@@ -94,7 +106,7 @@ const ship_lap_schema = z.object({
|
|
|
94
106
|
// A merging `josh followup`'s size of `issue`: the Issue's declared size estimate and the branch's
|
|
95
107
|
// measured diff, test files excluded, so `lane:stats` reads how far estimates miss the guide's
|
|
96
108
|
// counting (joshuafolkken/kit#5384). Written before the merge, while the branch is still checked out.
|
|
97
|
-
// `missed` marks a diff past the split notice bar: a size the pre-dispatch assessment let through, as
|
|
109
|
+
// `missed` marks a diff past the split cap (the notice bar before joshuafolkken/kit#7579): a size the pre-dispatch assessment let through, as
|
|
98
110
|
// the started lane is never split (joshuafolkken/kit#7183).
|
|
99
111
|
const counts_schema = z.object({ files: z.number(), lines: z.number() })
|
|
100
112
|
const size_schema = z.object({
|
|
@@ -108,6 +120,8 @@ const size_schema = z.object({
|
|
|
108
120
|
|
|
109
121
|
type ChainEntry = z.infer<typeof chain_schema>
|
|
110
122
|
type ChainRecord = Omit<ChainEntry, 'kind' | 'at'>
|
|
123
|
+
type UnpinnedStop = z.infer<typeof unpinned_stop_schema>
|
|
124
|
+
type UnpinnedPath = UnpinnedStop['path']
|
|
111
125
|
|
|
112
126
|
const lane_ledger_schema_ship = {
|
|
113
127
|
chain_schema,
|
|
@@ -118,5 +132,5 @@ const lane_ledger_schema_ship = {
|
|
|
118
132
|
unplanned_notice_schema,
|
|
119
133
|
}
|
|
120
134
|
|
|
121
|
-
export type { ChainEntry, ChainRecord }
|
|
135
|
+
export type { ChainEntry, ChainRecord, UnpinnedPath, UnpinnedStop }
|
|
122
136
|
export { lane_ledger_schema_ship }
|