@joshuafolkken/kit 1.3101.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/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 +2050 -2040
- 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 +515 -459
- 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 +73 -73
- 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,910 @@
|
|
|
1
|
+
import {
|
|
2
|
+
delegation_policy
|
|
3
|
+
} from "./chunk-6I2JM5UX.js";
|
|
4
|
+
import {
|
|
5
|
+
backlog_budget
|
|
6
|
+
} from "./chunk-BYSPYVLD.js";
|
|
7
|
+
import {
|
|
8
|
+
capped_print_part
|
|
9
|
+
} from "./chunk-3WWQFCGX.js";
|
|
10
|
+
import {
|
|
11
|
+
JOSH_TMP_DIRECTORY
|
|
12
|
+
} from "./chunk-LAYSCY4L.js";
|
|
13
|
+
import {
|
|
14
|
+
time_batch_guard,
|
|
15
|
+
time_search_call
|
|
16
|
+
} from "./chunk-ZMWL7LZM.js";
|
|
17
|
+
import {
|
|
18
|
+
time_bundle_call,
|
|
19
|
+
time_spans
|
|
20
|
+
} from "./chunk-NXWVWI4U.js";
|
|
21
|
+
import {
|
|
22
|
+
cost_blocks,
|
|
23
|
+
time_shell
|
|
24
|
+
} from "./chunk-LHKXJD6L.js";
|
|
25
|
+
import {
|
|
26
|
+
hook_decision
|
|
27
|
+
} from "./chunk-HXAVYXUS.js";
|
|
28
|
+
import {
|
|
29
|
+
run_hold,
|
|
30
|
+
stamp_record
|
|
31
|
+
} from "./chunk-NQ4D2XZY.js";
|
|
32
|
+
import {
|
|
33
|
+
transcript_record
|
|
34
|
+
} from "./chunk-O3NDWYNT.js";
|
|
35
|
+
import {
|
|
36
|
+
agent_profile_schema
|
|
37
|
+
} from "./chunk-F7B4ESZE.js";
|
|
38
|
+
import {
|
|
39
|
+
lane_child_invocation
|
|
40
|
+
} from "./chunk-VFW6XZH7.js";
|
|
41
|
+
import {
|
|
42
|
+
agent_provider,
|
|
43
|
+
cost_transcript,
|
|
44
|
+
own_session
|
|
45
|
+
} from "./chunk-DDZVMXZD.js";
|
|
46
|
+
import {
|
|
47
|
+
lane_child_marker
|
|
48
|
+
} from "./chunk-XXPDFJRI.js";
|
|
49
|
+
import {
|
|
50
|
+
git_common_directory
|
|
51
|
+
} from "./chunk-MT6TRLFD.js";
|
|
52
|
+
import {
|
|
53
|
+
stamp_file
|
|
54
|
+
} from "./chunk-VLN6TSPJ.js";
|
|
55
|
+
import {
|
|
56
|
+
changed_paths
|
|
57
|
+
} from "./chunk-AL2H63BP.js";
|
|
58
|
+
import {
|
|
59
|
+
git_command,
|
|
60
|
+
git_diff_reads
|
|
61
|
+
} from "./chunk-KMED24C4.js";
|
|
62
|
+
import {
|
|
63
|
+
git_spawn_sync
|
|
64
|
+
} from "./chunk-B77ZMVHS.js";
|
|
65
|
+
import {
|
|
66
|
+
json_value
|
|
67
|
+
} from "./chunk-HIU2WXB6.js";
|
|
68
|
+
|
|
69
|
+
// scripts/run/cut/run-cut-digest.ts
|
|
70
|
+
import path2 from "node:path";
|
|
71
|
+
|
|
72
|
+
// scripts/delegation/duplicate-read-guard.ts
|
|
73
|
+
import { statSync } from "node:fs";
|
|
74
|
+
|
|
75
|
+
// scripts/lane/lane-guard-policy.ts
|
|
76
|
+
var DEFAULT_MODE = "refuse";
|
|
77
|
+
var OFF_MODE = "off";
|
|
78
|
+
var LANE_GUARD_POLICY = [
|
|
79
|
+
{
|
|
80
|
+
id: "investigation",
|
|
81
|
+
mode_in_lane_child: "refuse",
|
|
82
|
+
because: "the notice was measured not to move the reading \u2014 52% of lane cost stayed in main-line exploration \u2014 and the refusal fires once per accumulation, a round trip the child survives as it survives the rule row, so the child is refused like the main line"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
id: "batching",
|
|
86
|
+
mode_in_lane_child: "off",
|
|
87
|
+
because: "a refusal ends a child turn and every advisory notice was measured not to move the call density, so the guard is off and the density stays readable through `josh time:density`"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
id: "search-batching",
|
|
91
|
+
mode_in_lane_child: "refuse",
|
|
92
|
+
because: "the largest share of single-call pairs in lane children is a search chain (`grep` / `sed` issued one per turn, about 10,600 pairs in 14 days), and a refusal re-fires only every third single-call search turn, so one refused round trip (about $0.036) is repaid once it folds two later searches into one turn"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
id: "duplicate-read",
|
|
96
|
+
mode_in_lane_child: "notice",
|
|
97
|
+
because: "a refusal ends a child turn, yet unchanged re-reads and whole reads of large files are measured in lane children above all, so the child is nudged \u2014 to scroll up to the earlier read, or to read a slice \u2014 by a notice rather than killed; the large-read guard shares this row"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
id: "rule",
|
|
101
|
+
mode_in_lane_child: "refuse",
|
|
102
|
+
because: "it carries the lane-only rules a child depends on (`pre-gate-cut`, `implementation-cut`, `lane-park`) and the safety rules it must still obey, and a notice was rejected despite the collateral a refusal costs a batched sibling, because a cut carried as prose was measured never to fire"
|
|
103
|
+
}
|
|
104
|
+
];
|
|
105
|
+
var KNOWN_GUARD_IDS = LANE_GUARD_POLICY.map((entry) => entry.id);
|
|
106
|
+
function entry_for(id) {
|
|
107
|
+
return LANE_GUARD_POLICY.find((entry) => entry.id === id.trim());
|
|
108
|
+
}
|
|
109
|
+
function mode_in_lane_child(id) {
|
|
110
|
+
return entry_for(id)?.mode_in_lane_child ?? DEFAULT_MODE;
|
|
111
|
+
}
|
|
112
|
+
function mode_here(id, directory = process.cwd(), source = process.env) {
|
|
113
|
+
const lane_mode = mode_in_lane_child(id);
|
|
114
|
+
if (lane_mode === DEFAULT_MODE) return DEFAULT_MODE;
|
|
115
|
+
return lane_child_marker.is_child_of(directory, source) ? lane_mode : DEFAULT_MODE;
|
|
116
|
+
}
|
|
117
|
+
function is_suppressed_here(id, directory = process.cwd(), source = process.env) {
|
|
118
|
+
return mode_here(id, directory, source) === OFF_MODE;
|
|
119
|
+
}
|
|
120
|
+
var lane_guard_policy = {
|
|
121
|
+
LANE_GUARD_POLICY,
|
|
122
|
+
KNOWN_GUARD_IDS,
|
|
123
|
+
entry_for,
|
|
124
|
+
mode_in_lane_child,
|
|
125
|
+
mode_here,
|
|
126
|
+
is_suppressed_here
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
// scripts/delegation/investigation-reads.ts
|
|
130
|
+
import path from "node:path";
|
|
131
|
+
|
|
132
|
+
// scripts/git/changed-paths-sync.ts
|
|
133
|
+
function default_branch_reference(options) {
|
|
134
|
+
const output = git_spawn_sync.read([...git_diff_reads.DEFAULT_BRANCH_ARGUMENTS], options);
|
|
135
|
+
const default_branch = git_diff_reads.default_branch_of(output);
|
|
136
|
+
const remote_reference = git_diff_reads.remote_reference_of(default_branch);
|
|
137
|
+
const check = git_diff_reads.reference_check_arguments(remote_reference);
|
|
138
|
+
return git_spawn_sync.read(check, options) === void 0 ? default_branch : remote_reference;
|
|
139
|
+
}
|
|
140
|
+
function through_merge(base, reference, options) {
|
|
141
|
+
const incoming = git_spawn_sync.read(git_diff_reads.incoming_base_arguments(reference), options);
|
|
142
|
+
if (incoming === void 0) return base;
|
|
143
|
+
const kept = git_spawn_sync.read(git_diff_reads.later_base_arguments(base, incoming), options);
|
|
144
|
+
return git_diff_reads.later_base_of(kept, base);
|
|
145
|
+
}
|
|
146
|
+
function change_base(options) {
|
|
147
|
+
const reference = default_branch_reference(options);
|
|
148
|
+
const base = git_spawn_sync.read(git_diff_reads.merge_base_arguments(reference), options);
|
|
149
|
+
if (base === void 0) return reference;
|
|
150
|
+
return through_merge(base, reference, options);
|
|
151
|
+
}
|
|
152
|
+
function read_changed_paths(cwd) {
|
|
153
|
+
const options = git_spawn_sync.located(cwd);
|
|
154
|
+
const tracked = git_spawn_sync.read(
|
|
155
|
+
git_diff_reads.names_since_arguments(change_base(options)),
|
|
156
|
+
options
|
|
157
|
+
);
|
|
158
|
+
const untracked = git_spawn_sync.read(git_diff_reads.UNTRACKED_ARGUMENTS, options);
|
|
159
|
+
return [tracked, untracked].flatMap((raw = "") => changed_paths.to_paths(raw));
|
|
160
|
+
}
|
|
161
|
+
var changed_paths_sync = { read_changed_paths, through_merge };
|
|
162
|
+
|
|
163
|
+
// scripts/delegation/investigation-reads.ts
|
|
164
|
+
var READ_TOOLS = /* @__PURE__ */ new Set(["Read"]);
|
|
165
|
+
var DELEGATION_TOOLS = /* @__PURE__ */ new Set(["Agent", "Task"]);
|
|
166
|
+
var CONTENT_READ_COMMANDS = [
|
|
167
|
+
"bat",
|
|
168
|
+
"cat",
|
|
169
|
+
"head",
|
|
170
|
+
"less",
|
|
171
|
+
"more",
|
|
172
|
+
"nl",
|
|
173
|
+
"sed",
|
|
174
|
+
"tail"
|
|
175
|
+
];
|
|
176
|
+
var CONTENT_READ_LABELS = new Set(
|
|
177
|
+
CONTENT_READ_COMMANDS.map((command) => time_shell.bash_label(command))
|
|
178
|
+
);
|
|
179
|
+
var { INVESTIGATOR_AGENT } = delegation_policy;
|
|
180
|
+
var REASON = `\u26D4 investigation: ${delegation_policy.INVESTIGATION_LIMIT}. ${delegation_policy.INVESTIGATION_STEP} Keep main-line reads to files you will edit; every read-only search turn counts. \`.claude/skills/workflow-commands/delegation.md\``;
|
|
181
|
+
var INSTRUCTION_PATHS = ["prompts", ".claude/skills"];
|
|
182
|
+
var INSTRUCTION_FILES = /* @__PURE__ */ new Set(["CLAUDE.md", "AGENTS.md", "GEMINI.md"]);
|
|
183
|
+
function resolved(target, root = process.cwd()) {
|
|
184
|
+
return path.resolve(root, target);
|
|
185
|
+
}
|
|
186
|
+
function repository_relative(absolute, root) {
|
|
187
|
+
return path.relative(root, absolute);
|
|
188
|
+
}
|
|
189
|
+
function is_instruction_document(target, root = process.cwd()) {
|
|
190
|
+
const relative = repository_relative(resolved(target, root), root);
|
|
191
|
+
const segments = relative.split(path.sep);
|
|
192
|
+
return INSTRUCTION_FILES.has(segments.at(-1) ?? "") || INSTRUCTION_PATHS.some((prefix) => relative.startsWith(`${prefix}${path.sep}`));
|
|
193
|
+
}
|
|
194
|
+
var SESSION_TEMP_SEGMENT = /^claude-\d+$/u;
|
|
195
|
+
var SESSION_STATE_SEGMENTS = cost_transcript.TRANSCRIPT_ROOT.split(path.sep);
|
|
196
|
+
var HARNESS_OUTPUT_DIRECTORY = "tasks";
|
|
197
|
+
var HARNESS_OUTPUT_EXTENSION = ".output";
|
|
198
|
+
var FILE_SEGMENT_INDEX = -1;
|
|
199
|
+
var PARENT_SEGMENT_INDEX = -2;
|
|
200
|
+
function has_state_root(segments, index) {
|
|
201
|
+
return SESSION_STATE_SEGMENTS.every((segment, offset) => segments[index + offset] === segment);
|
|
202
|
+
}
|
|
203
|
+
function is_harness_output(segments) {
|
|
204
|
+
return segments.some((segment) => SESSION_TEMP_SEGMENT.test(segment)) && segments.at(PARENT_SEGMENT_INDEX) === HARNESS_OUTPUT_DIRECTORY && (segments.at(FILE_SEGMENT_INDEX) ?? "").endsWith(HARNESS_OUTPUT_EXTENSION);
|
|
205
|
+
}
|
|
206
|
+
function is_outside_repository(absolute, root) {
|
|
207
|
+
return repository_relative(absolute, root).startsWith("..");
|
|
208
|
+
}
|
|
209
|
+
function is_session_artifact(target, root = process.cwd()) {
|
|
210
|
+
const absolute = resolved(target, root);
|
|
211
|
+
const segments = absolute.split(path.sep);
|
|
212
|
+
if (!is_outside_repository(absolute, root)) return false;
|
|
213
|
+
return segments.some((_segment, index) => has_state_root(segments, index)) || is_harness_output(segments) || capped_print_part.is_part_file(absolute);
|
|
214
|
+
}
|
|
215
|
+
function is_subject_file(target, root = process.cwd()) {
|
|
216
|
+
return !is_instruction_document(target, root) && !is_session_artifact(target, root);
|
|
217
|
+
}
|
|
218
|
+
function is_nameable_file(target) {
|
|
219
|
+
return !target.includes("*") && !target.includes("?");
|
|
220
|
+
}
|
|
221
|
+
function is_content_read(label) {
|
|
222
|
+
return READ_TOOLS.has(label) || CONTENT_READ_LABELS.has(label);
|
|
223
|
+
}
|
|
224
|
+
function subject_targets(targets, root) {
|
|
225
|
+
return targets.filter((target) => is_nameable_file(target) && is_subject_file(target, root)).map((target) => resolved(target, root));
|
|
226
|
+
}
|
|
227
|
+
function call_targets(call, root) {
|
|
228
|
+
return subject_targets(time_bundle_call.call_facts(call.name, call.input).targets, root);
|
|
229
|
+
}
|
|
230
|
+
function delegation_instant(span) {
|
|
231
|
+
return span === void 0 ? hook_decision.NEVER_MS : span.ended_ms;
|
|
232
|
+
}
|
|
233
|
+
function is_failed_outcome(span) {
|
|
234
|
+
return span.outcome === time_spans.FAILED_OUTCOME;
|
|
235
|
+
}
|
|
236
|
+
function edited_files(spans, root) {
|
|
237
|
+
const written = spans.filter((span) => !is_failed_outcome(span)).flatMap((span) => subject_targets(span.writes, root));
|
|
238
|
+
return new Set(written);
|
|
239
|
+
}
|
|
240
|
+
function add_all(pending, targets, at_ms) {
|
|
241
|
+
for (const target of targets) if (!pending.has(target)) pending.set(target, at_ms);
|
|
242
|
+
}
|
|
243
|
+
function search_turn_key(searches, span) {
|
|
244
|
+
if (span.message_id !== time_spans.NO_MESSAGE_ID) return span.message_id;
|
|
245
|
+
return `${time_spans.NO_MESSAGE_ID}#${String(searches.size)}`;
|
|
246
|
+
}
|
|
247
|
+
function apply_search(searches, span) {
|
|
248
|
+
if (span.is_writing) {
|
|
249
|
+
searches.clear();
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
const turn = search_turn_key(searches, span);
|
|
253
|
+
if (time_search_call.is_read_only_search(span) && !searches.has(turn)) {
|
|
254
|
+
searches.set(turn, span.ended_ms);
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
function is_delegation(span) {
|
|
258
|
+
return DELEGATION_TOOLS.has(span.label) && !is_failed_outcome(span);
|
|
259
|
+
}
|
|
260
|
+
function apply_span(accumulation, span, edited) {
|
|
261
|
+
if (is_failed_outcome(span)) return;
|
|
262
|
+
if (is_delegation(span)) {
|
|
263
|
+
accumulation.pending.clear();
|
|
264
|
+
accumulation.searches.clear();
|
|
265
|
+
return;
|
|
266
|
+
}
|
|
267
|
+
apply_search(accumulation.searches, span);
|
|
268
|
+
if (!is_content_read(span.label)) return;
|
|
269
|
+
const fresh = subject_targets(span.targets, accumulation.root).filter(
|
|
270
|
+
(target) => !edited.has(target)
|
|
271
|
+
);
|
|
272
|
+
add_all(accumulation.pending, fresh, span.ended_ms);
|
|
273
|
+
}
|
|
274
|
+
function last_delegation_ms(spans) {
|
|
275
|
+
return delegation_instant(spans.findLast((span) => is_delegation(span)));
|
|
276
|
+
}
|
|
277
|
+
function pending_after(pending, since_ms) {
|
|
278
|
+
return [...pending.values()].filter((at_ms) => at_ms > since_ms).length;
|
|
279
|
+
}
|
|
280
|
+
function tally_of(text, since_ms = hook_decision.NEVER_MS, branch_files = [], root = process.cwd()) {
|
|
281
|
+
const { spans, started_ms } = time_spans.parse_timeline(text);
|
|
282
|
+
const edited = /* @__PURE__ */ new Set([...edited_files(spans, root), ...subject_targets(branch_files, root)]);
|
|
283
|
+
const accumulation = { pending: /* @__PURE__ */ new Map(), searches: /* @__PURE__ */ new Map(), root };
|
|
284
|
+
for (const span of spans) apply_span(accumulation, span, edited);
|
|
285
|
+
return {
|
|
286
|
+
pending: [...accumulation.pending.keys()],
|
|
287
|
+
pending_since: pending_after(accumulation.pending, since_ms),
|
|
288
|
+
reset_ms: last_delegation_ms(spans),
|
|
289
|
+
window_start_ms: started_ms,
|
|
290
|
+
searches: accumulation.searches.size,
|
|
291
|
+
searches_since: pending_after(accumulation.searches, since_ms),
|
|
292
|
+
edited,
|
|
293
|
+
root
|
|
294
|
+
};
|
|
295
|
+
}
|
|
296
|
+
function projected_count(pending, call, edited = /* @__PURE__ */ new Set(), root = process.cwd()) {
|
|
297
|
+
const added = call_targets(call, root).filter((target) => !edited.has(target));
|
|
298
|
+
return (/* @__PURE__ */ new Set([...pending, ...added])).size;
|
|
299
|
+
}
|
|
300
|
+
function is_at_threshold(pending_count) {
|
|
301
|
+
return pending_count + 1 >= delegation_policy.INVESTIGATION_FILE_THRESHOLD;
|
|
302
|
+
}
|
|
303
|
+
function is_at_search_threshold(search_count) {
|
|
304
|
+
return search_count + 1 >= delegation_policy.INVESTIGATION_SEARCH_TURN_THRESHOLD;
|
|
305
|
+
}
|
|
306
|
+
function has_cleared_the_disarm(tally, refused_at_ms) {
|
|
307
|
+
return tally.reset_ms > refused_at_ms || refused_at_ms < tally.window_start_ms;
|
|
308
|
+
}
|
|
309
|
+
function is_rearmed(tally, refused_at_ms) {
|
|
310
|
+
if (refused_at_ms === hook_decision.NEVER_MS || has_cleared_the_disarm(tally, refused_at_ms)) {
|
|
311
|
+
return true;
|
|
312
|
+
}
|
|
313
|
+
return is_at_threshold(tally.pending_since) || is_at_search_threshold(tally.searches_since);
|
|
314
|
+
}
|
|
315
|
+
function is_unit_transcript(transcript) {
|
|
316
|
+
return transcript.split(path.sep).includes(cost_transcript.UNIT_DIRECTORY);
|
|
317
|
+
}
|
|
318
|
+
function is_unit_run(run) {
|
|
319
|
+
return run !== void 0 && is_unit_transcript(run.transcript);
|
|
320
|
+
}
|
|
321
|
+
function is_read_only_command(call, labels) {
|
|
322
|
+
if (call.name !== cost_blocks.BASH_TOOL) return false;
|
|
323
|
+
const label = time_shell.bash_label(time_shell.bash_command(call.input));
|
|
324
|
+
return labels.has(label) && time_batch_guard.is_read_only_call(call);
|
|
325
|
+
}
|
|
326
|
+
function is_search_call(call) {
|
|
327
|
+
return time_search_call.is_read_only_search(
|
|
328
|
+
time_spans.to_tool_call(call.name, call.input, time_spans.NO_MESSAGE_ID)
|
|
329
|
+
);
|
|
330
|
+
}
|
|
331
|
+
function is_refusable_call(call, root = process.cwd()) {
|
|
332
|
+
if (is_search_call(call)) return true;
|
|
333
|
+
if (call_targets(call, root).length === 0) return false;
|
|
334
|
+
if (READ_TOOLS.has(call.name)) return true;
|
|
335
|
+
return is_read_only_command(call, CONTENT_READ_LABELS);
|
|
336
|
+
}
|
|
337
|
+
function is_growing_past_threshold(tally, call) {
|
|
338
|
+
if (is_search_call(call)) return is_at_search_threshold(tally.searches);
|
|
339
|
+
if (!is_at_threshold(tally.pending.length)) return false;
|
|
340
|
+
return projected_count(tally.pending, call, tally.edited, tally.root) > tally.pending.length;
|
|
341
|
+
}
|
|
342
|
+
function is_blocking(tally, call, refused_at_ms) {
|
|
343
|
+
return is_growing_past_threshold(tally, call) && is_rearmed(tally, refused_at_ms);
|
|
344
|
+
}
|
|
345
|
+
function is_blocking_past_branch(text, call, refused_at_ms, root) {
|
|
346
|
+
if (!is_blocking(tally_of(text, refused_at_ms, [], root), call, refused_at_ms)) return false;
|
|
347
|
+
const branch_files = changed_paths_sync.read_changed_paths(root);
|
|
348
|
+
return is_blocking(tally_of(text, refused_at_ms, branch_files, root), call, refused_at_ms);
|
|
349
|
+
}
|
|
350
|
+
function should_block(text, call, refused_at_ms, run) {
|
|
351
|
+
const root = run?.context.cwd ?? process.cwd();
|
|
352
|
+
if (!is_refusable_call(call, root) || is_unit_run(run)) return false;
|
|
353
|
+
return is_blocking_past_branch(text, call, refused_at_ms, root);
|
|
354
|
+
}
|
|
355
|
+
var investigation_reads = {
|
|
356
|
+
DELEGATION_TOOLS,
|
|
357
|
+
INVESTIGATOR_AGENT,
|
|
358
|
+
READ_TOOLS,
|
|
359
|
+
REASON,
|
|
360
|
+
is_at_threshold,
|
|
361
|
+
is_instruction_document,
|
|
362
|
+
is_rearmed,
|
|
363
|
+
is_refusable_call,
|
|
364
|
+
is_session_artifact,
|
|
365
|
+
is_subject_file,
|
|
366
|
+
projected_count,
|
|
367
|
+
resolved,
|
|
368
|
+
should_block,
|
|
369
|
+
tally_of
|
|
370
|
+
};
|
|
371
|
+
|
|
372
|
+
// scripts/delegation/duplicate-read-guard.ts
|
|
373
|
+
var SWITCH_ENV_KEY = "JOSH_DUPLICATE_READ_GUARD";
|
|
374
|
+
var LANE_GUARD_ID = "duplicate-read";
|
|
375
|
+
var STAMP_PREFIX = "josh-duplicate-read-guard-";
|
|
376
|
+
var NOTICE_STAMP_PREFIX = "josh-duplicate-read-notice-";
|
|
377
|
+
var READ_TOOL = "Read";
|
|
378
|
+
var GLOB_CHARACTERS = /[*?]/u;
|
|
379
|
+
var REASON2 = `\u26D4 duplicate read: this file was already read in this session and has not changed since (its mtime predates that read), so reading it again returns nothing new. Scroll up to the earlier result instead of re-reading it. A read with a new offset/limit, or of a file that has since changed, is allowed; set \`JOSH_DUPLICATE_READ_GUARD=off\` to disable this guard.`;
|
|
380
|
+
var NOTICE = `\u26A0 duplicate read: this file was already read in this session and has not changed since, so re-reading it returns nothing new \u2014 scroll up to the earlier result instead of re-reading it. Set \`JOSH_DUPLICATE_READ_GUARD=off\` to silence this.`;
|
|
381
|
+
function is_paginated(input) {
|
|
382
|
+
return input["offset"] !== void 0 || input["limit"] !== void 0;
|
|
383
|
+
}
|
|
384
|
+
function names_one_file(file_path) {
|
|
385
|
+
return typeof file_path === "string" && file_path !== "" && !GLOB_CHARACTERS.test(file_path);
|
|
386
|
+
}
|
|
387
|
+
function read_target(call, root) {
|
|
388
|
+
if (call.name !== READ_TOOL || !json_value.is_record(call.input)) return void 0;
|
|
389
|
+
const { input } = call;
|
|
390
|
+
if (is_paginated(input) || !names_one_file(input["file_path"])) return void 0;
|
|
391
|
+
return investigation_reads.resolved(input["file_path"], root);
|
|
392
|
+
}
|
|
393
|
+
function is_successful_read(span) {
|
|
394
|
+
const is_read = investigation_reads.READ_TOOLS.has(span.label);
|
|
395
|
+
return is_read && span.outcome !== time_spans.FAILED_OUTCOME;
|
|
396
|
+
}
|
|
397
|
+
function reads_target(span, target, root) {
|
|
398
|
+
return span.targets.some((one) => investigation_reads.resolved(one, root) === target);
|
|
399
|
+
}
|
|
400
|
+
function last_read_ms(spans, target, root) {
|
|
401
|
+
const times = spans.filter((span) => is_successful_read(span) && reads_target(span, target, root)).map((span) => span.ended_ms);
|
|
402
|
+
return times.length === 0 ? hook_decision.NEVER_MS : Math.max(...times);
|
|
403
|
+
}
|
|
404
|
+
function file_mtime_ms(target) {
|
|
405
|
+
try {
|
|
406
|
+
return statSync(target).mtimeMs;
|
|
407
|
+
} catch {
|
|
408
|
+
return void 0;
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
function read_window(tail, target, root) {
|
|
412
|
+
const { spans, started_ms } = time_spans.parse_timeline(tail);
|
|
413
|
+
return { last_ms: last_read_ms(spans, target, root), window_start_ms: started_ms };
|
|
414
|
+
}
|
|
415
|
+
function is_unchanged_reread(last_ms, mtime) {
|
|
416
|
+
if (mtime === void 0 || last_ms === hook_decision.NEVER_MS) return false;
|
|
417
|
+
return mtime < last_ms;
|
|
418
|
+
}
|
|
419
|
+
function is_rearmed2(window, fired_at_ms) {
|
|
420
|
+
if (fired_at_ms === hook_decision.NEVER_MS || fired_at_ms < window.window_start_ms) return true;
|
|
421
|
+
return window.last_ms > fired_at_ms;
|
|
422
|
+
}
|
|
423
|
+
function is_redundant_reread(tail, call, fired_at_ms, root) {
|
|
424
|
+
const target = read_target(call, root);
|
|
425
|
+
if (target === void 0) return false;
|
|
426
|
+
const window = read_window(tail, target, root);
|
|
427
|
+
if (!is_unchanged_reread(window.last_ms, file_mtime_ms(target))) return false;
|
|
428
|
+
return is_rearmed2(window, fired_at_ms);
|
|
429
|
+
}
|
|
430
|
+
function duplicate_mode(context) {
|
|
431
|
+
return lane_guard_policy.mode_here(LANE_GUARD_ID, context.cwd, context.env);
|
|
432
|
+
}
|
|
433
|
+
function is_candidate(call, context) {
|
|
434
|
+
return read_target(call, context.cwd) !== void 0 && duplicate_mode(context) !== "off";
|
|
435
|
+
}
|
|
436
|
+
function should_block_here(tail, call, refused_at_ms, run) {
|
|
437
|
+
if (duplicate_mode(run.context) !== "refuse") return false;
|
|
438
|
+
return is_redundant_reread(tail, call, refused_at_ms, run.context.cwd);
|
|
439
|
+
}
|
|
440
|
+
function should_notify_here(tail, call, notified_at_ms, run) {
|
|
441
|
+
if (duplicate_mode(run.context) !== "notice") return false;
|
|
442
|
+
return is_redundant_reread(tail, call, notified_at_ms, run.context.cwd);
|
|
443
|
+
}
|
|
444
|
+
var GUARD = hook_decision.create_transcript_guard({
|
|
445
|
+
prefix: STAMP_PREFIX,
|
|
446
|
+
switch_key: SWITCH_ENV_KEY,
|
|
447
|
+
is_candidate,
|
|
448
|
+
should_block: should_block_here,
|
|
449
|
+
reason: REASON2,
|
|
450
|
+
notify: {
|
|
451
|
+
prefix: NOTICE_STAMP_PREFIX,
|
|
452
|
+
should_notify: should_notify_here,
|
|
453
|
+
text: () => NOTICE
|
|
454
|
+
}
|
|
455
|
+
});
|
|
456
|
+
var duplicate_read_refusal = GUARD.refusal;
|
|
457
|
+
var duplicate_read_outcome = GUARD.outcome;
|
|
458
|
+
var { is_enabled, refusal_path } = GUARD;
|
|
459
|
+
var notice_refusal_path = hook_decision.create_refusal_stamp(NOTICE_STAMP_PREFIX).path;
|
|
460
|
+
var { deny_envelope, DISABLED_VALUES } = hook_decision;
|
|
461
|
+
var duplicate_reads = {
|
|
462
|
+
is_successful_read,
|
|
463
|
+
REASON: REASON2,
|
|
464
|
+
NOTICE
|
|
465
|
+
};
|
|
466
|
+
|
|
467
|
+
// scripts/run/cut/run-cut-digest.ts
|
|
468
|
+
import { z } from "zod";
|
|
469
|
+
var session_digest_schema = z.object({
|
|
470
|
+
read: z.array(z.string()),
|
|
471
|
+
decisions: z.array(z.string())
|
|
472
|
+
});
|
|
473
|
+
var MAX_READ_ENTRIES = 40;
|
|
474
|
+
var MAX_DECISIONS = 12;
|
|
475
|
+
var MAX_DECISION_CHARS = 240;
|
|
476
|
+
var DECISION_PREFIX = "Auto-decided:";
|
|
477
|
+
var DECISION_LINE = /(?:^|[\s'"=])(Auto-decided: [^\n]+)/gu;
|
|
478
|
+
var TRAILING_QUOTES = /['"]$/u;
|
|
479
|
+
var ASSISTANT = "assistant";
|
|
480
|
+
var READ_LABEL = "Already read before the cut \u2014 re-read only the lines you need";
|
|
481
|
+
var DECISIONS_LABEL = "Decided before the cut \u2014 do not reopen";
|
|
482
|
+
function shown_path(target, cwd) {
|
|
483
|
+
const relative = path2.relative(cwd, path2.resolve(cwd, target));
|
|
484
|
+
return relative.startsWith("..") ? target : relative;
|
|
485
|
+
}
|
|
486
|
+
function newest_unique(entries, limit) {
|
|
487
|
+
const unique = [...new Set(entries.toReversed())].toReversed();
|
|
488
|
+
return unique.slice(-limit);
|
|
489
|
+
}
|
|
490
|
+
function read_files_of(text, cwd) {
|
|
491
|
+
const reads = time_spans.parse_timeline(text).spans.filter((span) => duplicate_reads.is_successful_read(span)).flatMap((span) => span.targets.map((target) => shown_path(target, cwd)));
|
|
492
|
+
return newest_unique(reads, MAX_READ_ENTRIES);
|
|
493
|
+
}
|
|
494
|
+
var COMMENT_INPUT_KEYS = ["command", "content"];
|
|
495
|
+
function input_strings(input) {
|
|
496
|
+
if (!json_value.is_record(input)) return [];
|
|
497
|
+
return COMMENT_INPUT_KEYS.map((key) => input[key]).filter((value) => typeof value === "string");
|
|
498
|
+
}
|
|
499
|
+
function assistant_texts(record) {
|
|
500
|
+
if (record?.type !== ASSISTANT) return [];
|
|
501
|
+
return transcript_record.blocks_of(record).flatMap((block) => [block.text ?? "", ...input_strings(block.input)]);
|
|
502
|
+
}
|
|
503
|
+
function decisions_of(text) {
|
|
504
|
+
const decisions = text.split("\n").flatMap((line) => assistant_texts(transcript_record.parse(line))).flatMap((written) => [...written.matchAll(DECISION_LINE)].map((match) => match[1] ?? "")).map((line) => line.replace(TRAILING_QUOTES, "").slice(0, MAX_DECISION_CHARS));
|
|
505
|
+
return newest_unique(decisions, MAX_DECISIONS);
|
|
506
|
+
}
|
|
507
|
+
function digest_of(text, cwd) {
|
|
508
|
+
return { read: read_files_of(text, cwd), decisions: decisions_of(text) };
|
|
509
|
+
}
|
|
510
|
+
function own_transcript(cwd, environment) {
|
|
511
|
+
if (own_session.session_id_of(environment) === void 0) return void 0;
|
|
512
|
+
const files = cost_transcript.list_sessions_across(cost_transcript.transcript_directories(cwd));
|
|
513
|
+
const selection = own_session.select_own_session(files, environment);
|
|
514
|
+
if (selection.kind === "absent") return void 0;
|
|
515
|
+
const file = files[selection.index];
|
|
516
|
+
return file === void 0 ? void 0 : cost_transcript.read_optional(file);
|
|
517
|
+
}
|
|
518
|
+
function own_digest(cwd = process.cwd(), environment = process.env) {
|
|
519
|
+
const text = own_transcript(cwd, environment);
|
|
520
|
+
return text === void 0 ? void 0 : digest_of(text, cwd);
|
|
521
|
+
}
|
|
522
|
+
function describe_list(label, entries) {
|
|
523
|
+
if (entries.length === 0) return [];
|
|
524
|
+
const bullets = entries.map((entry) => ` - ${entry}`).join("\n");
|
|
525
|
+
return [`${label}:
|
|
526
|
+
${bullets}`];
|
|
527
|
+
}
|
|
528
|
+
function describe_digest(digest) {
|
|
529
|
+
if (digest === void 0) return void 0;
|
|
530
|
+
const blocks = [
|
|
531
|
+
...describe_list(READ_LABEL, digest.read),
|
|
532
|
+
...describe_list(DECISIONS_LABEL, digest.decisions)
|
|
533
|
+
];
|
|
534
|
+
return blocks.length === 0 ? void 0 : blocks.join("\n\n");
|
|
535
|
+
}
|
|
536
|
+
var run_cut_digest = {
|
|
537
|
+
DECISION_PREFIX,
|
|
538
|
+
describe_digest,
|
|
539
|
+
digest_of,
|
|
540
|
+
own_digest,
|
|
541
|
+
session_digest_schema
|
|
542
|
+
};
|
|
543
|
+
|
|
544
|
+
// scripts/run/cut/run-cut-handoff.ts
|
|
545
|
+
import { readFileSync } from "node:fs";
|
|
546
|
+
import { z as z2 } from "zod";
|
|
547
|
+
var handoff_schema = z2.object({
|
|
548
|
+
instruction: z2.string(),
|
|
549
|
+
completed: z2.array(z2.string()),
|
|
550
|
+
remaining: z2.array(z2.string()),
|
|
551
|
+
untouched: z2.array(z2.string()),
|
|
552
|
+
findings: z2.array(z2.string()).optional()
|
|
553
|
+
});
|
|
554
|
+
var COMPLETED_LABEL = "Completed";
|
|
555
|
+
var REMAINING_LABEL = "Remaining";
|
|
556
|
+
var UNTOUCHED_LABEL = "Deliberately untouched";
|
|
557
|
+
var INSTRUCTION_LABEL = "Instruction (verbatim)";
|
|
558
|
+
var FINDINGS_LABEL = "Round-1 findings, attested but not recorded \u2014 do not rerun round 1: fix them, then record them with `pnpm josh review:record --issue <N>`";
|
|
559
|
+
var EMPTY_LIST_NOTE = "(none)";
|
|
560
|
+
var PLACEHOLDER = "\u2026";
|
|
561
|
+
var FINDINGS_PLACEHOLDER = "unrecorded";
|
|
562
|
+
var EXAMPLE_LIST = `["${PLACEHOLDER}"]`;
|
|
563
|
+
var EXAMPLE_VALUES = {
|
|
564
|
+
instruction: `"${PLACEHOLDER}"`,
|
|
565
|
+
completed: EXAMPLE_LIST,
|
|
566
|
+
remaining: EXAMPLE_LIST,
|
|
567
|
+
untouched: EXAMPLE_LIST,
|
|
568
|
+
findings: `["${FINDINGS_PLACEHOLDER}"]`
|
|
569
|
+
};
|
|
570
|
+
var HANDOFF_FORMAT = `{${handoff_schema.keyof().options.map((key) => `"${key}":${EXAMPLE_VALUES[key]}`).join(",")}}`;
|
|
571
|
+
function parse_handoff(raw) {
|
|
572
|
+
return json_value.parse_with(raw, handoff_schema);
|
|
573
|
+
}
|
|
574
|
+
function read_handoff_file(handoff_path) {
|
|
575
|
+
try {
|
|
576
|
+
return parse_handoff(readFileSync(handoff_path, "utf8"));
|
|
577
|
+
} catch {
|
|
578
|
+
return void 0;
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
function is_complete_handoff(handoff) {
|
|
582
|
+
return handoff !== void 0 && handoff.instruction.trim() !== "";
|
|
583
|
+
}
|
|
584
|
+
function is_within_bound(handoff, max_bytes) {
|
|
585
|
+
return Buffer.byteLength(JSON.stringify(handoff), "utf8") <= max_bytes;
|
|
586
|
+
}
|
|
587
|
+
function load_handoff(handoff_path, max_bytes) {
|
|
588
|
+
if (handoff_path === void 0) return { kind: "ok", handoff: void 0 };
|
|
589
|
+
const handoff = read_handoff_file(handoff_path);
|
|
590
|
+
if (handoff === void 0) {
|
|
591
|
+
return {
|
|
592
|
+
kind: "bad",
|
|
593
|
+
note: `--handoff ${handoff_path} is not a readable handoff file \u2014 write ${HANDOFF_FORMAT}`
|
|
594
|
+
};
|
|
595
|
+
}
|
|
596
|
+
if (!is_within_bound(handoff, max_bytes)) {
|
|
597
|
+
return { kind: "bad", note: `--handoff ${handoff_path} is too large to carry across the cut` };
|
|
598
|
+
}
|
|
599
|
+
return { kind: "ok", handoff };
|
|
600
|
+
}
|
|
601
|
+
function describe_list2(label, items) {
|
|
602
|
+
if (items.length === 0) return `${label}: ${EMPTY_LIST_NOTE}`;
|
|
603
|
+
const bullets = items.map((item) => ` - ${item}`).join("\n");
|
|
604
|
+
return `${label}:
|
|
605
|
+
${bullets}`;
|
|
606
|
+
}
|
|
607
|
+
function carried_findings(handoff) {
|
|
608
|
+
const findings = handoff?.findings ?? [];
|
|
609
|
+
return findings.filter(
|
|
610
|
+
(finding) => ![PLACEHOLDER, FINDINGS_PLACEHOLDER, ""].includes(finding.trim())
|
|
611
|
+
);
|
|
612
|
+
}
|
|
613
|
+
function describe_findings(handoff) {
|
|
614
|
+
const findings = carried_findings(handoff);
|
|
615
|
+
if (findings.length === 0) return [];
|
|
616
|
+
return [describe_list2(FINDINGS_LABEL, findings)];
|
|
617
|
+
}
|
|
618
|
+
function describe_handoff(handoff) {
|
|
619
|
+
return [
|
|
620
|
+
`${INSTRUCTION_LABEL}:
|
|
621
|
+
${handoff.instruction}`,
|
|
622
|
+
describe_list2(COMPLETED_LABEL, handoff.completed),
|
|
623
|
+
describe_list2(REMAINING_LABEL, handoff.remaining),
|
|
624
|
+
describe_list2(UNTOUCHED_LABEL, handoff.untouched),
|
|
625
|
+
...describe_findings(handoff)
|
|
626
|
+
].join("\n\n");
|
|
627
|
+
}
|
|
628
|
+
var HANDOFF_PATH = `${JOSH_TMP_DIRECTORY}/handoff-<N>.json`;
|
|
629
|
+
var ISSUE_PLACEHOLDER = "<N>";
|
|
630
|
+
function handoff_path_of(issue) {
|
|
631
|
+
return HANDOFF_PATH.replace(ISSUE_PLACEHOLDER, () => issue);
|
|
632
|
+
}
|
|
633
|
+
var run_cut_handoff = {
|
|
634
|
+
HANDOFF_FORMAT,
|
|
635
|
+
HANDOFF_PATH,
|
|
636
|
+
handoff_path_of,
|
|
637
|
+
carried_findings,
|
|
638
|
+
describe_handoff,
|
|
639
|
+
handoff_schema,
|
|
640
|
+
is_complete_handoff,
|
|
641
|
+
load_handoff,
|
|
642
|
+
parse_handoff,
|
|
643
|
+
read_handoff_file
|
|
644
|
+
};
|
|
645
|
+
|
|
646
|
+
// scripts/run/cut/run-cut.ts
|
|
647
|
+
import { z as z3 } from "zod";
|
|
648
|
+
|
|
649
|
+
// scripts/run/cut/run-cut-adoption.ts
|
|
650
|
+
function session() {
|
|
651
|
+
const selected = agent_provider.resolve_provider();
|
|
652
|
+
if (selected.kind !== "provider") return void 0;
|
|
653
|
+
const id = agent_provider.trimmed(
|
|
654
|
+
selected.provider === agent_provider.OPENAI_PROVIDER ? process.env[agent_provider.CODEX_SESSION_KEY] : own_session.session_id_of(process.env)
|
|
655
|
+
);
|
|
656
|
+
return id === void 0 ? void 0 : `${selected.provider}:${id}`;
|
|
657
|
+
}
|
|
658
|
+
function is_own_adoption(cut) {
|
|
659
|
+
return cut.is_handed_off === false && cut.adopted_session !== void 0 && cut.adopted_session === session();
|
|
660
|
+
}
|
|
661
|
+
function matches_run(previous, next) {
|
|
662
|
+
return previous.issue === next.issue && previous.branch === next.branch && previous.invocation === next.invocation;
|
|
663
|
+
}
|
|
664
|
+
function can_replace(previous, next) {
|
|
665
|
+
return previous.phase === agent_profile_schema.PRE_GATE_PHASE && next.phase === agent_profile_schema.IMPLEMENTATION_PHASE && is_own_adoption(previous) && matches_run(previous, next);
|
|
666
|
+
}
|
|
667
|
+
function release(target, cut, issue) {
|
|
668
|
+
if (cut.is_handed_off !== false || cut.invocation !== lane_child_invocation.child_invocation(issue) || cut.issue !== issue) {
|
|
669
|
+
return;
|
|
670
|
+
}
|
|
671
|
+
stamp_file.replace_stamp(target, {
|
|
672
|
+
...cut,
|
|
673
|
+
is_handed_off: true,
|
|
674
|
+
adopted_session: void 0,
|
|
675
|
+
is_merge_relaunched: void 0
|
|
676
|
+
});
|
|
677
|
+
}
|
|
678
|
+
var run_cut_adoption = { can_replace, release, session };
|
|
679
|
+
|
|
680
|
+
// scripts/run/cut/run-cut.ts
|
|
681
|
+
var CUT_PREFIX = "josh-run-cut-";
|
|
682
|
+
var { PRE_GATE_PHASE, IMPLEMENTATION_PHASE } = agent_profile_schema;
|
|
683
|
+
var CUT_MAX_AGE_MS = backlog_budget.DEFAULT_IDLE_MS;
|
|
684
|
+
var CUT_MAX_AGE_HOURS = backlog_budget.IDLE_WAIT_HOURS;
|
|
685
|
+
var END_COMMAND = "pnpm josh run:cut --end";
|
|
686
|
+
var READ_COMMAND = "pnpm josh run:cut --json";
|
|
687
|
+
var MAX_HANDOFF_BYTES = 8192;
|
|
688
|
+
var run_cut_schema = z3.object({
|
|
689
|
+
invocation: z3.string(),
|
|
690
|
+
issue: z3.string(),
|
|
691
|
+
branch: z3.string(),
|
|
692
|
+
phase: z3.string(),
|
|
693
|
+
cut_at: z3.string(),
|
|
694
|
+
is_handed_off: z3.boolean().optional(),
|
|
695
|
+
adopted_session: z3.string().optional(),
|
|
696
|
+
handoff: run_cut_handoff.handoff_schema.optional(),
|
|
697
|
+
digest: run_cut_digest.session_digest_schema.optional(),
|
|
698
|
+
is_merge_relaunched: z3.boolean().optional()
|
|
699
|
+
});
|
|
700
|
+
function cut_path(git_directory) {
|
|
701
|
+
return stamp_file.stamp_path(CUT_PREFIX, git_directory);
|
|
702
|
+
}
|
|
703
|
+
var { worktree_directory } = run_hold;
|
|
704
|
+
function invocation_for(issue) {
|
|
705
|
+
return lane_child_invocation.child_invocation(issue);
|
|
706
|
+
}
|
|
707
|
+
function parse_cut(raw) {
|
|
708
|
+
return json_value.parse_with(raw, run_cut_schema);
|
|
709
|
+
}
|
|
710
|
+
function cut_at_of(cut) {
|
|
711
|
+
return cut.cut_at;
|
|
712
|
+
}
|
|
713
|
+
var CUT_SPEC = {
|
|
714
|
+
parse: parse_cut,
|
|
715
|
+
timestamp_of: cut_at_of,
|
|
716
|
+
max_age_ms: CUT_MAX_AGE_MS
|
|
717
|
+
};
|
|
718
|
+
function is_expired(cut, now) {
|
|
719
|
+
return stamp_record.is_older_than(cut_at_of(cut), CUT_MAX_AGE_MS, now);
|
|
720
|
+
}
|
|
721
|
+
function classify(raw, now) {
|
|
722
|
+
const read = stamp_record.classify(raw, CUT_SPEC, now);
|
|
723
|
+
if (!("record" in read)) return read;
|
|
724
|
+
return { kind: read.kind, cut: read.record };
|
|
725
|
+
}
|
|
726
|
+
function read_cut(target, now = /* @__PURE__ */ new Date()) {
|
|
727
|
+
return classify(stamp_file.read_stamp_text(target), now);
|
|
728
|
+
}
|
|
729
|
+
function worktree_git_directory_sync(cwd) {
|
|
730
|
+
return git_common_directory.own(cwd);
|
|
731
|
+
}
|
|
732
|
+
function carried_cut_sync(now = /* @__PURE__ */ new Date(), directory = worktree_git_directory_sync()) {
|
|
733
|
+
if (directory === void 0) return void 0;
|
|
734
|
+
const read = read_cut(cut_path(directory), now);
|
|
735
|
+
return read.kind === "carried" ? read.cut : void 0;
|
|
736
|
+
}
|
|
737
|
+
function lane_cut_sync(lane_directory) {
|
|
738
|
+
const directory = git_common_directory.own(lane_directory);
|
|
739
|
+
if (directory === void 0) return void 0;
|
|
740
|
+
const cut = carried_cut_sync(/* @__PURE__ */ new Date(), directory);
|
|
741
|
+
return cut === void 0 ? void 0 : { target: cut_path(directory), cut };
|
|
742
|
+
}
|
|
743
|
+
function fresh_cut(spec, now) {
|
|
744
|
+
return {
|
|
745
|
+
invocation: invocation_for(spec.issue),
|
|
746
|
+
issue: spec.issue,
|
|
747
|
+
branch: spec.branch,
|
|
748
|
+
phase: spec.phase,
|
|
749
|
+
cut_at: now.toISOString(),
|
|
750
|
+
is_handed_off: true,
|
|
751
|
+
handoff: spec.handoff,
|
|
752
|
+
digest: spec.digest
|
|
753
|
+
};
|
|
754
|
+
}
|
|
755
|
+
function resumes_into_implementation(phase) {
|
|
756
|
+
return phase === IMPLEMENTATION_PHASE;
|
|
757
|
+
}
|
|
758
|
+
function within_handoff_bound(cut) {
|
|
759
|
+
return Buffer.byteLength(JSON.stringify(cut), "utf8") <= MAX_HANDOFF_BYTES;
|
|
760
|
+
}
|
|
761
|
+
function record_within_bound(spec, now = /* @__PURE__ */ new Date()) {
|
|
762
|
+
return within_handoff_bound(fresh_cut(spec, now));
|
|
763
|
+
}
|
|
764
|
+
function with_digest(spec, digest_of2) {
|
|
765
|
+
if (spec.handoff === void 0) return spec;
|
|
766
|
+
const digested = { ...spec, digest: digest_of2() };
|
|
767
|
+
return record_within_bound(digested) ? digested : spec;
|
|
768
|
+
}
|
|
769
|
+
function replace_adopted(target, cut) {
|
|
770
|
+
const previous = read_cut(target);
|
|
771
|
+
if ("cut" in previous && run_cut_adoption.can_replace(previous.cut, cut)) {
|
|
772
|
+
stamp_file.replace_stamp(target, cut);
|
|
773
|
+
return true;
|
|
774
|
+
}
|
|
775
|
+
return false;
|
|
776
|
+
}
|
|
777
|
+
function begin_cut(target, spec, now = /* @__PURE__ */ new Date()) {
|
|
778
|
+
const cut = fresh_cut(spec, now);
|
|
779
|
+
if (!within_handoff_bound(cut)) return void 0;
|
|
780
|
+
if (replace_adopted(target, cut)) return cut;
|
|
781
|
+
return stamp_file.create_stamp(target, cut) ? cut : void 0;
|
|
782
|
+
}
|
|
783
|
+
function is_declared_cut(cut, issue) {
|
|
784
|
+
return cut.is_handed_off === true && cut.invocation === invocation_for(issue);
|
|
785
|
+
}
|
|
786
|
+
function matches_state(cut, request) {
|
|
787
|
+
return cut.branch === request.current_branch && cut.issue === request.issue && request.is_dirty && request.is_held;
|
|
788
|
+
}
|
|
789
|
+
function is_adopted_cut(cut, issue) {
|
|
790
|
+
return cut.is_handed_off === false && cut.invocation === invocation_for(issue);
|
|
791
|
+
}
|
|
792
|
+
function has_required_handoff(cut) {
|
|
793
|
+
return !resumes_into_implementation(cut.phase) || run_cut_handoff.is_complete_handoff(cut.handoff);
|
|
794
|
+
}
|
|
795
|
+
function is_relaunchable(cut, issue) {
|
|
796
|
+
return is_declared_cut(cut, issue) && has_required_handoff(cut) && cut.is_merge_relaunched !== true;
|
|
797
|
+
}
|
|
798
|
+
function mark_merge_relaunched(target, cut) {
|
|
799
|
+
stamp_file.remove_stamp(target);
|
|
800
|
+
return stamp_file.create_stamp(target, { ...cut, is_merge_relaunched: true });
|
|
801
|
+
}
|
|
802
|
+
function classify_resume(cut, request) {
|
|
803
|
+
if (is_adopted_cut(cut, request.issue)) return "handed-off";
|
|
804
|
+
if (!is_declared_cut(cut, request.issue) || !matches_state(cut, request)) return "stale";
|
|
805
|
+
return has_required_handoff(cut) ? "resume" : "incomplete";
|
|
806
|
+
}
|
|
807
|
+
function adopt_cut(target, cut) {
|
|
808
|
+
const next = { ...cut, is_handed_off: false, adopted_session: run_cut_adoption.session() };
|
|
809
|
+
stamp_file.remove_stamp(target);
|
|
810
|
+
return stamp_file.create_stamp(target, next) ? next : void 0;
|
|
811
|
+
}
|
|
812
|
+
function end_cut(target) {
|
|
813
|
+
stamp_file.remove_stamp(target);
|
|
814
|
+
}
|
|
815
|
+
function hold_of(directory) {
|
|
816
|
+
if (directory === void 0) return void 0;
|
|
817
|
+
const read = run_hold.read_hold(run_hold.hold_path(directory));
|
|
818
|
+
return read.kind === "held" || read.kind === "stale" ? read.hold : void 0;
|
|
819
|
+
}
|
|
820
|
+
function fullrun_issue(hold) {
|
|
821
|
+
return hold?.is_fullrun === true ? hold.issue : void 0;
|
|
822
|
+
}
|
|
823
|
+
function held_issue_sync(directory = worktree_git_directory_sync()) {
|
|
824
|
+
return fullrun_issue(hold_of(directory));
|
|
825
|
+
}
|
|
826
|
+
async function current_state() {
|
|
827
|
+
const branch = await git_command.branch();
|
|
828
|
+
const is_dirty = await run_hold.is_tree_dirty();
|
|
829
|
+
const hold = hold_of(await worktree_directory());
|
|
830
|
+
return {
|
|
831
|
+
branch,
|
|
832
|
+
is_dirty,
|
|
833
|
+
is_held: hold !== void 0,
|
|
834
|
+
held_issue: fullrun_issue(hold),
|
|
835
|
+
hold_taken_at: hold?.taken_at
|
|
836
|
+
};
|
|
837
|
+
}
|
|
838
|
+
function describe_cut(cut) {
|
|
839
|
+
return `${cut.invocation} cut at ${cut.cut_at} on ${cut.branch} (${cut.phase})`;
|
|
840
|
+
}
|
|
841
|
+
function busy_message(cut) {
|
|
842
|
+
return `Another process already resumed this cut \u2014 ${describe_cut(cut)}. Nothing was resumed here; a double launch was detected.`;
|
|
843
|
+
}
|
|
844
|
+
function handed_off_message(cut) {
|
|
845
|
+
return `This cut was already adopted \u2014 ${describe_cut(cut)}. Nothing was resumed here; the record alone does not establish whether its owner is still running. After a trusted repair request on an open PR and confirmed owner exit, use \`pnpm josh run:add ${cut.issue} --retry\` in a live backlogrun, or \`pnpm josh run:entry ${cut.issue}\` in its lane. Active or unreadable owners remain protected.`;
|
|
846
|
+
}
|
|
847
|
+
function stale_message(cut) {
|
|
848
|
+
return `This cut does not match the current tree \u2014 ${describe_cut(cut)}. Resume failed; verify the branch and the uncommitted work, then clear it with \`${END_COMMAND}\` if the run is over.`;
|
|
849
|
+
}
|
|
850
|
+
function incomplete_message(cut) {
|
|
851
|
+
return `This cut carries no instruction to resume on \u2014 ${describe_cut(cut)}. Resume was refused rather than continuing without it; recover the run's instruction and work state before implementing, and clear the record with \`${END_COMMAND}\` if the run is over.`;
|
|
852
|
+
}
|
|
853
|
+
function unreadable_message() {
|
|
854
|
+
return `A cut record is here but could not be read; clear it with \`${END_COMMAND}\` once you know no run is using it. Read it with \`${READ_COMMAND}\`.`;
|
|
855
|
+
}
|
|
856
|
+
function unknown_message() {
|
|
857
|
+
return "This working tree\u2019s git directory could not be read, so no cut record was acted on.";
|
|
858
|
+
}
|
|
859
|
+
var run_cut = {
|
|
860
|
+
CUT_MAX_AGE_HOURS,
|
|
861
|
+
CUT_MAX_AGE_MS,
|
|
862
|
+
END_COMMAND,
|
|
863
|
+
IMPLEMENTATION_PHASE,
|
|
864
|
+
MAX_HANDOFF_BYTES,
|
|
865
|
+
PRE_GATE_PHASE,
|
|
866
|
+
adopt_cut,
|
|
867
|
+
begin_cut,
|
|
868
|
+
busy_message,
|
|
869
|
+
carried_cut_sync,
|
|
870
|
+
classify,
|
|
871
|
+
classify_resume,
|
|
872
|
+
current_state,
|
|
873
|
+
with_digest,
|
|
874
|
+
cut_path,
|
|
875
|
+
describe_cut,
|
|
876
|
+
end_cut,
|
|
877
|
+
fresh_cut,
|
|
878
|
+
fullrun_issue,
|
|
879
|
+
handed_off_message,
|
|
880
|
+
has_required_handoff,
|
|
881
|
+
held_issue_sync,
|
|
882
|
+
hold_of,
|
|
883
|
+
incomplete_message,
|
|
884
|
+
invocation_for,
|
|
885
|
+
is_expired,
|
|
886
|
+
is_relaunchable,
|
|
887
|
+
lane_cut_sync,
|
|
888
|
+
mark_merge_relaunched,
|
|
889
|
+
read_cut,
|
|
890
|
+
record_within_bound,
|
|
891
|
+
resumes_into_implementation,
|
|
892
|
+
stale_message,
|
|
893
|
+
unknown_message,
|
|
894
|
+
unreadable_message,
|
|
895
|
+
within_handoff_bound,
|
|
896
|
+
worktree_directory,
|
|
897
|
+
worktree_git_directory_sync
|
|
898
|
+
};
|
|
899
|
+
|
|
900
|
+
export {
|
|
901
|
+
run_cut_adoption,
|
|
902
|
+
lane_guard_policy,
|
|
903
|
+
changed_paths_sync,
|
|
904
|
+
investigation_reads,
|
|
905
|
+
duplicate_read_outcome,
|
|
906
|
+
duplicate_reads,
|
|
907
|
+
run_cut_digest,
|
|
908
|
+
run_cut_handoff,
|
|
909
|
+
run_cut
|
|
910
|
+
};
|