@maycombhq/atticus 2.0.0-beta.11 → 2.0.0-beta.12

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.
Files changed (222) hide show
  1. package/dist/bin.js +3 -3
  2. package/dist/{chunk-IILZ7J3L.js → chunk-22GLUHGE.js} +171 -62
  3. package/dist/{chunk-4UZJOQYK.js → chunk-2A24BNRZ.js} +7 -7
  4. package/dist/{chunk-HOUUBE74.js → chunk-2ELFEKOO.js} +4 -4
  5. package/dist/{chunk-R6UTCLH5.js → chunk-2P6IHSRO.js} +16 -16
  6. package/dist/chunk-2Q2YBAR5.js +40 -0
  7. package/dist/{chunk-6E2GJANQ.js → chunk-2VQLFNBO.js} +19 -19
  8. package/dist/{chunk-SILY6ZEZ.js → chunk-3256EDLL.js} +3 -3
  9. package/dist/{chunk-YLAM4HZH.js → chunk-34BCKMBS.js} +3 -3
  10. package/dist/{chunk-GVFUEGGM.js → chunk-34NWVIBC.js} +2 -2
  11. package/dist/{chunk-4ONORLK5.js → chunk-36KD4OGC.js} +13 -13
  12. package/dist/{chunk-B3QOYE74.js → chunk-3CFBU2O6.js} +4 -4
  13. package/dist/{chunk-77RSRG3A.js → chunk-3JLTN3Y7.js} +7 -7
  14. package/dist/{chunk-QWHTTA2X.js → chunk-3M7QBKKG.js} +8 -6
  15. package/dist/{chunk-DQNKG4HY.js → chunk-3RP34PYV.js} +17 -17
  16. package/dist/{chunk-7HQOZALR.js → chunk-3ZKLWM5Y.js} +10 -10
  17. package/dist/{chunk-SUQZGPVG.js → chunk-47HPZ34V.js} +24 -24
  18. package/dist/chunk-4BPROPGG.js +45 -0
  19. package/dist/{chunk-LUPW4WLK.js → chunk-4G56W6H7.js} +8 -8
  20. package/dist/{chunk-JRPQX2EK.js → chunk-4HIQ2FTI.js} +4 -4
  21. package/dist/{chunk-2K2ZEJVR.js → chunk-4HTILEXW.js} +2 -2
  22. package/dist/{chunk-S7ZWCMDO.js → chunk-4Q2PGM5T.js} +8 -9
  23. package/dist/{chunk-XPJR74MA.js → chunk-4RDW2X43.js} +37 -25
  24. package/dist/{chunk-7LCQ7JAM.js → chunk-4VOG5H2K.js} +1 -1
  25. package/dist/chunk-5CSZTVXH.js +34 -0
  26. package/dist/{chunk-KU4T2CXJ.js → chunk-5FFMJMVH.js} +18 -18
  27. package/dist/{chunk-XOVLGBKI.js → chunk-5GGGAI5C.js} +17 -17
  28. package/dist/{chunk-7S3XFWOU.js → chunk-5H46QFSL.js} +4 -4
  29. package/dist/{chunk-XJAJQGXJ.js → chunk-5ION6STH.js} +2 -2
  30. package/dist/{chunk-HZYFLEWO.js → chunk-5M3CLAOV.js} +17 -17
  31. package/dist/{chunk-WUE6HKIU.js → chunk-5OACMWWI.js} +135 -39
  32. package/dist/{chunk-OR5VRULZ.js → chunk-6ENDKY52.js} +10 -10
  33. package/dist/{chunk-6V3DTQWK.js → chunk-6FG7QKJC.js} +21 -21
  34. package/dist/{chunk-SH7AZZDA.js → chunk-6JV3YHRR.js} +17 -17
  35. package/dist/{chunk-GWSWS264.js → chunk-6ROZRBWH.js} +4 -4
  36. package/dist/{chunk-MYKQVS5W.js → chunk-6S27MUQQ.js} +10 -6
  37. package/dist/{chunk-TZXHUDI6.js → chunk-72DY5NCN.js} +2 -2
  38. package/dist/chunk-76QVBNEM.js +37 -0
  39. package/dist/{chunk-XNRPCI23.js → chunk-77UOXZVM.js} +5 -5
  40. package/dist/{chunk-EHUYLNLC.js → chunk-7AXMUE2U.js} +14 -14
  41. package/dist/{chunk-LS3WR2RF.js → chunk-7TEQF64E.js} +122 -59
  42. package/dist/{chunk-EI4KQYJ3.js → chunk-7TH6I6TL.js} +8 -8
  43. package/dist/{chunk-7SZPENUP.js → chunk-7UKETVPW.js} +1 -1
  44. package/dist/{chunk-LDIARP6F.js → chunk-7VNEDDCC.js} +2 -2
  45. package/dist/{chunk-CRQ73DIF.js → chunk-A5GY2EWH.js} +11 -11
  46. package/dist/{chunk-FOQXYMOR.js → chunk-AEZ3EICK.js} +19 -19
  47. package/dist/{chunk-RJDP642F.js → chunk-ARLH2ZMD.js} +1 -1
  48. package/dist/{chunk-26DBAGOP.js → chunk-AYVLEB55.js} +17 -17
  49. package/dist/{chunk-IA2RKC6I.js → chunk-B6X5PJSA.js} +52 -11
  50. package/dist/{chunk-S2FDPN32.js → chunk-BRCDEGNE.js} +1 -1
  51. package/dist/{chunk-JEUXCIRD.js → chunk-BSVTNNUK.js} +5 -5
  52. package/dist/{chunk-Y5AYBGLB.js → chunk-BTOGAUWX.js} +13 -10
  53. package/dist/{chunk-MCWWMMLN.js → chunk-BXP2Q4TD.js} +22 -22
  54. package/dist/{chunk-UFBKJOWB.js → chunk-BZRWJUB4.js} +14 -14
  55. package/dist/{chunk-5ACUW753.js → chunk-CH6LUQLD.js} +1 -1
  56. package/dist/{chunk-7VFVQX5K.js → chunk-CIIRPLI6.js} +4 -4
  57. package/dist/{chunk-SNHOLLGN.js → chunk-CJXM6SG4.js} +84 -25
  58. package/dist/{chunk-BKFGGJKA.js → chunk-CQD26SMZ.js} +3 -1
  59. package/dist/{chunk-4URR24DD.js → chunk-CW5SEPUT.js} +6 -6
  60. package/dist/{chunk-MV4637YA.js → chunk-CWSZP2LU.js} +24 -24
  61. package/dist/{chunk-5BJFMAQU.js → chunk-CXK27ZUY.js} +12 -12
  62. package/dist/{chunk-5NZSJ5ZG.js → chunk-CXY4YDXS.js} +2 -2
  63. package/dist/{chunk-NG5R2WIY.js → chunk-DDZZXVQ5.js} +9 -9
  64. package/dist/{chunk-PQW7PYUR.js → chunk-DGZXJO5I.js} +7 -7
  65. package/dist/{chunk-TCADP67G.js → chunk-DONCF2XC.js} +3 -3
  66. package/dist/{chunk-XF3DATVU.js → chunk-DPNCAFMB.js} +17 -17
  67. package/dist/{chunk-ORZSD2KD.js → chunk-DQKNOHUZ.js} +1 -1
  68. package/dist/{chunk-CAN3EBE5.js → chunk-DW4BM73R.js} +1 -1
  69. package/dist/{chunk-NX6QEEOA.js → chunk-DWN7RSNQ.js} +3 -3
  70. package/dist/{chunk-EV4TEFOD.js → chunk-DWYPYVPJ.js} +13 -13
  71. package/dist/{chunk-5RUMHLIS.js → chunk-E73QLYK7.js} +24 -3
  72. package/dist/{chunk-LZWVK4YY.js → chunk-EE3UNC44.js} +3 -3
  73. package/dist/{chunk-REWZE2XI.js → chunk-EJDZEK22.js} +23 -23
  74. package/dist/{chunk-VYNZED7B.js → chunk-ENZWVTTN.js} +20 -20
  75. package/dist/{chunk-NBGBMRIS.js → chunk-EREL3TQG.js} +1 -1
  76. package/dist/{chunk-NH5QH3WS.js → chunk-ESGIBN3S.js} +1 -1
  77. package/dist/{chunk-EBWIOODZ.js → chunk-EU7VTBAI.js} +4 -4
  78. package/dist/chunk-F5GA6G3U.js +48 -0
  79. package/dist/{chunk-Z2EYRUOH.js → chunk-F6FGIYPT.js} +19 -19
  80. package/dist/{chunk-H4VJO3M2.js → chunk-FAET4BB6.js} +5 -5
  81. package/dist/{chunk-5ICB2BXH.js → chunk-FBFSTYAB.js} +7 -7
  82. package/dist/{chunk-IWZPGIGT.js → chunk-FEBYMFZA.js} +23 -23
  83. package/dist/chunk-FMV6IZ3P.js +54 -0
  84. package/dist/{chunk-TGEOLIAK.js → chunk-FQ6IBYFC.js} +3 -3
  85. package/dist/{chunk-R3VFLYZZ.js → chunk-FSJMFPA3.js} +6 -6
  86. package/dist/{chunk-SIUDWWKS.js → chunk-GFZ5MIQG.js} +23 -23
  87. package/dist/{chunk-6RGIM2ZH.js → chunk-GHSVJNVL.js} +75 -8
  88. package/dist/{chunk-XR5DD5DQ.js → chunk-GKPOCUQR.js} +12 -7
  89. package/dist/{chunk-NR5T46ZY.js → chunk-GLSNVC67.js} +16 -16
  90. package/dist/{chunk-T6ESD5KM.js → chunk-GMDOXWIS.js} +4 -4
  91. package/dist/{chunk-5TY4DTHQ.js → chunk-GN5ZLSLD.js} +3 -3
  92. package/dist/{chunk-MKIULIUQ.js → chunk-GUNBOZ75.js} +3 -3
  93. package/dist/{chunk-ZTNS3L5Z.js → chunk-GYS64N6F.js} +5 -5
  94. package/dist/{chunk-ANCI3LFS.js → chunk-HIQWJ6JZ.js} +4 -4
  95. package/dist/{chunk-4AYZQ3SY.js → chunk-HJ52XDST.js} +4 -4
  96. package/dist/{chunk-EW7MRMD5.js → chunk-HJUEQERG.js} +16 -7
  97. package/dist/{chunk-ZJQUIG3A.js → chunk-HKGQUOQ3.js} +15 -14
  98. package/dist/chunk-HP32HUWR.js +41 -0
  99. package/dist/{chunk-WIMOJMAK.js → chunk-HY2VVVFZ.js} +168 -14
  100. package/dist/{chunk-G3PBLW4K.js → chunk-I2PNEG3M.js} +34 -9
  101. package/dist/{chunk-XKJRPVJO.js → chunk-INCECZ2E.js} +5 -5
  102. package/dist/{chunk-6N2GUZMZ.js → chunk-ISXNWUG7.js} +1 -1
  103. package/dist/{chunk-HGQZTUAC.js → chunk-ITJ7ST5E.js} +4 -4
  104. package/dist/{chunk-SINJKQSI.js → chunk-J3VAFDEX.js} +13 -13
  105. package/dist/{chunk-WFYHOXTB.js → chunk-JGLZUQVN.js} +15 -15
  106. package/dist/{chunk-7RGCQ4VZ.js → chunk-JLIEAQP4.js} +4 -4
  107. package/dist/{chunk-L7I5PKGD.js → chunk-JQG4VO47.js} +1 -1
  108. package/dist/{chunk-GPLFYLGH.js → chunk-JXXQHETS.js} +10 -10
  109. package/dist/{chunk-JUZ75OG4.js → chunk-KNGESBFW.js} +15 -15
  110. package/dist/{chunk-UABFFMWH.js → chunk-KUYA2E7M.js} +7 -7
  111. package/dist/{chunk-YWZDAZMA.js → chunk-KY2ZHTBJ.js} +6 -6
  112. package/dist/{chunk-5P5BGG5L.js → chunk-L4UIKAWD.js} +6 -6
  113. package/dist/{chunk-IRW64JFF.js → chunk-LDUJ6NIT.js} +4 -4
  114. package/dist/{chunk-7A7IG7OA.js → chunk-LTLR4JZJ.js} +10 -10
  115. package/dist/{chunk-UTR67XU2.js → chunk-MFRPLAOH.js} +2 -2
  116. package/dist/{chunk-V4XKYGLK.js → chunk-MH7UBG47.js} +4 -4
  117. package/dist/{chunk-XPWSNKF3.js → chunk-MLAACAES.js} +55 -12
  118. package/dist/{chunk-BQNEHB5U.js → chunk-MNCQ2GL7.js} +11 -11
  119. package/dist/{chunk-Z46OXTBE.js → chunk-MNUZX67F.js} +5 -5
  120. package/dist/{chunk-RWMSJP7H.js → chunk-MQHYCS6A.js} +26 -25
  121. package/dist/{chunk-FMRMTI7W.js → chunk-MRLCNXXR.js} +1 -1
  122. package/dist/{chunk-BA5DTXHQ.js → chunk-NCONDPHH.js} +4 -4
  123. package/dist/{chunk-UNFCFJMF.js → chunk-NHS55U7T.js} +17 -17
  124. package/dist/{chunk-C2YGYTU6.js → chunk-NL6XQZSV.js} +22 -22
  125. package/dist/{chunk-TC3KTG33.js → chunk-NSJ6ZR2A.js} +3 -3
  126. package/dist/{chunk-3DDJLI7N.js → chunk-NTNJNRHW.js} +4 -4
  127. package/dist/{chunk-GG6HIU74.js → chunk-NTTXTLCQ.js} +24 -24
  128. package/dist/{chunk-55TBYJF2.js → chunk-NWL7XEQ4.js} +17 -16
  129. package/dist/{chunk-U6YKL7SI.js → chunk-NWXY3B4R.js} +22 -22
  130. package/dist/{chunk-4YWRU7JK.js → chunk-O5W4ECUY.js} +15 -15
  131. package/dist/{chunk-IVHN2VYG.js → chunk-OJAJXU65.js} +3 -1
  132. package/dist/{chunk-EZSZFI54.js → chunk-OMH3I5BH.js} +2 -2
  133. package/dist/{chunk-RIEFYHXI.js → chunk-P6UJ22XR.js} +4 -4
  134. package/dist/{chunk-LVBPY2M6.js → chunk-P76AW3PA.js} +298 -14
  135. package/dist/{chunk-23VFQHFQ.js → chunk-PCCPXWJC.js} +31 -21
  136. package/dist/{chunk-DS3ZEJVN.js → chunk-PGFRXGHA.js} +2 -2
  137. package/dist/{chunk-5V5BJACL.js → chunk-PJRMMWU4.js} +2 -2
  138. package/dist/{chunk-BX52REMA.js → chunk-PKJ3K3GM.js} +5 -5
  139. package/dist/{chunk-KLKENMWQ.js → chunk-PVW2N63M.js} +58 -43
  140. package/dist/{chunk-OFWYZH6B.js → chunk-Q55UP5EZ.js} +21 -21
  141. package/dist/{chunk-C5JFMAXX.js → chunk-QAFMLBPF.js} +11 -11
  142. package/dist/{chunk-CZI2ACNT.js → chunk-QEZSA2O7.js} +16 -16
  143. package/dist/{chunk-27EDZN52.js → chunk-QJ3OX7OC.js} +31 -31
  144. package/dist/{chunk-GMJXC5AL.js → chunk-QL4VNY4U.js} +1 -1
  145. package/dist/{chunk-TEBBD4XH.js → chunk-QR65C3DV.js} +4 -4
  146. package/dist/{chunk-SG5KY4VB.js → chunk-QXGOEP44.js} +3 -3
  147. package/dist/chunk-QY7RGTUP.js +326 -0
  148. package/dist/{chunk-XZJE6WIT.js → chunk-RA64IK43.js} +1 -1
  149. package/dist/{chunk-7HWXYP4H.js → chunk-RLJDYLID.js} +11 -11
  150. package/dist/{chunk-NELU7LSL.js → chunk-RMLUZYEA.js} +10 -10
  151. package/dist/chunk-RSVBX6A3.js +54 -0
  152. package/dist/{chunk-D7MWYJZF.js → chunk-RZWZO2JQ.js} +16 -17
  153. package/dist/{chunk-KQRYW7OS.js → chunk-SAC6FNKR.js} +108 -108
  154. package/dist/{chunk-HR4DVO6X.js → chunk-SCBU46AJ.js} +3 -3
  155. package/dist/{chunk-Q32Y5T2U.js → chunk-SGNHNN3G.js} +11 -11
  156. package/dist/{chunk-WKXOEIOY.js → chunk-SHAAGH3T.js} +14 -14
  157. package/dist/{chunk-ATNG5VOZ.js → chunk-SK5OYWIY.js} +2 -2
  158. package/dist/{chunk-CE4S5ZY3.js → chunk-SNSFQ47W.js} +11 -11
  159. package/dist/{chunk-WCLAOKCH.js → chunk-SSL6JMPA.js} +8 -8
  160. package/dist/{chunk-SKMHS4CL.js → chunk-TA2ZNDYD.js} +1 -1
  161. package/dist/{chunk-YVCOQ5TZ.js → chunk-TEHH47TG.js} +3 -3
  162. package/dist/{chunk-EATSD7YD.js → chunk-TEZSZ24W.js} +4 -4
  163. package/dist/{chunk-RB2VSED2.js → chunk-TH526O6E.js} +11 -11
  164. package/dist/{chunk-WUP77GG2.js → chunk-TIAPEYWI.js} +3 -3
  165. package/dist/{chunk-C75W7VXX.js → chunk-TLCRIAU3.js} +20 -18
  166. package/dist/chunk-TV4CGNEY.js +43 -0
  167. package/dist/{chunk-IY4PHPHT.js → chunk-TVSNWIAM.js} +7 -5
  168. package/dist/{chunk-7RUMD56V.js → chunk-TWHZU36X.js} +1 -1
  169. package/dist/{chunk-JBSD57N7.js → chunk-TXV2AYZB.js} +23 -23
  170. package/dist/{chunk-JMOLB347.js → chunk-U25OX22K.js} +64 -8
  171. package/dist/{chunk-JQX6BSE4.js → chunk-U4NNG3ES.js} +10 -10
  172. package/dist/{chunk-3LU6YCSQ.js → chunk-U5T4A2QV.js} +5 -5
  173. package/dist/{chunk-G7WZH54P.js → chunk-UT5OA7KA.js} +20 -10
  174. package/dist/{chunk-MKC7P5LD.js → chunk-V3VCUSQ6.js} +14 -14
  175. package/dist/{chunk-MYOW3RPC.js → chunk-V5XV3JSP.js} +6 -6
  176. package/dist/{chunk-YWOMGMZB.js → chunk-VF4VOPMB.js} +22 -22
  177. package/dist/{chunk-DYWTQXP4.js → chunk-VLDM4QZM.js} +22 -22
  178. package/dist/chunk-VP5H6DII.js +34 -0
  179. package/dist/{chunk-OHXTB6CO.js → chunk-VRYQJZFL.js} +7 -8
  180. package/dist/{chunk-EQOSXLK3.js → chunk-VS6FS472.js} +14 -14
  181. package/dist/{chunk-U5PDQTLA.js → chunk-VTMIRRIZ.js} +2 -2
  182. package/dist/{chunk-MSL3CLHX.js → chunk-VXSJKWB7.js} +16 -16
  183. package/dist/{chunk-MQNBEO3N.js → chunk-WE5VMPUP.js} +106 -102
  184. package/dist/{chunk-J27QGXO4.js → chunk-WEG7DY5K.js} +9 -9
  185. package/dist/{chunk-OXVVRJDQ.js → chunk-WIF7A6JU.js} +11 -11
  186. package/dist/{chunk-KXZR2BLL.js → chunk-WM4N2L4T.js} +1 -1
  187. package/dist/{chunk-NIYB5K5B.js → chunk-X64BFQ3R.js} +9 -9
  188. package/dist/{chunk-WGU6NIUV.js → chunk-XJRC3ZDI.js} +12 -12
  189. package/dist/{chunk-EAQFRD2B.js → chunk-XVIVWG7B.js} +6 -6
  190. package/dist/{chunk-3WU7LVTL.js → chunk-Y3ZKT6IF.js} +5 -5
  191. package/dist/{chunk-7KXYMC2P.js → chunk-YURIUFKF.js} +15 -15
  192. package/dist/{chunk-R3RVFCJ2.js → chunk-YY2WGL6S.js} +2 -2
  193. package/dist/{chunk-HQMCHHY5.js → chunk-Z2BA4NNR.js} +2 -2
  194. package/dist/{chunk-JUQHYTXN.js → chunk-Z47YGBUY.js} +18 -17
  195. package/dist/chunk-Z4JSRKNR.js +41 -0
  196. package/dist/{chunk-DGKNOPSE.js → chunk-Z53ZB34U.js} +7 -7
  197. package/dist/{chunk-LEHZTKB3.js → chunk-ZBOPIYOY.js} +11 -11
  198. package/dist/{chunk-KIWEBM6G.js → chunk-ZBQCLKTH.js} +11 -11
  199. package/dist/chunk-ZGI7DNJ6.js +38 -0
  200. package/dist/{chunk-BUWSOQLU.js → chunk-ZPT4QX3J.js} +4 -4
  201. package/dist/{chunk-52WCHTVZ.js → chunk-ZS47PQ3O.js} +3 -3
  202. package/dist/{chunk-7J7UY46S.js → chunk-ZTIMXVV5.js} +2 -2
  203. package/dist/{chunk-ZKUDS7JG.js → chunk-ZYASEL7K.js} +4 -4
  204. package/dist/files.json +443 -439
  205. package/dist/packages/sdk/npm/index.js +9 -0
  206. package/dist/packages/ui/dist/assets/{elk-api-DDup23Us.js → elk-api-D2NcYpUJ.js} +2 -2
  207. package/dist/packages/ui/dist/assets/index-CT7skl01.js +29 -0
  208. package/dist/packages/ui/dist/index.html +1 -1
  209. package/package.json +3 -3
  210. package/dist/chunk-4Y4FY34K.js +0 -34
  211. package/dist/chunk-ACWQDL6T.js +0 -37
  212. package/dist/chunk-ASKDCMW5.js +0 -275
  213. package/dist/chunk-B3UHYXHU.js +0 -41
  214. package/dist/chunk-DDAEAZEV.js +0 -54
  215. package/dist/chunk-E25G46RW.js +0 -54
  216. package/dist/chunk-KQK6SQPE.js +0 -48
  217. package/dist/chunk-NCR24CPV.js +0 -41
  218. package/dist/chunk-NDW4ROST.js +0 -38
  219. package/dist/chunk-OJN7WME4.js +0 -34
  220. package/dist/chunk-UFTQIK2J.js +0 -43
  221. package/dist/chunk-ZHWSL6SR.js +0 -45
  222. package/dist/packages/ui/dist/assets/index-mTOWhQZm.js +0 -29
@@ -6,17 +6,17 @@ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  forgetCatalogs,
8
8
  readCatalog
9
- } from "./chunk-IILZ7J3L.js";
10
- import "./chunk-TEBBD4XH.js";
11
- import "./chunk-XPWSNKF3.js";
12
- import "./chunk-WIMOJMAK.js";
13
- import "./chunk-5V5BJACL.js";
14
- import "./chunk-GVFUEGGM.js";
9
+ } from "./chunk-22GLUHGE.js";
10
+ import "./chunk-QR65C3DV.js";
11
+ import "./chunk-MLAACAES.js";
12
+ import "./chunk-HY2VVVFZ.js";
13
+ import "./chunk-PJRMMWU4.js";
14
+ import "./chunk-34NWVIBC.js";
15
15
  import {
16
16
  loadRepos
17
- } from "./chunk-XZJE6WIT.js";
18
- import "./chunk-FMRMTI7W.js";
19
- import "./chunk-BKFGGJKA.js";
17
+ } from "./chunk-RA64IK43.js";
18
+ import "./chunk-MRLCNXXR.js";
19
+ import "./chunk-CQD26SMZ.js";
20
20
  import {
21
21
  FACTS_COMPANIONS,
22
22
  ManifestEditError,
@@ -34,7 +34,7 @@ import {
34
34
  serializeRecord,
35
35
  specRelOf,
36
36
  writeQuestion
37
- } from "./chunk-JMOLB347.js";
37
+ } from "./chunk-U25OX22K.js";
38
38
  import {
39
39
  LockHeldError,
40
40
  acquireLock,
@@ -5,7 +5,7 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  upgradeCommand
8
- } from "./chunk-LUPW4WLK.js";
8
+ } from "./chunk-4G56W6H7.js";
9
9
  import {
10
10
  AdoptError,
11
11
  absorb,
@@ -18,33 +18,33 @@ import {
18
18
  reposDiscover,
19
19
  unadopt,
20
20
  zeroInstallFiles
21
- } from "./chunk-NG5R2WIY.js";
21
+ } from "./chunk-DDZZXVQ5.js";
22
22
  import {
23
23
  assistantTier,
24
24
  readProbes,
25
25
  tierLine
26
- } from "./chunk-6RGIM2ZH.js";
27
- import "./chunk-EV4TEFOD.js";
28
- import "./chunk-6N2GUZMZ.js";
29
- import "./chunk-T6ESD5KM.js";
30
- import "./chunk-3LU6YCSQ.js";
31
- import "./chunk-L7I5PKGD.js";
32
- import "./chunk-CAN3EBE5.js";
33
- import "./chunk-IILZ7J3L.js";
34
- import "./chunk-TEBBD4XH.js";
35
- import "./chunk-XPWSNKF3.js";
36
- import "./chunk-WIMOJMAK.js";
37
- import "./chunk-5V5BJACL.js";
38
- import "./chunk-GVFUEGGM.js";
39
- import "./chunk-XNRPCI23.js";
40
- import "./chunk-7RUMD56V.js";
41
- import "./chunk-XZJE6WIT.js";
42
- import "./chunk-FMRMTI7W.js";
43
- import "./chunk-BKFGGJKA.js";
26
+ } from "./chunk-GHSVJNVL.js";
27
+ import "./chunk-DWYPYVPJ.js";
28
+ import "./chunk-ISXNWUG7.js";
29
+ import "./chunk-GMDOXWIS.js";
30
+ import "./chunk-U5T4A2QV.js";
31
+ import "./chunk-JQG4VO47.js";
32
+ import "./chunk-DW4BM73R.js";
33
+ import "./chunk-22GLUHGE.js";
34
+ import "./chunk-QR65C3DV.js";
35
+ import "./chunk-MLAACAES.js";
36
+ import "./chunk-HY2VVVFZ.js";
37
+ import "./chunk-PJRMMWU4.js";
38
+ import "./chunk-34NWVIBC.js";
39
+ import "./chunk-77UOXZVM.js";
40
+ import "./chunk-TWHZU36X.js";
41
+ import "./chunk-RA64IK43.js";
42
+ import "./chunk-MRLCNXXR.js";
43
+ import "./chunk-CQD26SMZ.js";
44
44
  import {
45
45
  loadOrgPack,
46
46
  orgPackDirOf
47
- } from "./chunk-JMOLB347.js";
47
+ } from "./chunk-U25OX22K.js";
48
48
  import "./chunk-MMB2OHUY.js";
49
49
  import "./chunk-TV45EUGM.js";
50
50
 
@@ -7,25 +7,25 @@ import {
7
7
  PlannerError,
8
8
  draftedStories,
9
9
  workItemsOf
10
- } from "./chunk-EV4TEFOD.js";
11
- import "./chunk-6N2GUZMZ.js";
12
- import "./chunk-T6ESD5KM.js";
13
- import "./chunk-3LU6YCSQ.js";
14
- import "./chunk-L7I5PKGD.js";
10
+ } from "./chunk-DWYPYVPJ.js";
11
+ import "./chunk-ISXNWUG7.js";
12
+ import "./chunk-GMDOXWIS.js";
13
+ import "./chunk-U5T4A2QV.js";
14
+ import "./chunk-JQG4VO47.js";
15
15
  import {
16
16
  workItemsCsv
17
- } from "./chunk-CAN3EBE5.js";
18
- import "./chunk-IILZ7J3L.js";
19
- import "./chunk-TEBBD4XH.js";
20
- import "./chunk-XPWSNKF3.js";
21
- import "./chunk-WIMOJMAK.js";
22
- import "./chunk-5V5BJACL.js";
23
- import "./chunk-GVFUEGGM.js";
24
- import "./chunk-XNRPCI23.js";
25
- import "./chunk-XZJE6WIT.js";
26
- import "./chunk-FMRMTI7W.js";
27
- import "./chunk-BKFGGJKA.js";
28
- import "./chunk-JMOLB347.js";
17
+ } from "./chunk-DW4BM73R.js";
18
+ import "./chunk-22GLUHGE.js";
19
+ import "./chunk-QR65C3DV.js";
20
+ import "./chunk-MLAACAES.js";
21
+ import "./chunk-HY2VVVFZ.js";
22
+ import "./chunk-PJRMMWU4.js";
23
+ import "./chunk-34NWVIBC.js";
24
+ import "./chunk-77UOXZVM.js";
25
+ import "./chunk-RA64IK43.js";
26
+ import "./chunk-MRLCNXXR.js";
27
+ import "./chunk-CQD26SMZ.js";
28
+ import "./chunk-U25OX22K.js";
29
29
  import "./chunk-MMB2OHUY.js";
30
30
  import "./chunk-TV45EUGM.js";
31
31
 
@@ -5,17 +5,17 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  metarepoToolBox
8
- } from "./chunk-YVCOQ5TZ.js";
8
+ } from "./chunk-TEHH47TG.js";
9
9
  import {
10
10
  CONTEXT_TOOLS
11
- } from "./chunk-XNRPCI23.js";
11
+ } from "./chunk-77UOXZVM.js";
12
12
  import {
13
13
  TOOL_LIMITS,
14
14
  ToolSession,
15
15
  readToolCalls,
16
16
  recordToolCalls
17
- } from "./chunk-BKFGGJKA.js";
18
- import "./chunk-JMOLB347.js";
17
+ } from "./chunk-CQD26SMZ.js";
18
+ import "./chunk-U25OX22K.js";
19
19
  import "./chunk-MMB2OHUY.js";
20
20
  import "./chunk-TV45EUGM.js";
21
21
 
@@ -8,24 +8,24 @@ import {
8
8
  } from "./chunk-VOGCSYOI.js";
9
9
  import {
10
10
  readCatalog
11
- } from "./chunk-IILZ7J3L.js";
11
+ } from "./chunk-22GLUHGE.js";
12
12
  import {
13
13
  TriageError,
14
14
  buildTriage,
15
15
  classify,
16
16
  scanInputs
17
- } from "./chunk-WIMOJMAK.js";
17
+ } from "./chunk-HY2VVVFZ.js";
18
18
  import {
19
19
  readDrawio,
20
20
  reconcile
21
- } from "./chunk-5V5BJACL.js";
21
+ } from "./chunk-PJRMMWU4.js";
22
22
  import {
23
23
  inputsDirOf,
24
24
  loadOrgPack,
25
25
  orgPackDirOf,
26
26
  recordPath,
27
27
  serializeRecord
28
- } from "./chunk-JMOLB347.js";
28
+ } from "./chunk-U25OX22K.js";
29
29
 
30
30
  // packages/cli/dist/intake-commands.js
31
31
  import { createHash } from "node:crypto";
@@ -152,7 +152,8 @@ var STATUS_WORDS = [
152
152
  ["unresolved", (n) => `${n} waiting for a system name`],
153
153
  ["duplicate", (n) => `${n} duplicate${n === 1 ? "" : "s"}`],
154
154
  ["superseded", (n) => `${n} older version${n === 1 ? "" : "s"}`],
155
- ["failed", (n) => `${n} failed`]
155
+ ["failed", (n) => `${n} failed`],
156
+ ["unreadable", (n) => `${n} unreadable`]
156
157
  ];
157
158
  function chains(docs) {
158
159
  const byId = new Map(docs.filter((d) => d.id).map((d) => [d.id, d]));
@@ -186,7 +187,7 @@ async function intakeList(root, io, o) {
186
187
  for (const l of table(["PATH", "TYPE", "STATUS", "SYSTEMS"], documents.map((d) => [
187
188
  d.path,
188
189
  d.classification,
189
- d.duplicateOf ? `duplicate of ${d.duplicateOf}` : d.status,
190
+ d.duplicateOf ? `duplicate of ${d.duplicateOf}` : d.status === "unreadable" && d.reason ? `unreadable: ${d.reason}` : d.status,
190
191
  d.systems.join(", ")
191
192
  ])))
192
193
  io.out(l);
@@ -201,6 +202,9 @@ async function intakeList(root, io, o) {
201
202
  return n > 0 ? words(n) : "";
202
203
  }).filter(Boolean);
203
204
  io.out(`${documents.length} file${documents.length === 1 ? "" : "s"}: ${counts.join(", ")}.`);
205
+ for (const d of documents)
206
+ for (const n of d.notes ?? [])
207
+ io.out(` ~ ${d.path}: ${n}`);
204
208
  for (const p of problems)
205
209
  io.out(` ! ${p.path}: ${p.message}`);
206
210
  return problems.length > 0 ? 1 : 0;
@@ -8,7 +8,7 @@ import {
8
8
  executorsCheck,
9
9
  inputsSha256,
10
10
  runStep
11
- } from "./chunk-7J7UY46S.js";
11
+ } from "./chunk-ZTIMXVV5.js";
12
12
  import {
13
13
  table
14
14
  } from "./chunk-VOGCSYOI.js";
@@ -17,7 +17,7 @@ import {
17
17
  exportStep,
18
18
  fileStepStore,
19
19
  recordStep
20
- } from "./chunk-CAN3EBE5.js";
20
+ } from "./chunk-DW4BM73R.js";
21
21
 
22
22
  // packages/cli/dist/todo-commands.js
23
23
  var iso = (d) => d.toISOString().replace(/\.\d{3}Z$/, "Z");
@@ -0,0 +1,37 @@
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
+ changeMapBody,
8
+ changeMapCommand,
9
+ changeMapOf,
10
+ targetFlowsOf
11
+ } from "./chunk-BSVTNNUK.js";
12
+ import "./chunk-ZPT4QX3J.js";
13
+ import "./chunk-DWYPYVPJ.js";
14
+ import "./chunk-ISXNWUG7.js";
15
+ import "./chunk-GMDOXWIS.js";
16
+ import "./chunk-U5T4A2QV.js";
17
+ import "./chunk-JQG4VO47.js";
18
+ import "./chunk-DW4BM73R.js";
19
+ import "./chunk-22GLUHGE.js";
20
+ import "./chunk-QR65C3DV.js";
21
+ import "./chunk-MLAACAES.js";
22
+ import "./chunk-HY2VVVFZ.js";
23
+ import "./chunk-PJRMMWU4.js";
24
+ import "./chunk-34NWVIBC.js";
25
+ import "./chunk-77UOXZVM.js";
26
+ import "./chunk-RA64IK43.js";
27
+ import "./chunk-MRLCNXXR.js";
28
+ import "./chunk-CQD26SMZ.js";
29
+ import "./chunk-U25OX22K.js";
30
+ import "./chunk-MMB2OHUY.js";
31
+ import "./chunk-TV45EUGM.js";
32
+ export {
33
+ changeMapBody,
34
+ changeMapCommand,
35
+ changeMapOf,
36
+ targetFlowsOf
37
+ };
@@ -6,7 +6,7 @@ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  dotInt8,
8
8
  textSha
9
- } from "./chunk-BKFGGJKA.js";
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-JMOLB347.js";
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-7VFVQX5K.js"),
1008
- import("./chunk-QWHTTA2X.js")
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-EZSZFI54.js")) {
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")
@@ -5,14 +5,14 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  intakeContext
8
- } from "./chunk-MYKQVS5W.js";
8
+ } from "./chunk-6S27MUQQ.js";
9
9
  import "./chunk-VOGCSYOI.js";
10
10
  import {
11
11
  changeFolder,
12
12
  changeStore
13
- } from "./chunk-3LU6YCSQ.js";
14
- import "./chunk-L7I5PKGD.js";
15
- import "./chunk-CAN3EBE5.js";
13
+ } from "./chunk-U5T4A2QV.js";
14
+ import "./chunk-JQG4VO47.js";
15
+ import "./chunk-DW4BM73R.js";
16
16
  import {
17
17
  estateFacts,
18
18
  estateRepos,
@@ -20,19 +20,19 @@ import {
20
20
  joinReposOf,
21
21
  outsideProfileSystems,
22
22
  outsideSystems
23
- } from "./chunk-IILZ7J3L.js";
24
- import "./chunk-TEBBD4XH.js";
25
- import "./chunk-XPWSNKF3.js";
23
+ } from "./chunk-22GLUHGE.js";
24
+ import "./chunk-QR65C3DV.js";
25
+ import "./chunk-MLAACAES.js";
26
26
  import {
27
27
  attachToChange,
28
28
  readChangeInputs,
29
29
  readVendorSpec
30
- } from "./chunk-WIMOJMAK.js";
31
- import "./chunk-5V5BJACL.js";
32
- import "./chunk-GVFUEGGM.js";
33
- import "./chunk-XZJE6WIT.js";
34
- import "./chunk-FMRMTI7W.js";
35
- import "./chunk-BKFGGJKA.js";
30
+ } from "./chunk-HY2VVVFZ.js";
31
+ import "./chunk-PJRMMWU4.js";
32
+ import "./chunk-34NWVIBC.js";
33
+ import "./chunk-RA64IK43.js";
34
+ import "./chunk-MRLCNXXR.js";
35
+ import "./chunk-CQD26SMZ.js";
36
36
  import {
37
37
  PROTOTYPE_GROUPS,
38
38
  comparePrototype,
@@ -42,7 +42,7 @@ import {
42
42
  joinConventions,
43
43
  parseFacts,
44
44
  prototypeArchitectureSection
45
- } from "./chunk-JMOLB347.js";
45
+ } from "./chunk-U25OX22K.js";
46
46
  import "./chunk-MMB2OHUY.js";
47
47
  import "./chunk-TV45EUGM.js";
48
48
 
@@ -5,19 +5,11 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  notesAt
8
- } from "./chunk-52WCHTVZ.js";
8
+ } from "./chunk-ZS47PQ3O.js";
9
9
  import {
10
10
  houseUntaughtLines,
11
11
  houseUntaughtOf
12
- } from "./chunk-B3QOYE74.js";
13
- import {
14
- loadReadPlan,
15
- partOfWords,
16
- readPlanProgress,
17
- readPlanRelOf,
18
- saveReadPlan,
19
- writeReadPlan
20
- } from "./chunk-LVBPY2M6.js";
12
+ } from "./chunk-3CFBU2O6.js";
21
13
  import {
22
14
  carryOf,
23
15
  checkoutOf,
@@ -25,22 +17,29 @@ import {
25
17
  estateComponentsOf,
26
18
  excludesOf,
27
19
  headOf,
20
+ loadReadPlan,
21
+ partOfWords,
28
22
  raiseReadQuestions,
29
23
  readCorrections,
24
+ readPlanProgress,
25
+ readPlanRelOf,
30
26
  readReviewed,
31
27
  reviewedProblemsOf,
28
+ saveReadPlan,
32
29
  slipNoteLines,
30
+ writeReadPlan,
33
31
  writeVerifyFiles
34
- } from "./chunk-ASKDCMW5.js";
32
+ } from "./chunk-P76AW3PA.js";
35
33
  import {
36
34
  ABOUT_RULE,
37
35
  assistantTier,
38
36
  mapBatchInstructions,
39
37
  readProbes,
38
+ rulesNow,
40
39
  taughtFrameworksText,
41
40
  tierSource,
42
41
  tierWords
43
- } from "./chunk-6RGIM2ZH.js";
42
+ } from "./chunk-GHSVJNVL.js";
44
43
  import {
45
44
  FILE_KINDS,
46
45
  SHOWN_PROPOSALS,
@@ -62,10 +61,10 @@ import {
62
61
  sliceText,
63
62
  staleMessage,
64
63
  verifyFacts
65
- } from "./chunk-XPWSNKF3.js";
64
+ } from "./chunk-MLAACAES.js";
66
65
  import {
67
66
  loadRepos
68
- } from "./chunk-XZJE6WIT.js";
67
+ } from "./chunk-RA64IK43.js";
69
68
  import {
70
69
  DATA_RULE,
71
70
  HandoffRuntime,
@@ -75,7 +74,7 @@ import {
75
74
  estimateTokens,
76
75
  promptBudget,
77
76
  wrapData
78
- } from "./chunk-BKFGGJKA.js";
77
+ } from "./chunk-CQD26SMZ.js";
79
78
  import {
80
79
  AgentDefinition,
81
80
  Fact,
@@ -95,7 +94,7 @@ import {
95
94
  runsDirOf,
96
95
  saysNotProduct,
97
96
  stackHelpersOff
98
- } from "./chunk-JMOLB347.js";
97
+ } from "./chunk-U25OX22K.js";
99
98
  import {
100
99
  writeFileAtomic
101
100
  } from "./chunk-MMB2OHUY.js";
@@ -419,7 +418,9 @@ async function packFor(root, s, batch, source, op, now, notes) {
419
418
  // build files are read first, so from the second batch on this is what the code says.
420
419
  frameworks: await frameworksFor(root, s.repo, facts),
421
420
  // Nothing says what this repo is: ask for one line, cited, for a person to confirm.
422
- ...about ? {} : { askAbout: true },
421
+ ...about || s.sets ? {} : { askAbout: true },
422
+ // ADR 0167: a top-up carries only the rule sets the read lacked.
423
+ ...s.sets ? { sets: s.sets } : {},
423
424
  // A-taught: how to read the wrapper calls and annotations of the frameworks it is built on.
424
425
  ...taughtOption(taughtIn(source, op)),
425
426
  // ADR 0163: what the organisation's terms mean here and what must hold, as data.
@@ -551,7 +552,7 @@ async function mapCommand(root, repo, o, io, deps = {}) {
551
552
  const repoNotes = await notesAt(root, repo, dir, op);
552
553
  const notesPrompt = notesText(repoNotes.notes, repoNotes.type);
553
554
  if (o.gaps) {
554
- const { mapGaps } = await import("./chunk-S7ZWCMDO.js");
555
+ const { mapGaps } = await import("./chunk-4Q2PGM5T.js");
555
556
  const tier = await tierHere(root, op);
556
557
  let part;
557
558
  if (o.part !== void 0) {
@@ -573,6 +574,19 @@ async function mapCommand(root, repo, o, io, deps = {}) {
573
574
  ...part ? { part } : {}
574
575
  }, io);
575
576
  }
577
+ if (o.rules && !deps.runtime) {
578
+ const { mapRules } = await import("./chunk-2Q2YBAR5.js");
579
+ const tier = await tierHere(root, op);
580
+ return mapRules(root, repo, {
581
+ commit,
582
+ source,
583
+ exclude,
584
+ conventions,
585
+ session: sessionTokensFor(limitOf(o, op, tier).limit),
586
+ notes: notesPrompt,
587
+ ...o.json ? { json: true } : {}
588
+ }, io);
589
+ }
576
590
  if (o.estimate)
577
591
  return estimate(root, repo, { o, op, dir, commit, source, exclude, factsFile, ...deps.git ? { git: deps.git } : {} }, io);
578
592
  const runtime = deps.runtime;
@@ -645,44 +659,86 @@ async function mapCommand(root, repo, o, io, deps = {}) {
645
659
  if (room < MIN_ROOM)
646
660
  return tooSmall(0);
647
661
  const frameworks = await frameworksFor(root, repo, existing);
648
- const re = await rereadOf(dir, existing, commit, source, exclude, deps.git, conventions);
649
- const reread = re.plan && !re.plan.unknown.length ? re.plan : void 0;
650
- const since = reread?.from.map((x) => x.commit.slice(0, 12)).join(", ");
651
- if (reread && !reread.files.length && !reread.reread.length) {
652
- 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)}.`);
653
- return 0;
654
- }
655
- const plan = planBatches(reread ? onlyFiles(source, reread.files.map((f) => f.path)) : source, { room, exclude, overhead: overheadOf(repo, commit, frameworks), conventions });
656
- if (plan.leastRoom < MIN_ROOM)
657
- return tooSmall(room - plan.leastRoom);
658
- if (!plan.batches.length && !reread) {
659
- io.out(`${repo} has no source files to read${plan.excluded.length ? ` (${plural(plan.excluded.length, "file")} excluded)` : ""}.`);
660
- return 0;
662
+ if (o.rules) {
663
+ const { topUpOf, recordRulesNow, ruleSetsOfFiles } = await import("./chunk-2Q2YBAR5.js");
664
+ const t = await topUpOf(root, repo, {
665
+ commit,
666
+ facts: existing,
667
+ source,
668
+ exclude,
669
+ conventions
670
+ });
671
+ if ("error" in t) {
672
+ io.err(t.error);
673
+ return 2;
674
+ }
675
+ if (!t.lacking.length) {
676
+ io.out(`${repo} was read under the reading rules there are now: nothing to top up.`);
677
+ return 0;
678
+ }
679
+ if (!t.files.length) {
680
+ await recordRulesNow(root, repo, commit);
681
+ 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.`);
682
+ return 0;
683
+ }
684
+ const sets = ruleSetsOfFiles(t.files);
685
+ const plan = planBatches(onlyFiles(source, t.files.map((f) => f.path)), { room, exclude, overhead: overheadOf(repo, commit, frameworks), conventions });
686
+ if (plan.leastRoom < MIN_ROOM)
687
+ return tooSmall(room - plan.leastRoom);
688
+ s = {
689
+ schemaVersion: 1,
690
+ repo,
691
+ commit,
692
+ ...limit ? { maxTokens: limit } : {},
693
+ room,
694
+ batches: plan.batches,
695
+ next: 0,
696
+ rejected: [],
697
+ problems: [],
698
+ sets
699
+ };
700
+ await saveState(root, s);
701
+ 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}.`);
702
+ } else {
703
+ const re = await rereadOf(dir, existing, commit, source, exclude, deps.git, conventions);
704
+ const reread = re.plan && !re.plan.unknown.length ? re.plan : void 0;
705
+ const since = reread?.from.map((x) => x.commit.slice(0, 12)).join(", ");
706
+ if (reread && !reread.files.length && !reread.reread.length) {
707
+ 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)}.`);
708
+ return 0;
709
+ }
710
+ const plan = planBatches(reread ? onlyFiles(source, reread.files.map((f) => f.path)) : source, { room, exclude, overhead: overheadOf(repo, commit, frameworks), conventions });
711
+ if (plan.leastRoom < MIN_ROOM)
712
+ return tooSmall(room - plan.leastRoom);
713
+ if (!plan.batches.length && !reread) {
714
+ io.out(`${repo} has no source files to read${plan.excluded.length ? ` (${plural(plan.excluded.length, "file")} excluded)` : ""}.`);
715
+ return 0;
716
+ }
717
+ const byId = new Map(existing.map((f) => [f.id, f]));
718
+ s = {
719
+ schemaVersion: 1,
720
+ repo,
721
+ commit,
722
+ ...limit ? { maxTokens: limit } : {},
723
+ room,
724
+ batches: plan.batches,
725
+ next: 0,
726
+ rejected: (reread?.reread ?? []).map((r) => {
727
+ const fact = byId.get(r.id);
728
+ return { id: r.id, code: "cite-changed", message: staleMessage(fact, r, commit), fact };
729
+ }),
730
+ problems: [],
731
+ ...reread ? {
732
+ reread: {
733
+ from: reread.from.map((x) => x.commit),
734
+ carried: reread.carried,
735
+ facts: reread.reread.length
736
+ }
737
+ } : {}
738
+ };
739
+ await saveState(root, s);
740
+ 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
741
  }
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
742
  }
687
743
  if (!s)
688
744
  return 2;
@@ -783,7 +839,7 @@ async function takeAnswer(root, s, run, batch, source, exclude, now, io, at) {
783
839
  });
784
840
  const summary = await writeVerifyFiles(root, s.repo, report, s.commit, q.problems, [], reviewedProblemsOf(reviewed.bad, report), answer.slips);
785
841
  if (answer.about) {
786
- const { keepDraftedDescription } = await import("./chunk-ZKUDS7JG.js");
842
+ const { keepDraftedDescription } = await import("./chunk-ZYASEL7K.js");
787
843
  const d = await keepDraftedDescription(root, s.repo, answer.about, now());
788
844
  if (d.kept)
789
845
  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 +872,10 @@ async function finish(root, s, io, o) {
816
872
  s.done = true;
817
873
  await saveState(root, s);
818
874
  const last = s.last;
875
+ if (last && !last.rejected && !s.reread) {
876
+ const { recordRulesNow } = await import("./chunk-2Q2YBAR5.js");
877
+ await recordRulesNow(root, s.repo, s.commit);
878
+ }
819
879
  const rel = factsRelOf(root);
820
880
  if (o.json) {
821
881
  io.out(JSON.stringify({ state: "done", repo: s.repo, batches: s.batches.length, ...last }, null, 2));
@@ -902,6 +962,8 @@ async function estimate(root, repo, c, io) {
902
962
  ...reread ? { reread: true } : {}
903
963
  };
904
964
  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;
965
+ const firstRead = typeof existing !== "string" && existing.length === 0 && !reread;
966
+ const readRules = firstRead ? rulesNow() : plan0?.rules;
905
967
  if (!same)
906
968
  await writeReadPlan(root, repo, {
907
969
  commit: c.commit,
@@ -909,10 +971,11 @@ async function estimate(root, repo, c, io) {
909
971
  parts,
910
972
  estimate: estimate2,
911
973
  // What the reader reported of an earlier plan stays, under the commit it was of.
912
- ...plan0?.reported ? { reported: plan0.reported } : {}
974
+ ...plan0?.reported ? { reported: plan0.reported } : {},
975
+ ...readRules ? { rules: readRules } : {}
913
976
  });
914
- else if (!sameEstimate)
915
- await saveReadPlan(root, { ...plan0, estimate: estimate2 });
977
+ else if (!sameEstimate || firstRead && plan0.rules?.hash !== readRules?.hash)
978
+ await saveReadPlan(root, { ...plan0, estimate: estimate2, ...readRules ? { rules: readRules } : {} });
916
979
  const progress = parts.length ? await readPlanProgress(root, repo, { commit: c.commit }) : void 0;
917
980
  const questions = (await listQuestions(root, { repo })).questions.filter((q) => q.state !== "retired");
918
981
  const notes = await notesAt(root, repo, c.dir, c.op);