@maycombhq/atticus 2.0.0-beta.11 → 2.0.0-beta.12.1
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-4UZJOQYK.js → chunk-2A24BNRZ.js} +7 -7
- package/dist/{chunk-C2YGYTU6.js → chunk-2DJUQ6CO.js} +22 -22
- package/dist/{chunk-BQNEHB5U.js → chunk-2OWSG6BK.js} +11 -11
- package/dist/{chunk-23VFQHFQ.js → chunk-2QT6WVAK.js} +31 -21
- package/dist/chunk-2RMWW6G3.js +41 -0
- package/dist/{chunk-SILY6ZEZ.js → chunk-3256EDLL.js} +3 -3
- package/dist/{chunk-YLAM4HZH.js → chunk-34BCKMBS.js} +3 -3
- package/dist/{chunk-GVFUEGGM.js → chunk-34NWVIBC.js} +2 -2
- package/dist/{chunk-UABFFMWH.js → chunk-36CTZGPH.js} +7 -7
- package/dist/{chunk-77RSRG3A.js → chunk-3JLTN3Y7.js} +7 -7
- package/dist/{chunk-QWHTTA2X.js → chunk-3M7QBKKG.js} +8 -6
- package/dist/chunk-3PLE3ZQ5.js +34 -0
- package/dist/{chunk-LUPW4WLK.js → chunk-3W5R5J65.js} +8 -8
- package/dist/{chunk-EBWIOODZ.js → chunk-42L2WHP6.js} +4 -4
- package/dist/{chunk-KU4T2CXJ.js → chunk-4GNKICU5.js} +18 -18
- package/dist/{chunk-2K2ZEJVR.js → chunk-4HTILEXW.js} +2 -2
- package/dist/{chunk-HR4DVO6X.js → chunk-4JLB5ISS.js} +3 -3
- package/dist/{chunk-XOVLGBKI.js → chunk-5C24MOXU.js} +17 -17
- package/dist/{chunk-EHUYLNLC.js → chunk-5G5GD5HF.js} +14 -14
- package/dist/{chunk-HGQZTUAC.js → chunk-5I5JDJ3R.js} +4 -4
- package/dist/{chunk-KIWEBM6G.js → chunk-5IMZYLDW.js} +11 -11
- package/dist/{chunk-XJAJQGXJ.js → chunk-5ION6STH.js} +2 -2
- package/dist/{chunk-5ICB2BXH.js → chunk-5R2EWR47.js} +7 -7
- package/dist/{chunk-HOUUBE74.js → chunk-65XZSK6S.js} +4 -4
- package/dist/{chunk-LVBPY2M6.js → chunk-6AYUBYK6.js} +348 -15
- package/dist/{chunk-IY4PHPHT.js → chunk-6HSRGY4B.js} +7 -5
- package/dist/{chunk-Y5AYBGLB.js → chunk-6IKYFARG.js} +22 -13
- package/dist/{chunk-7KXYMC2P.js → chunk-6R2OM6Y3.js} +15 -15
- package/dist/{chunk-GWSWS264.js → chunk-6ROZRBWH.js} +4 -4
- package/dist/{chunk-TZXHUDI6.js → chunk-72DY5NCN.js} +2 -2
- package/dist/{chunk-XNRPCI23.js → chunk-77UOXZVM.js} +5 -5
- package/dist/{chunk-LS3WR2RF.js → chunk-7C7PTJM2.js} +256 -73
- package/dist/{chunk-VYNZED7B.js → chunk-7FPTI62T.js} +20 -20
- package/dist/{chunk-Z2EYRUOH.js → chunk-7H5HYERS.js} +19 -19
- package/dist/{chunk-4YWRU7JK.js → chunk-7MASAGFE.js} +15 -15
- package/dist/{chunk-7SZPENUP.js → chunk-7UKETVPW.js} +1 -1
- package/dist/{chunk-55TBYJF2.js → chunk-7UXSS23C.js} +18 -16
- package/dist/{chunk-XPWSNKF3.js → chunk-7VAMO66T.js} +398 -111
- package/dist/{chunk-LDIARP6F.js → chunk-7VNEDDCC.js} +2 -2
- package/dist/{chunk-TGEOLIAK.js → chunk-7XWCTVJS.js} +3 -3
- package/dist/{chunk-RJDP642F.js → chunk-ARLH2ZMD.js} +1 -1
- package/dist/{chunk-IRW64JFF.js → chunk-AUSC47BK.js} +4 -4
- package/dist/{chunk-JUZ75OG4.js → chunk-AY7Y3WPD.js} +15 -15
- package/dist/{chunk-4URR24DD.js → chunk-BFZSO2TP.js} +6 -6
- package/dist/{chunk-MYKQVS5W.js → chunk-BHHIHENP.js} +10 -6
- package/dist/{chunk-6V3DTQWK.js → chunk-BUD6JILH.js} +21 -21
- package/dist/{chunk-MKC7P5LD.js → chunk-CCXEXCRO.js} +14 -14
- package/dist/{chunk-52WCHTVZ.js → chunk-CGF4LKXR.js} +3 -3
- package/dist/{chunk-5ACUW753.js → chunk-CH6LUQLD.js} +1 -1
- package/dist/{chunk-7VFVQX5K.js → chunk-CIIRPLI6.js} +4 -4
- package/dist/{chunk-JEUXCIRD.js → chunk-CJ5FQHST.js} +5 -5
- package/dist/{chunk-U6YKL7SI.js → chunk-CKI4VG2I.js} +22 -22
- package/dist/{chunk-BKFGGJKA.js → chunk-CQD26SMZ.js} +3 -1
- package/dist/chunk-CU35HXQ7.js +48 -0
- package/dist/{chunk-KLKENMWQ.js → chunk-CUD4I2U6.js} +58 -43
- package/dist/{chunk-5TY4DTHQ.js → chunk-CUX4GRTB.js} +3 -3
- package/dist/{chunk-5NZSJ5ZG.js → chunk-CXY4YDXS.js} +2 -2
- package/dist/{chunk-XR5DD5DQ.js → chunk-CYDJK34J.js} +12 -7
- package/dist/{chunk-WKXOEIOY.js → chunk-DBVU45FY.js} +14 -14
- package/dist/{chunk-IILZ7J3L.js → chunk-DBZNQAMN.js} +171 -62
- package/dist/{chunk-D7MWYJZF.js → chunk-DDOLWHIM.js} +17 -17
- package/dist/{chunk-EW7MRMD5.js → chunk-DIAYQLEY.js} +16 -7
- package/dist/{chunk-OFWYZH6B.js → chunk-DKGWE5ZL.js} +21 -21
- package/dist/{chunk-27EDZN52.js → chunk-DLX2R3MI.js} +31 -31
- package/dist/{chunk-TCADP67G.js → chunk-DONCF2XC.js} +3 -3
- package/dist/{chunk-ORZSD2KD.js → chunk-DQKNOHUZ.js} +1 -1
- package/dist/{chunk-EAQFRD2B.js → chunk-DREIS5Z5.js} +6 -6
- package/dist/{chunk-CAN3EBE5.js → chunk-DW4BM73R.js} +1 -1
- package/dist/{chunk-C5JFMAXX.js → chunk-DX5H5YKM.js} +11 -11
- package/dist/{chunk-LZWVK4YY.js → chunk-EE3UNC44.js} +3 -3
- package/dist/{chunk-Z46OXTBE.js → chunk-EOCZDNWU.js} +5 -5
- package/dist/chunk-EOWO4YPF.js +43 -0
- package/dist/{chunk-NBGBMRIS.js → chunk-EREL3TQG.js} +1 -1
- package/dist/{chunk-NH5QH3WS.js → chunk-ESGIBN3S.js} +1 -1
- package/dist/chunk-EZ3FDHW3.js +41 -0
- package/dist/chunk-F5L23NGR.js +45 -0
- package/dist/{chunk-MQNBEO3N.js → chunk-FF5Q7ONT.js} +118 -104
- package/dist/{chunk-TC3KTG33.js → chunk-FLROTO6F.js} +3 -3
- package/dist/{chunk-YWOMGMZB.js → chunk-FNVY656P.js} +22 -22
- package/dist/{chunk-MCWWMMLN.js → chunk-FP6GJJY7.js} +22 -22
- package/dist/{chunk-SIUDWWKS.js → chunk-FSR7OUVJ.js} +23 -23
- package/dist/{chunk-GPLFYLGH.js → chunk-FT3RXIN4.js} +10 -10
- package/dist/{chunk-SH7AZZDA.js → chunk-FYWA2CPF.js} +17 -17
- package/dist/{chunk-5BJFMAQU.js → chunk-G2K2D6XS.js} +12 -12
- package/dist/{chunk-3LU6YCSQ.js → chunk-G5SKNMPC.js} +5 -5
- package/dist/{chunk-RB2VSED2.js → chunk-GIPQHVJF.js} +11 -11
- package/dist/{chunk-NELU7LSL.js → chunk-GJ4B2FYS.js} +10 -10
- package/dist/{chunk-KQRYW7OS.js → chunk-GRZGEMO5.js} +109 -108
- package/dist/{chunk-OR5VRULZ.js → chunk-GU7PEYRC.js} +10 -10
- package/dist/{chunk-MKIULIUQ.js → chunk-GUNBOZ75.js} +3 -3
- package/dist/{chunk-Q32Y5T2U.js → chunk-GX3Q5PRC.js} +11 -11
- package/dist/{chunk-ANCI3LFS.js → chunk-HIQWJ6JZ.js} +4 -4
- package/dist/{chunk-JBSD57N7.js → chunk-HK2CF6KQ.js} +23 -23
- package/dist/{chunk-ZKUDS7JG.js → chunk-HMQXIFOL.js} +4 -4
- package/dist/{chunk-WIMOJMAK.js → chunk-HY2VVVFZ.js} +168 -14
- package/dist/{chunk-BX52REMA.js → chunk-IDLO7UCZ.js} +5 -5
- package/dist/{chunk-CE4S5ZY3.js → chunk-IJ7TPOXQ.js} +11 -11
- package/dist/{chunk-6N2GUZMZ.js → chunk-ISXNWUG7.js} +1 -1
- package/dist/{chunk-DYWTQXP4.js → chunk-IZF2VJU5.js} +22 -22
- package/dist/{chunk-6RGIM2ZH.js → chunk-J22RSFKY.js} +79 -9
- package/dist/{chunk-WFYHOXTB.js → chunk-J3DTLYER.js} +15 -15
- package/dist/{chunk-LEHZTKB3.js → chunk-JC3BMRB5.js} +11 -11
- package/dist/{chunk-7RGCQ4VZ.js → chunk-JLIEAQP4.js} +4 -4
- package/dist/chunk-JOG6LBOP.js +38 -0
- package/dist/{chunk-L7I5PKGD.js → chunk-JQG4VO47.js} +1 -1
- package/dist/{chunk-RIEFYHXI.js → chunk-JS3DJH3Q.js} +4 -4
- package/dist/{chunk-DGKNOPSE.js → chunk-JWQMD54C.js} +7 -7
- package/dist/{chunk-XKJRPVJO.js → chunk-KJ6IH2D5.js} +5 -5
- package/dist/{chunk-T6ESD5KM.js → chunk-KPHPVOME.js} +4 -4
- package/dist/{chunk-YWZDAZMA.js → chunk-KY2ZHTBJ.js} +6 -6
- package/dist/{chunk-7HWXYP4H.js → chunk-LAOZB5YC.js} +11 -11
- package/dist/chunk-LRCWWMHH.js +54 -0
- package/dist/chunk-LVQMS54L.js +54 -0
- package/dist/{chunk-NG5R2WIY.js → chunk-M3BJTXLR.js} +9 -9
- package/dist/{chunk-7RUMD56V.js → chunk-M4D3VKAS.js} +1 -1
- package/dist/{chunk-UTR67XU2.js → chunk-MFRPLAOH.js} +2 -2
- package/dist/{chunk-HZYFLEWO.js → chunk-MI3GGF7V.js} +17 -17
- package/dist/{chunk-BA5DTXHQ.js → chunk-MIOY6EXD.js} +4 -4
- package/dist/{chunk-BUWSOQLU.js → chunk-ML3HOWPI.js} +4 -4
- package/dist/{chunk-SINJKQSI.js → chunk-MOY52LHS.js} +13 -13
- package/dist/{chunk-FMRMTI7W.js → chunk-MRLCNXXR.js} +1 -1
- package/dist/{chunk-5P5BGG5L.js → chunk-N2FA53DA.js} +6 -6
- package/dist/{chunk-ATNG5VOZ.js → chunk-N6YELFHL.js} +2 -2
- package/dist/{chunk-MYOW3RPC.js → chunk-N7HG4UP7.js} +6 -6
- package/dist/{chunk-7LCQ7JAM.js → chunk-NAKVQU6F.js} +1 -1
- package/dist/{chunk-3DDJLI7N.js → chunk-NTNJNRHW.js} +4 -4
- package/dist/{chunk-OHXTB6CO.js → chunk-NZY72PGJ.js} +13 -8
- package/dist/{chunk-4ONORLK5.js → chunk-O62VA6MH.js} +13 -13
- package/dist/{chunk-IVHN2VYG.js → chunk-OJAJXU65.js} +3 -1
- package/dist/{chunk-CZI2ACNT.js → chunk-OKUYBXXI.js} +16 -16
- package/dist/{chunk-EZSZFI54.js → chunk-OMH3I5BH.js} +2 -2
- package/dist/{chunk-5RUMHLIS.js → chunk-P3VBYYAS.js} +24 -3
- package/dist/{chunk-WUE6HKIU.js → chunk-P7SONIEO.js} +165 -46
- package/dist/{chunk-6E2GJANQ.js → chunk-PAOIMLTK.js} +19 -19
- package/dist/{chunk-B3QOYE74.js → chunk-PAQDPB6T.js} +4 -4
- package/dist/{chunk-DS3ZEJVN.js → chunk-PGFRXGHA.js} +2 -2
- package/dist/{chunk-5V5BJACL.js → chunk-PJRMMWU4.js} +2 -2
- package/dist/{chunk-S7ZWCMDO.js → chunk-PKCYRG6G.js} +57 -18
- package/dist/{chunk-26DBAGOP.js → chunk-PUGPT4Y6.js} +17 -17
- package/dist/{chunk-PQW7PYUR.js → chunk-PVMGHQWB.js} +7 -7
- package/dist/{chunk-MSL3CLHX.js → chunk-Q4AWUD6C.js} +16 -16
- package/dist/{chunk-JQX6BSE4.js → chunk-QC24Z5JU.js} +10 -10
- package/dist/{chunk-WCLAOKCH.js → chunk-QKSWQBWD.js} +8 -8
- package/dist/{chunk-GMJXC5AL.js → chunk-QL4VNY4U.js} +1 -1
- package/dist/chunk-QOF7U6BI.js +363 -0
- package/dist/{chunk-JRPQX2EK.js → chunk-QOPX5M7Y.js} +4 -4
- package/dist/{chunk-TEBBD4XH.js → chunk-QR65C3DV.js} +4 -4
- package/dist/{chunk-SG5KY4VB.js → chunk-QXGOEP44.js} +3 -3
- package/dist/{chunk-XZJE6WIT.js → chunk-RA64IK43.js} +1 -1
- package/dist/{chunk-3WU7LVTL.js → chunk-RMNYY5IE.js} +5 -5
- package/dist/chunk-S3QCJWCF.js +34 -0
- package/dist/{chunk-C75W7VXX.js → chunk-S4USA5WC.js} +20 -18
- package/dist/{chunk-FOQXYMOR.js → chunk-S5X7BVWP.js} +19 -19
- package/dist/{chunk-EV4TEFOD.js → chunk-SR2M7DWL.js} +13 -13
- package/dist/{chunk-R6UTCLH5.js → chunk-T4TMX54Q.js} +16 -16
- package/dist/{chunk-OXVVRJDQ.js → chunk-T72K4PLH.js} +11 -11
- package/dist/{chunk-SKMHS4CL.js → chunk-TA2ZNDYD.js} +1 -1
- package/dist/{chunk-CRQ73DIF.js → chunk-TBKJPKDN.js} +11 -11
- package/dist/{chunk-YVCOQ5TZ.js → chunk-TEHH47TG.js} +3 -3
- package/dist/{chunk-EATSD7YD.js → chunk-TEZSZ24W.js} +4 -4
- package/dist/{chunk-WUP77GG2.js → chunk-TIAPEYWI.js} +3 -3
- package/dist/{chunk-J27QGXO4.js → chunk-TIUBGJG3.js} +9 -9
- package/dist/{chunk-RWMSJP7H.js → chunk-TJHDFS33.js} +29 -26
- package/dist/chunk-TJP2KLZI.js +41 -0
- package/dist/{chunk-ZJQUIG3A.js → chunk-TV6ECMN3.js} +15 -14
- package/dist/{chunk-JMOLB347.js → chunk-U25OX22K.js} +64 -8
- package/dist/{chunk-UNFCFJMF.js → chunk-U2SGLXFR.js} +17 -17
- package/dist/{chunk-MV4637YA.js → chunk-U3JGJ3BO.js} +24 -24
- package/dist/{chunk-XF3DATVU.js → chunk-U43G5EUN.js} +17 -17
- package/dist/{chunk-SNHOLLGN.js → chunk-UQUDITWL.js} +84 -25
- package/dist/{chunk-EQOSXLK3.js → chunk-UYKKTEWB.js} +14 -14
- package/dist/{chunk-NX6QEEOA.js → chunk-VAL7HAIR.js} +3 -3
- package/dist/{chunk-JUQHYTXN.js → chunk-VC4JMXM5.js} +19 -17
- package/dist/{chunk-NIYB5K5B.js → chunk-VRH6ITQH.js} +9 -9
- package/dist/{chunk-U5PDQTLA.js → chunk-VTMIRRIZ.js} +2 -2
- package/dist/{chunk-H4VJO3M2.js → chunk-VUBVBFJW.js} +5 -5
- package/dist/{chunk-G7WZH54P.js → chunk-W3ZWS3B3.js} +20 -10
- package/dist/{chunk-GG6HIU74.js → chunk-WBOVB3XR.js} +24 -24
- package/dist/{chunk-IA2RKC6I.js → chunk-WFJMKUTR.js} +52 -11
- package/dist/{chunk-KXZR2BLL.js → chunk-WM4N2L4T.js} +1 -1
- package/dist/{chunk-7S3XFWOU.js → chunk-WRLEYM3T.js} +4 -4
- package/dist/{chunk-REWZE2XI.js → chunk-WSFPKNKT.js} +23 -23
- package/dist/{chunk-SUQZGPVG.js → chunk-XB64FJLU.js} +24 -24
- package/dist/{chunk-4AYZQ3SY.js → chunk-XBNKOARP.js} +4 -4
- package/dist/chunk-XDTD55UU.js +89 -0
- package/dist/{chunk-DQNKG4HY.js → chunk-XMYGEZQ7.js} +17 -17
- package/dist/{chunk-R3VFLYZZ.js → chunk-XP3KLC4S.js} +6 -6
- package/dist/{chunk-S2FDPN32.js → chunk-XRDYEEDE.js} +1 -1
- package/dist/{chunk-7HQOZALR.js → chunk-XSNIHYO6.js} +10 -10
- package/dist/chunk-XVQGT4SL.js +37 -0
- package/dist/{chunk-ZTNS3L5Z.js → chunk-XZLSKGJX.js} +5 -5
- package/dist/{chunk-NR5T46ZY.js → chunk-Y2FMWQQB.js} +16 -16
- package/dist/{chunk-7A7IG7OA.js → chunk-Y6LFFSRV.js} +10 -10
- package/dist/{chunk-V4XKYGLK.js → chunk-YISWYR3Q.js} +4 -4
- package/dist/{chunk-EI4KQYJ3.js → chunk-YSFIQGDK.js} +8 -8
- package/dist/{chunk-XPJR74MA.js → chunk-YVQWJDVN.js} +37 -25
- package/dist/{chunk-R3RVFCJ2.js → chunk-YY2WGL6S.js} +2 -2
- package/dist/{chunk-HQMCHHY5.js → chunk-Z2BA4NNR.js} +2 -2
- package/dist/{chunk-G3PBLW4K.js → chunk-ZDZCUZ4N.js} +34 -9
- package/dist/{chunk-UFBKJOWB.js → chunk-ZPPLFE4N.js} +14 -14
- package/dist/{chunk-WGU6NIUV.js → chunk-ZRP6ZXOF.js} +12 -12
- package/dist/{chunk-7J7UY46S.js → chunk-ZTIMXVV5.js} +2 -2
- package/dist/{chunk-IWZPGIGT.js → chunk-ZWGU46YO.js} +23 -23
- package/dist/files.json +441 -433
- package/dist/packages/sdk/npm/index.js +9 -0
- package/dist/packages/ui/dist/assets/{elk-api-DDup23Us.js → elk-api-D2NcYpUJ.js} +2 -2
- package/dist/packages/ui/dist/assets/index-CT7skl01.js +29 -0
- package/dist/packages/ui/dist/index.html +1 -1
- package/package.json +5 -5
- package/dist/chunk-4Y4FY34K.js +0 -34
- package/dist/chunk-ACWQDL6T.js +0 -37
- package/dist/chunk-ASKDCMW5.js +0 -275
- package/dist/chunk-B3UHYXHU.js +0 -41
- package/dist/chunk-DDAEAZEV.js +0 -54
- package/dist/chunk-E25G46RW.js +0 -54
- package/dist/chunk-KQK6SQPE.js +0 -48
- package/dist/chunk-NCR24CPV.js +0 -41
- package/dist/chunk-NDW4ROST.js +0 -38
- package/dist/chunk-OJN7WME4.js +0 -34
- package/dist/chunk-UFTQIK2J.js +0 -43
- package/dist/chunk-ZHWSL6SR.js +0 -45
- package/dist/packages/ui/dist/assets/index-mTOWhQZm.js +0 -29
|
@@ -6,7 +6,7 @@ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
|
6
6
|
import {
|
|
7
7
|
dotInt8,
|
|
8
8
|
textSha
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-CQD26SMZ.js";
|
|
10
10
|
import {
|
|
11
11
|
Question,
|
|
12
12
|
RECORD_KINDS,
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
splitForms,
|
|
29
29
|
stateDirOf,
|
|
30
30
|
toCanonicalYaml
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-U25OX22K.js";
|
|
32
32
|
import {
|
|
33
33
|
__toESM
|
|
34
34
|
} from "./chunk-TV45EUGM.js";
|
|
@@ -1004,8 +1004,8 @@ var DOCUMENT_EXTENSIONS = /\.(docx|pptx|xlsx|pdf|md|markdown|html?|txt)$/i;
|
|
|
1004
1004
|
async function documentNodes(path, bytes) {
|
|
1005
1005
|
const out = { nodes: [], names: [], links: [] };
|
|
1006
1006
|
const [{ readDocument }, { screenFile }] = await Promise.all([
|
|
1007
|
-
import("./chunk-
|
|
1008
|
-
import("./chunk-
|
|
1007
|
+
import("./chunk-CIIRPLI6.js"),
|
|
1008
|
+
import("./chunk-3M7QBKKG.js")
|
|
1009
1009
|
]);
|
|
1010
1010
|
const screen = screenFile(path, bytes);
|
|
1011
1011
|
if (screen.problem)
|
|
@@ -2284,7 +2284,7 @@ function openDb(file) {
|
|
|
2284
2284
|
// packages/index/dist/catalog-index.js
|
|
2285
2285
|
var vectorsFileOf = (file) => join3(dirname2(file), "vectors.sqlite");
|
|
2286
2286
|
var notInstalled = (e, pkg) => e.code === "ERR_MODULE_NOT_FOUND" && String(e.message).includes(pkg);
|
|
2287
|
-
async function embedderOf(root, setting, load = () => import("./chunk-
|
|
2287
|
+
async function embedderOf(root, setting, load = () => import("./chunk-OMH3I5BH.js")) {
|
|
2288
2288
|
if (setting === "off")
|
|
2289
2289
|
return { why: "turned off for this command" };
|
|
2290
2290
|
if (setting && setting !== "auto")
|
|
@@ -3,21 +3,20 @@ 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
|
+
modelsData,
|
|
8
|
+
modelsLine,
|
|
9
|
+
reachHeadOf,
|
|
10
|
+
reachPlanOf,
|
|
11
|
+
readPathsOf
|
|
12
|
+
} from "./chunk-XDTD55UU.js";
|
|
6
13
|
import {
|
|
7
14
|
notesAt
|
|
8
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-CGF4LKXR.js";
|
|
9
16
|
import {
|
|
10
17
|
houseUntaughtLines,
|
|
11
18
|
houseUntaughtOf
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import {
|
|
14
|
-
loadReadPlan,
|
|
15
|
-
partOfWords,
|
|
16
|
-
readPlanProgress,
|
|
17
|
-
readPlanRelOf,
|
|
18
|
-
saveReadPlan,
|
|
19
|
-
writeReadPlan
|
|
20
|
-
} from "./chunk-LVBPY2M6.js";
|
|
19
|
+
} from "./chunk-PAQDPB6T.js";
|
|
21
20
|
import {
|
|
22
21
|
carryOf,
|
|
23
22
|
checkoutOf,
|
|
@@ -25,22 +24,32 @@ import {
|
|
|
25
24
|
estateComponentsOf,
|
|
26
25
|
excludesOf,
|
|
27
26
|
headOf,
|
|
27
|
+
loadReadPlan,
|
|
28
|
+
modelsModeOf,
|
|
29
|
+
partOfWords,
|
|
28
30
|
raiseReadQuestions,
|
|
29
31
|
readCorrections,
|
|
32
|
+
readPlanProgress,
|
|
33
|
+
readPlanRelOf,
|
|
30
34
|
readReviewed,
|
|
35
|
+
recordNotReached,
|
|
31
36
|
reviewedProblemsOf,
|
|
37
|
+
saveReadPlan,
|
|
32
38
|
slipNoteLines,
|
|
39
|
+
writeReadPlan,
|
|
33
40
|
writeVerifyFiles
|
|
34
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-6AYUBYK6.js";
|
|
35
42
|
import {
|
|
36
43
|
ABOUT_RULE,
|
|
44
|
+
MODELS_RULE,
|
|
37
45
|
assistantTier,
|
|
38
46
|
mapBatchInstructions,
|
|
39
47
|
readProbes,
|
|
48
|
+
rulesNow,
|
|
40
49
|
taughtFrameworksText,
|
|
41
50
|
tierSource,
|
|
42
51
|
tierWords
|
|
43
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-J22RSFKY.js";
|
|
44
53
|
import {
|
|
45
54
|
FILE_KINDS,
|
|
46
55
|
SHOWN_PROPOSALS,
|
|
@@ -62,10 +71,10 @@ import {
|
|
|
62
71
|
sliceText,
|
|
63
72
|
staleMessage,
|
|
64
73
|
verifyFacts
|
|
65
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-7VAMO66T.js";
|
|
66
75
|
import {
|
|
67
76
|
loadRepos
|
|
68
|
-
} from "./chunk-
|
|
77
|
+
} from "./chunk-RA64IK43.js";
|
|
69
78
|
import {
|
|
70
79
|
DATA_RULE,
|
|
71
80
|
HandoffRuntime,
|
|
@@ -75,7 +84,7 @@ import {
|
|
|
75
84
|
estimateTokens,
|
|
76
85
|
promptBudget,
|
|
77
86
|
wrapData
|
|
78
|
-
} from "./chunk-
|
|
87
|
+
} from "./chunk-CQD26SMZ.js";
|
|
79
88
|
import {
|
|
80
89
|
AgentDefinition,
|
|
81
90
|
Fact,
|
|
@@ -95,7 +104,7 @@ import {
|
|
|
95
104
|
runsDirOf,
|
|
96
105
|
saysNotProduct,
|
|
97
106
|
stackHelpersOff
|
|
98
|
-
} from "./chunk-
|
|
107
|
+
} from "./chunk-U25OX22K.js";
|
|
99
108
|
import {
|
|
100
109
|
writeFileAtomic
|
|
101
110
|
} from "./chunk-MMB2OHUY.js";
|
|
@@ -397,6 +406,12 @@ async function packFor(root, s, batch, source, op, now, notes) {
|
|
|
397
406
|
const onFile = (await listQuestions(root, { repo: s.repo })).questions.filter((q) => q.state !== "retired");
|
|
398
407
|
const rules = await rulesCovering(root, s.repo, op);
|
|
399
408
|
const slices = fix ? [] : s.batches[batch];
|
|
409
|
+
const inBatch = new Set(slices.map((x) => x.path));
|
|
410
|
+
const reachedHere = (s.reached ?? []).filter((r) => inBatch.has(r.path));
|
|
411
|
+
const models = reachedHere.length ? [
|
|
412
|
+
"Model classes in this batch the entry points and calls reach (read these, and write their fields):",
|
|
413
|
+
...reachedHere.map((r) => `- ${r.path} (${r.types.join(", ")}), from ${r.from}`)
|
|
414
|
+
].join("\n") : void 0;
|
|
400
415
|
const rejected = s.rejected.map((r) => rejectedText(r, source));
|
|
401
416
|
const own = kindsOf(slices.map((x) => x.path));
|
|
402
417
|
const theirs = kindsOf(s.rejected.flatMap((r) => citedFiles(r.fact)));
|
|
@@ -419,15 +434,29 @@ async function packFor(root, s, batch, source, op, now, notes) {
|
|
|
419
434
|
// build files are read first, so from the second batch on this is what the code says.
|
|
420
435
|
frameworks: await frameworksFor(root, s.repo, facts),
|
|
421
436
|
// Nothing says what this repo is: ask for one line, cited, for a person to confirm.
|
|
422
|
-
...about ? {} : { askAbout: true },
|
|
437
|
+
...about || s.sets ? {} : { askAbout: true },
|
|
438
|
+
// ADR 0167: a top-up carries only the rule sets the read lacked.
|
|
439
|
+
...s.sets ? { sets: s.sets } : {},
|
|
423
440
|
// A-taught: how to read the wrapper calls and annotations of the frameworks it is built on.
|
|
424
441
|
...taughtOption(taughtIn(source, op)),
|
|
425
442
|
// ADR 0163: what the organisation's terms mean here and what must hold, as data.
|
|
426
|
-
...notes ? { notes } : {}
|
|
443
|
+
...notes ? { notes } : {},
|
|
444
|
+
// ADR 0169: the model classes of this batch the read reaches, listed beside it.
|
|
445
|
+
...models ? { models: true } : {}
|
|
427
446
|
}),
|
|
428
447
|
classification: "public",
|
|
429
448
|
trusted: true
|
|
430
449
|
},
|
|
450
|
+
...models ? [
|
|
451
|
+
{
|
|
452
|
+
id: "1-models",
|
|
453
|
+
kind: "document",
|
|
454
|
+
origin: "atticus/reachable",
|
|
455
|
+
text: models,
|
|
456
|
+
classification: "internal",
|
|
457
|
+
priority: 9
|
|
458
|
+
}
|
|
459
|
+
] : [],
|
|
431
460
|
...s.reread ? [
|
|
432
461
|
{
|
|
433
462
|
id: "0-reread",
|
|
@@ -551,7 +580,7 @@ async function mapCommand(root, repo, o, io, deps = {}) {
|
|
|
551
580
|
const repoNotes = await notesAt(root, repo, dir, op);
|
|
552
581
|
const notesPrompt = notesText(repoNotes.notes, repoNotes.type);
|
|
553
582
|
if (o.gaps) {
|
|
554
|
-
const { mapGaps } = await import("./chunk-
|
|
583
|
+
const { mapGaps } = await import("./chunk-PKCYRG6G.js");
|
|
555
584
|
const tier = await tierHere(root, op);
|
|
556
585
|
let part;
|
|
557
586
|
if (o.part !== void 0) {
|
|
@@ -570,7 +599,24 @@ async function mapCommand(root, repo, o, io, deps = {}) {
|
|
|
570
599
|
source,
|
|
571
600
|
session: sessionTokensFor(limitOf(o, op, tier).limit),
|
|
572
601
|
...o.json ? { json: true } : {},
|
|
573
|
-
...part ? { part } : {}
|
|
602
|
+
...part ? { part } : {},
|
|
603
|
+
...o.models ? { models: o.models } : {},
|
|
604
|
+
exclude,
|
|
605
|
+
conventions
|
|
606
|
+
}, io);
|
|
607
|
+
}
|
|
608
|
+
if (o.rules && !deps.runtime) {
|
|
609
|
+
const { mapRules } = await import("./chunk-TJP2KLZI.js");
|
|
610
|
+
const tier = await tierHere(root, op);
|
|
611
|
+
return mapRules(root, repo, {
|
|
612
|
+
commit,
|
|
613
|
+
source,
|
|
614
|
+
exclude,
|
|
615
|
+
conventions,
|
|
616
|
+
session: sessionTokensFor(limitOf(o, op, tier).limit),
|
|
617
|
+
notes: notesPrompt,
|
|
618
|
+
...o.json ? { json: true } : {},
|
|
619
|
+
...o.models ? { models: o.models } : {}
|
|
574
620
|
}, io);
|
|
575
621
|
}
|
|
576
622
|
if (o.estimate)
|
|
@@ -645,44 +691,131 @@ async function mapCommand(root, repo, o, io, deps = {}) {
|
|
|
645
691
|
if (room < MIN_ROOM)
|
|
646
692
|
return tooSmall(0);
|
|
647
693
|
const frameworks = await frameworksFor(root, repo, existing);
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
694
|
+
if (o.rules) {
|
|
695
|
+
const { topUpOf, recordRulesNow, ruleSetsOfFiles } = await import("./chunk-TJP2KLZI.js");
|
|
696
|
+
const t = await topUpOf(root, repo, {
|
|
697
|
+
commit,
|
|
698
|
+
facts: existing,
|
|
699
|
+
source,
|
|
700
|
+
exclude,
|
|
701
|
+
conventions,
|
|
702
|
+
...o.models ? { models: o.models } : {}
|
|
703
|
+
});
|
|
704
|
+
if ("error" in t) {
|
|
705
|
+
io.err(t.error);
|
|
706
|
+
return 2;
|
|
707
|
+
}
|
|
708
|
+
if (!t.lacking.length) {
|
|
709
|
+
io.out(`${repo} was read under the reading rules there are now: nothing to top up.`);
|
|
710
|
+
return 0;
|
|
711
|
+
}
|
|
712
|
+
if (!t.files.length) {
|
|
713
|
+
await recordRulesNow(root, repo, commit);
|
|
714
|
+
io.out(`No file of ${repo} is one the reading rules added since it was read apply to (${t.lacking.join(", ")}): its read is recorded as under the rules there are now.`);
|
|
715
|
+
return 0;
|
|
716
|
+
}
|
|
717
|
+
const sets = ruleSetsOfFiles(t.files);
|
|
718
|
+
const plan = planBatches(onlyFiles(source, t.files.map((f) => f.path)), { room, exclude, overhead: overheadOf(repo, commit, frameworks), conventions });
|
|
719
|
+
if (plan.leastRoom < MIN_ROOM)
|
|
720
|
+
return tooSmall(room - plan.leastRoom);
|
|
721
|
+
s = {
|
|
722
|
+
schemaVersion: 1,
|
|
723
|
+
repo,
|
|
724
|
+
commit,
|
|
725
|
+
...limit ? { maxTokens: limit } : {},
|
|
726
|
+
room,
|
|
727
|
+
batches: plan.batches,
|
|
728
|
+
next: 0,
|
|
729
|
+
rejected: [],
|
|
730
|
+
problems: [],
|
|
731
|
+
sets,
|
|
732
|
+
// ADR 0169: the reached model classes, listed in the prompts of the batches holding them.
|
|
733
|
+
...t.reach?.reach.rooted && t.reach.reach.reached.length ? {
|
|
734
|
+
reached: t.reach.reach.reached.map((r) => ({
|
|
735
|
+
path: r.path,
|
|
736
|
+
types: r.types,
|
|
737
|
+
from: r.from
|
|
738
|
+
}))
|
|
739
|
+
} : {}
|
|
740
|
+
};
|
|
741
|
+
if (t.reach)
|
|
742
|
+
await recordNotReached(root, repo, {
|
|
743
|
+
commit,
|
|
744
|
+
session: sessionTokensFor(limit),
|
|
745
|
+
models: t.reach.mode,
|
|
746
|
+
...t.reach.notReached ? { notReached: t.reach.notReached } : {}
|
|
747
|
+
});
|
|
748
|
+
await saveState(root, s);
|
|
749
|
+
io.out(`Topping up ${repo} at ${commit.slice(0, 12)} for the reading rules added since it was read (${sets.join(", ")}): ${plural(plan.files, "source file")} in ${batches(plan.batches.length)}; facts go to ${factsFile}.`);
|
|
750
|
+
} else {
|
|
751
|
+
const re = await rereadOf(dir, existing, commit, source, exclude, deps.git, conventions);
|
|
752
|
+
const reread = re.plan && !re.plan.unknown.length ? re.plan : void 0;
|
|
753
|
+
const since = reread?.from.map((x) => x.commit.slice(0, 12)).join(", ");
|
|
754
|
+
if (reread && !reread.files.length && !reread.reread.length) {
|
|
755
|
+
io.out(`Nothing ${repo}'s facts cite changed since ${since}, and no source file did: atticus verify ${repo} carries its ${plural(reread.carried, "fact")} to ${commit.slice(0, 12)}.`);
|
|
756
|
+
return 0;
|
|
757
|
+
}
|
|
758
|
+
const mode = await modelsModeOf(root, repo, o.models);
|
|
759
|
+
const rp = reread ? void 0 : reachPlanOf({
|
|
760
|
+
paths: readPathsOf(source, exclude, conventions),
|
|
761
|
+
source,
|
|
762
|
+
facts: existing,
|
|
763
|
+
mode
|
|
764
|
+
});
|
|
765
|
+
const plan = planBatches(reread ? onlyFiles(source, reread.files.map((f) => f.path)) : source, {
|
|
766
|
+
room,
|
|
767
|
+
exclude,
|
|
768
|
+
overhead: overheadOf(repo, commit, frameworks),
|
|
769
|
+
conventions,
|
|
770
|
+
...rp?.reach.rooted && rp.reach.models ? { reach: { first: rp.first, leaveOut: rp.leaveOut } } : {}
|
|
771
|
+
});
|
|
772
|
+
if (plan.leastRoom < MIN_ROOM)
|
|
773
|
+
return tooSmall(room - plan.leastRoom);
|
|
774
|
+
if (!plan.batches.length && !reread) {
|
|
775
|
+
io.out(`${repo} has no source files to read${plan.excluded.length ? ` (${plural(plan.excluded.length, "file")} excluded)` : ""}.`);
|
|
776
|
+
return 0;
|
|
777
|
+
}
|
|
778
|
+
const byId = new Map(existing.map((f) => [f.id, f]));
|
|
779
|
+
s = {
|
|
780
|
+
schemaVersion: 1,
|
|
781
|
+
repo,
|
|
782
|
+
commit,
|
|
783
|
+
...limit ? { maxTokens: limit } : {},
|
|
784
|
+
room,
|
|
785
|
+
batches: plan.batches,
|
|
786
|
+
next: 0,
|
|
787
|
+
rejected: (reread?.reread ?? []).map((r) => {
|
|
788
|
+
const fact = byId.get(r.id);
|
|
789
|
+
return { id: r.id, code: "cite-changed", message: staleMessage(fact, r, commit), fact };
|
|
790
|
+
}),
|
|
791
|
+
problems: [],
|
|
792
|
+
...rp?.reach.rooted && rp.reach.reached.length ? {
|
|
793
|
+
reached: rp.reach.reached.map((r) => ({
|
|
794
|
+
path: r.path,
|
|
795
|
+
types: r.types,
|
|
796
|
+
from: r.from
|
|
797
|
+
}))
|
|
798
|
+
} : {},
|
|
799
|
+
...reread ? {
|
|
800
|
+
reread: {
|
|
801
|
+
from: reread.from.map((x) => x.commit),
|
|
802
|
+
carried: reread.carried,
|
|
803
|
+
facts: reread.reread.length
|
|
804
|
+
}
|
|
805
|
+
} : {}
|
|
806
|
+
};
|
|
807
|
+
await saveState(root, s);
|
|
808
|
+
if (rp)
|
|
809
|
+
await recordNotReached(root, repo, {
|
|
810
|
+
commit,
|
|
811
|
+
session: sessionTokensFor(limit),
|
|
812
|
+
models: mode,
|
|
813
|
+
...rp.notReached ? { notReached: rp.notReached } : {}
|
|
814
|
+
});
|
|
815
|
+
if (rp?.leaveOut.length)
|
|
816
|
+
io.out(`${rp.leaveOut.length} model ${rp.leaveOut.length === 1 ? "class" : "classes"} no entry or call reaches are left out (ADR 0169; recorded in ${readPlanRelOf(root, repo)}): atticus map ${repo} --models all reads them.`);
|
|
817
|
+
io.out(reread ? `Re-reading ${repo} at ${commit.slice(0, 12)}: ${plural(plan.files, "source file")} changed since ${since}, in ${batches(plan.batches.length)}${plan.batches.length ? ` (about ${plan.tokens} tokens${limit ? `, each prompt within ${limit} tokens` : ""})` : ""}; ${plural(reread.reread.length, "fact")} to rewrite, ${reread.carried} carried as they are; facts go to ${factsFile}.` : `Reading ${repo} at ${commit.slice(0, 12)} in ${batches(plan.batches.length)} (${plural(plan.files, "source file")}, about ${plan.tokens} tokens${limit ? `, each prompt within ${limit} tokens` : ""}); facts go to ${factsFile}.`);
|
|
661
818
|
}
|
|
662
|
-
const byId = new Map(existing.map((f) => [f.id, f]));
|
|
663
|
-
s = {
|
|
664
|
-
schemaVersion: 1,
|
|
665
|
-
repo,
|
|
666
|
-
commit,
|
|
667
|
-
...limit ? { maxTokens: limit } : {},
|
|
668
|
-
room,
|
|
669
|
-
batches: plan.batches,
|
|
670
|
-
next: 0,
|
|
671
|
-
rejected: (reread?.reread ?? []).map((r) => {
|
|
672
|
-
const fact = byId.get(r.id);
|
|
673
|
-
return { id: r.id, code: "cite-changed", message: staleMessage(fact, r, commit), fact };
|
|
674
|
-
}),
|
|
675
|
-
problems: [],
|
|
676
|
-
...reread ? {
|
|
677
|
-
reread: {
|
|
678
|
-
from: reread.from.map((x) => x.commit),
|
|
679
|
-
carried: reread.carried,
|
|
680
|
-
facts: reread.reread.length
|
|
681
|
-
}
|
|
682
|
-
} : {}
|
|
683
|
-
};
|
|
684
|
-
await saveState(root, s);
|
|
685
|
-
io.out(reread ? `Re-reading ${repo} at ${commit.slice(0, 12)}: ${plural(plan.files, "source file")} changed since ${since}, in ${batches(plan.batches.length)}${plan.batches.length ? ` (about ${plan.tokens} tokens${limit ? `, each prompt within ${limit} tokens` : ""})` : ""}; ${plural(reread.reread.length, "fact")} to rewrite, ${reread.carried} carried as they are; facts go to ${factsFile}.` : `Reading ${repo} at ${commit.slice(0, 12)} in ${batches(plan.batches.length)} (${plural(plan.files, "source file")}, about ${plan.tokens} tokens${limit ? `, each prompt within ${limit} tokens` : ""}); facts go to ${factsFile}.`);
|
|
686
819
|
}
|
|
687
820
|
if (!s)
|
|
688
821
|
return 2;
|
|
@@ -774,7 +907,9 @@ async function takeAnswer(root, s, run, batch, source, exclude, now, io, at) {
|
|
|
774
907
|
...estate ? { estate } : {},
|
|
775
908
|
conventions: await conventionsAt(root),
|
|
776
909
|
// ADR 0163: a term's note is one of those the batch was handed.
|
|
777
|
-
notes: (await notesAt(root, s.repo, at.dir)).notes
|
|
910
|
+
notes: (await notesAt(root, s.repo, at.dir)).notes,
|
|
911
|
+
// ADR 0169: the model files the read leaves out, counted apart.
|
|
912
|
+
notReached: (await loadReadPlan(root, s.repo))?.notReached?.files ?? []
|
|
778
913
|
});
|
|
779
914
|
const q = await raiseReadQuestions(root, s.repo, answer.questions, source, {
|
|
780
915
|
command: `atticus map ${s.repo}`,
|
|
@@ -783,7 +918,7 @@ async function takeAnswer(root, s, run, batch, source, exclude, now, io, at) {
|
|
|
783
918
|
});
|
|
784
919
|
const summary = await writeVerifyFiles(root, s.repo, report, s.commit, q.problems, [], reviewedProblemsOf(reviewed.bad, report), answer.slips);
|
|
785
920
|
if (answer.about) {
|
|
786
|
-
const { keepDraftedDescription } = await import("./chunk-
|
|
921
|
+
const { keepDraftedDescription } = await import("./chunk-HMQXIFOL.js");
|
|
787
922
|
const d = await keepDraftedDescription(root, s.repo, answer.about, now());
|
|
788
923
|
if (d.kept)
|
|
789
924
|
io.out(`Your assistant says ${s.repo} is: "${answer.about.text}" \u2014 written to the manifest as a draft, unconfirmed. Confirm it (atticus repo describe ${s.repo} --accept), change it (--description "...") or drop it (--reject).`);
|
|
@@ -816,6 +951,10 @@ async function finish(root, s, io, o) {
|
|
|
816
951
|
s.done = true;
|
|
817
952
|
await saveState(root, s);
|
|
818
953
|
const last = s.last;
|
|
954
|
+
if (last && !last.rejected && !s.reread) {
|
|
955
|
+
const { recordRulesNow } = await import("./chunk-TJP2KLZI.js");
|
|
956
|
+
await recordRulesNow(root, s.repo, s.commit);
|
|
957
|
+
}
|
|
819
958
|
const rel = factsRelOf(root);
|
|
820
959
|
if (o.json) {
|
|
821
960
|
io.out(JSON.stringify({ state: "done", repo: s.repo, batches: s.batches.length, ...last }, null, 2));
|
|
@@ -825,7 +964,7 @@ async function finish(root, s, io, o) {
|
|
|
825
964
|
io.out(`Read ${s.repo}: nothing was kept.`);
|
|
826
965
|
return 0;
|
|
827
966
|
}
|
|
828
|
-
io.out(`Read ${s.repo} in ${batches(s.batches.length)}: ${plural(last.accepted, "fact")} kept in ${rel}/${s.repo}.jsonl, ${last.rejected} still rejected; coverage ${Math.round(last.coverage.ratio * 100)}% (${last.coverage.read} read, ${last.coverage.reviewed ? `${last.coverage.reviewed} reviewed with nothing to record, ` : ""}${last.coverage.unknown.length} unknown).`);
|
|
967
|
+
io.out(`Read ${s.repo} in ${batches(s.batches.length)}: ${plural(last.accepted, "fact")} kept in ${rel}/${s.repo}.jsonl, ${last.rejected} still rejected; coverage ${Math.round(last.coverage.ratio * 100)}% (${last.coverage.read} read, ${last.coverage.reviewed ? `${last.coverage.reviewed} reviewed with nothing to record, ` : ""}${last.coverage.unknown.length} unknown${last.coverage.notReached?.length ? `, ${last.coverage.notReached.length} model files no entry or call reaches` : ""}).`);
|
|
829
968
|
if (last.rejected)
|
|
830
969
|
io.out(`The rejected facts are in ${rel}/${s.repo}.rejected.jsonl; fix them by hand or with your assistant, then atticus verify ${s.repo}.`);
|
|
831
970
|
if (last.coverage.unknown.length)
|
|
@@ -872,13 +1011,6 @@ async function estimate(root, repo, c, io) {
|
|
|
872
1011
|
exclude: c.exclude,
|
|
873
1012
|
conventions
|
|
874
1013
|
});
|
|
875
|
-
const planned = room >= MIN_ROOM ? planBatches(readSource, {
|
|
876
|
-
room,
|
|
877
|
-
exclude: c.exclude,
|
|
878
|
-
conventions,
|
|
879
|
-
overhead: overheadOf(repo, c.commit, await frameworksFor(root, repo, typeof existing === "string" ? [] : existing))
|
|
880
|
-
}) : void 0;
|
|
881
|
-
const plan = planned && planned.leastRoom >= MIN_ROOM ? planned : void 0;
|
|
882
1014
|
const files = whole.batches.flat().map((s) => ({ path: s.path, tokens: s.tokens }));
|
|
883
1015
|
const proposed = reread ? { proposals: [], before: whole.tokens, after: whole.tokens } : proposeExclusions(files, c.source.list(), (p) => c.source.read(p), {
|
|
884
1016
|
// What the person's description plainly says this repo holds (ADR 0128).
|
|
@@ -892,16 +1024,38 @@ async function estimate(root, repo, c, io) {
|
|
|
892
1024
|
const text = c.source.read(f.path);
|
|
893
1025
|
return text === void 0 ? f : { ...f, lines: text.split(/\r?\n/).length };
|
|
894
1026
|
});
|
|
895
|
-
const
|
|
1027
|
+
const mode = await modelsModeOf(root, repo, c.o.models);
|
|
1028
|
+
const facts0 = typeof existing === "string" ? [] : existing;
|
|
1029
|
+
const rp = reread ? void 0 : reachPlanOf({ paths: product.map((f) => f.path), source: c.source, facts: facts0, mode });
|
|
1030
|
+
const leave = new Set(rp?.leaveOut ?? []);
|
|
1031
|
+
const kept = product.filter((f) => !leave.has(f.path));
|
|
1032
|
+
const ordered = rp && rp.reach.rooted && rp.reach.models > 0;
|
|
1033
|
+
const parts = planParts(kept, session, ordered ? {
|
|
1034
|
+
head: reachHeadOf(kept.map((f) => f.path), rp),
|
|
1035
|
+
models: rp.reach.reached.map((r) => r.path),
|
|
1036
|
+
leftOut: rp.leaveOut
|
|
1037
|
+
} : void 0);
|
|
1038
|
+
const planned = room >= MIN_ROOM ? planBatches(readSource, {
|
|
1039
|
+
room,
|
|
1040
|
+
exclude: c.exclude,
|
|
1041
|
+
conventions,
|
|
1042
|
+
overhead: overheadOf(repo, c.commit, await frameworksFor(root, repo, facts0)),
|
|
1043
|
+
...rp && ordered ? { reach: { first: rp.first, leaveOut: rp.leaveOut } } : {}
|
|
1044
|
+
}) : void 0;
|
|
1045
|
+
const plan = planned && planned.leastRoom >= MIN_ROOM ? planned : void 0;
|
|
896
1046
|
const plan0 = await loadReadPlan(root, repo);
|
|
897
1047
|
const same = plan0 !== void 0 && plan0.commit === c.commit && plan0.session === session && plan0.parts.length === parts.length && plan0.parts.every((p, i) => p.paths.length === parts[i].paths.length && p.paths.every((x, j) => x === parts[i].paths[j]));
|
|
898
1048
|
const estimate2 = {
|
|
899
|
-
files:
|
|
900
|
-
tokens:
|
|
1049
|
+
files: kept.length,
|
|
1050
|
+
tokens: kept.reduce((n, f) => n + f.tokens, 0),
|
|
901
1051
|
sessions: parts.length || 1,
|
|
902
1052
|
...reread ? { reread: true } : {}
|
|
903
1053
|
};
|
|
904
1054
|
const sameEstimate = plan0?.estimate !== void 0 && plan0.estimate.files === estimate2.files && plan0.estimate.tokens === estimate2.tokens && plan0.estimate.sessions === estimate2.sessions && plan0.estimate.reread === estimate2.reread;
|
|
1055
|
+
const firstRead = typeof existing !== "string" && existing.length === 0 && !reread;
|
|
1056
|
+
const readRules = firstRead ? rulesNow() : plan0?.rules;
|
|
1057
|
+
const notReached = rp ? rp.notReached : plan0?.notReached;
|
|
1058
|
+
const sameModels = plan0 !== void 0 && (plan0.models ?? "reachable") === mode && JSON.stringify(plan0.notReached ?? null) === JSON.stringify(notReached ?? null);
|
|
905
1059
|
if (!same)
|
|
906
1060
|
await writeReadPlan(root, repo, {
|
|
907
1061
|
commit: c.commit,
|
|
@@ -909,10 +1063,21 @@ async function estimate(root, repo, c, io) {
|
|
|
909
1063
|
parts,
|
|
910
1064
|
estimate: estimate2,
|
|
911
1065
|
// What the reader reported of an earlier plan stays, under the commit it was of.
|
|
912
|
-
...plan0?.reported ? { reported: plan0.reported } : {}
|
|
1066
|
+
...plan0?.reported ? { reported: plan0.reported } : {},
|
|
1067
|
+
...readRules ? { rules: readRules } : {},
|
|
1068
|
+
models: mode,
|
|
1069
|
+
...notReached ? { notReached } : {}
|
|
1070
|
+
});
|
|
1071
|
+
else if (!sameEstimate || !sameModels || firstRead && plan0.rules?.hash !== readRules?.hash) {
|
|
1072
|
+
const { notReached: _n, models: _m, ...rest0 } = plan0;
|
|
1073
|
+
await saveReadPlan(root, {
|
|
1074
|
+
...rest0,
|
|
1075
|
+
estimate: estimate2,
|
|
1076
|
+
...readRules ? { rules: readRules } : {},
|
|
1077
|
+
...mode === "all" ? { models: "all" } : {},
|
|
1078
|
+
...notReached ? { notReached } : {}
|
|
913
1079
|
});
|
|
914
|
-
|
|
915
|
-
await saveReadPlan(root, { ...plan0, estimate: estimate2 });
|
|
1080
|
+
}
|
|
916
1081
|
const progress = parts.length ? await readPlanProgress(root, repo, { commit: c.commit }) : void 0;
|
|
917
1082
|
const questions = (await listQuestions(root, { repo })).questions.filter((q) => q.state !== "retired");
|
|
918
1083
|
const notes = await notesAt(root, repo, c.dir, c.op);
|
|
@@ -937,6 +1102,8 @@ async function estimate(root, repo, c, io) {
|
|
|
937
1102
|
maxTokensGiven: given !== void 0,
|
|
938
1103
|
maxTokensFrom: from ?? "example",
|
|
939
1104
|
batches: plan?.batches.length ?? null,
|
|
1105
|
+
// ADR 0169: what the read plans to read (the model classes it leaves out, out).
|
|
1106
|
+
read: { files: estimate2.files, tokens: estimate2.tokens },
|
|
940
1107
|
order: whole.batches.flat().map((x) => x.path),
|
|
941
1108
|
// ADR 0128: what a person says the repo is, and whether that eased the proposals.
|
|
942
1109
|
about: about ? { text: about.text, trust: about.trust, eased: saysNotProduct(about) } : null,
|
|
@@ -960,6 +1127,13 @@ async function estimate(root, repo, c, io) {
|
|
|
960
1127
|
}
|
|
961
1128
|
} : {}
|
|
962
1129
|
},
|
|
1130
|
+
// ADR 0169: the model classes reached from the entry points and calls, and those left out.
|
|
1131
|
+
models: rp ? {
|
|
1132
|
+
mode,
|
|
1133
|
+
roots: rp.reach.roots,
|
|
1134
|
+
reached: rp.reach.reached,
|
|
1135
|
+
notReached: rp.leaveOut
|
|
1136
|
+
} : null,
|
|
963
1137
|
tier,
|
|
964
1138
|
// A-taught: the frameworks of the organisation it is built on, as taught to Atticus.
|
|
965
1139
|
taughtFrameworks: taughtIn(c.source, c.op).map((m) => m.name),
|
|
@@ -1037,6 +1211,15 @@ repo: ${repo}`);
|
|
|
1037
1211
|
io.out(` part ${p.part} is part-read: nothing in the facts yet for ${p.left.join(", ")}.`);
|
|
1038
1212
|
}
|
|
1039
1213
|
}
|
|
1214
|
+
const line = rp ? modelsLine(repo, rp) : void 0;
|
|
1215
|
+
if (rp && line) {
|
|
1216
|
+
io.out(line);
|
|
1217
|
+
const data = modelsData(repo, rp);
|
|
1218
|
+
if (data) {
|
|
1219
|
+
io.out(MODELS_RULE);
|
|
1220
|
+
io.out(data);
|
|
1221
|
+
}
|
|
1222
|
+
}
|
|
1040
1223
|
io.out(`Your assistant: ${tierWords(tier)}, ${tierSource(tier)}. ${tier.how}`);
|
|
1041
1224
|
io.out(`Another agentic assistant (Claude Code, Cursor, Gemini CLI) reads it the same way: /atticus-map ${repo}; one without file tools gets batches with atticus map ${repo} --handoff --max-tokens <its limit>.`);
|
|
1042
1225
|
if (tier.fallback)
|
|
@@ -15,27 +15,27 @@ import {
|
|
|
15
15
|
glossaryScan,
|
|
16
16
|
testsGenerate,
|
|
17
17
|
traceCommand
|
|
18
|
-
} from "./chunk-
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
18
|
+
} from "./chunk-TIUBGJG3.js";
|
|
19
|
+
import "./chunk-PVMGHQWB.js";
|
|
20
|
+
import "./chunk-TA2ZNDYD.js";
|
|
21
|
+
import "./chunk-SR2M7DWL.js";
|
|
22
|
+
import "./chunk-ISXNWUG7.js";
|
|
23
23
|
import "./chunk-VOGCSYOI.js";
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
28
|
-
import "./chunk-
|
|
29
|
-
import "./chunk-
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
33
|
-
import "./chunk-
|
|
34
|
-
import "./chunk-
|
|
35
|
-
import "./chunk-
|
|
36
|
-
import "./chunk-
|
|
37
|
-
import "./chunk-
|
|
38
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-KPHPVOME.js";
|
|
25
|
+
import "./chunk-G5SKNMPC.js";
|
|
26
|
+
import "./chunk-JQG4VO47.js";
|
|
27
|
+
import "./chunk-DW4BM73R.js";
|
|
28
|
+
import "./chunk-DBZNQAMN.js";
|
|
29
|
+
import "./chunk-QR65C3DV.js";
|
|
30
|
+
import "./chunk-7VAMO66T.js";
|
|
31
|
+
import "./chunk-HY2VVVFZ.js";
|
|
32
|
+
import "./chunk-PJRMMWU4.js";
|
|
33
|
+
import "./chunk-34NWVIBC.js";
|
|
34
|
+
import "./chunk-77UOXZVM.js";
|
|
35
|
+
import "./chunk-RA64IK43.js";
|
|
36
|
+
import "./chunk-MRLCNXXR.js";
|
|
37
|
+
import "./chunk-CQD26SMZ.js";
|
|
38
|
+
import "./chunk-U25OX22K.js";
|
|
39
39
|
import "./chunk-MMB2OHUY.js";
|
|
40
40
|
import "./chunk-TV45EUGM.js";
|
|
41
41
|
export {
|
|
@@ -5,33 +5,33 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
|
|
|
5
5
|
var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
6
6
|
import {
|
|
7
7
|
targetFlowsOf
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
} from "./chunk-CJ5FQHST.js";
|
|
9
|
+
import "./chunk-ML3HOWPI.js";
|
|
10
10
|
import {
|
|
11
11
|
MAX_CHAIN_DEPTH,
|
|
12
12
|
changeImpact,
|
|
13
13
|
loadEstate
|
|
14
|
-
} from "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
14
|
+
} from "./chunk-SR2M7DWL.js";
|
|
15
|
+
import "./chunk-ISXNWUG7.js";
|
|
16
|
+
import "./chunk-KPHPVOME.js";
|
|
17
|
+
import "./chunk-G5SKNMPC.js";
|
|
18
|
+
import "./chunk-JQG4VO47.js";
|
|
19
|
+
import "./chunk-DW4BM73R.js";
|
|
20
|
+
import "./chunk-DBZNQAMN.js";
|
|
21
|
+
import "./chunk-QR65C3DV.js";
|
|
22
|
+
import "./chunk-7VAMO66T.js";
|
|
23
|
+
import "./chunk-HY2VVVFZ.js";
|
|
24
|
+
import "./chunk-PJRMMWU4.js";
|
|
25
|
+
import "./chunk-34NWVIBC.js";
|
|
26
|
+
import "./chunk-77UOXZVM.js";
|
|
27
27
|
import {
|
|
28
28
|
loadRepos
|
|
29
|
-
} from "./chunk-
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
29
|
+
} from "./chunk-RA64IK43.js";
|
|
30
|
+
import "./chunk-MRLCNXXR.js";
|
|
31
|
+
import "./chunk-CQD26SMZ.js";
|
|
32
32
|
import {
|
|
33
33
|
readTeams
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-U25OX22K.js";
|
|
35
35
|
import "./chunk-MMB2OHUY.js";
|
|
36
36
|
import "./chunk-TV45EUGM.js";
|
|
37
37
|
|