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

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 (232) hide show
  1. package/dist/bin.js +3 -3
  2. package/dist/{chunk-GZ4TKR3Q.js → chunk-23VFQHFQ.js} +33 -134
  3. package/dist/{chunk-VKMTFIWS.js → chunk-26DBAGOP.js} +18 -18
  4. package/dist/{chunk-PKCMRPPB.js → chunk-27EDZN52.js} +33 -27
  5. package/dist/{chunk-AJJK7GLO.js → chunk-2K2ZEJVR.js} +3 -3
  6. package/dist/{chunk-XRO65C7V.js → chunk-3DDJLI7N.js} +8 -6
  7. package/dist/{chunk-XQ3YIV5R.js → chunk-3LU6YCSQ.js} +6 -6
  8. package/dist/{chunk-XTVDAHH2.js → chunk-3WU7LVTL.js} +5 -5
  9. package/dist/{chunk-6GNS32SI.js → chunk-4AYZQ3SY.js} +4 -4
  10. package/dist/{chunk-6VBXAGJX.js → chunk-4ONORLK5.js} +14 -14
  11. package/dist/{chunk-7TGYNOXD.js → chunk-4URR24DD.js} +7 -7
  12. package/dist/{chunk-CIUHAHM6.js → chunk-4UZJOQYK.js} +8 -8
  13. package/dist/chunk-4Y4FY34K.js +34 -0
  14. package/dist/{chunk-52R2YXP5.js → chunk-4YWRU7JK.js} +16 -16
  15. package/dist/chunk-52WCHTVZ.js +41 -0
  16. package/dist/{chunk-YIEOFHOL.js → chunk-55TBYJF2.js} +17 -11
  17. package/dist/{chunk-MH5OCRUM.js → chunk-5ACUW753.js} +2 -2
  18. package/dist/chunk-5BJFMAQU.js +32 -0
  19. package/dist/{chunk-YPBQNJHA.js → chunk-5ICB2BXH.js} +8 -8
  20. package/dist/{chunk-YGKYFMSL.js → chunk-5NZSJ5ZG.js} +3 -3
  21. package/dist/{chunk-YPIEYQF4.js → chunk-5P5BGG5L.js} +6 -6
  22. package/dist/{chunk-B7434AE2.js → chunk-5RUMHLIS.js} +2 -2
  23. package/dist/{chunk-5MI2SEV5.js → chunk-5TY4DTHQ.js} +3 -3
  24. package/dist/{chunk-NIXVDQVO.js → chunk-5V5BJACL.js} +2 -2
  25. package/dist/{chunk-7DUDLVFJ.js → chunk-6E2GJANQ.js} +20 -20
  26. package/dist/{chunk-RK6MKKKP.js → chunk-6N2GUZMZ.js} +1 -1
  27. package/dist/{chunk-LK44ULGI.js → chunk-6RGIM2ZH.js} +32 -6
  28. package/dist/{chunk-OS7PQ35Z.js → chunk-6V3DTQWK.js} +22 -22
  29. package/dist/{chunk-OSGQW2Z6.js → chunk-77RSRG3A.js} +8 -8
  30. package/dist/{chunk-5YIBJXGB.js → chunk-7A7IG7OA.js} +10 -10
  31. package/dist/{chunk-YLAJAI2W.js → chunk-7HQOZALR.js} +11 -11
  32. package/dist/{chunk-XB5RFZHH.js → chunk-7HWXYP4H.js} +12 -12
  33. package/dist/{chunk-PIVKU64W.js → chunk-7J7UY46S.js} +2 -2
  34. package/dist/{chunk-62YMDXY6.js → chunk-7KXYMC2P.js} +16 -16
  35. package/dist/{chunk-23M2LUYM.js → chunk-7LCQ7JAM.js} +1 -1
  36. package/dist/{chunk-5XN76FTF.js → chunk-7RGCQ4VZ.js} +5 -5
  37. package/dist/{chunk-CHC5FKTU.js → chunk-7RUMD56V.js} +1 -1
  38. package/dist/{chunk-IUD3ME4E.js → chunk-7S3XFWOU.js} +4 -4
  39. package/dist/{chunk-ZONE6E3Z.js → chunk-7SZPENUP.js} +2 -2
  40. package/dist/{chunk-T6USVBEJ.js → chunk-7VFVQX5K.js} +5 -5
  41. package/dist/chunk-ACWQDL6T.js +37 -0
  42. package/dist/{chunk-AKJTKMXU.js → chunk-ANCI3LFS.js} +5 -5
  43. package/dist/{chunk-B3O52AUQ.js → chunk-ASKDCMW5.js} +4 -4
  44. package/dist/chunk-ATNG5VOZ.js +122 -0
  45. package/dist/{chunk-I7IWQIEB.js → chunk-B3QOYE74.js} +4 -4
  46. package/dist/chunk-B3UHYXHU.js +41 -0
  47. package/dist/{chunk-GXJVY6WT.js → chunk-BA5DTXHQ.js} +5 -5
  48. package/dist/{chunk-5XDNUJ4P.js → chunk-BKFGGJKA.js} +2 -2
  49. package/dist/{chunk-DDAHCPGA.js → chunk-BQNEHB5U.js} +12 -12
  50. package/dist/{chunk-P3TKKBAH.js → chunk-BUWSOQLU.js} +4 -4
  51. package/dist/{chunk-X4W4XXWP.js → chunk-BX52REMA.js} +5 -5
  52. package/dist/{chunk-4SVJNVEE.js → chunk-BXBCMGIQ.js} +2 -0
  53. package/dist/{chunk-CRE4BJHM.js → chunk-C2YGYTU6.js} +23 -23
  54. package/dist/{chunk-7URGP4DD.js → chunk-C5JFMAXX.js} +12 -12
  55. package/dist/chunk-C75W7VXX.js +42 -0
  56. package/dist/{chunk-NGPU2ARF.js → chunk-CAN3EBE5.js} +1 -1
  57. package/dist/{chunk-FR7JPYBD.js → chunk-CE4S5ZY3.js} +12 -12
  58. package/dist/{chunk-BMHGA7WD.js → chunk-CRQ73DIF.js} +12 -12
  59. package/dist/{chunk-KIAI6PWL.js → chunk-CZI2ACNT.js} +17 -17
  60. package/dist/chunk-D7MWYJZF.js +43 -0
  61. package/dist/chunk-DDAEAZEV.js +54 -0
  62. package/dist/{chunk-G2E5MNYP.js → chunk-DGKNOPSE.js} +7 -7
  63. package/dist/{chunk-UF7TAFJM.js → chunk-DQNKG4HY.js} +18 -18
  64. package/dist/{chunk-6TJCUYC5.js → chunk-DS3ZEJVN.js} +3 -3
  65. package/dist/{chunk-3QAKDIEU.js → chunk-DYWTQXP4.js} +23 -23
  66. package/dist/chunk-E25G46RW.js +54 -0
  67. package/dist/{chunk-F2FOQLJ7.js → chunk-EAQFRD2B.js} +6 -6
  68. package/dist/{chunk-W5OYJMBT.js → chunk-EATSD7YD.js} +5 -5
  69. package/dist/{chunk-YGR6OCHQ.js → chunk-EBWIOODZ.js} +8 -14
  70. package/dist/{chunk-LVGBKKSM.js → chunk-EHUYLNLC.js} +15 -15
  71. package/dist/{chunk-IDGSU7JF.js → chunk-EI4KQYJ3.js} +9 -9
  72. package/dist/{chunk-FQSRHTTC.js → chunk-EQOSXLK3.js} +15 -15
  73. package/dist/{chunk-KC5DROFC.js → chunk-EV4TEFOD.js} +14 -14
  74. package/dist/{chunk-2KDSXJFJ.js → chunk-EW7MRMD5.js} +24 -6
  75. package/dist/{chunk-FZL2HNWP.js → chunk-EZSZFI54.js} +3 -3
  76. package/dist/{chunk-MKRBG5EF.js → chunk-FMRMTI7W.js} +1 -1
  77. package/dist/{chunk-E3JYO547.js → chunk-FOQXYMOR.js} +20 -20
  78. package/dist/{chunk-G5SFOH7P.js → chunk-G3PBLW4K.js} +8 -18
  79. package/dist/{chunk-2XM6PYQQ.js → chunk-G7WZH54P.js} +33 -11
  80. package/dist/{chunk-FTV6I76U.js → chunk-GG6HIU74.js} +25 -25
  81. package/dist/{chunk-6EDQE7GO.js → chunk-GMJXC5AL.js} +2 -2
  82. package/dist/chunk-GPLFYLGH.js +130 -0
  83. package/dist/{chunk-UR7RMZ3R.js → chunk-GVFUEGGM.js} +2 -2
  84. package/dist/{chunk-WGZWR4RF.js → chunk-GWSWS264.js} +5 -5
  85. package/dist/{chunk-NPCD54I7.js → chunk-H4VJO3M2.js} +8 -5
  86. package/dist/{chunk-73VPWF5R.js → chunk-HGQZTUAC.js} +4 -4
  87. package/dist/{chunk-2RX7PI2Y.js → chunk-HOUUBE74.js} +4 -4
  88. package/dist/{chunk-BDEKREZH.js → chunk-HQMCHHY5.js} +3 -3
  89. package/dist/{chunk-DPHCFZ7W.js → chunk-HR4DVO6X.js} +3 -3
  90. package/dist/chunk-HZYFLEWO.js +39 -0
  91. package/dist/chunk-IA2RKC6I.js +279 -0
  92. package/dist/{chunk-AY2IUF4K.js → chunk-IILZ7J3L.js} +541 -64
  93. package/dist/chunk-IRW64JFF.js +247 -0
  94. package/dist/{chunk-BJPMKJTL.js → chunk-IVHN2VYG.js} +100 -2
  95. package/dist/{chunk-OEI7LVRP.js → chunk-IWZPGIGT.js} +24 -24
  96. package/dist/{chunk-QICFHVRW.js → chunk-IY4PHPHT.js} +4 -4
  97. package/dist/{chunk-ZE3P35DA.js → chunk-J27QGXO4.js} +9 -9
  98. package/dist/{chunk-BMCKL3VQ.js → chunk-JBSD57N7.js} +24 -24
  99. package/dist/{chunk-67J3VZBA.js → chunk-JEUXCIRD.js} +5 -5
  100. package/dist/{chunk-577AJVRS.js → chunk-JMOLB347.js} +1976 -282
  101. package/dist/{chunk-7EKESFWV.js → chunk-JQX6BSE4.js} +11 -11
  102. package/dist/{chunk-YXJ4XOHF.js → chunk-JRPQX2EK.js} +4 -4
  103. package/dist/{chunk-MTEBM4Y4.js → chunk-JUQHYTXN.js} +18 -12
  104. package/dist/{chunk-APSVL2AI.js → chunk-JUZ75OG4.js} +15 -15
  105. package/dist/{chunk-7GB4ZRE2.js → chunk-KIWEBM6G.js} +12 -12
  106. package/dist/{chunk-KM2FBM3T.js → chunk-KLKENMWQ.js} +282 -50
  107. package/dist/chunk-KQK6SQPE.js +48 -0
  108. package/dist/{chunk-TM7LC37P.js → chunk-KQRYW7OS.js} +179 -115
  109. package/dist/{chunk-65C57N7P.js → chunk-KU4T2CXJ.js} +19 -19
  110. package/dist/{chunk-GFXLPJWY.js → chunk-KXZR2BLL.js} +2 -2
  111. package/dist/{chunk-MGVYVW7Q.js → chunk-L7I5PKGD.js} +1 -1
  112. package/dist/{chunk-XKS6THI5.js → chunk-LDIARP6F.js} +2 -2
  113. package/dist/{chunk-NNUASOAA.js → chunk-LEHZTKB3.js} +12 -12
  114. package/dist/{chunk-FJCFYKVO.js → chunk-LS3WR2RF.js} +86 -29
  115. package/dist/{chunk-Y4BRGOJR.js → chunk-LUPW4WLK.js} +13 -10
  116. package/dist/{chunk-HE4ZQXZM.js → chunk-LVBPY2M6.js} +14 -4
  117. package/dist/{chunk-EX6ZXS5K.js → chunk-LZWVK4YY.js} +4 -4
  118. package/dist/chunk-MCWWMMLN.js +48 -0
  119. package/dist/{chunk-BXIX7S7O.js → chunk-MKC7P5LD.js} +15 -15
  120. package/dist/{chunk-JQ7XQPQS.js → chunk-MKIULIUQ.js} +4 -4
  121. package/dist/{chunk-D3PO4DOZ.js → chunk-MMB2OHUY.js} +4 -2
  122. package/dist/{chunk-MTAUZW2Z.js → chunk-MQNBEO3N.js} +210 -104
  123. package/dist/{chunk-4PJADZRR.js → chunk-MSL3CLHX.js} +16 -16
  124. package/dist/{chunk-5KTOPOEP.js → chunk-MV4637YA.js} +25 -25
  125. package/dist/{chunk-WARBF2KY.js → chunk-MYKQVS5W.js} +4 -4
  126. package/dist/{chunk-4QUQEBFT.js → chunk-MYOW3RPC.js} +6 -6
  127. package/dist/{chunk-ROTY5J2L.js → chunk-NBGBMRIS.js} +1 -1
  128. package/dist/{chunk-BUYJL3GJ.js → chunk-NBQO75XT.js} +1 -1
  129. package/dist/chunk-NCR24CPV.js +41 -0
  130. package/dist/chunk-NDW4ROST.js +38 -0
  131. package/dist/{chunk-AWECWW5Y.js → chunk-NELU7LSL.js} +13 -11
  132. package/dist/{chunk-R64GLVBO.js → chunk-NG5R2WIY.js} +10 -10
  133. package/dist/{chunk-ZZXF6OOJ.js → chunk-NH5QH3WS.js} +2 -2
  134. package/dist/{chunk-XIWYUQZQ.js → chunk-NIYB5K5B.js} +9 -9
  135. package/dist/{chunk-LDKUC2QJ.js → chunk-NR5T46ZY.js} +17 -17
  136. package/dist/{chunk-PEF5OEMB.js → chunk-NX6QEEOA.js} +4 -4
  137. package/dist/{chunk-OGRWQ562.js → chunk-O6ILVBYB.js} +2 -2
  138. package/dist/{chunk-Y7KBQ4BD.js → chunk-OFWYZH6B.js} +22 -22
  139. package/dist/{chunk-N3NBWIYQ.js → chunk-OHXTB6CO.js} +11 -9
  140. package/dist/chunk-OJN7WME4.js +34 -0
  141. package/dist/{chunk-2HMWX4T6.js → chunk-OR5VRULZ.js} +11 -11
  142. package/dist/{chunk-UBWCUP3G.js → chunk-ORZSD2KD.js} +2 -2
  143. package/dist/{chunk-V2TH46ZY.js → chunk-OXVVRJDQ.js} +12 -12
  144. package/dist/{chunk-7YYEKTYF.js → chunk-PQW7PYUR.js} +8 -8
  145. package/dist/{chunk-EZIUFEN6.js → chunk-Q32Y5T2U.js} +12 -12
  146. package/dist/{chunk-FOGG4AUR.js → chunk-QWHTTA2X.js} +23 -7
  147. package/dist/{chunk-HKTUIMH4.js → chunk-R3RVFCJ2.js} +3 -3
  148. package/dist/{chunk-J5LHDJU4.js → chunk-R3VFLYZZ.js} +7 -7
  149. package/dist/{chunk-QKEFZRHS.js → chunk-R6UTCLH5.js} +17 -17
  150. package/dist/{chunk-SS66Q4VE.js → chunk-RB2VSED2.js} +12 -12
  151. package/dist/chunk-REWZE2XI.js +53 -0
  152. package/dist/{chunk-MF7QH4AX.js → chunk-RIEFYHXI.js} +5 -5
  153. package/dist/{chunk-7F2RUWPU.js → chunk-RJDP642F.js} +1 -1
  154. package/dist/{chunk-YFSSNGLR.js → chunk-RWMSJP7H.js} +31 -29
  155. package/dist/{chunk-JMSEEBN4.js → chunk-S2FDPN32.js} +1 -1
  156. package/dist/chunk-S5LSDXV4.js +40 -0
  157. package/dist/{chunk-OJLRFGBP.js → chunk-S7ZWCMDO.js} +79 -15
  158. package/dist/{chunk-ILFKECGI.js → chunk-SG5KY4VB.js} +4 -4
  159. package/dist/{chunk-FEZE6NIA.js → chunk-SH7AZZDA.js} +18 -18
  160. package/dist/{chunk-E3Z67HRK.js → chunk-SILY6ZEZ.js} +4 -4
  161. package/dist/{chunk-5IALSMZ2.js → chunk-SINJKQSI.js} +14 -14
  162. package/dist/chunk-SIUDWWKS.js +47 -0
  163. package/dist/{chunk-XEG3FE2R.js → chunk-SKMHS4CL.js} +1 -1
  164. package/dist/chunk-SNHOLLGN.js +280 -0
  165. package/dist/{chunk-LTQANUDH.js → chunk-SUQZGPVG.js} +25 -25
  166. package/dist/{chunk-47QE246J.js → chunk-T6ESD5KM.js} +5 -5
  167. package/dist/{chunk-YVLMBAYE.js → chunk-TC3KTG33.js} +3 -3
  168. package/dist/{chunk-IV7BCWWN.js → chunk-TCADP67G.js} +3 -3
  169. package/dist/{chunk-6JLPXDWN.js → chunk-TEBBD4XH.js} +5 -5
  170. package/dist/{chunk-F7UQR4ZX.js → chunk-TGEOLIAK.js} +3 -3
  171. package/dist/{chunk-FMKKVWZD.js → chunk-TQYBXDVH.js} +2 -2
  172. package/dist/{chunk-TZDSDDSV.js → chunk-TZXHUDI6.js} +2 -2
  173. package/dist/{chunk-YMOJD5BO.js → chunk-U5PDQTLA.js} +3 -3
  174. package/dist/{chunk-CNKGYDMG.js → chunk-U6YKL7SI.js} +23 -23
  175. package/dist/{chunk-7UKVYFQ2.js → chunk-UABFFMWH.js} +8 -8
  176. package/dist/{chunk-XPEEICAO.js → chunk-UFBKJOWB.js} +15 -15
  177. package/dist/chunk-UFTQIK2J.js +43 -0
  178. package/dist/{chunk-ZP4FJHR4.js → chunk-UNFCFJMF.js} +18 -18
  179. package/dist/{chunk-IZNSAEBX.js → chunk-UTR67XU2.js} +2 -2
  180. package/dist/{chunk-6GWHKMQR.js → chunk-V4XKYGLK.js} +4 -4
  181. package/dist/{chunk-ISNZYKAS.js → chunk-VYNZED7B.js} +21 -21
  182. package/dist/{chunk-FV5YFR6I.js → chunk-WCLAOKCH.js} +9 -9
  183. package/dist/chunk-WFYHOXTB.js +29 -0
  184. package/dist/{chunk-QWVBEK4P.js → chunk-WGU6NIUV.js} +13 -13
  185. package/dist/{chunk-R4TBNKKC.js → chunk-WIMOJMAK.js} +974 -489
  186. package/dist/{chunk-XKZHAD6Y.js → chunk-WKXOEIOY.js} +15 -15
  187. package/dist/chunk-WUE6HKIU.js +790 -0
  188. package/dist/{chunk-R6B6XAKK.js → chunk-WUP77GG2.js} +4 -4
  189. package/dist/{chunk-RRVT4MPS.js → chunk-XF3DATVU.js} +18 -18
  190. package/dist/{chunk-KIHOIVST.js → chunk-XJAJQGXJ.js} +3 -3
  191. package/dist/{chunk-Y5PZHS4K.js → chunk-XKJRPVJO.js} +5 -5
  192. package/dist/{chunk-N4QZJJVB.js → chunk-XNRPCI23.js} +5 -5
  193. package/dist/{chunk-XNYNEEBR.js → chunk-XOVLGBKI.js} +18 -18
  194. package/dist/{chunk-GR6YKM55.js → chunk-XPJR74MA.js} +95 -13
  195. package/dist/{chunk-4GZXS6S2.js → chunk-XPWSNKF3.js} +226 -8
  196. package/dist/{chunk-LRS573EX.js → chunk-XR5DD5DQ.js} +4 -4
  197. package/dist/{chunk-PGKHJYOB.js → chunk-XZJE6WIT.js} +1 -1
  198. package/dist/{chunk-3GTZ2OON.js → chunk-Y5AYBGLB.js} +16 -10
  199. package/dist/{chunk-OIU657QQ.js → chunk-YLAM4HZH.js} +4 -4
  200. package/dist/{chunk-JF2NSTFO.js → chunk-YVCOQ5TZ.js} +3 -3
  201. package/dist/{chunk-F7YL2RZ4.js → chunk-YWOMGMZB.js} +23 -23
  202. package/dist/{chunk-WLIIQ2A4.js → chunk-YWZDAZMA.js} +7 -7
  203. package/dist/{chunk-JAA53T23.js → chunk-Z2EYRUOH.js} +20 -20
  204. package/dist/{chunk-UYYN2IUZ.js → chunk-Z46OXTBE.js} +6 -6
  205. package/dist/chunk-ZHWSL6SR.js +45 -0
  206. package/dist/chunk-ZJQUIG3A.js +87 -0
  207. package/dist/{chunk-T4RTWMJD.js → chunk-ZKUDS7JG.js} +5 -5
  208. package/dist/{chunk-HHUFVJF7.js → chunk-ZTNS3L5Z.js} +6 -6
  209. package/dist/files.json +471 -423
  210. package/dist/packages/sdk/npm/index.js +2300 -1983
  211. package/dist/packages/ui/dist/assets/{elk-api-Mo5w5xCa.js → elk-api-DDup23Us.js} +2 -2
  212. package/dist/packages/ui/dist/assets/{index-Bp3XhPHX.css → index-C0JEkXyN.css} +1 -1
  213. package/dist/packages/ui/dist/assets/index-mTOWhQZm.js +29 -0
  214. package/dist/packages/ui/dist/index.html +2 -2
  215. package/package.json +5 -5
  216. package/dist/chunk-26PLPSQW.js +0 -48
  217. package/dist/chunk-2G4DFUWJ.js +0 -43
  218. package/dist/chunk-2M6WXO73.js +0 -38
  219. package/dist/chunk-5F3RJCHB.js +0 -45
  220. package/dist/chunk-B2VSVN4P.js +0 -34
  221. package/dist/chunk-CITDNDIZ.js +0 -53
  222. package/dist/chunk-DAQBIK5G.js +0 -47
  223. package/dist/chunk-DZRQDNPT.js +0 -34
  224. package/dist/chunk-FLOEZA6K.js +0 -29
  225. package/dist/chunk-FNHSVBRA.js +0 -48
  226. package/dist/chunk-FPGVOSOG.js +0 -41
  227. package/dist/chunk-FZ2E5LGK.js +0 -54
  228. package/dist/chunk-HB6XSGI6.js +0 -131
  229. package/dist/chunk-HUZQDKQK.js +0 -48
  230. package/dist/chunk-L4VJ4ETL.js +0 -41
  231. package/dist/chunk-XPCWQXTY.js +0 -37
  232. package/dist/packages/ui/dist/assets/index-DM212ZbV.js +0 -29
@@ -5,11 +5,12 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  readOpenApiDocument
8
- } from "./chunk-UR7RMZ3R.js";
8
+ } from "./chunk-GVFUEGGM.js";
9
9
  import {
10
10
  globToRegExp
11
- } from "./chunk-MKRBG5EF.js";
11
+ } from "./chunk-FMRMTI7W.js";
12
12
  import {
13
+ DECLARED_TOPIC,
13
14
  DEFAULT_CONVENTIONS,
14
15
  Fact,
15
16
  FactId,
@@ -29,6 +30,7 @@ import {
29
30
  isSecretPath,
30
31
  lineNamesClaim,
31
32
  normalizePath,
33
+ noteProblem,
32
34
  partsBuildWord,
33
35
  partsNamePath,
34
36
  plainPathPrefix,
@@ -38,7 +40,7 @@ import {
38
40
  staleCite,
39
41
  toCanonicalYaml,
40
42
  underFolders
41
- } from "./chunk-577AJVRS.js";
43
+ } from "./chunk-JMOLB347.js";
42
44
 
43
45
  // packages/verify/dist/source.js
44
46
  import { readdirSync, readFileSync, statSync } from "node:fs";
@@ -405,6 +407,54 @@ function authPolicyMismatch(auth, file, policy, lines) {
405
407
  }
406
408
  var authChecks = (auth) => CHECKS[auth] ?? auth;
407
409
 
410
+ // packages/verify/dist/call-security-lines.js
411
+ var CLIENT_CERT = /client[-_ .]?cert|keystore|key[-_ .]?store|ssl[-_ .]?bundle|\.pfx\b|\.p12\b|pkcs12|\bpfx\b|\bp12\b/i;
412
+ var CERT_AND_KEY = (l) => /\bcert\b/i.test(l) && /\bkey\b/i.test(l);
413
+ var KINDS = {
414
+ "tls mtls": {
415
+ test: (l) => CLIENT_CERT.test(l) || CERT_AND_KEY(l),
416
+ needs: "a client certificate, a key store or an SSL bundle"
417
+ },
418
+ "tls tls": { test: (l) => /https|ssl|tls/i.test(l), needs: "https, SSL or TLS" },
419
+ "tls none": {
420
+ test: (l) => !/https:\/\//i.test(l) && (/http:\/\//i.test(l) || /\b(false|disabled?|insecure|plain-?text|off)\b/i.test(l)),
421
+ needs: "a plain http:// URL or a TLS switch set off"
422
+ },
423
+ "auth oauth2": {
424
+ test: (l) => /oauth|token|bearer|jwt|authori[sz]|client[-_ ]?credentials|access[-_ ]?token/i.test(l),
425
+ needs: "a token (OAuth, bearer, JWT or an Authorization header)"
426
+ },
427
+ "auth api-key": {
428
+ test: (l) => /api[-_ ]?key|apikey|x-api|subscription[-_ ]?key|[a-z0-9][-_]key\b/i.test(l),
429
+ needs: "a key"
430
+ },
431
+ "auth basic": {
432
+ test: (l) => /basic|password|passwd|username|credential/i.test(l),
433
+ needs: "a password or basic credentials"
434
+ },
435
+ "auth mtls": {
436
+ test: (l) => CLIENT_CERT.test(l) || CERT_AND_KEY(l),
437
+ needs: "a client certificate, a key store or an SSL bundle"
438
+ }
439
+ };
440
+ function securityLineKind(what, claim, lines) {
441
+ const k = KINDS[`${what} ${claim}`];
442
+ if (!k)
443
+ return void 0;
444
+ return lines.some((l) => k.test(l)) ? void 0 : k.needs;
445
+ }
446
+ function lineOfValue(lines, line, value) {
447
+ if (!lines)
448
+ return void 0;
449
+ const v = value.toLowerCase();
450
+ for (const n of [line, line - 1, line + 1]) {
451
+ const l = lines[n - 1];
452
+ if (l !== void 0 && l.toLowerCase().includes(v))
453
+ return l;
454
+ }
455
+ return lines[line - 1];
456
+ }
457
+
408
458
  // packages/verify/dist/corrections.js
409
459
  function correctionFor(f, corrections) {
410
460
  const at = (c) => c.target.kind === f.kind && c.target.file === f.cite.file && c.target.line === f.cite.line;
@@ -1740,6 +1790,9 @@ function claimsOf(f) {
1740
1790
  }
1741
1791
  case "flow":
1742
1792
  return [routeOrWord(f.cite.value)];
1793
+ // ADR 0163: the value as written, on its line.
1794
+ case "term":
1795
+ return [{ kind: "word", value: f.value }];
1743
1796
  }
1744
1797
  }
1745
1798
  var sameCommit = (a, b) => a.startsWith(b) || b.startsWith(a);
@@ -1970,6 +2023,40 @@ async function verifyFacts(o) {
1970
2023
  if (f.exposes === void 0 && !serves2)
1971
2024
  problem(f, "exposure-component", `${label} says where a component is reached and names none: this repo's facts serve nothing, so its routes reach another repo's component; name it in exposes (one of the estate's components), or write a question when no file says which`);
1972
2025
  }
2026
+ if (f.kind === "call") {
2027
+ for (const [what, claim, at] of [
2028
+ ["auth", f.auth, f.authCite],
2029
+ ["tls", f.tls, f.tlsCite]
2030
+ ]) {
2031
+ if (claim !== void 0 && !at && f.by !== "person")
2032
+ problem(f, "security-uncited", `${label} claims ${what} ${claim} and cites no line for it: give ${what}Cite, the line that sets it (a client certificate, a token, an https URL) and what it writes there, or leave ${what} out`);
2033
+ if (!at)
2034
+ continue;
2035
+ const bad = checkCite({ ...at }, [{ kind: "word", value: at.value }], `${label} ${what}Cite${claim ? ` (${what} ${claim})` : ""}`, false);
2036
+ add(f, bad);
2037
+ if (bad || claim === void 0)
2038
+ continue;
2039
+ const lines = [at, ...at.with ?? []].flatMap((p) => {
2040
+ const l = lineOfValue(linesOf2(p.file), p.line, p.value);
2041
+ return l === void 0 ? [] : [l];
2042
+ });
2043
+ const needs = securityLineKind(what, claim, lines);
2044
+ if (needs)
2045
+ problem(f, "security-line-kind", `${label} claims ${what} ${claim} at ${at.file}:${at.line}${at.with?.length ? " and its parts" : ""}, which write${at.with?.length ? "" : "s"} no ${needs}: cite the line that sets it (with the line that builds it in ${what}Cite.with), or write the ${what} the line sets`);
2046
+ }
2047
+ }
2048
+ if (f.kind === "term") {
2049
+ const m = f.meaning;
2050
+ if (m && m.file !== f.cite.file)
2051
+ problem(f, "term-meaning", `${label} says ${m.file}:${m.line} gives "${f.value}" its meaning, and the value is in ${f.cite.file}: cite the line of the same file (the list's or the block's key) that does`);
2052
+ else if (m && m.line > f.cite.line)
2053
+ problem(f, "term-meaning", `${label} says line ${m.line} gives "${f.value}" its meaning, below the value's line ${f.cite.line}: cite the line above it (the list's or the block's key) that does`);
2054
+ else if (m)
2055
+ add(f, checkCite({ ...m }, [{ kind: "word", value: m.value }], `${label} meaning`, false));
2056
+ const bad = f.note !== void 0 && o.notes ? noteProblem(f.note, o.notes) : void 0;
2057
+ if (bad)
2058
+ problem(f, bad.code, `${label} ${bad.message}`);
2059
+ }
1973
2060
  if (f.kind === "framework") {
1974
2061
  const bad = frameworkNameProblem(f, rules.frameworks);
1975
2062
  if (bad)
@@ -3922,6 +4009,8 @@ var HOW_OF_FLAG = {
3922
4009
  "joined-by-repo": "repo",
3923
4010
  "joined-by-host": "host",
3924
4011
  "declared-caller": "declared",
4012
+ // ADR 0162 §6 (F8): a topic or queue the profile names as an outside system's: a person's word.
4013
+ [DECLARED_TOPIC]: "declared",
3925
4014
  // ADR 0160 (O3): answered by an entry of another team's shared map.
3926
4015
  [JOINED_TO_SHARED_MAP]: "shared"
3927
4016
  };
@@ -4123,6 +4212,7 @@ function buildEstate(records2) {
4123
4212
  add(fromRecord(c, `component:${c.id}`, "component", c.id, parent, { type: c.type, runtime: c.runtime, repo: c.repo, path: c.path }, gaps));
4124
4213
  }
4125
4214
  const endpointNode = /* @__PURE__ */ new Map();
4215
+ const topicByPath = /* @__PURE__ */ new Map();
4126
4216
  for (const e of all(records2, "Endpoint")) {
4127
4217
  const topic = TOPIC_TYPES.has(e.endpointType);
4128
4218
  const id = `${topic ? "topic" : "endpoint"}:${e.id}`;
@@ -4139,7 +4229,30 @@ function buildEstate(records2) {
4139
4229
  auth: e.auth
4140
4230
  }, gaps));
4141
4231
  endpointNode.set(e.id, id);
4232
+ if (topic)
4233
+ topicByPath.set(e.pathOrTopic, id);
4142
4234
  }
4235
+ const busTopic = (name, parent, ev = []) => {
4236
+ const known = topicByPath.get(name);
4237
+ if (known)
4238
+ return known;
4239
+ const id = add({
4240
+ id: `topic:bus.${slug2(name)}`,
4241
+ kind: "topic",
4242
+ label: name,
4243
+ parent,
4244
+ state: "current",
4245
+ gaps: [],
4246
+ evidence: ev,
4247
+ properties: { pathOrTopic: name },
4248
+ next: {
4249
+ command: `atticus query "${name}"`,
4250
+ why: "List the records that name this topic or queue."
4251
+ }
4252
+ });
4253
+ topicByPath.set(name, id);
4254
+ return id;
4255
+ };
4143
4256
  const storeNode = /* @__PURE__ */ new Map();
4144
4257
  for (const d of all(records2, "DataStore")) {
4145
4258
  const owner = d.ownerComponent && components.has(d.ownerComponent);
@@ -4190,6 +4303,29 @@ function buildEstate(records2) {
4190
4303
  atoms.push({ from: to, to: target, type: "subscribes", evidence: ev, gaps, join: join2 });
4191
4304
  continue;
4192
4305
  }
4306
+ if (!i.endpoint && (i.via === "event-bus" || i.via === "mq") && i.normalizedPath) {
4307
+ const isSystem = (n) => n.startsWith("system:") || n.startsWith("unknown:");
4308
+ const [home, homeRef] = !isSystem(to) && isSystem(from) ? [from, i.from] : [to, i.to];
4309
+ const t = busTopic(i.normalizedPath, home);
4310
+ const owner = nodes.get(t);
4311
+ if (owner.parent === home && isSystem(home)) {
4312
+ owner.properties = { ...owner.properties, owner: nodes.get(home)?.label ?? home };
4313
+ const b = nodes.get(home)?.properties.boundary;
4314
+ if (outside.has(homeRef) || b === "vendor" || b === "outside")
4315
+ owner.properties.ownerOutside = true;
4316
+ }
4317
+ if (join2.shared)
4318
+ owner.properties = { ...owner.properties, owner: join2.shared.team, ownerOutside: true };
4319
+ if (i.flags?.includes(DECLARED_TOPIC)) {
4320
+ owner.properties = { ...owner.properties, declared: true };
4321
+ owner.gaps = [.../* @__PURE__ */ new Set([...owner.gaps, DECLARED_TOPIC])];
4322
+ owner.evidence = mergeEvidence(owner.evidence, evidenceOf(i.evidence.filter((e) => e.source === "manual")));
4323
+ }
4324
+ atoms.push({ from, to: t, type: "publishes", evidence: ev, gaps, join: join2 });
4325
+ if (to.startsWith("component:"))
4326
+ atoms.push({ from: to, to: t, type: "subscribes", evidence: ev, gaps, join: join2 });
4327
+ continue;
4328
+ }
4193
4329
  let caller = from;
4194
4330
  if (from.startsWith("component:")) {
4195
4331
  caller = add({
@@ -4222,6 +4358,22 @@ function buildEstate(records2) {
4222
4358
  join: join2
4223
4359
  });
4224
4360
  }
4361
+ for (const u of all(records2, "Unresolved")) {
4362
+ if (u.unresolvedKind !== "event-publish" && u.unresolvedKind !== "event-subscribe")
4363
+ continue;
4364
+ if (!u.raw || u.raw.includes("${"))
4365
+ continue;
4366
+ const owner = u.owner ? partNode(u.owner) : "estate";
4367
+ const ev = evidenceOf(u.evidence);
4368
+ const t = busTopic(u.raw, u.unresolvedKind === "event-subscribe" ? owner : "estate", ev);
4369
+ atoms.push({
4370
+ from: owner,
4371
+ to: t,
4372
+ type: u.unresolvedKind === "event-publish" ? "publishes" : "subscribes",
4373
+ evidence: ev,
4374
+ gaps: recordGaps(u)
4375
+ });
4376
+ }
4225
4377
  for (const c of components.values())
4226
4378
  for (const u of c.uses ?? [])
4227
4379
  atoms.push({
@@ -4274,6 +4426,37 @@ function buildEstate(records2) {
4274
4426
  gaps: recordGaps(k)
4275
4427
  });
4276
4428
  }
4429
+ const busy = /* @__PURE__ */ new Set();
4430
+ const internal = (id) => {
4431
+ const n = nodes.get(id);
4432
+ return !!n && n.kind !== "unknown" && n.properties.boundary !== "outside" && n.properties.boundary !== "vendor";
4433
+ };
4434
+ for (const a of atoms)
4435
+ if (a.type === "publishes" || a.type === "subscribes") {
4436
+ if (internal(a.from))
4437
+ busy.add(`${a.type}|${a.to}`);
4438
+ }
4439
+ for (const n of nodes.values()) {
4440
+ if (n.kind !== "topic")
4441
+ continue;
4442
+ if (n.properties.owner === void 0) {
4443
+ let p = n.parent ? nodes.get(n.parent) : void 0;
4444
+ while (p && p.kind !== "system" && p.kind !== "repo" && p.kind !== "estate")
4445
+ p = p.parent ? nodes.get(p.parent) : void 0;
4446
+ if (p && p.kind !== "estate") {
4447
+ let sys = p;
4448
+ while (sys && sys.kind !== "system")
4449
+ sys = sys.parent ? nodes.get(sys.parent) : void 0;
4450
+ n.properties = { ...n.properties, owner: (sys ?? p).label };
4451
+ if (sys && (sys.properties.boundary === "outside" || sys.properties.boundary === "vendor"))
4452
+ n.properties.ownerOutside = true;
4453
+ }
4454
+ }
4455
+ if (!busy.has(`publishes|${n.id}`))
4456
+ n.gaps.push("no-publisher");
4457
+ if (!busy.has(`subscribes|${n.id}`))
4458
+ n.gaps.push("no-listener");
4459
+ }
4277
4460
  const kids = /* @__PURE__ */ new Map();
4278
4461
  for (const n of nodes.values()) {
4279
4462
  if (!n.parent)
@@ -4438,16 +4621,27 @@ function nodeView(est, id, o) {
4438
4621
  return ax[i] ?? x;
4439
4622
  };
4440
4623
  const types = LENS_EDGES[lens];
4624
+ const onBus = (atom, b) => (atom.type === "publishes" || atom.type === "subscribes") && est.nodes.get(b)?.kind === "topic" && b !== id;
4625
+ const drawnTopics = /* @__PURE__ */ new Set();
4626
+ for (const atom of est.atoms) {
4627
+ if (!types.has(atom.type))
4628
+ continue;
4629
+ const a = lift(est, lens, atom.from);
4630
+ const b = lift(est, lens, atom.to);
4631
+ if (onBus(atom, b) && (inside(a) || inside(b)))
4632
+ drawnTopics.add(b);
4633
+ }
4441
4634
  const mapped = [];
4442
4635
  for (const atom of est.atoms) {
4443
4636
  if (!types.has(atom.type))
4444
4637
  continue;
4445
4638
  const a = lift(est, lens, atom.from);
4446
4639
  const b = lift(est, lens, atom.to);
4447
- if (!inside(a) && !inside(b))
4640
+ const bus = onBus(atom, b);
4641
+ if (!inside(a) && !inside(b) && !(bus && drawnTopics.has(b)))
4448
4642
  continue;
4449
4643
  const from = place(a);
4450
- const to = place(b);
4644
+ const to = bus ? b : place(b);
4451
4645
  if (from === to)
4452
4646
  continue;
4453
4647
  mapped.push({ from, to, atom });
@@ -4456,10 +4650,12 @@ function nodeView(est, id, o) {
4456
4650
  let hidden = 0;
4457
4651
  if (!o.all)
4458
4652
  ({ edges, hidden } = reduceUses(edges));
4459
- const outside = [...new Set(edges.flatMap((e) => [e.from, e.to]))].filter((n) => n !== id && !shownSet.has(n)).sort();
4460
- const children = shown.map((n) => toNode(est, lens, n));
4653
+ const ends = [...new Set(edges.flatMap((e) => [e.from, e.to]))].filter((n) => n !== id && !shownSet.has(n));
4654
+ const deeper = ends.filter((n) => drawnTopics.has(n) && inside(n)).sort();
4655
+ const outside = ends.filter((n) => !deeper.includes(n)).sort();
4656
+ const children = [...shown, ...deeper].map((n) => toNode(est, lens, n));
4461
4657
  const firstTable = children.find((c) => c.kind === "table");
4462
- const suggest = lens === "data" && firstTable ? { mode: "focus", id: firstTable.id } : shown.length + outside.length > DETAILED_LIMIT ? { mode: "group" } : void 0;
4658
+ const suggest = lens === "data" && firstTable ? { mode: "focus", id: firstTable.id } : shown.length + deeper.length + outside.length > DETAILED_LIMIT ? { mode: "group" } : void 0;
4463
4659
  return {
4464
4660
  lens,
4465
4661
  node: toNode(est, lens, id),
@@ -4818,6 +5014,27 @@ function config(c) {
4818
5014
  return `- ${code(`${s.key} = ${s.valueOrRef}`)} (${notes.join("; ")}): ${cite(c, ownEvidence(s, c.i.repo))}`;
4819
5015
  });
4820
5016
  }
5017
+ function terms(c) {
5018
+ const ts = c.i.terms ?? [];
5019
+ const owners = /* @__PURE__ */ new Map();
5020
+ for (const r of records(c, "Component"))
5021
+ for (const f of r.flags ?? []) {
5022
+ const m = /^term:[^=]+=(.+)$/.exec(f);
5023
+ if (m && !c.comps.has(r.id))
5024
+ owners.set(m[1], [...owners.get(m[1]) ?? [], r.id]);
5025
+ }
5026
+ const listing = /* @__PURE__ */ new Map();
5027
+ for (const g of records(c, "AccessGrant"))
5028
+ if (g.flags?.some((f) => f.startsWith("term:"))) {
5029
+ const route = c.byId.get(g.resource);
5030
+ const by = route?.kind === "GatewayRoute" ? route.proxy : g.resource;
5031
+ listing.set(g.subject, [.../* @__PURE__ */ new Set([...listing.get(g.subject) ?? [], by])]);
5032
+ }
5033
+ return [...ts].sort((a, b) => cmp2(a.term, b.term) || cmp2(a.value, b.value)).map((t) => {
5034
+ const means = t.role === "owner" ? `this repo's own id${listing.get(t.value)?.length ? `; let in by ${list(listing.get(t.value).sort())}` : ""}` : t.role === "consumer" ? `a consumer it lets in${owners.get(t.value)?.length ? `: ${list(owners.get(t.value).sort())}` : ", whose own repo no fact names yet"}` : t.role === "none" ? "names no system" : `**open:** nothing says what it means${owners.get(t.value)?.length ? `; the same value is ${list(owners.get(t.value).sort())}'s own id (a possible link)` : ""}`;
5035
+ return `- ${code(t.term)} ${code(t.value)}: ${means} ${cite(c, t.cite)}${t.meaning ? ` (its role from ${cite(c, t.meaning)})` : ""}`;
5036
+ });
5037
+ }
4821
5038
  var flowFile = (f) => `flows/${f.id}.md`;
4822
5039
  function flowsList(c) {
4823
5040
  if (!c.i.flows.length)
@@ -5054,6 +5271,7 @@ function renderMap(i) {
5054
5271
  ...section("What it stores", stores(base)),
5055
5272
  ...section("Where it runs", deploys(base)),
5056
5273
  ...section("Config that names other systems", config(base)),
5274
+ ...i.terms?.length ? section("Terms", terms(base)) : [],
5057
5275
  ...section("Flows", flowsList(base)),
5058
5276
  ...section("Contracts", contracts(base, files)),
5059
5277
  ...section("Open questions", openQuestions(base))
@@ -6,14 +6,14 @@ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  hostQuestionDrafts,
8
8
  unknownHosts
9
- } from "./chunk-AY2IUF4K.js";
9
+ } from "./chunk-IILZ7J3L.js";
10
10
  import {
11
11
  baseClonePath,
12
12
  loadRepos
13
- } from "./chunk-PGKHJYOB.js";
13
+ } from "./chunk-XZJE6WIT.js";
14
14
  import {
15
15
  fsRepo
16
- } from "./chunk-MKRBG5EF.js";
16
+ } from "./chunk-FMRMTI7W.js";
17
17
  import {
18
18
  HOSTS_NONE,
19
19
  HOSTS_OUTSIDE_INTERNAL,
@@ -25,7 +25,7 @@ import {
25
25
  raiseQuestions,
26
26
  retireQuestion,
27
27
  writeQuestion
28
- } from "./chunk-577AJVRS.js";
28
+ } from "./chunk-JMOLB347.js";
29
29
 
30
30
  // packages/cli/dist/host-questions.js
31
31
  import { stat } from "node:fs/promises";
@@ -14,7 +14,7 @@ import {
14
14
  require_dist,
15
15
  runsDirOf,
16
16
  toCanonicalYaml
17
- } from "./chunk-577AJVRS.js";
17
+ } from "./chunk-JMOLB347.js";
18
18
  import {
19
19
  __toESM
20
20
  } from "./chunk-TV45EUGM.js";
@@ -3,9 +3,12 @@ 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
+ notesAt
8
+ } from "./chunk-52WCHTVZ.js";
6
9
  import {
7
10
  recordReadProgress
8
- } from "./chunk-HE4ZQXZM.js";
11
+ } from "./chunk-LVBPY2M6.js";
9
12
  import {
10
13
  carryOf,
11
14
  checkoutOf,
@@ -19,19 +22,19 @@ import {
19
22
  reviewedProblemsOf,
20
23
  slipNoteLines,
21
24
  writeVerifyFiles
22
- } from "./chunk-B3O52AUQ.js";
25
+ } from "./chunk-ASKDCMW5.js";
23
26
  import {
24
27
  dirSource,
25
28
  frameworkFacts,
26
29
  frameworksToLearn,
27
30
  repairFormSlips,
28
31
  verifyFacts
29
- } from "./chunk-4GZXS6S2.js";
32
+ } from "./chunk-XPWSNKF3.js";
30
33
  import {
31
34
  NoRoomError,
32
35
  roomGuard,
33
36
  streamFacts
34
- } from "./chunk-7F2RUWPU.js";
37
+ } from "./chunk-RJDP642F.js";
35
38
  import {
36
39
  factsDirOf,
37
40
  factsRelOf,
@@ -39,7 +42,7 @@ import {
39
42
  loadOrgPack,
40
43
  orgPackDirOf,
41
44
  stackHelpersOff
42
- } from "./chunk-577AJVRS.js";
45
+ } from "./chunk-JMOLB347.js";
43
46
 
44
47
  // packages/cli/dist/verify-commands.js
45
48
  import { existsSync } from "node:fs";
@@ -88,8 +91,10 @@ async function verifyAllCommand(root, o, io) {
88
91
  io.out(`Verified ${repos.length === 1 ? "1 repo" : `${repos.length} repos`}: ${passed} passed${failed.length ? `, ${failed.length} with something to fix (${failed.join(", ")})` : ""}.`);
89
92
  return failed.length ? 1 : 0;
90
93
  }
91
- async function verifyInputsOf(root, repo) {
94
+ async function verifyInputsOf(root, repo, dir) {
92
95
  return {
96
+ // ADR 0163: the org notes the read was handed, so a term's note is one of them.
97
+ notes: (await notesAt(root, repo, dir)).notes,
93
98
  corrections: await readCorrections(root, repo),
94
99
  reviewed: await readReviewed(root, repo),
95
100
  estate: await estateComponentsOf(root),
@@ -137,7 +142,7 @@ async function verifyCommand(root, repo, o, io) {
137
142
  const commit = o.commit ?? await headOf(dir);
138
143
  const source = dirSource(dir);
139
144
  const { carry, missing } = await carryOf(dir, parsed.facts, commit, o.git);
140
- const inputs = await verifyInputsOf(root, repo);
145
+ const inputs = await verifyInputsOf(root, repo, dir);
141
146
  const { corrections, reviewed, estate, conventions } = inputs;
142
147
  for (const b of corrections.bad.slice(0, SHOWN))
143
148
  io.err(`${rel}/${repo}.corrections.jsonl line ${b.line} isn't a correction: ${b.message}`);
@@ -159,7 +164,8 @@ async function verifyCommand(root, repo, o, io) {
159
164
  room,
160
165
  // J1 (ADR 0143): an exposure read here names a component the manifest lists.
161
166
  ...estate ? { estate } : {},
162
- conventions
167
+ conventions,
168
+ notes: inputs.notes
163
169
  });
164
170
  } catch (e) {
165
171
  if (!(e instanceof NoRoomError))
@@ -208,7 +214,7 @@ async function verifyCommand(root, repo, o, io) {
208
214
  if (o.json) {
209
215
  let written2;
210
216
  if (o.write && !failed) {
211
- const { writeFactsIntoCatalog: writeFactsIntoCatalog2 } = await import("./chunk-KM2FBM3T.js");
217
+ const { writeFactsIntoCatalog: writeFactsIntoCatalog2 } = await import("./chunk-KLKENMWQ.js");
212
218
  written2 = await writeFactsIntoCatalog2(root, repo, report.accepted, { dir, command: `atticus verify ${repo} --write` }, { ...io, out: () => void 0 });
213
219
  if (!written2)
214
220
  return 1;
@@ -348,7 +354,7 @@ async function verifyCommand(root, repo, o, io) {
348
354
  io.out(`When the read is complete: atticus verify ${repo} --write puts the facts in the catalog, the flows in specs/${repo}/, and renders the map.`);
349
355
  return 0;
350
356
  }
351
- const { writeFactsIntoCatalog } = await import("./chunk-KM2FBM3T.js");
357
+ const { writeFactsIntoCatalog } = await import("./chunk-KLKENMWQ.js");
352
358
  const written = await writeFactsIntoCatalog(root, repo, report.accepted, { dir, command: `atticus verify ${repo} --write`, verbose: o.verbose === true }, io);
353
359
  return written ? 0 : 1;
354
360
  }
@@ -45,10 +45,10 @@ import {
45
45
  systemKeyStore,
46
46
  undiciTransport,
47
47
  uriEncode
48
- } from "./chunk-6EDQE7GO.js";
49
- import "./chunk-5XDNUJ4P.js";
50
- import "./chunk-577AJVRS.js";
51
- import "./chunk-D3PO4DOZ.js";
48
+ } from "./chunk-GMJXC5AL.js";
49
+ import "./chunk-BKFGGJKA.js";
50
+ import "./chunk-JMOLB347.js";
51
+ import "./chunk-MMB2OHUY.js";
52
52
  import "./chunk-TV45EUGM.js";
53
53
  export {
54
54
  ANTHROPIC_SETTINGS,
@@ -9,7 +9,7 @@ import {
9
9
  namesInCode,
10
10
  openIndex,
11
11
  workspaceRepos
12
- } from "./chunk-N4QZJJVB.js";
12
+ } from "./chunk-XNRPCI23.js";
13
13
 
14
14
  // packages/cli/dist/code-tools.js
15
15
  var offered = /* @__PURE__ */ new Map();
@@ -21,7 +21,7 @@ function codeToolOptions(root) {
21
21
  codeDir: (r) => offered.get(r) ?? defaultCodeDir(root, r),
22
22
  repos: () => [.../* @__PURE__ */ new Set([...workspaceRepos(root), ...offered.keys()])].sort(),
23
23
  // Loaded on first use: the readers are large, and most commands never outline a file.
24
- outline: async (path, text) => (await import("./chunk-JQ7XQPQS.js")).declarationOutline(path, text)
24
+ outline: async (path, text) => (await import("./chunk-MKIULIUQ.js")).declarationOutline(path, text)
25
25
  };
26
26
  }
27
27
  function metarepoToolBox(root, calls) {
@@ -31,7 +31,7 @@ function metarepoToolBox(root, calls) {
31
31
  });
32
32
  }
33
33
  async function criticCodeSearch(root, names) {
34
- const x = await import("./chunk-JQ7XQPQS.js");
34
+ const x = await import("./chunk-MKIULIUQ.js");
35
35
  const r = await namesInCode(root, names, {
36
36
  ...codeToolOptions(root),
37
37
  outlines: (path) => x.syntaxLanguageOf(path) !== void 0
@@ -35,29 +35,29 @@ import {
35
35
  taskDir,
36
36
  taskPack,
37
37
  taskRunnerAgent
38
- } from "./chunk-XB5RFZHH.js";
39
- import "./chunk-IDGSU7JF.js";
40
- import "./chunk-LK44ULGI.js";
41
- import "./chunk-7YYEKTYF.js";
42
- import "./chunk-XEG3FE2R.js";
43
- import "./chunk-KC5DROFC.js";
44
- import "./chunk-RK6MKKKP.js";
45
- import "./chunk-47QE246J.js";
46
- import "./chunk-XQ3YIV5R.js";
47
- import "./chunk-MGVYVW7Q.js";
48
- import "./chunk-NGPU2ARF.js";
49
- import "./chunk-AY2IUF4K.js";
50
- import "./chunk-6JLPXDWN.js";
51
- import "./chunk-4GZXS6S2.js";
52
- import "./chunk-R4TBNKKC.js";
53
- import "./chunk-NIXVDQVO.js";
54
- import "./chunk-UR7RMZ3R.js";
55
- import "./chunk-N4QZJJVB.js";
56
- import "./chunk-PGKHJYOB.js";
57
- import "./chunk-MKRBG5EF.js";
58
- import "./chunk-5XDNUJ4P.js";
59
- import "./chunk-577AJVRS.js";
60
- import "./chunk-D3PO4DOZ.js";
38
+ } from "./chunk-7HWXYP4H.js";
39
+ import "./chunk-EI4KQYJ3.js";
40
+ import "./chunk-6RGIM2ZH.js";
41
+ import "./chunk-PQW7PYUR.js";
42
+ import "./chunk-SKMHS4CL.js";
43
+ import "./chunk-EV4TEFOD.js";
44
+ import "./chunk-6N2GUZMZ.js";
45
+ import "./chunk-T6ESD5KM.js";
46
+ import "./chunk-3LU6YCSQ.js";
47
+ import "./chunk-L7I5PKGD.js";
48
+ import "./chunk-CAN3EBE5.js";
49
+ import "./chunk-IILZ7J3L.js";
50
+ import "./chunk-TEBBD4XH.js";
51
+ import "./chunk-XPWSNKF3.js";
52
+ import "./chunk-WIMOJMAK.js";
53
+ import "./chunk-5V5BJACL.js";
54
+ import "./chunk-GVFUEGGM.js";
55
+ import "./chunk-XNRPCI23.js";
56
+ import "./chunk-XZJE6WIT.js";
57
+ import "./chunk-FMRMTI7W.js";
58
+ import "./chunk-BKFGGJKA.js";
59
+ import "./chunk-JMOLB347.js";
60
+ import "./chunk-MMB2OHUY.js";
61
61
  import "./chunk-TV45EUGM.js";
62
62
  export {
63
63
  BuildAttempt,
@@ -5,13 +5,13 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  conformanceCommand
8
- } from "./chunk-XRO65C7V.js";
9
- import "./chunk-PIVKU64W.js";
10
- import "./chunk-NGPU2ARF.js";
11
- import "./chunk-UR7RMZ3R.js";
12
- import "./chunk-MKRBG5EF.js";
13
- import "./chunk-577AJVRS.js";
14
- import "./chunk-D3PO4DOZ.js";
8
+ } from "./chunk-3DDJLI7N.js";
9
+ import "./chunk-7J7UY46S.js";
10
+ import "./chunk-CAN3EBE5.js";
11
+ import "./chunk-GVFUEGGM.js";
12
+ import "./chunk-FMRMTI7W.js";
13
+ import "./chunk-JMOLB347.js";
14
+ import "./chunk-MMB2OHUY.js";
15
15
  import "./chunk-TV45EUGM.js";
16
16
  export {
17
17
  conformanceCommand
@@ -5,34 +5,34 @@ 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-67J3VZBA.js";
9
- import "./chunk-P3TKKBAH.js";
8
+ } from "./chunk-JEUXCIRD.js";
9
+ import "./chunk-BUWSOQLU.js";
10
10
  import {
11
11
  MAX_CHAIN_DEPTH,
12
12
  changeImpact,
13
13
  loadEstate
14
- } from "./chunk-KC5DROFC.js";
15
- import "./chunk-RK6MKKKP.js";
16
- import "./chunk-47QE246J.js";
17
- import "./chunk-XQ3YIV5R.js";
18
- import "./chunk-MGVYVW7Q.js";
19
- import "./chunk-NGPU2ARF.js";
20
- import "./chunk-AY2IUF4K.js";
21
- import "./chunk-6JLPXDWN.js";
22
- import "./chunk-4GZXS6S2.js";
23
- import "./chunk-R4TBNKKC.js";
24
- import "./chunk-NIXVDQVO.js";
25
- import "./chunk-UR7RMZ3R.js";
26
- import "./chunk-N4QZJJVB.js";
14
+ } from "./chunk-EV4TEFOD.js";
15
+ import "./chunk-6N2GUZMZ.js";
16
+ import "./chunk-T6ESD5KM.js";
17
+ import "./chunk-3LU6YCSQ.js";
18
+ import "./chunk-L7I5PKGD.js";
19
+ import "./chunk-CAN3EBE5.js";
20
+ import "./chunk-IILZ7J3L.js";
21
+ import "./chunk-TEBBD4XH.js";
22
+ import "./chunk-XPWSNKF3.js";
23
+ import "./chunk-WIMOJMAK.js";
24
+ import "./chunk-5V5BJACL.js";
25
+ import "./chunk-GVFUEGGM.js";
26
+ import "./chunk-XNRPCI23.js";
27
27
  import {
28
28
  loadRepos
29
- } from "./chunk-PGKHJYOB.js";
30
- import "./chunk-MKRBG5EF.js";
31
- import "./chunk-5XDNUJ4P.js";
29
+ } from "./chunk-XZJE6WIT.js";
30
+ import "./chunk-FMRMTI7W.js";
31
+ import "./chunk-BKFGGJKA.js";
32
32
  import {
33
33
  readTeams
34
- } from "./chunk-577AJVRS.js";
35
- import "./chunk-D3PO4DOZ.js";
34
+ } from "./chunk-JMOLB347.js";
35
+ import "./chunk-MMB2OHUY.js";
36
36
  import "./chunk-TV45EUGM.js";
37
37
 
38
38
  // packages/cli/dist/change-impact.js