@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
|
@@ -1,1249 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
backlog_triage_decision,
|
|
3
|
-
issue_run_verdict
|
|
4
|
-
} from "./chunk-DOYNK72G.js";
|
|
5
|
-
import {
|
|
6
|
-
run_event_filed
|
|
7
|
-
} from "./chunk-PYOK73QE.js";
|
|
8
|
-
import {
|
|
9
|
-
issue_classification,
|
|
10
|
-
issue_lint_cli
|
|
11
|
-
} from "./chunk-BUZAYEBD.js";
|
|
12
|
-
import {
|
|
13
|
-
issue_scout_cli,
|
|
14
|
-
measure_twin
|
|
15
|
-
} from "./chunk-FM7VVAK6.js";
|
|
16
|
-
import {
|
|
17
|
-
epic_bundle_cli
|
|
18
|
-
} from "./chunk-S4JE63QE.js";
|
|
19
|
-
import {
|
|
20
|
-
issue_fold_cli
|
|
21
|
-
} from "./chunk-FQWRM5FC.js";
|
|
22
|
-
import {
|
|
23
|
-
epic_blocked_by
|
|
24
|
-
} from "./chunk-TMFKVJUW.js";
|
|
25
|
-
import {
|
|
26
|
-
split_resolution
|
|
27
|
-
} from "./chunk-MRAEJLXL.js";
|
|
28
|
-
import {
|
|
29
|
-
epic_shape
|
|
30
|
-
} from "./chunk-MOD3FG4V.js";
|
|
31
|
-
import {
|
|
32
|
-
epic_relations
|
|
33
|
-
} from "./chunk-WTIPX5NG.js";
|
|
34
|
-
import {
|
|
35
|
-
epic_validate
|
|
36
|
-
} from "./chunk-RFWB2KAV.js";
|
|
37
|
-
import {
|
|
38
|
-
issue_fold
|
|
39
|
-
} from "./chunk-QTJPCXEW.js";
|
|
40
|
-
import {
|
|
41
|
-
issue_release_cli
|
|
42
|
-
} from "./chunk-3U6A5WON.js";
|
|
43
|
-
import {
|
|
44
|
-
issue_state_cli
|
|
45
|
-
} from "./chunk-E4PFCTXN.js";
|
|
46
|
-
import {
|
|
47
|
-
repository_labels
|
|
48
|
-
} from "./chunk-KKIIY5I5.js";
|
|
49
|
-
import {
|
|
50
|
-
acceptance_map
|
|
51
|
-
} from "./chunk-5PCK53WP.js";
|
|
52
|
-
import {
|
|
53
|
-
run_hold_session
|
|
54
|
-
} from "./chunk-PVRDJU2B.js";
|
|
55
|
-
import {
|
|
56
|
-
issue_not_before_label
|
|
57
|
-
} from "./chunk-YNCF66RK.js";
|
|
58
|
-
import {
|
|
59
|
-
issue_cap_files
|
|
60
|
-
} from "./chunk-N2ZF6T4E.js";
|
|
61
|
-
import {
|
|
62
|
-
lane_net_read
|
|
63
|
-
} from "./chunk-GBMZXFFC.js";
|
|
64
|
-
import {
|
|
65
|
-
epic_triage
|
|
66
|
-
} from "./chunk-VQRT32JB.js";
|
|
67
|
-
import {
|
|
68
|
-
issue_publication_state
|
|
69
|
-
} from "./chunk-G2DNS74C.js";
|
|
70
|
-
import {
|
|
71
|
-
issue_auto_ok
|
|
72
|
-
} from "./chunk-QGATHT4S.js";
|
|
73
|
-
import {
|
|
74
|
-
issue_closing_pr
|
|
75
|
-
} from "./chunk-WWLCQREY.js";
|
|
76
|
-
import {
|
|
77
|
-
issue_sample_gate
|
|
78
|
-
} from "./chunk-CQUZ6TNQ.js";
|
|
79
|
-
import {
|
|
80
|
-
epic_issue
|
|
81
|
-
} from "./chunk-YEAE46TS.js";
|
|
82
|
-
import {
|
|
83
|
-
measure_declaration
|
|
84
|
-
} from "./chunk-34JJYCIY.js";
|
|
85
|
-
import {
|
|
86
|
-
size_estimate
|
|
87
|
-
} from "./chunk-2VY7CJ2R.js";
|
|
88
|
-
import {
|
|
89
|
-
issue_priority
|
|
90
|
-
} from "./chunk-XI2ABCRX.js";
|
|
91
|
-
import {
|
|
92
|
-
epic_parse
|
|
93
|
-
} from "./chunk-VDGNXSP3.js";
|
|
94
|
-
import {
|
|
95
|
-
github_issue_url
|
|
96
|
-
} from "./chunk-S4X5PJV7.js";
|
|
97
|
-
import {
|
|
98
|
-
cli_body
|
|
99
|
-
} from "./chunk-7IZJ5MG2.js";
|
|
100
|
-
import {
|
|
101
|
-
git_gh_command
|
|
102
|
-
} from "./chunk-NRULNBYI.js";
|
|
103
|
-
import {
|
|
104
|
-
MAX_SCANNED,
|
|
105
|
-
git_gh_issue_list
|
|
106
|
-
} from "./chunk-TEXUEBGE.js";
|
|
107
|
-
import {
|
|
108
|
-
backlog_overlap
|
|
109
|
-
} from "./chunk-MDGPJOLK.js";
|
|
110
|
-
import {
|
|
111
|
-
test_related_pins
|
|
112
|
-
} from "./chunk-HE5S4XRE.js";
|
|
113
|
-
import {
|
|
114
|
-
markdown_section
|
|
115
|
-
} from "./chunk-JZK33TA5.js";
|
|
116
|
-
import {
|
|
117
|
-
COMMAND_MAP
|
|
118
|
-
} from "./chunk-CCHJZEF5.js";
|
|
119
|
-
import {
|
|
120
|
-
git_branch
|
|
121
|
-
} from "./chunk-YEQFAEVW.js";
|
|
122
|
-
import {
|
|
123
|
-
issue_body_keys
|
|
124
|
-
} from "./chunk-KXK2A2HB.js";
|
|
125
|
-
import {
|
|
126
|
-
agent_worker_profile
|
|
127
|
-
} from "./chunk-LL6G34MF.js";
|
|
128
|
-
import {
|
|
129
|
-
git_gh_issue_write
|
|
130
|
-
} from "./chunk-4F4KARQN.js";
|
|
131
|
-
import {
|
|
132
|
-
git_gh_issue_rest
|
|
133
|
-
} from "./chunk-TFYYXETQ.js";
|
|
134
|
-
import {
|
|
135
|
-
repo_party
|
|
136
|
-
} from "./chunk-DKDWOE3C.js";
|
|
137
|
-
import {
|
|
138
|
-
run_hold
|
|
139
|
-
} from "./chunk-F5N2QIFD.js";
|
|
140
|
-
import {
|
|
141
|
-
run_event_stream_emit
|
|
142
|
-
} from "./chunk-26JL4UU4.js";
|
|
143
|
-
import {
|
|
144
|
-
run_event_stream
|
|
145
|
-
} from "./chunk-KGSEWOKI.js";
|
|
146
|
-
import {
|
|
147
|
-
AUTO_OK_LABEL,
|
|
148
|
-
FILING_ROUTE_LABELS,
|
|
149
|
-
INTERRUPT_ROUTE_LABEL,
|
|
150
|
-
NEEDS_DECISION_LABEL,
|
|
151
|
-
RUN_LANE_LABEL,
|
|
152
|
-
RUN_SOLO_LABEL,
|
|
153
|
-
SPLIT_ROUTE_LABEL,
|
|
154
|
-
TIER_A_ROUTE_LABEL,
|
|
155
|
-
has_label_name,
|
|
156
|
-
has_parked_label
|
|
157
|
-
} from "./chunk-QQBMVC5W.js";
|
|
158
|
-
import {
|
|
159
|
-
shell_quote
|
|
160
|
-
} from "./chunk-W2IA2LV3.js";
|
|
161
|
-
import {
|
|
162
|
-
session_cite
|
|
163
|
-
} from "./chunk-22DVQCP6.js";
|
|
164
|
-
import {
|
|
165
|
-
issue_cite
|
|
166
|
-
} from "./chunk-HQ2HSZBN.js";
|
|
167
|
-
import {
|
|
168
|
-
git_gh_api_path
|
|
169
|
-
} from "./chunk-RDRN56E4.js";
|
|
170
|
-
import {
|
|
171
|
-
git_gh_exec
|
|
172
|
-
} from "./chunk-43DU7DYZ.js";
|
|
173
|
-
import {
|
|
174
|
-
error_text
|
|
175
|
-
} from "./chunk-CDY4NFQG.js";
|
|
176
|
-
import {
|
|
177
|
-
lane_child_marker
|
|
178
|
-
} from "./chunk-XXPDFJRI.js";
|
|
179
|
-
import {
|
|
180
|
-
issue_number_shape
|
|
181
|
-
} from "./chunk-G75GWNNY.js";
|
|
182
|
-
import {
|
|
183
|
-
cli_flags
|
|
184
|
-
} from "./chunk-2FE3C4PH.js";
|
|
185
|
-
import {
|
|
186
|
-
git_command
|
|
187
|
-
} from "./chunk-IXZZSST7.js";
|
|
188
|
-
import {
|
|
189
|
-
file_reader
|
|
190
|
-
} from "./chunk-ZNX2LJCQ.js";
|
|
191
|
-
import {
|
|
192
|
-
json_value
|
|
193
|
-
} from "./chunk-HIU2WXB6.js";
|
|
194
|
-
|
|
195
|
-
// scripts/run/hold/run-hold-member.ts
|
|
196
|
-
function is_owned(hold, owner) {
|
|
197
|
-
if (hold.owner_pid === void 0 || owner.owner_pid === void 0) return false;
|
|
198
|
-
return run_hold_session.is_session_hold(hold, owner);
|
|
199
|
-
}
|
|
200
|
-
async function is_hold_owner(owner) {
|
|
201
|
-
const directory = await run_hold.worktree_directory();
|
|
202
|
-
if (directory === void 0) return false;
|
|
203
|
-
const read = run_hold.read_hold(run_hold.hold_path(directory));
|
|
204
|
-
return read.kind === "held" && is_owned(read.hold, owner);
|
|
205
|
-
}
|
|
206
|
-
async function is_run_member(owner = run_hold.session_owner()) {
|
|
207
|
-
if (lane_child_marker.marked_issue() !== void 0) return true;
|
|
208
|
-
return await is_hold_owner(owner);
|
|
209
|
-
}
|
|
210
|
-
var run_hold_member = { is_run_member };
|
|
211
|
-
|
|
212
|
-
// scripts/split/split-direction.ts
|
|
213
|
-
var KEPT_HEADINGS = [issue_body_keys.heading("expected"), issue_body_keys.heading("criteria")];
|
|
214
|
-
var CODE_SPAN = /`([^`]+)`/gu;
|
|
215
|
-
var NOT_A_NAME = /[\s:]/u;
|
|
216
|
-
var LINE_SUFFIX = /:\d+(?:[-:]\d+)?$/u;
|
|
217
|
-
var SEPARATOR = "/";
|
|
218
|
-
var EXTENSION = /\.[^.]*$/u;
|
|
219
|
-
var WORD = /\s+/u;
|
|
220
|
-
var COMMAND_WORD = /[\w:-]+/gu;
|
|
221
|
-
var COMMAND_SEPARATOR = ":";
|
|
222
|
-
var MARKDOWN = /\.mdx?$/iu;
|
|
223
|
-
function normalized(name) {
|
|
224
|
-
return name.replaceAll("_", "-");
|
|
225
|
-
}
|
|
226
|
-
function module_of(path) {
|
|
227
|
-
return normalized(path.slice(path.lastIndexOf(SEPARATOR) + 1).replace(EXTENSION, ""));
|
|
228
|
-
}
|
|
229
|
-
function stem_of(span) {
|
|
230
|
-
const name = span.replace(LINE_SUFFIX, "");
|
|
231
|
-
if (NOT_A_NAME.test(name)) return void 0;
|
|
232
|
-
const stem = name.slice(name.lastIndexOf(SEPARATOR) + 1).split(".", 1)[0] ?? "";
|
|
233
|
-
return stem === "" ? void 0 : normalized(stem);
|
|
234
|
-
}
|
|
235
|
-
function is_command(word) {
|
|
236
|
-
return word.includes(COMMAND_SEPARATOR) && Object.hasOwn(COMMAND_MAP, word);
|
|
237
|
-
}
|
|
238
|
-
function commands_of(span) {
|
|
239
|
-
return span.split(WORD).filter((word) => is_command(word));
|
|
240
|
-
}
|
|
241
|
-
function kept_names(body) {
|
|
242
|
-
const text = KEPT_HEADINGS.flatMap((heading) => markdown_section.section_lines(body, heading));
|
|
243
|
-
const spans = [...text.join("\n").matchAll(CODE_SPAN)].map((match) => match[1] ?? "");
|
|
244
|
-
const stems = spans.map((span) => stem_of(span)).filter((stem) => stem !== void 0);
|
|
245
|
-
return /* @__PURE__ */ new Set([...stems, ...spans.flatMap((span) => commands_of(span))]);
|
|
246
|
-
}
|
|
247
|
-
function commands_for(path) {
|
|
248
|
-
const registered = Object.entries(COMMAND_MAP).filter(([, entry]) => entry.script === path).map(([command]) => command);
|
|
249
|
-
if (MARKDOWN.test(path) || test_related_pins.is_registry_source(path)) return registered;
|
|
250
|
-
const source = file_reader.read_if_readable(path) ?? "";
|
|
251
|
-
const named = [...source.matchAll(COMMAND_WORD)].map((match) => match[0]);
|
|
252
|
-
return [.../* @__PURE__ */ new Set([...registered, ...named.filter((word) => is_command(word))])];
|
|
253
|
-
}
|
|
254
|
-
function names_of(path) {
|
|
255
|
-
return [module_of(path), ...commands_for(path)];
|
|
256
|
-
}
|
|
257
|
-
function references(kept_body, child_body) {
|
|
258
|
-
const kept = kept_names(kept_body);
|
|
259
|
-
const files = [...backlog_overlap.declared_paths(child_body)].filter(
|
|
260
|
-
(path) => !path.endsWith(SEPARATOR)
|
|
261
|
-
);
|
|
262
|
-
return files.map((path) => ({ path, name: names_of(path).find((candidate) => kept.has(candidate)) ?? "" })).filter((reference) => reference.name !== "");
|
|
263
|
-
}
|
|
264
|
-
function format_refusal(kept, found) {
|
|
265
|
-
const named = found.map(({ path, name }) => `\`${name}\` (\`${path}\`)`).join(", ");
|
|
266
|
-
return [
|
|
267
|
-
`\u2716 ${session_cite.issue(kept)}'s expected result or acceptance criteria name what this split takes off: ${named}. The kept Issue depends on the split-off part, so it cannot merge first.`,
|
|
268
|
-
`File the part as a prerequisite instead (\`--route split --label route:tier-a\`), then run \`pnpm josh run:split ${kept} --prerequisite <P>\` \u2014 \`prerequisite.md\`; nothing was filed.`
|
|
269
|
-
].join("\n");
|
|
270
|
-
}
|
|
271
|
-
function kept_issue({ route, found_during }) {
|
|
272
|
-
if (route !== SPLIT_ROUTE_LABEL || found_during === void 0) return void 0;
|
|
273
|
-
return issue_number_shape.is_issue_number(found_during) ? found_during : void 0;
|
|
274
|
-
}
|
|
275
|
-
function is_prerequisite({ labels = [] }) {
|
|
276
|
-
return labels.includes(TIER_A_ROUTE_LABEL);
|
|
277
|
-
}
|
|
278
|
-
async function kept_deliverable_body(issue) {
|
|
279
|
-
const raw = await git_gh_command.issue_get_labels_and_body(issue);
|
|
280
|
-
const subject = epic_validate.parse_epic_subject(raw);
|
|
281
|
-
if (subject === void 0) return void 0;
|
|
282
|
-
const tracked = epic_parse.parse_task_list_issue_numbers(subject.body);
|
|
283
|
-
const shape = { epic_number: subject.number, labels: subject.labels, body: subject.body };
|
|
284
|
-
return epic_shape.find_subject_error(shape, tracked) === void 0 ? void 0 : subject.body;
|
|
285
|
-
}
|
|
286
|
-
async function refusal_of(filing, child_body) {
|
|
287
|
-
if (is_prerequisite(filing)) return void 0;
|
|
288
|
-
const found_during = kept_issue(filing);
|
|
289
|
-
if (found_during === void 0) return void 0;
|
|
290
|
-
const kept_body = await kept_deliverable_body(found_during);
|
|
291
|
-
const found = kept_body === void 0 ? [] : references(kept_body, child_body);
|
|
292
|
-
return found.length === 0 ? void 0 : format_refusal(found_during, found);
|
|
293
|
-
}
|
|
294
|
-
async function is_direction_clear(filing, child_body) {
|
|
295
|
-
const refusal = await refusal_of(filing, child_body);
|
|
296
|
-
if (refusal !== void 0) console.error(refusal);
|
|
297
|
-
return refusal === void 0;
|
|
298
|
-
}
|
|
299
|
-
var split_direction = { is_direction_clear, references, refusal_of };
|
|
300
|
-
|
|
301
|
-
// scripts/issue/issue-backlinks.ts
|
|
302
|
-
var ORIGIN_HEADING = "## Origin";
|
|
303
|
-
var UPSTREAM_ISSUES_HEADING = "## Upstream issues";
|
|
304
|
-
var UPSTREAM_CANDIDATE_HEADING = "## Upstream candidate";
|
|
305
|
-
var CHECKBOX_PATTERN = /^\s*-\s*\[[ xX]\]/u;
|
|
306
|
-
var WRONG_UPSTREAM_HEADING_PATTERN = /^##\s+Upstream\b/iu;
|
|
307
|
-
var BARE_REFERENCE_PATTERN = /^#\d+$/u;
|
|
308
|
-
var REFERENCE_MARK = "#";
|
|
309
|
-
var PATH_SEPARATOR = "/";
|
|
310
|
-
var PATH_SEGMENT_COUNT = 2;
|
|
311
|
-
var OK = "ok";
|
|
312
|
-
var WRONG_HEADING = "wrong-heading";
|
|
313
|
-
var MISSING_UPSTREAM = "missing-upstream";
|
|
314
|
-
function has_heading(body, heading) {
|
|
315
|
-
return markdown_section.has_line(body, heading);
|
|
316
|
-
}
|
|
317
|
-
function upstream_section_lines(body) {
|
|
318
|
-
if (!has_heading(body, UPSTREAM_ISSUES_HEADING)) return void 0;
|
|
319
|
-
return markdown_section.section_lines(body, UPSTREAM_ISSUES_HEADING);
|
|
320
|
-
}
|
|
321
|
-
function has_wrong_upstream_heading(body) {
|
|
322
|
-
return markdown_section.unfenced_lines(body).some((line) => {
|
|
323
|
-
const heading = line.trim();
|
|
324
|
-
if (heading === UPSTREAM_ISSUES_HEADING || heading === UPSTREAM_CANDIDATE_HEADING) return false;
|
|
325
|
-
return WRONG_UPSTREAM_HEADING_PATTERN.test(heading);
|
|
326
|
-
});
|
|
327
|
-
}
|
|
328
|
-
function tokens_of(section) {
|
|
329
|
-
return section.join(" ").split(/\s+/u).filter((token) => token.length > 0);
|
|
330
|
-
}
|
|
331
|
-
function has_two_segments(path = "") {
|
|
332
|
-
const segments = path.split(PATH_SEPARATOR);
|
|
333
|
-
return segments.length === PATH_SEGMENT_COUNT && segments.every((segment) => segment.length > 0);
|
|
334
|
-
}
|
|
335
|
-
function is_qualified_reference(token) {
|
|
336
|
-
const [path, number, ...rest] = token.split(REFERENCE_MARK);
|
|
337
|
-
if (number === void 0 || rest.length > 0) return false;
|
|
338
|
-
return issue_number_shape.ISSUE_NUMBER_PATTERN.test(number) && has_two_segments(path);
|
|
339
|
-
}
|
|
340
|
-
function has_bare_reference(section) {
|
|
341
|
-
return tokens_of(section).some((token) => BARE_REFERENCE_PATTERN.test(token));
|
|
342
|
-
}
|
|
343
|
-
function has_checkbox_reference(section) {
|
|
344
|
-
return section.some((line) => CHECKBOX_PATTERN.test(line) && line.includes(REFERENCE_MARK));
|
|
345
|
-
}
|
|
346
|
-
function is_malformed_upstream_section(section) {
|
|
347
|
-
return has_bare_reference(section) || has_checkbox_reference(section);
|
|
348
|
-
}
|
|
349
|
-
function every_upstream_cites_origin(upstreams) {
|
|
350
|
-
return upstreams.every((upstream) => has_heading(upstream.body, ORIGIN_HEADING));
|
|
351
|
-
}
|
|
352
|
-
function verdict_without_section(origin_body) {
|
|
353
|
-
return has_heading(origin_body, UPSTREAM_CANDIDATE_HEADING) ? OK : MISSING_UPSTREAM;
|
|
354
|
-
}
|
|
355
|
-
function verdict_with_section(section, upstreams) {
|
|
356
|
-
if (is_malformed_upstream_section(section)) return WRONG_HEADING;
|
|
357
|
-
if (upstreams.length === 0) return MISSING_UPSTREAM;
|
|
358
|
-
return every_upstream_cites_origin(upstreams) ? OK : "missing-origin";
|
|
359
|
-
}
|
|
360
|
-
function classify_backlinks(origin_body, upstreams) {
|
|
361
|
-
if (has_wrong_upstream_heading(origin_body)) return WRONG_HEADING;
|
|
362
|
-
const section = upstream_section_lines(origin_body);
|
|
363
|
-
return section === void 0 ? verdict_without_section(origin_body) : verdict_with_section(section, upstreams);
|
|
364
|
-
}
|
|
365
|
-
function upstream_references(origin_body) {
|
|
366
|
-
const section = upstream_section_lines(origin_body);
|
|
367
|
-
if (section === void 0) return [];
|
|
368
|
-
return tokens_of(section).filter((token) => is_qualified_reference(token));
|
|
369
|
-
}
|
|
370
|
-
function needs_upstreams(origin_body) {
|
|
371
|
-
if (has_wrong_upstream_heading(origin_body)) return false;
|
|
372
|
-
const section = upstream_section_lines(origin_body);
|
|
373
|
-
if (section === void 0) return false;
|
|
374
|
-
return !is_malformed_upstream_section(section);
|
|
375
|
-
}
|
|
376
|
-
var issue_backlinks = {
|
|
377
|
-
classify_backlinks,
|
|
378
|
-
upstream_refs: upstream_references,
|
|
379
|
-
needs_upstreams,
|
|
380
|
-
ORIGIN_HEADING,
|
|
381
|
-
UPSTREAM_ISSUES_HEADING,
|
|
382
|
-
UPSTREAM_CANDIDATE_HEADING
|
|
383
|
-
};
|
|
384
|
-
|
|
385
|
-
// scripts/issue/issue-file.ts
|
|
386
|
-
var ROUTE_PREFIX = "route:";
|
|
387
|
-
var LIST_SEPARATOR = ",";
|
|
388
|
-
var WORD_SEPARATOR = /\s+/u;
|
|
389
|
-
var CODE_SPAN2 = /`/gu;
|
|
390
|
-
var LEADING_NON_WORD = /^[^\w]+/u;
|
|
391
|
-
var DIGIT = /\d/u;
|
|
392
|
-
var OPTIONS = {
|
|
393
|
-
...backlog_triage_decision.OPTIONS,
|
|
394
|
-
"body-file": { type: "string" },
|
|
395
|
-
route: { type: "string" },
|
|
396
|
-
label: { type: "string", multiple: true },
|
|
397
|
-
repo: { type: "string" },
|
|
398
|
-
distinct: { type: "string", multiple: true },
|
|
399
|
-
"found-during": { type: "string" },
|
|
400
|
-
"over-cap": { type: "boolean" },
|
|
401
|
-
"no-auto-ok": { type: "boolean" },
|
|
402
|
-
release: { type: "boolean" },
|
|
403
|
-
"blocks-finder": { type: "boolean" },
|
|
404
|
-
check: { type: "boolean" },
|
|
405
|
-
prepare: { type: "boolean" }
|
|
406
|
-
};
|
|
407
|
-
function label_of(prefix, value, known) {
|
|
408
|
-
if (value === void 0) return void 0;
|
|
409
|
-
const label = value.startsWith(prefix) ? value : `${prefix}${value}`;
|
|
410
|
-
return known.includes(label) ? label : void 0;
|
|
411
|
-
}
|
|
412
|
-
var ROUTE_NAMES = FILING_ROUTE_LABELS.map((label) => label.name);
|
|
413
|
-
function distinct_numbers(values) {
|
|
414
|
-
const numbers = values.flatMap((value) => value.split(LIST_SEPARATOR)).map((raw) => {
|
|
415
|
-
return Number(raw.trim().replace("#", ""));
|
|
416
|
-
});
|
|
417
|
-
return numbers.every((number) => Number.isSafeInteger(number) && number > 0) ? numbers : void 0;
|
|
418
|
-
}
|
|
419
|
-
function route_of(values) {
|
|
420
|
-
if (values.route === void 0) return void 0;
|
|
421
|
-
return label_of(ROUTE_PREFIX, values.route, ROUTE_NAMES) ?? false;
|
|
422
|
-
}
|
|
423
|
-
function has_text(value) {
|
|
424
|
-
return value !== void 0 && value.trim() !== "";
|
|
425
|
-
}
|
|
426
|
-
function found_during_of(value) {
|
|
427
|
-
if (value === void 0) return void 0;
|
|
428
|
-
const numbers = distinct_numbers([value]);
|
|
429
|
-
return numbers?.length === 1 ? String(numbers[0]) : false;
|
|
430
|
-
}
|
|
431
|
-
function labelled_of(values) {
|
|
432
|
-
const route = route_of(values);
|
|
433
|
-
const distinct = distinct_numbers(values.distinct ?? []);
|
|
434
|
-
const found_during = found_during_of(values["found-during"]);
|
|
435
|
-
if (route === false || distinct === void 0 || found_during === false) return void 0;
|
|
436
|
-
return { route, distinct, found_during };
|
|
437
|
-
}
|
|
438
|
-
function arguments_of(values, title) {
|
|
439
|
-
const labelled = labelled_of(values);
|
|
440
|
-
const body_file = values["body-file"];
|
|
441
|
-
if (labelled === void 0 || !has_text(title) || !has_text(body_file)) return void 0;
|
|
442
|
-
return {
|
|
443
|
-
title,
|
|
444
|
-
body_file,
|
|
445
|
-
answers: {
|
|
446
|
-
defect: values.defect,
|
|
447
|
-
verification: values.verification,
|
|
448
|
-
"every-run": values["every-run"]
|
|
449
|
-
},
|
|
450
|
-
...labelled,
|
|
451
|
-
labels: values.label ?? [],
|
|
452
|
-
repo: values.repo,
|
|
453
|
-
is_over_cap: values["over-cap"] === true,
|
|
454
|
-
is_auto_ok_opted_out: values["no-auto-ok"] === true,
|
|
455
|
-
is_release: values.release === true,
|
|
456
|
-
is_blocking_finder: values["blocks-finder"] === true,
|
|
457
|
-
is_check: values.check === true,
|
|
458
|
-
is_prepared: values.prepare === true
|
|
459
|
-
};
|
|
460
|
-
}
|
|
461
|
-
function parse(argv) {
|
|
462
|
-
const parsed = cli_flags.arguments_of(argv, OPTIONS);
|
|
463
|
-
const args = parsed === void 0 ? void 0 : arguments_of(parsed.values, parsed.positionals[0]);
|
|
464
|
-
if (args === void 0 || !has_label_name(args.labels, RUN_SOLO_LABEL)) return args;
|
|
465
|
-
return issue_run_verdict.run_label_of({ ...args.answers, solo: true }) === RUN_SOLO_LABEL ? args : void 0;
|
|
466
|
-
}
|
|
467
|
-
function is_undeclared_classification(label, body) {
|
|
468
|
-
const is_classification = has_label_name(issue_classification.CLASSIFICATION_LABELS, label);
|
|
469
|
-
return is_classification && !has_label_name(issue_classification.required_labels(body), label);
|
|
470
|
-
}
|
|
471
|
-
function labels_of(args, body, is_auto_ok = false) {
|
|
472
|
-
const extra = args.labels.filter((label) => !is_undeclared_classification(label, body));
|
|
473
|
-
const declared = [...args.route === void 0 ? [] : [args.route], ...extra];
|
|
474
|
-
const labels = issue_priority.with_label(
|
|
475
|
-
issue_not_before_label.with_label(issue_classification.labels_for(body, declared), body),
|
|
476
|
-
body
|
|
477
|
-
);
|
|
478
|
-
if (!is_auto_ok || has_label_name(labels, AUTO_OK_LABEL)) return labels;
|
|
479
|
-
return [...labels, AUTO_OK_LABEL];
|
|
480
|
-
}
|
|
481
|
-
function triage_problem(labels) {
|
|
482
|
-
const is_owed = has_label_name(labels, AUTO_OK_LABEL) && !epic_triage.has_triage_label(labels);
|
|
483
|
-
if (!is_owed) return void 0;
|
|
484
|
-
return `an \`${AUTO_OK_LABEL}\` filing needs \`--label ${RUN_LANE_LABEL}\` or \`--label ${RUN_SOLO_LABEL}\` \u2014 \`${RUN_SOLO_LABEL}\` only for a defect in kit's own verification that makes unrelated PRs answer wrongly on main on every run (\`backlogrun-lanes.md\`), else \`${RUN_LANE_LABEL}\` \u2014 a flaky one takes \`${RUN_LANE_LABEL}\` and \`priority:critical\``;
|
|
485
|
-
}
|
|
486
|
-
function is_same_repository(target, current) {
|
|
487
|
-
return target.toLowerCase() === current.toLowerCase();
|
|
488
|
-
}
|
|
489
|
-
function without_trailing_prose(text) {
|
|
490
|
-
let end = text.length;
|
|
491
|
-
while (end > 0 && !DIGIT.test(text.charAt(end - 1))) end -= 1;
|
|
492
|
-
return text.slice(0, end);
|
|
493
|
-
}
|
|
494
|
-
function is_qualified_reference2(word) {
|
|
495
|
-
const bare = without_trailing_prose(word.replaceAll(CODE_SPAN2, "").replace(LEADING_NON_WORD, ""));
|
|
496
|
-
return epic_issue.parse_epic_reference(bare)?.repo !== void 0 || github_issue_url.parse(bare) !== void 0;
|
|
497
|
-
}
|
|
498
|
-
function cites_origin(line) {
|
|
499
|
-
return line.split(WORD_SEPARATOR).some((word) => is_qualified_reference2(word));
|
|
500
|
-
}
|
|
501
|
-
function origin_problem(body, target, current) {
|
|
502
|
-
if (is_same_repository(target, current)) return void 0;
|
|
503
|
-
const lines = markdown_section.section_lines(body, issue_backlinks.ORIGIN_HEADING);
|
|
504
|
-
if (lines.some((line) => cites_origin(line))) return void 0;
|
|
505
|
-
return `filing into ${target} from ${current} needs a \`${issue_backlinks.ORIGIN_HEADING}\` section citing the originating Issue as \`owner/repo#N\` or its URL`;
|
|
506
|
-
}
|
|
507
|
-
function unacknowledged(candidates, distinct) {
|
|
508
|
-
return candidates.filter((candidate) => !distinct.includes(candidate));
|
|
509
|
-
}
|
|
510
|
-
function acknowledged(args, target, current) {
|
|
511
|
-
if (args.found_during === void 0 || !is_same_repository(target, current)) return args.distinct;
|
|
512
|
-
return [...args.distinct, Number(args.found_during)];
|
|
513
|
-
}
|
|
514
|
-
var issue_file = {
|
|
515
|
-
parse,
|
|
516
|
-
labels_of,
|
|
517
|
-
origin_problem,
|
|
518
|
-
triage_problem,
|
|
519
|
-
unacknowledged,
|
|
520
|
-
acknowledged,
|
|
521
|
-
is_same_repository
|
|
522
|
-
};
|
|
523
|
-
|
|
524
|
-
// scripts/issue/issue-file-fold.ts
|
|
525
|
-
var REFERENCE_NUMBER = /#(?<number>\d+)$/u;
|
|
526
|
-
var CLOSED_STATE = "CLOSED";
|
|
527
|
-
function number_of(reference) {
|
|
528
|
-
return Number(REFERENCE_NUMBER.exec(reference)?.groups?.["number"]);
|
|
529
|
-
}
|
|
530
|
-
function reference_prefix(target, current) {
|
|
531
|
-
return issue_file.is_same_repository(target, current) ? "" : target;
|
|
532
|
-
}
|
|
533
|
-
function prefix_of(reference) {
|
|
534
|
-
return reference.slice(0, reference.lastIndexOf("#"));
|
|
535
|
-
}
|
|
536
|
-
async function branch_issue() {
|
|
537
|
-
try {
|
|
538
|
-
return git_branch.issue_from_branch(await git_command.branch());
|
|
539
|
-
} catch {
|
|
540
|
-
return void 0;
|
|
541
|
-
}
|
|
542
|
-
}
|
|
543
|
-
async function finder(named) {
|
|
544
|
-
if (named !== void 0) return named;
|
|
545
|
-
const marked = lane_child_marker.marked_issue();
|
|
546
|
-
if (marked !== void 0) return marked;
|
|
547
|
-
const issue = await branch_issue();
|
|
548
|
-
return issue === void 0 ? void 0 : String(issue);
|
|
549
|
-
}
|
|
550
|
-
async function events_of(found_during) {
|
|
551
|
-
if (found_during === void 0) return await run_event_stream_emit.current_events();
|
|
552
|
-
return await run_event_stream_emit.all_events();
|
|
553
|
-
}
|
|
554
|
-
function finder_filings(events, found_during) {
|
|
555
|
-
return events.filter((event) => event.kind === run_event_stream.EVENT_KIND.FILED).flatMap((event) => run_event_filed.parse(event.text) ?? []).filter((filed) => filed.found_during === found_during);
|
|
556
|
-
}
|
|
557
|
-
function prior_filings(events, found_during, prefix, distinct) {
|
|
558
|
-
return finder_filings(events, found_during).filter((filed) => prefix_of(filed.reference) === prefix).filter((filed) => !distinct.includes(number_of(filed.reference)));
|
|
559
|
-
}
|
|
560
|
-
async function is_open(filed, prefix) {
|
|
561
|
-
const repo = prefix === "" ? void 0 : prefix;
|
|
562
|
-
const read = await issue_state_cli.read_issue(String(number_of(filed.reference)), repo);
|
|
563
|
-
return read.kind !== "state" || read.state.state !== CLOSED_STATE;
|
|
564
|
-
}
|
|
565
|
-
async function open_filings(priors, prefix) {
|
|
566
|
-
const verdicts = await Promise.all(priors.map(async (filed) => await is_open(filed, prefix)));
|
|
567
|
-
return priors.filter((_filed, index) => verdicts[index]);
|
|
568
|
-
}
|
|
569
|
-
function references_of(priors) {
|
|
570
|
-
return priors.map((filed) => filed.reference).join(", ");
|
|
571
|
-
}
|
|
572
|
-
function line_of(verdict, priors) {
|
|
573
|
-
return `fold: ${issue_fold_cli.REASONS[verdict]} \xB7 filed earlier by this finder: ${references_of(priors)}`;
|
|
574
|
-
}
|
|
575
|
-
function held_message(priors) {
|
|
576
|
-
const listed = priors.map((filed) => String(number_of(filed.reference))).join(",");
|
|
577
|
-
return `\u2716 fold: add this finding to ${references_of(priors)} (its body or a comment) rather than filing it; a finding that is really a separate deliverable reissues with \`--distinct ${listed}\` (\`split-assessment.md\` \u2192 "The question").`;
|
|
578
|
-
}
|
|
579
|
-
async function is_fold_clear(prefix, args) {
|
|
580
|
-
if (args.route === SPLIT_ROUTE_LABEL) return true;
|
|
581
|
-
const found_during = await finder(args.found_during);
|
|
582
|
-
const filings = prior_filings(await events_of(found_during), found_during, prefix, args.distinct);
|
|
583
|
-
const priors = await open_filings(filings, prefix);
|
|
584
|
-
if (priors.length === 0) return true;
|
|
585
|
-
const size = await issue_fold_cli.size_verdict();
|
|
586
|
-
const verdict = issue_fold.fold_verdict(priors.length + 1, true, size);
|
|
587
|
-
console.info(line_of(verdict, priors));
|
|
588
|
-
if (verdict === issue_fold.FOLD) console.error(held_message(priors));
|
|
589
|
-
return verdict !== issue_fold.FOLD;
|
|
590
|
-
}
|
|
591
|
-
var issue_file_fold = {
|
|
592
|
-
events_of,
|
|
593
|
-
finder,
|
|
594
|
-
finder_filings,
|
|
595
|
-
is_fold_clear,
|
|
596
|
-
prior_filings,
|
|
597
|
-
reference_prefix
|
|
598
|
-
};
|
|
599
|
-
|
|
600
|
-
// scripts/issue/issue-file-cap.ts
|
|
601
|
-
var FILING_CAP = 10;
|
|
602
|
-
async function prior_count(origin) {
|
|
603
|
-
const events = await issue_file_fold.events_of(origin);
|
|
604
|
-
return issue_file_fold.finder_filings(events, origin).filter((filed) => filed.is_run === true).length;
|
|
605
|
-
}
|
|
606
|
-
function owner_of(origin) {
|
|
607
|
-
return origin === void 0 ? "this run (no originating Issue)" : session_cite.issue(origin);
|
|
608
|
-
}
|
|
609
|
-
function reason_of(origin) {
|
|
610
|
-
return `\u2716 filing cap: ${owner_of(origin)} has already filed ${String(FILING_CAP)} Issues, the ceiling per originating work item. Stop filing and report; a further Issue is a person's to file from their own session (\`.claude/skills/workflow-commands/prerequisite.md\`).`;
|
|
611
|
-
}
|
|
612
|
-
async function is_cap_clear(named) {
|
|
613
|
-
if (!await run_hold_member.is_run_member()) return true;
|
|
614
|
-
const origin = await issue_file_fold.finder(named);
|
|
615
|
-
if (await prior_count(origin) < FILING_CAP) return true;
|
|
616
|
-
console.error(reason_of(origin));
|
|
617
|
-
return false;
|
|
618
|
-
}
|
|
619
|
-
var issue_file_cap = { FILING_CAP, is_cap_clear, reason_of };
|
|
620
|
-
|
|
621
|
-
// scripts/issue/issue-file-deferral.ts
|
|
622
|
-
var NOTE_PREFIX = "\u5148\u9001\u308A:";
|
|
623
|
-
function note_of(deferral) {
|
|
624
|
-
return `${NOTE_PREFIX} ${deferral.reference} ${deferral.title}`;
|
|
625
|
-
}
|
|
626
|
-
function failure_line(finder2, note) {
|
|
627
|
-
const rerun = `pnpm josh issue:comment ${String(finder2)} --body ${shell_quote.single_quoted(note)}`;
|
|
628
|
-
return `\u26A0 the deferral note did not reach ${session_cite.issue(finder2)} \u2014 run \`${rerun}\`.`;
|
|
629
|
-
}
|
|
630
|
-
async function note_finder(deferral) {
|
|
631
|
-
const finder2 = Number(deferral.found_during);
|
|
632
|
-
if (!Number.isSafeInteger(finder2) || finder2 <= 0) return;
|
|
633
|
-
const note = note_of(deferral);
|
|
634
|
-
const is_noted = await git_gh_issue_write.issue_try_comment(
|
|
635
|
-
String(finder2),
|
|
636
|
-
note,
|
|
637
|
-
deferral.current
|
|
638
|
-
);
|
|
639
|
-
if (!is_noted) console.error(failure_line(finder2, note));
|
|
640
|
-
}
|
|
641
|
-
var issue_file_deferral = { NOTE_PREFIX, note_finder };
|
|
642
|
-
|
|
643
|
-
// scripts/issue/issue-file-interrupt.ts
|
|
644
|
-
var DECISION_PREFIX = "\u6C7A\u5B9A:";
|
|
645
|
-
var CONVERTED_NOTE = "\u306E\u7740\u5730\u5F85\u3061\uFF08\u4F9D\u5B58\u306B\u5909\u63DB\uFF09";
|
|
646
|
-
function is_issue_number(value) {
|
|
647
|
-
return Number.isSafeInteger(value) && value > 0;
|
|
648
|
-
}
|
|
649
|
-
function finder_of(filing) {
|
|
650
|
-
if (filing.route !== INTERRUPT_ROUTE_LABEL || !filing.is_here) return void 0;
|
|
651
|
-
const finder2 = Number(filing.found_during);
|
|
652
|
-
return is_issue_number(finder2) ? finder2 : void 0;
|
|
653
|
-
}
|
|
654
|
-
function ignored_line(filing) {
|
|
655
|
-
const reason = filing.route === INTERRUPT_ROUTE_LABEL ? "no finder and filed Issue pair in this repository was read" : "it applies to `--route interrupt` only";
|
|
656
|
-
return `\u26A0 --blocks-finder recorded nothing: ${reason}.`;
|
|
657
|
-
}
|
|
658
|
-
function failure_line2(blocked, blocker) {
|
|
659
|
-
const path = git_gh_api_path.blocked_by_api_path(String(blocked));
|
|
660
|
-
const id = `$(gh api ${git_gh_api_path.issue_api_path(String(blocker))} --jq .id)`;
|
|
661
|
-
const cited = `${session_cite.issue(blocked)} could not be recorded as blocked by ${session_cite.issue(blocker)}`;
|
|
662
|
-
return `\u26A0 ${cited} \u2014 run \`gh api ${path} -F issue_id=${id}\`.`;
|
|
663
|
-
}
|
|
664
|
-
async function record(pair) {
|
|
665
|
-
const links = [pair];
|
|
666
|
-
const failures = await epic_relations.apply_relations(links, "record");
|
|
667
|
-
if (failures === 0) {
|
|
668
|
-
console.info(epic_relations.format_relation_report({ links, failures, action: "record" }));
|
|
669
|
-
return true;
|
|
670
|
-
}
|
|
671
|
-
console.error(failure_line2(pair.blocked, pair.blocker));
|
|
672
|
-
return false;
|
|
673
|
-
}
|
|
674
|
-
function pair_of(filing) {
|
|
675
|
-
const blocked = finder_of(filing);
|
|
676
|
-
return blocked !== void 0 && is_issue_number(filing.blocker) ? { blocked, blocker: filing.blocker } : void 0;
|
|
677
|
-
}
|
|
678
|
-
async function is_parked(pair) {
|
|
679
|
-
if (pair === void 0) return false;
|
|
680
|
-
const names = await git_gh_issue_write.read_label_names(String(pair.blocked));
|
|
681
|
-
return names?.includes(NEEDS_DECISION_LABEL) === true;
|
|
682
|
-
}
|
|
683
|
-
function kept_line(finder2, decision) {
|
|
684
|
-
return `\u26A0 ${session_cite.issue(finder2)} kept ${NEEDS_DECISION_LABEL} \u2014 post "${decision}" if it is missing, then run \`pnpm josh run:park ${finder2} --clear\`.`;
|
|
685
|
-
}
|
|
686
|
-
async function convert_park(pair) {
|
|
687
|
-
const finder2 = String(pair.blocked);
|
|
688
|
-
const decision = `${DECISION_PREFIX} ${issue_cite.plain_for("github", pair.blocker)} ${CONVERTED_NOTE}`;
|
|
689
|
-
const is_cleared = await git_gh_issue_write.issue_try_comment(finder2, decision) && await git_gh_issue_write.issue_clear_label(finder2, NEEDS_DECISION_LABEL);
|
|
690
|
-
if (!is_cleared) console.error(kept_line(finder2, decision));
|
|
691
|
-
}
|
|
692
|
-
async function block_pair(filing, pair, is_converting) {
|
|
693
|
-
if (pair === void 0) {
|
|
694
|
-
console.warn(ignored_line(filing));
|
|
695
|
-
return;
|
|
696
|
-
}
|
|
697
|
-
const is_recorded = await record(pair);
|
|
698
|
-
if (is_converting && is_recorded) await convert_park(pair);
|
|
699
|
-
}
|
|
700
|
-
async function block_finder(filing) {
|
|
701
|
-
const pair = pair_of(filing);
|
|
702
|
-
const is_converting = await is_parked(pair);
|
|
703
|
-
if (!is_converting && !filing.is_blocking_finder) return;
|
|
704
|
-
await block_pair(filing, pair, is_converting);
|
|
705
|
-
}
|
|
706
|
-
var issue_file_interrupt = { block_finder };
|
|
707
|
-
|
|
708
|
-
// scripts/issue/issue-file-lane-hint.ts
|
|
709
|
-
async function lines_of(found_during, body) {
|
|
710
|
-
if (found_during === void 0 || issue_priority.lane_minutes(body) > 0) return [];
|
|
711
|
-
const minutes = await lane_net_read.net_minutes_of(Number(found_during));
|
|
712
|
-
if (minutes === void 0) return [];
|
|
713
|
-
const line = `${issue_priority.LANE_PREFIX} ${String(minutes)} \u5206\uFF08${issue_cite.plain_for("github", found_during)}\uFF09`;
|
|
714
|
-
return [
|
|
715
|
-
`\u21B3 the causing lane from \`josh lane:net ${found_during}\`, to paste under \`${issue_body_keys.heading("background")}\` when it caused this Issue:`,
|
|
716
|
-
line
|
|
717
|
-
];
|
|
718
|
-
}
|
|
719
|
-
var issue_file_lane_hint = {
|
|
720
|
-
lines_of
|
|
721
|
-
};
|
|
722
|
-
|
|
723
|
-
// scripts/issue/issue-file-worker.ts
|
|
724
|
-
var { LABEL_PREFIX } = agent_worker_profile;
|
|
725
|
-
var LABEL_COLOR = "bfd4f2";
|
|
726
|
-
var LABEL_DESCRIPTION = "Lane worker profile (josh.worker)";
|
|
727
|
-
function settings_of(place2) {
|
|
728
|
-
if (!issue_file.is_same_repository(place2.target, place2.current)) return void 0;
|
|
729
|
-
return agent_worker_profile.read(process.cwd());
|
|
730
|
-
}
|
|
731
|
-
function worker_labels(labels) {
|
|
732
|
-
return [...new Set(labels.filter((label) => label.startsWith(LABEL_PREFIX)))];
|
|
733
|
-
}
|
|
734
|
-
function guide_of(settings) {
|
|
735
|
-
const rows = settings.profiles.map(
|
|
736
|
-
(profile) => ` ${LABEL_PREFIX}${profile.name} \u2014 ${profile.when}`
|
|
737
|
-
);
|
|
738
|
-
return [
|
|
739
|
-
`worker profiles (josh.worker, weakest first) \u2014 choose one with --label ${LABEL_PREFIX}<name>; none \u2192 ${settings.default}:`,
|
|
740
|
-
...rows
|
|
741
|
-
].join("\n");
|
|
742
|
-
}
|
|
743
|
-
function is_unchecked_clear(note, labels) {
|
|
744
|
-
if (worker_labels(labels).length === 0) {
|
|
745
|
-
console.warn(`\u26A0 ${note}`);
|
|
746
|
-
return true;
|
|
747
|
-
}
|
|
748
|
-
console.error(`\u2716 ${note}`);
|
|
749
|
-
return false;
|
|
750
|
-
}
|
|
751
|
-
function is_choice_clear(settings, labels) {
|
|
752
|
-
console.info(guide_of(settings));
|
|
753
|
-
const chosen = agent_worker_profile.for_labels(settings, worker_labels(labels));
|
|
754
|
-
if (chosen.kind === "worker") return true;
|
|
755
|
-
console.error(`\u2716 ${chosen.kind === "rejected" ? chosen.note : chosen.kind}`);
|
|
756
|
-
return false;
|
|
757
|
-
}
|
|
758
|
-
function is_worker_clear(place2, labels) {
|
|
759
|
-
const result = settings_of(place2);
|
|
760
|
-
if (result === void 0 || result.kind === "unset") return true;
|
|
761
|
-
if (result.kind === "rejected") return is_unchecked_clear(result.note, labels);
|
|
762
|
-
return is_choice_clear(result.settings, labels);
|
|
763
|
-
}
|
|
764
|
-
function label_definitions(place2, labels) {
|
|
765
|
-
if (settings_of(place2)?.kind !== "settings") return [];
|
|
766
|
-
return worker_labels(labels).map((name) => ({
|
|
767
|
-
name,
|
|
768
|
-
color: LABEL_COLOR,
|
|
769
|
-
description: LABEL_DESCRIPTION
|
|
770
|
-
}));
|
|
771
|
-
}
|
|
772
|
-
var issue_file_worker = { is_worker_clear, label_definitions };
|
|
773
|
-
|
|
774
|
-
// scripts/issue/issue-sample-required.ts
|
|
775
|
-
var AFTER_CITED_CHANGE = [
|
|
776
|
-
/#[1-9]\d*(?:\s*|[^#\n]{0,16}?(?:の|マージ(?:した|直)?))後(?![述始片続])/u,
|
|
777
|
-
/#[1-9]\d*[^#\n]{0,16}?(?:以降|以後)/u
|
|
778
|
-
];
|
|
779
|
-
var RECORD_READERS = ["lane:stats", "actions/runs", "ship --log"];
|
|
780
|
-
var LEDGER_READ = /lane:breakdown(?:[^`\n]*`)?\s*(?:の(?:出力|結果|表))?で(?![きすは])/u;
|
|
781
|
-
var CLOSING_NOTE = /([^()]*)\s*$/u;
|
|
782
|
-
var TEST_VERIFIED = "\u30C6\u30B9\u30C8";
|
|
783
|
-
var CITATION_PATTERN = /#[1-9]\d*/u;
|
|
784
|
-
var BACKGROUND_HEADING = issue_body_keys.heading("background");
|
|
785
|
-
var MISSING = `measurement follow-up without its start condition: declare \`${issue_sample_gate.DECLARATION}\`, or \`${issue_sample_gate.CLOSING_FORMAT}\` before that pull request exists, under ${BACKGROUND_HEADING} \u2014 prompts/collaboration-workflow/measurement.md \u2192 "\u52B9\u679C\u3092\u6E2C\u308B\u5F8C\u7D9A Issue"`;
|
|
786
|
-
var UNDECLARED = `measurement follow-up without a measure declaration: declare \`${measure_declaration.DECLARATION}\` (any \`lane:stats\` cell: \`pnpm josh lane:value cell\`), or \`${measure_declaration.ABSENT}\` when no one command prints the value, under ${BACKGROUND_HEADING} \u2014 prompts/collaboration-workflow/measurement.md \u2192 "\u52B9\u679C\u3092\u6E2C\u308B\u5F8C\u7D9A Issue"
|
|
787
|
-
${measure_declaration.EXAMPLE}`;
|
|
788
|
-
function measures_a_change(criterion) {
|
|
789
|
-
if (AFTER_CITED_CHANGE.some((pattern) => pattern.test(criterion))) return true;
|
|
790
|
-
return CITATION_PATTERN.test(criterion) && RECORD_READERS.some((reader) => criterion.includes(reader));
|
|
791
|
-
}
|
|
792
|
-
function reads_the_ledger(criterion) {
|
|
793
|
-
const note = CLOSING_NOTE.exec(criterion)?.[0] ?? "";
|
|
794
|
-
return LEDGER_READ.test(criterion) && !note.includes(TEST_VERIFIED);
|
|
795
|
-
}
|
|
796
|
-
function is_measurement(body) {
|
|
797
|
-
if (measure_declaration.parse(body) !== void 0) return true;
|
|
798
|
-
const criteria = acceptance_map.criteria_of(body);
|
|
799
|
-
if (criteria.some((criterion) => reads_the_ledger(criterion.text))) return true;
|
|
800
|
-
if (size_estimate.declared_files(body) !== 0) return false;
|
|
801
|
-
return criteria.some((criterion) => measures_a_change(criterion.text));
|
|
802
|
-
}
|
|
803
|
-
function problem(body) {
|
|
804
|
-
if (issue_sample_gate.cited_number(body) !== void 0) {
|
|
805
|
-
return measure_declaration.is_stated(body) ? void 0 : UNDECLARED;
|
|
806
|
-
}
|
|
807
|
-
return is_measurement(body) ? MISSING : void 0;
|
|
808
|
-
}
|
|
809
|
-
var issue_sample_required = { problem };
|
|
810
|
-
|
|
811
|
-
// scripts/issue/issue-sample-source.ts
|
|
812
|
-
async function read_is_pull(number, repo) {
|
|
813
|
-
try {
|
|
814
|
-
const json = await git_gh_exec.exec_gh_api({
|
|
815
|
-
path: git_gh_api_path.issue_api_path(String(number), repo)
|
|
816
|
-
});
|
|
817
|
-
return git_gh_issue_rest.is_pull_request(git_gh_issue_rest.parse_rest_issue(json));
|
|
818
|
-
} catch {
|
|
819
|
-
return void 0;
|
|
820
|
-
}
|
|
821
|
-
}
|
|
822
|
-
async function read_closing_number(issue) {
|
|
823
|
-
return await issue_closing_pr.read_closing_number(issue);
|
|
824
|
-
}
|
|
825
|
-
var DEFAULT_PORTS = { is_pull: read_is_pull, closing_pr: read_closing_number };
|
|
826
|
-
async function hint_of(issue, repo, ports) {
|
|
827
|
-
const closing = repo === void 0 ? await ports.closing_pr(issue) : void 0;
|
|
828
|
-
if (closing === void 0) {
|
|
829
|
-
return `cite the pull request whose merge it waits on, or write \`${issue_sample_gate.CLOSING_FORMAT}\` to wait on the one that closes it`;
|
|
830
|
-
}
|
|
831
|
-
return `cite the pull request that closed it: ${session_cite.issue(closing)}`;
|
|
832
|
-
}
|
|
833
|
-
async function problem2(body, repo, ports = DEFAULT_PORTS) {
|
|
834
|
-
const number = issue_sample_gate.cited_via(body, "pull");
|
|
835
|
-
if (number === void 0 || await ports.is_pull(number, repo) !== false) return void 0;
|
|
836
|
-
const cited = session_cite.issue(number, void 0, repo);
|
|
837
|
-
const hint = await hint_of(number, repo, ports);
|
|
838
|
-
return `\`${issue_body_keys.prefix("sample_gate")}\` cites ${cited}, an issue, not a pull request \u2014 ${hint}`;
|
|
839
|
-
}
|
|
840
|
-
var issue_sample_source = { problem: problem2 };
|
|
841
|
-
|
|
842
|
-
// scripts/issue/issue-wip.ts
|
|
843
|
-
var DEFAULT_WIP_CAP = 30;
|
|
844
|
-
var WIP_CAP_KEY = "JOSH_WIP_CAP";
|
|
845
|
-
var CAP_OFF = "off";
|
|
846
|
-
var WITHIN = "within";
|
|
847
|
-
var EXEMPT = "exempt";
|
|
848
|
-
var HELD = "held";
|
|
849
|
-
var EXEMPT_ROUTES = /* @__PURE__ */ new Set([
|
|
850
|
-
TIER_A_ROUTE_LABEL,
|
|
851
|
-
SPLIT_ROUTE_LABEL,
|
|
852
|
-
INTERRUPT_ROUTE_LABEL
|
|
853
|
-
]);
|
|
854
|
-
var HELD_MESSAGE = "\u2716 over the WIP cap: close one first; nothing honestly closable means do not file \u2014 a discretionary filing waits. An interrupt meeting one of three tests (a verification answers wrongly, a documented workflow cannot complete, or data is lost or written outside the repository) files with `--route interrupt`; a filing the run is blocked by reissues with `--over-cap`. Either way, state the overage (`prompts/collaboration-workflow/wip-cap.md`).";
|
|
855
|
-
var UNREAD_MESSAGE = "\u26A0 wip: could not count the open Issues \u2014 the filing goes on unchecked against the cap (`prompts/collaboration-workflow/wip-cap.md`).";
|
|
856
|
-
function read_cap(environment = process.env) {
|
|
857
|
-
const raw = environment[WIP_CAP_KEY];
|
|
858
|
-
if (raw?.trim().toLowerCase() === CAP_OFF) return { kind: "cap", cap: CAP_OFF };
|
|
859
|
-
const setting = cli_flags.read_positive_setting(raw, WIP_CAP_KEY, DEFAULT_WIP_CAP);
|
|
860
|
-
if (setting.kind === "problem") {
|
|
861
|
-
return { kind: "problem", problem: `${setting.problem} (or "${CAP_OFF}" to turn the cap off)` };
|
|
862
|
-
}
|
|
863
|
-
return { kind: "cap", cap: setting.limit };
|
|
864
|
-
}
|
|
865
|
-
function is_exempt(filing) {
|
|
866
|
-
return filing.is_over_cap || filing.route !== void 0 && EXEMPT_ROUTES.has(filing.route);
|
|
867
|
-
}
|
|
868
|
-
function verdict_of(count, filing, cap) {
|
|
869
|
-
if (cap === CAP_OFF || count <= cap) return WITHIN;
|
|
870
|
-
return is_exempt(filing) ? EXEMPT : HELD;
|
|
871
|
-
}
|
|
872
|
-
function count_line(count, repo, verdict, cap) {
|
|
873
|
-
return `wip: ${String(count)} open in ${repo} \xB7 cap ${String(cap)} \xB7 ${verdict}`;
|
|
874
|
-
}
|
|
875
|
-
function count_of(json) {
|
|
876
|
-
return json_value.parse_array(json)?.length;
|
|
877
|
-
}
|
|
878
|
-
var issue_wip = {
|
|
879
|
-
DEFAULT_WIP_CAP,
|
|
880
|
-
WIP_CAP_KEY,
|
|
881
|
-
CAP_OFF,
|
|
882
|
-
HELD,
|
|
883
|
-
HELD_MESSAGE,
|
|
884
|
-
UNREAD_MESSAGE,
|
|
885
|
-
read_cap,
|
|
886
|
-
verdict_of,
|
|
887
|
-
count_line,
|
|
888
|
-
count_of
|
|
889
|
-
};
|
|
890
|
-
|
|
891
|
-
// scripts/issue/issue-file-pass.ts
|
|
892
|
-
var GH_REPO_VARIABLE = "GH_REPO";
|
|
893
|
-
function restore_repository(original) {
|
|
894
|
-
if (original === void 0) Reflect.deleteProperty(process.env, GH_REPO_VARIABLE);
|
|
895
|
-
else process.env[GH_REPO_VARIABLE] = original;
|
|
896
|
-
}
|
|
897
|
-
async function with_repository_restored(action) {
|
|
898
|
-
const original = process.env[GH_REPO_VARIABLE];
|
|
899
|
-
try {
|
|
900
|
-
return await action();
|
|
901
|
-
} finally {
|
|
902
|
-
restore_repository(original);
|
|
903
|
-
}
|
|
904
|
-
}
|
|
905
|
-
function auto_ok_filing(filing) {
|
|
906
|
-
return {
|
|
907
|
-
is_opted_out: filing.args.is_auto_ok_opted_out,
|
|
908
|
-
is_cross_repository: !issue_file.is_same_repository(filing.target, filing.current),
|
|
909
|
-
labels: issue_file.labels_of(filing.args, filing.body),
|
|
910
|
-
body: filing.body
|
|
911
|
-
};
|
|
912
|
-
}
|
|
913
|
-
function refusals_of(filing, rate, growth) {
|
|
914
|
-
const problems = [
|
|
915
|
-
...issue_lint_cli.problems(filing.body, issue_file.labels_of(filing.args, filing.body)),
|
|
916
|
-
size_estimate.guide_problem(filing.body, filing.args.route, rate, growth),
|
|
917
|
-
issue_sample_required.problem(filing.body),
|
|
918
|
-
issue_auto_ok.declaration_problem(filing.body),
|
|
919
|
-
issue_auto_ok.opt_out_problem(auto_ok_filing(filing)),
|
|
920
|
-
issue_priority.problem(filing.body, filing.args.labels),
|
|
921
|
-
issue_file.origin_problem(filing.body, filing.target, filing.current)
|
|
922
|
-
];
|
|
923
|
-
return problems.filter((problem3) => problem3 !== void 0).map((problem3) => `\u2716 ${problem3}`);
|
|
924
|
-
}
|
|
925
|
-
function unacknowledged_message(open, declared) {
|
|
926
|
-
const listed = open.map(String).join(",");
|
|
927
|
-
const pasted = [.../* @__PURE__ */ new Set([...declared, ...open])].map(String).join(",");
|
|
928
|
-
return `\u2716 duplicate candidate(s) ${listed} not declared separate \u2014 read each (\`issue-fold-existing.md\`); fold into a duplicate, or reissue with \`--distinct ${pasted}\` when each is a separate deliverable.`;
|
|
929
|
-
}
|
|
930
|
-
async function open_count(target) {
|
|
931
|
-
const outcome = await git_gh_issue_list.issue_list({
|
|
932
|
-
json_fields: "number",
|
|
933
|
-
limit: MAX_SCANNED,
|
|
934
|
-
repo: target
|
|
935
|
-
});
|
|
936
|
-
return outcome.json === void 0 ? void 0 : issue_wip.count_of(outcome.json);
|
|
937
|
-
}
|
|
938
|
-
async function is_count_clear(filing, cap) {
|
|
939
|
-
const count = await open_count(filing.target);
|
|
940
|
-
if (count === void 0) {
|
|
941
|
-
console.error(issue_wip.UNREAD_MESSAGE);
|
|
942
|
-
return true;
|
|
943
|
-
}
|
|
944
|
-
const verdict = issue_wip.verdict_of(count, filing.args, cap);
|
|
945
|
-
console.info(issue_wip.count_line(count, filing.target, verdict, cap));
|
|
946
|
-
if (verdict === issue_wip.HELD) console.error(issue_wip.HELD_MESSAGE);
|
|
947
|
-
return verdict !== issue_wip.HELD;
|
|
948
|
-
}
|
|
949
|
-
async function is_wip_clear(filing) {
|
|
950
|
-
const setting = issue_wip.read_cap();
|
|
951
|
-
if (setting.kind === "problem") {
|
|
952
|
-
console.error(`\u2716 ${setting.problem}`);
|
|
953
|
-
return false;
|
|
954
|
-
}
|
|
955
|
-
return await is_count_clear(filing, setting.cap);
|
|
956
|
-
}
|
|
957
|
-
function point_listings_at(filing) {
|
|
958
|
-
if (issue_file.is_same_repository(filing.target, filing.current)) return;
|
|
959
|
-
process.env[GH_REPO_VARIABLE] = filing.target;
|
|
960
|
-
}
|
|
961
|
-
async function scout_filing(filing) {
|
|
962
|
-
point_listings_at(filing);
|
|
963
|
-
return await issue_scout_cli.scout({ title: filing.args.title, body: filing.body }, filing.target);
|
|
964
|
-
}
|
|
965
|
-
function is_measure_clear(outcome) {
|
|
966
|
-
const problem3 = measure_twin.problem(outcome.measure_twins ?? []);
|
|
967
|
-
if (problem3 === void 0) return true;
|
|
968
|
-
console.error(`\u2716 ${problem3}`);
|
|
969
|
-
return false;
|
|
970
|
-
}
|
|
971
|
-
function is_candidate_clear(filing, outcome) {
|
|
972
|
-
const answered = issue_file.acknowledged(filing.args, filing.target, filing.current);
|
|
973
|
-
const open = issue_file.unacknowledged(outcome.candidates, answered);
|
|
974
|
-
if (open.length > 0) console.error(unacknowledged_message(open, filing.args.distinct));
|
|
975
|
-
return open.length === 0;
|
|
976
|
-
}
|
|
977
|
-
async function is_scout_clear(filing) {
|
|
978
|
-
const outcome = filing.scouted ?? await scout_filing(filing);
|
|
979
|
-
if (outcome === void 0) return false;
|
|
980
|
-
if (filing.scouted === void 0) console.info(outcome.report);
|
|
981
|
-
point_listings_at(filing);
|
|
982
|
-
const verdicts = [is_candidate_clear(filing, outcome), is_measure_clear(outcome)];
|
|
983
|
-
return verdicts.every(Boolean);
|
|
984
|
-
}
|
|
985
|
-
function labels_of2(filing) {
|
|
986
|
-
const auto_ok = issue_auto_ok.decide(auto_ok_filing(filing));
|
|
987
|
-
console.info(issue_auto_ok.line_of(auto_ok));
|
|
988
|
-
const labels = issue_file.labels_of(filing.args, filing.body, auto_ok.is_applied);
|
|
989
|
-
const problem3 = issue_file.triage_problem(labels);
|
|
990
|
-
if (problem3 === void 0) return labels;
|
|
991
|
-
console.error(`\u2716 ${problem3}`);
|
|
992
|
-
return void 0;
|
|
993
|
-
}
|
|
994
|
-
async function cap_refusals(filing) {
|
|
995
|
-
if (!issue_file.is_same_repository(filing.target, filing.current)) return [];
|
|
996
|
-
const problem3 = issue_cap_files.problem(
|
|
997
|
-
await issue_cap_files.near_cap(filing.body, process.cwd())
|
|
998
|
-
);
|
|
999
|
-
return problem3 === void 0 ? [] : [`\u2716 ${problem3}`];
|
|
1000
|
-
}
|
|
1001
|
-
async function is_admitted(filing) {
|
|
1002
|
-
const { implement_rate, growth } = await lane_net_read.measurements();
|
|
1003
|
-
const capped = await cap_refusals(filing);
|
|
1004
|
-
const refusals = [...refusals_of(filing, implement_rate, growth), ...capped];
|
|
1005
|
-
issue_lint_cli.warn(filing.body);
|
|
1006
|
-
if (refusals.length === 0) return true;
|
|
1007
|
-
const hint = await issue_file_lane_hint.lines_of(filing.args.found_during, filing.body);
|
|
1008
|
-
console.error([...refusals, ...hint].join("\n"));
|
|
1009
|
-
return false;
|
|
1010
|
-
}
|
|
1011
|
-
async function is_source_clear(filing) {
|
|
1012
|
-
const is_here = issue_file.is_same_repository(filing.target, filing.current);
|
|
1013
|
-
const problem3 = await issue_sample_source.problem(
|
|
1014
|
-
filing.body,
|
|
1015
|
-
is_here ? void 0 : filing.target
|
|
1016
|
-
);
|
|
1017
|
-
if (problem3 === void 0) return true;
|
|
1018
|
-
console.error(`\u2716 ${problem3}`);
|
|
1019
|
-
return false;
|
|
1020
|
-
}
|
|
1021
|
-
async function labels_in_one_pass(filing) {
|
|
1022
|
-
const is_body_clear = await is_admitted(filing);
|
|
1023
|
-
const labels = labels_of2(filing);
|
|
1024
|
-
const verdicts = [
|
|
1025
|
-
is_body_clear,
|
|
1026
|
-
labels !== void 0,
|
|
1027
|
-
issue_file_worker.is_worker_clear(filing, labels ?? filing.args.labels),
|
|
1028
|
-
await is_source_clear(filing),
|
|
1029
|
-
await is_wip_clear(filing),
|
|
1030
|
-
await is_scout_clear(filing)
|
|
1031
|
-
];
|
|
1032
|
-
return verdicts.every(Boolean) ? labels : void 0;
|
|
1033
|
-
}
|
|
1034
|
-
var issue_file_pass = {
|
|
1035
|
-
GH_REPO_VARIABLE,
|
|
1036
|
-
labels_in_one_pass,
|
|
1037
|
-
scout_filing,
|
|
1038
|
-
with_repository_restored
|
|
1039
|
-
};
|
|
1040
|
-
|
|
1041
|
-
// scripts/issue/issue-file-cli.ts
|
|
1042
|
-
var SUCCESS_EXIT_CODE = 0;
|
|
1043
|
-
var FAILURE_EXIT_CODE = 1;
|
|
1044
|
-
var USAGE = 'Usage: josh issue:file "<title>" --body-file <path> [--route <tier-a|split|interrupt|review-cap>] [--label <name>]\u2026 [--defect yes|no|unknown] [--verification yes|no|unknown] [--every-run yes|no|unknown] [--repo <owner/repo>] [--distinct <N,\u2026>] [--found-during <N>] [--over-cap] [--no-auto-ok] [--release] [--blocks-finder] [--check]';
|
|
1045
|
-
var CHECK_CLEAR_MESSAGE = "check: every filing step passed \u2014 nothing filed (`--check`).";
|
|
1046
|
-
var UNKNOWN_REPO_MESSAGE = "Could not read this repository from `git remote`, so the filing has no repository to compare against \u2014 check `gh auth status`.";
|
|
1047
|
-
var THIRD_PARTY_MESSAGE = '\u2716 third-party target: a tracker we do not own is Tier C \u2014 draft the Issue for a person to post instead (`CLAUDE.md` \u2192 "Third-party repositories are Tier C").';
|
|
1048
|
-
var UNKNOWN_PARTY_MESSAGE = "\u2716 unknown party: the owner of this session or of the target could not be read (`git remote` / `--repo`), so the target is not known to be ours \u2014 check `pnpm josh repo:party`.";
|
|
1049
|
-
var { GH_REPO_VARIABLE: GH_REPO_VARIABLE2 } = issue_file_pass;
|
|
1050
|
-
function party_refusal(target) {
|
|
1051
|
-
const party = repo_party.classify(repo_party.current_owner(), repo_party.target_owner(target));
|
|
1052
|
-
if (party === repo_party.FIRST_PARTY) return void 0;
|
|
1053
|
-
return party === repo_party.THIRD_PARTY ? THIRD_PARTY_MESSAGE : UNKNOWN_PARTY_MESSAGE;
|
|
1054
|
-
}
|
|
1055
|
-
async function create(filing, labels) {
|
|
1056
|
-
repository_labels.ensure_labels(
|
|
1057
|
-
filing.target,
|
|
1058
|
-
issue_file_worker.label_definitions(filing, labels)
|
|
1059
|
-
);
|
|
1060
|
-
const request = git_gh_issue_write.issue_create_request({
|
|
1061
|
-
title: filing.args.title,
|
|
1062
|
-
...issue_publication_state.creation(
|
|
1063
|
-
filing.body,
|
|
1064
|
-
labels,
|
|
1065
|
-
filing.args.is_prepared === true || has_label_name(labels, "route:split")
|
|
1066
|
-
),
|
|
1067
|
-
repo: filing.target
|
|
1068
|
-
});
|
|
1069
|
-
try {
|
|
1070
|
-
return await git_gh_exec.exec_gh_api(request);
|
|
1071
|
-
} catch (error) {
|
|
1072
|
-
const reason = error_text.message_of(error);
|
|
1073
|
-
console.error(`\u2716 the create call failed: ${reason}`);
|
|
1074
|
-
return void 0;
|
|
1075
|
-
}
|
|
1076
|
-
}
|
|
1077
|
-
function issue_number_of(url) {
|
|
1078
|
-
return Number(github_issue_url.parse(url)?.issue_number);
|
|
1079
|
-
}
|
|
1080
|
-
async function link_release(url, filing) {
|
|
1081
|
-
if (!filing.args.is_release) return;
|
|
1082
|
-
const issue_number = issue_number_of(url);
|
|
1083
|
-
const is_linked = Number.isSafeInteger(issue_number) && await issue_release_cli.link(issue_number, filing.target);
|
|
1084
|
-
if (is_linked) return;
|
|
1085
|
-
console.error(
|
|
1086
|
-
`\u26A0 the release link did not complete for ${url} \u2014 run \`${GH_REPO_VARIABLE2}=${filing.target} pnpm josh issue:release <N>\`.`
|
|
1087
|
-
);
|
|
1088
|
-
}
|
|
1089
|
-
async function place(url, target) {
|
|
1090
|
-
const issue_number = issue_number_of(url);
|
|
1091
|
-
const exit_code = Number.isSafeInteger(issue_number) ? await epic_bundle_cli.report_for(issue_number, target) : FAILURE_EXIT_CODE;
|
|
1092
|
-
if (exit_code !== SUCCESS_EXIT_CODE) {
|
|
1093
|
-
console.error(`\u26A0 epic:bundle did not answer for ${url} \u2014 run \`pnpm josh epic:bundle <N>\`.`);
|
|
1094
|
-
}
|
|
1095
|
-
}
|
|
1096
|
-
async function emit_filed(reference, filing, labels, found_during) {
|
|
1097
|
-
const kind = run_event_filed.kind_of(labels);
|
|
1098
|
-
const is_run = await run_hold_member.is_run_member();
|
|
1099
|
-
const is_overrun = lane_child_marker.is_overrun();
|
|
1100
|
-
const { title } = filing.args;
|
|
1101
|
-
const text = run_event_filed.text_of({ reference, kind, title, found_during, is_run, is_overrun });
|
|
1102
|
-
await run_event_stream_emit.emit(run_event_stream.EVENT_KIND.FILED, text);
|
|
1103
|
-
}
|
|
1104
|
-
async function record_park(issue, prerequisite) {
|
|
1105
|
-
try {
|
|
1106
|
-
const read = await issue_state_cli.read_issue(issue);
|
|
1107
|
-
if (read.kind !== "state") throw new Error(`could not read park state: ${read.kind}`);
|
|
1108
|
-
if (read.state.state !== "OPEN" || !has_parked_label(read.state.labels)) return;
|
|
1109
|
-
const result = await epic_blocked_by.record({ issue, prerequisite, is_relation_only: true });
|
|
1110
|
-
console.info(
|
|
1111
|
-
`caused park ${session_cite.issue(issue)} blocked by ${session_cite.issue(prerequisite)}: ${result}`
|
|
1112
|
-
);
|
|
1113
|
-
} catch (error) {
|
|
1114
|
-
console.error(
|
|
1115
|
-
`\u26A0 ${session_cite.issue(prerequisite)} is already filed; caused park ${session_cite.issue(issue)} dependency could not be recorded: ${error_text.message_of(error)}`
|
|
1116
|
-
);
|
|
1117
|
-
}
|
|
1118
|
-
}
|
|
1119
|
-
async function record_parks(url, filing) {
|
|
1120
|
-
if (!issue_file.is_same_repository(filing.target, filing.current)) return;
|
|
1121
|
-
const blocker = issue_number_of(url);
|
|
1122
|
-
if (!Number.isSafeInteger(blocker) || blocker <= 0) return;
|
|
1123
|
-
for (const issue of issue_priority.parked_issues(filing.body)) {
|
|
1124
|
-
await record_park(issue, String(blocker));
|
|
1125
|
-
}
|
|
1126
|
-
}
|
|
1127
|
-
async function record2(url, filing, labels) {
|
|
1128
|
-
const number = String(issue_number_of(url));
|
|
1129
|
-
const reference = issue_cite.plain_for(
|
|
1130
|
-
"terminal",
|
|
1131
|
-
number,
|
|
1132
|
-
issue_file_fold.reference_prefix(filing.target, filing.current)
|
|
1133
|
-
);
|
|
1134
|
-
const found_during = await issue_file_fold.finder(filing.args.found_during);
|
|
1135
|
-
await emit_filed(reference, filing, labels, found_during);
|
|
1136
|
-
await issue_file_deferral.note_finder({
|
|
1137
|
-
found_during: filing.args.found_during,
|
|
1138
|
-
reference,
|
|
1139
|
-
title: filing.args.title,
|
|
1140
|
-
current: filing.current
|
|
1141
|
-
});
|
|
1142
|
-
await split_resolution.record_child({ route: filing.args.route, found_during, child: url });
|
|
1143
|
-
await issue_file_interrupt.block_finder({
|
|
1144
|
-
route: filing.args.route,
|
|
1145
|
-
is_blocking_finder: filing.args.is_blocking_finder,
|
|
1146
|
-
found_during,
|
|
1147
|
-
blocker: issue_number_of(url),
|
|
1148
|
-
is_here: issue_file.is_same_repository(filing.target, filing.current)
|
|
1149
|
-
});
|
|
1150
|
-
await record_parks(url, filing);
|
|
1151
|
-
}
|
|
1152
|
-
async function record_solo(url, filing, labels) {
|
|
1153
|
-
if (!has_label_name(labels, RUN_SOLO_LABEL)) return;
|
|
1154
|
-
const { answers = {} } = filing.args;
|
|
1155
|
-
const body = issue_run_verdict.comment_with_answers(RUN_SOLO_LABEL, { ...answers, solo: true });
|
|
1156
|
-
try {
|
|
1157
|
-
await git_gh_command.issue_comment(String(issue_number_of(url)), body, filing.target);
|
|
1158
|
-
} catch (error) {
|
|
1159
|
-
console.error(
|
|
1160
|
-
`\u26A0 ${url} is already filed; could not record solo answers: ${error_text.message_of(error)}`
|
|
1161
|
-
);
|
|
1162
|
-
}
|
|
1163
|
-
}
|
|
1164
|
-
async function send(filing, labels) {
|
|
1165
|
-
const url = await create(filing, labels);
|
|
1166
|
-
if (url === void 0) return void 0;
|
|
1167
|
-
console.info(url);
|
|
1168
|
-
await record_solo(url, filing, labels);
|
|
1169
|
-
await record2(url, filing, labels);
|
|
1170
|
-
await link_release(url, filing);
|
|
1171
|
-
await place(url, filing.target);
|
|
1172
|
-
return url;
|
|
1173
|
-
}
|
|
1174
|
-
async function is_run_clear(filing) {
|
|
1175
|
-
const prefix = issue_file_fold.reference_prefix(filing.target, filing.current);
|
|
1176
|
-
return split_resolution.is_split_clear(filing.args) && await issue_file_cap.is_cap_clear(filing.args.found_during) && await issue_file_fold.is_fold_clear(prefix, filing.args) && await split_direction.is_direction_clear(filing.args, filing.body);
|
|
1177
|
-
}
|
|
1178
|
-
async function admitted_labels(filing) {
|
|
1179
|
-
const party_problem = party_refusal(filing.target);
|
|
1180
|
-
if (party_problem !== void 0) {
|
|
1181
|
-
console.error(party_problem);
|
|
1182
|
-
return void 0;
|
|
1183
|
-
}
|
|
1184
|
-
if (!await is_run_clear(filing)) return void 0;
|
|
1185
|
-
return await issue_file_pass.labels_in_one_pass(filing);
|
|
1186
|
-
}
|
|
1187
|
-
async function file(filing) {
|
|
1188
|
-
const labels = await admitted_labels(filing);
|
|
1189
|
-
if (labels === void 0 || filing.args.is_check) return void 0;
|
|
1190
|
-
return await send(filing, labels);
|
|
1191
|
-
}
|
|
1192
|
-
async function check(filing) {
|
|
1193
|
-
if (await admitted_labels(filing) === void 0) return FAILURE_EXIT_CODE;
|
|
1194
|
-
console.info(CHECK_CLEAR_MESSAGE);
|
|
1195
|
-
return SUCCESS_EXIT_CODE;
|
|
1196
|
-
}
|
|
1197
|
-
async function filing_of(args) {
|
|
1198
|
-
const read = cli_body.read_result(args.body_file);
|
|
1199
|
-
if ("problem" in read) return `Could not read the body file ${args.body_file}: ${read.problem}`;
|
|
1200
|
-
const body = issue_classification.with_release_classification(
|
|
1201
|
-
read.text,
|
|
1202
|
-
issue_file.labels_of(args, read.text)
|
|
1203
|
-
);
|
|
1204
|
-
const current = await git_gh_command.repo_get_name_with_owner();
|
|
1205
|
-
if (current === void 0) return UNKNOWN_REPO_MESSAGE;
|
|
1206
|
-
return { args, body, target: args.repo ?? current, current };
|
|
1207
|
-
}
|
|
1208
|
-
async function parsed_filing(argv) {
|
|
1209
|
-
const args = issue_file.parse(argv);
|
|
1210
|
-
if (args === void 0) {
|
|
1211
|
-
console.error(USAGE);
|
|
1212
|
-
return void 0;
|
|
1213
|
-
}
|
|
1214
|
-
const filing = await filing_of(args);
|
|
1215
|
-
if (typeof filing === "object") return filing;
|
|
1216
|
-
console.error(filing);
|
|
1217
|
-
return void 0;
|
|
1218
|
-
}
|
|
1219
|
-
async function file_issue(argv, scouted) {
|
|
1220
|
-
const filing = await parsed_filing(argv);
|
|
1221
|
-
return filing === void 0 ? void 0 : await issue_file_pass.with_repository_restored(async () => await file({ ...filing, scouted }));
|
|
1222
|
-
}
|
|
1223
|
-
async function scout(argv) {
|
|
1224
|
-
const args = issue_file.parse(argv);
|
|
1225
|
-
const filing = args === void 0 ? void 0 : await filing_of(args);
|
|
1226
|
-
return typeof filing === "object" ? await issue_file_pass.with_repository_restored(
|
|
1227
|
-
async () => await issue_file_pass.scout_filing(filing)
|
|
1228
|
-
) : void 0;
|
|
1229
|
-
}
|
|
1230
|
-
async function run(argv) {
|
|
1231
|
-
const filing = await parsed_filing(argv);
|
|
1232
|
-
if (filing === void 0) return FAILURE_EXIT_CODE;
|
|
1233
|
-
return await issue_file_pass.with_repository_restored(async () => {
|
|
1234
|
-
if (filing.args.is_check) return await check(filing);
|
|
1235
|
-
return await file(filing) === void 0 ? FAILURE_EXIT_CODE : SUCCESS_EXIT_CODE;
|
|
1236
|
-
});
|
|
1237
|
-
}
|
|
1238
|
-
var issue_file_cli = {
|
|
1239
|
-
THIRD_PARTY_MESSAGE,
|
|
1240
|
-
UNKNOWN_PARTY_MESSAGE,
|
|
1241
|
-
file_issue,
|
|
1242
|
-
record: record2,
|
|
1243
|
-
run,
|
|
1244
|
-
scout
|
|
1245
|
-
};
|
|
1246
|
-
|
|
1247
|
-
export {
|
|
1248
|
-
issue_file_cli
|
|
1249
|
-
};
|