@maycombhq/atticus 2.0.0-beta.24 → 2.0.0-beta.26

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 (277) hide show
  1. package/dist/bin.js +3 -3
  2. package/dist/{chunk-YA2IJJ6N.js → chunk-2FTHLB2H.js} +5 -5
  3. package/dist/{chunk-QPLNB2BM.js → chunk-2GT47PWU.js} +4 -4
  4. package/dist/{chunk-25CUJJTP.js → chunk-2HDNOUJU.js} +56 -19
  5. package/dist/{chunk-IUBBEU6O.js → chunk-2IO6XH37.js} +11 -11
  6. package/dist/{chunk-SGYQORAD.js → chunk-2JT4QV3Q.js} +3 -3
  7. package/dist/{chunk-W4EG25TI.js → chunk-2SCZZQNQ.js} +7 -7
  8. package/dist/{chunk-NQDHRT2H.js → chunk-2XIIUXGX.js} +13 -13
  9. package/dist/{chunk-RSKMV3VC.js → chunk-3D74UADA.js} +1 -1
  10. package/dist/chunk-3FFIDQQB.js +42 -0
  11. package/dist/{chunk-X7HFXXTZ.js → chunk-3GEAUW62.js} +13 -13
  12. package/dist/{chunk-TXYMNKGM.js → chunk-3KIMLBGZ.js} +5 -5
  13. package/dist/{chunk-GKZDHXC2.js → chunk-3KP7OOJ4.js} +8 -8
  14. package/dist/{chunk-LBG4GMOR.js → chunk-43OWNS5N.js} +4 -4
  15. package/dist/{chunk-NTEPBOAF.js → chunk-4DHYXODN.js} +4 -4
  16. package/dist/chunk-4N5W7LYW.js +41 -0
  17. package/dist/{chunk-MUY5MAGM.js → chunk-4NWE2KY3.js} +12 -12
  18. package/dist/{chunk-5FUFVNXB.js → chunk-5A4RHEEL.js} +2 -2
  19. package/dist/{chunk-NTOPAOBY.js → chunk-5JGRF53S.js} +3 -3
  20. package/dist/{chunk-G3W7GNEP.js → chunk-5UIGGXA5.js} +18 -18
  21. package/dist/{chunk-QGBS4GMS.js → chunk-63572EFC.js} +13 -13
  22. package/dist/{chunk-BFQ5IKQA.js → chunk-64LSDT3D.js} +11 -11
  23. package/dist/{chunk-3VS7RNEB.js → chunk-6EMJ4XFC.js} +18 -18
  24. package/dist/{chunk-XERIHPBF.js → chunk-6P67IUET.js} +9 -9
  25. package/dist/{chunk-FDL2JOLB.js → chunk-6SIGGA37.js} +23 -23
  26. package/dist/{chunk-NC56V6KQ.js → chunk-6TZ4YRGJ.js} +5 -5
  27. package/dist/{chunk-ESJALLOK.js → chunk-6U65YB54.js} +3 -3
  28. package/dist/{chunk-GJVCBTSO.js → chunk-6ZDAEUKB.js} +798 -175
  29. package/dist/{chunk-5EIKOU7L.js → chunk-723OQZ3N.js} +5 -5
  30. package/dist/{chunk-XXRBAJ36.js → chunk-76AHTJVY.js} +13 -13
  31. package/dist/{chunk-BYKWWSXL.js → chunk-7AEB74KW.js} +6 -6
  32. package/dist/{chunk-JMH6TCZJ.js → chunk-7IWMRZRI.js} +21 -21
  33. package/dist/{chunk-JUHZBZPZ.js → chunk-7JZONWAA.js} +7 -7
  34. package/dist/chunk-7NVLGPER.js +45 -0
  35. package/dist/{chunk-ZCU2UY47.js → chunk-7ZBYRMWK.js} +23 -23
  36. package/dist/{chunk-6FIYEB7M.js → chunk-A6LGX56J.js} +23 -23
  37. package/dist/{chunk-UWJOM457.js → chunk-ACY3U2RD.js} +4 -4
  38. package/dist/chunk-AHACUPGL.js +46 -0
  39. package/dist/{chunk-YUJTOALL.js → chunk-ANFBBJEV.js} +19 -19
  40. package/dist/{chunk-D5CJEKZI.js → chunk-B3JHERXM.js} +3 -3
  41. package/dist/{chunk-MQFSEGTU.js → chunk-B7KGNEFI.js} +135 -31
  42. package/dist/{chunk-2ITYURTR.js → chunk-BABRMZET.js} +3 -3
  43. package/dist/{chunk-OYTSRNSZ.js → chunk-BD7HBZLP.js} +6 -6
  44. package/dist/{chunk-CCQZN6W3.js → chunk-BEEHCL5O.js} +34 -34
  45. package/dist/{chunk-JCG2EBNB.js → chunk-BGOAJFPB.js} +1 -1
  46. package/dist/{chunk-MVXMISNA.js → chunk-BIAQ6NQS.js} +7 -7
  47. package/dist/{chunk-GS7N3RFG.js → chunk-BIKMME4S.js} +30 -25
  48. package/dist/{chunk-4DCIUKIE.js → chunk-BIWNRS5I.js} +26 -14
  49. package/dist/{chunk-QOC3Q4UU.js → chunk-BSZII65X.js} +3 -3
  50. package/dist/{chunk-7U46TCRZ.js → chunk-BV2BZIUF.js} +19 -19
  51. package/dist/{chunk-FFDVAV56.js → chunk-C3TBDX7Y.js} +23 -23
  52. package/dist/{chunk-ASFRT33J.js → chunk-CFK6CFXM.js} +9 -9
  53. package/dist/{chunk-DF6DPCW2.js → chunk-CG6MG7SE.js} +11 -11
  54. package/dist/{chunk-M3RWF7MC.js → chunk-CNEOKSTO.js} +27 -27
  55. package/dist/{chunk-JFBVIMGY.js → chunk-CNT6T2JM.js} +13 -13
  56. package/dist/{chunk-MPATOMY5.js → chunk-CPE7HLIK.js} +15 -15
  57. package/dist/{chunk-WECCLSYY.js → chunk-CSHJZFOE.js} +229 -32
  58. package/dist/{chunk-XKNISZ6N.js → chunk-CUTMM4NY.js} +16 -16
  59. package/dist/{chunk-NOU5IBLM.js → chunk-CWLXVRFH.js} +5 -5
  60. package/dist/{chunk-MWN7CBVL.js → chunk-D4TW3PUO.js} +4 -4
  61. package/dist/{chunk-QJ3AYXVO.js → chunk-D5H3RZNE.js} +13 -13
  62. package/dist/{chunk-XPXOKHNZ.js → chunk-DARX3ATP.js} +11 -11
  63. package/dist/{chunk-L3PIN47C.js → chunk-DASVVML7.js} +5 -5
  64. package/dist/{chunk-37UTWGU4.js → chunk-DB3NWAU3.js} +4 -4
  65. package/dist/{chunk-DCQSPSXU.js → chunk-DB6TDJ4T.js} +19 -19
  66. package/dist/{chunk-CCQWQFOT.js → chunk-DG7KYZAL.js} +18 -18
  67. package/dist/{chunk-FL53R4SW.js → chunk-DHQXCP2X.js} +5 -2
  68. package/dist/{chunk-6UTD5RQH.js → chunk-DJBXXYYA.js} +11 -11
  69. package/dist/{chunk-PZBNDFZ7.js → chunk-DOU52XFZ.js} +40 -20
  70. package/dist/{chunk-BWYW533C.js → chunk-DPH4BS3F.js} +10 -10
  71. package/dist/{chunk-LAGZBQHK.js → chunk-DS5M2J2H.js} +13 -13
  72. package/dist/chunk-DWD6BKHG.js +52 -0
  73. package/dist/{chunk-2JHE75RW.js → chunk-DXBXZNKV.js} +10 -10
  74. package/dist/{chunk-HXFZX2BI.js → chunk-DXLWZ3BJ.js} +9 -9
  75. package/dist/{chunk-EUMXLSW5.js → chunk-E5NHFHGC.js} +5 -5
  76. package/dist/{chunk-U37ZOYJJ.js → chunk-EECFUQP3.js} +109 -15
  77. package/dist/{chunk-66DWUSNY.js → chunk-EEVSFGIU.js} +21 -21
  78. package/dist/{chunk-3XCCT2GR.js → chunk-ELR7DEQM.js} +156 -110
  79. package/dist/chunk-EN3N6LNU.js +52 -0
  80. package/dist/{chunk-FGW5TLGM.js → chunk-EQMNMG6X.js} +11 -11
  81. package/dist/{chunk-AWDCVZYO.js → chunk-ET7SPOBA.js} +6 -6
  82. package/dist/{chunk-ZIAYNHHE.js → chunk-EUTZTJIO.js} +32 -15
  83. package/dist/{chunk-4CS3PMIM.js → chunk-EVKDWJ5Y.js} +5 -5
  84. package/dist/{chunk-ANUMIPF6.js → chunk-EY3OVHNC.js} +21 -21
  85. package/dist/{chunk-UXO25YBN.js → chunk-F4EGHECF.js} +3 -3
  86. package/dist/{chunk-YHWX5LPT.js → chunk-F6GRBF5L.js} +22 -22
  87. package/dist/{chunk-KYO5HT4G.js → chunk-FIZ5LYL2.js} +13 -13
  88. package/dist/{chunk-JVMNEI7B.js → chunk-FOOU5OJE.js} +3 -3
  89. package/dist/{chunk-RQSUFGU2.js → chunk-FWQDH5NK.js} +25 -25
  90. package/dist/{chunk-IRXZKKCG.js → chunk-FYCN2Y5P.js} +16 -16
  91. package/dist/{chunk-BQXAHIZ6.js → chunk-GAJBMPWC.js} +8 -8
  92. package/dist/{chunk-ZJ2W2RDE.js → chunk-GFFTVQ7R.js} +6 -6
  93. package/dist/chunk-GHCFWIUW.js +38 -0
  94. package/dist/{chunk-4MNMOUU7.js → chunk-GHST3KAB.js} +4 -4
  95. package/dist/{chunk-UKRJ2ISN.js → chunk-GJSLO2E2.js} +4 -4
  96. package/dist/{chunk-XNW3EDCY.js → chunk-GNFZ227W.js} +3 -3
  97. package/dist/{chunk-CI4D6VSU.js → chunk-GSIJWDXH.js} +19 -19
  98. package/dist/{chunk-432FGEVB.js → chunk-GXJ2PSDW.js} +8 -8
  99. package/dist/{chunk-CKRPMRFQ.js → chunk-H26T2LQL.js} +26 -26
  100. package/dist/{chunk-G67GOK4S.js → chunk-H5BIVULF.js} +7 -7
  101. package/dist/{chunk-4RKIOUPA.js → chunk-H7CSCA73.js} +5 -5
  102. package/dist/{chunk-HYHV2P3G.js → chunk-HCC5547C.js} +12 -12
  103. package/dist/{chunk-SUAHNYNQ.js → chunk-HLDUWEO7.js} +16 -16
  104. package/dist/{chunk-HI7ADE4E.js → chunk-HNNMT5L2.js} +1 -1
  105. package/dist/{chunk-DIYNRYXW.js → chunk-HQMLY2R6.js} +2 -2
  106. package/dist/{chunk-RSHVSXPJ.js → chunk-HSJKYDHI.js} +5 -5
  107. package/dist/{chunk-SLGUSFOD.js → chunk-HV6PXXK7.js} +3 -3
  108. package/dist/{chunk-77AZRGWE.js → chunk-HVOE7ZW2.js} +16 -16
  109. package/dist/{chunk-B63NWU3P.js → chunk-HVWPN2RY.js} +13 -13
  110. package/dist/{chunk-CU7ZK7KP.js → chunk-HWPX3T55.js} +15 -15
  111. package/dist/{chunk-5FPAKAGE.js → chunk-I2EWY3MG.js} +3 -3
  112. package/dist/{chunk-OCU5S2XG.js → chunk-I72PEROE.js} +4 -4
  113. package/dist/{chunk-J4K4C4T5.js → chunk-IBIIKUC7.js} +14 -19
  114. package/dist/{chunk-LDKP7OWQ.js → chunk-IDRCBMJF.js} +29 -29
  115. package/dist/{chunk-L6Z6TMIK.js → chunk-IEIHVMM6.js} +15 -8
  116. package/dist/{chunk-ABDE5IRC.js → chunk-IERXBWQU.js} +17 -17
  117. package/dist/{chunk-D5ZC7IMC.js → chunk-IFQJ3YQE.js} +4 -4
  118. package/dist/{chunk-U66RQUFC.js → chunk-IH6BYFMH.js} +5 -5
  119. package/dist/{chunk-A53IYUCR.js → chunk-IJN5PSDU.js} +16 -16
  120. package/dist/{chunk-LTIXFLYE.js → chunk-IL7PVMUO.js} +6 -6
  121. package/dist/{chunk-ZSNNF26J.js → chunk-IP6ARMZU.js} +21 -21
  122. package/dist/{chunk-SUYC5NP6.js → chunk-ISCX25D7.js} +21 -21
  123. package/dist/{chunk-CFSBBLDD.js → chunk-IYEET4VM.js} +24 -24
  124. package/dist/{chunk-775FMPUB.js → chunk-IZIGZ7KY.js} +4 -4
  125. package/dist/{chunk-SWSGRRNO.js → chunk-JJEXMHNZ.js} +5 -5
  126. package/dist/{chunk-5QF5W5P2.js → chunk-JLTJAOO4.js} +5 -5
  127. package/dist/{chunk-3UMKLB6P.js → chunk-K2NQTROJ.js} +5 -5
  128. package/dist/{chunk-GXQYEIYM.js → chunk-K35VNKJH.js} +6 -6
  129. package/dist/{chunk-CZ75S2EZ.js → chunk-K3QKOVZN.js} +6 -6
  130. package/dist/{chunk-IK6LHW3E.js → chunk-KAWWXCPI.js} +3 -3
  131. package/dist/{chunk-T5NH5L7A.js → chunk-KFJMQUSK.js} +13 -13
  132. package/dist/{chunk-CFSHLQPK.js → chunk-KFZ5IXEZ.js} +25 -25
  133. package/dist/{chunk-3FGQFDS4.js → chunk-KJD4DLRZ.js} +19 -19
  134. package/dist/{chunk-3BEGKSDW.js → chunk-KL7UHAOR.js} +9 -9
  135. package/dist/{chunk-FFYOZ7PF.js → chunk-KS2IQYTZ.js} +9 -9
  136. package/dist/{chunk-H7KERB6Q.js → chunk-KUEG2Y7M.js} +6 -6
  137. package/dist/{chunk-532HDXMM.js → chunk-KZ4I5M2X.js} +7 -7
  138. package/dist/{chunk-PB3NCPRF.js → chunk-KZH5YV6J.js} +6 -6
  139. package/dist/{chunk-5ORLKITZ.js → chunk-LBBI5P5G.js} +22 -22
  140. package/dist/{chunk-HRYI22QU.js → chunk-LCRQPWTC.js} +16 -16
  141. package/dist/chunk-LH4WAJLC.js +45 -0
  142. package/dist/{chunk-BBZ6UKN3.js → chunk-LHN5UCXD.js} +3 -3
  143. package/dist/{chunk-PIPYJTIL.js → chunk-LTOBNBJ6.js} +24 -24
  144. package/dist/{chunk-R6CJOMPC.js → chunk-LY7DOYX2.js} +13 -13
  145. package/dist/{chunk-QFDPX6C4.js → chunk-LZFKJ2BR.js} +4 -0
  146. package/dist/chunk-M5IQUWJR.js +59 -0
  147. package/dist/{chunk-3TGX4SJ3.js → chunk-MCORC2LG.js} +5 -5
  148. package/dist/{chunk-G3ZFEHCX.js → chunk-MEMEO7YO.js} +88 -25
  149. package/dist/{chunk-VE2T5URA.js → chunk-MGNO4Q6V.js} +23 -23
  150. package/dist/{chunk-RRKM3GJA.js → chunk-MKUBDKE2.js} +24 -24
  151. package/dist/{chunk-Z5YDTIWQ.js → chunk-MM7JSMLW.js} +13 -13
  152. package/dist/{chunk-MZWM73S2.js → chunk-MQ6HP2TU.js} +6 -6
  153. package/dist/{chunk-QYFNVQLK.js → chunk-MTIRNHRJ.js} +1 -1
  154. package/dist/{chunk-5Z7L2TSR.js → chunk-MY3LDBMR.js} +3 -3
  155. package/dist/chunk-MZ6GOFRF.js +55 -0
  156. package/dist/{chunk-RQAMZVWW.js → chunk-MZXDSAKW.js} +9 -9
  157. package/dist/{chunk-RU5W7JJQ.js → chunk-N2AW2DHF.js} +24 -24
  158. package/dist/chunk-N35Y5HZO.js +47 -0
  159. package/dist/{chunk-OKSRK2LJ.js → chunk-NCZS2BN2.js} +18 -18
  160. package/dist/{chunk-ZX6RAGE6.js → chunk-NECDBPFP.js} +10 -10
  161. package/dist/{chunk-UI6KNLSO.js → chunk-NHFMLMLN.js} +12 -12
  162. package/dist/{chunk-O4ZWZZZT.js → chunk-NMCPIYTF.js} +5 -5
  163. package/dist/{chunk-TBQHBOFF.js → chunk-NMURRF5F.js} +9 -9
  164. package/dist/{chunk-BTS56NV7.js → chunk-NP3PG6OI.js} +37 -34
  165. package/dist/{chunk-EPQQ2XVM.js → chunk-NQDVD2YR.js} +10 -10
  166. package/dist/{chunk-OSWOIFRQ.js → chunk-NVVEVP5O.js} +5 -5
  167. package/dist/{chunk-A3NUZJFI.js → chunk-OH2OHNB5.js} +3 -3
  168. package/dist/{chunk-IOHRX4KF.js → chunk-OI32KTDM.js} +18 -14
  169. package/dist/{chunk-ZSD75FYI.js → chunk-OXCHO2QS.js} +19 -19
  170. package/dist/{chunk-LKUTBQ2Y.js → chunk-P6DM2EFI.js} +6 -6
  171. package/dist/{chunk-OYKNPZCV.js → chunk-P6EJNPFF.js} +224 -180
  172. package/dist/{chunk-HWNFFCGB.js → chunk-PBDIVTFL.js} +3 -3
  173. package/dist/chunk-PFWP624T.js +278 -0
  174. package/dist/{chunk-3XZRYQWU.js → chunk-PGDVJWCI.js} +32 -32
  175. package/dist/{chunk-DIXA74N7.js → chunk-PLSCWC2V.js} +4 -4
  176. package/dist/chunk-PR6Z5L7W.js +67 -0
  177. package/dist/{chunk-LOCJHNZI.js → chunk-PXDAGXQN.js} +9 -9
  178. package/dist/{chunk-JJ4SCGRJ.js → chunk-PZFZPHCT.js} +7 -7
  179. package/dist/{chunk-TKE6ZJMM.js → chunk-Q3RKXK5Z.js} +25 -25
  180. package/dist/{chunk-GFYVVTKH.js → chunk-QAFQLILX.js} +6 -6
  181. package/dist/{chunk-WWSCJBF6.js → chunk-QQAWI5LD.js} +13 -13
  182. package/dist/{chunk-ZRQHSMPK.js → chunk-QXCGRQGO.js} +5 -5
  183. package/dist/{chunk-EHF2MBGR.js → chunk-R2FUFBHW.js} +3 -3
  184. package/dist/{chunk-AM7PYKVP.js → chunk-RBO4A7TC.js} +11 -11
  185. package/dist/{chunk-ETQSQ2EC.js → chunk-RCLBIJRN.js} +5 -5
  186. package/dist/{chunk-HNPKCRCE.js → chunk-RK5P2DWD.js} +1375 -210
  187. package/dist/{chunk-WAAPMZWO.js → chunk-RO6BE7ZS.js} +5 -5
  188. package/dist/{chunk-YF6N45QN.js → chunk-RQM5Y3HJ.js} +1 -1
  189. package/dist/{chunk-QXXEO4TF.js → chunk-RTCZKKG7.js} +3 -3
  190. package/dist/{chunk-QIDSEHJA.js → chunk-SAPX3PVK.js} +8 -8
  191. package/dist/{chunk-5PSKLTBR.js → chunk-SDHGFMES.js} +3 -3
  192. package/dist/{chunk-GQFUEUC7.js → chunk-SRB54QGX.js} +17 -17
  193. package/dist/{chunk-UCFNHK5L.js → chunk-STBJ6SVJ.js} +21 -21
  194. package/dist/{chunk-MCE74XMF.js → chunk-SZDOBIWE.js} +6 -6
  195. package/dist/{chunk-F63F4NKT.js → chunk-TLBPTUFU.js} +17 -17
  196. package/dist/{chunk-JLYH2QOE.js → chunk-TPKJD42W.js} +6 -6
  197. package/dist/{chunk-3NS4RS3C.js → chunk-TQG2DDWH.js} +19 -19
  198. package/dist/{chunk-CNF2EZ6S.js → chunk-TYN5SG5H.js} +119 -119
  199. package/dist/{chunk-SYLXQNPC.js → chunk-U3JXMY56.js} +23 -23
  200. package/dist/chunk-U3RGBYXE.js +62 -0
  201. package/dist/{chunk-A4VDFIMR.js → chunk-UAYU6K24.js} +13 -13
  202. package/dist/{chunk-LIQWFDOZ.js → chunk-UBEFT3MQ.js} +5 -5
  203. package/dist/{chunk-IJQHBK76.js → chunk-UFIQ5FWY.js} +1 -1
  204. package/dist/{chunk-IWPO5AUT.js → chunk-UIYPX2BA.js} +24 -24
  205. package/dist/{chunk-XNH5ZWIA.js → chunk-UJ5ZJS4B.js} +19 -19
  206. package/dist/chunk-URZKIL37.js +42 -0
  207. package/dist/{chunk-5MKV4TV6.js → chunk-UTZMF5CV.js} +1 -1
  208. package/dist/{chunk-YB5AKYVQ.js → chunk-UWBPC5XH.js} +6 -6
  209. package/dist/{chunk-6OZAQPU5.js → chunk-UXVKFOMC.js} +29 -5
  210. package/dist/{chunk-HRHXTLUM.js → chunk-UZBLVNW6.js} +15 -15
  211. package/dist/{chunk-JYJMIAFS.js → chunk-V3M4VFUB.js} +5 -5
  212. package/dist/{chunk-DCRZ3OQ7.js → chunk-V5FT3MZG.js} +6 -6
  213. package/dist/{chunk-KIY2WCN7.js → chunk-V5ZKGBYL.js} +4 -4
  214. package/dist/{chunk-MMOMKHAX.js → chunk-VCXFMXMX.js} +5 -5
  215. package/dist/{chunk-YLZNTVZR.js → chunk-VGGSHDQU.js} +8 -8
  216. package/dist/{chunk-A6ZG3UOS.js → chunk-VIQHZA53.js} +6 -6
  217. package/dist/{chunk-MT3FNSXO.js → chunk-VJO7M34N.js} +2 -2
  218. package/dist/{chunk-4DX4DIND.js → chunk-VPQUFIE7.js} +8 -8
  219. package/dist/{chunk-TAR6T2RE.js → chunk-VTR4AC2U.js} +3 -3
  220. package/dist/{chunk-6TNQO76I.js → chunk-VUSYN4R4.js} +6 -6
  221. package/dist/{chunk-HGDBM3A5.js → chunk-W4SMKUAK.js} +2 -2
  222. package/dist/chunk-W7HNZDHB.js +71 -0
  223. package/dist/{chunk-U2JTTRKS.js → chunk-WH3ZFLXT.js} +7 -7
  224. package/dist/{chunk-IB66ZLDN.js → chunk-WLA2JZ2K.js} +5 -5
  225. package/dist/{chunk-H5EQOSTC.js → chunk-WM4EMP7T.js} +39 -39
  226. package/dist/{chunk-E7YDJH6B.js → chunk-WT6EXYEY.js} +10 -10
  227. package/dist/{chunk-JCEYOSST.js → chunk-WYO4L4NU.js} +4 -4
  228. package/dist/{chunk-GCMDDVIE.js → chunk-XDLMQL5A.js} +44 -11
  229. package/dist/{chunk-U57VLY6X.js → chunk-XEWFVHOT.js} +21 -21
  230. package/dist/{chunk-44QUCNPH.js → chunk-XI3GPYP4.js} +5 -5
  231. package/dist/{chunk-MDTAZ6NE.js → chunk-XIGVTH24.js} +12 -12
  232. package/dist/{chunk-OSZTENIA.js → chunk-XIJBQM45.js} +3 -3
  233. package/dist/{chunk-NN6AXKFX.js → chunk-XT3ZW7C7.js} +16 -16
  234. package/dist/{chunk-LELM7X5H.js → chunk-YEHSJY6B.js} +8 -8
  235. package/dist/{chunk-7HWCEDPX.js → chunk-YIOYKA4V.js} +5 -5
  236. package/dist/{chunk-ROWZYQOI.js → chunk-YJBD5NDV.js} +6 -6
  237. package/dist/{chunk-PUMNCWHJ.js → chunk-YLXPJWNO.js} +14 -14
  238. package/dist/{chunk-NX5IPHI3.js → chunk-YWQZ7CCW.js} +13 -13
  239. package/dist/{chunk-DH3EQMIA.js → chunk-YXKCE5BA.js} +4 -4
  240. package/dist/{chunk-D63NU53X.js → chunk-YYV276DM.js} +19 -19
  241. package/dist/{chunk-GQPP4P2E.js → chunk-YYZWSVIS.js} +17 -17
  242. package/dist/{chunk-RYY554OA.js → chunk-Z33UNTHI.js} +6 -6
  243. package/dist/{chunk-Q5QSWV2R.js → chunk-ZA2PWNR3.js} +13 -13
  244. package/dist/{chunk-T24TBI7F.js → chunk-ZAMSF2DF.js} +23 -23
  245. package/dist/{chunk-MOWUP33K.js → chunk-ZDA72732.js} +3 -3
  246. package/dist/{chunk-ENZ3PI7L.js → chunk-ZFEOIYK5.js} +3 -3
  247. package/dist/{chunk-YDDLVBQ4.js → chunk-ZFLBWL2G.js} +3 -3
  248. package/dist/{chunk-QK6CGRKK.js → chunk-ZLBUFK7L.js} +5 -5
  249. package/dist/{chunk-LIB6AUZS.js → chunk-ZNYSBQIA.js} +5 -5
  250. package/dist/{chunk-OTUBMKSG.js → chunk-ZQGFZJH5.js} +4 -4
  251. package/dist/{chunk-AAY6VPPO.js → chunk-ZWMHL346.js} +17 -17
  252. package/dist/{chunk-BLVFHN3C.js → chunk-ZYLGEWTC.js} +39 -39
  253. package/dist/files.json +551 -551
  254. package/dist/packages/sdk/npm/index.js +183 -30
  255. package/dist/packages/ui/dist/assets/{elk-api--rH6Kdl4.js → elk-api-BdXSPeBO.js} +2 -2
  256. package/dist/packages/ui/dist/assets/index-DRSUhpFi.css +1 -0
  257. package/dist/packages/ui/dist/assets/index-RZe5iotJ.js +63 -0
  258. package/dist/packages/ui/dist/index.html +2 -2
  259. package/package.json +3 -3
  260. package/dist/chunk-26AB2WNW.js +0 -62
  261. package/dist/chunk-C7BB6IQT.js +0 -147
  262. package/dist/chunk-DD2AXECF.js +0 -41
  263. package/dist/chunk-DYDNW4O6.js +0 -52
  264. package/dist/chunk-EEKQI3U4.js +0 -45
  265. package/dist/chunk-FYWLB7PO.js +0 -38
  266. package/dist/chunk-L27KUL5B.js +0 -38
  267. package/dist/chunk-MA6UK7GX.js +0 -42
  268. package/dist/chunk-NBZ7RKX3.js +0 -46
  269. package/dist/chunk-OYZ64UMQ.js +0 -67
  270. package/dist/chunk-PIPJZIJE.js +0 -47
  271. package/dist/chunk-Q2ULHBCJ.js +0 -59
  272. package/dist/chunk-QVF4KYIO.js +0 -71
  273. package/dist/chunk-T2HXLDY3.js +0 -55
  274. package/dist/chunk-TKEXS74L.js +0 -52
  275. package/dist/chunk-WQDJGNJQ.js +0 -45
  276. package/dist/packages/ui/dist/assets/index-Bf2immpE.css +0 -1
  277. package/dist/packages/ui/dist/assets/index-CH4nGIW3.js +0 -62
@@ -5,12 +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
  targetFlowsOf
8
- } from "./chunk-L6Z6TMIK.js";
8
+ } from "./chunk-IEIHVMM6.js";
9
9
  import {
10
10
  withFileLock
11
- } from "./chunk-QOC3Q4UU.js";
12
- import "./chunk-RSHVSXPJ.js";
11
+ } from "./chunk-BSZII65X.js";
12
+ import "./chunk-HSJKYDHI.js";
13
13
  import {
14
+ Stroke,
14
15
  TARGET_DIR,
15
16
  applyStroke,
16
17
  endpointKey,
@@ -18,40 +19,45 @@ import {
18
19
  planSketchWrite,
19
20
  readDeltas,
20
21
  writeSketch
21
- } from "./chunk-WECCLSYY.js";
22
- import "./chunk-5FUFVNXB.js";
23
- import "./chunk-A6ZG3UOS.js";
22
+ } from "./chunk-CSHJZFOE.js";
23
+ import "./chunk-5A4RHEEL.js";
24
+ import "./chunk-VIQHZA53.js";
24
25
  import {
25
26
  changeFolder
26
- } from "./chunk-U2JTTRKS.js";
27
- import "./chunk-5MKV4TV6.js";
28
- import "./chunk-ESJALLOK.js";
29
- import "./chunk-MCE74XMF.js";
30
- import "./chunk-25CUJJTP.js";
31
- import "./chunk-HNPKCRCE.js";
32
- import "./chunk-CZ75S2EZ.js";
33
- import "./chunk-GFYVVTKH.js";
27
+ } from "./chunk-WH3ZFLXT.js";
28
+ import "./chunk-UTZMF5CV.js";
29
+ import "./chunk-6U65YB54.js";
30
+ import "./chunk-SZDOBIWE.js";
31
+ import "./chunk-2HDNOUJU.js";
32
+ import "./chunk-RK5P2DWD.js";
33
+ import "./chunk-K3QKOVZN.js";
34
+ import "./chunk-QAFQLILX.js";
34
35
  import {
35
36
  labelText,
36
37
  readDrawio
37
- } from "./chunk-DIYNRYXW.js";
38
- import "./chunk-5FPAKAGE.js";
39
- import "./chunk-IJQHBK76.js";
40
- import "./chunk-MOWUP33K.js";
38
+ } from "./chunk-HQMLY2R6.js";
39
+ import "./chunk-I2EWY3MG.js";
40
+ import "./chunk-UFIQ5FWY.js";
41
+ import "./chunk-ZDA72732.js";
41
42
  import "./chunk-QA4O2GGC.js";
42
- import "./chunk-OSZTENIA.js";
43
+ import "./chunk-XIJBQM45.js";
43
44
  import {
44
45
  changesRelOf
45
- } from "./chunk-GJVCBTSO.js";
46
- import "./chunk-G3ZFEHCX.js";
47
- import "./chunk-QFDPX6C4.js";
46
+ } from "./chunk-6ZDAEUKB.js";
47
+ import "./chunk-MEMEO7YO.js";
48
+ import "./chunk-LZFKJ2BR.js";
48
49
  import "./chunk-CTJHEG6A.js";
49
- import "./chunk-BQGDB6ZL.js";
50
- import "./chunk-TV45EUGM.js";
50
+ import {
51
+ require_dist
52
+ } from "./chunk-BQGDB6ZL.js";
53
+ import {
54
+ __toESM
55
+ } from "./chunk-TV45EUGM.js";
51
56
 
52
57
  // packages/cli/dist/change-sketch.js
53
58
  import { readFile } from "node:fs/promises";
54
59
  import { basename, extname, join } from "node:path";
60
+ var import_yaml = __toESM(require_dist(), 1);
55
61
  var METHODS = /* @__PURE__ */ new Set(["GET", "POST", "PUT", "PATCH", "DELETE", "HEAD", "OPTIONS"]);
56
62
  function lineParts(text) {
57
63
  const toks = text.trim().split(/\s+/).filter(Boolean);
@@ -123,6 +129,91 @@ function readMermaidSketch(text) {
123
129
  }
124
130
  return { lines, problems };
125
131
  }
132
+ function readStrokesFile(text, name) {
133
+ let doc;
134
+ try {
135
+ doc = /\.json$/i.test(name) ? JSON.parse(text) : (0, import_yaml.parse)(text);
136
+ } catch (e) {
137
+ return {
138
+ strokes: [],
139
+ problems: [`${name} doesn't read: ${e.message.split("\n")[0]}`]
140
+ };
141
+ }
142
+ const list = Array.isArray(doc) ? doc : doc && typeof doc === "object" && Array.isArray(doc.strokes) ? doc.strokes : void 0;
143
+ if (!list)
144
+ return {
145
+ strokes: [],
146
+ problems: [`${name} has no strokes: write a list of strokes, or strokes: [ ... ].`]
147
+ };
148
+ const strokes = [];
149
+ const problems = [];
150
+ list.forEach((raw, i) => {
151
+ const s = Stroke.safeParse(raw);
152
+ if (s.success)
153
+ strokes.push({ stroke: s.data, at: `stroke ${i + 1}` });
154
+ else
155
+ problems.push(`stroke ${i + 1}: isn't a stroke Atticus draws: ${s.error.issues.map((x) => `${x.path.join(".") || "kind"}: ${x.message}`).join("; ")}`);
156
+ });
157
+ return { strokes, problems };
158
+ }
159
+ function distance(a, b) {
160
+ const row = Array.from({ length: b.length + 1 }, (_, j) => j);
161
+ for (let i = 1; i <= a.length; i++) {
162
+ let prev = row[0];
163
+ row[0] = i;
164
+ for (let j = 1; j <= b.length; j++) {
165
+ const cur = row[j];
166
+ row[j] = Math.min(row[j] + 1, row[j - 1] + 1, prev + (a[i - 1] === b[j - 1] ? 0 : 1));
167
+ prev = cur;
168
+ }
169
+ }
170
+ return row[b.length];
171
+ }
172
+ function suggestComponents(id, components) {
173
+ const words = new Set(id.split(/[^a-z0-9]+/).filter((w) => w.length > 2));
174
+ return [...new Set(components)].map((c) => {
175
+ const shared = c.split(/[^a-z0-9]+/).filter((w) => words.has(w)).length;
176
+ return {
177
+ c,
178
+ d: distance(id, c) - shared * 2,
179
+ ok: distance(id, c) <= Math.max(3, id.length / 3) || shared > 0
180
+ };
181
+ }).filter((x) => x.ok).sort((x, y) => x.d - y.d || x.c.localeCompare(y.c)).slice(0, 3).map((x) => x.c);
182
+ }
183
+ var componentsOf = (estate) => [
184
+ ...estate.flows.map((f) => f.flow.component),
185
+ ...estate.records.filter((r) => r.kind === "Component").map((r) => r.id)
186
+ ];
187
+ function describeStroke(s) {
188
+ switch (s.kind) {
189
+ case "absorb":
190
+ return { from: s.component, to: s.into.component, label: "absorb" };
191
+ case "retire":
192
+ return { from: s.component, to: "", label: "retire" };
193
+ case "call":
194
+ return { from: s.from.component, to: s.to.component, label: s.to.entry };
195
+ case "topic":
196
+ return { from: s.from.component, to: s.listener?.component ?? "", label: s.topic };
197
+ case "table":
198
+ return { from: s.from.component, to: s.table, label: s.op };
199
+ case "remove":
200
+ return { from: s.flow, to: "", label: `remove step ${s.step}` };
201
+ case "retarget":
202
+ return { from: s.flow, to: s.to.component, label: s.to.entry };
203
+ case "undo":
204
+ return { from: s.flow, to: "", label: `undo ${s.index}` };
205
+ }
206
+ }
207
+ var strokeText = (l) => l.label === "absorb" ? `absorb ${l.from} into ${l.to}` : l.label === "retire" ? `retire ${l.from}` : `${l.from}${l.to ? ` \u2192 ${l.to}` : ""} ${l.label}`;
208
+ function withSuggestions(problem, s, estate) {
209
+ const named = [
210
+ ...s.kind === "absorb" || s.kind === "retire" ? [s.component] : [],
211
+ ..."from" in s ? [s.from.component] : []
212
+ ];
213
+ const known = new Set(componentsOf(estate));
214
+ const hints = named.filter((c) => !known.has(c) && !estate.ids.has(c)).map((c) => ({ c, near: suggestComponents(c, [...known]) })).filter((x) => x.near.length).map((x) => ` Did you mean ${x.near.join(", ")}${x.near.length > 1 ? " (nearest first)" : ""}?`);
215
+ return problem + hints.join("");
216
+ }
126
217
  function readDrawioSketch(xml) {
127
218
  const d = readDrawio(xml);
128
219
  const lines = d.edges.map((e) => ({
@@ -221,7 +312,7 @@ function strokesOfLines(lines, estate, drawnAlready = []) {
221
312
  }
222
313
  async function changeSketchCommand(root, change, o, io) {
223
314
  if (!change || !o.from) {
224
- io.err("Usage: atticus change sketch <change> --from <file.drawio|.mmd> [--save]");
315
+ io.err("Usage: atticus change sketch <change> --from <file.drawio|.mmd|strokes.yaml|.json> [--save]");
225
316
  return 2;
226
317
  }
227
318
  const t = await targetFlowsOf(root, change);
@@ -235,10 +326,18 @@ async function changeSketchCommand(root, change, o, io) {
235
326
  return 2;
236
327
  }
237
328
  const ext = extname(o.from).toLowerCase();
238
- const read = ext === ".drawio" || ext === ".xml" || text.trimStart().startsWith("<") ? readDrawioSketch(text) : readMermaidSketch(text);
239
329
  const estate = await loadEstate(root, t.records);
240
330
  const dir = changeFolder(root, change);
241
- const plan = strokesOfLines(read.lines, estate, (await readDeltas(dir)).deltas);
331
+ const strokesFile = ext === ".yaml" || ext === ".yml" || ext === ".json";
332
+ const sf = strokesFile ? readStrokesFile(text, basename(o.from)) : void 0;
333
+ const read = sf ? { lines: [], problems: sf.problems } : ext === ".drawio" || ext === ".xml" || text.trimStart().startsWith("<") ? readDrawioSketch(text) : readMermaidSketch(text);
334
+ const plan = sf ? {
335
+ strokes: sf.strokes.map((x) => ({
336
+ stroke: x.stroke,
337
+ line: { ...describeStroke(x.stroke), at: x.at }
338
+ })),
339
+ skipped: []
340
+ } : strokesOfLines(read.lines, estate, (await readDeltas(dir)).deltas);
242
341
  const by = `${o.by ?? "a person"} from ${basename(o.from)}`;
243
342
  const problems = [...read.problems];
244
343
  const drawn = [];
@@ -253,12 +352,15 @@ async function changeSketchCommand(root, change, o, io) {
253
352
  for (const s of plan.strokes) {
254
353
  const r = applyStroke(deltas, s.stroke, estate, by);
255
354
  if (r.problem) {
256
- plan.skipped.push({ line: s.line, why: r.problem });
355
+ plan.skipped.push({
356
+ line: s.line,
357
+ why: sf ? withSuggestions(r.problem, s.stroke, estate) : r.problem
358
+ });
257
359
  continue;
258
360
  }
259
361
  deltas = r.deltas;
260
362
  changed.push(...r.changed);
261
- drawn.push(`${s.line.from} \u2192 ${s.line.to} ${s.line.label} (${s.line.at})`);
363
+ drawn.push(sf ? `${strokeText(s.line)} (${s.line.at})` : `${s.line.from} \u2192 ${s.line.to} ${s.line.label} (${s.line.at})`);
262
364
  }
263
365
  if (o.save && drawn.length)
264
366
  await writeSketch(dir, await planSketchWrite(dir, deltas, changed, estate, by));
@@ -276,7 +378,7 @@ async function changeSketchCommand(root, change, o, io) {
276
378
  for (const d of drawn)
277
379
  io.out(`${o.save ? "Drawn" : "Would draw"}: ${d}`);
278
380
  for (const s of plan.skipped)
279
- io.out(`Left out: ${s.line.from} \u2192 ${s.line.to} ${s.line.label} (${s.line.at}): ${s.why}`);
381
+ io.out(sf ? `Left out: ${strokeText(s.line)} (${s.line.at}): ${s.why}` : `Left out: ${s.line.from} \u2192 ${s.line.to} ${s.line.label} (${s.line.at}): ${s.why}`);
280
382
  for (const p of problems)
281
383
  io.out(`Didn't read: ${p}`);
282
384
  if (!drawn.length) {
@@ -292,5 +394,7 @@ export {
292
394
  lineParts,
293
395
  readDrawioSketch,
294
396
  readMermaidSketch,
295
- strokesOfLines
397
+ readStrokesFile,
398
+ strokesOfLines,
399
+ suggestComponents
296
400
  };
@@ -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
  originOf
8
- } from "./chunk-QOC3Q4UU.js";
8
+ } from "./chunk-BSZII65X.js";
9
9
  import {
10
10
  isAdopted,
11
11
  orgPackDirOf
12
- } from "./chunk-GJVCBTSO.js";
12
+ } from "./chunk-6ZDAEUKB.js";
13
13
  import {
14
14
  writeFileAtomic
15
- } from "./chunk-G3ZFEHCX.js";
15
+ } from "./chunk-MEMEO7YO.js";
16
16
  import {
17
17
  require_dist
18
18
  } from "./chunk-BQGDB6ZL.js";
@@ -6,10 +6,10 @@ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  aggregateTraffic,
8
8
  readContractFiles
9
- } from "./chunk-GFYVVTKH.js";
9
+ } from "./chunk-QAFQLILX.js";
10
10
  import {
11
11
  TRAFFIC_SOURCES
12
- } from "./chunk-DIYNRYXW.js";
12
+ } from "./chunk-HQMLY2R6.js";
13
13
  import {
14
14
  ContractsFile,
15
15
  evidenceDirOf,
@@ -19,13 +19,13 @@ import {
19
19
  orgPackDirOf,
20
20
  readTrafficFile,
21
21
  trafficFileName
22
- } from "./chunk-GJVCBTSO.js";
22
+ } from "./chunk-6ZDAEUKB.js";
23
23
  import {
24
24
  writeFileAtomic
25
- } from "./chunk-G3ZFEHCX.js";
25
+ } from "./chunk-MEMEO7YO.js";
26
26
  import {
27
27
  loadOrgPack
28
- } from "./chunk-QFDPX6C4.js";
28
+ } from "./chunk-LZFKJ2BR.js";
29
29
  import {
30
30
  require_dist
31
31
  } from "./chunk-BQGDB6ZL.js";
@@ -198,7 +198,7 @@ async function intakeTraffic(root, file, o, io) {
198
198
  return 0;
199
199
  }
200
200
  async function estateNames(root) {
201
- const { estateFacts, estateRepos } = await import("./chunk-UI6KNLSO.js");
201
+ const { estateFacts, estateRepos } = await import("./chunk-NHFMLMLN.js");
202
202
  const apps = /* @__PURE__ */ new Set();
203
203
  const tDir = join(evidenceDirOf(root), "traffic");
204
204
  for (const n of (await readdir(tDir).catch(() => [])).sort()) {
@@ -5,48 +5,48 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  describeRun
8
- } from "./chunk-ASFRT33J.js";
8
+ } from "./chunk-CFK6CFXM.js";
9
9
  import {
10
10
  RunLevel,
11
11
  readyTasksOf,
12
12
  runReadyTasks
13
- } from "./chunk-R6CJOMPC.js";
14
- import "./chunk-CU7ZK7KP.js";
15
- import "./chunk-HI7ADE4E.js";
16
- import "./chunk-BYKWWSXL.js";
17
- import "./chunk-BWYW533C.js";
18
- import "./chunk-J4K4C4T5.js";
19
- import "./chunk-PB3NCPRF.js";
20
- import "./chunk-G67GOK4S.js";
21
- import "./chunk-775FMPUB.js";
22
- import "./chunk-YF6N45QN.js";
23
- import "./chunk-5QF5W5P2.js";
24
- import "./chunk-QIDSEHJA.js";
13
+ } from "./chunk-LY7DOYX2.js";
14
+ import "./chunk-HWPX3T55.js";
15
+ import "./chunk-HNNMT5L2.js";
16
+ import "./chunk-7AEB74KW.js";
17
+ import "./chunk-DPH4BS3F.js";
18
+ import "./chunk-IBIIKUC7.js";
19
+ import "./chunk-KZH5YV6J.js";
20
+ import "./chunk-H5BIVULF.js";
21
+ import "./chunk-IZIGZ7KY.js";
22
+ import "./chunk-RQM5Y3HJ.js";
23
+ import "./chunk-JLTJAOO4.js";
24
+ import "./chunk-SAPX3PVK.js";
25
25
  import "./chunk-MUWDB4R4.js";
26
26
  import "./chunk-VOGCSYOI.js";
27
- import "./chunk-LELM7X5H.js";
28
- import "./chunk-WECCLSYY.js";
29
- import "./chunk-5FUFVNXB.js";
30
- import "./chunk-A6ZG3UOS.js";
31
- import "./chunk-U2JTTRKS.js";
32
- import "./chunk-5MKV4TV6.js";
33
- import "./chunk-ESJALLOK.js";
34
- import "./chunk-MCE74XMF.js";
35
- import "./chunk-25CUJJTP.js";
36
- import "./chunk-HNPKCRCE.js";
37
- import "./chunk-CZ75S2EZ.js";
38
- import "./chunk-GFYVVTKH.js";
39
- import "./chunk-DIYNRYXW.js";
40
- import "./chunk-5FPAKAGE.js";
41
- import "./chunk-IJQHBK76.js";
27
+ import "./chunk-YEHSJY6B.js";
28
+ import "./chunk-CSHJZFOE.js";
29
+ import "./chunk-5A4RHEEL.js";
30
+ import "./chunk-VIQHZA53.js";
31
+ import "./chunk-WH3ZFLXT.js";
32
+ import "./chunk-UTZMF5CV.js";
33
+ import "./chunk-6U65YB54.js";
34
+ import "./chunk-SZDOBIWE.js";
35
+ import "./chunk-2HDNOUJU.js";
36
+ import "./chunk-RK5P2DWD.js";
37
+ import "./chunk-K3QKOVZN.js";
38
+ import "./chunk-QAFQLILX.js";
39
+ import "./chunk-HQMLY2R6.js";
40
+ import "./chunk-I2EWY3MG.js";
41
+ import "./chunk-UFIQ5FWY.js";
42
42
  import {
43
43
  RUNTIME_MODES
44
- } from "./chunk-MOWUP33K.js";
44
+ } from "./chunk-ZDA72732.js";
45
45
  import "./chunk-QA4O2GGC.js";
46
- import "./chunk-OSZTENIA.js";
47
- import "./chunk-GJVCBTSO.js";
48
- import "./chunk-G3ZFEHCX.js";
49
- import "./chunk-QFDPX6C4.js";
46
+ import "./chunk-XIJBQM45.js";
47
+ import "./chunk-6ZDAEUKB.js";
48
+ import "./chunk-MEMEO7YO.js";
49
+ import "./chunk-LZFKJ2BR.js";
50
50
  import "./chunk-CTJHEG6A.js";
51
51
  import "./chunk-BQGDB6ZL.js";
52
52
  import "./chunk-TV45EUGM.js";
@@ -54,7 +54,7 @@ import "./chunk-TV45EUGM.js";
54
54
  // packages/cli/dist/run-ready-commands.js
55
55
  async function deployOrderOf(root, change) {
56
56
  try {
57
- const { loadRelease, deploymentPlan } = await import("./chunk-YHWX5LPT.js");
57
+ const { loadRelease, deploymentPlan } = await import("./chunk-F6GRBF5L.js");
58
58
  const plan = await deploymentPlan(await loadRelease(root, change));
59
59
  const out = [];
60
60
  for (const s of [...plan.steps].sort((a, b) => a.n - b.n))
@@ -10,7 +10,7 @@ function draftCheckTool(root, request) {
10
10
  if (!request.selfCheck || !/^(feature|architecture|stories|small)-answer\.yaml$/.test(request.outputPath))
11
11
  return void 0;
12
12
  let box;
13
- const planner = () => box ??= import("./chunk-YUJTOALL.js").then((p) => p.draftCheckBox(root, request));
13
+ const planner = () => box ??= import("./chunk-ANFBBJEV.js").then((p) => p.draftCheckBox(root, request));
14
14
  return {
15
15
  definitions: [
16
16
  {
@@ -7,20 +7,20 @@ import {
7
7
  readRound,
8
8
  reviewedGates,
9
9
  roundsOf
10
- } from "./chunk-A6ZG3UOS.js";
10
+ } from "./chunk-VIQHZA53.js";
11
11
  import {
12
12
  changeStore,
13
13
  liveHandoff
14
- } from "./chunk-U2JTTRKS.js";
14
+ } from "./chunk-WH3ZFLXT.js";
15
15
  import {
16
16
  createAdapters
17
- } from "./chunk-ESJALLOK.js";
17
+ } from "./chunk-6U65YB54.js";
18
18
  import {
19
19
  orgPackDirOf
20
- } from "./chunk-GJVCBTSO.js";
20
+ } from "./chunk-6ZDAEUKB.js";
21
21
  import {
22
22
  loadOrgPack
23
- } from "./chunk-QFDPX6C4.js";
23
+ } from "./chunk-LZFKJ2BR.js";
24
24
 
25
25
  // packages/cli/dist/digest-commands.js
26
26
  var norm = (s) => s.toLowerCase().replace(/^@/, "");
@@ -70,8 +70,8 @@ async function buildDigest(root, user) {
70
70
  }
71
71
  if (!lines.length)
72
72
  lines.push("Nothing waits on you.");
73
- const { readMe } = await import("./chunk-D5ZC7IMC.js");
74
- const { watchLine } = await import("./chunk-ABDE5IRC.js");
73
+ const { readMe } = await import("./chunk-IFQJ3YQE.js");
74
+ const { watchLine } = await import("./chunk-IERXBWQU.js");
75
75
  const watching = [];
76
76
  for (const c of (await readMe(root)).watch)
77
77
  watching.push(await watchLine(root, c));
@@ -5,33 +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
  termNoteOffer
8
- } from "./chunk-4CS3PMIM.js";
8
+ } from "./chunk-EVKDWJ5Y.js";
9
9
  import {
10
10
  routeQuestions
11
- } from "./chunk-SLGUSFOD.js";
12
- import "./chunk-DF6DPCW2.js";
13
- import "./chunk-RSHVSXPJ.js";
14
- import "./chunk-HWNFFCGB.js";
15
- import "./chunk-BYKWWSXL.js";
16
- import "./chunk-ENZ3PI7L.js";
11
+ } from "./chunk-HV6PXXK7.js";
12
+ import "./chunk-CG6MG7SE.js";
13
+ import "./chunk-HSJKYDHI.js";
14
+ import "./chunk-PBDIVTFL.js";
15
+ import "./chunk-7AEB74KW.js";
16
+ import "./chunk-ZFEOIYK5.js";
17
17
  import {
18
18
  waitingQuestions
19
- } from "./chunk-5FUFVNXB.js";
20
- import "./chunk-MCE74XMF.js";
21
- import "./chunk-25CUJJTP.js";
22
- import "./chunk-HNPKCRCE.js";
23
- import "./chunk-CZ75S2EZ.js";
24
- import "./chunk-GFYVVTKH.js";
25
- import "./chunk-DIYNRYXW.js";
26
- import "./chunk-5FPAKAGE.js";
27
- import "./chunk-IJQHBK76.js";
28
- import "./chunk-MOWUP33K.js";
19
+ } from "./chunk-5A4RHEEL.js";
20
+ import "./chunk-SZDOBIWE.js";
21
+ import "./chunk-2HDNOUJU.js";
22
+ import "./chunk-RK5P2DWD.js";
23
+ import "./chunk-K3QKOVZN.js";
24
+ import "./chunk-QAFQLILX.js";
25
+ import "./chunk-HQMLY2R6.js";
26
+ import "./chunk-I2EWY3MG.js";
27
+ import "./chunk-UFIQ5FWY.js";
28
+ import "./chunk-ZDA72732.js";
29
29
  import "./chunk-QA4O2GGC.js";
30
30
  import {
31
31
  gitUser
32
- } from "./chunk-OSZTENIA.js";
32
+ } from "./chunk-XIJBQM45.js";
33
33
  import {
34
34
  HOSTS_STEP,
35
+ IGNORE_REASON_MAX,
35
36
  QuestionError,
36
37
  TARGETS_STEP_ID,
37
38
  TOPICS_STEP_ID,
@@ -46,16 +47,16 @@ import {
46
47
  questionsRelOf,
47
48
  readQuestion,
48
49
  topicOfQuestion
49
- } from "./chunk-GJVCBTSO.js";
50
+ } from "./chunk-6ZDAEUKB.js";
50
51
  import {
51
52
  writeFileAtomic
52
- } from "./chunk-G3ZFEHCX.js";
53
+ } from "./chunk-MEMEO7YO.js";
53
54
  import {
54
55
  QuestionScopeLevel,
55
56
  QuestionState,
56
57
  answerByWords,
57
58
  external_exports
58
- } from "./chunk-QFDPX6C4.js";
59
+ } from "./chunk-LZFKJ2BR.js";
59
60
  import "./chunk-CTJHEG6A.js";
60
61
  import {
61
62
  require_dist
@@ -361,7 +362,7 @@ async function questionsFiles(root, argv, io, deps = {}) {
361
362
  const p = q.state === "open" ? await proposalOf(root, q.id) : void 0;
362
363
  const proposal = p?.ok && p.proposal ? { ...p.proposal, file: p.file } : void 0;
363
364
  if (values.json === true) {
364
- const picks = q.state === "open" && (q.askedBy.step === TARGETS_STEP_ID || q.askedBy.step === TOPICS_STEP_ID) ? await (await import("./chunk-B63NWU3P.js")).pickerOf(root) : void 0;
365
+ const picks = q.state === "open" && (q.askedBy.step === TARGETS_STEP_ID || q.askedBy.step === TOPICS_STEP_ID) ? await (await import("./chunk-HVWPN2RY.js")).pickerOf(root) : void 0;
365
366
  const rule = q.state === "open" && q.askedBy.step === TARGETS_STEP_ID ? (await routeQuestions(root, [q])).about[q.id]?.rule : void 0;
366
367
  io.out(JSON.stringify({
367
368
  ...q,
@@ -475,6 +476,10 @@ async function questionsFiles(root, argv, io, deps = {}) {
475
476
  io.err("--reason goes with --ignore.");
476
477
  return 2;
477
478
  }
479
+ if (reason && reason.length > IGNORE_REASON_MAX) {
480
+ io.err(`--reason is at most ${IGNORE_REASON_MAX} characters (this is ${reason.length}): say it in fewer words.`);
481
+ return 2;
482
+ }
478
483
  if (ignore && (opt !== void 0 || text !== void 0 || accept || target)) {
479
484
  io.err("--ignore is the answer: give it alone (with --reason), not with another answer.");
480
485
  return 2;
@@ -484,8 +489,8 @@ async function questionsFiles(root, argv, io, deps = {}) {
484
489
  io.err("--target names the answer: give it alone, not with --option, --text or --accept-proposal.");
485
490
  return 2;
486
491
  }
487
- const { readQuestion: readQuestion2 } = await import("./chunk-6OZAQPU5.js");
488
- const { targetAnswerOf, pickerOf, pickerText, offerLine } = await import("./chunk-B63NWU3P.js");
492
+ const { readQuestion: readQuestion2 } = await import("./chunk-UXVKFOMC.js");
493
+ const { targetAnswerOf, pickerOf, pickerText, offerLine } = await import("./chunk-HVWPN2RY.js");
489
494
  const q0 = await readQuestion2(root, id).catch(() => void 0);
490
495
  if (!q0) {
491
496
  io.err(`There is no question ${id}.`);
@@ -580,7 +585,7 @@ async function questionsFiles(root, argv, io, deps = {}) {
580
585
  throw e;
581
586
  io.err(e.message);
582
587
  if (/opens the list of every repo/.test(e.message)) {
583
- const { pickerOf, pickerText } = await import("./chunk-B63NWU3P.js");
588
+ const { pickerOf, pickerText } = await import("./chunk-HVWPN2RY.js");
584
589
  for (const l of pickerText(await pickerOf(root)))
585
590
  io.err(` ${l}`);
586
591
  }
@@ -9,17 +9,17 @@ import {
9
9
  import {
10
10
  componentTypeIds,
11
11
  componentTypesAt
12
- } from "./chunk-HGDBM3A5.js";
12
+ } from "./chunk-W4SMKUAK.js";
13
13
  import {
14
14
  recordTopUpVerified
15
- } from "./chunk-HXFZX2BI.js";
15
+ } from "./chunk-DXLWZ3BJ.js";
16
16
  import {
17
17
  notesAt
18
- } from "./chunk-DCRZ3OQ7.js";
18
+ } from "./chunk-V5FT3MZG.js";
19
19
  import {
20
20
  loadReadPlan,
21
21
  recordReadProgress
22
- } from "./chunk-LKUTBQ2Y.js";
22
+ } from "./chunk-P6DM2EFI.js";
23
23
  import {
24
24
  carryOf,
25
25
  checkoutOf,
@@ -33,29 +33,29 @@ import {
33
33
  reviewedProblemsOf,
34
34
  slipNoteLines,
35
35
  writeVerifyFiles
36
- } from "./chunk-GCMDDVIE.js";
36
+ } from "./chunk-XDLMQL5A.js";
37
37
  import {
38
38
  dirSource,
39
39
  frameworkFacts,
40
40
  frameworksToLearn,
41
41
  repairFormSlips,
42
42
  verifyFacts
43
- } from "./chunk-HNPKCRCE.js";
43
+ } from "./chunk-RK5P2DWD.js";
44
44
  import {
45
45
  NoRoomError,
46
46
  roomGuard,
47
47
  streamFacts
48
- } from "./chunk-FL53R4SW.js";
48
+ } from "./chunk-DHQXCP2X.js";
49
49
  import {
50
50
  factsDirOf,
51
51
  factsRelOf,
52
52
  listQuestions,
53
53
  orgPackDirOf,
54
54
  stackHelpersOff
55
- } from "./chunk-GJVCBTSO.js";
55
+ } from "./chunk-6ZDAEUKB.js";
56
56
  import {
57
57
  loadOrgPack
58
- } from "./chunk-QFDPX6C4.js";
58
+ } from "./chunk-LZFKJ2BR.js";
59
59
 
60
60
  // packages/cli/dist/verify-commands.js
61
61
  import { existsSync } from "node:fs";
@@ -141,7 +141,12 @@ async function verifyCommand(root, repo, o, io) {
141
141
  return 2;
142
142
  }
143
143
  const repaired = repairFormSlips(parsed.facts, parsed.bad);
144
- parsed = { facts: repaired.facts, bad: repaired.bad };
144
+ parsed = { facts: repaired.facts, bad: repaired.bad, newer: parsed.newer };
145
+ if (parsed.newer.length) {
146
+ io.err(`${parsed.newer.length} ${parsed.newer.length === 1 ? "fact" : "facts"} of ${rel}/${repo}.jsonl ${parsed.newer.length === 1 ? "is" : "are"} written by a newer Atticus: kept in the file as written, not read here. Install that version (a team upgrades together):`);
147
+ for (const n2 of parsed.newer.slice(0, SHOWN))
148
+ io.err(` line ${n2.line}: ${n2.message}`);
149
+ }
145
150
  const slips = repaired.slips;
146
151
  if (!parsed.facts.length && parsed.bad.length) {
147
152
  io.err(`${rel}/${repo}.jsonl does not read as facts:`);
@@ -220,8 +225,9 @@ async function verifyCommand(root, repo, o, io) {
220
225
  raw: b.raw,
221
226
  message: `line ${b.line} isn't a fact: ${b.issues.map((i) => i.message).join("; ")}`
222
227
  }));
223
- const summary = await writeVerifyFiles(root, repo, report, commit, qProblems, badLines, reviewedBad, slips);
224
228
  const failed = report.rejected.length + qProblems.length + badLines.length + reviewedBad.length > 0;
229
+ const refusedWrite = o.write === true && failed;
230
+ const summary = await writeVerifyFiles(root, repo, report, commit, qProblems, badLines, reviewedBad, slips, parsed.newer.flatMap((n2) => n2.raw !== void 0 ? [n2.raw] : []), { keepFacts: refusedWrite });
225
231
  await recordReadProgress(root, repo, {
226
232
  commit,
227
233
  kept: report.accepted.length,
@@ -233,11 +239,12 @@ async function verifyCommand(root, repo, o, io) {
233
239
  });
234
240
  if (!failed)
235
241
  await recordTopUpVerified(root, repo, { commit });
236
- const rejectedNote = `Nothing written to the catalog: ${report.rejected.length} facts were rejected. Fix them and run atticus verify ${repo} --write again.`;
242
+ const n = report.rejected.length;
243
+ const rejectedNote = `Nothing written: ${n ? `${n} ${n === 1 ? "fact was" : "facts were"} rejected` : "some lines of the read were refused"}, so ${rel}/${repo}.jsonl and the catalog are left as they were. Fix them from ${rel}/${repo}.rejected.jsonl and run atticus verify ${repo} --write again.`;
237
244
  if (o.json) {
238
245
  let written2;
239
246
  if (o.write && !failed) {
240
- const { writeFactsIntoCatalog: writeFactsIntoCatalog2 } = await import("./chunk-BTS56NV7.js");
247
+ const { writeFactsIntoCatalog: writeFactsIntoCatalog2 } = await import("./chunk-NP3PG6OI.js");
241
248
  written2 = await writeFactsIntoCatalog2(root, repo, report.accepted, { dir, command: `atticus verify ${repo} --write` }, { ...io, out: () => void 0 });
242
249
  if (!written2)
243
250
  return 1;
@@ -377,6 +384,11 @@ async function verifyCommand(root, repo, o, io) {
377
384
  io.out(`${unrecorded.length} ${unrecorded.length === 1 ? "coordinate or dependency" : "coordinates and dependencies"} a build file read writes ${unrecorded.length === 1 ? "has" : "have"} no fact (a note, not a rejection; under buildUnrecorded in ${verifyYaml}): record each as an artifact or dependency fact, so a library of the estate's own is drawn as what its services build on:`);
378
385
  show(unrecorded.map((u) => `${u.kind} ${u.coordinates} (${u.cite})`), `(buildUnrecorded in ${verifyYaml})`);
379
386
  }
387
+ const placed = report.componentsPlaced ?? [];
388
+ if (placed.length) {
389
+ io.out(`${placed.length} ${placed.length === 1 ? "fact names a component" : "facts name components"} the manifest doesn't list, in a repo whose manifest lists no modules (a note, not a rejection; under componentsPlaced in ${verifyYaml}): each is placed in the repo's component. List the modules in repos.manifest.yaml if they ship apart:`);
390
+ show(placed.map((p) => `${p.id}: ${p.named} is ${p.component} (${p.cite})`), `(componentsPlaced in ${verifyYaml})`);
391
+ }
380
392
  const learn = off.has("framework-models") ? [] : frameworksToLearn(report.accepted, await frameworksKnownTo(root), (await conventionsAt(root)).frameworks);
381
393
  if (learn.length) {
382
394
  io.out(`${learn.length} ${learn.length === 1 ? "framework" : "frameworks"} of the house nothing here can read yet: teach ${learn.length === 1 ? "it" : "them"} once, rather than having each repo's annotations read as ordinary code.`);
@@ -391,7 +403,7 @@ async function verifyCommand(root, repo, o, io) {
391
403
  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.`);
392
404
  return 0;
393
405
  }
394
- const { writeFactsIntoCatalog } = await import("./chunk-BTS56NV7.js");
406
+ const { writeFactsIntoCatalog } = await import("./chunk-NP3PG6OI.js");
395
407
  const written = await writeFactsIntoCatalog(root, repo, report.accepted, { dir, command: `atticus verify ${repo} --write`, verbose: o.verbose === true }, io);
396
408
  return written ? 0 : 1;
397
409
  }