@joshuafolkken/kit 1.3000.0 → 1.3044.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/backlogrun-steps.md +1 -1
- package/.claude/skills/workflow-commands/kickoff.md +6 -0
- package/.claude/skills/workflow-commands/progress-watcher.md +10 -8
- package/dist/.inputs-verified.json +1 -1
- package/dist/commands/adopt.js +12 -12
- package/dist/commands/auto-ok-judge-cli.js +18 -14
- package/dist/commands/auto-ok-main.js +42 -40
- package/dist/commands/backlog-budget-main.js +3 -3
- package/dist/commands/backlog-drive-cli.js +276 -188
- package/dist/commands/backlog-next-main.js +77 -75
- package/dist/commands/backlog-offer-main.js +80 -78
- package/dist/commands/backlog-plan-cli.js +96 -97
- package/dist/commands/backlog-triage-cli.js +94 -92
- package/dist/commands/backlogrun-cli.js +212 -206
- package/dist/commands/behavior-cli.js +12 -13
- package/dist/commands/bump-version-main.js +2 -2
- package/dist/commands/bytes-command.js +61 -22
- package/dist/commands/check-related.js +61 -60
- package/dist/commands/{chunk-X7PN54LZ.js → chunk-22DVQCP6.js} +16 -6
- package/dist/commands/{chunk-UTBVTCQN.js → chunk-24OATKOF.js} +301 -168
- package/dist/commands/{chunk-7GHOFHUS.js → chunk-24ZDAWML.js} +3 -3
- package/dist/commands/{chunk-HBNB3TLG.js → chunk-2BB5ZR2F.js} +13 -7
- package/dist/commands/{chunk-F22G3VDB.js → chunk-2BC33QPY.js} +1 -1
- package/dist/commands/{chunk-72EW7AVI.js → chunk-2BJJUTZA.js} +2 -2
- package/dist/commands/{chunk-XDQOWUVT.js → chunk-2CXT6MBR.js} +4 -4
- package/dist/commands/{chunk-TVJE67O2.js → chunk-2EZTYLO4.js} +6 -6
- package/dist/commands/{chunk-JLYW7CP6.js → chunk-2PHOLX62.js} +1 -1
- package/dist/commands/{chunk-6EU5ZCDP.js → chunk-2QM72JCJ.js} +23 -87
- package/dist/commands/{chunk-EFHSCUFN.js → chunk-2VFPUPSG.js} +2 -2
- package/dist/commands/{chunk-ATRMETHT.js → chunk-2XAH3MHV.js} +1 -1
- package/dist/commands/{chunk-T2E724HN.js → chunk-34JJYCIY.js} +2 -2
- package/dist/commands/{chunk-REMKUFAC.js → chunk-34KZDKQJ.js} +1 -1
- package/dist/commands/{chunk-GK2KY4MO.js → chunk-352KLSFX.js} +3 -3
- package/dist/commands/{chunk-7S6VRZOH.js → chunk-3AEDZZNL.js} +5 -5
- package/dist/commands/{chunk-KVJDDECB.js → chunk-3B2HEFNO.js} +2 -2
- package/dist/commands/{chunk-HZBTXKT2.js → chunk-3Z425MM3.js} +2 -2
- package/dist/commands/{chunk-J3G2R64I.js → chunk-3ZOX4G4U.js} +3 -3
- package/dist/commands/{chunk-LRS2OS5J.js → chunk-452HWOJ7.js} +2 -2
- package/dist/commands/{chunk-HRT4KWP4.js → chunk-475EFIJV.js} +1 -1
- package/dist/commands/{chunk-4HBVHYNL.js → chunk-47UZB54M.js} +3 -3
- package/dist/commands/{chunk-H4LYG37R.js → chunk-4DN4XVPL.js} +6 -6
- package/dist/commands/{chunk-TMLNI3YW.js → chunk-4HERA2GY.js} +1 -1
- package/dist/commands/{chunk-W6V4DWC5.js → chunk-4JI35CVO.js} +1 -1
- package/dist/commands/{chunk-YT342DRV.js → chunk-4L4LNWZ7.js} +2 -2
- package/dist/commands/{chunk-ZZAH3YQP.js → chunk-4N32QKJZ.js} +6 -6
- package/dist/commands/{chunk-GDUK5YPO.js → chunk-4NRSFLG7.js} +12 -12
- package/dist/commands/{chunk-O5QZ2S6X.js → chunk-4OKRPAUT.js} +4 -4
- package/dist/commands/{chunk-QDFDB4CF.js → chunk-4Q64PG46.js} +13 -13
- package/dist/commands/{chunk-HO52D6JY.js → chunk-4UDTQVDD.js} +14 -14
- package/dist/commands/{chunk-HPVLI26Z.js → chunk-4WR2LEZL.js} +6 -6
- package/dist/commands/{chunk-DP7WIGQ4.js → chunk-4ZJOC6OK.js} +4 -4
- package/dist/commands/{chunk-WTRDWEUQ.js → chunk-4ZQM4I7R.js} +12 -12
- package/dist/commands/{chunk-OTZJXU2R.js → chunk-54X37JEJ.js} +8 -8
- package/dist/commands/{chunk-A5V7EWIX.js → chunk-56KW5EOK.js} +2 -2
- package/dist/commands/chunk-5CG3XU3O.js +74 -0
- package/dist/commands/{chunk-FC33R5UN.js → chunk-5ESZLHDZ.js} +13 -15
- package/dist/commands/{chunk-OVA7STGP.js → chunk-5FBRMARM.js} +9 -9
- package/dist/commands/{chunk-SK2LJBFS.js → chunk-5PCK53WP.js} +3 -3
- package/dist/commands/{chunk-6NV2F7QH.js → chunk-5RG4S66L.js} +1 -1
- package/dist/commands/{chunk-JOARHU3M.js → chunk-5UJGACVN.js} +1 -1
- package/dist/commands/{chunk-NKOET4FB.js → chunk-5Y7B7FDL.js} +2 -2
- package/dist/commands/{chunk-XMBRXCIE.js → chunk-5Z6E5ZUV.js} +4 -4
- package/dist/commands/{chunk-RZ4OKKPM.js → chunk-5ZNUH4LV.js} +2 -2
- package/dist/commands/{chunk-7CHCZBNF.js → chunk-6CFHLMKM.js} +4 -4
- package/dist/commands/{chunk-TXXYC7EV.js → chunk-6DDK5XWK.js} +1 -1
- package/dist/commands/{chunk-2TQXCH2K.js → chunk-6GQX752S.js} +3 -3
- package/dist/commands/{chunk-RY6ZDHKB.js → chunk-6MAZ55GF.js} +107 -84
- package/dist/commands/{chunk-SNFLV7VV.js → chunk-6RUWU2SB.js} +2 -2
- package/dist/commands/{chunk-D4SZK7H2.js → chunk-6TIVDEKG.js} +2 -2
- package/dist/commands/{chunk-RIQ75QWR.js → chunk-6UCWAFQY.js} +55 -43
- package/dist/commands/{chunk-4D5KWMFL.js → chunk-6YURRFRU.js} +19 -19
- package/dist/commands/{chunk-7MOZEEFJ.js → chunk-6YVURZAJ.js} +1 -1
- package/dist/commands/{chunk-73JOEKIC.js → chunk-6Z4YZG7P.js} +5 -5
- package/dist/commands/{chunk-NJ53AWJU.js → chunk-77BIN247.js} +9 -9
- package/dist/commands/{chunk-MZHOPRI6.js → chunk-7ABHNNY3.js} +7 -7
- package/dist/commands/{chunk-6WTVAL4D.js → chunk-7C7FOKJK.js} +1 -1
- package/dist/commands/{chunk-KVSSLDA3.js → chunk-7HAGC6SW.js} +5 -5
- package/dist/commands/{chunk-IG22Y5MA.js → chunk-7KKUFLH5.js} +1 -1
- package/dist/commands/{chunk-ZQ3CKRMP.js → chunk-7MJYLUF4.js} +2 -2
- package/dist/commands/{chunk-6UGFS3EU.js → chunk-7NHZCI5Y.js} +11 -11
- package/dist/commands/{chunk-FB3D7CX5.js → chunk-7OQ56DVW.js} +5 -7
- package/dist/commands/{chunk-EK327QOS.js → chunk-7VWPGTZO.js} +10 -10
- package/dist/commands/{chunk-WSOF74K4.js → chunk-7YZXS3AK.js} +3 -3
- package/dist/commands/{chunk-N6TYL3B2.js → chunk-AAUDI7WJ.js} +2 -2
- package/dist/commands/{chunk-3GF52L5F.js → chunk-AC26ZUG5.js} +12 -24
- package/dist/commands/{chunk-EK2Y6B4X.js → chunk-ACZ52JPI.js} +7 -7
- package/dist/commands/{chunk-VD72V5VX.js → chunk-AJ65WNJB.js} +4 -4
- package/dist/commands/{chunk-MYWRGF5A.js → chunk-AK7SEO4Y.js} +2 -2
- package/dist/commands/{chunk-IBEKFLWG.js → chunk-ALDAS2WG.js} +9 -9
- package/dist/commands/{chunk-W32DIQEP.js → chunk-ARFBIJFS.js} +1 -1
- package/dist/commands/{chunk-F3WBEEYC.js → chunk-AVVMDVGO.js} +5 -5
- package/dist/commands/chunk-AXXEMVRJ.js +23 -0
- package/dist/commands/{chunk-GIGKMIPQ.js → chunk-B3M5WSGN.js} +1 -1
- package/dist/commands/{chunk-4Z5723GA.js → chunk-B7ZNIEDV.js} +5 -4
- package/dist/commands/{chunk-B3XFOHDX.js → chunk-BCUDQWYK.js} +10 -4
- package/dist/commands/{chunk-PR3JCPP7.js → chunk-BMKWSWWE.js} +1 -1
- package/dist/commands/{chunk-RZJAUVMI.js → chunk-BMM4RHCG.js} +2 -2
- package/dist/commands/{chunk-LAKVPOJQ.js → chunk-BMTYUJNT.js} +2 -2
- package/dist/commands/{chunk-DAJCUSPG.js → chunk-BRHPRDDV.js} +3 -3
- package/dist/commands/{chunk-UZAU6UI6.js → chunk-BRUBX64M.js} +2 -2
- package/dist/commands/{chunk-BFLFPKQQ.js → chunk-BTZJDHQT.js} +4 -4
- package/dist/commands/{chunk-AI5K4QJO.js → chunk-BYFC6MD2.js} +1 -1
- package/dist/commands/{chunk-JGTLNFFE.js → chunk-BYGJ3BCJ.js} +10 -10
- package/dist/commands/{chunk-5HWZFL4D.js → chunk-C54QXJD6.js} +51 -18
- package/dist/commands/{chunk-LMS6N6GE.js → chunk-CBAKBWSZ.js} +7 -7
- package/dist/commands/{chunk-7EAMUVIO.js → chunk-CFHRNTE5.js} +1 -1
- package/dist/commands/{chunk-UIWAMLQH.js → chunk-CGYDIYHD.js} +2 -2
- package/dist/commands/{chunk-4QYW2IL7.js → chunk-CHKYPF5O.js} +1 -1
- package/dist/commands/{chunk-5HCPSV45.js → chunk-CJBW6BWG.js} +8 -8
- package/dist/commands/chunk-CKUKK7JG.js +252 -0
- package/dist/commands/{chunk-4PES3BAA.js → chunk-CMHGDCGN.js} +3 -3
- package/dist/commands/{chunk-F6OWP2AY.js → chunk-CNGTHSUS.js} +22 -22
- package/dist/commands/{chunk-B2EA2HCY.js → chunk-COGKULQH.js} +4 -4
- package/dist/commands/{chunk-S7XWXG4M.js → chunk-CP2J4RV2.js} +175 -81
- package/dist/commands/{chunk-YGDNUTTI.js → chunk-CQUZ6TNQ.js} +2 -2
- package/dist/commands/chunk-CQZI7RIK.js +72 -0
- package/dist/commands/chunk-CVJHQOI3.js +153 -0
- package/dist/commands/{chunk-2MJ4OCDL.js → chunk-CWCKCZS6.js} +1 -1
- package/dist/commands/chunk-D5OHVIPM.js +17 -0
- package/dist/commands/{chunk-TPKFVVJQ.js → chunk-D6D6WQR6.js} +2 -2
- package/dist/commands/{chunk-5PAEXYIY.js → chunk-D7JRJI44.js} +69 -6
- package/dist/commands/{chunk-LOSOLCCW.js → chunk-D7OAU32Z.js} +1 -1
- package/dist/commands/{chunk-VZHC2I3T.js → chunk-DAAX7XDS.js} +8 -8
- package/dist/commands/{chunk-OHVAEJSM.js → chunk-DEZF7QZZ.js} +5 -5
- package/dist/commands/{chunk-CA6F5OXK.js → chunk-DYZOOWVW.js} +124 -21
- package/dist/commands/{chunk-TKGBF75Y.js → chunk-EDKOSZ3K.js} +5 -5
- package/dist/commands/{chunk-YPNTORQD.js → chunk-EFDVE5P5.js} +1 -1
- package/dist/commands/{chunk-EH3LVYOX.js → chunk-EGIHAEMT.js} +1 -1
- package/dist/commands/{chunk-7P4X4TQL.js → chunk-EKLU6QR7.js} +4 -4
- package/dist/commands/{chunk-ILQZFUDC.js → chunk-ELY76WAR.js} +2 -2
- package/dist/commands/{chunk-2VLHFILE.js → chunk-EM3HAZF6.js} +2 -2
- package/dist/commands/{chunk-F2HFWLQR.js → chunk-EMTZAGT5.js} +20 -1
- package/dist/commands/{chunk-GA4VIFHD.js → chunk-ERG4QRNG.js} +2 -2
- package/dist/commands/{chunk-ICEMFE2V.js → chunk-EUGNQCYK.js} +1 -1
- package/dist/commands/{chunk-3HU3LPIF.js → chunk-EXDFKKMH.js} +2 -2
- package/dist/commands/{chunk-ISPBJVXM.js → chunk-EXWB34R2.js} +7 -7
- package/dist/commands/{chunk-FNOSSXLG.js → chunk-EYMPBHDN.js} +2 -2
- package/dist/commands/{chunk-7V5UVKFG.js → chunk-EZ7IPKIH.js} +2 -2
- package/dist/commands/{chunk-KQWSENCT.js → chunk-F6IQHZYY.js} +3 -3
- package/dist/commands/{chunk-7ZECP3J6.js → chunk-FDS65XOJ.js} +5 -5
- package/dist/commands/{chunk-KXRFGPZD.js → chunk-FGG7V473.js} +21 -5
- package/dist/commands/{chunk-PZ6VWHOO.js → chunk-FHFWNNUC.js} +1 -1
- package/dist/commands/{chunk-XBRD2BDL.js → chunk-FJX7AENO.js} +2 -2
- package/dist/commands/{chunk-M42SLJCD.js → chunk-FKZ5E4JD.js} +4 -4
- package/dist/commands/{chunk-F2J6DGDM.js → chunk-FMZWRDKH.js} +8 -8
- package/dist/commands/{chunk-DSBK66US.js → chunk-FOKCRIAN.js} +10 -10
- package/dist/commands/{chunk-OI7KM4K3.js → chunk-FQGWO2ZH.js} +2 -2
- package/dist/commands/{chunk-2IESYBZH.js → chunk-FURNDIT3.js} +3 -3
- package/dist/commands/chunk-FVDQNMP6.js +93 -0
- package/dist/commands/{chunk-PZU6FZO6.js → chunk-FWU3H4TX.js} +1 -1
- package/dist/commands/{chunk-RYZ3RQRH.js → chunk-G3HBYHFA.js} +1 -1
- package/dist/commands/{chunk-HCA5QG2U.js → chunk-G4E4M2P4.js} +2 -2
- package/dist/commands/{chunk-VJLZ3IQQ.js → chunk-G5KSL2Q2.js} +1 -1
- package/dist/commands/{chunk-Y5ZW3KN5.js → chunk-G6XC7V6Y.js} +2 -2
- package/dist/commands/{chunk-73EBNBUW.js → chunk-GCPP5XIG.js} +1 -1
- package/dist/commands/{chunk-Q3463XNL.js → chunk-GITT5A5A.js} +3 -3
- package/dist/commands/{chunk-T2IO4LEB.js → chunk-GLC47H7I.js} +10 -10
- package/dist/commands/{chunk-GA6E4VGO.js → chunk-GUR54ELE.js} +1 -1
- package/dist/commands/{chunk-7IT23HIR.js → chunk-GY4DMCKS.js} +2 -2
- package/dist/commands/{chunk-PZ4ITSLG.js → chunk-H6JQRHDC.js} +3 -3
- package/dist/commands/{chunk-ZHZSZNE2.js → chunk-HATKF6VX.js} +2 -2
- package/dist/commands/{chunk-ELWNRE6E.js → chunk-HH3CVIFU.js} +5 -5
- package/dist/commands/{chunk-7GMTJDO2.js → chunk-HHMMGDMP.js} +6 -6
- package/dist/commands/{chunk-VD5674LW.js → chunk-HI5WPM6C.js} +2 -2
- package/dist/commands/{chunk-JUUBDYFZ.js → chunk-HQSWPRUF.js} +4 -4
- package/dist/commands/{chunk-ZAJD6T6E.js → chunk-HVCQYZVD.js} +2 -2
- package/dist/commands/chunk-HWEZRNPL.js +66 -0
- package/dist/commands/{chunk-J6GIVMXI.js → chunk-HX3FFIO5.js} +18 -3
- package/dist/commands/{chunk-GU5ML3Y3.js → chunk-HXDTA5VU.js} +13 -68
- package/dist/commands/{chunk-BNXE3NVB.js → chunk-I2KCGKJI.js} +1 -1
- package/dist/commands/{chunk-LC7SBONO.js → chunk-IAD4WLLI.js} +1 -1
- package/dist/commands/{chunk-WWC5L3AO.js → chunk-IB5TT73I.js} +2 -2
- package/dist/commands/{chunk-HOSZITJM.js → chunk-IBAYXCMU.js} +2 -2
- package/dist/commands/chunk-IGDJNXX2.js +49 -0
- package/dist/commands/{chunk-OJ4LGBVD.js → chunk-ILIITIMQ.js} +3 -3
- package/dist/commands/{chunk-CUR2WNYB.js → chunk-IRGDMSTI.js} +3 -3
- package/dist/commands/{chunk-PZTWQYRI.js → chunk-IYJEBWW5.js} +3 -3
- package/dist/commands/{chunk-A3D2XHOJ.js → chunk-J22PSIXR.js} +40 -9
- package/dist/commands/{chunk-O27H6NN6.js → chunk-J66YBAAM.js} +3 -5
- package/dist/commands/{chunk-P6RGQXHI.js → chunk-J6WKZRV2.js} +2 -2
- package/dist/commands/{chunk-NFEBQED3.js → chunk-J7IO3AYH.js} +2 -2
- package/dist/commands/{chunk-T57W3UWK.js → chunk-JAKC2BHX.js} +1 -1
- package/dist/commands/{chunk-3EO2XN3A.js → chunk-JCAQ7B6J.js} +4 -4
- package/dist/commands/{chunk-QQZOQ7AM.js → chunk-JFLFGLE4.js} +1 -1
- package/dist/commands/{chunk-ZDSDPKCD.js → chunk-JIGBNCDR.js} +1 -1
- package/dist/commands/{chunk-Q5N2J2UF.js → chunk-JJHWTFWQ.js} +5 -7
- package/dist/commands/{chunk-EI6JG5DF.js → chunk-JKOGWGQM.js} +1 -1
- package/dist/commands/{chunk-RK4HE5NW.js → chunk-JM6EVOFN.js} +4 -4
- package/dist/commands/{chunk-EBNIX2TC.js → chunk-JV24VP2O.js} +1 -1
- package/dist/commands/{chunk-BCK5LW4F.js → chunk-JVKXJ763.js} +3 -3
- package/dist/commands/{chunk-D5TAR6TV.js → chunk-JZHY7D6D.js} +1 -1
- package/dist/commands/{chunk-CRNPPKP2.js → chunk-JZK33TA5.js} +1 -1
- package/dist/commands/{chunk-UOAG2XQT.js → chunk-K275REYP.js} +3 -3
- package/dist/commands/{chunk-HESMKHEB.js → chunk-K4G3HOKS.js} +2 -2
- package/dist/commands/{chunk-L6XN3EXI.js → chunk-K64EIHD2.js} +1 -1
- package/dist/commands/{chunk-RINVPTA2.js → chunk-KCFOP5RI.js} +28 -28
- package/dist/commands/{chunk-O26Y2FOJ.js → chunk-KGE4AS2Y.js} +1 -1
- package/dist/commands/{chunk-EWA72KO7.js → chunk-KK2SL42W.js} +2 -2
- package/dist/commands/{chunk-MMXZKLDU.js → chunk-KK7TEL5G.js} +10 -4
- package/dist/commands/{chunk-UEURNXE5.js → chunk-KKIMVXAP.js} +2 -2
- package/dist/commands/{chunk-MAGJFH5T.js → chunk-KODXWMBX.js} +6 -6
- package/dist/commands/{chunk-D4HNS43Q.js → chunk-KPSKWTOS.js} +17 -17
- package/dist/commands/{chunk-VFJYOAOQ.js → chunk-KTV2HNWB.js} +2 -2
- package/dist/commands/{chunk-OWR2TCOY.js → chunk-KWYQR5MK.js} +5 -5
- package/dist/commands/{chunk-FNQW6NY7.js → chunk-KXK2A2HB.js} +6 -2
- package/dist/commands/{chunk-O5FVBIRI.js → chunk-KZ5BBBMO.js} +5 -5
- package/dist/commands/{chunk-JUJFIATR.js → chunk-KZ7HD37E.js} +6 -6
- package/dist/commands/{chunk-2YCKPX3A.js → chunk-KZZWPUJW.js} +1 -1
- package/dist/commands/{chunk-MYNM3YMR.js → chunk-L7DAL54N.js} +3 -3
- package/dist/commands/{chunk-NOXLKIPR.js → chunk-LAR76BFA.js} +1 -1
- package/dist/commands/{chunk-ZA3W73PF.js → chunk-LB557AHJ.js} +3 -3
- package/dist/commands/{chunk-LYEKT3IN.js → chunk-LEB2VP7F.js} +1 -1
- package/dist/commands/{chunk-WQJ7O3C3.js → chunk-LJXKVLYI.js} +1 -1
- package/dist/commands/{chunk-CHX4QTP4.js → chunk-LJZERYLG.js} +1 -1
- package/dist/commands/{chunk-PF22VUWB.js → chunk-LOOFYHUM.js} +76 -26
- package/dist/commands/{chunk-HIPO6HUG.js → chunk-LPSULLNK.js} +1 -1
- package/dist/commands/{chunk-G47ZNQVG.js → chunk-LR22UK5W.js} +1 -1
- package/dist/commands/{chunk-SV4FHQE7.js → chunk-LT7QSHR4.js} +14 -14
- package/dist/commands/{chunk-HIB5G2X6.js → chunk-LUXWDMKI.js} +7 -7
- package/dist/commands/{chunk-XH6BGVVP.js → chunk-LX7TIEMI.js} +9 -36
- package/dist/commands/{chunk-OGNTJ5JB.js → chunk-LYO6TX5L.js} +1 -1
- package/dist/commands/{chunk-JLREFWJ4.js → chunk-LZ5QXE5N.js} +6 -6
- package/dist/commands/{chunk-WW3TX742.js → chunk-LZPPSOTP.js} +4 -4
- package/dist/commands/{chunk-5WIZR5SC.js → chunk-M4UV3BEV.js} +11 -11
- package/dist/commands/{chunk-LNBUIOK6.js → chunk-M6JDU5EK.js} +4 -4
- package/dist/commands/{chunk-VZSJCFRT.js → chunk-MFBNNTBM.js} +4 -4
- package/dist/commands/{chunk-KHWTJ4F7.js → chunk-MI2OS6TL.js} +3 -3
- package/dist/commands/{chunk-VZCQZFPH.js → chunk-MLW4S35K.js} +19 -8
- package/dist/commands/{chunk-RIUPRMLW.js → chunk-MN425CU6.js} +1 -1
- package/dist/commands/{chunk-7W3D3WRW.js → chunk-MOIOSCZM.js} +2 -2
- package/dist/commands/{chunk-3BNNMJOT.js → chunk-MRORPFSO.js} +20 -320
- package/dist/commands/{chunk-LA5WTOAM.js → chunk-MUGTOJUL.js} +12 -12
- package/dist/commands/{chunk-L6LU2633.js → chunk-MVHPRYHE.js} +1 -1
- package/dist/commands/{chunk-EKCKCX5S.js → chunk-MWO6FOSZ.js} +123 -21
- package/dist/commands/{chunk-AVUGMOHZ.js → chunk-N7QTMTST.js} +2 -2
- package/dist/commands/{chunk-LMSS4ARB.js → chunk-NDBX7LSS.js} +1 -1
- package/dist/commands/{chunk-BEE7OAQ5.js → chunk-NDWZTWXV.js} +21 -2
- package/dist/commands/{chunk-6TESOL3L.js → chunk-NEGJ77RV.js} +7 -7
- package/dist/commands/{chunk-LCEJXF7A.js → chunk-NEGRE5VW.js} +4 -4
- package/dist/commands/{chunk-IXX4SXIP.js → chunk-NFPD2P3V.js} +1 -1
- package/dist/commands/chunk-NHIW7JE6.js +335 -0
- package/dist/commands/{chunk-CJSFC5YI.js → chunk-NILSN7A4.js} +7 -7
- package/dist/commands/{chunk-W4J6YTFE.js → chunk-NOLFSPOB.js} +2 -2
- package/dist/commands/chunk-NT67QTZO.js +65 -0
- package/dist/commands/{chunk-NJT5L6IC.js → chunk-NU7W6QGT.js} +33 -4
- package/dist/commands/chunk-NUR4FQHM.js +21 -0
- package/dist/commands/{chunk-OKKQI4ZG.js → chunk-OAAVY2JK.js} +1 -1
- package/dist/commands/chunk-OF4BY4N7.js +32 -0
- package/dist/commands/{chunk-W47I2KDY.js → chunk-OGS2DK7I.js} +3 -3
- package/dist/commands/{chunk-MS6Q3Z7V.js → chunk-OIPV3PWW.js} +6 -6
- package/dist/commands/{chunk-T33QDAWD.js → chunk-OIX2363L.js} +1 -1
- package/dist/commands/{chunk-GPMSYXYO.js → chunk-OJ65BZBV.js} +283 -15
- package/dist/commands/{chunk-34LAULSC.js → chunk-OKZWEVR4.js} +3 -3
- package/dist/commands/{chunk-2CXAVVST.js → chunk-OL6IF4JC.js} +1 -1
- package/dist/commands/{chunk-6JVNRY5A.js → chunk-OMPRILFH.js} +1 -1
- package/dist/commands/{chunk-VGHSZLYQ.js → chunk-OOWGH2RG.js} +1 -1
- package/dist/commands/{chunk-ERGZPWKP.js → chunk-OP2RFVLS.js} +1 -1
- package/dist/commands/{chunk-UU6GCJGM.js → chunk-ORKVN2LO.js} +2 -2
- package/dist/commands/{chunk-RHII5XI6.js → chunk-OSBWXZJ4.js} +24 -24
- package/dist/commands/{chunk-D3SHCUBC.js → chunk-OVWPZDWP.js} +2 -2
- package/dist/commands/{chunk-Z4HYBFZD.js → chunk-OWYK2BEJ.js} +108 -46
- package/dist/commands/{chunk-P4O67FP5.js → chunk-OX3VQLV2.js} +6 -6
- package/dist/commands/{chunk-L6TU7FC2.js → chunk-OZJP77UM.js} +4 -4
- package/dist/commands/{chunk-SNO7CY2B.js → chunk-P3H3DKTE.js} +2 -2
- package/dist/commands/{chunk-2OIX4JLA.js → chunk-P5SOYWH2.js} +3 -3
- package/dist/commands/{chunk-M4PEC7YW.js → chunk-PHLOTUB7.js} +54 -37
- package/dist/commands/{chunk-73KBUQKI.js → chunk-PTNQCCIB.js} +2 -2
- package/dist/commands/{chunk-4P2LCVGO.js → chunk-PTZEFQUX.js} +8 -8
- package/dist/commands/{chunk-DJVMC3U2.js → chunk-Q426ZSZ4.js} +1 -1
- package/dist/commands/{chunk-US6X7JXC.js → chunk-Q7EEIOAD.js} +4 -4
- package/dist/commands/{chunk-LE7TFPMU.js → chunk-QABRNGQV.js} +2 -2
- package/dist/commands/{chunk-NGKB632X.js → chunk-QDFVVRQP.js} +3 -3
- package/dist/commands/{chunk-36M2UV6C.js → chunk-QGATHT4S.js} +38 -4
- package/dist/commands/{chunk-DIB2Z2OS.js → chunk-QJRVDE7T.js} +1 -1
- package/dist/commands/{chunk-KUJQWO6M.js → chunk-QKTTKAXM.js} +2 -2
- package/dist/commands/{chunk-DXZW4V7J.js → chunk-QMDKDQKW.js} +3 -3
- package/dist/commands/{chunk-VW5SGE7A.js → chunk-QOSC5RKD.js} +1 -1
- package/dist/commands/{chunk-ENLWXAHD.js → chunk-QV5FKMOU.js} +1 -1
- package/dist/commands/{chunk-32SNWQJP.js → chunk-R2THGPI3.js} +2 -2
- package/dist/commands/{chunk-RVHBWSIG.js → chunk-R54Z2Z3X.js} +2 -2
- package/dist/commands/{chunk-CJAA5GAF.js → chunk-RG53UFNW.js} +15 -15
- package/dist/commands/{chunk-HJKZDDDI.js → chunk-RHKCWJQX.js} +1 -1
- package/dist/commands/{chunk-RPDWFUQO.js → chunk-RKIAX4DZ.js} +36 -84
- package/dist/commands/{chunk-LE2T3FGJ.js → chunk-RLBFEHHC.js} +2 -4
- package/dist/commands/{chunk-5GBZ43UA.js → chunk-RMDLFLPE.js} +1 -1
- package/dist/commands/{chunk-U2UH4VM4.js → chunk-RN2YDNLF.js} +2 -2
- package/dist/commands/{chunk-GQHUFNXN.js → chunk-RRAIRS2T.js} +1 -1
- package/dist/commands/{chunk-DRCTDVI2.js → chunk-RUQY5TS3.js} +3 -3
- package/dist/commands/{chunk-WGULS5DA.js → chunk-RW64VHEB.js} +1 -0
- package/dist/commands/{chunk-4G7NKNAZ.js → chunk-RXYMJPJB.js} +3 -3
- package/dist/commands/{chunk-B33BTNB4.js → chunk-S4M6UWR2.js} +21 -5
- package/dist/commands/{chunk-4Q4FXBUQ.js → chunk-SASX3W2M.js} +2 -2
- package/dist/commands/{chunk-TIXJY22D.js → chunk-SJ2ZN575.js} +5 -5
- package/dist/commands/{chunk-NSZTSCBW.js → chunk-SP7DKYGU.js} +13 -13
- package/dist/commands/{chunk-T3FD3Q73.js → chunk-SRG6PKVS.js} +1 -1
- package/dist/commands/{chunk-QA22PBCJ.js → chunk-SSL6A3Y4.js} +3 -3
- package/dist/commands/{chunk-4BEIYKI2.js → chunk-SV4FZR24.js} +2 -0
- package/dist/commands/{chunk-HZSQI6TD.js → chunk-SVTS7ACS.js} +2 -2
- package/dist/commands/{chunk-F7XLEK55.js → chunk-SVV4U5AR.js} +1 -1
- package/dist/commands/{chunk-RRQFITJE.js → chunk-SXJM4DZ5.js} +1 -1
- package/dist/commands/{chunk-OIDMJASD.js → chunk-SYB3M632.js} +1 -1
- package/dist/commands/{chunk-UJOZ2MGX.js → chunk-SYOXIKB7.js} +6 -6
- package/dist/commands/{chunk-5SB37YDW.js → chunk-SZG5HDNP.js} +3 -3
- package/dist/commands/{chunk-R2CF6VZE.js → chunk-T4F33UKZ.js} +4 -4
- package/dist/commands/{chunk-ESQEEL4O.js → chunk-TAEGXID2.js} +2 -2
- package/dist/commands/chunk-TEPYEUYG.js +585 -0
- package/dist/commands/{chunk-LUMCYDGE.js → chunk-TFLHYC2F.js} +2 -2
- package/dist/commands/{chunk-V5OIPYA6.js → chunk-TJKM56WJ.js} +4 -4
- package/dist/commands/{chunk-CYQ3ZF7R.js → chunk-TLAB552K.js} +86 -13
- package/dist/commands/{chunk-ST32OGPY.js → chunk-TP6L4W3W.js} +5 -5
- package/dist/commands/{chunk-C26LKDBE.js → chunk-TR7WWYD5.js} +1 -1
- package/dist/commands/{chunk-PWYXY46Y.js → chunk-TYNH2R66.js} +15 -15
- package/dist/commands/{chunk-AZUE65NT.js → chunk-U5P6G3UV.js} +2 -2
- package/dist/commands/{chunk-REPANBLS.js → chunk-U7Y6RKLK.js} +1 -1
- package/dist/commands/{chunk-55I7OYHI.js → chunk-UIMMWH7U.js} +1 -1
- package/dist/commands/{chunk-72J2G2E7.js → chunk-UKBBWMLE.js} +20 -20
- package/dist/commands/{chunk-VTLL6CKO.js → chunk-UNMSZGSG.js} +14 -14
- package/dist/commands/chunk-UOVUUVDK.js +18 -0
- package/dist/commands/{chunk-JNWHX25C.js → chunk-URDT2O2K.js} +1 -1
- package/dist/commands/{chunk-FGZQSSGH.js → chunk-UREXZJDB.js} +1 -1
- package/dist/commands/{chunk-O4WBADCX.js → chunk-UTHUX7VU.js} +3 -3
- package/dist/commands/{chunk-PDDKRHHS.js → chunk-V5OUZFWK.js} +3 -3
- package/dist/commands/{chunk-N4O5I55P.js → chunk-VCPGFBMN.js} +8 -8
- package/dist/commands/{chunk-WN7NK3NY.js → chunk-VGPIQNDB.js} +1 -1
- package/dist/commands/{chunk-HOGFJHBT.js → chunk-VJS2MCLA.js} +1 -1
- package/dist/commands/{chunk-4YI4SLRJ.js → chunk-VK6D5CWA.js} +8 -8
- package/dist/commands/{chunk-4LWRCPS5.js → chunk-VOF3N4WO.js} +3 -3
- package/dist/commands/{chunk-AM44D7NF.js → chunk-VQRT32JB.js} +1 -1
- package/dist/commands/{chunk-AS3GWVAN.js → chunk-VQVPAVQ3.js} +1 -1
- package/dist/commands/{chunk-6VTJO5L2.js → chunk-VV4TQYGD.js} +3 -3
- package/dist/commands/{chunk-WIE7VUBE.js → chunk-W7DRUOF7.js} +5 -5
- package/dist/commands/{chunk-HH2KDLTP.js → chunk-WAEN2RTT.js} +2 -2
- package/dist/commands/{chunk-NKKH3PBE.js → chunk-WB4T3VY2.js} +18 -1
- package/dist/commands/{chunk-DNJC7X73.js → chunk-WCEUMOKK.js} +2 -2
- package/dist/commands/{chunk-BK6Q4VCA.js → chunk-WTH6NTXU.js} +4 -4
- package/dist/commands/{chunk-WG6GYBRJ.js → chunk-WWVYEHQT.js} +2 -1
- package/dist/commands/{chunk-P4CWLRT2.js → chunk-X3TNPALI.js} +1 -1
- package/dist/commands/{chunk-LZNYHWRO.js → chunk-XC6GG5JR.js} +3 -3
- package/dist/commands/{chunk-RI7EQYKL.js → chunk-XFWI6WHH.js} +2 -2
- package/dist/commands/{chunk-BY3POLIQ.js → chunk-XHGWMD3L.js} +7 -7
- package/dist/commands/{chunk-BPSJSHYD.js → chunk-XI2ABCRX.js} +2 -2
- package/dist/commands/{chunk-TS4ZK46L.js → chunk-XKSUBUIH.js} +5 -5
- package/dist/commands/{chunk-K7GL3BGI.js → chunk-XPBF5DG3.js} +4 -4
- package/dist/commands/{chunk-6SKMZGER.js → chunk-XUMYPESL.js} +20 -8
- package/dist/commands/{chunk-QS5USD4T.js → chunk-XXC32PVL.js} +5 -4
- package/dist/commands/{chunk-ORSI7Y55.js → chunk-XXN2EZBY.js} +1 -1
- package/dist/commands/{chunk-IZVM2TTH.js → chunk-XZQWEVR3.js} +2 -2
- package/dist/commands/{chunk-E3CXOVPQ.js → chunk-Y27PTXXI.js} +1 -1
- package/dist/commands/{chunk-337QQM4C.js → chunk-Y4EBUI6M.js} +106 -5
- package/dist/commands/{chunk-WRX3MINT.js → chunk-YAU3LYNF.js} +1 -1
- package/dist/commands/{chunk-JB7R3A4A.js → chunk-YDURQICF.js} +4 -4
- package/dist/commands/{chunk-RX5JSPPH.js → chunk-YGFOGA7C.js} +11 -11
- package/dist/commands/{chunk-S6SXMBF2.js → chunk-YHJ2AJMA.js} +2 -2
- package/dist/commands/{chunk-MVPUQLN5.js → chunk-YM77CF4D.js} +4 -4
- package/dist/commands/{chunk-ZYIMQHCB.js → chunk-YNPRJCEO.js} +6 -6
- package/dist/commands/{chunk-3UKJFWKS.js → chunk-YTBQAD5W.js} +3 -3
- package/dist/commands/{chunk-KIVOZY2J.js → chunk-ZBZ5DDCH.js} +66 -64
- package/dist/commands/{chunk-TAPDXK34.js → chunk-ZLRUHSOP.js} +1 -1
- package/dist/commands/{chunk-XYAK53TK.js → chunk-ZNR75OXP.js} +2 -1
- package/dist/commands/{chunk-CADFBQJJ.js → chunk-ZSOR4ISJ.js} +4 -4
- package/dist/commands/{chunk-6NRTLH6I.js → chunk-ZYFHYQA7.js} +1 -1
- package/dist/commands/{chunk-Q7TV3OV6.js → chunk-ZZFFSQF4.js} +4 -4
- package/dist/commands/{chunk-PDAY76AN.js → chunk-ZZULXNC2.js} +1 -1
- package/dist/commands/{chunk-5Y7QQYTU.js → chunk-ZZXO6TFH.js} +1 -1
- package/dist/commands/code-symbol-cli.js +4 -4
- package/dist/commands/codex-hook-adapter.js +99 -100
- package/dist/commands/command-derive.js +10 -10
- package/dist/commands/cost-audit-main.js +94 -92
- package/dist/commands/cspell-cached.js +24 -23
- package/dist/commands/defect-origin-main.js +19 -18
- package/dist/commands/defect-report-main.js +15 -14
- package/dist/commands/disposition-cli.js +67 -64
- package/dist/commands/doctor.js +3 -3
- package/dist/commands/document-read-cli.js +89 -9
- package/dist/commands/document-section-main.js +89 -9
- package/dist/commands/edit-files-cli.js +1 -1
- package/dist/commands/effect-audit-cli.js +20 -19
- package/dist/commands/epic-audit-main.js +55 -53
- package/dist/commands/epic-bundle-main.js +87 -85
- package/dist/commands/epic-check.js +16 -15
- package/dist/commands/epic-main.js +93 -91
- package/dist/commands/epic-next-main.js +51 -49
- package/dist/commands/format-edited-cli.js +30 -32
- package/dist/commands/format.js +11 -10
- package/dist/commands/fresh-machine-cli.js +6 -6
- package/dist/commands/git-followup-workflow.js +137 -122
- package/dist/commands/git-workflow.js +28 -27
- package/dist/commands/github-release-cli.js +26 -3
- package/dist/commands/hook-ledger-cli.js +74 -126
- package/dist/commands/init-main.js +20 -19
- package/dist/commands/inputs.json +1909 -1878
- package/dist/commands/issue-ack-cli.js +5 -5
- package/dist/commands/issue-already-done-cli.js +63 -58
- package/dist/commands/issue-body-cli.js +44 -42
- package/dist/commands/issue-cite-main.js +11 -10
- package/dist/commands/issue-comment-main.js +15 -11
- package/dist/commands/issue-consolidate-cli.js +31 -30
- package/dist/commands/issue-file-main.js +114 -110
- package/dist/commands/issue-fold-existing-cli.js +88 -86
- package/dist/commands/issue-fold-main.js +26 -25
- package/dist/commands/issue-lint-main.js +38 -37
- package/dist/commands/issue-measured-cli.js +66 -61
- package/dist/commands/issue-plan-cli.js +103 -101
- package/dist/commands/issue-premise-unmet-cli.js +66 -61
- package/dist/commands/issue-priority-cli.js +13 -12
- package/dist/commands/issue-read-main.js +18 -17
- package/dist/commands/issue-release-class-cli.js +12 -11
- package/dist/commands/issue-release-main.js +13 -12
- package/dist/commands/issue-scout-main.js +89 -87
- package/dist/commands/issue-spill-main.js +114 -110
- package/dist/commands/issue-state-main.js +16 -15
- package/dist/commands/issue-tick-cli.js +14 -13
- package/dist/commands/josh-completion.js +10 -10
- package/dist/commands/lane-adopt-cli.js +19 -19
- package/dist/commands/lane-breakdown-cli.js +154 -126
- package/dist/commands/lane-cli.js +131 -125
- package/dist/commands/lane-launch-main.js +17 -17
- package/dist/commands/lane-limit-cli.js +81 -79
- package/dist/commands/lane-measure-cli.js +246 -130
- package/dist/commands/lane-pause-cli.js +15 -15
- package/dist/commands/lane-plan-cli.js +108 -101
- package/dist/commands/lane-resolve-cli.js +20 -19
- package/dist/commands/lane-restart-cli.js +124 -118
- package/dist/commands/lane-why-cli.js +85 -82
- package/dist/commands/lane-withdraw-cli.js +49 -48
- package/dist/commands/latest-corepack.js +3 -3
- package/dist/commands/latest-if-required-cli.js +9 -9
- package/dist/commands/latest-scope-main.js +5 -5
- package/dist/commands/latest-update.js +3 -3
- package/dist/commands/lines-command.js +3 -3
- package/dist/commands/lint-parallel-main.js +32 -31
- package/dist/commands/lint-related.js +79 -60
- package/dist/commands/lint-rule.js +32 -31
- package/dist/commands/lockfile-policy.js +11 -11
- package/dist/commands/main-merge-main.js +5 -5
- package/dist/commands/main-sync-main.js +5 -5
- package/dist/commands/managed-config-scope-cli.js +3 -3
- package/dist/commands/measure-rerun-cli.js +10 -10
- package/dist/commands/metrics-command.js +91 -58
- package/dist/commands/observation-record-cli.js +3 -3
- package/dist/commands/observations-flush-cli.js +27 -25
- package/dist/commands/oracle-list-cli.js +2 -2
- package/dist/commands/overrides-check.js +4 -4
- package/dist/commands/package-scout-cli.js +67 -26
- package/dist/commands/plan-consumers-main.js +4 -4
- package/dist/commands/plan-scaffold-cli.js +132 -91
- package/dist/commands/pr-classification-main.js +3 -3
- package/dist/commands/pre-commit-lint.js +11 -12
- package/dist/commands/pre-commit-type-check.js +25 -24
- package/dist/commands/pre-push-unit.js +33 -33
- package/dist/commands/pretool-guard-cli.js +90 -91
- package/dist/commands/project-profile-cli.js +5 -4
- package/dist/commands/propagate.js +15 -15
- package/dist/commands/prose-stale-cli.js +20 -19
- package/dist/commands/publishable-range-check.js +4 -4
- package/dist/commands/read-files-cli.js +2 -2
- package/dist/commands/read-set-cli.js +61 -24
- package/dist/commands/refactor-scan-cli.js +6 -6
- package/dist/commands/release-cli.js +64 -36
- package/dist/commands/release-scope-main.js +19 -18
- package/dist/commands/rename-cli.js +27 -29
- package/dist/commands/reserved-run.js +3 -3
- package/dist/commands/retrospective-cli.js +104 -102
- package/dist/commands/review-attest-cli.js +6 -6
- package/dist/commands/review-brief-main.js +127 -109
- package/dist/commands/review-findings-cli.js +2 -2
- package/dist/commands/review-pair-cli.js +110 -84
- package/dist/commands/review-record-main.js +108 -83
- package/dist/commands/review-round2-cli.js +46 -45
- package/dist/commands/review-stops-cli.js +16 -16
- package/dist/commands/review-submit-cli.js +127 -109
- package/dist/commands/rule-list.js +58 -60
- package/dist/commands/rule-value-cli.js +226 -74
- package/dist/commands/run-add-cli.js +28 -27
- package/dist/commands/run-board-main.js +136 -132
- package/dist/commands/run-carry-cli.js +127 -124
- package/dist/commands/run-chain-cli.js +116 -93
- package/dist/commands/run-cut-cli.js +124 -119
- package/dist/commands/run-ending-cli.js +19 -22
- package/dist/commands/run-entry-cli.js +183 -180
- package/dist/commands/run-event-cli.js +5 -5
- package/dist/commands/run-handoff-cli.js +52 -28
- package/dist/commands/run-handoff-lanes-cli.js +15 -15
- package/dist/commands/run-hold-main.js +64 -62
- package/dist/commands/run-liveness-cli.js +11 -11
- package/dist/commands/run-merge-main.js +119 -116
- package/dist/commands/run-next-cli.js +87 -86
- package/dist/commands/run-park-cli.js +111 -92
- package/dist/commands/run-pause-cli.js +147 -133
- package/dist/commands/run-pickup-cli.js +13 -13
- package/dist/commands/run-prep-main.js +83 -82
- package/dist/commands/run-prime-cli.js +107 -87
- package/dist/commands/run-progress-main.js +123 -107
- package/dist/commands/run-report-cli.js +25 -24
- package/dist/commands/run-review-cli.js +168 -149
- package/dist/commands/run-ship-cli.js +208 -203
- package/dist/commands/run-ship-evidence-cli.js +38 -37
- package/dist/commands/run-ship-wait-main.js +40 -37
- package/dist/commands/run-split-cli.js +127 -125
- package/dist/commands/run-stale-main.js +36 -35
- package/dist/commands/run-status-cli.js +16 -15
- package/dist/commands/run-step-cli.js +173 -164
- package/dist/commands/run-tail-cli.js +1 -1
- package/dist/commands/run-tidy-main.js +30 -29
- package/dist/commands/run-wake-main.js +137 -119
- package/dist/commands/run-watcher-guard-cli.js +30 -29
- package/dist/commands/secretlint-scan.js +2 -2
- package/dist/commands/selfcheck-cli.js +27 -26
- package/dist/commands/session-language-main.js +48 -28
- package/dist/commands/sonar-hotspots-cli.js +3 -3
- package/dist/commands/split-assess-cli.js +24 -23
- package/dist/commands/split-child-recover-cli.js +13 -12
- package/dist/commands/start.js +37 -35
- package/dist/commands/stash-pop-main.js +3 -3
- package/dist/commands/stash-push-main.js +3 -3
- package/dist/commands/stop-guard.js +144 -143
- package/dist/commands/sync-main.js +11 -10
- package/dist/commands/telegram-test-main.js +5 -5
- package/dist/commands/test-declared.js +9 -8
- package/dist/commands/test-e2e-guard.js +23 -22
- package/dist/commands/test-pinned-main.js +26 -25
- package/dist/commands/test-reach-cli.js +15 -14
- package/dist/commands/test-red-main.js +5 -5
- package/dist/commands/{test-related-ZT2AO62I.js → test-related-ZCNC46MS.js} +31 -31
- package/dist/commands/test-related-main.js +51 -50
- package/dist/commands/test-unit-guard-main.js +9 -8
- package/dist/commands/time-cli.js +24 -27
- package/dist/commands/time-density-cli.js +8 -9
- package/dist/commands/tree-status-cli.js +4 -4
- package/dist/commands/type-check-command.js +8 -7
- package/dist/commands/ui-shot-cli.js +4 -4
- package/dist/commands/uninstall.js +20 -19
- package/dist/commands/unused-members-cli.js +9 -8
- package/dist/commands/upstream-interrupt-main.js +115 -111
- package/dist/commands/verification-gate.js +46 -46
- package/dist/commands/version-check.js +5 -5
- package/dist/hooks/{chunk-LWD43Z3C.js → chunk-5CUXGQT6.js} +1667 -107
- package/dist/hooks/{chunk-4YXV2REH.js → chunk-5R5YFQR5.js} +8 -8
- package/dist/hooks/{chunk-LKQBEKBI.js → chunk-6RLY27FT.js} +8 -8
- package/dist/hooks/{chunk-CICKRHTB.js → chunk-AO4TOV4V.js} +119 -2679
- package/dist/hooks/{chunk-NUPVO7RI.js → chunk-G5WSPYJ6.js} +4296 -1687
- package/dist/hooks/{chunk-UU4PTPEZ.js → chunk-HHIVWGHX.js} +250 -125
- package/dist/hooks/{chunk-P7BPAU26.js → chunk-IURJANNZ.js} +2 -2
- package/dist/hooks/{chunk-6RR6JZSB.js → chunk-OV22V63P.js} +357 -1744
- package/dist/hooks/{chunk-RQXECHAS.js → chunk-SXABK6UV.js} +57 -45
- package/dist/hooks/codex-hook-adapter.js +11 -11
- package/dist/hooks/daemon.js +1053 -690
- package/dist/hooks/format-edited.js +5 -5
- package/dist/hooks/inputs.json +542 -527
- package/dist/hooks/pretool-guard.js +7 -7
- package/dist/hooks/session-lang.js +293 -16
- package/dist/hooks/stop-guard.js +225 -48
- package/dist/inputs.json +65 -65
- package/dist/josh.js +73 -19
- package/dist/self-sync-guard/index.js +18 -1
- package/dist/version/index.js +18 -1
- package/package.json +3 -3
- package/pnpm-workspace.yaml +5 -13
- package/prompts/collaboration-workflow/issue-template.en.md +56 -52
- package/scripts/agent/agent-argv.ts +20 -6
- package/scripts/agent/agent-phase-profile.ts +89 -0
- package/scripts/agent/agent-role-profile.ts +3 -71
- package/scripts/agent/agent-ship-cap.ts +44 -0
- package/scripts/agent/agent-worker-profile.ts +154 -0
- package/scripts/agent/claude-agent-argv.ts +1 -1
- package/scripts/agent/lane-instructions.ts +29 -3
- package/scripts/auto-ok/auto-ok-judge-cli.ts +3 -0
- package/scripts/auto-ok/auto-ok-judge-write.ts +2 -1
- package/scripts/auto-ok/auto-ok-judge.ts +4 -2
- package/scripts/backlog/backlog-drive-escalate.ts +115 -0
- package/scripts/backlog/backlog-drive-stalled-retry.ts +48 -10
- package/scripts/document/document-scan.ts +35 -1
- package/scripts/gh/git-pr-checks-failed.ts +24 -0
- package/scripts/hooks/implementation-shell-deny-expansion.ts +20 -0
- package/scripts/hooks/implementation-shell-deny-git.ts +128 -0
- package/scripts/hooks/implementation-shell-deny.ts +14 -138
- package/scripts/hooks/implementation-shell.ts +28 -5
- package/scripts/hooks/step-zero-notice.ts +9 -6
- package/scripts/hooks/stop-actions.ts +4 -2
- package/scripts/init/init-logic-workspace.ts +1 -1
- package/scripts/issue/issue-auto-ok.ts +43 -4
- package/scripts/issue/issue-body-keys.ts +4 -0
- package/scripts/issue/issue-comment-cli.ts +15 -2
- package/scripts/issue/issue-evidence-exit.ts +6 -2
- package/scripts/issue/issue-file-cli.ts +5 -1
- package/scripts/issue/issue-file-pass.ts +14 -7
- package/scripts/issue/issue-file-worker.ts +95 -0
- package/scripts/issue/issue-file.ts +1 -1
- package/scripts/issue/issue-outcome.ts +107 -0
- package/scripts/issue/issue-read.ts +12 -7
- package/scripts/issue/issue-watch-diff.ts +2 -1
- package/scripts/josh/josh-commands-ai.ts +2 -2
- package/scripts/josh/josh-commands-development.ts +21 -5
- package/scripts/josh/josh-commands-issue-write.ts +3 -2
- package/scripts/josh/josh-commands-lint.ts +1 -1
- package/scripts/josh/josh-commands-project.ts +7 -2
- package/scripts/josh/josh-commands-run.ts +10 -2
- package/scripts/josh/josh-commands-workflow.ts +5 -0
- package/scripts/josh/session-language-cli.ts +1 -1
- package/scripts/lane/lane-breakdown-cli.ts +14 -4
- package/scripts/lane/lane-breakdown-text.ts +7 -0
- package/scripts/lane/lane-breakdown.ts +21 -1
- package/scripts/lane/lane-dispatch-prepare.ts +83 -0
- package/scripts/lane/lane-dispatch.ts +3 -53
- package/scripts/lane/lane-elapsed-time.ts +118 -0
- package/scripts/lane/lane-ledger-schema-ship.ts +4 -1
- package/scripts/lane/lane-net-time.ts +35 -7
- package/scripts/lane/lane-overrun.ts +1 -1
- package/scripts/lane/lane-plan-cli.ts +7 -3
- package/scripts/lane/lane-plan-estimate.ts +57 -0
- package/scripts/lane/lane-plan-size.ts +11 -20
- package/scripts/lane/lane-plan.ts +1 -0
- package/scripts/lane/lane-relaunch.ts +9 -4
- package/scripts/lane/lane-stage-budget.ts +6 -1
- package/scripts/lane/lane-stage-events.ts +103 -0
- package/scripts/lane/lane-stats-tables.ts +3 -0
- package/scripts/lane/lane-stop-check-stats.ts +117 -0
- package/scripts/lane/lane-stop-stats.ts +30 -6
- package/scripts/lane/lane-why-causes.ts +3 -11
- package/scripts/lane/openai-lane-supervisor-owner.ts +12 -0
- package/scripts/lane/openai-lane-supervisor.ts +36 -1
- package/scripts/lib/home-tilde.ts +24 -0
- package/scripts/lib/package-manifest.ts +27 -1
- package/scripts/observations/observation-ledger-archive.ts +180 -0
- package/scripts/observations/observation-ledger-home.ts +1 -0
- package/scripts/observations/observation-ledger.ts +5 -0
- package/scripts/observations/observations-flush-transaction.ts +358 -0
- package/scripts/observations/observations-flush.ts +72 -172
- package/scripts/plan/plan-scaffold-cli.ts +17 -6
- package/scripts/plan/plan-scaffold.ts +11 -0
- package/scripts/release/github-release-notes.ts +24 -0
- package/scripts/release/github-release-runs.ts +32 -6
- package/scripts/release/github-release.ts +10 -2
- package/scripts/release/release-progress.ts +22 -10
- package/scripts/release/release-publish-run.ts +39 -6
- package/scripts/repo/repository-labels.ts +23 -11
- package/scripts/review/review-comment-round.ts +10 -5
- package/scripts/rules/broad-investigation-shell.ts +2 -2
- package/scripts/rules/codex-prompt.ts +63 -0
- package/scripts/rules/direct-issue-comment.ts +62 -2
- package/scripts/rules/direct-issue-read.ts +55 -2
- package/scripts/rules/guard-remedy.ts +10 -4
- package/scripts/rules/issue-citation.ts +20 -9
- package/scripts/rules/last-prompt.ts +8 -4
- package/scripts/rules/rule-value-cli.ts +85 -4
- package/scripts/rules/rule-value-trend.ts +108 -0
- package/scripts/rules/shell-redirects.ts +19 -7
- package/scripts/rules/shell-segments.ts +145 -20
- package/scripts/rules/shell-tokens.ts +66 -0
- package/scripts/rules/standalone-gh-call.ts +63 -0
- package/scripts/rules/unasked-filing.ts +12 -4
- package/scripts/run/board/run-board-closed.ts +10 -1
- package/scripts/run/board/run-board-decision-read.ts +52 -12
- package/scripts/run/board/run-board-decision.ts +5 -0
- package/scripts/run/board/run-board-ending-reason.ts +21 -7
- package/scripts/run/board/run-board-github.ts +8 -1
- package/scripts/run/board/run-board-header.ts +4 -5
- package/scripts/run/board/run-board-layout.ts +5 -3
- package/scripts/run/board/run-board-link.ts +2 -0
- package/scripts/run/board/run-board-operation.ts +6 -2
- package/scripts/run/board/run-board-pause-fixture.json +12 -0
- package/scripts/run/board/run-board-pause.ts +87 -0
- package/scripts/run/board/run-board-plan-shared.ts +2 -0
- package/scripts/run/board/run-board-read.ts +7 -1
- package/scripts/run/board/run-board-render-condition.ts +10 -1
- package/scripts/run/board/run-board-render-title.ts +7 -0
- package/scripts/run/board/run-board-roots.ts +25 -2
- package/scripts/run/board/run-board-settle.ts +16 -2
- package/scripts/run/board/run-board-setup.ts +13 -7
- package/scripts/run/board/run-board-snapshot.ts +4 -0
- package/scripts/run/board/run-board-status.ts +13 -1
- package/scripts/run/board/run-board-tick.ts +7 -1
- package/scripts/run/cut/run-cut-cli.ts +2 -1
- package/scripts/run/park/run-park-cli.ts +13 -1
- package/scripts/run/park/run-park-escalate.ts +102 -0
- package/scripts/run/park/run-stalled.ts +29 -7
- package/scripts/run/review/run-review-early-push.ts +6 -6
- package/scripts/run/ship/run-ship-stop-cause.ts +12 -1
- package/scripts/split/split-assess.ts +14 -5
- package/scripts/test/test-related-touched.ts +21 -3
- package/scripts/test/test-related.ts +1 -1
- package/dist/commands/chunk-6WEVLIZE.js +0 -29
- package/dist/commands/chunk-E2ZCUKHT.js +0 -274
- package/dist/commands/chunk-NMLCPYBN.js +0 -134
- package/dist/commands/chunk-QEIO2ZNQ.js +0 -324
- package/dist/commands/chunk-QWX7EBC6.js +0 -112
- package/dist/commands/chunk-RQRLW4XK.js +0 -20
- package/dist/commands/chunk-UCQJDYE3.js +0 -21
- package/dist/commands/chunk-W4YH2DF3.js +0 -58
- package/dist/commands/{chunk-LRA3PXHS.js → chunk-ENKFCOVY.js} +3 -3
- package/dist/commands/{chunk-RUWV4INF.js → chunk-HQGNXR6I.js} +3 -3
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
import {
|
|
2
2
|
run_board_quota_read
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-GY4DMCKS.js";
|
|
4
4
|
import {
|
|
5
5
|
lane_held_stats
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-F6IQHZYY.js";
|
|
7
7
|
import {
|
|
8
8
|
run_event_step
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-7KKUFLH5.js";
|
|
10
10
|
import {
|
|
11
11
|
lane_investigation_switch,
|
|
12
12
|
run_event_overrun
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-XXN2EZBY.js";
|
|
14
14
|
import {
|
|
15
|
-
git_gh_issue_alias_graphql,
|
|
16
15
|
run_board_closed
|
|
17
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-RKIAX4DZ.js";
|
|
18
17
|
import {
|
|
19
18
|
lane_withdraw
|
|
20
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-4NRSFLG7.js";
|
|
21
20
|
import {
|
|
22
21
|
process_directories
|
|
23
22
|
} from "./chunk-MXC4IBZ7.js";
|
|
@@ -27,31 +26,37 @@ import {
|
|
|
27
26
|
issue_human_stops,
|
|
28
27
|
run_board_labels,
|
|
29
28
|
run_board_machine
|
|
30
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-4DN4XVPL.js";
|
|
31
30
|
import {
|
|
32
31
|
gh_core_rate_limit,
|
|
33
32
|
run_merge_usage_limit
|
|
34
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-FHFWNNUC.js";
|
|
35
34
|
import {
|
|
36
35
|
run_park_body
|
|
37
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-UREXZJDB.js";
|
|
38
37
|
import {
|
|
39
38
|
backlog_plan,
|
|
40
39
|
backlog_plan_read,
|
|
41
40
|
backlog_waves
|
|
42
|
-
} from "./chunk-
|
|
43
|
-
import {
|
|
44
|
-
run_stalled
|
|
45
|
-
} from "./chunk-B33BTNB4.js";
|
|
41
|
+
} from "./chunk-4Q64PG46.js";
|
|
46
42
|
import {
|
|
47
43
|
run_event_filed
|
|
48
44
|
} from "./chunk-PYOK73QE.js";
|
|
45
|
+
import {
|
|
46
|
+
issue_outcome
|
|
47
|
+
} from "./chunk-5CG3XU3O.js";
|
|
49
48
|
import {
|
|
50
49
|
ts_entry_loader
|
|
51
50
|
} from "./chunk-VHRNXWVP.js";
|
|
51
|
+
import {
|
|
52
|
+
git_gh_issue_alias_graphql
|
|
53
|
+
} from "./chunk-HWEZRNPL.js";
|
|
54
|
+
import {
|
|
55
|
+
home_tilde
|
|
56
|
+
} from "./chunk-D5OHVIPM.js";
|
|
52
57
|
import {
|
|
53
58
|
run_stranded_detect
|
|
54
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-G5KSL2Q2.js";
|
|
55
60
|
import {
|
|
56
61
|
run_wake
|
|
57
62
|
} from "./chunk-6Q3XUCLM.js";
|
|
@@ -61,35 +66,35 @@ import {
|
|
|
61
66
|
import {
|
|
62
67
|
backlog_hold_text,
|
|
63
68
|
backlog_ready
|
|
64
|
-
} from "./chunk-
|
|
69
|
+
} from "./chunk-M4UV3BEV.js";
|
|
65
70
|
import {
|
|
66
71
|
backlog_next_shared
|
|
67
|
-
} from "./chunk-
|
|
72
|
+
} from "./chunk-ELY76WAR.js";
|
|
68
73
|
import {
|
|
69
74
|
epic_classify,
|
|
70
75
|
epic_solo
|
|
71
|
-
} from "./chunk-
|
|
76
|
+
} from "./chunk-TYNH2R66.js";
|
|
72
77
|
import {
|
|
73
78
|
epic_triage
|
|
74
|
-
} from "./chunk-
|
|
79
|
+
} from "./chunk-VQRT32JB.js";
|
|
75
80
|
import {
|
|
76
81
|
auto_ok_cli
|
|
77
|
-
} from "./chunk-
|
|
82
|
+
} from "./chunk-FMZWRDKH.js";
|
|
78
83
|
import {
|
|
79
84
|
issue_not_before
|
|
80
|
-
} from "./chunk-
|
|
85
|
+
} from "./chunk-FKZ5E4JD.js";
|
|
81
86
|
import {
|
|
82
87
|
issue_sample_gate
|
|
83
|
-
} from "./chunk-
|
|
88
|
+
} from "./chunk-CQUZ6TNQ.js";
|
|
84
89
|
import {
|
|
85
90
|
epic_issue
|
|
86
|
-
} from "./chunk-
|
|
91
|
+
} from "./chunk-IAD4WLLI.js";
|
|
87
92
|
import {
|
|
88
93
|
git_closes_keyword
|
|
89
94
|
} from "./chunk-J3TKZLHA.js";
|
|
90
95
|
import {
|
|
91
96
|
lane_stage_budget
|
|
92
|
-
} from "./chunk-
|
|
97
|
+
} from "./chunk-AXXEMVRJ.js";
|
|
93
98
|
import {
|
|
94
99
|
telegram_notify
|
|
95
100
|
} from "./chunk-WJ4NEDNI.js";
|
|
@@ -101,19 +106,19 @@ import {
|
|
|
101
106
|
} from "./chunk-3RIQ36LH.js";
|
|
102
107
|
import {
|
|
103
108
|
run_event_retry
|
|
104
|
-
} from "./chunk-
|
|
109
|
+
} from "./chunk-TFLHYC2F.js";
|
|
105
110
|
import {
|
|
106
111
|
lane_yield
|
|
107
|
-
} from "./chunk-
|
|
112
|
+
} from "./chunk-EGIHAEMT.js";
|
|
108
113
|
import {
|
|
109
114
|
lane_stage_stats
|
|
110
|
-
} from "./chunk-
|
|
115
|
+
} from "./chunk-IBAYXCMU.js";
|
|
111
116
|
import {
|
|
112
117
|
usage_state_path
|
|
113
118
|
} from "./chunk-K2WVYHCP.js";
|
|
114
119
|
import {
|
|
115
120
|
run_progress_read
|
|
116
|
-
} from "./chunk-
|
|
121
|
+
} from "./chunk-4WR2LEZL.js";
|
|
117
122
|
import {
|
|
118
123
|
issue_run_hold
|
|
119
124
|
} from "./chunk-QX2R6UJG.js";
|
|
@@ -122,40 +127,43 @@ import {
|
|
|
122
127
|
} from "./chunk-23GH6B3D.js";
|
|
123
128
|
import {
|
|
124
129
|
backlog_overlap
|
|
125
|
-
} from "./chunk-
|
|
130
|
+
} from "./chunk-B7ZNIEDV.js";
|
|
126
131
|
import {
|
|
127
132
|
issue_read
|
|
128
|
-
} from "./chunk-
|
|
133
|
+
} from "./chunk-2BB5ZR2F.js";
|
|
129
134
|
import {
|
|
130
135
|
run_progress
|
|
131
136
|
} from "./chunk-RGDFWJPZ.js";
|
|
132
|
-
import {
|
|
133
|
-
run_event_checks
|
|
134
|
-
} from "./chunk-E2ZCUKHT.js";
|
|
135
137
|
import {
|
|
136
138
|
markdown_section
|
|
137
|
-
} from "./chunk-
|
|
139
|
+
} from "./chunk-JZK33TA5.js";
|
|
140
|
+
import {
|
|
141
|
+
backlogrun_launch
|
|
142
|
+
} from "./chunk-2EZTYLO4.js";
|
|
138
143
|
import {
|
|
139
144
|
lane_stats
|
|
140
|
-
} from "./chunk-
|
|
145
|
+
} from "./chunk-XXC32PVL.js";
|
|
141
146
|
import {
|
|
142
147
|
lane_await
|
|
143
|
-
} from "./chunk-
|
|
148
|
+
} from "./chunk-IB5TT73I.js";
|
|
144
149
|
import {
|
|
145
150
|
lane_ledger
|
|
146
|
-
} from "./chunk-
|
|
147
|
-
import {
|
|
148
|
-
backlogrun_launch
|
|
149
|
-
} from "./chunk-TVJE67O2.js";
|
|
151
|
+
} from "./chunk-ZNR75OXP.js";
|
|
150
152
|
import {
|
|
151
153
|
run_event_setup
|
|
152
|
-
} from "./chunk-
|
|
154
|
+
} from "./chunk-I2KCGKJI.js";
|
|
153
155
|
import {
|
|
154
156
|
run_board_usage_rusage
|
|
155
157
|
} from "./chunk-FCINBCKB.js";
|
|
158
|
+
import {
|
|
159
|
+
run_stalled
|
|
160
|
+
} from "./chunk-S4M6UWR2.js";
|
|
161
|
+
import {
|
|
162
|
+
run_event_checks
|
|
163
|
+
} from "./chunk-OJ65BZBV.js";
|
|
156
164
|
import {
|
|
157
165
|
transcript_tail
|
|
158
|
-
} from "./chunk-
|
|
166
|
+
} from "./chunk-EMTZAGT5.js";
|
|
159
167
|
import {
|
|
160
168
|
core_budget
|
|
161
169
|
} from "./chunk-TCBUX52E.js";
|
|
@@ -165,13 +173,10 @@ import {
|
|
|
165
173
|
import {
|
|
166
174
|
lane_process_table,
|
|
167
175
|
lane_registry
|
|
168
|
-
} from "./chunk-
|
|
176
|
+
} from "./chunk-452HWOJ7.js";
|
|
169
177
|
import {
|
|
170
178
|
run_liveness
|
|
171
|
-
} from "./chunk-
|
|
172
|
-
import {
|
|
173
|
-
run_hold
|
|
174
|
-
} from "./chunk-P4CWLRT2.js";
|
|
179
|
+
} from "./chunk-3AEDZZNL.js";
|
|
175
180
|
import {
|
|
176
181
|
COMMENTS,
|
|
177
182
|
ISSUE_FIELDS,
|
|
@@ -180,10 +185,13 @@ import {
|
|
|
180
185
|
git_gh_issue_read,
|
|
181
186
|
git_gh_issue_rest,
|
|
182
187
|
issue_fields_schema
|
|
183
|
-
} from "./chunk-
|
|
188
|
+
} from "./chunk-ENKFCOVY.js";
|
|
184
189
|
import {
|
|
185
190
|
git_gh_transport
|
|
186
191
|
} from "./chunk-TVZXG4Y4.js";
|
|
192
|
+
import {
|
|
193
|
+
run_hold
|
|
194
|
+
} from "./chunk-X3TNPALI.js";
|
|
187
195
|
import {
|
|
188
196
|
git_gh_etag_read
|
|
189
197
|
} from "./chunk-EWVR5AEX.js";
|
|
@@ -196,14 +204,14 @@ import {
|
|
|
196
204
|
import {
|
|
197
205
|
run_board_lane_time,
|
|
198
206
|
run_event_scope
|
|
199
|
-
} from "./chunk-
|
|
200
|
-
import {
|
|
201
|
-
figure_format,
|
|
202
|
-
lane_state
|
|
203
|
-
} from "./chunk-5Y7QQYTU.js";
|
|
207
|
+
} from "./chunk-OKZWEVR4.js";
|
|
204
208
|
import {
|
|
205
209
|
run_event_stream
|
|
206
210
|
} from "./chunk-NSAVEXVR.js";
|
|
211
|
+
import {
|
|
212
|
+
figure_format,
|
|
213
|
+
lane_state
|
|
214
|
+
} from "./chunk-ZZXO6TFH.js";
|
|
207
215
|
import {
|
|
208
216
|
ALREADY_DONE_LABEL,
|
|
209
217
|
BREAKING_CHANGE_LABEL,
|
|
@@ -323,6 +331,7 @@ var SNAPSHOT_PREFIX = "josh-run-board-snapshot-";
|
|
|
323
331
|
var NO_KNOWN = { titles: /* @__PURE__ */ new Map(), labels: /* @__PURE__ */ new Map() };
|
|
324
332
|
var label_names_schema = z.array(z.string());
|
|
325
333
|
var closed_issue_schema = z.object({
|
|
334
|
+
outcome: z.object({ summary: issue_outcome.summary_schema, url: issue_outcome.url_schema }).optional(),
|
|
326
335
|
title: z.string(),
|
|
327
336
|
labels: label_names_schema,
|
|
328
337
|
closed_ms: z.number().optional(),
|
|
@@ -439,6 +448,55 @@ function newest_of(events) {
|
|
|
439
448
|
}
|
|
440
449
|
var run_board_checks = { newest_of };
|
|
441
450
|
|
|
451
|
+
// scripts/run/board/run-board-pause.ts
|
|
452
|
+
import { z as z2 } from "zod";
|
|
453
|
+
var record_schema = z2.object({
|
|
454
|
+
summary: issue_outcome.summary_schema,
|
|
455
|
+
url: z2.string().regex(/^https:\/\/github\.com\/[^/]+\/[^/]+\/issues\/\d+(?:#issuecomment-\d+)?$(?![\s\S])/u).optional(),
|
|
456
|
+
at_ms: z2.number()
|
|
457
|
+
});
|
|
458
|
+
var FALLBACK = "Reason unavailable: inspect issue";
|
|
459
|
+
function is_stop(comment) {
|
|
460
|
+
return comment.is_trusted === true && run_park_body.summary_of(comment.body) !== void 0;
|
|
461
|
+
}
|
|
462
|
+
function outcome_for(comments, latest) {
|
|
463
|
+
if (latest === void 0) return void 0;
|
|
464
|
+
const candidates = comments.filter((comment) => {
|
|
465
|
+
const outcome = issue_outcome.from_comments(comments, [comment]);
|
|
466
|
+
return comment === latest || outcome?.url === latest.html_url;
|
|
467
|
+
});
|
|
468
|
+
return issue_outcome.from_comments(comments, candidates);
|
|
469
|
+
}
|
|
470
|
+
function at_of(comment) {
|
|
471
|
+
const at_ms = Date.parse(comment?.created_at ?? "");
|
|
472
|
+
return Number.isFinite(at_ms) ? at_ms : 0;
|
|
473
|
+
}
|
|
474
|
+
function from_comments(comments, issue_url2) {
|
|
475
|
+
const latest = comments.findLast((comment) => is_stop(comment));
|
|
476
|
+
const url = issue_outcome.url_schema.safeParse(latest?.html_url).data;
|
|
477
|
+
const outcome = outcome_for(comments, latest);
|
|
478
|
+
return { summary: FALLBACK, url: url ?? issue_url2, ...outcome, at_ms: at_of(latest) };
|
|
479
|
+
}
|
|
480
|
+
function launch_of(status) {
|
|
481
|
+
return status?.launched_ms ?? status?.started_ms ?? 0;
|
|
482
|
+
}
|
|
483
|
+
function is_unread(record) {
|
|
484
|
+
return record?.at_ms === 0 && record.url === void 0;
|
|
485
|
+
}
|
|
486
|
+
function record_of(number, read5, status) {
|
|
487
|
+
const record = read5.pause_reasons?.get(number);
|
|
488
|
+
return status === void 0 && is_unread(record) ? void 0 : record;
|
|
489
|
+
}
|
|
490
|
+
function reason_of(number, read5, status) {
|
|
491
|
+
const record = record_of(number, read5, status);
|
|
492
|
+
if (record === void 0) return void 0;
|
|
493
|
+
if (record.at_ms < launch_of(status)) {
|
|
494
|
+
return { tail: FALLBACK, evidence_url: record.url?.split("#", 1)[0] };
|
|
495
|
+
}
|
|
496
|
+
return { tail: record.summary, evidence_url: record.url };
|
|
497
|
+
}
|
|
498
|
+
var run_board_pause = { FALLBACK, from_comments, reason_of, record_schema };
|
|
499
|
+
|
|
442
500
|
// scripts/run/board/run-board-fit.ts
|
|
443
501
|
import { stripVTControlCharacters } from "node:util";
|
|
444
502
|
import string_width from "string-width";
|
|
@@ -546,11 +604,11 @@ function compose(parts, cut2) {
|
|
|
546
604
|
...cut2.footer ? [] : parts.footer
|
|
547
605
|
];
|
|
548
606
|
}
|
|
549
|
-
function
|
|
607
|
+
function at_of2(entry) {
|
|
550
608
|
return entry.line.row?.at_ms ?? -Infinity;
|
|
551
609
|
}
|
|
552
610
|
function oldest_first(left, right2) {
|
|
553
|
-
const [left_at, right_at] = [
|
|
611
|
+
const [left_at, right_at] = [at_of2(left), at_of2(right2)];
|
|
554
612
|
if (left_at === right_at) return right2.index - left.index;
|
|
555
613
|
return left_at < right_at ? -1 : 1;
|
|
556
614
|
}
|
|
@@ -627,7 +685,11 @@ var TITLE_FLOOR = 8;
|
|
|
627
685
|
var ELLIPSIS = "\u2026";
|
|
628
686
|
var WHOLE = { title_limit: TITLE_LIMIT, reason_cut: 0 };
|
|
629
687
|
var WHOLE_TAIL_STATES = /* @__PURE__ */ new Set(["stopped", "parked", "human"]);
|
|
688
|
+
function has_short_reason(reason) {
|
|
689
|
+
return reason?.evidence_url !== void 0 || reason?.tail === run_board_pause.FALLBACK;
|
|
690
|
+
}
|
|
630
691
|
function keeps_tail(row) {
|
|
692
|
+
if (has_short_reason(row.reason)) return false;
|
|
631
693
|
return WHOLE_TAIL_STATES.has(row.state) || row.reason?.icon === run_board_labels.STATE_ICONS.human;
|
|
632
694
|
}
|
|
633
695
|
function title_of(title = "", limit = TITLE_LIMIT) {
|
|
@@ -724,12 +786,12 @@ function park_row_reason(issue, reason, is_backlog_live2, waits = []) {
|
|
|
724
786
|
is_backlog_live2
|
|
725
787
|
);
|
|
726
788
|
}
|
|
727
|
-
function
|
|
789
|
+
function reason_of2(event) {
|
|
728
790
|
if (event.kind === KIND.PARK) return park_reason(event) || void 0;
|
|
729
791
|
return event.kind === KIND.WITHDRAW ? withdraw_reason(event) || void 0 : void 0;
|
|
730
792
|
}
|
|
731
793
|
function recorded_of(event) {
|
|
732
|
-
const reason =
|
|
794
|
+
const reason = reason_of2(event);
|
|
733
795
|
const { elapsed_ms: elapsed_ms2 } = event;
|
|
734
796
|
return {
|
|
735
797
|
...reason !== void 0 && { reason },
|
|
@@ -745,14 +807,14 @@ function is_stalled(status, labels = []) {
|
|
|
745
807
|
return STALLED_STATES.has(status.state) && has_label_name(labels, RUN_STALLED_LABEL);
|
|
746
808
|
}
|
|
747
809
|
var FINISHED_ENDINGS = {
|
|
748
|
-
done:
|
|
749
|
-
withdrawn:
|
|
750
|
-
already_done:
|
|
810
|
+
done: "Closed without a merged PR",
|
|
811
|
+
withdrawn: "Run withdrawn",
|
|
812
|
+
already_done: "Closed with verified evidence"
|
|
751
813
|
};
|
|
752
814
|
function tail_of(status) {
|
|
753
815
|
const ending = FINISHED_ENDINGS[status.state];
|
|
754
816
|
if (ending === void 0) return status.reason;
|
|
755
|
-
return
|
|
817
|
+
return status.outcome?.summary ?? ending;
|
|
756
818
|
}
|
|
757
819
|
function stop_reason_of(status) {
|
|
758
820
|
if (status.stop_reason === void 0) return void 0;
|
|
@@ -763,19 +825,25 @@ function stop_row_reason(status) {
|
|
|
763
825
|
const reason = stop_reason_of(status);
|
|
764
826
|
return reason === void 0 ? {} : { reason };
|
|
765
827
|
}
|
|
766
|
-
function
|
|
828
|
+
function ending_row_reason(number, status, read5) {
|
|
767
829
|
const reason = tail_of(status);
|
|
768
830
|
const waits = read5.waits?.get(number);
|
|
769
831
|
if (reason !== void 0) {
|
|
770
832
|
const tail = park_row_reason(number, reason, read5.is_backlog_live === true, waits);
|
|
771
|
-
return {
|
|
833
|
+
return {
|
|
834
|
+
reason: { tail, ...status.outcome !== void 0 && { evidence_url: status.outcome.url } }
|
|
835
|
+
};
|
|
772
836
|
}
|
|
773
837
|
return is_stalled(status, read5.labels.get(number)) ? { reason: stalled_reason(number, read5, waits) } : stop_row_reason(status);
|
|
774
838
|
}
|
|
839
|
+
function row_reason(number, status, read5) {
|
|
840
|
+
const pause = status.state === "parked" ? run_board_pause.reason_of(number, read5, status) : void 0;
|
|
841
|
+
return pause === void 0 ? ending_row_reason(number, status, read5) : { reason: pause };
|
|
842
|
+
}
|
|
775
843
|
var run_board_ending_reason = {
|
|
776
844
|
park_reason,
|
|
777
845
|
park_row_reason,
|
|
778
|
-
reason_of,
|
|
846
|
+
reason_of: reason_of2,
|
|
779
847
|
recorded_of,
|
|
780
848
|
row_reason,
|
|
781
849
|
stalled_reason
|
|
@@ -965,9 +1033,18 @@ function kept_of(previous) {
|
|
|
965
1033
|
};
|
|
966
1034
|
}
|
|
967
1035
|
function settled_as(previous, state) {
|
|
968
|
-
return {
|
|
1036
|
+
return {
|
|
1037
|
+
state,
|
|
1038
|
+
started_ms: previous?.started_ms,
|
|
1039
|
+
...kept_of(previous),
|
|
1040
|
+
...previous?.outcome !== void 0 && { outcome: previous.outcome }
|
|
1041
|
+
};
|
|
1042
|
+
}
|
|
1043
|
+
var OUTCOME_STATES = /* @__PURE__ */ new Set(["done", "already_done", "withdrawn"]);
|
|
1044
|
+
function with_outcome(status, outcome) {
|
|
1045
|
+
return outcome === void 0 || !OUTCOME_STATES.has(status.state) ? status : { ...status, outcome };
|
|
969
1046
|
}
|
|
970
|
-
var run_board_settle = { relaunch_of, settled_as };
|
|
1047
|
+
var run_board_settle = { relaunch_of, settled_as, with_outcome };
|
|
971
1048
|
|
|
972
1049
|
// scripts/run/board/run-board-lane-stop.ts
|
|
973
1050
|
var RELEASE_REASON = "run:release";
|
|
@@ -1016,14 +1093,15 @@ var run_board_lane_stop = { RELEASE_REASON, label_settled, label_stop, lane_stat
|
|
|
1016
1093
|
var KIND5 = run_event_stream.EVENT_KIND;
|
|
1017
1094
|
var { STAGE: STAGE2 } = run_event_setup;
|
|
1018
1095
|
var NO_SETUP = { setup: void 0, setup_ms: void 0 };
|
|
1019
|
-
var SESSION_STAGES = /* @__PURE__ */ new Set([
|
|
1020
|
-
|
|
1021
|
-
STAGE2.SESSION,
|
|
1022
|
-
STAGE2.RETROSPECTIVE
|
|
1023
|
-
]);
|
|
1096
|
+
var SESSION_STAGES = /* @__PURE__ */ new Set([STAGE2.JUDGING, STAGE2.SESSION]);
|
|
1097
|
+
var RETAINED_STAGES = /* @__PURE__ */ new Set([...SESSION_STAGES, STAGE2.RETROSPECTIVE]);
|
|
1024
1098
|
function is_setup(event) {
|
|
1025
1099
|
return event.kind === KIND5.SETUP;
|
|
1026
1100
|
}
|
|
1101
|
+
function is_working2(setup, is_session_active) {
|
|
1102
|
+
if (setup === void 0) return false;
|
|
1103
|
+
return !SESSION_STAGES.has(setup) || is_session_active !== false;
|
|
1104
|
+
}
|
|
1027
1105
|
function is_refusal(event) {
|
|
1028
1106
|
return is_setup(event) && event.text.startsWith(STAGE2.NO_CHILD);
|
|
1029
1107
|
}
|
|
@@ -1039,7 +1117,7 @@ function is_opening(events, stage) {
|
|
|
1039
1117
|
return position === void 0 || position.pos < stage.pos;
|
|
1040
1118
|
}
|
|
1041
1119
|
function is_standing(events, stage) {
|
|
1042
|
-
if (!has_started(events) ||
|
|
1120
|
+
if (!has_started(events) || RETAINED_STAGES.has(stage.text)) return true;
|
|
1043
1121
|
return is_opening(events, stage);
|
|
1044
1122
|
}
|
|
1045
1123
|
function read(events) {
|
|
@@ -1065,7 +1143,7 @@ function lane_stage(events, issue) {
|
|
|
1065
1143
|
if (step === void 0 || !is_lane_stage(step, issue)) return void 0;
|
|
1066
1144
|
return { text: step.text, at_ms: Date.parse(step.at) };
|
|
1067
1145
|
}
|
|
1068
|
-
var run_board_setup = { is_refusal, lane_stage, read };
|
|
1146
|
+
var run_board_setup = { is_refusal, is_working: is_working2, lane_stage, read };
|
|
1069
1147
|
|
|
1070
1148
|
// scripts/run/board/run-board-status.ts
|
|
1071
1149
|
var KIND6 = run_event_stream.EVENT_KIND;
|
|
@@ -1208,7 +1286,13 @@ function settled(issue, status, read5) {
|
|
|
1208
1286
|
return UNSETTLED_STATES.has(status.state) ? unsettled(issue, status, read5) : status;
|
|
1209
1287
|
}
|
|
1210
1288
|
function settle_closed(statuses, read5) {
|
|
1211
|
-
return new Map(
|
|
1289
|
+
return new Map(
|
|
1290
|
+
[...statuses].map(([issue, status]) => {
|
|
1291
|
+
const closed = read5.closed.get(issue);
|
|
1292
|
+
const outcome = closed === void 0 || is_closed_before_launch(status, closed) ? void 0 : closed.outcome;
|
|
1293
|
+
return [issue, run_board_settle.with_outcome(settled(issue, status, read5), outcome)];
|
|
1294
|
+
})
|
|
1295
|
+
);
|
|
1212
1296
|
}
|
|
1213
1297
|
function is_run_stop(event) {
|
|
1214
1298
|
return event?.kind === KIND6.STOP && run_event_scope.issue_named(event) === void 0;
|
|
@@ -1314,10 +1398,14 @@ function is_unlisted(issue, read5) {
|
|
|
1314
1398
|
const open = read5.open_numbers;
|
|
1315
1399
|
return open !== void 0 && !open.has(issue);
|
|
1316
1400
|
}
|
|
1401
|
+
function is_closed_cached(issue, read5) {
|
|
1402
|
+
const closed = read5.closed.get(issue);
|
|
1403
|
+
return closed?.is_merged === true || closed?.outcome !== void 0;
|
|
1404
|
+
}
|
|
1317
1405
|
function is_closed_candidate(issue, status, read5, is_plan_failed) {
|
|
1318
1406
|
if (ALWAYS_ASKED_STATES.has(status.state)) return true;
|
|
1319
1407
|
if (status.state === RUNNING_STATE) return is_plan_failed || is_unlisted(issue, read5);
|
|
1320
|
-
return is_unlisted(issue, read5) && !
|
|
1408
|
+
return is_unlisted(issue, read5) && !is_closed_cached(issue, read5);
|
|
1321
1409
|
}
|
|
1322
1410
|
function has_asked_since_end(state, local) {
|
|
1323
1411
|
const { closed_answered_ms } = state;
|
|
@@ -1526,21 +1614,23 @@ function comment_question(bodies) {
|
|
|
1526
1614
|
function read_question(number, read5) {
|
|
1527
1615
|
return read5.decision_questions?.get(number) ?? read5.titles.get(number) ?? "";
|
|
1528
1616
|
}
|
|
1529
|
-
function
|
|
1617
|
+
function reason_of3(number, reason, read5, status) {
|
|
1618
|
+
const pause = run_board_pause.reason_of(number, read5, status);
|
|
1619
|
+
if (pause !== void 0) return pause;
|
|
1530
1620
|
const parts = parts_of(reason);
|
|
1531
1621
|
const question = question_of(parts.question) ?? read_question(number, read5);
|
|
1532
1622
|
if (question === "") return void 0;
|
|
1533
1623
|
return { tail: `\u2192 decide: ${question}${note_of(parts.note)}` };
|
|
1534
1624
|
}
|
|
1535
1625
|
function plan_reason(number, plan) {
|
|
1536
|
-
return
|
|
1626
|
+
return reason_of3(number, void 0, { ...plan, titles: plan.context.titles });
|
|
1537
1627
|
}
|
|
1538
1628
|
function waiting_tail(reference, title, body = "") {
|
|
1539
1629
|
const detail = HUMAN_DETAIL.exec(body)?.[1];
|
|
1540
1630
|
const suffix = detail === void 0 ? "" : ` (${detail})`;
|
|
1541
1631
|
return `\u2192 decide ${reference}: ${title}${suffix}`;
|
|
1542
1632
|
}
|
|
1543
|
-
var run_board_decision = { comment_question, plan_reason, reason_of:
|
|
1633
|
+
var run_board_decision = { comment_question, plan_reason, reason_of: reason_of3, waiting_tail };
|
|
1544
1634
|
|
|
1545
1635
|
// scripts/run/board/run-board-kind.ts
|
|
1546
1636
|
var RELEASE_KINDS = [
|
|
@@ -1663,7 +1753,7 @@ function pr_reason(issue, prs) {
|
|
|
1663
1753
|
pr
|
|
1664
1754
|
};
|
|
1665
1755
|
}
|
|
1666
|
-
function
|
|
1756
|
+
function reason_of4(child, plan) {
|
|
1667
1757
|
if (child.state !== "OPEN" || !is_waiting(plan, child.number)) return void 0;
|
|
1668
1758
|
return pr_reason(child.number, plan.human_merge_prs);
|
|
1669
1759
|
}
|
|
@@ -1696,7 +1786,7 @@ function overlay_of(plan, statuses) {
|
|
|
1696
1786
|
statuses: new Map([...statuses].filter(([issue]) => !numbers.has(issue)))
|
|
1697
1787
|
};
|
|
1698
1788
|
}
|
|
1699
|
-
var run_board_human_merge = { overlay_of, read_prs, reason_of:
|
|
1789
|
+
var run_board_human_merge = { overlay_of, read_prs, reason_of: reason_of4, with_prs };
|
|
1700
1790
|
|
|
1701
1791
|
// scripts/run/board/run-board-standing-waits.ts
|
|
1702
1792
|
function is_waiting_on(edge, source) {
|
|
@@ -1781,7 +1871,7 @@ function touched_row(number, status, read5) {
|
|
|
1781
1871
|
const is_asked = status.state === "parked" && run_board_human.is_decision(status.reason);
|
|
1782
1872
|
const labels = read5.labels.get(number);
|
|
1783
1873
|
return {
|
|
1784
|
-
...is_asked ? { reason: run_board_decision.reason_of(number, status.reason, read5) } : run_board_ending_reason.row_reason(number, status, read5),
|
|
1874
|
+
...is_asked ? { reason: run_board_decision.reason_of(number, status.reason, read5, status) } : run_board_ending_reason.row_reason(number, status, read5),
|
|
1785
1875
|
...solo_flag(labels),
|
|
1786
1876
|
number,
|
|
1787
1877
|
title: read5.titles.get(number),
|
|
@@ -1836,10 +1926,10 @@ function waiting_children2(overlay) {
|
|
|
1836
1926
|
(child) => is_untouched(child, overlay) && plan_state(child) === "waiting"
|
|
1837
1927
|
);
|
|
1838
1928
|
}
|
|
1839
|
-
function layout_of(input_plan, input_statuses,
|
|
1929
|
+
function layout_of(input_plan, input_statuses, reason_of7, earlier = run_board_earlier.NO_EARLIER) {
|
|
1840
1930
|
const current2 = run_board_human_merge.overlay_of(input_plan, input_statuses);
|
|
1841
1931
|
const { plan, statuses } = current2;
|
|
1842
|
-
const overlay = { plan, statuses, reason_of:
|
|
1932
|
+
const overlay = { plan, statuses, reason_of: reason_of7 };
|
|
1843
1933
|
const queue = plan.waves.waves.flat().filter((child) => is_untouched(child, overlay));
|
|
1844
1934
|
const read5 = {
|
|
1845
1935
|
...plan,
|
|
@@ -2000,7 +2090,7 @@ function padded(text, width, emphasized) {
|
|
|
2000
2090
|
var run_board_fresh = { aged, padded, paint, since, stage_of };
|
|
2001
2091
|
|
|
2002
2092
|
// scripts/run/board/run-board-issue-count.ts
|
|
2003
|
-
import { z as
|
|
2093
|
+
import { z as z3 } from "zod";
|
|
2004
2094
|
var ICON2 = "\u{1F4EE}";
|
|
2005
2095
|
var LOCALE = "en-US";
|
|
2006
2096
|
var COUNT_QUERY = `query($owner: String!, $name: String!) {
|
|
@@ -2009,10 +2099,10 @@ var COUNT_QUERY = `query($owner: String!, $name: String!) {
|
|
|
2009
2099
|
closed: issues(states: CLOSED) { totalCount }
|
|
2010
2100
|
}
|
|
2011
2101
|
}`;
|
|
2012
|
-
var total_schema =
|
|
2013
|
-
var search_schema =
|
|
2014
|
-
var answer_schema =
|
|
2015
|
-
data:
|
|
2102
|
+
var total_schema = z3.object({ totalCount: z3.number() });
|
|
2103
|
+
var search_schema = z3.object({ total_count: z3.number() });
|
|
2104
|
+
var answer_schema = z3.object({
|
|
2105
|
+
data: z3.object({ repository: z3.object({ open: total_schema, closed: total_schema }) })
|
|
2016
2106
|
}).transform(({ data }) => ({
|
|
2017
2107
|
open: data.repository.open.totalCount,
|
|
2018
2108
|
closed: data.repository.closed.totalCount
|
|
@@ -2055,24 +2145,24 @@ var run_board_issue_count = { count_of, part_of: part_of2, read_issue_count };
|
|
|
2055
2145
|
|
|
2056
2146
|
// scripts/run/board/run-board-operation.ts
|
|
2057
2147
|
import path from "node:path";
|
|
2058
|
-
import { z as
|
|
2148
|
+
import { z as z5 } from "zod";
|
|
2059
2149
|
|
|
2060
2150
|
// scripts/run/board/run-board-operation-codex.ts
|
|
2061
|
-
import { z as
|
|
2062
|
-
var CHANGES_SCHEMA =
|
|
2063
|
-
var ITEM_SCHEMA =
|
|
2064
|
-
type:
|
|
2065
|
-
timestamp:
|
|
2066
|
-
item:
|
|
2067
|
-
type:
|
|
2068
|
-
command:
|
|
2151
|
+
import { z as z4 } from "zod";
|
|
2152
|
+
var CHANGES_SCHEMA = z4.array(z4.object({ path: z4.string() }));
|
|
2153
|
+
var ITEM_SCHEMA = z4.object({
|
|
2154
|
+
type: z4.enum(["item.started", "item.updated", "item.completed"]),
|
|
2155
|
+
timestamp: z4.string(),
|
|
2156
|
+
item: z4.object({
|
|
2157
|
+
type: z4.enum(["command_execution", "file_change"]),
|
|
2158
|
+
command: z4.string().optional(),
|
|
2069
2159
|
changes: CHANGES_SCHEMA.optional()
|
|
2070
2160
|
})
|
|
2071
2161
|
});
|
|
2072
2162
|
function input_of(item) {
|
|
2073
2163
|
return item.type === "command_execution" ? { command: item.command } : { file_path: item.changes?.at(-1)?.path };
|
|
2074
2164
|
}
|
|
2075
|
-
function
|
|
2165
|
+
function record_of2(value) {
|
|
2076
2166
|
const record = ITEM_SCHEMA.safeParse(value).data;
|
|
2077
2167
|
if (record === void 0) return void 0;
|
|
2078
2168
|
const { item, timestamp } = record;
|
|
@@ -2083,7 +2173,7 @@ function record_of(value) {
|
|
|
2083
2173
|
message: { content: [{ type: "tool_use", name: is_command ? "Bash" : "Edit", input }] }
|
|
2084
2174
|
};
|
|
2085
2175
|
}
|
|
2086
|
-
var run_board_operation_codex = { record_of };
|
|
2176
|
+
var run_board_operation_codex = { record_of: record_of2 };
|
|
2087
2177
|
|
|
2088
2178
|
// scripts/run/board/run-board-operation.ts
|
|
2089
2179
|
var TARGET_LIMIT = 40;
|
|
@@ -2098,7 +2188,7 @@ var ASSIGNMENT = new RegExp(String.raw`^\w+=${VALUE}(?:\s*(?:&&|;)\s*|\s+|$)`, "
|
|
|
2098
2188
|
var UNREAD_ASSIGNMENT = /^\w+=/u;
|
|
2099
2189
|
var SPACES = /\s+/gu;
|
|
2100
2190
|
var ASCII_HEAD = /^[ -~]*/u;
|
|
2101
|
-
var INPUT_SCHEMA =
|
|
2191
|
+
var INPUT_SCHEMA = z5.looseObject({ command: z5.string().optional(), file_path: z5.string().optional() }).catch({});
|
|
2102
2192
|
function ascii_head(text) {
|
|
2103
2193
|
return (ASCII_HEAD.exec(text)?.[0] ?? "").trim();
|
|
2104
2194
|
}
|
|
@@ -2112,7 +2202,8 @@ function without_assignments(command) {
|
|
|
2112
2202
|
function command_target(command) {
|
|
2113
2203
|
const [first = ""] = without_assignments(command.trim()).split(NEWLINE);
|
|
2114
2204
|
if (UNREAD_ASSIGNMENT.test(first)) return "";
|
|
2115
|
-
|
|
2205
|
+
const masked = home_tilde.mask(token_shape.redact(first));
|
|
2206
|
+
return cut(ascii_head(masked.replaceAll(SPACES, " ")));
|
|
2116
2207
|
}
|
|
2117
2208
|
function path_target(file_path, root) {
|
|
2118
2209
|
const relative = root === void 0 ? void 0 : path.relative(root, path.resolve(root, file_path));
|
|
@@ -2167,12 +2258,12 @@ function pool_reason(waiting, people) {
|
|
|
2167
2258
|
function running_of(running) {
|
|
2168
2259
|
return `${String(running)} ${WORDS3.in_progress}`;
|
|
2169
2260
|
}
|
|
2170
|
-
function
|
|
2261
|
+
function reason_of5(read5) {
|
|
2171
2262
|
if (read5.running > 0) return running_of(read5.running);
|
|
2172
2263
|
return read5.waiting === void 0 ? void 0 : pool_reason(read5.waiting, read5.people);
|
|
2173
2264
|
}
|
|
2174
2265
|
function with_reason(line, read5) {
|
|
2175
|
-
const reason =
|
|
2266
|
+
const reason = reason_of5(read5);
|
|
2176
2267
|
return reason === void 0 ? line : `${line}${REASON_SEPARATOR}${reason}`;
|
|
2177
2268
|
}
|
|
2178
2269
|
function latest_line(read5) {
|
|
@@ -2300,7 +2391,6 @@ var { padded: padded2 } = run_board_fresh;
|
|
|
2300
2391
|
var aged_fresh = run_board_fresh.aged;
|
|
2301
2392
|
var UNKNOWN = "-";
|
|
2302
2393
|
var BLANK2 = " ";
|
|
2303
|
-
var REPO_SEPARATOR = "/";
|
|
2304
2394
|
var { GAP, PERCENT_WIDTH } = run_board_machine;
|
|
2305
2395
|
var STALE_MINUTES = 15;
|
|
2306
2396
|
var STALE_MS = STALE_MINUTES * MS_PER_MINUTE;
|
|
@@ -2326,8 +2416,8 @@ function counts_of(layout) {
|
|
|
2326
2416
|
}
|
|
2327
2417
|
var WORKING_MARKS = /* @__PURE__ */ new Set(["running", "setup"]);
|
|
2328
2418
|
function quiet_mark(header) {
|
|
2329
|
-
const { layout } = header;
|
|
2330
|
-
if (
|
|
2419
|
+
const { activity, layout } = header;
|
|
2420
|
+
if (run_board_setup.is_working(activity.setup, activity.is_setup_working)) return "setup";
|
|
2331
2421
|
return layout?.queued.length === 0 && run_board_layout.people_of(layout).length > 0 ? "human" : "idle";
|
|
2332
2422
|
}
|
|
2333
2423
|
function mark_of(header, running) {
|
|
@@ -2339,7 +2429,7 @@ function run_part(mark, name = RUN_NAME) {
|
|
|
2339
2429
|
return styleText2(color, `${glyph} ${name}`);
|
|
2340
2430
|
}
|
|
2341
2431
|
function repo_part(header, mark) {
|
|
2342
|
-
const name = header.repo?.split(
|
|
2432
|
+
const name = header.repo?.split("/").at(-1) ?? "";
|
|
2343
2433
|
const indent = run_board_fit.width_of(RUN_MARKS[mark].glyph) + BLANK2.length;
|
|
2344
2434
|
return `${BLANK2.repeat(indent)}${header.repo_link(name, "home")}`;
|
|
2345
2435
|
}
|
|
@@ -2541,6 +2631,7 @@ function repo_linker(repo, link) {
|
|
|
2541
2631
|
}
|
|
2542
2632
|
function links_of(repo, link) {
|
|
2543
2633
|
return {
|
|
2634
|
+
comment_link: link,
|
|
2544
2635
|
link: linker(repo, link),
|
|
2545
2636
|
pull_link: pull_linker(repo, link),
|
|
2546
2637
|
repo_link: repo_linker(repo, link)
|
|
@@ -2771,7 +2862,7 @@ function wait_of(child, waits, read5, pool) {
|
|
|
2771
2862
|
function reader(read5) {
|
|
2772
2863
|
const current2 = { ...read5, ...run_board_human_merge.overlay_of(read5.plan, read5.statuses) };
|
|
2773
2864
|
const pool = pool_of(current2);
|
|
2774
|
-
return function
|
|
2865
|
+
return function reason_of7(child, waits) {
|
|
2775
2866
|
return run_board_human_merge.reason_of(child, current2.plan) ?? stage_of2(child, current2) ?? planned_of(child, pool) ?? wait_of(child, waits, current2, pool);
|
|
2776
2867
|
};
|
|
2777
2868
|
}
|
|
@@ -3001,8 +3092,13 @@ function value_of(reason, header) {
|
|
|
3001
3092
|
if (since_ms !== void 0) return run_board_labels.span_of(header.now_ms - since_ms);
|
|
3002
3093
|
return pr_linked(reason.value ?? "", reason.pr, header);
|
|
3003
3094
|
}
|
|
3095
|
+
function evidence_linked(text, url, header) {
|
|
3096
|
+
return header.comment_link?.(text, url) ?? text;
|
|
3097
|
+
}
|
|
3004
3098
|
function tail_of2(row, cut2, header) {
|
|
3005
|
-
|
|
3099
|
+
const text = run_board_render_title.reason_text(row, cut2) ?? "";
|
|
3100
|
+
const url = row.reason?.evidence_url;
|
|
3101
|
+
return url === void 0 ? pr_linked(text, row.reason?.pr, header) : evidence_linked(text, url, header);
|
|
3006
3102
|
}
|
|
3007
3103
|
function ended_of(row, header) {
|
|
3008
3104
|
const ended_ms = row.status?.ended_ms;
|
|
@@ -4823,7 +4919,7 @@ async function spin_to_second(spots, ports) {
|
|
|
4823
4919
|
var run_board_spin = { REDRAW_MS, SPOT, spin_bytes, spin_to_second, spun };
|
|
4824
4920
|
|
|
4825
4921
|
// scripts/run/board/run-board-thanks-read.ts
|
|
4826
|
-
import { z as
|
|
4922
|
+
import { z as z6 } from "zod";
|
|
4827
4923
|
|
|
4828
4924
|
// scripts/run/board/run-board-thanks-csv.ts
|
|
4829
4925
|
import { parse } from "csv-parse/sync";
|
|
@@ -4868,11 +4964,11 @@ var ROSTER_URL = "https://docs.google.com/spreadsheets/d/e/2PACX-1vR8Ia38Wiw6Kfy
|
|
|
4868
4964
|
var RECORD_PREFIX = "josh-run-board-thanks-";
|
|
4869
4965
|
var TTL_MINUTES = 5;
|
|
4870
4966
|
var TTL_MS = TTL_MINUTES * MS_PER_MINUTE;
|
|
4871
|
-
var thanker_schema =
|
|
4872
|
-
var
|
|
4967
|
+
var thanker_schema = z6.object({ name: z6.string(), url: z6.string().optional() });
|
|
4968
|
+
var record_schema2 = z6.object({ checked_ms: z6.number(), thanks: z6.array(thanker_schema) });
|
|
4873
4969
|
function read_record(record_path) {
|
|
4874
4970
|
const raw = stamp_file.read_stamp_text(record_path);
|
|
4875
|
-
const parsed2 = raw === void 0 ? void 0 : json_value.parse_with(raw,
|
|
4971
|
+
const parsed2 = raw === void 0 ? void 0 : json_value.parse_with(raw, record_schema2);
|
|
4876
4972
|
if (parsed2 === void 0) return void 0;
|
|
4877
4973
|
return {
|
|
4878
4974
|
checked_ms: parsed2.checked_ms,
|
|
@@ -4972,10 +5068,14 @@ function titles_of2(state) {
|
|
|
4972
5068
|
return closed_under(known_of2(state), state.closed).titles;
|
|
4973
5069
|
}
|
|
4974
5070
|
function activity_here(local) {
|
|
4975
|
-
|
|
5071
|
+
const activity = run_board_status.activity_of(
|
|
4976
5072
|
local.events,
|
|
4977
5073
|
local.ended_ms !== void 0 || local.is_stranded
|
|
4978
5074
|
);
|
|
5075
|
+
return {
|
|
5076
|
+
...activity,
|
|
5077
|
+
is_setup_working: run_board_setup.is_working(activity.setup, local.is_session_active)
|
|
5078
|
+
};
|
|
4979
5079
|
}
|
|
4980
5080
|
function is_backlog_live(local) {
|
|
4981
5081
|
const roots = local.roots ?? {};
|
|
@@ -5021,7 +5121,7 @@ function earlier_here(local) {
|
|
|
5021
5121
|
function planned_layout(state, input_plan, local, now_ms) {
|
|
5022
5122
|
const plan = plan_here(input_plan, state, local);
|
|
5023
5123
|
const statuses = planned_statuses(state, plan, local);
|
|
5024
|
-
const
|
|
5124
|
+
const reason_of7 = run_board_reason.reader({
|
|
5025
5125
|
plan,
|
|
5026
5126
|
statuses,
|
|
5027
5127
|
events: local.events,
|
|
@@ -5030,7 +5130,7 @@ function planned_layout(state, input_plan, local, now_ms) {
|
|
|
5030
5130
|
is_stopped: activity_here(local).is_stopped,
|
|
5031
5131
|
now_ms
|
|
5032
5132
|
});
|
|
5033
|
-
return run_board_layout.layout_of(plan, statuses,
|
|
5133
|
+
return run_board_layout.layout_of(plan, statuses, reason_of7, earlier_here(local));
|
|
5034
5134
|
}
|
|
5035
5135
|
function layout_for(state, local, now_ms) {
|
|
5036
5136
|
if (state.plan !== void 0) return planned_layout(state, state.plan, local, now_ms);
|
|
@@ -5515,11 +5615,11 @@ function held_reader(ports) {
|
|
|
5515
5615
|
var run_board_held = { held_reader };
|
|
5516
5616
|
|
|
5517
5617
|
// scripts/run/board/run-board-quota-spent.ts
|
|
5518
|
-
import { z as
|
|
5618
|
+
import { z as z7 } from "zod";
|
|
5519
5619
|
var MS_PER_MINUTE3 = 6e4;
|
|
5520
5620
|
var HALF = 2;
|
|
5521
|
-
var CLAUDE_END =
|
|
5522
|
-
var CODEX_END =
|
|
5621
|
+
var CLAUDE_END = z7.looseObject({ type: z7.literal("result") });
|
|
5622
|
+
var CODEX_END = z7.looseObject({ payload: z7.looseObject({ type: z7.literal("task_complete") }) });
|
|
5523
5623
|
function last_line(text) {
|
|
5524
5624
|
const trimmed = text.trimEnd();
|
|
5525
5625
|
return trimmed.slice(trimmed.lastIndexOf("\n") + 1);
|
|
@@ -5592,17 +5692,17 @@ var run_board_quota_spent = { claude_done, codex_done, per_lane_of, per_task_of,
|
|
|
5592
5692
|
|
|
5593
5693
|
// scripts/run/board/run-board-quota-status.ts
|
|
5594
5694
|
import { readFile } from "node:fs/promises";
|
|
5595
|
-
import { z as
|
|
5695
|
+
import { z as z8 } from "zod";
|
|
5596
5696
|
var MS_PER_SECOND2 = 1e3;
|
|
5597
5697
|
var MAX_PERCENTAGE = 100;
|
|
5598
|
-
var WINDOW =
|
|
5599
|
-
used_percentage:
|
|
5600
|
-
resets_at:
|
|
5698
|
+
var WINDOW = z8.object({
|
|
5699
|
+
used_percentage: z8.number().min(0).max(MAX_PERCENTAGE),
|
|
5700
|
+
resets_at: z8.number().nonnegative()
|
|
5601
5701
|
});
|
|
5602
|
-
var RECORD =
|
|
5702
|
+
var RECORD = z8.object({
|
|
5603
5703
|
five_hour: WINDOW.nullable(),
|
|
5604
5704
|
seven_day: WINDOW.nullable(),
|
|
5605
|
-
at:
|
|
5705
|
+
at: z8.string()
|
|
5606
5706
|
});
|
|
5607
5707
|
function window_of(minutes, window) {
|
|
5608
5708
|
if (window === null) return [];
|
|
@@ -6057,12 +6157,24 @@ function parent_of(read5, is_same) {
|
|
|
6057
6157
|
function roots_of(repository, read5, is_same = process_identity.is_same_process) {
|
|
6058
6158
|
return { supervisor: supervisor_of(repository, is_same), parent: parent_of(read5, is_same) };
|
|
6059
6159
|
}
|
|
6160
|
+
function is_session_owner(read5) {
|
|
6161
|
+
return read5.kind === "carried" && read5.carry.is_handed_off !== true;
|
|
6162
|
+
}
|
|
6163
|
+
function live_session_pid(pid, start2, wake, is_same) {
|
|
6164
|
+
return pid !== void 0 && pid !== wake?.pid && is_same(pid, start2) !== false;
|
|
6165
|
+
}
|
|
6166
|
+
function session_is_active(repository, read5, is_same) {
|
|
6167
|
+
if (read5.kind !== "carried" || !is_session_owner(read5)) return false;
|
|
6168
|
+
const wake = run_wake.read_wake(run_wake.wake_path(repository));
|
|
6169
|
+
const pid = read5.carry.owner_pid ?? wake?.woke_pid;
|
|
6170
|
+
return live_session_pid(pid, read5.carry.owner_start, wake, is_same);
|
|
6171
|
+
}
|
|
6060
6172
|
async function same_in(table) {
|
|
6061
6173
|
const rows = table === void 0 ? void 0 : await table();
|
|
6062
6174
|
const read5 = lane_process_table.start_reader(rows ?? []);
|
|
6063
6175
|
return (pid, start2) => process_identity.is_same_process(pid, start2, read5);
|
|
6064
6176
|
}
|
|
6065
|
-
var run_board_roots = { roots_of, same_in };
|
|
6177
|
+
var run_board_roots = { roots_of, same_in, session_is_active };
|
|
6066
6178
|
|
|
6067
6179
|
// scripts/run/board/run-board-single.ts
|
|
6068
6180
|
var FULLRUN = "fullrun";
|
|
@@ -6333,7 +6445,8 @@ var NO_SPAN = {
|
|
|
6333
6445
|
transcript: void 0,
|
|
6334
6446
|
roots: {},
|
|
6335
6447
|
carry: void 0,
|
|
6336
|
-
is_stranded: false
|
|
6448
|
+
is_stranded: false,
|
|
6449
|
+
is_session_active: false
|
|
6337
6450
|
};
|
|
6338
6451
|
var main_roots = stamped_memo.create();
|
|
6339
6452
|
async function main_root() {
|
|
@@ -6360,6 +6473,7 @@ async function recorded_span_here(repository, table, read5) {
|
|
|
6360
6473
|
resume: run_board_span.resume_of(read5, ended2, launch2),
|
|
6361
6474
|
transcript: read5.kind === "carried" ? read5.carry.owner_transcript : void 0,
|
|
6362
6475
|
roots: run_board_roots.roots_of(repository, read5, same_process),
|
|
6476
|
+
is_session_active: run_board_roots.session_is_active(repository, read5, same_process),
|
|
6363
6477
|
carry: read5.kind === "carried" ? read5.carry : void 0,
|
|
6364
6478
|
is_stranded: run_stranded_detect.is_stranded_at(repository, stranded_ports)
|
|
6365
6479
|
};
|
|
@@ -6456,7 +6570,7 @@ function span_fields(span) {
|
|
|
6456
6570
|
}
|
|
6457
6571
|
async function read_local(table) {
|
|
6458
6572
|
const repository = await run_carry.repository_directory();
|
|
6459
|
-
const { span, resume, transcript, roots, carry, is_stranded } = repository === void 0 ? NO_SPAN : await span_here2(repository, table);
|
|
6573
|
+
const { span, resume, transcript, roots, carry, is_stranded, is_session_active } = repository === void 0 ? NO_SPAN : await span_here2(repository, table);
|
|
6460
6574
|
if (repository === void 0 || span === void 0) return void 0;
|
|
6461
6575
|
const events = run_event_tail.read_events(run_event_stream.target_of(repository));
|
|
6462
6576
|
const lanes = await lane_registry.list_lanes(await main_root());
|
|
@@ -6472,6 +6586,7 @@ async function read_local(table) {
|
|
|
6472
6586
|
roots,
|
|
6473
6587
|
carry,
|
|
6474
6588
|
is_stranded,
|
|
6589
|
+
is_session_active,
|
|
6475
6590
|
operations: run_board_operation_read.read(sources_of2(repository, lanes, transcript)),
|
|
6476
6591
|
...await lane_room_of(lanes, lane_read.lane_states, table),
|
|
6477
6592
|
...ledger_here(repository)
|
|
@@ -6734,12 +6849,12 @@ function post_of(before, after) {
|
|
|
6734
6849
|
function is_post(value) {
|
|
6735
6850
|
return typeof value === "object" && value !== null && "read" in value;
|
|
6736
6851
|
}
|
|
6737
|
-
function
|
|
6852
|
+
function reason_of6(error) {
|
|
6738
6853
|
const message = error instanceof Error ? error.message : String(error);
|
|
6739
6854
|
return message.split("\n", 1)[0] ?? "";
|
|
6740
6855
|
}
|
|
6741
6856
|
function failed_of(error) {
|
|
6742
|
-
return { failed:
|
|
6857
|
+
return { failed: reason_of6(error) };
|
|
6743
6858
|
}
|
|
6744
6859
|
async function gather_round(state, ports, post) {
|
|
6745
6860
|
try {
|
|
@@ -6782,7 +6897,7 @@ function listen(thread, worker, now) {
|
|
|
6782
6897
|
else if (is_failed(value)) said_failed(thread, value.failed, now);
|
|
6783
6898
|
});
|
|
6784
6899
|
worker.on("error", (error) => {
|
|
6785
|
-
fail(thread, worker,
|
|
6900
|
+
fail(thread, worker, reason_of6(error), now);
|
|
6786
6901
|
});
|
|
6787
6902
|
worker.on("exit", (code) => {
|
|
6788
6903
|
fail(thread, worker, `exit ${String(code)}`, now);
|
|
@@ -6855,7 +6970,7 @@ function read_keys(input) {
|
|
|
6855
6970
|
var run_board_keys = { CTRL_C, read_keys };
|
|
6856
6971
|
|
|
6857
6972
|
// scripts/run/board/run-board-plan-shared.ts
|
|
6858
|
-
import { z as
|
|
6973
|
+
import { z as z9 } from "zod";
|
|
6859
6974
|
|
|
6860
6975
|
// scripts/run/board/run-board-decision-graphql.ts
|
|
6861
6976
|
var NODE_FIELDS = "number,title,body,state,labels,blockedBy";
|
|
@@ -6983,25 +7098,42 @@ async function blocker_of(reference, read5, seen) {
|
|
|
6983
7098
|
);
|
|
6984
7099
|
return blockers.find((blocker) => blocker !== void 0) ?? terminal_of(node);
|
|
6985
7100
|
}
|
|
6986
|
-
async function
|
|
7101
|
+
async function read_comments2(number, repo, answered) {
|
|
6987
7102
|
const json = answered.get(number) ?? await git_gh_issue_read.issue_list_comments(
|
|
6988
7103
|
String(number),
|
|
6989
7104
|
void 0,
|
|
6990
7105
|
repo,
|
|
6991
7106
|
git_gh_issue_read.read_comments_conditionally
|
|
6992
7107
|
);
|
|
6993
|
-
|
|
6994
|
-
|
|
6995
|
-
|
|
7108
|
+
return await issue_read.parse_comments(json, repo) ?? [];
|
|
7109
|
+
}
|
|
7110
|
+
async function comments_of(number, repo, answered) {
|
|
7111
|
+
try {
|
|
7112
|
+
return await read_comments2(number, repo, answered);
|
|
7113
|
+
} catch {
|
|
7114
|
+
return [];
|
|
7115
|
+
}
|
|
7116
|
+
}
|
|
7117
|
+
async function question_of2(number, repo, answered) {
|
|
7118
|
+
const comments = await comments_of(number, repo, answered);
|
|
7119
|
+
const question = run_board_decision.comment_question(issue_read.trusted_bodies(comments));
|
|
7120
|
+
const issue_url2 = `https://github.com/${repo}/issues/${String(number)}`;
|
|
7121
|
+
return [number, { question, pause: run_board_pause.from_comments(comments, issue_url2) }];
|
|
7122
|
+
}
|
|
7123
|
+
function question_pair([number, value]) {
|
|
7124
|
+
return value.question === void 0 ? [] : [[number, value.question]];
|
|
6996
7125
|
}
|
|
6997
7126
|
async function questions_of(plan) {
|
|
6998
7127
|
const { repo } = plan.context;
|
|
6999
|
-
const numbers = [...plan.labels].filter(([, labels]) =>
|
|
7128
|
+
const numbers = [...plan.labels].filter(([, labels]) => has_parked_label(labels)).map(([number]) => number);
|
|
7000
7129
|
const answered = await run_board_decision_graphql.read_comments(numbers, repo);
|
|
7001
7130
|
const pairs = await Promise.all(
|
|
7002
7131
|
numbers.map(async (number) => await question_of2(number, repo, answered))
|
|
7003
7132
|
);
|
|
7004
|
-
return
|
|
7133
|
+
return {
|
|
7134
|
+
decision_questions: new Map(pairs.flatMap((pair) => question_pair(pair))),
|
|
7135
|
+
pause_reasons: new Map(pairs.map(([number, value]) => [number, value.pause]))
|
|
7136
|
+
};
|
|
7005
7137
|
}
|
|
7006
7138
|
async function wait_of2(child, read5) {
|
|
7007
7139
|
if (read5.plan.withheld?.has(child.number) !== true) return void 0;
|
|
@@ -7030,13 +7162,13 @@ async function with_decisions(plan) {
|
|
|
7030
7162
|
...plan.waves.running ?? []
|
|
7031
7163
|
];
|
|
7032
7164
|
const read5 = read_of3(plan, children2);
|
|
7033
|
-
const [
|
|
7165
|
+
const [questions, waits] = await Promise.all([
|
|
7034
7166
|
questions_of(plan),
|
|
7035
7167
|
Promise.all(children2.map(async (child) => await wait_of2(child, read5)))
|
|
7036
7168
|
]);
|
|
7037
7169
|
return {
|
|
7038
7170
|
...plan,
|
|
7039
|
-
|
|
7171
|
+
...questions,
|
|
7040
7172
|
decision_waits: new Map(waits.filter((pair) => pair !== void 0))
|
|
7041
7173
|
};
|
|
7042
7174
|
}
|
|
@@ -7138,57 +7270,58 @@ var PLAN_CACHE = {
|
|
|
7138
7270
|
ttl_ms: backlog_next_shared.NEXT_CACHE.ttl_ms
|
|
7139
7271
|
};
|
|
7140
7272
|
function map_of(value) {
|
|
7141
|
-
const entries =
|
|
7142
|
-
const map =
|
|
7143
|
-
return
|
|
7273
|
+
const entries = z9.array(z9.tuple([z9.number(), value]));
|
|
7274
|
+
const map = z9.map(z9.number(), z9.custom()).readonly();
|
|
7275
|
+
return z9.codec(entries, map, {
|
|
7144
7276
|
decode: (pairs) => new Map(pairs),
|
|
7145
7277
|
encode: (pairs) => [...pairs]
|
|
7146
7278
|
});
|
|
7147
7279
|
}
|
|
7148
|
-
var number_set =
|
|
7280
|
+
var number_set = z9.codec(z9.array(z9.number()), z9.set(z9.number()).readonly(), {
|
|
7149
7281
|
decode: (numbers) => new Set(numbers),
|
|
7150
7282
|
encode: (numbers) => [...numbers]
|
|
7151
7283
|
});
|
|
7152
|
-
var optional_numbers =
|
|
7153
|
-
var unknown_or_set =
|
|
7154
|
-
|
|
7155
|
-
|
|
7284
|
+
var optional_numbers = z9.array(z9.number()).optional();
|
|
7285
|
+
var unknown_or_set = z9.codec(
|
|
7286
|
+
z9.object({ numbers: optional_numbers }),
|
|
7287
|
+
z9.custom(),
|
|
7156
7288
|
{
|
|
7157
7289
|
decode: ({ numbers }) => numbers === void 0 ? void 0 : new Set(numbers),
|
|
7158
7290
|
encode: (numbers) => numbers === void 0 ? {} : { numbers: [...numbers] }
|
|
7159
7291
|
}
|
|
7160
7292
|
);
|
|
7161
|
-
var string_set =
|
|
7293
|
+
var string_set = z9.codec(z9.array(z9.string()), z9.set(z9.string()).readonly(), {
|
|
7162
7294
|
decode: (values) => new Set(values),
|
|
7163
7295
|
encode: (values) => [...values]
|
|
7164
7296
|
});
|
|
7165
|
-
var names2 =
|
|
7166
|
-
var reference_schema =
|
|
7167
|
-
var child_schema =
|
|
7168
|
-
number:
|
|
7169
|
-
repo:
|
|
7170
|
-
state:
|
|
7297
|
+
var names2 = z9.array(z9.string()).readonly();
|
|
7298
|
+
var reference_schema = z9.object({ repo: z9.string(), number: z9.number() });
|
|
7299
|
+
var child_schema = z9.object({
|
|
7300
|
+
number: z9.number(),
|
|
7301
|
+
repo: z9.string(),
|
|
7302
|
+
state: z9.enum(["OPEN", "CLOSED"]),
|
|
7171
7303
|
labels: names2,
|
|
7172
|
-
blocked_by:
|
|
7173
|
-
body:
|
|
7304
|
+
blocked_by: z9.array(reference_schema).readonly(),
|
|
7305
|
+
body: z9.string().optional()
|
|
7174
7306
|
});
|
|
7175
|
-
var children =
|
|
7176
|
-
var waves_schema =
|
|
7177
|
-
waves:
|
|
7307
|
+
var children = z9.array(child_schema).readonly();
|
|
7308
|
+
var waves_schema = z9.object({
|
|
7309
|
+
waves: z9.array(children).readonly(),
|
|
7178
7310
|
unreached: children,
|
|
7179
7311
|
running: children.exactOptional()
|
|
7180
7312
|
});
|
|
7181
|
-
var context_schema =
|
|
7182
|
-
repo:
|
|
7183
|
-
titles: map_of(
|
|
7313
|
+
var context_schema = z9.object({
|
|
7314
|
+
repo: z9.string(),
|
|
7315
|
+
titles: map_of(z9.string()),
|
|
7184
7316
|
open_numbers: unknown_or_set
|
|
7185
7317
|
});
|
|
7186
|
-
var board_plan_schema =
|
|
7187
|
-
|
|
7188
|
-
|
|
7189
|
-
|
|
7318
|
+
var board_plan_schema = z9.object({
|
|
7319
|
+
pause_reasons: map_of(run_board_pause.record_schema).optional(),
|
|
7320
|
+
decision_questions: map_of(z9.string()).optional(),
|
|
7321
|
+
decision_waits: map_of(z9.string()).optional(),
|
|
7322
|
+
human_merge_prs: map_of(z9.number()).optional(),
|
|
7190
7323
|
waves: waves_schema,
|
|
7191
|
-
tracked: map_of(
|
|
7324
|
+
tracked: map_of(z9.number()),
|
|
7192
7325
|
context: context_schema,
|
|
7193
7326
|
labels: map_of(names2),
|
|
7194
7327
|
declared: map_of(string_set).optional(),
|