@maycombhq/atticus 2.0.0-beta.21 → 2.0.0-beta.23
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/dist/bin.js +12 -7
- package/dist/{chunk-BXBCMGIQ.js → chunk-24OXGB3P.js} +1 -1
- package/dist/{chunk-PRW3HXM3.js → chunk-27AJAKX7.js} +29 -5
- package/dist/{chunk-PQH56YF6.js → chunk-2QPJ4E4Z.js} +6 -4
- package/dist/{chunk-7CZHUZBL.js → chunk-2UMSHYCB.js} +38 -27
- package/dist/{chunk-2V2ZPQQU.js → chunk-2WUTCPPJ.js} +9 -7
- package/dist/{chunk-YF5DZCPN.js → chunk-2YSD6E6V.js} +38 -34
- package/dist/{chunk-QHJJMZLX.js → chunk-3424TLIJ.js} +204 -97
- package/dist/{chunk-62DLJSLV.js → chunk-3ASYYMOX.js} +10 -8
- package/dist/{chunk-XOL3GFW2.js → chunk-3EWKO457.js} +111 -43
- package/dist/{chunk-G5YJBNDZ.js → chunk-3EX5HCZD.js} +8 -6
- package/dist/{chunk-WFU77T3A.js → chunk-3MYBT62N.js} +5 -5
- package/dist/{chunk-6EXDI5GI.js → chunk-3UHV76UD.js} +72 -41
- package/dist/{chunk-LU4MQVAL.js → chunk-3ZA3AK2D.js} +11 -10
- package/dist/{chunk-P2VBXX7N.js → chunk-4ETO2FXE.js} +11 -9
- package/dist/{chunk-GK4PYVEC.js → chunk-4FLNCK6Q.js} +31 -14
- package/dist/{chunk-64AADMTW.js → chunk-4GAB5ZOZ.js} +943 -336
- package/dist/{chunk-FLVZFTLQ.js → chunk-4MYHETJ3.js} +20 -18
- package/dist/chunk-4R3TO4VL.js +94 -0
- package/dist/{chunk-7EFILTCI.js → chunk-5F7GFN2F.js} +28 -0
- package/dist/chunk-5MYE42AP.js +43 -0
- package/dist/chunk-5O7U67UA.js +57 -0
- package/dist/{chunk-MZGRDONP.js → chunk-5OXKCH4Z.js} +54 -37
- package/dist/{chunk-PUEWDYGP.js → chunk-5VTIWEWP.js} +3 -2
- package/dist/{chunk-3G6S7LAA.js → chunk-63NFFAGI.js} +14 -12
- package/dist/{chunk-LIJJCBQI.js → chunk-66AQ2JIU.js} +15 -16
- package/dist/chunk-6JVPBGQG.js +50 -0
- package/dist/{chunk-WAZEXEJH.js → chunk-6NCPLIIP.js} +167 -2
- package/dist/{chunk-D57MFJPP.js → chunk-6NN36LVK.js} +3 -3
- package/dist/{chunk-G6IQYM25.js → chunk-6R5VHR3N.js} +8 -6
- package/dist/{chunk-Z3QFH7YG.js → chunk-6RQOINER.js} +5 -4
- package/dist/{chunk-TQTRWENN.js → chunk-6RYB3EET.js} +14 -12
- package/dist/{chunk-FYBF5MB2.js → chunk-6SNTHK43.js} +13 -11
- package/dist/{chunk-FRHD22WM.js → chunk-6Y4FXOMI.js} +27 -23
- package/dist/{chunk-LWDNKE4X.js → chunk-6ZFF7XSL.js} +6 -6
- package/dist/{chunk-FQ6WH6PB.js → chunk-6ZSYLZ7O.js} +6 -4
- package/dist/{chunk-LQH4P45K.js → chunk-73CC73I4.js} +1 -1
- package/dist/{chunk-Q46QDDMF.js → chunk-73GFVW2L.js} +14 -9
- package/dist/{chunk-QKMRFNMA.js → chunk-73V2OONC.js} +17 -15
- package/dist/{chunk-FVMPFCDS.js → chunk-75OMRKY2.js} +4 -4
- package/dist/{chunk-XEQCQO66.js → chunk-7IFTSAHP.js} +10 -8
- package/dist/{chunk-4FOAYLI4.js → chunk-7K5OH45X.js} +139 -17
- package/dist/{chunk-3SSTNB4E.js → chunk-7NQAGYK4.js} +34 -14
- package/dist/{chunk-URIKUID7.js → chunk-7XWJ6ED2.js} +14 -12
- package/dist/{chunk-TYD6I4CZ.js → chunk-7XYLNQFO.js} +7 -7
- package/dist/{chunk-BPPU3PW7.js → chunk-7YQBDE5W.js} +10 -4
- package/dist/{chunk-CPK7QSBG.js → chunk-A4JXVO5O.js} +8 -6
- package/dist/{chunk-YJ3TBOTK.js → chunk-AFBCNZRZ.js} +29 -26
- package/dist/{chunk-TW3KOSQK.js → chunk-AGOLEMHK.js} +13 -13
- package/dist/chunk-AHFQHPFF.js +49 -0
- package/dist/{chunk-NTAVOWYD.js → chunk-APDN6UOR.js} +118 -18
- package/dist/chunk-AQRUQNFB.js +322 -0
- package/dist/{chunk-KYZMRSPS.js → chunk-AVMWESFZ.js} +6 -3
- package/dist/chunk-B4AEL3RF.js +1011 -0
- package/dist/{chunk-GS76RXQE.js → chunk-BAY4K55I.js} +15 -12
- package/dist/{chunk-4CLK2RJO.js → chunk-BFL4PO64.js} +9 -7
- package/dist/{chunk-GCS3FZOB.js → chunk-BFMTGNAQ.js} +15 -4
- package/dist/{chunk-YBOVNMHC.js → chunk-BP33TBLI.js} +29 -16
- package/dist/chunk-BQGDB6ZL.js +7342 -0
- package/dist/{chunk-BXZ4PKIT.js → chunk-BUUJ7N4O.js} +15 -11
- package/dist/{chunk-HGHRSF3E.js → chunk-BYBU2EIB.js} +38 -19
- package/dist/{chunk-TQ4TG57V.js → chunk-C6ORPLCN.js} +4 -4
- package/dist/{chunk-HWD4JPU7.js → chunk-CA3DKO4D.js} +27 -3
- package/dist/{chunk-YTTNTQOX.js → chunk-CFUDAW3R.js} +17 -15
- package/dist/{chunk-OPQZISG3.js → chunk-CJEBRJBS.js} +5 -4
- package/dist/{chunk-RALY3E5U.js → chunk-CKVBDVIW.js} +6 -4
- package/dist/{chunk-DUPZPDCJ.js → chunk-CMB7FXHJ.js} +42 -16
- package/dist/{chunk-YIGBJNH4.js → chunk-CQ7RF4QN.js} +5 -4
- package/dist/{chunk-YAH5IQAL.js → chunk-CS4BMJLL.js} +6 -5
- package/dist/{chunk-455SYIIE.js → chunk-CT6NINGR.js} +5 -3
- package/dist/chunk-CXTG6AWM.js +40 -0
- package/dist/{chunk-JYMIB5XY.js → chunk-CZ2ZS7AT.js} +170 -45
- package/dist/{chunk-K332XW7K.js → chunk-D6BVLTDV.js} +100 -33
- package/dist/chunk-DCRYOMTM.js +37 -0
- package/dist/{chunk-G6X4YL4D.js → chunk-DHKDH464.js} +5 -4
- package/dist/{chunk-JRVNXLZP.js → chunk-DSHRA72L.js} +14 -12
- package/dist/{chunk-LNWEWYCM.js → chunk-E3PDCQRH.js} +2813 -621
- package/dist/chunk-EHXDB3SA.js +25 -0
- package/dist/{chunk-EZIN5E5B.js → chunk-EMVZIOOD.js} +11 -9
- package/dist/{chunk-IFHDV6KQ.js → chunk-ENH6Z4TY.js} +21 -20
- package/dist/{chunk-YKTE2RU3.js → chunk-EVTI22PQ.js} +7 -2
- package/dist/{chunk-2D7PWSOK.js → chunk-EXJZBL5N.js} +22 -20
- package/dist/{chunk-77O633L5.js → chunk-FBCVC2GJ.js} +14 -12
- package/dist/{chunk-HS4BGB4G.js → chunk-FJVUHQPS.js} +37 -24
- package/dist/{chunk-4KNOJC6J.js → chunk-FL344WQD.js} +270 -221
- package/dist/{chunk-GNWAOVFQ.js → chunk-FMJYKLDY.js} +5 -5
- package/dist/chunk-FMR2D3AZ.js +41 -0
- package/dist/{chunk-PAINMSID.js → chunk-FPBUTZI5.js} +3102 -7859
- package/dist/{chunk-ZOSD4FXV.js → chunk-FQVSLBTV.js} +3 -3
- package/dist/chunk-FRAEQVYN.js +52 -0
- package/dist/{chunk-UDXWIPCB.js → chunk-FRCOKUU4.js} +9 -7
- package/dist/{chunk-UYLBRRFK.js → chunk-FSN6JFXB.js} +129 -27
- package/dist/{chunk-BC6KKZ67.js → chunk-FTLYXMHA.js} +9 -6
- package/dist/{chunk-FAJDKNSD.js → chunk-FVYZ4Y52.js} +16 -3
- package/dist/{chunk-TWQRPM76.js → chunk-G6EFXTUO.js} +23 -16
- package/dist/{chunk-ZFQMMU5Y.js → chunk-G7VBMOZH.js} +6 -2
- package/dist/{chunk-VYOCPTUB.js → chunk-GM4EFHUX.js} +17 -15
- package/dist/chunk-GOZLTLRY.js +232 -0
- package/dist/chunk-GPNMSX5H.js +36 -0
- package/dist/{chunk-OZJ3JLYI.js → chunk-GUGQSIQM.js} +10 -9
- package/dist/chunk-H4VO6WG3.js +10 -0
- package/dist/{chunk-QJCJOMW3.js → chunk-HJQVUOUL.js} +16 -18
- package/dist/chunk-HMWJWYE2.js +31 -0
- package/dist/{chunk-4TKVU2I2.js → chunk-HMZ2DRBC.js} +2 -2
- package/dist/{chunk-HK3VOHIE.js → chunk-HRS5O7VV.js} +609 -171
- package/dist/{chunk-7FUIVIBG.js → chunk-HUGQZQ2K.js} +13 -8
- package/dist/{chunk-QOOEYDNJ.js → chunk-ICBGVVRI.js} +10 -10
- package/dist/{chunk-XG4WJHLQ.js → chunk-IGOE6KPG.js} +49 -20
- package/dist/{chunk-4SLBCEPD.js → chunk-IKAW2KJU.js} +95 -64
- package/dist/{chunk-L4CESDPB.js → chunk-IMZFOMVX.js} +1 -1
- package/dist/{chunk-XQ3YZ4QW.js → chunk-ISG547IS.js} +24 -22
- package/dist/{chunk-BA2HUMDN.js → chunk-IYNCSYU4.js} +5 -2
- package/dist/{chunk-UEVZZZU2.js → chunk-J25YOUIZ.js} +5 -4
- package/dist/chunk-J2CDBSFP.js +69 -0
- package/dist/chunk-J2H7YG3K.js +34 -0
- package/dist/{chunk-O4IKAIZ2.js → chunk-J32IPTVQ.js} +28 -22
- package/dist/{chunk-3AQ2R5NL.js → chunk-J4CPHJUL.js} +11 -9
- package/dist/{chunk-VUVGX5L2.js → chunk-JFFKHIM6.js} +1 -1
- package/dist/chunk-JMEWJPF2.js +384 -0
- package/dist/{chunk-LO3BLMVG.js → chunk-JSP73CDW.js} +13 -5
- package/dist/chunk-JXAKYP45.js +63 -0
- package/dist/{chunk-PNQLCRSS.js → chunk-K4OXYSGS.js} +7 -5
- package/dist/{chunk-3J5I7ZOU.js → chunk-K4RNVDR4.js} +4 -4
- package/dist/{chunk-LEBR5NHW.js → chunk-K757G7AD.js} +18 -15
- package/dist/{chunk-AHW3RY3X.js → chunk-KDJ2YKAZ.js} +8 -7
- package/dist/{chunk-4WXRPQDE.js → chunk-KT6Q44CA.js} +178 -31
- package/dist/{chunk-EFCQSMXB.js → chunk-KTNOBTV5.js} +10 -4
- package/dist/chunk-KVVNAUIG.js +66 -0
- package/dist/{chunk-26Z7OGQW.js → chunk-L3RCQWVQ.js} +64 -31
- package/dist/{chunk-3WON4G3M.js → chunk-LHH5KG5A.js} +21 -6
- package/dist/{chunk-NCB6656Z.js → chunk-LM45GMMB.js} +11 -8
- package/dist/{chunk-2HH3UCZM.js → chunk-LO6Y7OTG.js} +5 -4
- package/dist/{chunk-36RY7ZXM.js → chunk-LPDTDFKA.js} +88 -26
- package/dist/{chunk-67BP7HXL.js → chunk-LSHSDC6S.js} +19 -17
- package/dist/{chunk-GDZB57IU.js → chunk-LZVHP7CT.js} +7 -5
- package/dist/{chunk-GC2VK3JT.js → chunk-M3EOFSPY.js} +28 -25
- package/dist/chunk-MBYYQHPM.js +31 -0
- package/dist/{chunk-HXXP2NTE.js → chunk-MEJ63LDG.js} +35 -12
- package/dist/{chunk-2UCRFXFZ.js → chunk-MH2ZK67S.js} +13 -11
- package/dist/{chunk-BEPCKDCP.js → chunk-MLGWSBF4.js} +5447 -4165
- package/dist/{chunk-NRQ65LTQ.js → chunk-MNIPPBCT.js} +6 -5
- package/dist/{chunk-3LZ6P5EP.js → chunk-MUWDB4R4.js} +1 -1
- package/dist/{chunk-KDAHXQIE.js → chunk-MWF4PXQR.js} +38 -34
- package/dist/{chunk-WNTIOBOG.js → chunk-N2YX6JMY.js} +20 -18
- package/dist/{chunk-FY3QIRTL.js → chunk-NAPHHWW2.js} +3 -3
- package/dist/{chunk-D2WSW4GU.js → chunk-NC755EKE.js} +8 -2
- package/dist/{chunk-BA3U7ALS.js → chunk-NCLZJCXA.js} +26 -22
- package/dist/chunk-NKJDO4UC.js +39 -0
- package/dist/chunk-NOYOFYAJ.js +59 -0
- package/dist/{chunk-LPV6T362.js → chunk-NROSSWMS.js} +8 -6
- package/dist/{chunk-ZKYRDV7A.js → chunk-OBUB3H72.js} +14 -12
- package/dist/{chunk-ZQLRCA2V.js → chunk-OCQWSFJD.js} +10 -8
- package/dist/{chunk-42EPP7OB.js → chunk-OK6JGLE7.js} +14 -12
- package/dist/{chunk-MD7KUEJ3.js → chunk-OPWGPQ2N.js} +9 -7
- package/dist/{chunk-SH27FYPF.js → chunk-OSYHGGL3.js} +20 -18
- package/dist/chunk-OXXZZ7HQ.js +50 -0
- package/dist/chunk-P22EPEBR.js +57 -0
- package/dist/chunk-P4YUT7W7.js +45 -0
- package/dist/chunk-PCCLVIDP.js +217 -0
- package/dist/chunk-PFULMC2D.js +48 -0
- package/dist/chunk-PGAMTKBI.js +16 -0
- package/dist/{chunk-Y6K3CJBU.js → chunk-PNSSE7JM.js} +152 -29
- package/dist/{chunk-3UTYPHN3.js → chunk-POEMZECG.js} +1 -1
- package/dist/{chunk-GSGIZ2OO.js → chunk-POSDBRKV.js} +27 -24
- package/dist/{chunk-YZDZOEV4.js → chunk-POSZFDSQ.js} +3 -3
- package/dist/{chunk-7AB6OWTV.js → chunk-PQQKZPBU.js} +31 -25
- package/dist/{chunk-K6JB6XTX.js → chunk-PRMUQUWN.js} +20 -15
- package/dist/{chunk-ICHDSWEY.js → chunk-PT4USJNN.js} +10 -8
- package/dist/{chunk-265LWMOA.js → chunk-PWXB5GBB.js} +18 -16
- package/dist/{chunk-DCWN3HFV.js → chunk-PXMV2LLY.js} +6 -5
- package/dist/{chunk-THN26IEF.js → chunk-PXW2RZGQ.js} +4 -1
- package/dist/{chunk-CG6CULP6.js → chunk-Q367UGYN.js} +7 -5
- package/dist/chunk-QA4O2GGC.js +265 -0
- package/dist/{chunk-7FHNFCHK.js → chunk-QAVRDONY.js} +225 -375
- package/dist/{chunk-VAMHOHUU.js → chunk-QBMLBCQH.js} +16 -13
- package/dist/{chunk-WEOMJHPV.js → chunk-QLQIFJP3.js} +18 -15
- package/dist/{chunk-UZACEG2C.js → chunk-QLWDIKO4.js} +84 -27
- package/dist/{chunk-ZZFHLRQW.js → chunk-QVVGJVVX.js} +18 -16
- package/dist/{chunk-WIWTJMMR.js → chunk-QX4MAMUG.js} +23 -21
- package/dist/{chunk-JYTIHTIK.js → chunk-QZWRPQTI.js} +6 -6
- package/dist/{chunk-5WERBKLE.js → chunk-RCG5IAAT.js} +55 -227
- package/dist/chunk-RGZFOKVO.js +106 -0
- package/dist/{chunk-C7CEK3KW.js → chunk-RLZFL76D.js} +7 -5
- package/dist/{chunk-PTQ3ZALZ.js → chunk-RPQITJNX.js} +14 -12
- package/dist/{chunk-JS6WMC3J.js → chunk-RQQYEDAC.js} +10 -8
- package/dist/chunk-RQSLHZ7T.js +36 -0
- package/dist/{chunk-API5TOUB.js → chunk-RRQUQAXP.js} +1 -1
- package/dist/chunk-RYQ4JCFT.js +65 -0
- package/dist/chunk-S35DIFJH.js +38 -0
- package/dist/{chunk-YWAKDNMH.js → chunk-S5GSQPIN.js} +70 -19
- package/dist/chunk-S5XFO4GY.js +42 -0
- package/dist/chunk-S6LW2RRC.js +25 -0
- package/dist/{chunk-TSM6T6GQ.js → chunk-S6W3D5GS.js} +25 -23
- package/dist/{chunk-5PV7S2ZP.js → chunk-S7GUZ45I.js} +4 -3
- package/dist/{chunk-MMZUN7ZO.js → chunk-SCT4CEF7.js} +22 -20
- package/dist/{chunk-AOCWFA7T.js → chunk-SK5RVP7X.js} +8 -8
- package/dist/chunk-SRTUETF5.js +50 -0
- package/dist/{chunk-E57AOFYN.js → chunk-SVGGMBJI.js} +15 -13
- package/dist/{chunk-OV57AHCG.js → chunk-SWNKO4C4.js} +35 -26
- package/dist/chunk-SYP56T2D.js +65 -0
- package/dist/{chunk-5CMPVC3N.js → chunk-T33TPFGI.js} +25 -23
- package/dist/{chunk-Q26LDIUV.js → chunk-T3FNG2H2.js} +18 -15
- package/dist/{chunk-UFE36WJH.js → chunk-T6MAWL5P.js} +6 -4
- package/dist/{chunk-LN77DXBM.js → chunk-T6MX7WXM.js} +14 -11
- package/dist/{chunk-WCEF7H6L.js → chunk-T7IIEDA3.js} +10 -7
- package/dist/{chunk-2HTEMYTB.js → chunk-TABH4RBZ.js} +163 -84
- package/dist/{chunk-YO2PKTXT.js → chunk-TDSCKP3V.js} +5 -3
- package/dist/{chunk-BVWWPBKD.js → chunk-TMFMXQEN.js} +23 -21
- package/dist/{chunk-4B6BT75O.js → chunk-TNCF26JK.js} +83 -26
- package/dist/{chunk-75ASLHBT.js → chunk-TUM52SOE.js} +21 -15
- package/dist/{chunk-ZLS6PU2O.js → chunk-TV56QLLV.js} +4 -3
- package/dist/{chunk-JKIGL3XQ.js → chunk-TVQSXWWV.js} +36 -33
- package/dist/{chunk-OKUB6RJA.js → chunk-TXNSQ24G.js} +14 -11
- package/dist/{chunk-4CYTJ5TZ.js → chunk-UALE35WK.js} +4 -3
- package/dist/{chunk-CNU5Q2D5.js → chunk-UJF7PIMP.js} +35 -27
- package/dist/chunk-UMCDODBX.js +53 -0
- package/dist/{chunk-M6D2U3YM.js → chunk-UTPIFH4I.js} +4 -3
- package/dist/{chunk-COYN3UAN.js → chunk-V7PEHQZU.js} +95 -26
- package/dist/{chunk-U3NBK4EU.js → chunk-VJFXQISZ.js} +8 -8
- package/dist/chunk-VJZI6KFP.js +47 -0
- package/dist/{chunk-ECLXZWAG.js → chunk-VK7WYA64.js} +14 -12
- package/dist/{chunk-DDJPM5YX.js → chunk-VKTXFFOZ.js} +5 -3
- package/dist/{chunk-LIRVU3HW.js → chunk-VNIN7Q6Q.js} +32 -20
- package/dist/{chunk-7QPCGTPS.js → chunk-VRO7KSGL.js} +24 -21
- package/dist/{chunk-AZDITBCT.js → chunk-W3AZE7LN.js} +3 -3
- package/dist/chunk-W4TNCEI4.js +44 -0
- package/dist/{chunk-S2RY3BOD.js → chunk-W5VYJWOG.js} +31 -21
- package/dist/{chunk-X2CUXTWU.js → chunk-WF3RCZNO.js} +6 -6
- package/dist/{chunk-4D62IZII.js → chunk-WOMQQWTO.js} +7 -5
- package/dist/{chunk-UF4UHCIG.js → chunk-WXVTYLVH.js} +6 -4
- package/dist/{chunk-EDZ45WIR.js → chunk-WYGTSZHR.js} +18 -14
- package/dist/{chunk-HSZMPH5T.js → chunk-WZYM5M4U.js} +592 -133
- package/dist/chunk-X5ZHDSLU.js +49 -0
- package/dist/chunk-X7XVMYIL.js +5 -0
- package/dist/chunk-X7ZKNSK4.js +41 -0
- package/dist/{chunk-QE527XRY.js → chunk-XAPXKFIS.js} +26 -23
- package/dist/{chunk-HE3HRDNZ.js → chunk-XF6TSZW2.js} +2 -2
- package/dist/{chunk-GX74YWR7.js → chunk-XFDDJQT7.js} +16 -14
- package/dist/{chunk-5QUOPNLN.js → chunk-XGO74QWR.js} +4 -4
- package/dist/chunk-XLZAAAPX.js +43 -0
- package/dist/{chunk-NYOABJNK.js → chunk-XMUWPA56.js} +26 -24
- package/dist/{chunk-M4H2UG4R.js → chunk-XNFM6WUK.js} +19 -16
- package/dist/{chunk-TGVVUKTG.js → chunk-XOMEQVLK.js} +2 -2
- package/dist/{chunk-A2G72UI4.js → chunk-Y2H7X3VI.js} +7 -7
- package/dist/{chunk-37WE3LS2.js → chunk-Y5IE6YKD.js} +5 -3
- package/dist/{chunk-IFFRGC3N.js → chunk-YD3KTW4H.js} +14 -12
- package/dist/{chunk-75ZOZFGH.js → chunk-YDCOZOER.js} +20 -18
- package/dist/{chunk-6DQYZU2W.js → chunk-YERAAEO4.js} +20 -20
- package/dist/{chunk-J5AAZ6OJ.js → chunk-YHMPDIRG.js} +5 -4
- package/dist/{chunk-CNPY4NTZ.js → chunk-Z2D4P3R3.js} +15 -13
- package/dist/{chunk-E2VXBSIR.js → chunk-Z3H27OMV.js} +6 -4
- package/dist/{chunk-AE4P57KK.js → chunk-Z3RAFU5B.js} +17 -15
- package/dist/{chunk-RA33EYS4.js → chunk-ZENHDXRZ.js} +23 -17
- package/dist/{chunk-TJH2EUAZ.js → chunk-ZFHFC74B.js} +20 -18
- package/dist/{chunk-4PYC2UGC.js → chunk-ZGULQAPZ.js} +7 -4
- package/dist/{chunk-4SKZDI62.js → chunk-ZIUFM5HT.js} +3 -1
- package/dist/{chunk-JAABT3DA.js → chunk-ZJGCGKA4.js} +4 -3
- package/dist/{chunk-GIFMBCTW.js → chunk-ZLQEQR3D.js} +10 -8
- package/dist/{chunk-I2A3Z5AK.js → chunk-ZNHQGG7J.js} +7 -7
- package/dist/{chunk-5TDRBOAV.js → chunk-ZNTTW4IT.js} +7 -5
- package/dist/{chunk-ZX7235KR.js → chunk-ZR6J4QFQ.js} +44 -383
- package/dist/{chunk-F6H2RJ3N.js → chunk-ZSNOILL5.js} +1 -1
- package/dist/files.json +585 -509
- package/dist/packages/sdk/npm/index.js +1491 -110
- package/dist/packages/ui/dist/assets/{elk-api-CowTnhEJ.js → elk-api-DxfAMOJq.js} +2 -2
- package/dist/packages/ui/dist/assets/index-Buit9TfP.js +62 -0
- package/dist/packages/ui/dist/assets/index-Jyc9dFeZ.css +1 -0
- package/dist/packages/ui/dist/index.html +3 -2
- package/package.json +3 -3
- package/dist/chunk-26WBY34Y.js +0 -37
- package/dist/chunk-3TD6S4TC.js +0 -49
- package/dist/chunk-5G7ILBUG.js +0 -66
- package/dist/chunk-6FNAKCET.js +0 -38
- package/dist/chunk-AM6FP6JW.js +0 -43
- package/dist/chunk-CFH3QH26.js +0 -29
- package/dist/chunk-CLD4RVTA.js +0 -45
- package/dist/chunk-D5KV5PSK.js +0 -45
- package/dist/chunk-D5MASS4I.js +0 -48
- package/dist/chunk-DN4A2Q2O.js +0 -57
- package/dist/chunk-FGAGWYZB.js +0 -47
- package/dist/chunk-GUYL7RMK.js +0 -60
- package/dist/chunk-J2O4LFVI.js +0 -80
- package/dist/chunk-JITJP64K.js +0 -34
- package/dist/chunk-JRXHON4E.js +0 -41
- package/dist/chunk-JU4QNJSR.js +0 -62
- package/dist/chunk-N3RUGTGV.js +0 -39
- package/dist/chunk-ODMBPDDV.js +0 -298
- package/dist/chunk-OMPENNWY.js +0 -39
- package/dist/chunk-PKJAV25S.js +0 -43
- package/dist/chunk-PRTBPXYA.js +0 -50
- package/dist/chunk-PRZ7KMWL.js +0 -42
- package/dist/chunk-QSIDVFB7.js +0 -45
- package/dist/chunk-SB5GRUFM.js +0 -54
- package/dist/chunk-T74WQQGS.js +0 -40
- package/dist/chunk-X7EMBM5X.js +0 -34
- package/dist/chunk-Z6VLC5X4.js +0 -36
- package/dist/chunk-ZPDDEVQX.js +0 -47
- package/dist/packages/ui/dist/assets/index-Dw20IRhQ.css +0 -1
- package/dist/packages/ui/dist/assets/index-z2wv0d5d.js +0 -47
|
@@ -3,10 +3,6 @@ import { fileURLToPath as __atticusFileURLToPath } from "node:url";
|
|
|
3
3
|
var require = __atticusCreateRequire(import.meta.url);
|
|
4
4
|
var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
|
|
5
5
|
var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
6
|
-
import {
|
|
7
|
-
slug,
|
|
8
|
-
writeGateRound
|
|
9
|
-
} from "./chunk-EZIN5E5B.js";
|
|
10
6
|
import {
|
|
11
7
|
catchUpChangeBranch,
|
|
12
8
|
changeWorktree,
|
|
@@ -14,11 +10,16 @@ import {
|
|
|
14
10
|
loadTask,
|
|
15
11
|
openTaskWorktree,
|
|
16
12
|
readChangeTasks,
|
|
17
|
-
setTaskDone
|
|
18
|
-
|
|
13
|
+
setTaskDone,
|
|
14
|
+
taskBranchOwnCommits
|
|
15
|
+
} from "./chunk-S5GSQPIN.js";
|
|
19
16
|
import {
|
|
20
17
|
buildEngineFor
|
|
21
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-J4CPHJUL.js";
|
|
19
|
+
import {
|
|
20
|
+
slug,
|
|
21
|
+
writeGateRound
|
|
22
|
+
} from "./chunk-EMVZIOOD.js";
|
|
22
23
|
import {
|
|
23
24
|
conform,
|
|
24
25
|
readConformDeltas,
|
|
@@ -26,38 +27,39 @@ import {
|
|
|
26
27
|
renderTaskContext,
|
|
27
28
|
taskContext,
|
|
28
29
|
withBuildLine
|
|
29
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-MLGWSBF4.js";
|
|
30
31
|
import {
|
|
31
32
|
readChangeFiles,
|
|
32
33
|
readRound,
|
|
33
34
|
readStoryIndex,
|
|
34
35
|
roundsOf,
|
|
35
36
|
writeQuarantineItems
|
|
36
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-D6BVLTDV.js";
|
|
37
38
|
import {
|
|
38
39
|
changeFolder,
|
|
39
40
|
changeStore
|
|
40
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-WZYM5M4U.js";
|
|
41
42
|
import {
|
|
43
|
+
AdapterError,
|
|
42
44
|
createAdapters,
|
|
43
45
|
fileStepStore,
|
|
44
46
|
requireApproval
|
|
45
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-FL344WQD.js";
|
|
46
48
|
import {
|
|
47
49
|
scanEstate
|
|
48
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-IKAW2KJU.js";
|
|
49
51
|
import {
|
|
50
52
|
baseClonePath,
|
|
51
53
|
createGit,
|
|
52
54
|
toRepoRelative
|
|
53
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-3EWKO457.js";
|
|
54
56
|
import {
|
|
55
57
|
HandoffRuntime,
|
|
56
58
|
buildContextPack,
|
|
57
59
|
createRuntime,
|
|
58
60
|
quarantineItems,
|
|
59
61
|
toRunSummary
|
|
60
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-3424TLIJ.js";
|
|
61
63
|
import {
|
|
62
64
|
AgentDefinition,
|
|
63
65
|
ChecklistPack,
|
|
@@ -71,18 +73,20 @@ import {
|
|
|
71
73
|
changesRelOf,
|
|
72
74
|
external_exports,
|
|
73
75
|
readRepoSpec,
|
|
74
|
-
require_dist,
|
|
75
76
|
runsDirOf,
|
|
76
77
|
runsRelOf,
|
|
77
78
|
stateDirOf,
|
|
78
79
|
taskBranch,
|
|
79
80
|
toCanonicalYaml
|
|
80
|
-
} from "./chunk-
|
|
81
|
+
} from "./chunk-FPBUTZI5.js";
|
|
81
82
|
import {
|
|
82
83
|
LockHeldError,
|
|
83
84
|
acquireLock,
|
|
84
85
|
writeFileAtomic
|
|
85
|
-
} from "./chunk-
|
|
86
|
+
} from "./chunk-B4AEL3RF.js";
|
|
87
|
+
import {
|
|
88
|
+
require_dist
|
|
89
|
+
} from "./chunk-BQGDB6ZL.js";
|
|
86
90
|
import {
|
|
87
91
|
__toESM
|
|
88
92
|
} from "./chunk-TV45EUGM.js";
|
|
@@ -564,7 +568,9 @@ ${s.body.trim()}`,
|
|
|
564
568
|
id: "task-context",
|
|
565
569
|
kind: "artifact",
|
|
566
570
|
origin: `atticus task context ${t.change.id} ${t.task.id}`,
|
|
567
|
-
|
|
571
|
+
// The pack wraps and screens the whole file as one source, so its parts aren't fenced
|
|
572
|
+
// again inside it (review round 47).
|
|
573
|
+
text: renderTaskContext(context, { fence: false }).replace(/\r\n/g, "\n"),
|
|
568
574
|
classification: "internal",
|
|
569
575
|
priority: 35
|
|
570
576
|
});
|
|
@@ -1112,6 +1118,12 @@ async function commit(c, runId) {
|
|
|
1112
1118
|
await c.git(["add", "-A", "--", "."], c.worktree);
|
|
1113
1119
|
const staged = (await c.git(["diff", "--cached", "--name-only"], c.worktree)).stdout.trim();
|
|
1114
1120
|
if (!staged) {
|
|
1121
|
+
const own = await ownTaskCommit(c);
|
|
1122
|
+
if (own) {
|
|
1123
|
+
c.record.commit = own;
|
|
1124
|
+
c.record.notes.push(`Nothing new to commit: ${c.record.branch} already has this task's commit ${own.slice(0, 12)}, ahead of ${changeBranch(c.t.change.id)}, so it is the one built and raised.`);
|
|
1125
|
+
return true;
|
|
1126
|
+
}
|
|
1115
1127
|
c.record.state = "needs-person";
|
|
1116
1128
|
c.record.notes.push(`The AI's answer changed nothing in ${c.record.branch}, so there is nothing to commit: run the task again, or do it by hand in ${c.record.worktree}.`);
|
|
1117
1129
|
return false;
|
|
@@ -1130,9 +1142,20 @@ Requested-By: ${c.record.by}`
|
|
|
1130
1142
|
c.record.commit = (await c.git(["rev-parse", "HEAD"], c.worktree)).stdout.trim();
|
|
1131
1143
|
return true;
|
|
1132
1144
|
}
|
|
1145
|
+
async function ownTaskCommit(c) {
|
|
1146
|
+
const base = changeBranch(c.t.change.id);
|
|
1147
|
+
const log = await c.git(["log", "--format=%B%x00", `refs/heads/${base}..HEAD`], c.worktree).catch(() => ({ stdout: "" }));
|
|
1148
|
+
const mine = log.stdout.split("\0").some((m) => {
|
|
1149
|
+
const lines = m.split("\n").map((l) => l.trim());
|
|
1150
|
+
return lines.includes(`Atticus-Change: ${c.t.change.id}`) && lines.includes(`Atticus-Task: ${c.t.task.id}`);
|
|
1151
|
+
});
|
|
1152
|
+
if (!mine)
|
|
1153
|
+
return void 0;
|
|
1154
|
+
return (await c.git(["rev-parse", "HEAD"], c.worktree)).stdout.trim() || void 0;
|
|
1155
|
+
}
|
|
1133
1156
|
async function openPr(c) {
|
|
1134
1157
|
if (c.record.state !== "built") {
|
|
1135
|
-
c.record.notes.push(c.record.state === "unverified" ?
|
|
1158
|
+
c.record.notes.push(c.record.state === "unverified" ? `No PR: a pull request needs a passing build, and ${c.t.repo.id} has no build command: set a build command for ${c.t.repo.id} (build: under its entry in repos.manifest.yaml), then run task ${c.t.task.id} again.` : "No PR: the build doesn't pass.");
|
|
1136
1159
|
if (c.record.state === "unverified")
|
|
1137
1160
|
c.record.state = "needs-person";
|
|
1138
1161
|
return;
|
|
@@ -1182,6 +1205,15 @@ async function openPr(c) {
|
|
|
1182
1205
|
} catch (e) {
|
|
1183
1206
|
if (e instanceof TaskRunError)
|
|
1184
1207
|
throw e;
|
|
1208
|
+
if (e instanceof AdapterError && e.code === "conflict") {
|
|
1209
|
+
const open = (await c.gitHost.listPullRequests(c.t.repo.id, { head: c.record.branch }).catch(() => [])).filter((p) => p.base === base && (p.state === "open" || p.state === "draft")).at(0);
|
|
1210
|
+
if (open) {
|
|
1211
|
+
c.record.pr = { number: open.number, url: open.url };
|
|
1212
|
+
c.record.state = "pr-open";
|
|
1213
|
+
c.record.notes.push(`PR #${open.number} from ${c.record.branch} into ${base} was already open on the Git host; recorded it (${open.url}).`);
|
|
1214
|
+
return;
|
|
1215
|
+
}
|
|
1216
|
+
}
|
|
1185
1217
|
c.record.notes.push(`${PR_NOT_RAISED} ${(e instanceof Error ? e.message : String(e)).replace(/\.?$/, ".")} The build still passes: fix that and raise the task's PR again (Raise the task's PR on the Task board), or push ${c.record.branch} and open its PR into ${base} yourself.`);
|
|
1186
1218
|
}
|
|
1187
1219
|
}
|
|
@@ -1251,7 +1283,7 @@ async function ownTaskPr(host, r, held) {
|
|
|
1251
1283
|
return own;
|
|
1252
1284
|
throw new TaskRunError("refused", `PR #${held.number} on the Git host is from ${pr.head}, not ${r.branch}, and no PR from ${r.branch} was found`);
|
|
1253
1285
|
}
|
|
1254
|
-
async function refuseIfHeld(root, t, host) {
|
|
1286
|
+
async function refuseIfHeld(root, t, host, git) {
|
|
1255
1287
|
const before = await readTaskRun(root, t.change.id, t.task.id);
|
|
1256
1288
|
if (before?.state === "pr-open") {
|
|
1257
1289
|
let state;
|
|
@@ -1265,14 +1297,23 @@ async function refuseIfHeld(root, t, host) {
|
|
|
1265
1297
|
} catch (e) {
|
|
1266
1298
|
why = e instanceof Error ? e.message : String(e);
|
|
1267
1299
|
}
|
|
1268
|
-
if (before.pr && (state === "merged" || state === "closed"))
|
|
1269
|
-
|
|
1300
|
+
if (before.pr && (state === "merged" || state === "closed")) {
|
|
1301
|
+
const own = await taskBranchOwnCommits(root, t.change.id, t.task.id, t.repo.id, git);
|
|
1302
|
+
if (own > 0) {
|
|
1303
|
+
const branch = taskBranch(t.change.id, t.task.id);
|
|
1304
|
+
const from = changeBranch(t.change.id);
|
|
1305
|
+
const clone = baseClonePath(root, t.repo.id);
|
|
1306
|
+
const carried = state === "closed" ? "the commits that PR carried" : "commits the change branch hasn't (a squash or rebase merge took them in another form)";
|
|
1307
|
+
throw new TaskRunError("refused", `Task ${t.task.id}'s earlier PR ${before.pr.url} is ${state}, and its branch ${branch} still has ${carried} (${own} not in ${from}): running the task again would raise them again. Atticus doesn't delete or rewrite them. To start the task afresh, remove its worktree and branch here (git -C ${clone} worktree remove ${join5(root, before.worktree)}, then git -C ${clone} branch -D ${branch}) and delete ${branch} on the Git host, then run the task again; or ask whoever looks after the workspace for a fresh start.`);
|
|
1308
|
+
}
|
|
1309
|
+
return { notes: [`Its earlier PR ${before.pr.url} is ${state}.`], settled: true };
|
|
1310
|
+
}
|
|
1270
1311
|
throw new TaskRunError("refused", `Task ${t.task.id}'s PR is open (${before.pr?.url ?? "see its run"}): running the task again would start over beside it. Merge or close the PR first, then run the task again.${why ? ` (Atticus couldn't ask the Git host whether it still is: ${why}.)` : ""}`);
|
|
1271
1312
|
}
|
|
1272
1313
|
const open = ["prepared", "waiting", "produced", "failed"];
|
|
1273
1314
|
if (before?.state === "waiting" && before.waiting && open.includes(await handoffRunState(root, t.change.id, before.waiting) ?? ""))
|
|
1274
1315
|
throw new TaskRunError("refused", `Task ${t.task.id} already waits on your assistant (run ${before.waiting}, in ${before.worktree}): finish it with Done on its run page (Model runs) or atticus handoff done ${before.waiting}, or Cancel it there and run the task again.`);
|
|
1275
|
-
return [];
|
|
1316
|
+
return { notes: [] };
|
|
1276
1317
|
}
|
|
1277
1318
|
async function taskPrState(root, changeId, taskId, o = {}) {
|
|
1278
1319
|
const r = await readTaskRun(root, changeId, taskId).catch(() => void 0);
|
|
@@ -1347,7 +1388,7 @@ function gitHostConnected(root, t, given) {
|
|
|
1347
1388
|
async function previewTaskRun(root, changeId, taskId, o = {}) {
|
|
1348
1389
|
const t = await loadTask(root, changeId, taskId);
|
|
1349
1390
|
const level = levelOf(t, o.level);
|
|
1350
|
-
await refuseIfHeld(root, t, () => o.gitHost ?? gitHostOf(root, t));
|
|
1391
|
+
await refuseIfHeld(root, t, () => o.gitHost ?? gitHostOf(root, t), createGit());
|
|
1351
1392
|
return {
|
|
1352
1393
|
change: t.change.id,
|
|
1353
1394
|
task: t.task.id,
|
|
@@ -1413,7 +1454,7 @@ async function runTaskHeld(root, changeId, taskId, o) {
|
|
|
1413
1454
|
let t = await loadTask(root, changeId, taskId);
|
|
1414
1455
|
const rt = t.ctx.orgPack.runtime;
|
|
1415
1456
|
const level = levelOf(t, o.level);
|
|
1416
|
-
const earlier = await refuseIfHeld(root, t, () => o.gitHost ?? gitHostOf(root, t));
|
|
1457
|
+
const earlier = await refuseIfHeld(root, t, () => o.gitHost ?? gitHostOf(root, t), git);
|
|
1417
1458
|
if (level === "pr") {
|
|
1418
1459
|
try {
|
|
1419
1460
|
requireApproval("git-host", o.approval);
|
|
@@ -1424,9 +1465,9 @@ async function runTaskHeld(root, changeId, taskId, o) {
|
|
|
1424
1465
|
const engine = buildEngineFor(t.ctx.orgPack, t.repo.id);
|
|
1425
1466
|
const changeDir = await changeWorktree(root, t.change.id, t.repo.id);
|
|
1426
1467
|
const handed = engine === "speckit" ? `specs/${t.task.id}/plan.md` : `.atticus/tasks/${t.task.id}.md`;
|
|
1427
|
-
const notes = [...earlier];
|
|
1468
|
+
const notes = [...earlier.notes];
|
|
1428
1469
|
try {
|
|
1429
|
-
const caught = await catchUpChangeBranch(root, t.change.id, t.task.id, t.repo.id, changeDir, git);
|
|
1470
|
+
const caught = await catchUpChangeBranch(root, t.change.id, t.task.id, t.repo.id, changeDir, git, earlier.settled ? { settled: true } : {});
|
|
1430
1471
|
if (caught)
|
|
1431
1472
|
notes.push(caught);
|
|
1432
1473
|
} catch (e) {
|
|
@@ -1439,7 +1480,14 @@ async function runTaskHeld(root, changeId, taskId, o) {
|
|
|
1439
1480
|
notes.push(`Handed the task down first (${h.feature} in ${h.repo}${h.commit ? `, commit ${h.commit.slice(0, 12)}` : ""}).`);
|
|
1440
1481
|
t = await loadTask(root, changeId, taskId);
|
|
1441
1482
|
}
|
|
1442
|
-
|
|
1483
|
+
let wt;
|
|
1484
|
+
try {
|
|
1485
|
+
wt = await openTaskWorktree(root, t.change.id, t.task.id, t.repo.id, git, earlier.settled ? { fresh: true } : {});
|
|
1486
|
+
} catch (e) {
|
|
1487
|
+
if (e instanceof Error && e.name === "SpecKitError")
|
|
1488
|
+
throw new TaskRunError("refused", e.message);
|
|
1489
|
+
throw e;
|
|
1490
|
+
}
|
|
1443
1491
|
const runtime = o.runtime ?? await createRuntime(t.ctx.orgPack, {
|
|
1444
1492
|
root,
|
|
1445
1493
|
...o.mode ? { mode: o.mode } : {},
|
|
@@ -1659,6 +1707,79 @@ async function raiseTaskPr(root, changeId, taskId, o) {
|
|
|
1659
1707
|
await lock.release();
|
|
1660
1708
|
}
|
|
1661
1709
|
}
|
|
1710
|
+
async function buildTask(root, changeId, taskId, o = {}) {
|
|
1711
|
+
if (o.approval)
|
|
1712
|
+
requireApproval("git-host", o.approval);
|
|
1713
|
+
const lock = await holdTask(root, changeId, taskId);
|
|
1714
|
+
try {
|
|
1715
|
+
const record = await readTaskRun(root, changeId, taskId);
|
|
1716
|
+
if (!record || !["unverified", "needs-person"].includes(record.state))
|
|
1717
|
+
throw new TaskRunError("refused", !record ? `Task ${taskId} hasn't been drafted yet: run it with AI first.` : record.state === "built" ? `Task ${taskId} is built already: raise its PR (Raise the task's PR).` : `Task ${taskId} is ${record.state}: Build and raise PR is for a task drafted but not built (UNVERIFIED) or one a person took over; run it again instead.`);
|
|
1718
|
+
const t = await loadTask(root, changeId, taskId);
|
|
1719
|
+
const command = t.repo.build;
|
|
1720
|
+
if (!command)
|
|
1721
|
+
throw new TaskRunError("refused", `${record.repo} has no build command yet: set it on Set up \u203A Repos (build: under its entry in repos.manifest.yaml), then Build and raise PR again.`);
|
|
1722
|
+
const now = o.now ?? (() => /* @__PURE__ */ new Date());
|
|
1723
|
+
const git = o.git ?? createGit();
|
|
1724
|
+
const worktree = join5(root, record.worktree);
|
|
1725
|
+
if (!existsSync2(worktree))
|
|
1726
|
+
throw new TaskRunError("refused", `Task ${taskId}'s worktree ${record.worktree} isn't here any more: run the task again.`);
|
|
1727
|
+
const c = {
|
|
1728
|
+
root,
|
|
1729
|
+
t,
|
|
1730
|
+
record,
|
|
1731
|
+
worktree,
|
|
1732
|
+
runtime: void 0,
|
|
1733
|
+
commands: o.commands ?? shellCommandRunner(),
|
|
1734
|
+
git,
|
|
1735
|
+
...o.gitHost ? { gitHost: o.gitHost } : {},
|
|
1736
|
+
...o.approval ? { approval: o.approval } : {},
|
|
1737
|
+
now,
|
|
1738
|
+
maxFix: t.ctx.orgPack.runtime.autonomy.maxFixRounds
|
|
1739
|
+
};
|
|
1740
|
+
if ((await changedFiles(c)).length)
|
|
1741
|
+
throw new TaskRunError("refused", `Task ${taskId}'s worktree ${record.worktree} has edits that aren't committed: commit them on ${record.branch} (or put them aside), then Build and raise PR again.`);
|
|
1742
|
+
const own = await ownTaskCommit(c);
|
|
1743
|
+
const head = (await git(["rev-parse", "--verify", "-q", `refs/heads/${record.branch}`], worktree).catch(() => ({ stdout: "" }))).stdout.trim();
|
|
1744
|
+
const ahead = await git(["rev-list", "--count", `refs/heads/${changeBranch(changeId)}..refs/heads/${record.branch}`], worktree).then((x) => Number(x.stdout.trim()) || 0, () => 0);
|
|
1745
|
+
if (!head || !own && ahead === 0)
|
|
1746
|
+
throw new TaskRunError("refused", `Task ${taskId}'s branch ${record.branch} has nothing beyond ${changeBranch(changeId)} to build: run the task again.`);
|
|
1747
|
+
record.commit = head;
|
|
1748
|
+
const runId = record.runs[0] ?? `build-${stamp2(now()).replace(/[:]/g, "")}`;
|
|
1749
|
+
const a = await build(c, runId);
|
|
1750
|
+
if (c.stopped || stopRequested()) {
|
|
1751
|
+
record.state = "needs-person";
|
|
1752
|
+
record.notes.push(`Atticus was stopped while the build ran; Build and raise PR again.`);
|
|
1753
|
+
return await done(c);
|
|
1754
|
+
}
|
|
1755
|
+
if (!a.passed) {
|
|
1756
|
+
record.state = "needs-person";
|
|
1757
|
+
record.notes.push(`The build fails (${command}, exit ${a.exitCode ?? "none"}): fix it in ${record.worktree} and commit, then Build and raise PR again. See ${a.log}.`);
|
|
1758
|
+
return await done(c);
|
|
1759
|
+
}
|
|
1760
|
+
record.state = "built";
|
|
1761
|
+
record.notes.push(`Built with ${command}: it passes at ${head.slice(0, 12)}.`);
|
|
1762
|
+
await conformAfterBuild(c);
|
|
1763
|
+
if (o.approval && record.state === "built") {
|
|
1764
|
+
const host = o.gitHost ?? gitHostOf(root, t);
|
|
1765
|
+
if (host)
|
|
1766
|
+
c.gitHost = host;
|
|
1767
|
+
try {
|
|
1768
|
+
if (host)
|
|
1769
|
+
await openPr(c);
|
|
1770
|
+
else
|
|
1771
|
+
record.notes.push(`No Git host is connected (runtime.yaml adapters.gitHost): push ${record.branch} and open its PR into ${changeBranch(changeId)} yourself.`);
|
|
1772
|
+
} catch (e) {
|
|
1773
|
+
record.notes.push(`${PR_NOT_RAISED} ${e.message}`);
|
|
1774
|
+
}
|
|
1775
|
+
if (record.state === "pr-open")
|
|
1776
|
+
record.notes.push(`PR raised by ${o.approval.by} after the build (${o.approval.ref}).`);
|
|
1777
|
+
}
|
|
1778
|
+
return await done(c);
|
|
1779
|
+
} finally {
|
|
1780
|
+
await lock.release();
|
|
1781
|
+
}
|
|
1782
|
+
}
|
|
1662
1783
|
async function isTaskRun(root, runId) {
|
|
1663
1784
|
return await findWaitingTaskRun(root, runId) !== void 0;
|
|
1664
1785
|
}
|
|
@@ -1667,7 +1788,8 @@ async function isTaskRun(root, runId) {
|
|
|
1667
1788
|
var PAST = {
|
|
1668
1789
|
waiting: "it is with your assistant: Done on its run carries on",
|
|
1669
1790
|
built: "it is drafted: its PR is the next step",
|
|
1670
|
-
|
|
1791
|
+
// App-only audit: Build and raise PR builds it (once its repo has a build command), or Run again.
|
|
1792
|
+
unverified: "it is drafted but not built yet: Build and raise PR on its card builds it with its repo's build command, or Run again drafts it afresh",
|
|
1671
1793
|
"pr-open": "its PR is open on the Git host",
|
|
1672
1794
|
"needs-person": "it needs a person: carry on in its worktree, or Run with AI on it"
|
|
1673
1795
|
};
|
|
@@ -1847,6 +1969,7 @@ export {
|
|
|
1847
1969
|
runTask,
|
|
1848
1970
|
completeTaskHandoff,
|
|
1849
1971
|
raiseTaskPr,
|
|
1972
|
+
buildTask,
|
|
1850
1973
|
isTaskRun,
|
|
1851
1974
|
planReadyTasks,
|
|
1852
1975
|
readyTasksOf,
|
|
@@ -10,7 +10,7 @@ function draftCheckTool(root, request) {
|
|
|
10
10
|
if (!request.selfCheck || !/^(feature|architecture|stories|small)-answer\.yaml$/.test(request.outputPath))
|
|
11
11
|
return void 0;
|
|
12
12
|
let box;
|
|
13
|
-
const planner = () => box ??= import("./chunk-
|
|
13
|
+
const planner = () => box ??= import("./chunk-APDN6UOR.js").then((p) => p.draftCheckBox(root, request));
|
|
14
14
|
return {
|
|
15
15
|
definitions: [
|
|
16
16
|
{
|
|
@@ -3,40 +3,41 @@ import { fileURLToPath as __atticusFileURLToPath } from "node:url";
|
|
|
3
3
|
var require = __atticusCreateRequire(import.meta.url);
|
|
4
4
|
var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
|
|
5
5
|
var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-PRMUQUWN.js";
|
|
7
7
|
import {
|
|
8
8
|
loadCatalog
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-XGO74QWR.js";
|
|
10
10
|
import {
|
|
11
11
|
repoFor
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-XOMEQVLK.js";
|
|
13
13
|
import {
|
|
14
14
|
recordFact,
|
|
15
15
|
verifyScan
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import "./chunk-
|
|
16
|
+
} from "./chunk-4ETO2FXE.js";
|
|
17
|
+
import "./chunk-FQVSLBTV.js";
|
|
18
18
|
import {
|
|
19
19
|
stepJudges
|
|
20
|
-
} from "./chunk-
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
20
|
+
} from "./chunk-MLGWSBF4.js";
|
|
21
|
+
import "./chunk-CA3DKO4D.js";
|
|
22
|
+
import "./chunk-D6BVLTDV.js";
|
|
23
|
+
import "./chunk-RCG5IAAT.js";
|
|
24
|
+
import "./chunk-WZYM5M4U.js";
|
|
25
|
+
import "./chunk-NC755EKE.js";
|
|
26
|
+
import "./chunk-FL344WQD.js";
|
|
27
27
|
import {
|
|
28
28
|
checkScanSettings
|
|
29
|
-
} from "./chunk-
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
33
|
-
import "./chunk-
|
|
34
|
-
import "./chunk-
|
|
35
|
-
import "./chunk-XOL3GFW2.js";
|
|
36
|
-
import "./chunk-QHJJMZLX.js";
|
|
29
|
+
} from "./chunk-IKAW2KJU.js";
|
|
30
|
+
import "./chunk-CZ2ZS7AT.js";
|
|
31
|
+
import "./chunk-4GAB5ZOZ.js";
|
|
32
|
+
import "./chunk-A4JXVO5O.js";
|
|
33
|
+
import "./chunk-TDSCKP3V.js";
|
|
34
|
+
import "./chunk-G6EFXTUO.js";
|
|
37
35
|
import {
|
|
38
36
|
fsRepo
|
|
39
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-PQQKZPBU.js";
|
|
38
|
+
import "./chunk-3EWKO457.js";
|
|
39
|
+
import "./chunk-3424TLIJ.js";
|
|
40
|
+
import "./chunk-QA4O2GGC.js";
|
|
40
41
|
import {
|
|
41
42
|
SCAN_VERIFY_SCHEMA_VERSION,
|
|
42
43
|
ScanSettings,
|
|
@@ -48,10 +49,12 @@ import {
|
|
|
48
49
|
proposalsRelOf,
|
|
49
50
|
questionsRelOf,
|
|
50
51
|
raiseQuestions,
|
|
51
|
-
require_dist,
|
|
52
52
|
reusedLine
|
|
53
|
-
} from "./chunk-
|
|
54
|
-
import "./chunk-
|
|
53
|
+
} from "./chunk-FPBUTZI5.js";
|
|
54
|
+
import "./chunk-B4AEL3RF.js";
|
|
55
|
+
import {
|
|
56
|
+
require_dist
|
|
57
|
+
} from "./chunk-BQGDB6ZL.js";
|
|
55
58
|
import {
|
|
56
59
|
__toESM
|
|
57
60
|
} from "./chunk-TV45EUGM.js";
|
|
@@ -5,18 +5,18 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
|
|
|
5
5
|
var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
6
6
|
import {
|
|
7
7
|
readCatalog
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-IKAW2KJU.js";
|
|
9
9
|
import {
|
|
10
10
|
readDiagram,
|
|
11
11
|
reconcile
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-TDSCKP3V.js";
|
|
13
13
|
import {
|
|
14
14
|
loadOrgPack,
|
|
15
15
|
orgPackDirOf,
|
|
16
16
|
parseRecord,
|
|
17
17
|
recordPath,
|
|
18
18
|
serializeRecord
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-FPBUTZI5.js";
|
|
20
20
|
|
|
21
21
|
// packages/cli/dist/reconcile-commands.js
|
|
22
22
|
import { mkdir, readdir, readFile, writeFile } from "node:fs/promises";
|
|
@@ -4,8 +4,10 @@ var require = __atticusCreateRequire(import.meta.url);
|
|
|
4
4
|
var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
|
|
5
5
|
var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
6
6
|
import {
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
decodeText,
|
|
8
|
+
parseRecord,
|
|
9
|
+
walkRepo
|
|
10
|
+
} from "./chunk-FPBUTZI5.js";
|
|
9
11
|
|
|
10
12
|
// packages/sdk/dist/parse-cache.js
|
|
11
13
|
import { createHash } from "node:crypto";
|
|
@@ -332,8 +334,20 @@ function globToRegExp(glob) {
|
|
|
332
334
|
}
|
|
333
335
|
|
|
334
336
|
// packages/sdk/dist/fs-repo.js
|
|
335
|
-
import { lstat,
|
|
336
|
-
import { join,
|
|
337
|
+
import { lstat, readFile, realpath, stat } from "node:fs/promises";
|
|
338
|
+
import { join, resolve, sep } from "node:path";
|
|
339
|
+
|
|
340
|
+
// packages/sdk/dist/listing.js
|
|
341
|
+
var LISTING = /* @__PURE__ */ Symbol.for("@maycombhq/sdk.listing");
|
|
342
|
+
function listingOf(repo) {
|
|
343
|
+
const v = repo[LISTING];
|
|
344
|
+
return typeof v === "string" ? v : "";
|
|
345
|
+
}
|
|
346
|
+
function setListing(repo, listing) {
|
|
347
|
+
Object.defineProperty(repo, LISTING, { value: listing, enumerable: false, configurable: true });
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
// packages/sdk/dist/fs-repo.js
|
|
337
351
|
var DEFAULT_IGNORES = [
|
|
338
352
|
".git",
|
|
339
353
|
"node_modules",
|
|
@@ -366,24 +380,12 @@ function fsRepo(name, dir, commit, options = {}) {
|
|
|
366
380
|
let cache;
|
|
367
381
|
const sizes = /* @__PURE__ */ new Map();
|
|
368
382
|
const skipped = /* @__PURE__ */ new Map();
|
|
369
|
-
async function walk(abs, out) {
|
|
370
|
-
const entries = await readdir(abs, { withFileTypes: true });
|
|
371
|
-
for (const e of entries) {
|
|
372
|
-
if (e.isSymbolicLink())
|
|
373
|
-
continue;
|
|
374
|
-
const full = join(abs, e.name);
|
|
375
|
-
if (e.isDirectory()) {
|
|
376
|
-
if (!ignore.has(e.name))
|
|
377
|
-
await walk(full, out);
|
|
378
|
-
} else if (e.isFile()) {
|
|
379
|
-
out.push(relative(root, full).split(sep).join("/"));
|
|
380
|
-
}
|
|
381
|
-
}
|
|
382
|
-
}
|
|
383
383
|
async function allFiles() {
|
|
384
384
|
if (!cache) {
|
|
385
385
|
const out = [];
|
|
386
|
-
await
|
|
386
|
+
await walkRepo(root, async (p) => void out.push(p), {
|
|
387
|
+
skipFolder: (_above, name2) => ignore.has(name2)
|
|
388
|
+
});
|
|
387
389
|
cache = out.sort();
|
|
388
390
|
}
|
|
389
391
|
return cache;
|
|
@@ -407,7 +409,7 @@ function fsRepo(name, dir, commit, options = {}) {
|
|
|
407
409
|
throw new RepoReadError(`file is larger than ${maxBytes} bytes: ${path}`, path);
|
|
408
410
|
return abs;
|
|
409
411
|
}
|
|
410
|
-
|
|
412
|
+
const handle = {
|
|
411
413
|
name,
|
|
412
414
|
commit,
|
|
413
415
|
async *listFiles(globs) {
|
|
@@ -430,15 +432,16 @@ function fsRepo(name, dir, commit, options = {}) {
|
|
|
430
432
|
return [...skipped].sort(([a], [b]) => a < b ? -1 : 1).map(([path, bytes]) => ({ path, bytes }));
|
|
431
433
|
},
|
|
432
434
|
async readText(path) {
|
|
433
|
-
|
|
434
|
-
return text.charCodeAt(0) === 65279 ? text.slice(1) : text;
|
|
435
|
+
return decodeText(await readFile(await safePath(path)));
|
|
435
436
|
}
|
|
436
437
|
};
|
|
438
|
+
setListing(handle, JSON.stringify({ ignore: [...ignore].sort(), maxFileBytes: maxBytes, gitignore: true }));
|
|
439
|
+
return handle;
|
|
437
440
|
}
|
|
438
441
|
|
|
439
442
|
// packages/sdk/dist/cache.js
|
|
440
443
|
import { createHash as createHash2 } from "node:crypto";
|
|
441
|
-
import { mkdir, readdir
|
|
444
|
+
import { mkdir, readdir, readFile as readFile2, rename, rm, writeFile } from "node:fs/promises";
|
|
442
445
|
import { join as join2 } from "node:path";
|
|
443
446
|
var sha256 = (s) => createHash2("sha256").update(s).digest("hex");
|
|
444
447
|
function cacheKeyHash(key) {
|
|
@@ -524,7 +527,7 @@ function fsScanCache(dir) {
|
|
|
524
527
|
let removed = 0;
|
|
525
528
|
let commits;
|
|
526
529
|
try {
|
|
527
|
-
commits = await
|
|
530
|
+
commits = await readdir(join2(dir, repo));
|
|
528
531
|
} catch {
|
|
529
532
|
return 0;
|
|
530
533
|
}
|
|
@@ -635,7 +638,10 @@ async function scanWith(options) {
|
|
|
635
638
|
options.configFor?.(extractor) ?? "",
|
|
636
639
|
JSON.stringify(options.repoInfo ?? {}),
|
|
637
640
|
// A changed framework model means a different reading of the same code.
|
|
638
|
-
options.frameworks?.length ? JSON.stringify(options.frameworks) : ""
|
|
641
|
+
options.frameworks?.length ? JSON.stringify(options.frameworks) : "",
|
|
642
|
+
// Review round 49: the same commit listed another way (scan-settings exclusions, the
|
|
643
|
+
// folders left out, the size limit) gives the extractor other files.
|
|
644
|
+
listingOf(repo)
|
|
639
645
|
].join("|")
|
|
640
646
|
};
|
|
641
647
|
try {
|
|
@@ -5,10 +5,10 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
|
|
|
5
5
|
var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
6
6
|
import {
|
|
7
7
|
loadCatalog
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-XGO74QWR.js";
|
|
9
9
|
import {
|
|
10
10
|
repoFor
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-XOMEQVLK.js";
|
|
12
12
|
import {
|
|
13
13
|
checkDraft,
|
|
14
14
|
checkFrameworkDraft,
|
|
@@ -22,25 +22,25 @@ import {
|
|
|
22
22
|
proposalYaml,
|
|
23
23
|
reviewRepo,
|
|
24
24
|
surveyRepo
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-4ETO2FXE.js";
|
|
26
26
|
import {
|
|
27
27
|
offerCodeDir
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-FQVSLBTV.js";
|
|
29
29
|
import {
|
|
30
30
|
matchRepoType
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-IKAW2KJU.js";
|
|
32
32
|
import {
|
|
33
33
|
modelCovers,
|
|
34
34
|
repoImports,
|
|
35
35
|
runDialectTests,
|
|
36
36
|
runFrameworkTests
|
|
37
|
-
} from "./chunk-
|
|
38
|
-
import {
|
|
39
|
-
baseClonePath
|
|
40
|
-
} from "./chunk-XOL3GFW2.js";
|
|
37
|
+
} from "./chunk-G6EFXTUO.js";
|
|
41
38
|
import {
|
|
42
39
|
fsRepo
|
|
43
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-PQQKZPBU.js";
|
|
41
|
+
import {
|
|
42
|
+
baseClonePath
|
|
43
|
+
} from "./chunk-3EWKO457.js";
|
|
44
44
|
import {
|
|
45
45
|
Dialect,
|
|
46
46
|
FrameworkModel,
|
|
@@ -50,16 +50,21 @@ import {
|
|
|
50
50
|
orgPackDirOf,
|
|
51
51
|
questionsRelOf,
|
|
52
52
|
raiseQuestions,
|
|
53
|
-
require_dist,
|
|
54
53
|
reusedLine
|
|
55
|
-
} from "./chunk-
|
|
54
|
+
} from "./chunk-FPBUTZI5.js";
|
|
55
|
+
import {
|
|
56
|
+
renameRetrying
|
|
57
|
+
} from "./chunk-B4AEL3RF.js";
|
|
58
|
+
import {
|
|
59
|
+
require_dist
|
|
60
|
+
} from "./chunk-BQGDB6ZL.js";
|
|
56
61
|
import {
|
|
57
62
|
__toESM
|
|
58
63
|
} from "./chunk-TV45EUGM.js";
|
|
59
64
|
|
|
60
65
|
// packages/cli/dist/onboard-commands.js
|
|
61
66
|
var import_yaml = __toESM(require_dist(), 1);
|
|
62
|
-
import { mkdir, readFile,
|
|
67
|
+
import { mkdir, readFile, stat, writeFile } from "node:fs/promises";
|
|
63
68
|
import { join, resolve } from "node:path";
|
|
64
69
|
var plural = (n, one, many = `${one}s`) => `${n} ${n === 1 ? one : many}`;
|
|
65
70
|
var proposalPath = (root, name) => join(root, "proposals", "dialects", `${name}.yaml`);
|
|
@@ -157,7 +162,7 @@ async function onboardAccept(root, name, o, io) {
|
|
|
157
162
|
return 1;
|
|
158
163
|
}
|
|
159
164
|
await mkdir(join(orgPackDirOf(root), "dialects"), { recursive: true });
|
|
160
|
-
await
|
|
165
|
+
await renameRetrying(from, to);
|
|
161
166
|
const types = parsed.data.appliesTo.repoTypes;
|
|
162
167
|
io.out(`Accepted: org-pack/dialects/${name}.yaml. ${types.length ? `It applies to repos of type ${types.join(", ")}.` : `Add it to the repos it reads in repos.manifest.yaml: dialects: [${name}].`} Commit the org pack for review, as with any change to it.`);
|
|
163
168
|
return 0;
|
|
@@ -392,7 +397,7 @@ async function onboardFrameworkAccept(root, name, o, io) {
|
|
|
392
397
|
return 1;
|
|
393
398
|
}
|
|
394
399
|
await mkdir(join(orgPackDirOf(root), "frameworks"), { recursive: true });
|
|
395
|
-
await
|
|
400
|
+
await renameRetrying(from, to);
|
|
396
401
|
io.out(`Accepted: org-pack/frameworks/${name}.yaml. Scans read every repo that imports ${model.packages.join(", ")} through it. Commit the org pack for review, as with any change to it.`);
|
|
397
402
|
return 0;
|
|
398
403
|
}
|