@maycombhq/atticus 2.0.0-beta.22 → 2.0.0-beta.24
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-J2JAKCIW.js → chunk-25CUJJTP.js} +511 -291
- package/dist/chunk-26AB2WNW.js +62 -0
- package/dist/{chunk-VBTP56CE.js → chunk-2ITYURTR.js} +9 -8
- package/dist/{chunk-6ZJ5A7AF.js → chunk-2JHE75RW.js} +13 -11
- package/dist/{chunk-QFWA2DPH.js → chunk-37UTWGU4.js} +8 -6
- package/dist/{chunk-VW62D6QE.js → chunk-3BEGKSDW.js} +14 -12
- package/dist/{chunk-3RM4UK6W.js → chunk-3FGQFDS4.js} +20 -18
- package/dist/{chunk-23XVSEV5.js → chunk-3NS4RS3C.js} +20 -18
- package/dist/{chunk-FSMSFDLD.js → chunk-3TGX4SJ3.js} +10 -7
- package/dist/{chunk-7JITZFJC.js → chunk-3UMKLB6P.js} +7 -5
- package/dist/chunk-3VS7RNEB.js +96 -0
- package/dist/{chunk-AJYXNTNZ.js → chunk-3XCCT2GR.js} +167 -42
- package/dist/{chunk-XERYFDB5.js → chunk-3XZRYQWU.js} +38 -34
- package/dist/{chunk-FUJM6RTF.js → chunk-432FGEVB.js} +9 -7
- package/dist/{chunk-SFUP7TTO.js → chunk-44QUCNPH.js} +7 -5
- package/dist/{chunk-O5PXQR67.js → chunk-4CS3PMIM.js} +15 -13
- package/dist/{chunk-RGERPOIV.js → chunk-4DCIUKIE.js} +22 -12
- package/dist/{chunk-RLDGWLQ7.js → chunk-4DX4DIND.js} +9 -7
- package/dist/chunk-4MNMOUU7.js +108 -0
- package/dist/{chunk-SLXZOMA6.js → chunk-4RKIOUPA.js} +9 -7
- package/dist/{chunk-AJQ72EBM.js → chunk-532HDXMM.js} +9 -7
- package/dist/{chunk-CADWLE2T.js → chunk-5EIKOU7L.js} +6 -4
- package/dist/{chunk-CQDGOPGH.js → chunk-5FPAKAGE.js} +7 -5
- package/dist/{chunk-IVBOQAGB.js → chunk-5FUFVNXB.js} +27 -3
- package/dist/{chunk-UUU4CLJG.js → chunk-5MKV4TV6.js} +5 -1
- package/dist/{chunk-ZQXZ2SES.js → chunk-5ORLKITZ.js} +23 -21
- package/dist/{chunk-OHVTTOPS.js → chunk-5PSKLTBR.js} +3 -3
- package/dist/{chunk-RUGXBPWI.js → chunk-5QF5W5P2.js} +10 -10
- package/dist/{chunk-BPK5P77O.js → chunk-5Z7L2TSR.js} +3 -3
- package/dist/{chunk-L27SV425.js → chunk-66DWUSNY.js} +22 -20
- package/dist/{chunk-JAVI7JSP.js → chunk-6FIYEB7M.js} +25 -22
- package/dist/{chunk-VY72R2XZ.js → chunk-6OZAQPU5.js} +532 -358
- package/dist/{chunk-AFWUDXEM.js → chunk-6TNQO76I.js} +34 -17
- package/dist/{chunk-WF7B67YE.js → chunk-6UTD5RQH.js} +18 -16
- package/dist/{chunk-HNM2YQT2.js → chunk-775FMPUB.js} +7 -7
- package/dist/{chunk-7ASNL4Q4.js → chunk-77AZRGWE.js} +19 -16
- package/dist/{chunk-WKUJ3KPV.js → chunk-7HWCEDPX.js} +7 -5
- package/dist/{chunk-G6X77UJZ.js → chunk-7U46TCRZ.js} +25 -22
- package/dist/{chunk-O45HFTFS.js → chunk-A3NUZJFI.js} +4 -2
- package/dist/{chunk-UPOY4YSQ.js → chunk-A4VDFIMR.js} +14 -12
- package/dist/{chunk-EMRIQUND.js → chunk-A53IYUCR.js} +87 -29
- package/dist/{chunk-S4PMJU6H.js → chunk-A6ZG3UOS.js} +108 -50
- package/dist/{chunk-PMUAJGLI.js → chunk-AAY6VPPO.js} +18 -16
- package/dist/{chunk-MG4ZL5RW.js → chunk-ABDE5IRC.js} +18 -16
- package/dist/{chunk-T6DQR5TV.js → chunk-AM7PYKVP.js} +15 -13
- package/dist/{chunk-SFSPGFCV.js → chunk-ANUMIPF6.js} +22 -20
- package/dist/{chunk-VTZMAJ3W.js → chunk-ASFRT33J.js} +11 -9
- package/dist/{chunk-7FTTA3HD.js → chunk-AWDCVZYO.js} +9 -7
- package/dist/{chunk-KFAVQZSX.js → chunk-B63NWU3P.js} +14 -12
- package/dist/{chunk-YYY3AZFE.js → chunk-BBZ6UKN3.js} +16 -5
- package/dist/{chunk-Q4K5WB2W.js → chunk-BFQ5IKQA.js} +12 -10
- package/dist/{chunk-ZFL7NY4F.js → chunk-BLVFHN3C.js} +73 -42
- package/dist/{chunk-MO6P2JZH.js → chunk-BQXAHIZ6.js} +10 -8
- package/dist/{chunk-Y2EQNWKV.js → chunk-BTS56NV7.js} +91 -41
- package/dist/{chunk-UGUP3ZM6.js → chunk-BWYW533C.js} +18 -16
- package/dist/{chunk-O7FDLW7L.js → chunk-BYKWWSXL.js} +14 -12
- package/dist/chunk-C7BB6IQT.js +147 -0
- package/dist/{chunk-JLUCKAEL.js → chunk-CCQWQFOT.js} +19 -17
- package/dist/{chunk-SYV5LHML.js → chunk-CCQZN6W3.js} +35 -33
- package/dist/{chunk-UCROWG2D.js → chunk-CFSBBLDD.js} +28 -25
- package/dist/{chunk-EIPTLPFC.js → chunk-CFSHLQPK.js} +26 -24
- package/dist/{chunk-2IIMFOPM.js → chunk-CI4D6VSU.js} +20 -18
- package/dist/{chunk-66PPNOON.js → chunk-CKRPMRFQ.js} +28 -25
- package/dist/{chunk-IUPG3UKI.js → chunk-CNF2EZ6S.js} +191 -125
- package/dist/chunk-CTJHEG6A.js +97 -0
- package/dist/{chunk-DOBQKHIF.js → chunk-CU7ZK7KP.js} +30 -29
- package/dist/{chunk-745DAZ4L.js → chunk-CZ75S2EZ.js} +886 -313
- package/dist/{chunk-LGFL54FP.js → chunk-D5CJEKZI.js} +11 -4
- package/dist/{chunk-PBPBMP2B.js → chunk-D5ZC7IMC.js} +5 -3
- package/dist/{chunk-LZ7NUC62.js → chunk-D63NU53X.js} +20 -18
- package/dist/{chunk-BO4KX37X.js → chunk-DCQSPSXU.js} +28 -23
- package/dist/{chunk-WXFLMQSR.js → chunk-DCRZ3OQ7.js} +8 -6
- package/dist/chunk-DD2AXECF.js +41 -0
- package/dist/{chunk-4EURQWQD.js → chunk-DF6DPCW2.js} +16 -14
- package/dist/{chunk-53T4O55J.js → chunk-DH3EQMIA.js} +5 -3
- package/dist/{chunk-ZX57KSEQ.js → chunk-DIXA74N7.js} +5 -3
- package/dist/{chunk-6ZGLAACW.js → chunk-DIYNRYXW.js} +2 -2
- package/dist/chunk-DYDNW4O6.js +52 -0
- package/dist/{chunk-P2V7QW4D.js → chunk-E7YDJH6B.js} +16 -14
- package/dist/chunk-EEKQI3U4.js +45 -0
- package/dist/{chunk-GZY6RUZ6.js → chunk-EHF2MBGR.js} +9 -4
- package/dist/chunk-EHXDB3SA.js +25 -0
- package/dist/{chunk-PJSJPMJI.js → chunk-ENZ3PI7L.js} +3 -3
- package/dist/{chunk-E3ISYXO3.js → chunk-EPQQ2XVM.js} +16 -14
- package/dist/{chunk-7IGKHZ4Z.js → chunk-ESJALLOK.js} +222 -213
- package/dist/chunk-ETQSQ2EC.js +33 -0
- package/dist/{chunk-MFR5OPBD.js → chunk-EUMXLSW5.js} +14 -6
- package/dist/{chunk-BTY3HZBO.js → chunk-F63F4NKT.js} +18 -16
- package/dist/{chunk-ZFFYNRIO.js → chunk-FDL2JOLB.js} +26 -22
- package/dist/{chunk-5SJZW52K.js → chunk-FFDVAV56.js} +24 -22
- package/dist/chunk-FFYOZ7PF.js +27 -0
- package/dist/{chunk-RXPJMEOW.js → chunk-FGW5TLGM.js} +24 -19
- package/dist/{chunk-UPS2DGFC.js → chunk-FL53R4SW.js} +1 -1
- package/dist/chunk-FYWLB7PO.js +38 -0
- package/dist/{chunk-FFLNS6VP.js → chunk-G3W7GNEP.js} +24 -18
- package/dist/chunk-G3ZFEHCX.js +925 -0
- package/dist/{chunk-YHCMZC2J.js → chunk-G67GOK4S.js} +10 -8
- package/dist/{chunk-2F4CYZKJ.js → chunk-GCMDDVIE.js} +14 -9
- package/dist/{chunk-QKUJMING.js → chunk-GFYVVTKH.js} +10 -8
- package/dist/chunk-GJVCBTSO.js +20722 -0
- package/dist/{chunk-VCTWPLAO.js → chunk-GKZDHXC2.js} +8 -8
- package/dist/{chunk-5BD2KYLE.js → chunk-GQFUEUC7.js} +18 -16
- package/dist/chunk-GQPP4P2E.js +33 -0
- package/dist/{chunk-42SIDKEU.js → chunk-GS7N3RFG.js} +51 -32
- package/dist/{chunk-LJXMYKZJ.js → chunk-GXQYEIYM.js} +7 -5
- package/dist/{chunk-VNU26RCO.js → chunk-H5EQOSTC.js} +43 -33
- package/dist/{chunk-W7VWI2YH.js → chunk-H7KERB6Q.js} +7 -5
- package/dist/{chunk-OUBGGKDU.js → chunk-HGDBM3A5.js} +5 -3
- package/dist/{chunk-JENSEMXF.js → chunk-HI7ADE4E.js} +1 -1
- package/dist/{chunk-CXJ6FUKN.js → chunk-HNPKCRCE.js} +1010 -330
- package/dist/{chunk-FPJPLKDW.js → chunk-HRHXTLUM.js} +40 -16
- package/dist/{chunk-57TDNMI3.js → chunk-HRYI22QU.js} +17 -15
- package/dist/{chunk-LO6P2VYG.js → chunk-HWNFFCGB.js} +5 -3
- package/dist/{chunk-XI2LCCYQ.js → chunk-HXFZX2BI.js} +12 -8
- package/dist/{chunk-H7KM7LZE.js → chunk-HYHV2P3G.js} +16 -13
- package/dist/{chunk-X3WY6MN3.js → chunk-IB66ZLDN.js} +10 -8
- package/dist/{chunk-3NFFJL5D.js → chunk-IJQHBK76.js} +1 -1
- package/dist/{chunk-LQJPN536.js → chunk-IK6LHW3E.js} +6 -4
- package/dist/{chunk-DCZWQLYT.js → chunk-IOHRX4KF.js} +26 -21
- package/dist/{chunk-2GF7OLF3.js → chunk-IRXZKKCG.js} +21 -15
- package/dist/{chunk-Z5IA3WDR.js → chunk-IUBBEU6O.js} +160 -81
- package/dist/{chunk-W62H2XSO.js → chunk-IWPO5AUT.js} +29 -26
- package/dist/{chunk-BEVTIBRH.js → chunk-J4K4C4T5.js} +31 -15
- package/dist/{chunk-WERM6KPJ.js → chunk-JCEYOSST.js} +14 -6
- package/dist/{chunk-HYU5VLGA.js → chunk-JCG2EBNB.js} +1 -1
- package/dist/{chunk-UNAGJYET.js → chunk-JFBVIMGY.js} +14 -12
- package/dist/chunk-JJ4SCGRJ.js +43 -0
- package/dist/{chunk-2Q5EDGEO.js → chunk-JLYH2QOE.js} +7 -5
- package/dist/{chunk-X4CXA2IL.js → chunk-JMH6TCZJ.js} +23 -21
- package/dist/{chunk-6PPOWY5E.js → chunk-JUHZBZPZ.js} +17 -13
- package/dist/{chunk-GUX3PTYM.js → chunk-JVMNEI7B.js} +3 -3
- package/dist/chunk-JYJMIAFS.js +44 -0
- package/dist/{chunk-34S2WGOB.js → chunk-KIY2WCN7.js} +7 -3
- package/dist/chunk-KVVNAUIG.js +66 -0
- package/dist/{chunk-M32BLWDH.js → chunk-KYO5HT4G.js} +14 -12
- package/dist/chunk-L27KUL5B.js +38 -0
- package/dist/chunk-L3PIN47C.js +18 -0
- package/dist/{chunk-IH2XURVQ.js → chunk-L6Z6TMIK.js} +5 -5
- package/dist/{chunk-E6ZIEVOI.js → chunk-LAGZBQHK.js} +16 -13
- package/dist/chunk-LBG4GMOR.js +68 -0
- package/dist/{chunk-UF4GLFBX.js → chunk-LDKP7OWQ.js} +33 -24
- package/dist/{chunk-ZQ7SKESZ.js → chunk-LELM7X5H.js} +13 -11
- package/dist/{chunk-INQHESFB.js → chunk-LIB6AUZS.js} +6 -4
- package/dist/{chunk-H5HBGNXU.js → chunk-LIQWFDOZ.js} +6 -4
- package/dist/{chunk-TYQBFTBR.js → chunk-LKUTBQ2Y.js} +8 -6
- package/dist/{chunk-7BR7IPOH.js → chunk-LOCJHNZI.js} +10 -8
- package/dist/{chunk-SQV37XO2.js → chunk-LTIXFLYE.js} +6 -6
- package/dist/{chunk-3NWDLGG6.js → chunk-M3RWF7MC.js} +33 -29
- package/dist/chunk-MA6UK7GX.js +42 -0
- package/dist/{chunk-ISUAAMGS.js → chunk-MCE74XMF.js} +25 -16
- package/dist/{chunk-EGQRREQH.js → chunk-MDTAZ6NE.js} +37 -24
- package/dist/{chunk-ZZK56BLP.js → chunk-MMOMKHAX.js} +6 -4
- package/dist/{chunk-P32RUW3B.js → chunk-MOWUP33K.js} +49 -15
- package/dist/{chunk-UOR2DTHH.js → chunk-MPATOMY5.js} +18 -14
- package/dist/{chunk-LNBQOP7D.js → chunk-MQFSEGTU.js} +23 -21
- package/dist/{chunk-2Q56PQPS.js → chunk-MT3FNSXO.js} +4 -4
- package/dist/{chunk-FZOJFH7Q.js → chunk-MUY5MAGM.js} +15 -12
- package/dist/{chunk-7DOR27HL.js → chunk-MVXMISNA.js} +9 -7
- package/dist/{chunk-CX4RZ2KS.js → chunk-MWN7CBVL.js} +5 -3
- package/dist/{chunk-BXYMYEJ4.js → chunk-MZWM73S2.js} +18 -17
- package/dist/chunk-NBZ7RKX3.js +46 -0
- package/dist/{chunk-EPCJQQWD.js → chunk-NC56V6KQ.js} +6 -4
- package/dist/{chunk-7UOMVMFG.js → chunk-NN6AXKFX.js} +17 -15
- package/dist/{chunk-BIGDQDHD.js → chunk-NOU5IBLM.js} +6 -4
- package/dist/{chunk-LFGTYX5U.js → chunk-NQDHRT2H.js} +20 -18
- package/dist/{chunk-KDNTAPLX.js → chunk-NTEPBOAF.js} +6 -4
- package/dist/{chunk-LYBNHMVZ.js → chunk-NTOPAOBY.js} +3 -3
- package/dist/{chunk-R44CYFPV.js → chunk-NX5IPHI3.js} +19 -16
- package/dist/{chunk-GCWRWSU7.js → chunk-O4ZWZZZT.js} +6 -4
- package/dist/chunk-OCU5S2XG.js +36 -0
- package/dist/{chunk-SU74NDMQ.js → chunk-OKSRK2LJ.js} +19 -17
- package/dist/{chunk-XD75VZIH.js → chunk-OSWOIFRQ.js} +9 -7
- package/dist/{chunk-PKBHS4AA.js → chunk-OSZTENIA.js} +54 -21
- package/dist/{chunk-NDCF4R6S.js → chunk-OTUBMKSG.js} +10 -8
- package/dist/{chunk-THDMSZ3R.js → chunk-OYKNPZCV.js} +2837 -693
- package/dist/{chunk-ZQ3ON2VQ.js → chunk-OYTSRNSZ.js} +8 -6
- package/dist/chunk-OYZ64UMQ.js +67 -0
- package/dist/{chunk-UF4AZOZB.js → chunk-PB3NCPRF.js} +10 -8
- package/dist/chunk-PIPJZIJE.js +47 -0
- package/dist/{chunk-2RLKFUUL.js → chunk-PIPYJTIL.js} +27 -24
- package/dist/{chunk-MZCGSXVR.js → chunk-PUMNCWHJ.js} +15 -13
- package/dist/{chunk-X5F3Q5LV.js → chunk-PZBNDFZ7.js} +35 -25
- package/dist/chunk-Q2ULHBCJ.js +59 -0
- package/dist/{chunk-ZJFRMSJT.js → chunk-Q5QSWV2R.js} +14 -12
- package/dist/{chunk-Q2TECDIT.js → chunk-QFDPX6C4.js} +2886 -20703
- package/dist/{chunk-WG5U3F5V.js → chunk-QGBS4GMS.js} +14 -12
- package/dist/{chunk-BTGPE6CR.js → chunk-QIDSEHJA.js} +17 -15
- package/dist/{chunk-Q6DFNVRJ.js → chunk-QJ3AYXVO.js} +14 -12
- package/dist/{chunk-EBL2R3YG.js → chunk-QK6CGRKK.js} +6 -4
- package/dist/{chunk-S7FCV7S5.js → chunk-QOC3Q4UU.js} +1 -1
- package/dist/{chunk-JJF6HALY.js → chunk-QPLNB2BM.js} +5 -3
- package/dist/chunk-QVF4KYIO.js +71 -0
- package/dist/{chunk-6OJQOPUN.js → chunk-QXXEO4TF.js} +5 -3
- package/dist/{chunk-F3P7N7SF.js → chunk-QYFNVQLK.js} +1 -1
- package/dist/{chunk-6MUGR4LS.js → chunk-R6CJOMPC.js} +106 -29
- package/dist/{chunk-BDKC6H5P.js → chunk-ROWZYQOI.js} +9 -7
- package/dist/{chunk-2MMCFP5C.js → chunk-RQAMZVWW.js} +10 -8
- package/dist/chunk-RQSUFGU2.js +55 -0
- package/dist/{chunk-SDKLKB6I.js → chunk-RRKM3GJA.js} +38 -28
- package/dist/{chunk-OHNCWBKF.js → chunk-RSHVSXPJ.js} +7 -5
- package/dist/chunk-RSKMV3VC.js +22 -0
- package/dist/{chunk-U76OWS3Q.js → chunk-RU5W7JJQ.js} +25 -23
- package/dist/{chunk-63YRMR6J.js → chunk-RYY554OA.js} +7 -5
- package/dist/{chunk-5NMKONLP.js → chunk-SGYQORAD.js} +7 -3
- package/dist/{chunk-JA5FI3QV.js → chunk-SLGUSFOD.js} +3 -3
- package/dist/{chunk-M3NANSDZ.js → chunk-SUAHNYNQ.js} +17 -15
- package/dist/{chunk-QAXW2N3B.js → chunk-SUYC5NP6.js} +34 -34
- package/dist/{chunk-FFTRTL6R.js → chunk-SWSGRRNO.js} +6 -4
- package/dist/{chunk-UWOJLHFT.js → chunk-SYLXQNPC.js} +38 -24
- package/dist/chunk-T24TBI7F.js +54 -0
- package/dist/chunk-T2HXLDY3.js +55 -0
- package/dist/{chunk-O4GXGGBX.js → chunk-T5NH5L7A.js} +16 -13
- package/dist/{chunk-KXITGYLF.js → chunk-TAR6T2RE.js} +4 -2
- package/dist/chunk-TBQHBOFF.js +324 -0
- package/dist/{chunk-LKOR5UET.js → chunk-TKE6ZJMM.js} +26 -24
- package/dist/chunk-TKEXS74L.js +52 -0
- package/dist/{chunk-J3IOLXWM.js → chunk-TXYMNKGM.js} +16 -14
- package/dist/{chunk-IDKCWSM5.js → chunk-U2JTTRKS.js} +401 -115
- package/dist/{chunk-TNR75OXT.js → chunk-U37ZOYJJ.js} +11 -8
- package/dist/{chunk-7MJSQTL5.js → chunk-U57VLY6X.js} +23 -21
- package/dist/{chunk-BHT7QK4G.js → chunk-U66RQUFC.js} +6 -4
- package/dist/chunk-UCFNHK5L.js +50 -0
- package/dist/{chunk-IFKEI4SA.js → chunk-UI6KNLSO.js} +31 -11
- package/dist/{chunk-7GJS6DNX.js → chunk-UKRJ2ISN.js} +13 -3
- package/dist/chunk-UWJOM457.js +232 -0
- package/dist/{chunk-D73UEXYW.js → chunk-UXO25YBN.js} +3 -3
- package/dist/chunk-VE2T5URA.js +51 -0
- package/dist/{chunk-C3RY6KU6.js → chunk-W4EG25TI.js} +513 -172
- package/dist/{chunk-O66DM6DJ.js → chunk-WAAPMZWO.js} +6 -4
- package/dist/{chunk-R7NYHMUU.js → chunk-WECCLSYY.js} +4884 -3669
- package/dist/chunk-WQDJGNJQ.js +45 -0
- package/dist/{chunk-UWMJKX5U.js → chunk-WWSCJBF6.js} +14 -12
- package/dist/{chunk-N3XIYPU3.js → chunk-X7HFXXTZ.js} +16 -13
- package/dist/chunk-X7XVMYIL.js +5 -0
- package/dist/{chunk-NR2UJWOC.js → chunk-XERIHPBF.js} +12 -9
- package/dist/{chunk-JRBFANFE.js → chunk-XKNISZ6N.js} +21 -18
- package/dist/{chunk-PPD7HTDP.js → chunk-XNH5ZWIA.js} +20 -18
- package/dist/{chunk-7IOWA5D5.js → chunk-XNW3EDCY.js} +13 -3
- package/dist/{chunk-2LGRMVCA.js → chunk-XPXOKHNZ.js} +13 -11
- package/dist/{chunk-ZJXLNDH4.js → chunk-XXRBAJ36.js} +14 -12
- package/dist/{chunk-EHA7RMZ3.js → chunk-YA2IJJ6N.js} +8 -6
- package/dist/{chunk-LGBMTVNT.js → chunk-YB5AKYVQ.js} +7 -5
- package/dist/{chunk-JB5LINEM.js → chunk-YDDLVBQ4.js} +3 -3
- package/dist/{chunk-PAQ2AS5E.js → chunk-YF6N45QN.js} +1 -1
- package/dist/{chunk-WMTRHUI5.js → chunk-YHWX5LPT.js} +23 -21
- package/dist/{chunk-KQGURXFU.js → chunk-YLZNTVZR.js} +36 -13
- package/dist/{chunk-NY2XSR5K.js → chunk-YUJTOALL.js} +118 -18
- package/dist/{chunk-VZALIKIF.js → chunk-Z5YDTIWQ.js} +19 -16
- package/dist/{chunk-LDLL7LB3.js → chunk-ZCU2UY47.js} +24 -22
- package/dist/{chunk-OWNCM4ZN.js → chunk-ZIAYNHHE.js} +197 -17
- package/dist/{chunk-WJF2CS6M.js → chunk-ZJ2W2RDE.js} +7 -5
- package/dist/{chunk-REWWDVQB.js → chunk-ZRQHSMPK.js} +6 -4
- package/dist/{chunk-O7XLYEFA.js → chunk-ZSD75FYI.js} +57 -23
- package/dist/chunk-ZSNNF26J.js +220 -0
- package/dist/{chunk-BQ4SQQC6.js → chunk-ZX6RAGE6.js} +11 -9
- package/dist/files.json +583 -515
- package/dist/packages/sdk/npm/index.js +6428 -4882
- package/dist/packages/ui/dist/assets/{elk-api-CIf-0gz5.js → elk-api--rH6Kdl4.js} +2 -2
- package/dist/packages/ui/dist/assets/index-Bf2immpE.css +1 -0
- package/dist/packages/ui/dist/assets/index-CH4nGIW3.js +62 -0
- package/dist/packages/ui/dist/index.html +2 -2
- package/package.json +6 -6
- package/dist/chunk-2SKB4O2E.js +0 -59
- package/dist/chunk-4U276ICE.js +0 -39
- package/dist/chunk-6H3Z5JHH.js +0 -64
- package/dist/chunk-AFZ3QA6W.js +0 -47
- package/dist/chunk-AVTBS4OW.js +0 -49
- package/dist/chunk-C4R4JLHE.js +0 -40
- package/dist/chunk-CBGGOQWU.js +0 -82
- package/dist/chunk-CMDXGQTS.js +0 -47
- package/dist/chunk-DLOBCJL6.js +0 -48
- package/dist/chunk-GIW4ZVDB.js +0 -39
- package/dist/chunk-IP74LCOQ.js +0 -57
- package/dist/chunk-IPHHDDC6.js +0 -45
- package/dist/chunk-KJXD4PNL.js +0 -50
- package/dist/chunk-KN5BXMWN.js +0 -44
- package/dist/chunk-MFHL5URL.js +0 -31
- package/dist/chunk-NXJ5URP6.js +0 -51
- package/dist/chunk-OMI6FPPN.js +0 -43
- package/dist/chunk-ONUPY3H6.js +0 -53
- package/dist/chunk-OTLDSZDV.js +0 -69
- package/dist/chunk-PSOFBQWB.js +0 -42
- package/dist/chunk-T4YPZIQN.js +0 -36
- package/dist/chunk-TUULXQRW.js +0 -420
- package/dist/chunk-WNKPRSGI.js +0 -36
- package/dist/packages/ui/dist/assets/index-CoK_Dl0D.js +0 -47
- package/dist/packages/ui/dist/assets/index-Dw20IRhQ.css +0 -1
- package/dist/{chunk-24XLDU72.js → chunk-PXMV2LLY.js} +3 -3
|
@@ -6,33 +6,35 @@ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
|
6
6
|
import {
|
|
7
7
|
renderTaskContext,
|
|
8
8
|
taskContext
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-S4PMJU6H.js";
|
|
9
|
+
} from "./chunk-WECCLSYY.js";
|
|
10
|
+
import "./chunk-5FUFVNXB.js";
|
|
11
|
+
import "./chunk-A6ZG3UOS.js";
|
|
13
12
|
import {
|
|
14
13
|
changeFolder,
|
|
15
14
|
changeStore
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
15
|
+
} from "./chunk-U2JTTRKS.js";
|
|
16
|
+
import "./chunk-5MKV4TV6.js";
|
|
17
|
+
import "./chunk-ESJALLOK.js";
|
|
18
|
+
import "./chunk-MCE74XMF.js";
|
|
19
|
+
import "./chunk-25CUJJTP.js";
|
|
20
|
+
import "./chunk-HNPKCRCE.js";
|
|
21
|
+
import "./chunk-CZ75S2EZ.js";
|
|
22
22
|
import {
|
|
23
23
|
attachToChange
|
|
24
|
-
} from "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
28
|
-
import "./chunk-
|
|
29
|
-
import "./chunk-P32RUW3B.js";
|
|
24
|
+
} from "./chunk-GFYVVTKH.js";
|
|
25
|
+
import "./chunk-DIYNRYXW.js";
|
|
26
|
+
import "./chunk-5FPAKAGE.js";
|
|
27
|
+
import "./chunk-IJQHBK76.js";
|
|
28
|
+
import "./chunk-MOWUP33K.js";
|
|
30
29
|
import "./chunk-QA4O2GGC.js";
|
|
30
|
+
import "./chunk-OSZTENIA.js";
|
|
31
31
|
import {
|
|
32
32
|
changesRelOf,
|
|
33
33
|
inputsDirOf
|
|
34
|
-
} from "./chunk-
|
|
35
|
-
import "./chunk-
|
|
34
|
+
} from "./chunk-GJVCBTSO.js";
|
|
35
|
+
import "./chunk-G3ZFEHCX.js";
|
|
36
|
+
import "./chunk-QFDPX6C4.js";
|
|
37
|
+
import "./chunk-CTJHEG6A.js";
|
|
36
38
|
import "./chunk-BQGDB6ZL.js";
|
|
37
39
|
import "./chunk-TV45EUGM.js";
|
|
38
40
|
|
|
@@ -92,7 +94,7 @@ async function promoteChangeInput(root, change, file) {
|
|
|
92
94
|
} catch {
|
|
93
95
|
throw new AttachError("not-found", `inputs/${name} isn't attached to ${c.id}: atticus change attach ${c.id} adds it.`);
|
|
94
96
|
}
|
|
95
|
-
const { addToInbox } = await import("./chunk-
|
|
97
|
+
const { addToInbox } = await import("./chunk-WWSCJBF6.js");
|
|
96
98
|
const r = await addToInbox(root, [{ name, bytes }]);
|
|
97
99
|
const added = r.added[0];
|
|
98
100
|
if (!added)
|
|
@@ -109,11 +111,11 @@ function attachedLine(rel, a) {
|
|
|
109
111
|
async function changeAttachCli(root, change, paths, o, io) {
|
|
110
112
|
if (change && o.prototype) {
|
|
111
113
|
if (paths.length) {
|
|
112
|
-
const { PROTOTYPE_CLI_WORDS } = await import("./chunk-
|
|
114
|
+
const { PROTOTYPE_CLI_WORDS } = await import("./chunk-77AZRGWE.js");
|
|
113
115
|
io.err(PROTOTYPE_CLI_WORDS.usage(change, o.prototype));
|
|
114
116
|
return 2;
|
|
115
117
|
}
|
|
116
|
-
const { attachPrototype } = await import("./chunk-
|
|
118
|
+
const { attachPrototype } = await import("./chunk-77AZRGWE.js");
|
|
117
119
|
return attachPrototype(root, change, o.prototype, { by: o.by, ...o.json ? { json: true } : {}, ...o.now ? { now: o.now } : {} }, io);
|
|
118
120
|
}
|
|
119
121
|
if (change && o.like) {
|
|
@@ -121,7 +123,7 @@ async function changeAttachCli(root, change, paths, o, io) {
|
|
|
121
123
|
io.err("--like names an archived change, attached on its own: atticus change attach add-refund-window --like raise-transfer-limit");
|
|
122
124
|
return 2;
|
|
123
125
|
}
|
|
124
|
-
const { attachPastChange, findPastChange } = await import("./chunk-
|
|
126
|
+
const { attachPastChange, findPastChange } = await import("./chunk-H7KERB6Q.js");
|
|
125
127
|
const folder = await findPastChange(root, o.like);
|
|
126
128
|
if (!folder) {
|
|
127
129
|
io.err(`There is no archived change ${o.like}: atticus change similar "<what it is about>" lists them.`);
|
|
@@ -5,19 +5,27 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
|
|
|
5
5
|
var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
6
6
|
import {
|
|
7
7
|
contractCheckOf
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-AM7PYKVP.js";
|
|
9
|
+
import {
|
|
10
|
+
HttpError,
|
|
11
|
+
badRequest,
|
|
12
|
+
conflict,
|
|
13
|
+
notFound
|
|
14
|
+
} from "./chunk-W4EG25TI.js";
|
|
9
15
|
import {
|
|
10
16
|
readCatalog
|
|
11
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-25CUJJTP.js";
|
|
12
18
|
import {
|
|
13
19
|
frameworkFacts,
|
|
14
20
|
frameworkGaps
|
|
15
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-HNPKCRCE.js";
|
|
16
22
|
import {
|
|
17
23
|
baseClonePath,
|
|
18
24
|
loadRepos
|
|
19
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-OSZTENIA.js";
|
|
20
26
|
import {
|
|
27
|
+
QuestionError,
|
|
28
|
+
api_exports,
|
|
21
29
|
auditItemHolds,
|
|
22
30
|
auditPrecision,
|
|
23
31
|
catalogDirOf,
|
|
@@ -29,7 +37,13 @@ import {
|
|
|
29
37
|
listQuestions,
|
|
30
38
|
parseAuditFile,
|
|
31
39
|
parseFacts
|
|
32
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-GJVCBTSO.js";
|
|
41
|
+
import {
|
|
42
|
+
FileChangedError
|
|
43
|
+
} from "./chunk-G3ZFEHCX.js";
|
|
44
|
+
import {
|
|
45
|
+
keptParse
|
|
46
|
+
} from "./chunk-CTJHEG6A.js";
|
|
33
47
|
import {
|
|
34
48
|
require_dist
|
|
35
49
|
} from "./chunk-BQGDB6ZL.js";
|
|
@@ -37,9 +51,62 @@ import {
|
|
|
37
51
|
__toESM
|
|
38
52
|
} from "./chunk-TV45EUGM.js";
|
|
39
53
|
|
|
54
|
+
// packages/cli/dist/watched-memo.js
|
|
55
|
+
import { stat } from "node:fs/promises";
|
|
56
|
+
import { resolve } from "node:path";
|
|
57
|
+
var MAX_AGE_MS = 6e4;
|
|
58
|
+
var watched;
|
|
59
|
+
var generation = 0;
|
|
60
|
+
var kept = /* @__PURE__ */ new Map();
|
|
61
|
+
async function stampOfFiles(paths) {
|
|
62
|
+
const parts = await Promise.all(paths.map((p) => stat(p).then((s) => `${s.size}:${s.mtimeMs}`, () => "-")));
|
|
63
|
+
return parts.join("|");
|
|
64
|
+
}
|
|
65
|
+
function keepAnswersWhileWatched(root, following) {
|
|
66
|
+
const me = { root: resolve(root), following };
|
|
67
|
+
watched = me;
|
|
68
|
+
kept.clear();
|
|
69
|
+
return () => {
|
|
70
|
+
if (watched === me)
|
|
71
|
+
watched = void 0;
|
|
72
|
+
kept.clear();
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
function answersMayHaveChanged() {
|
|
76
|
+
generation++;
|
|
77
|
+
kept.clear();
|
|
78
|
+
}
|
|
79
|
+
var misses = [];
|
|
80
|
+
var miss = (key, why) => {
|
|
81
|
+
if (misses.length < 200)
|
|
82
|
+
misses.push(`${key}: ${why}`);
|
|
83
|
+
};
|
|
84
|
+
async function keptAnswer(root, key, work, stamp) {
|
|
85
|
+
if (!watched || watched.root !== resolve(root) || !watched.following()) {
|
|
86
|
+
miss(key, !watched ? "no server follows the files" : watched.root !== resolve(root) ? `another root (${watched.root} is followed)` : "the server follows no folder");
|
|
87
|
+
return work();
|
|
88
|
+
}
|
|
89
|
+
const at = generation;
|
|
90
|
+
const s = stamp ? await stamp() : "";
|
|
91
|
+
const hit = kept.get(key);
|
|
92
|
+
if (hit && hit.generation === generation && hit.stamp === s && Date.now() - hit.at < MAX_AGE_MS)
|
|
93
|
+
return hit.value;
|
|
94
|
+
miss(key, !hit ? "not asked before" : hit.generation !== generation ? "a change was heard" : hit.stamp !== s ? "a checkout moved" : "kept a minute already");
|
|
95
|
+
if (at !== generation)
|
|
96
|
+
return work();
|
|
97
|
+
const value = work();
|
|
98
|
+
const entry = { generation, at: Date.now(), value, stamp: s };
|
|
99
|
+
kept.set(key, entry);
|
|
100
|
+
value.catch(() => {
|
|
101
|
+
if (kept.get(key) === entry)
|
|
102
|
+
kept.delete(key);
|
|
103
|
+
});
|
|
104
|
+
return value;
|
|
105
|
+
}
|
|
106
|
+
|
|
40
107
|
// packages/cli/dist/ui-api-trust.js
|
|
41
108
|
var import_yaml = __toESM(require_dist(), 1);
|
|
42
|
-
import { readdir, readFile, stat } from "node:fs/promises";
|
|
109
|
+
import { readdir, readFile, stat as stat2 } from "node:fs/promises";
|
|
43
110
|
import { join, relative, sep } from "node:path";
|
|
44
111
|
function rejectedLines(text2) {
|
|
45
112
|
const out = [];
|
|
@@ -71,6 +138,15 @@ var FACT_BY = /* @__PURE__ */ new Set(["assistant", "reader", "person"]);
|
|
|
71
138
|
var UNKNOWN_SHOWN = 50;
|
|
72
139
|
var firstLine = (e) => String(e.message ?? e).split("\n")[0];
|
|
73
140
|
var text = (p) => readFile(p, "utf8").catch(() => void 0);
|
|
141
|
+
function secretsOf(raw) {
|
|
142
|
+
if (!Array.isArray(raw))
|
|
143
|
+
return {};
|
|
144
|
+
const secrets = raw.flatMap((x) => {
|
|
145
|
+
const s = x;
|
|
146
|
+
return s && typeof s.file === "string" && typeof s.key === "string" && Number.isInteger(s.line) ? [{ file: s.file, line: s.line, key: s.key }] : [];
|
|
147
|
+
});
|
|
148
|
+
return secrets.length ? { secrets } : {};
|
|
149
|
+
}
|
|
74
150
|
function reportOf(raw) {
|
|
75
151
|
const r = raw;
|
|
76
152
|
if (!r || typeof r.accepted !== "number" || typeof r.rejected !== "number")
|
|
@@ -88,6 +164,7 @@ function reportOf(raw) {
|
|
|
88
164
|
excluded: list(r.coverage?.excluded).length
|
|
89
165
|
},
|
|
90
166
|
unknownFiles: unknown.slice(0, UNKNOWN_SHOWN),
|
|
167
|
+
...secretsOf(r.secrets),
|
|
91
168
|
...typeof r.commit === "string" && SHA.test(r.commit) ? { commit: r.commit } : {}
|
|
92
169
|
};
|
|
93
170
|
}
|
|
@@ -170,21 +247,22 @@ async function trustView(root) {
|
|
|
170
247
|
const repos = [];
|
|
171
248
|
for (const repo of ids) {
|
|
172
249
|
const factsPath = join(dir, `${repo}.jsonl`);
|
|
173
|
-
const
|
|
250
|
+
const read = await keptParse(factsPath, "facts", (t) => t.trim() ? parseFacts(t) : null).catch(() => void 0);
|
|
251
|
+
const factsPresent = read !== void 0;
|
|
174
252
|
const facts = {
|
|
175
253
|
path: rel(factsPath),
|
|
176
|
-
present:
|
|
254
|
+
present: factsPresent,
|
|
177
255
|
count: 0,
|
|
178
256
|
unverified: 0
|
|
179
257
|
};
|
|
180
258
|
let frameworks;
|
|
181
259
|
let terms;
|
|
182
|
-
let
|
|
260
|
+
let kept2 = [];
|
|
183
261
|
const lists = { rejected: [], excluded: [], asked: [], unverified: [] };
|
|
184
|
-
if (
|
|
185
|
-
const parsed =
|
|
262
|
+
if (read) {
|
|
263
|
+
const parsed = read;
|
|
186
264
|
if (parsed.ok) {
|
|
187
|
-
|
|
265
|
+
kept2 = parsed.facts;
|
|
188
266
|
facts.count = parsed.facts.length;
|
|
189
267
|
const unchecked = parsed.facts.filter((f) => f.verified === "none");
|
|
190
268
|
facts.unverified = unchecked.length;
|
|
@@ -258,7 +336,7 @@ async function trustView(root) {
|
|
|
258
336
|
if (!a.ok)
|
|
259
337
|
problems.push({ file: rel(auditPath), message: `isn't an audit file: ${a.issues[0]}` });
|
|
260
338
|
else {
|
|
261
|
-
const byId = new Map(
|
|
339
|
+
const byId = new Map(kept2.map((f) => [f.id, f]));
|
|
262
340
|
const p = auditPrecision(a.file.items, (i) => auditItemHolds(i, byId));
|
|
263
341
|
audit = {
|
|
264
342
|
path: rel(auditPath),
|
|
@@ -277,7 +355,7 @@ async function trustView(root) {
|
|
|
277
355
|
checkoutDir = void 0;
|
|
278
356
|
}
|
|
279
357
|
const head = checkoutDir ? await headFromFiles(checkoutDir) : void 0;
|
|
280
|
-
const present = checkoutDir ? await
|
|
358
|
+
const present = checkoutDir ? await stat2(join(checkoutDir, ".git")).then(() => true, () => false) : false;
|
|
281
359
|
const checkout = {
|
|
282
360
|
path: checkoutDir ? rel(checkoutDir) : `workspace/${repo}`,
|
|
283
361
|
present,
|
|
@@ -305,11 +383,78 @@ async function trustView(root) {
|
|
|
305
383
|
});
|
|
306
384
|
}
|
|
307
385
|
const contracts = await contractCheckOf(root).then((c) => c.result.counts.compared ? c.result.counts : void 0, () => void 0);
|
|
308
|
-
|
|
386
|
+
const { answerBoxesOf } = await import("./chunk-C7BB6IQT.js");
|
|
387
|
+
const answerBoxes = await answerBoxesOf(root).catch(() => []);
|
|
388
|
+
return {
|
|
389
|
+
factsDir: factsRel,
|
|
390
|
+
repos,
|
|
391
|
+
problems,
|
|
392
|
+
...contracts ? { contracts } : {},
|
|
393
|
+
...answerBoxes.length ? { answerBoxes } : {}
|
|
394
|
+
};
|
|
395
|
+
}
|
|
396
|
+
async function checkoutsStamp(root) {
|
|
397
|
+
const dirs = isAdopted(root) ? [root] : (await loadRepos(root).catch(() => [])).flatMap((r) => {
|
|
398
|
+
try {
|
|
399
|
+
return [baseClonePath(root, r.id)];
|
|
400
|
+
} catch {
|
|
401
|
+
return [];
|
|
402
|
+
}
|
|
403
|
+
});
|
|
404
|
+
const files = await Promise.all(dirs.map(async (d) => {
|
|
405
|
+
const git = join(d, ".git");
|
|
406
|
+
const head = await readFile(join(git, "HEAD"), "utf8").catch(() => "");
|
|
407
|
+
const branch = /^ref: (refs\/\S+)/.exec(head)?.[1];
|
|
408
|
+
const remotes = await readdir(join(git, "refs", "remotes")).catch(() => []);
|
|
409
|
+
const worktrees = await readdir(join(git, "worktrees")).catch(() => []);
|
|
410
|
+
const branches = await Promise.all([
|
|
411
|
+
join(git, "refs", "heads", "task"),
|
|
412
|
+
join(git, "refs", "heads", "change"),
|
|
413
|
+
...remotes.flatMap((r) => [
|
|
414
|
+
join(git, "refs", "remotes", r, "task"),
|
|
415
|
+
join(git, "refs", "remotes", r, "change")
|
|
416
|
+
])
|
|
417
|
+
].map(refFiles));
|
|
418
|
+
return [
|
|
419
|
+
join(git, "HEAD"),
|
|
420
|
+
join(git, "packed-refs"),
|
|
421
|
+
join(git, "logs", "HEAD"),
|
|
422
|
+
...branch ? [join(git, ...branch.split("/"))] : [],
|
|
423
|
+
...branches.flat(),
|
|
424
|
+
...worktrees.sort().flatMap((w) => [
|
|
425
|
+
join(git, "worktrees", w, "HEAD"),
|
|
426
|
+
join(git, "worktrees", w, "logs", "HEAD")
|
|
427
|
+
])
|
|
428
|
+
];
|
|
429
|
+
}));
|
|
430
|
+
const heads = await Promise.all(dirs.map((d) => readFile(join(d, ".git", "HEAD"), "utf8").catch(() => "-")));
|
|
431
|
+
const all = files.flat();
|
|
432
|
+
const names = all.map((f) => relative(root, f)).join(",");
|
|
433
|
+
return `${heads.join("|")}#${names}#${await stampOfFiles(all)}`;
|
|
434
|
+
}
|
|
435
|
+
async function refFiles(dir) {
|
|
436
|
+
const out = [];
|
|
437
|
+
const walk = async (d, depth) => {
|
|
438
|
+
if (depth > 8)
|
|
439
|
+
return;
|
|
440
|
+
const es = await readdir(d, { withFileTypes: true }).catch(() => []);
|
|
441
|
+
for (const e of es) {
|
|
442
|
+
const p = join(d, e.name);
|
|
443
|
+
if (e.isDirectory())
|
|
444
|
+
await walk(p, depth + 1);
|
|
445
|
+
else if (e.isFile() && !e.name.endsWith(".lock"))
|
|
446
|
+
out.push(p);
|
|
447
|
+
}
|
|
448
|
+
};
|
|
449
|
+
await walk(dir, 0);
|
|
450
|
+
return out.sort();
|
|
309
451
|
}
|
|
310
452
|
function uiTrustRoutes(r, ctx) {
|
|
311
|
-
return r.add("GET", "/api/trust", async () => ({
|
|
312
|
-
|
|
453
|
+
return r.add("GET", "/api/trust", async () => ({
|
|
454
|
+
status: 200,
|
|
455
|
+
body: await keptAnswer(ctx.root, "trust", () => trustView(ctx.root), () => checkoutsStamp(ctx.root))
|
|
456
|
+
})).add("POST", "/api/trust/answer-boxes/ignore", ({ body }) => answerBoxRoute(ctx, body, false)).add("POST", "/api/trust/answer-boxes/rename", ({ body }) => answerBoxRoute(ctx, body, true)).add("GET", "/api/trust/fresh", async () => {
|
|
457
|
+
const { estateFreshness } = await import("./chunk-T2HXLDY3.js");
|
|
313
458
|
const v = await estateFreshness(ctx.root);
|
|
314
459
|
const body = {
|
|
315
460
|
...v,
|
|
@@ -323,8 +468,43 @@ function uiTrustRoutes(r, ctx) {
|
|
|
323
468
|
return { status: 200, body };
|
|
324
469
|
});
|
|
325
470
|
}
|
|
471
|
+
async function answerBoxRoute(ctx, body, rename) {
|
|
472
|
+
const b = api_exports.AnswerBoxRequest.safeParse(body ?? {});
|
|
473
|
+
if (!b.success || rename && !b.data.name)
|
|
474
|
+
throw badRequest(rename ? "Say which box and its real name: { id, name, preview }." : "Say which box: { id, preview }.");
|
|
475
|
+
const { AnswerBoxError, ignoreAnswerBox, renameAnswerBox } = await import("./chunk-C7BB6IQT.js");
|
|
476
|
+
const o = {
|
|
477
|
+
by: ctx.user,
|
|
478
|
+
at: (/* @__PURE__ */ new Date()).toISOString(),
|
|
479
|
+
...b.data.preview ? { preview: true } : {}
|
|
480
|
+
};
|
|
481
|
+
try {
|
|
482
|
+
const r = rename ? await renameAnswerBox(ctx.root, b.data.id, b.data.name, o) : await ignoreAnswerBox(ctx.root, b.data.id, o);
|
|
483
|
+
if (r.written) {
|
|
484
|
+
for (const a of r.answers)
|
|
485
|
+
ctx.events.publish({ type: "file.changed", path: `questions/${a.id}.yaml` });
|
|
486
|
+
if (r.profile)
|
|
487
|
+
ctx.events.publish({ type: "file.changed", path: r.profile.path });
|
|
488
|
+
}
|
|
489
|
+
return { status: 200, body: r };
|
|
490
|
+
} catch (e) {
|
|
491
|
+
if (e instanceof AnswerBoxError)
|
|
492
|
+
throw e.code === "not-found" ? notFound(e.message) : badRequest(e.message);
|
|
493
|
+
if (e instanceof FileChangedError)
|
|
494
|
+
throw conflict(e.message);
|
|
495
|
+
if (e instanceof QuestionError)
|
|
496
|
+
throw new HttpError(422, "Atticus can't do that", e.message);
|
|
497
|
+
if (e instanceof Error && / would not be valid: /.test(e.message))
|
|
498
|
+
throw new HttpError(422, "Atticus can't do that", e.message.split("\n")[0]);
|
|
499
|
+
throw e;
|
|
500
|
+
}
|
|
501
|
+
}
|
|
326
502
|
|
|
327
503
|
export {
|
|
504
|
+
keepAnswersWhileWatched,
|
|
505
|
+
answersMayHaveChanged,
|
|
506
|
+
keptAnswer,
|
|
328
507
|
catalogSources,
|
|
508
|
+
checkoutsStamp,
|
|
329
509
|
uiTrustRoutes
|
|
330
510
|
};
|
|
@@ -45,16 +45,18 @@ import {
|
|
|
45
45
|
utf8,
|
|
46
46
|
visioIngestor,
|
|
47
47
|
xlsxIngestor
|
|
48
|
-
} from "./chunk-
|
|
49
|
-
import "./chunk-
|
|
50
|
-
import "./chunk-
|
|
48
|
+
} from "./chunk-DIYNRYXW.js";
|
|
49
|
+
import "./chunk-5FPAKAGE.js";
|
|
50
|
+
import "./chunk-IJQHBK76.js";
|
|
51
51
|
import {
|
|
52
52
|
ZIP_LIMITS,
|
|
53
53
|
ZipError,
|
|
54
54
|
peekZip,
|
|
55
55
|
readZip
|
|
56
|
-
} from "./chunk-
|
|
57
|
-
import "./chunk-
|
|
56
|
+
} from "./chunk-GJVCBTSO.js";
|
|
57
|
+
import "./chunk-G3ZFEHCX.js";
|
|
58
|
+
import "./chunk-QFDPX6C4.js";
|
|
59
|
+
import "./chunk-CTJHEG6A.js";
|
|
58
60
|
import "./chunk-BQGDB6ZL.js";
|
|
59
61
|
import "./chunk-TV45EUGM.js";
|
|
60
62
|
export {
|
|
@@ -78,10 +78,12 @@ import {
|
|
|
78
78
|
writeAssistantFiles,
|
|
79
79
|
writeProbe,
|
|
80
80
|
zeroInstallCommands
|
|
81
|
-
} from "./chunk-
|
|
82
|
-
import "./chunk-
|
|
83
|
-
import "./chunk-
|
|
84
|
-
import "./chunk-
|
|
81
|
+
} from "./chunk-J4K4C4T5.js";
|
|
82
|
+
import "./chunk-OSZTENIA.js";
|
|
83
|
+
import "./chunk-GJVCBTSO.js";
|
|
84
|
+
import "./chunk-G3ZFEHCX.js";
|
|
85
|
+
import "./chunk-QFDPX6C4.js";
|
|
86
|
+
import "./chunk-CTJHEG6A.js";
|
|
85
87
|
import "./chunk-BQGDB6ZL.js";
|
|
86
88
|
import "./chunk-TV45EUGM.js";
|
|
87
89
|
export {
|
|
@@ -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
|
storeChangeRows
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import {
|
|
10
|
-
metarepoOpenSpec
|
|
11
|
-
} from "./chunk-R7NYHMUU.js";
|
|
8
|
+
} from "./chunk-HI7ADE4E.js";
|
|
12
9
|
import {
|
|
13
10
|
table
|
|
14
11
|
} from "./chunk-VOGCSYOI.js";
|
|
12
|
+
import {
|
|
13
|
+
metarepoOpenSpec
|
|
14
|
+
} from "./chunk-WECCLSYY.js";
|
|
15
15
|
import {
|
|
16
16
|
gateStatus,
|
|
17
17
|
ownerWaitsLine,
|
|
18
18
|
reviewedGates
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-A6ZG3UOS.js";
|
|
20
20
|
import {
|
|
21
21
|
ChangeError,
|
|
22
22
|
RELEASE_PR_STATES,
|
|
@@ -37,26 +37,28 @@ import {
|
|
|
37
37
|
returnToPo,
|
|
38
38
|
syncHandoff,
|
|
39
39
|
syncReleasePrs
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-U2JTTRKS.js";
|
|
41
41
|
import {
|
|
42
42
|
MockGitHost,
|
|
43
43
|
createAdapters,
|
|
44
44
|
fileStepStore
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-ESJALLOK.js";
|
|
46
46
|
import {
|
|
47
47
|
baseClonePath,
|
|
48
48
|
createWorkspace,
|
|
49
49
|
isInPlace,
|
|
50
50
|
loadRepos,
|
|
51
51
|
readChangeRepos
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-OSZTENIA.js";
|
|
53
53
|
import {
|
|
54
54
|
changeBranch,
|
|
55
55
|
changesRelOf,
|
|
56
56
|
handoffBranch,
|
|
57
|
-
loadOrgPack,
|
|
58
57
|
orgPackDirOf
|
|
59
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-GJVCBTSO.js";
|
|
59
|
+
import {
|
|
60
|
+
loadOrgPack
|
|
61
|
+
} from "./chunk-QFDPX6C4.js";
|
|
60
62
|
|
|
61
63
|
// packages/cli/dist/change-commands.js
|
|
62
64
|
import { existsSync } from "node:fs";
|
|
@@ -80,11 +82,37 @@ async function syncAfterManualStep(root, s, by, io, deps = {}) {
|
|
|
80
82
|
if (s.state === "open")
|
|
81
83
|
return false;
|
|
82
84
|
const pr = await handoffPrStep(root, s);
|
|
83
|
-
if (
|
|
85
|
+
if (pr) {
|
|
86
|
+
await changeSync(root, s.change, { by, ...pr.repo ? { repo: pr.repo } : {} }, io, deps);
|
|
87
|
+
return true;
|
|
88
|
+
}
|
|
89
|
+
const head = await prStepHead(root, s);
|
|
90
|
+
if (!head || !s.change)
|
|
84
91
|
return false;
|
|
85
|
-
|
|
92
|
+
if (head === changeBranch(s.change)) {
|
|
93
|
+
await changeSync(root, s.change, { by }, io, deps);
|
|
94
|
+
return true;
|
|
95
|
+
}
|
|
96
|
+
const task = head.startsWith(`task/${s.change}/`) ? head.split("/").at(-1) : void 0;
|
|
97
|
+
if (!task)
|
|
98
|
+
return false;
|
|
99
|
+
const { settleTaskPr } = await import("./chunk-FDL2JOLB.js");
|
|
100
|
+
const settled = await settleTaskPr(root, s.change, task, {
|
|
101
|
+
...deps.gitHost ? { gitHost: deps.gitHost } : {},
|
|
102
|
+
...deps.now ? { now: () => new Date(deps.now) } : {}
|
|
103
|
+
}).catch(() => ({}));
|
|
104
|
+
if (settled.state !== "merged")
|
|
105
|
+
return false;
|
|
106
|
+
io.out(`Task ${task}'s PR is merged into ${changeBranch(s.change)}${settled.ticked ? `; ticked ${task} in tasks.md` : ""}.`);
|
|
86
107
|
return true;
|
|
87
108
|
}
|
|
109
|
+
async function prStepHead(root, s) {
|
|
110
|
+
if (s.system !== "git-host" || !s.change)
|
|
111
|
+
return void 0;
|
|
112
|
+
const open = s.action === "open-pull-request" ? s : (await fileStepStore(root).list({ change: s.change, system: "git-host" })).find((x) => x.action === "open-pull-request" && s.dependsOn.includes(x.id));
|
|
113
|
+
const head = open?.inputs.head;
|
|
114
|
+
return typeof head === "string" ? head : void 0;
|
|
115
|
+
}
|
|
88
116
|
function printReasons(io, reasons) {
|
|
89
117
|
for (const r of reasons)
|
|
90
118
|
io.err(` - ${r.message}`);
|
|
@@ -129,7 +157,10 @@ function handoffPublisherFor(deps, io, gitHost) {
|
|
|
129
157
|
try {
|
|
130
158
|
return await git.publish(input);
|
|
131
159
|
} catch (e) {
|
|
132
|
-
io?.out(
|
|
160
|
+
io?.out(
|
|
161
|
+
// App-only audit: the branch is kept here (the publisher makes it before the push).
|
|
162
|
+
`The branch ${input.branch} wasn't pushed (${e.message.split("\n")[0]}): it is kept here with the hand-off's files. Push again on the change page once that is fixed, or push it yourself (git push origin ${input.branch}) before you open the PR.`
|
|
163
|
+
);
|
|
133
164
|
return { commit: "" };
|
|
134
165
|
}
|
|
135
166
|
}
|
|
@@ -171,7 +202,7 @@ async function changeNew(root, o, io, deps = {}) {
|
|
|
171
202
|
}
|
|
172
203
|
let like;
|
|
173
204
|
if (o.like) {
|
|
174
|
-
const { findPastChange } = await import("./chunk-
|
|
205
|
+
const { findPastChange } = await import("./chunk-H7KERB6Q.js");
|
|
175
206
|
like = await findPastChange(root, o.like);
|
|
176
207
|
if (!like) {
|
|
177
208
|
io.err(`There is no archived change ${o.like}: atticus change similar "<what it is about>" lists them.`);
|
|
@@ -180,7 +211,7 @@ async function changeNew(root, o, io, deps = {}) {
|
|
|
180
211
|
}
|
|
181
212
|
let impact;
|
|
182
213
|
if (o.impact) {
|
|
183
|
-
const { loadVendorImpact } = await import("./chunk-
|
|
214
|
+
const { loadVendorImpact } = await import("./chunk-X7HFXXTZ.js");
|
|
184
215
|
const got = await loadVendorImpact(root, o.impact, io);
|
|
185
216
|
if ("error" in got) {
|
|
186
217
|
io.err(got.error);
|
|
@@ -210,16 +241,16 @@ async function changeNew(root, o, io, deps = {}) {
|
|
|
210
241
|
});
|
|
211
242
|
io.out(`Created ${c.id} (${c.type}, from the ${c.template} template). It is in ${c.state}.`);
|
|
212
243
|
if (impact) {
|
|
213
|
-
const { attachToChange } = await import("./chunk-
|
|
214
|
-
const { changeFolder } = await import("./chunk-
|
|
215
|
-
const { impactDocument, IMPACT_WORDS } = await import("./chunk-
|
|
244
|
+
const { attachToChange } = await import("./chunk-4DX4DIND.js");
|
|
245
|
+
const { changeFolder } = await import("./chunk-HRHXTLUM.js");
|
|
246
|
+
const { impactDocument, IMPACT_WORDS } = await import("./chunk-X7HFXXTZ.js");
|
|
216
247
|
const doc = impactDocument(impact);
|
|
217
248
|
const attached = await attachToChange(changeFolder(root, c.id), [{ name: doc.name, bytes: new TextEncoder().encode(doc.text) }], { by: o.by, at: deps.now ?? (/* @__PURE__ */ new Date()).toISOString().replace(/\.\d{3}Z$/, "Z") });
|
|
218
249
|
const path = attached.added[0]?.path ?? `inputs/${doc.name}`;
|
|
219
250
|
io.out(IMPACT_WORDS.started(impact.name, impact.impact.newer.version ?? impact.impact.newer.id, impact.impact, path));
|
|
220
251
|
}
|
|
221
252
|
if (like) {
|
|
222
|
-
const { attachPastChange } = await import("./chunk-
|
|
253
|
+
const { attachPastChange } = await import("./chunk-H7KERB6Q.js");
|
|
223
254
|
const name = await attachPastChange(root, c.id, like, o.by, deps.now ? new Date(deps.now) : /* @__PURE__ */ new Date());
|
|
224
255
|
io.out(`It starts from ${like}: attached as inputs/${name}, which its steps read as an example.`);
|
|
225
256
|
}
|
|
@@ -290,7 +321,7 @@ async function usedUpGates(root, id) {
|
|
|
290
321
|
for (const g of await reviewedGates(root, id).catch(() => [])) {
|
|
291
322
|
const s = await gateStatus(root, id, g).catch(() => void 0);
|
|
292
323
|
if (s && (s.humanDecides || s.checkRound || ownerWaitsLine(s, id)))
|
|
293
|
-
out.push((await import("./chunk-
|
|
324
|
+
out.push((await import("./chunk-AAY6VPPO.js")).statusLine(s, id));
|
|
294
325
|
}
|
|
295
326
|
return out;
|
|
296
327
|
}
|
|
@@ -318,11 +349,14 @@ async function changeHandoff(root, id, o, io, deps = {}) {
|
|
|
318
349
|
...o.base ? { base: o.base } : {},
|
|
319
350
|
publisher: handoffPublisherFor(deps, io, gitHost),
|
|
320
351
|
// WP7.4: the PR reviews itself: the change as a picture, its estimate, its open findings.
|
|
321
|
-
review: await (await import("./chunk-
|
|
352
|
+
review: await (await import("./chunk-CFSHLQPK.js")).handoffReview(root, id),
|
|
322
353
|
...metarepoOpenSpec(root) ? { openspec: metarepoOpenSpec(root) } : {}
|
|
323
354
|
});
|
|
324
355
|
io.out(h.pr.url.startsWith("manual:") ? `Hand-off raised as a step for you (Home \u203A Manual steps): open its PR on the Git host from ${h.branch}, then record its link.` : `Hand-off PR #${h.pr.number} (${h.branch}) is open: ${h.pr.url}`);
|
|
325
|
-
io.out(`Reviewers: ${h.reviewers.length ? h.reviewers.map((r) => `@${r}`).join(", ") : "none named"}.`);
|
|
356
|
+
io.out(`Reviewers: ${h.reviewers.length ? h.reviewers.map((r) => `@${r}`).join(", ") : "none named: name the next role under Owners on the change's page"}.`);
|
|
357
|
+
const { notifyHandoffReviewers } = await import("./chunk-ZSNNF26J.js");
|
|
358
|
+
for (const line of await notifyHandoffReviewers(root, await changeStore(root).read(id), h, approvalOf(o.by, now, ref), deps.notify).catch(() => []))
|
|
359
|
+
io.out(line);
|
|
326
360
|
io.out(`Merging it approves the gate; the Git host's own rules decide who may approve it.`);
|
|
327
361
|
return 0;
|
|
328
362
|
} catch (e) {
|
|
@@ -570,7 +604,7 @@ async function rescanAfterArchive(root, id, plan, io, deps) {
|
|
|
570
604
|
io.out(`Couldn't update the base clone of ${s.id} (${s.reason ?? s.action}); scanning what is there.`);
|
|
571
605
|
}
|
|
572
606
|
io.out(`Rescanning for ${id}'s repos: ${here.join(", ")}.`);
|
|
573
|
-
const code = await (await import("./chunk-
|
|
607
|
+
const code = await (await import("./chunk-L27KUL5B.js")).scanCommand(root, {}, io);
|
|
574
608
|
if (away.length)
|
|
575
609
|
io.out(`Not in a base clone here: ${away.join(", ")}. To add them, run: ${command(away)}`);
|
|
576
610
|
return code;
|