@maycombhq/atticus 2.0.0-beta.21 → 2.0.0-beta.22
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 +3 -3
- package/dist/{chunk-TJH2EUAZ.js → chunk-23XVSEV5.js} +20 -18
- package/dist/{chunk-BXBCMGIQ.js → chunk-24OXGB3P.js} +1 -1
- package/dist/{chunk-DCWN3HFV.js → chunk-24XLDU72.js} +4 -3
- package/dist/{chunk-Q46QDDMF.js → chunk-2F4CYZKJ.js} +14 -9
- package/dist/{chunk-75ASLHBT.js → chunk-2GF7OLF3.js} +17 -15
- package/dist/chunk-2IIMFOPM.js +41 -0
- package/dist/{chunk-JRVNXLZP.js → chunk-2LGRMVCA.js} +14 -12
- package/dist/{chunk-62DLJSLV.js → chunk-2MMCFP5C.js} +10 -8
- package/dist/{chunk-UF4UHCIG.js → chunk-2Q56PQPS.js} +6 -4
- package/dist/{chunk-5TDRBOAV.js → chunk-2Q5EDGEO.js} +7 -5
- package/dist/{chunk-NYOABJNK.js → chunk-2RLKFUUL.js} +26 -24
- package/dist/chunk-2SKB4O2E.js +59 -0
- package/dist/{chunk-GCS3FZOB.js → chunk-34S2WGOB.js} +13 -4
- package/dist/{chunk-7AB6OWTV.js → chunk-3NFFJL5D.js} +31 -25
- package/dist/{chunk-GC2VK3JT.js → chunk-3NWDLGG6.js} +28 -25
- package/dist/{chunk-FLVZFTLQ.js → chunk-3RM4UK6W.js} +20 -18
- package/dist/{chunk-CNU5Q2D5.js → chunk-42SIDKEU.js} +37 -29
- package/dist/{chunk-K6JB6XTX.js → chunk-4EURQWQD.js} +20 -15
- package/dist/{chunk-OMPENNWY.js → chunk-4U276ICE.js} +1 -1
- package/dist/{chunk-JAABT3DA.js → chunk-53T4O55J.js} +4 -3
- package/dist/{chunk-YTTNTQOX.js → chunk-57TDNMI3.js} +17 -15
- package/dist/chunk-5BD2KYLE.js +57 -0
- package/dist/{chunk-7EFILTCI.js → chunk-5F7GFN2F.js} +28 -0
- package/dist/{chunk-KYZMRSPS.js → chunk-5NMKONLP.js} +5 -3
- package/dist/{chunk-5CMPVC3N.js → chunk-5SJZW52K.js} +25 -23
- package/dist/{chunk-YAH5IQAL.js → chunk-63YRMR6J.js} +6 -5
- package/dist/{chunk-GUYL7RMK.js → chunk-66PPNOON.js} +27 -25
- package/dist/chunk-6H3Z5JHH.js +64 -0
- package/dist/{chunk-Y6K3CJBU.js → chunk-6MUGR4LS.js} +75 -27
- package/dist/{chunk-DDJPM5YX.js → chunk-6OJQOPUN.js} +5 -3
- package/dist/{chunk-2V2ZPQQU.js → chunk-6PPOWY5E.js} +9 -7
- package/dist/{chunk-YO2PKTXT.js → chunk-6ZGLAACW.js} +5 -3
- package/dist/{chunk-LIJJCBQI.js → chunk-6ZJ5A7AF.js} +15 -16
- package/dist/{chunk-64AADMTW.js → chunk-745DAZ4L.js} +50 -12
- package/dist/{chunk-VYOCPTUB.js → chunk-7ASNL4Q4.js} +17 -15
- package/dist/{chunk-XEQCQO66.js → chunk-7BR7IPOH.js} +10 -8
- package/dist/{chunk-X2CUXTWU.js → chunk-7DOR27HL.js} +6 -6
- package/dist/{chunk-G6IQYM25.js → chunk-7FTTA3HD.js} +8 -6
- package/dist/{chunk-FAJDKNSD.js → chunk-7GJS6DNX.js} +8 -3
- package/dist/{chunk-4KNOJC6J.js → chunk-7IGKHZ4Z.js} +55 -13
- package/dist/{chunk-3WON4G3M.js → chunk-7IOWA5D5.js} +11 -6
- package/dist/{chunk-PNQLCRSS.js → chunk-7JITZFJC.js} +7 -5
- package/dist/{chunk-2D7PWSOK.js → chunk-7MJSQTL5.js} +22 -20
- package/dist/{chunk-AE4P57KK.js → chunk-7UOMVMFG.js} +17 -15
- package/dist/{chunk-GK4PYVEC.js → chunk-AFWUDXEM.js} +10 -8
- package/dist/chunk-AFZ3QA6W.js +47 -0
- package/dist/{chunk-7FUIVIBG.js → chunk-AJQ72EBM.js} +13 -8
- package/dist/{chunk-QOOEYDNJ.js → chunk-AJYXNTNZ.js} +6 -6
- package/dist/chunk-AVTBS4OW.js +49 -0
- package/dist/{chunk-WFU77T3A.js → chunk-BDKC6H5P.js} +5 -5
- package/dist/{chunk-3AQ2R5NL.js → chunk-BEVTIBRH.js} +9 -7
- package/dist/{chunk-J5AAZ6OJ.js → chunk-BHT7QK4G.js} +5 -4
- package/dist/{chunk-UFE36WJH.js → chunk-BIGDQDHD.js} +6 -4
- package/dist/{chunk-WNTIOBOG.js → chunk-BO4KX37X.js} +20 -18
- package/dist/{chunk-455SYIIE.js → chunk-BPK5P77O.js} +5 -3
- package/dist/{chunk-OZJ3JLYI.js → chunk-BQ4SQQC6.js} +10 -9
- package/dist/chunk-BQGDB6ZL.js +7342 -0
- package/dist/{chunk-EZIN5E5B.js → chunk-BTGPE6CR.js} +11 -9
- package/dist/{chunk-265LWMOA.js → chunk-BTY3HZBO.js} +18 -16
- package/dist/{chunk-TW3KOSQK.js → chunk-BXYMYEJ4.js} +7 -6
- package/dist/{chunk-HK3VOHIE.js → chunk-C3RY6KU6.js} +119 -18
- package/dist/chunk-C4R4JLHE.js +40 -0
- package/dist/{chunk-Z3QFH7YG.js → chunk-CADWLE2T.js} +5 -4
- package/dist/{chunk-J2O4LFVI.js → chunk-CBGGOQWU.js} +6 -4
- package/dist/chunk-CMDXGQTS.js +47 -0
- package/dist/{chunk-TWQRPM76.js → chunk-CQDGOPGH.js} +23 -16
- package/dist/{chunk-5PV7S2ZP.js → chunk-CX4RZ2KS.js} +4 -3
- package/dist/{chunk-JYMIB5XY.js → chunk-CXJ6FUKN.js} +164 -44
- package/dist/{chunk-D57MFJPP.js → chunk-D73UEXYW.js} +3 -3
- package/dist/{chunk-UYLBRRFK.js → chunk-DCZWQLYT.js} +125 -26
- package/dist/chunk-DLOBCJL6.js +48 -0
- package/dist/{chunk-IFHDV6KQ.js → chunk-DOBQKHIF.js} +23 -23
- package/dist/{chunk-QJCJOMW3.js → chunk-E3ISYXO3.js} +19 -21
- package/dist/{chunk-VAMHOHUU.js → chunk-E6ZIEVOI.js} +16 -13
- package/dist/{chunk-EFCQSMXB.js → chunk-EBL2R3YG.js} +10 -4
- package/dist/{chunk-HGHRSF3E.js → chunk-EGQRREQH.js} +25 -17
- package/dist/{chunk-3J5I7ZOU.js → chunk-EHA7RMZ3.js} +4 -4
- package/dist/{chunk-7CZHUZBL.js → chunk-EIPTLPFC.js} +38 -27
- package/dist/{chunk-UZACEG2C.js → chunk-EMRIQUND.js} +17 -15
- package/dist/{chunk-RALY3E5U.js → chunk-EPCJQQWD.js} +6 -4
- package/dist/{chunk-VUVGX5L2.js → chunk-F3P7N7SF.js} +1 -1
- package/dist/{chunk-RA33EYS4.js → chunk-FFLNS6VP.js} +19 -17
- package/dist/{chunk-OPQZISG3.js → chunk-FFTRTL6R.js} +5 -4
- package/dist/{chunk-DUPZPDCJ.js → chunk-FPJPLKDW.js} +18 -14
- package/dist/{chunk-2HH3UCZM.js → chunk-FSMSFDLD.js} +5 -4
- package/dist/{chunk-AHW3RY3X.js → chunk-FUJM6RTF.js} +8 -7
- package/dist/{chunk-2UCRFXFZ.js → chunk-FZOJFH7Q.js} +13 -11
- package/dist/{chunk-BVWWPBKD.js → chunk-G6X77UJZ.js} +20 -18
- package/dist/{chunk-BPPU3PW7.js → chunk-GCWRWSU7.js} +10 -4
- package/dist/chunk-GIW4ZVDB.js +39 -0
- package/dist/{chunk-FY3QIRTL.js → chunk-GUX3PTYM.js} +3 -3
- package/dist/{chunk-BA2HUMDN.js → chunk-GZY6RUZ6.js} +2 -2
- package/dist/chunk-H4VO6WG3.js +10 -0
- package/dist/{chunk-UEVZZZU2.js → chunk-H5HBGNXU.js} +5 -4
- package/dist/{chunk-GS76RXQE.js → chunk-H7KM7LZE.js} +15 -12
- package/dist/{chunk-I2A3Z5AK.js → chunk-HNM2YQT2.js} +4 -4
- package/dist/{chunk-3UTYPHN3.js → chunk-HYU5VLGA.js} +1 -1
- package/dist/{chunk-HSZMPH5T.js → chunk-IDKCWSM5.js} +225 -50
- package/dist/{chunk-BXZ4PKIT.js → chunk-IFKEI4SA.js} +15 -11
- package/dist/{chunk-XG4WJHLQ.js → chunk-IGOE6KPG.js} +49 -20
- package/dist/{chunk-GNWAOVFQ.js → chunk-IH2XURVQ.js} +5 -5
- package/dist/{chunk-YIGBJNH4.js → chunk-INQHESFB.js} +5 -4
- package/dist/chunk-IP74LCOQ.js +57 -0
- package/dist/chunk-IPHHDDC6.js +45 -0
- package/dist/{chunk-5WERBKLE.js → chunk-ISUAAMGS.js} +42 -221
- package/dist/{chunk-7FHNFCHK.js → chunk-IUPG3UKI.js} +154 -368
- package/dist/{chunk-HWD4JPU7.js → chunk-IVBOQAGB.js} +4 -2
- package/dist/{chunk-4SLBCEPD.js → chunk-J2JAKCIW.js} +88 -57
- package/dist/{chunk-G5YJBNDZ.js → chunk-J3IOLXWM.js} +8 -6
- package/dist/{chunk-FQ6WH6PB.js → chunk-JA5FI3QV.js} +6 -4
- package/dist/chunk-JAVI7JSP.js +49 -0
- package/dist/{chunk-ZFQMMU5Y.js → chunk-JB5LINEM.js} +6 -2
- package/dist/{chunk-LQH4P45K.js → chunk-JENSEMXF.js} +1 -1
- package/dist/{chunk-M6D2U3YM.js → chunk-JJF6HALY.js} +4 -3
- package/dist/chunk-JLUCKAEL.js +38 -0
- package/dist/{chunk-M4H2UG4R.js → chunk-JRBFANFE.js} +19 -16
- package/dist/{chunk-YZDZOEV4.js → chunk-KDNTAPLX.js} +3 -3
- package/dist/{chunk-IFFRGC3N.js → chunk-KFAVQZSX.js} +14 -12
- package/dist/chunk-KJXD4PNL.js +50 -0
- package/dist/chunk-KN5BXMWN.js +44 -0
- package/dist/{chunk-HXXP2NTE.js → chunk-KQGURXFU.js} +9 -7
- package/dist/{chunk-PQH56YF6.js → chunk-KXITGYLF.js} +6 -4
- package/dist/{chunk-MMZUN7ZO.js → chunk-L27SV425.js} +22 -20
- package/dist/{chunk-XQ3YZ4QW.js → chunk-LDLL7LB3.js} +24 -22
- package/dist/{chunk-6DQYZU2W.js → chunk-LFGTYX5U.js} +15 -15
- package/dist/{chunk-4D62IZII.js → chunk-LGBMTVNT.js} +7 -5
- package/dist/{chunk-YKTE2RU3.js → chunk-LGFL54FP.js} +3 -2
- package/dist/{chunk-GDZB57IU.js → chunk-LJXMYKZJ.js} +7 -5
- package/dist/{chunk-YJ3TBOTK.js → chunk-LKOR5UET.js} +29 -26
- package/dist/{chunk-WIWTJMMR.js → chunk-LNBQOP7D.js} +23 -21
- package/dist/{chunk-TGVVUKTG.js → chunk-LO6P2VYG.js} +2 -2
- package/dist/{chunk-HE3HRDNZ.js → chunk-LQJPN536.js} +2 -2
- package/dist/{chunk-PRW3HXM3.js → chunk-LYBNHMVZ.js} +29 -5
- package/dist/{chunk-75ZOZFGH.js → chunk-LZ7NUC62.js} +20 -18
- package/dist/chunk-M32BLWDH.js +37 -0
- package/dist/{chunk-QKMRFNMA.js → chunk-M3NANSDZ.js} +17 -15
- package/dist/chunk-MFHL5URL.js +31 -0
- package/dist/{chunk-TYD6I4CZ.js → chunk-MFR5OPBD.js} +6 -6
- package/dist/{chunk-LIRVU3HW.js → chunk-MG4ZL5RW.js} +32 -20
- package/dist/{chunk-ICHDSWEY.js → chunk-MO6P2JZH.js} +10 -8
- package/dist/{chunk-3LZ6P5EP.js → chunk-MUWDB4R4.js} +1 -1
- package/dist/{chunk-E57AOFYN.js → chunk-MZCGSXVR.js} +15 -13
- package/dist/{chunk-77O633L5.js → chunk-N3XIYPU3.js} +14 -12
- package/dist/{chunk-CG6CULP6.js → chunk-NDCF4R6S.js} +7 -5
- package/dist/{chunk-JS6WMC3J.js → chunk-NR2UJWOC.js} +10 -8
- package/dist/chunk-NXJ5URP6.js +51 -0
- package/dist/{chunk-NTAVOWYD.js → chunk-NY2XSR5K.js} +20 -18
- package/dist/{chunk-PUEWDYGP.js → chunk-O45HFTFS.js} +3 -2
- package/dist/{chunk-URIKUID7.js → chunk-O4GXGGBX.js} +14 -12
- package/dist/{chunk-C7CEK3KW.js → chunk-O5PXQR67.js} +7 -5
- package/dist/{chunk-E2VXBSIR.js → chunk-O66DM6DJ.js} +6 -4
- package/dist/{chunk-P2VBXX7N.js → chunk-O7FDLW7L.js} +11 -9
- package/dist/{chunk-COYN3UAN.js → chunk-O7XLYEFA.js} +59 -22
- package/dist/{chunk-5QUOPNLN.js → chunk-OHNCWBKF.js} +4 -4
- package/dist/{chunk-AZDITBCT.js → chunk-OHVTTOPS.js} +3 -3
- package/dist/chunk-OMI6FPPN.js +43 -0
- package/dist/chunk-ONUPY3H6.js +53 -0
- package/dist/chunk-OTLDSZDV.js +69 -0
- package/dist/{chunk-L4CESDPB.js → chunk-OUBGGKDU.js} +1 -1
- package/dist/{chunk-4FOAYLI4.js → chunk-OWNCM4ZN.js} +9 -7
- package/dist/{chunk-4B6BT75O.js → chunk-P2V7QW4D.js} +81 -24
- package/dist/{chunk-QHJJMZLX.js → chunk-P32RUW3B.js} +167 -92
- package/dist/{chunk-F6H2RJ3N.js → chunk-PAQ2AS5E.js} +1 -1
- package/dist/{chunk-ZLS6PU2O.js → chunk-PBPBMP2B.js} +4 -3
- package/dist/{chunk-ZOSD4FXV.js → chunk-PJSJPMJI.js} +3 -3
- package/dist/{chunk-XOL3GFW2.js → chunk-PKBHS4AA.js} +68 -31
- package/dist/{chunk-ZZFHLRQW.js → chunk-PMUAJGLI.js} +18 -16
- package/dist/{chunk-SH27FYPF.js → chunk-PPD7HTDP.js} +20 -18
- package/dist/chunk-PSOFBQWB.js +42 -0
- package/dist/{chunk-PAINMSID.js → chunk-Q2TECDIT.js} +987 -7619
- package/dist/{chunk-LU4MQVAL.js → chunk-Q4K5WB2W.js} +11 -10
- package/dist/{chunk-ECLXZWAG.js → chunk-Q6DFNVRJ.js} +14 -12
- package/dist/chunk-QA4O2GGC.js +265 -0
- package/dist/{chunk-4WXRPQDE.js → chunk-QAXW2N3B.js} +182 -33
- package/dist/{chunk-WCEF7H6L.js → chunk-QFWA2DPH.js} +8 -5
- package/dist/{chunk-CPK7QSBG.js → chunk-QKUJMING.js} +8 -6
- package/dist/{chunk-LEBR5NHW.js → chunk-R44CYFPV.js} +18 -15
- package/dist/{chunk-BEPCKDCP.js → chunk-R7NYHMUU.js} +153 -84
- package/dist/{chunk-G6X4YL4D.js → chunk-REWWDVQB.js} +5 -4
- package/dist/{chunk-LN77DXBM.js → chunk-RGERPOIV.js} +10 -10
- package/dist/{chunk-UDXWIPCB.js → chunk-RLDGWLQ7.js} +9 -7
- package/dist/chunk-RUGXBPWI.js +384 -0
- package/dist/{chunk-FYBF5MB2.js → chunk-RXPJMEOW.js} +13 -11
- package/dist/{chunk-K332XW7K.js → chunk-S4PMJU6H.js} +20 -9
- package/dist/{chunk-THN26IEF.js → chunk-S7FCV7S5.js} +4 -1
- package/dist/{chunk-OV57AHCG.js → chunk-SDKLKB6I.js} +26 -24
- package/dist/{chunk-O4IKAIZ2.js → chunk-SFSPGFCV.js} +28 -22
- package/dist/{chunk-TQ4TG57V.js → chunk-SFUP7TTO.js} +4 -4
- package/dist/{chunk-YBOVNMHC.js → chunk-SLXZOMA6.js} +29 -16
- package/dist/{chunk-LWDNKE4X.js → chunk-SQV37XO2.js} +6 -6
- package/dist/{chunk-67BP7HXL.js → chunk-SU74NDMQ.js} +19 -17
- package/dist/{chunk-JKIGL3XQ.js → chunk-SYV5LHML.js} +36 -33
- package/dist/chunk-T4YPZIQN.js +36 -0
- package/dist/{chunk-GX74YWR7.js → chunk-T6DQR5TV.js} +16 -14
- package/dist/{chunk-LNWEWYCM.js → chunk-THDMSZ3R.js} +345 -253
- package/dist/{chunk-NCB6656Z.js → chunk-TNR75OXT.js} +7 -7
- package/dist/{chunk-ODMBPDDV.js → chunk-TUULXQRW.js} +124 -2
- package/dist/{chunk-MD7KUEJ3.js → chunk-TYQBFTBR.js} +9 -7
- package/dist/chunk-U76OWS3Q.js +49 -0
- package/dist/{chunk-GSGIZ2OO.js → chunk-UCROWG2D.js} +27 -24
- package/dist/{chunk-PTQ3ZALZ.js → chunk-UF4AZOZB.js} +14 -12
- package/dist/{chunk-QE527XRY.js → chunk-UF4GLFBX.js} +26 -23
- package/dist/{chunk-YWAKDNMH.js → chunk-UGUP3ZM6.js} +70 -19
- package/dist/{chunk-3G6S7LAA.js → chunk-UNAGJYET.js} +14 -12
- package/dist/{chunk-EDZ45WIR.js → chunk-UOR2DTHH.js} +16 -14
- package/dist/{chunk-42EPP7OB.js → chunk-UPOY4YSQ.js} +14 -12
- package/dist/{chunk-API5TOUB.js → chunk-UPS2DGFC.js} +1 -1
- package/dist/{chunk-D2WSW4GU.js → chunk-UUU4CLJG.js} +4 -2
- package/dist/{chunk-ZKYRDV7A.js → chunk-UWMJKX5U.js} +14 -12
- package/dist/{chunk-HS4BGB4G.js → chunk-UWOJLHFT.js} +25 -23
- package/dist/{chunk-OKUB6RJA.js → chunk-VBTP56CE.js} +8 -6
- package/dist/{chunk-3SSTNB4E.js → chunk-VCTWPLAO.js} +34 -14
- package/dist/{chunk-YF5DZCPN.js → chunk-VNU26RCO.js} +37 -34
- package/dist/{chunk-AOCWFA7T.js → chunk-VTZMAJ3W.js} +8 -8
- package/dist/{chunk-ZQLRCA2V.js → chunk-VW62D6QE.js} +10 -8
- package/dist/{chunk-WAZEXEJH.js → chunk-VY72R2XZ.js} +45 -2
- package/dist/{chunk-WEOMJHPV.js → chunk-VZALIKIF.js} +18 -15
- package/dist/{chunk-TSM6T6GQ.js → chunk-W62H2XSO.js} +25 -23
- package/dist/{chunk-BC6KKZ67.js → chunk-W7VWI2YH.js} +9 -6
- package/dist/{chunk-LO3BLMVG.js → chunk-WERM6KPJ.js} +7 -4
- package/dist/{chunk-36RY7ZXM.js → chunk-WF7B67YE.js} +88 -26
- package/dist/{chunk-TQTRWENN.js → chunk-WG5U3F5V.js} +14 -12
- package/dist/{chunk-NRQ65LTQ.js → chunk-WJF2CS6M.js} +6 -5
- package/dist/{chunk-FVMPFCDS.js → chunk-WKUJ3KPV.js} +4 -4
- package/dist/{chunk-BA3U7ALS.js → chunk-WMTRHUI5.js} +26 -22
- package/dist/chunk-WNKPRSGI.js +36 -0
- package/dist/{chunk-GIFMBCTW.js → chunk-WXFLMQSR.js} +10 -8
- package/dist/{chunk-JYTIHTIK.js → chunk-X3WY6MN3.js} +4 -4
- package/dist/{chunk-S2RY3BOD.js → chunk-X4CXA2IL.js} +31 -21
- package/dist/{chunk-26Z7OGQW.js → chunk-X5F3Q5LV.js} +60 -30
- package/dist/{chunk-4CLK2RJO.js → chunk-XD75VZIH.js} +6 -4
- package/dist/{chunk-KDAHXQIE.js → chunk-XERYFDB5.js} +37 -34
- package/dist/{chunk-U3NBK4EU.js → chunk-XI2LCCYQ.js} +8 -8
- package/dist/{chunk-MZGRDONP.js → chunk-Y2EQNWKV.js} +55 -38
- package/dist/{chunk-A2G72UI4.js → chunk-YHCMZC2J.js} +7 -7
- package/dist/{chunk-4TKVU2I2.js → chunk-YYY3AZFE.js} +2 -2
- package/dist/{chunk-2HTEMYTB.js → chunk-Z5IA3WDR.js} +17 -15
- package/dist/{chunk-FRHD22WM.js → chunk-ZFFYNRIO.js} +25 -23
- package/dist/{chunk-6EXDI5GI.js → chunk-ZFL7NY4F.js} +43 -40
- package/dist/{chunk-4PYC2UGC.js → chunk-ZGULQAPZ.js} +7 -4
- package/dist/{chunk-4SKZDI62.js → chunk-ZIUFM5HT.js} +3 -1
- package/dist/{chunk-CNPY4NTZ.js → chunk-ZJFRMSJT.js} +15 -13
- package/dist/{chunk-Q26LDIUV.js → chunk-ZJXLNDH4.js} +18 -15
- package/dist/{chunk-LPV6T362.js → chunk-ZQ3ON2VQ.js} +8 -6
- package/dist/{chunk-ZX7235KR.js → chunk-ZQ7SKESZ.js} +44 -383
- package/dist/{chunk-7QPCGTPS.js → chunk-ZQXZ2SES.js} +24 -21
- package/dist/{chunk-4CYTJ5TZ.js → chunk-ZX57KSEQ.js} +4 -3
- package/dist/{chunk-37WE3LS2.js → chunk-ZZK56BLP.js} +5 -3
- package/dist/files.json +533 -509
- package/dist/packages/sdk/npm/index.js +448 -67
- package/dist/packages/ui/dist/assets/{elk-api-CowTnhEJ.js → elk-api-CIf-0gz5.js} +2 -2
- package/dist/packages/ui/dist/assets/index-CoK_Dl0D.js +47 -0
- package/dist/packages/ui/dist/index.html +2 -1
- package/package.json +4 -4
- 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-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-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-z2wv0d5d.js +0 -47
|
@@ -62,13 +62,15 @@ import {
|
|
|
62
62
|
specEndpointIds,
|
|
63
63
|
specFormatOf,
|
|
64
64
|
vendorImpact
|
|
65
|
-
} from "./chunk-
|
|
66
|
-
import "./chunk-
|
|
67
|
-
import "./chunk-
|
|
68
|
-
import "./chunk-
|
|
69
|
-
import "./chunk-
|
|
70
|
-
import "./chunk-
|
|
71
|
-
import "./chunk-
|
|
65
|
+
} from "./chunk-QKUJMING.js";
|
|
66
|
+
import "./chunk-6ZGLAACW.js";
|
|
67
|
+
import "./chunk-CQDGOPGH.js";
|
|
68
|
+
import "./chunk-3NFFJL5D.js";
|
|
69
|
+
import "./chunk-P32RUW3B.js";
|
|
70
|
+
import "./chunk-QA4O2GGC.js";
|
|
71
|
+
import "./chunk-Q2TECDIT.js";
|
|
72
|
+
import "./chunk-TUULXQRW.js";
|
|
73
|
+
import "./chunk-BQGDB6ZL.js";
|
|
72
74
|
import "./chunk-TV45EUGM.js";
|
|
73
75
|
export {
|
|
74
76
|
CHANGE_INPUTS_SCHEMA_VERSION,
|
|
@@ -0,0 +1,384 @@
|
|
|
1
|
+
import { createRequire as __atticusCreateRequire } from "node:module";
|
|
2
|
+
import { fileURLToPath as __atticusFileURLToPath } from "node:url";
|
|
3
|
+
var require = __atticusCreateRequire(import.meta.url);
|
|
4
|
+
var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
|
|
5
|
+
var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
6
|
+
import {
|
|
7
|
+
generateTests,
|
|
8
|
+
matrixCsv,
|
|
9
|
+
matrixMarkdown,
|
|
10
|
+
traceMatrix,
|
|
11
|
+
writeTraceFindings
|
|
12
|
+
} from "./chunk-BTGPE6CR.js";
|
|
13
|
+
import {
|
|
14
|
+
DriftError,
|
|
15
|
+
SNIPPET_KINDS,
|
|
16
|
+
archiveGate,
|
|
17
|
+
driftExitCode,
|
|
18
|
+
driftJUnit,
|
|
19
|
+
driftJson,
|
|
20
|
+
driftMarkdown,
|
|
21
|
+
pipelineSnippet,
|
|
22
|
+
repoDrift
|
|
23
|
+
} from "./chunk-ZQ7SKESZ.js";
|
|
24
|
+
import {
|
|
25
|
+
table
|
|
26
|
+
} from "./chunk-VOGCSYOI.js";
|
|
27
|
+
import {
|
|
28
|
+
GlossaryError,
|
|
29
|
+
aliasDecision,
|
|
30
|
+
completeGlossaryDefinitions,
|
|
31
|
+
defineDecision,
|
|
32
|
+
linkDecision,
|
|
33
|
+
loadGlossary,
|
|
34
|
+
resolveTermId,
|
|
35
|
+
scanGlossary,
|
|
36
|
+
writeDecisions
|
|
37
|
+
} from "./chunk-J2JAKCIW.js";
|
|
38
|
+
import {
|
|
39
|
+
createGit
|
|
40
|
+
} from "./chunk-PKBHS4AA.js";
|
|
41
|
+
import {
|
|
42
|
+
runtimeForCli
|
|
43
|
+
} from "./chunk-P32RUW3B.js";
|
|
44
|
+
|
|
45
|
+
// packages/cli/dist/quality-commands.js
|
|
46
|
+
import { appendFile, mkdir, writeFile } from "node:fs/promises";
|
|
47
|
+
import { dirname, join } from "node:path";
|
|
48
|
+
var KNOWN = /* @__PURE__ */ new Set([
|
|
49
|
+
"TestgenError",
|
|
50
|
+
"PlannerError",
|
|
51
|
+
"ChangeError",
|
|
52
|
+
"ChangeFileError",
|
|
53
|
+
"GlossaryError",
|
|
54
|
+
"RuntimeConfigError"
|
|
55
|
+
]);
|
|
56
|
+
function fail(io, e) {
|
|
57
|
+
if (e instanceof Error && KNOWN.has(e.name)) {
|
|
58
|
+
io.err(e.message);
|
|
59
|
+
return e.code === "invalid" ? 2 : 1;
|
|
60
|
+
}
|
|
61
|
+
throw e;
|
|
62
|
+
}
|
|
63
|
+
var iso = (d) => d.toISOString().replace(/\.\d{3}Z$/, "Z");
|
|
64
|
+
var lines = (io, text) => {
|
|
65
|
+
for (const l of text.trimEnd().split("\n"))
|
|
66
|
+
io.out(l);
|
|
67
|
+
};
|
|
68
|
+
var plural = (n, w) => `${n} ${w}${n === 1 ? "" : "s"}`;
|
|
69
|
+
async function runtimeOf(root, mode, deps) {
|
|
70
|
+
if (deps.runtime)
|
|
71
|
+
return deps.runtime;
|
|
72
|
+
if (!mode && !process.env.ATTICUS_RUNTIME)
|
|
73
|
+
return void 0;
|
|
74
|
+
return (await runtimeForCli(root, mode ? { mode } : {})).runtime;
|
|
75
|
+
}
|
|
76
|
+
async function testsGenerate(root, changeId, storyId, o, io, deps = {}) {
|
|
77
|
+
if (!changeId || !storyId) {
|
|
78
|
+
io.err("Usage: atticus tests generate <change> <story> [--framework <id>] [--force] [--check] [--mode <mode>] [--json]");
|
|
79
|
+
return 2;
|
|
80
|
+
}
|
|
81
|
+
try {
|
|
82
|
+
const runtime = await runtimeOf(root, o.mode, deps);
|
|
83
|
+
const r = await generateTests(root, changeId, storyId, {
|
|
84
|
+
...o.framework ? { framework: o.framework } : {},
|
|
85
|
+
...o.force ? { force: true } : {},
|
|
86
|
+
...o.check ? { check: true } : {},
|
|
87
|
+
...o.resume ? { resume: o.resume } : {},
|
|
88
|
+
...runtime ? { runtime } : {},
|
|
89
|
+
now: deps.now?.() ?? /* @__PURE__ */ new Date()
|
|
90
|
+
});
|
|
91
|
+
const kept = r.files.filter((f) => f.action === "kept-edited" || f.action === "kept-not-generated");
|
|
92
|
+
if (o.json) {
|
|
93
|
+
io.out(JSON.stringify({
|
|
94
|
+
change: r.change,
|
|
95
|
+
story: r.story,
|
|
96
|
+
strategy: r.model.strategy,
|
|
97
|
+
kinds: r.model.kinds,
|
|
98
|
+
names: r.names.by,
|
|
99
|
+
...r.names.waiting ? { waiting: r.names.waiting } : {},
|
|
100
|
+
files: r.files,
|
|
101
|
+
manifest: r.manifest,
|
|
102
|
+
notes: r.notes,
|
|
103
|
+
gaps: r.gaps
|
|
104
|
+
}, null, 2));
|
|
105
|
+
return kept.length ? 1 : 0;
|
|
106
|
+
}
|
|
107
|
+
const count = (a) => r.files.filter((f) => f.action === a).length;
|
|
108
|
+
const cases = r.model.repos.reduce((n, x) => n + x.cases.length, 0);
|
|
109
|
+
io.out(`${o.check ? "Would write" : "Generated"} ${plural(cases, "test case")} for ${r.story} in ${plural(r.files.length, "file")}: ${count("created")} new, ${count("updated")} updated, ${count("unchanged")} unchanged${kept.length ? `, ${kept.length} kept` : ""}.`);
|
|
110
|
+
for (const l of table(["ACTION", "REPO", "FRAMEWORK", "FILE"], r.files.map((f) => [f.action, f.repo || "-", f.generator, f.path])))
|
|
111
|
+
io.out(l);
|
|
112
|
+
for (const k of r.model.kinds.filter((x) => !x.generated))
|
|
113
|
+
io.out(`No ${k.type} tests: ${k.why}`);
|
|
114
|
+
for (const n of r.notes)
|
|
115
|
+
io.out(n);
|
|
116
|
+
for (const g of r.gaps)
|
|
117
|
+
io.out(`Gap: ${g}`);
|
|
118
|
+
if (r.names.waiting)
|
|
119
|
+
io.out(`The test writer is with your assistant (run ${r.names.waiting}); the files use plain names until you run: atticus tests generate ${changeId} ${storyId} --resume ${r.names.waiting}`);
|
|
120
|
+
if (!o.check)
|
|
121
|
+
io.out(`Manifest: ${r.manifest}`);
|
|
122
|
+
return kept.length ? 1 : 0;
|
|
123
|
+
} catch (e) {
|
|
124
|
+
return fail(io, e);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
async function traceCommand(root, changeId, o, io, deps = {}) {
|
|
128
|
+
if (!changeId) {
|
|
129
|
+
io.err("Usage: atticus trace <change> [--json | --csv] [--no-write]");
|
|
130
|
+
return 2;
|
|
131
|
+
}
|
|
132
|
+
try {
|
|
133
|
+
const m = await traceMatrix(root, changeId, { git: deps.git ?? createGit() });
|
|
134
|
+
for (const p of m.problems)
|
|
135
|
+
io.err(p);
|
|
136
|
+
const w = o.write === false ? void 0 : await writeTraceFindings(root, m, iso(deps.now?.() ?? /* @__PURE__ */ new Date()));
|
|
137
|
+
if (o.json)
|
|
138
|
+
io.out(JSON.stringify({ ...m, ...w ? { round: w.round ?? null } : {} }, null, 2));
|
|
139
|
+
else if (o.csv)
|
|
140
|
+
lines(io, matrixCsv(m));
|
|
141
|
+
else {
|
|
142
|
+
lines(io, matrixMarkdown(m));
|
|
143
|
+
if (w)
|
|
144
|
+
io.out(w.unchanged ? `Findings on the trace gate are unchanged (round ${w.round ?? "none"}).` : `Wrote ${plural(w.findings.length, "finding")} to review/trace/${w.round}/.`);
|
|
145
|
+
}
|
|
146
|
+
return m.gaps.some((g) => g.kind !== "test-without-requirement") ? 1 : 0;
|
|
147
|
+
} catch (e) {
|
|
148
|
+
return fail(io, e);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
async function ciDrift(repoDir, o, io, deps = {}) {
|
|
152
|
+
if (!o.catalog) {
|
|
153
|
+
io.err("Usage: atticus ci drift [repo-dir] --catalog <metarepo or catalog folder> [--repo <id>] [--json [file]] [--junit <file>] [--summary <file>] [--warn-only]");
|
|
154
|
+
return 2;
|
|
155
|
+
}
|
|
156
|
+
try {
|
|
157
|
+
const r = await repoDrift({
|
|
158
|
+
repoDir,
|
|
159
|
+
catalog: o.catalog,
|
|
160
|
+
...o.repo ? { repo: o.repo } : {},
|
|
161
|
+
...o.warnOnly ? { warnOnly: true } : {},
|
|
162
|
+
...deps.commit ? { commit: deps.commit } : {},
|
|
163
|
+
...deps.git ? { git: deps.git } : {}
|
|
164
|
+
});
|
|
165
|
+
const put = async (file, text) => {
|
|
166
|
+
await mkdir(dirname(file), { recursive: true });
|
|
167
|
+
await writeFile(file, text, "utf8");
|
|
168
|
+
};
|
|
169
|
+
if (typeof o.json === "string")
|
|
170
|
+
await put(o.json, driftJson(r));
|
|
171
|
+
if (o.junit)
|
|
172
|
+
await put(o.junit, driftJUnit(r));
|
|
173
|
+
if (o.summary) {
|
|
174
|
+
await mkdir(dirname(o.summary), { recursive: true });
|
|
175
|
+
await appendFile(o.summary, driftMarkdown(r), "utf8");
|
|
176
|
+
}
|
|
177
|
+
if (o.json === true)
|
|
178
|
+
io.out(driftJson(r).trimEnd());
|
|
179
|
+
else
|
|
180
|
+
lines(io, driftMarkdown(r));
|
|
181
|
+
return driftExitCode(r);
|
|
182
|
+
} catch (e) {
|
|
183
|
+
if (e instanceof DriftError) {
|
|
184
|
+
io.err(e.message);
|
|
185
|
+
return 2;
|
|
186
|
+
}
|
|
187
|
+
throw e;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
async function ciSnippet(kind, io, o = {}) {
|
|
191
|
+
const s = kind ? pipelineSnippet(kind) : void 0;
|
|
192
|
+
if (!s) {
|
|
193
|
+
io.err(`Usage: atticus ci snippet <${SNIPPET_KINDS.join("|")}> [--write <repo-dir>]`);
|
|
194
|
+
return 2;
|
|
195
|
+
}
|
|
196
|
+
if (o.write) {
|
|
197
|
+
const file = join(o.write, ...s.path.split("/"));
|
|
198
|
+
await mkdir(dirname(file), { recursive: true });
|
|
199
|
+
await writeFile(file, s.content, "utf8");
|
|
200
|
+
io.out(`Wrote ${s.path}. Set the variables its first lines name, then commit it.`);
|
|
201
|
+
return 0;
|
|
202
|
+
}
|
|
203
|
+
lines(io, s.content);
|
|
204
|
+
return 0;
|
|
205
|
+
}
|
|
206
|
+
async function ciArchiveGate(root, changeId, o, io, deps = {}) {
|
|
207
|
+
if (!changeId) {
|
|
208
|
+
io.err("Usage: atticus ci archive-gate <change> [--drift <report.json>...] [--json]");
|
|
209
|
+
return 2;
|
|
210
|
+
}
|
|
211
|
+
let r;
|
|
212
|
+
try {
|
|
213
|
+
r = await archiveGate(root, changeId, {
|
|
214
|
+
...o.drift?.length ? { driftReports: o.drift } : {},
|
|
215
|
+
...deps.commit ? { commit: deps.commit } : {}
|
|
216
|
+
});
|
|
217
|
+
} catch (e) {
|
|
218
|
+
if (e instanceof Error && e.name === "ChangeFileError") {
|
|
219
|
+
io.err(e.message);
|
|
220
|
+
return 2;
|
|
221
|
+
}
|
|
222
|
+
throw e;
|
|
223
|
+
}
|
|
224
|
+
if (o.json)
|
|
225
|
+
io.out(JSON.stringify(r, null, 2));
|
|
226
|
+
else {
|
|
227
|
+
io.out(r.pass ? `${changeId} may be archived: no blockers, its release PRs merged and built, and the catalog says what shipped.` : `${changeId} can't be archived yet (${plural(r.blockers.length, "blocker")}):`);
|
|
228
|
+
for (const b of r.blockers)
|
|
229
|
+
io.out(`- ${b.message}`);
|
|
230
|
+
for (const n of r.notes)
|
|
231
|
+
io.out(n);
|
|
232
|
+
}
|
|
233
|
+
return r.pass ? 0 : 1;
|
|
234
|
+
}
|
|
235
|
+
var short = (s, n = 70) => s.length <= n ? s : `${s.slice(0, n - 3)}...`;
|
|
236
|
+
var sourceOf = (flags, confidence) => confidence === "asserted" ? "person" : flags?.includes("ai-proposed") ? "ai" : flags?.includes("undefined") ? "code" : "wiki";
|
|
237
|
+
async function glossaryList(root, o, io) {
|
|
238
|
+
const g = await loadGlossary(root);
|
|
239
|
+
for (const p of g.problems)
|
|
240
|
+
io.err(p);
|
|
241
|
+
if (o.json) {
|
|
242
|
+
io.out(JSON.stringify({
|
|
243
|
+
terms: g.terms,
|
|
244
|
+
conflicts: g.build.conflicts,
|
|
245
|
+
hints: g.build.hints,
|
|
246
|
+
synonyms: Object.fromEntries(g.build.entries.filter((e) => e.aliases.length).map((e) => [e.id, e.aliases]))
|
|
247
|
+
}, null, 2));
|
|
248
|
+
return 0;
|
|
249
|
+
}
|
|
250
|
+
if (!g.terms.length) {
|
|
251
|
+
io.out("The glossary is empty: no wiki page defines a term and the catalog has no domain words yet.");
|
|
252
|
+
return 0;
|
|
253
|
+
}
|
|
254
|
+
for (const l of table(["TERM", "ID", "FROM", "FLAGS", "DEFINITION"], g.terms.map((t) => [
|
|
255
|
+
t.term,
|
|
256
|
+
t.id,
|
|
257
|
+
sourceOf(t.flags, t.confidence),
|
|
258
|
+
(t.flags ?? []).join(","),
|
|
259
|
+
short(t.definition)
|
|
260
|
+
])))
|
|
261
|
+
io.out(l);
|
|
262
|
+
io.out(`${plural(g.terms.length, "term")}, ${plural(g.build.conflicts.filter((c) => !c.resolved).length, "conflict")}.`);
|
|
263
|
+
return 0;
|
|
264
|
+
}
|
|
265
|
+
async function glossaryScan(root, o, io, deps = {}) {
|
|
266
|
+
try {
|
|
267
|
+
const runtime = await runtimeOf(root, o.mode, deps);
|
|
268
|
+
const r = await scanGlossary(root, {
|
|
269
|
+
...runtime ? { runtime } : {},
|
|
270
|
+
...deps.now ? { now: deps.now() } : {}
|
|
271
|
+
});
|
|
272
|
+
if (o.json) {
|
|
273
|
+
for (const p of r.problems)
|
|
274
|
+
io.err(p);
|
|
275
|
+
io.out(JSON.stringify({
|
|
276
|
+
terms: r.terms.length,
|
|
277
|
+
written: r.written,
|
|
278
|
+
removed: r.removed,
|
|
279
|
+
conflicts: r.build.conflicts,
|
|
280
|
+
hints: r.build.hints,
|
|
281
|
+
...r.propose ? { proposals: r.propose.proposals.length, discarded: r.propose.discarded } : {}
|
|
282
|
+
}, null, 2));
|
|
283
|
+
return 0;
|
|
284
|
+
}
|
|
285
|
+
printGlossaryScan(r, io);
|
|
286
|
+
return 0;
|
|
287
|
+
} catch (e) {
|
|
288
|
+
return fail(io, e);
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
function printGlossaryScan(r, io) {
|
|
292
|
+
for (const p of r.problems)
|
|
293
|
+
io.err(p);
|
|
294
|
+
const open = r.build.conflicts.filter((c) => !c.resolved);
|
|
295
|
+
io.out(`The glossary has ${plural(r.terms.length, "term")}; ${plural(r.written.length, "file")} written and ${plural(r.removed.length, "file")} removed in catalog/generated.`);
|
|
296
|
+
if (r.propose)
|
|
297
|
+
io.out(r.propose.waiting ? `The glossary definer is with your assistant (run ${r.propose.waiting}). When it is done, run: atticus handoff done ${r.propose.waiting}` : `The glossary definer proposed ${plural(r.propose.proposals.length, "definition")} (kept inferred until a person defines the term).`);
|
|
298
|
+
for (const d of r.propose?.discarded ?? [])
|
|
299
|
+
if (d.term && !r.propose?.waiting)
|
|
300
|
+
io.err(`Discarded ${d.term}: ${d.reason}`);
|
|
301
|
+
for (const c of open)
|
|
302
|
+
io.out(`Conflict: ${c.message}`);
|
|
303
|
+
for (const h of r.build.hints)
|
|
304
|
+
io.out(`Naming: ${h.message}`);
|
|
305
|
+
}
|
|
306
|
+
async function completeGlossaryScan(root, run, io, deps = {}) {
|
|
307
|
+
try {
|
|
308
|
+
const r = await completeGlossaryDefinitions(root, run, deps.now ? { now: deps.now } : {});
|
|
309
|
+
printGlossaryScan(r, io);
|
|
310
|
+
return 0;
|
|
311
|
+
} catch (e) {
|
|
312
|
+
return fail(io, e);
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
async function decide(root, io, make, said) {
|
|
316
|
+
try {
|
|
317
|
+
const g = await loadGlossary(root);
|
|
318
|
+
const ds = make(g);
|
|
319
|
+
const files = await writeDecisions(join(g.catalogDir, "curated"), ds);
|
|
320
|
+
await scanGlossary(root);
|
|
321
|
+
io.out(`Wrote ${files.map((f) => `catalog/curated/${f}`).join(" and ")}: ${said}. Commit it so every scan keeps it.`);
|
|
322
|
+
return 0;
|
|
323
|
+
} catch (e) {
|
|
324
|
+
if (e instanceof GlossaryError) {
|
|
325
|
+
io.err(e.message);
|
|
326
|
+
return e.code === "invalid" ? 2 : 1;
|
|
327
|
+
}
|
|
328
|
+
throw e;
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
async function glossaryDefine(root, term, definition, o, io) {
|
|
332
|
+
if (!term || !definition || !o.by) {
|
|
333
|
+
io.err('Usage: atticus glossary define <term> "<definition>" [--by <handle>] [--owner <team>]');
|
|
334
|
+
return 2;
|
|
335
|
+
}
|
|
336
|
+
return decide(root, io, (g) => {
|
|
337
|
+
const existing = g.terms.find((t) => t.id === resolveTermId(term));
|
|
338
|
+
return [
|
|
339
|
+
defineDecision(term, definition, {
|
|
340
|
+
by: o.by,
|
|
341
|
+
...o.owner ? { owner: o.owner } : {},
|
|
342
|
+
...existing ? { existing } : {}
|
|
343
|
+
})
|
|
344
|
+
];
|
|
345
|
+
}, `${resolveTermId(term)} is defined and asserted`);
|
|
346
|
+
}
|
|
347
|
+
async function glossaryLink(root, term, recordId, o, io) {
|
|
348
|
+
if (!term || !recordId || !o.by) {
|
|
349
|
+
io.err("Usage: atticus glossary link <term> <record-id | schema#field> [--by <handle>]");
|
|
350
|
+
return 2;
|
|
351
|
+
}
|
|
352
|
+
return decide(root, io, (g) => {
|
|
353
|
+
const id = resolveTermId(term);
|
|
354
|
+
const t = g.terms.find((x) => x.id === id);
|
|
355
|
+
if (!t)
|
|
356
|
+
throw new GlossaryError("not-found", `There is no term ${id}. Define it first: atticus glossary define`);
|
|
357
|
+
return [linkDecision(t, recordId, g.base, { by: o.by })];
|
|
358
|
+
}, `${recordId} is linked to ${resolveTermId(term)}`);
|
|
359
|
+
}
|
|
360
|
+
async function glossaryAlias(root, term, names, o, io) {
|
|
361
|
+
if (!term || !names.length || !o.by) {
|
|
362
|
+
io.err('Usage: atticus glossary alias <term> "<other name>"... [--by <handle>]');
|
|
363
|
+
return 2;
|
|
364
|
+
}
|
|
365
|
+
return decide(root, io, (g) => {
|
|
366
|
+
const id = resolveTermId(term);
|
|
367
|
+
const before = g.build.entries.find((e) => e.id === id)?.aliases ?? [];
|
|
368
|
+
return [aliasDecision(id, [...before, ...names], { by: o.by })];
|
|
369
|
+
}, `${names.join(", ")} ${names.length === 1 ? "is another name" : "are other names"} for ${resolveTermId(term)}`);
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
export {
|
|
373
|
+
testsGenerate,
|
|
374
|
+
traceCommand,
|
|
375
|
+
ciDrift,
|
|
376
|
+
ciSnippet,
|
|
377
|
+
ciArchiveGate,
|
|
378
|
+
glossaryList,
|
|
379
|
+
glossaryScan,
|
|
380
|
+
completeGlossaryScan,
|
|
381
|
+
glossaryDefine,
|
|
382
|
+
glossaryLink,
|
|
383
|
+
glossaryAlias
|
|
384
|
+
};
|
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
cliMarkdown,
|
|
8
8
|
gradeDialect,
|
|
9
9
|
kindsMarkdown
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-O7FDLW7L.js";
|
|
11
11
|
import {
|
|
12
12
|
generateTests
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-BTGPE6CR.js";
|
|
14
14
|
import {
|
|
15
15
|
DEFAULT_DONE,
|
|
16
16
|
DESIGN_FORMAT,
|
|
@@ -33,19 +33,19 @@ import {
|
|
|
33
33
|
storySteps,
|
|
34
34
|
unfence,
|
|
35
35
|
writesField
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-R7NYHMUU.js";
|
|
37
37
|
import {
|
|
38
38
|
DesignScreen
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-IVBOQAGB.js";
|
|
40
40
|
import {
|
|
41
41
|
BUILT_IN_CHECKS,
|
|
42
42
|
runCritic
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-S4PMJU6H.js";
|
|
44
44
|
import {
|
|
45
45
|
buildGlossary,
|
|
46
46
|
proposeDefinitions,
|
|
47
47
|
undefinedCodeTerms
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-J2JAKCIW.js";
|
|
49
49
|
import {
|
|
50
50
|
askKnowledge,
|
|
51
51
|
checkQuote,
|
|
@@ -60,16 +60,16 @@ import {
|
|
|
60
60
|
termsOf,
|
|
61
61
|
writeKnowledge,
|
|
62
62
|
writeSnapshots
|
|
63
|
-
} from "./chunk-
|
|
63
|
+
} from "./chunk-745DAZ4L.js";
|
|
64
64
|
import {
|
|
65
65
|
writeChangeRepos
|
|
66
|
-
} from "./chunk-
|
|
66
|
+
} from "./chunk-PKBHS4AA.js";
|
|
67
67
|
import {
|
|
68
68
|
MockRuntime,
|
|
69
69
|
ReplayRuntime,
|
|
70
70
|
RuntimeError,
|
|
71
71
|
buildContextPack
|
|
72
|
-
} from "./chunk-
|
|
72
|
+
} from "./chunk-P32RUW3B.js";
|
|
73
73
|
import {
|
|
74
74
|
AgentDefinition,
|
|
75
75
|
KNOWLEDGE_KINDS,
|
|
@@ -81,10 +81,12 @@ import {
|
|
|
81
81
|
parseRecord,
|
|
82
82
|
projectFacts,
|
|
83
83
|
recordPath,
|
|
84
|
-
require_dist,
|
|
85
84
|
serializeRecord,
|
|
86
85
|
stateDirOf
|
|
87
|
-
} from "./chunk-
|
|
86
|
+
} from "./chunk-Q2TECDIT.js";
|
|
87
|
+
import {
|
|
88
|
+
require_dist
|
|
89
|
+
} from "./chunk-BQGDB6ZL.js";
|
|
88
90
|
import {
|
|
89
91
|
__toESM
|
|
90
92
|
} from "./chunk-TV45EUGM.js";
|
|
@@ -16,24 +16,23 @@ import {
|
|
|
16
16
|
outsideSystemsOf,
|
|
17
17
|
phaseGates,
|
|
18
18
|
statePhase
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-IDKCWSM5.js";
|
|
20
20
|
import {
|
|
21
21
|
daysBetween,
|
|
22
22
|
knowledgeGaps,
|
|
23
23
|
newestEvidence
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-745DAZ4L.js";
|
|
25
25
|
import {
|
|
26
26
|
BREAKING_SPEC,
|
|
27
27
|
INSTRUCTION_RULES,
|
|
28
28
|
PERSONAL_DATA_SPEC,
|
|
29
29
|
buildContextPack,
|
|
30
|
-
estimateTokens,
|
|
31
30
|
personalItem,
|
|
32
31
|
quarantineItems,
|
|
33
32
|
screenText,
|
|
34
33
|
settle,
|
|
35
34
|
toRunSummary
|
|
36
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-P32RUW3B.js";
|
|
37
36
|
import {
|
|
38
37
|
ASKED_GAP_STEP,
|
|
39
38
|
AgentDefinition,
|
|
@@ -59,6 +58,7 @@ import {
|
|
|
59
58
|
callsOfQuestion,
|
|
60
59
|
changesDirOf,
|
|
61
60
|
changesRelOf,
|
|
61
|
+
estimateTokens,
|
|
62
62
|
external_exports,
|
|
63
63
|
fileJudgments,
|
|
64
64
|
findingPath,
|
|
@@ -77,15 +77,17 @@ import {
|
|
|
77
77
|
quotedIn,
|
|
78
78
|
readQuestion,
|
|
79
79
|
repoReadOf,
|
|
80
|
-
require_dist,
|
|
81
80
|
runsDirOf,
|
|
82
81
|
stateDirOf,
|
|
83
82
|
toCanonicalYaml,
|
|
84
83
|
writeQuestion
|
|
85
|
-
} from "./chunk-
|
|
84
|
+
} from "./chunk-Q2TECDIT.js";
|
|
86
85
|
import {
|
|
87
86
|
writeFileAtomic
|
|
88
|
-
} from "./chunk-
|
|
87
|
+
} from "./chunk-TUULXQRW.js";
|
|
88
|
+
import {
|
|
89
|
+
require_dist
|
|
90
|
+
} from "./chunk-BQGDB6ZL.js";
|
|
89
91
|
import {
|
|
90
92
|
__toESM
|
|
91
93
|
} from "./chunk-TV45EUGM.js";
|
|
@@ -3564,7 +3566,8 @@ async function roundsOf(root, change, gate) {
|
|
|
3564
3566
|
async function countedRounds(root, change, gate) {
|
|
3565
3567
|
const out = [];
|
|
3566
3568
|
for (const n of await roundsOf(root, change, gate)) {
|
|
3567
|
-
const
|
|
3569
|
+
const m0 = await readRoundMeta(root, change, gate, n);
|
|
3570
|
+
const m = m0?.state === "in-progress" ? void 0 : m0;
|
|
3568
3571
|
if (!m) {
|
|
3569
3572
|
const r = await readRound(root, change, gate, n);
|
|
3570
3573
|
if (!r.findings.length && !r.bad.length)
|
|
@@ -5360,6 +5363,15 @@ async function runCritic(root, changeId, opts = {}) {
|
|
|
5360
5363
|
problems.push(`Rule ${h.rule.id} produced a finding without evidence; it was discarded: ${h.hit.summary}`);
|
|
5361
5364
|
const merged1 = mergeHits(l1.filter((h) => h.hit.evidence.length > 0), ctx.systemOf);
|
|
5362
5365
|
const failed = new Set(merged1.filter((h) => h.hit.kind === "issue" && h.rule.severity === "blocking" && h.hit.artifact !== "catalog").map((h) => h.hit.artifact));
|
|
5366
|
+
const metaDir = join10(changeFolder(root, change.id), "review", gate.id, String(round), "meta");
|
|
5367
|
+
await writeFileAtomic(join10(metaDir, "round.yaml"), toCanonicalYaml({
|
|
5368
|
+
schemaVersion: 1,
|
|
5369
|
+
change: change.id,
|
|
5370
|
+
gate: gate.id,
|
|
5371
|
+
round,
|
|
5372
|
+
createdAt: now,
|
|
5373
|
+
state: "in-progress"
|
|
5374
|
+
}, ROUND_LEADING));
|
|
5363
5375
|
const lenses = opts.lenses ? questionsOf(opts.lenses) : [...CriticQuestion.options];
|
|
5364
5376
|
const quarantined = [];
|
|
5365
5377
|
const draft = opts.review ? await draftDocs(changeFolder(root, change.id), opts.review.files) : [];
|
|
@@ -5444,7 +5456,6 @@ async function runCritic(root, changeId, opts = {}) {
|
|
|
5444
5456
|
];
|
|
5445
5457
|
await keepLensRecords(root, change.id, gate.id, round, ai.runs);
|
|
5446
5458
|
const model = criticModel(lifecycle.orgPack.runtime, opts.authorModel);
|
|
5447
|
-
const metaDir = join10(changeFolder(root, change.id), "review", gate.id, String(round), "meta");
|
|
5448
5459
|
for (const r of ai.runs)
|
|
5449
5460
|
if (r.summary)
|
|
5450
5461
|
await writeFileAtomic(join10(metaDir, "runs", `${r.agent}.yaml`), toCanonicalYaml(r.summary, ["schemaVersion", "runId"]));
|
|
@@ -3,6 +3,9 @@ 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
|
+
withSharedFileLock
|
|
8
|
+
} from "./chunk-TUULXQRW.js";
|
|
6
9
|
|
|
7
10
|
// packages/cli/dist/file-lock.js
|
|
8
11
|
import { appendFile, readFile } from "node:fs/promises";
|
|
@@ -21,7 +24,7 @@ function withFileLock(path, work) {
|
|
|
21
24
|
return next;
|
|
22
25
|
}
|
|
23
26
|
function appendLines(file, lines) {
|
|
24
|
-
return
|
|
27
|
+
return withSharedFileLock(file, async () => {
|
|
25
28
|
const now = await readFile(file, "utf8").catch(() => "");
|
|
26
29
|
const eol = /\r\n/.test(now) ? "\r\n" : "\n";
|
|
27
30
|
const lead = now && !now.endsWith("\n") ? eol : "";
|
|
@@ -6,25 +6,25 @@ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
|
6
6
|
import {
|
|
7
7
|
prepareKnowledgeBench,
|
|
8
8
|
runKnowledgeBench
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-RXPJMEOW.js";
|
|
10
|
+
import "./chunk-WF7B67YE.js";
|
|
11
|
+
import "./chunk-6PPOWY5E.js";
|
|
12
|
+
import "./chunk-O7FDLW7L.js";
|
|
13
|
+
import "./chunk-BTGPE6CR.js";
|
|
14
|
+
import "./chunk-MUWDB4R4.js";
|
|
15
15
|
import {
|
|
16
16
|
codeFactRecords
|
|
17
|
-
} from "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
17
|
+
} from "./chunk-R7NYHMUU.js";
|
|
18
|
+
import "./chunk-IVBOQAGB.js";
|
|
19
|
+
import "./chunk-ISUAAMGS.js";
|
|
20
20
|
import {
|
|
21
21
|
table
|
|
22
22
|
} from "./chunk-VOGCSYOI.js";
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
23
|
+
import "./chunk-S4PMJU6H.js";
|
|
24
|
+
import "./chunk-IDKCWSM5.js";
|
|
25
|
+
import "./chunk-UUU4CLJG.js";
|
|
26
|
+
import "./chunk-7IGKHZ4Z.js";
|
|
27
|
+
import "./chunk-J2JAKCIW.js";
|
|
28
28
|
import {
|
|
29
29
|
askKnowledge,
|
|
30
30
|
conflictLine,
|
|
@@ -50,17 +50,18 @@ import {
|
|
|
50
50
|
tagList,
|
|
51
51
|
writeKnowledge,
|
|
52
52
|
writeReview
|
|
53
|
-
} from "./chunk-
|
|
54
|
-
import "./chunk-
|
|
55
|
-
import "./chunk-
|
|
56
|
-
import "./chunk-
|
|
57
|
-
import "./chunk-
|
|
58
|
-
import "./chunk-
|
|
53
|
+
} from "./chunk-745DAZ4L.js";
|
|
54
|
+
import "./chunk-CXJ6FUKN.js";
|
|
55
|
+
import "./chunk-QKUJMING.js";
|
|
56
|
+
import "./chunk-6ZGLAACW.js";
|
|
57
|
+
import "./chunk-CQDGOPGH.js";
|
|
58
|
+
import "./chunk-3NFFJL5D.js";
|
|
59
|
+
import "./chunk-PKBHS4AA.js";
|
|
59
60
|
import {
|
|
60
61
|
RuntimeConfigError,
|
|
61
62
|
runtimeForCli
|
|
62
|
-
} from "./chunk-
|
|
63
|
-
import "./chunk-
|
|
63
|
+
} from "./chunk-P32RUW3B.js";
|
|
64
|
+
import "./chunk-QA4O2GGC.js";
|
|
64
65
|
import {
|
|
65
66
|
KNOWLEDGE_KINDS,
|
|
66
67
|
fileJudgments,
|
|
@@ -68,8 +69,9 @@ import {
|
|
|
68
69
|
knowledgeRelOf,
|
|
69
70
|
loadOrgPack,
|
|
70
71
|
orgPackDirOf
|
|
71
|
-
} from "./chunk-
|
|
72
|
-
import "./chunk-
|
|
72
|
+
} from "./chunk-Q2TECDIT.js";
|
|
73
|
+
import "./chunk-TUULXQRW.js";
|
|
74
|
+
import "./chunk-BQGDB6ZL.js";
|
|
73
75
|
import "./chunk-TV45EUGM.js";
|
|
74
76
|
|
|
75
77
|
// packages/cli/dist/knowledge-scan-commands.js
|