@maycombhq/atticus 2.0.0-beta.21 → 2.0.0-beta.23

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 (299) hide show
  1. package/dist/bin.js +12 -7
  2. package/dist/{chunk-BXBCMGIQ.js → chunk-24OXGB3P.js} +1 -1
  3. package/dist/{chunk-PRW3HXM3.js → chunk-27AJAKX7.js} +29 -5
  4. package/dist/{chunk-PQH56YF6.js → chunk-2QPJ4E4Z.js} +6 -4
  5. package/dist/{chunk-7CZHUZBL.js → chunk-2UMSHYCB.js} +38 -27
  6. package/dist/{chunk-2V2ZPQQU.js → chunk-2WUTCPPJ.js} +9 -7
  7. package/dist/{chunk-YF5DZCPN.js → chunk-2YSD6E6V.js} +38 -34
  8. package/dist/{chunk-QHJJMZLX.js → chunk-3424TLIJ.js} +204 -97
  9. package/dist/{chunk-62DLJSLV.js → chunk-3ASYYMOX.js} +10 -8
  10. package/dist/{chunk-XOL3GFW2.js → chunk-3EWKO457.js} +111 -43
  11. package/dist/{chunk-G5YJBNDZ.js → chunk-3EX5HCZD.js} +8 -6
  12. package/dist/{chunk-WFU77T3A.js → chunk-3MYBT62N.js} +5 -5
  13. package/dist/{chunk-6EXDI5GI.js → chunk-3UHV76UD.js} +72 -41
  14. package/dist/{chunk-LU4MQVAL.js → chunk-3ZA3AK2D.js} +11 -10
  15. package/dist/{chunk-P2VBXX7N.js → chunk-4ETO2FXE.js} +11 -9
  16. package/dist/{chunk-GK4PYVEC.js → chunk-4FLNCK6Q.js} +31 -14
  17. package/dist/{chunk-64AADMTW.js → chunk-4GAB5ZOZ.js} +943 -336
  18. package/dist/{chunk-FLVZFTLQ.js → chunk-4MYHETJ3.js} +20 -18
  19. package/dist/chunk-4R3TO4VL.js +94 -0
  20. package/dist/{chunk-7EFILTCI.js → chunk-5F7GFN2F.js} +28 -0
  21. package/dist/chunk-5MYE42AP.js +43 -0
  22. package/dist/chunk-5O7U67UA.js +57 -0
  23. package/dist/{chunk-MZGRDONP.js → chunk-5OXKCH4Z.js} +54 -37
  24. package/dist/{chunk-PUEWDYGP.js → chunk-5VTIWEWP.js} +3 -2
  25. package/dist/{chunk-3G6S7LAA.js → chunk-63NFFAGI.js} +14 -12
  26. package/dist/{chunk-LIJJCBQI.js → chunk-66AQ2JIU.js} +15 -16
  27. package/dist/chunk-6JVPBGQG.js +50 -0
  28. package/dist/{chunk-WAZEXEJH.js → chunk-6NCPLIIP.js} +167 -2
  29. package/dist/{chunk-D57MFJPP.js → chunk-6NN36LVK.js} +3 -3
  30. package/dist/{chunk-G6IQYM25.js → chunk-6R5VHR3N.js} +8 -6
  31. package/dist/{chunk-Z3QFH7YG.js → chunk-6RQOINER.js} +5 -4
  32. package/dist/{chunk-TQTRWENN.js → chunk-6RYB3EET.js} +14 -12
  33. package/dist/{chunk-FYBF5MB2.js → chunk-6SNTHK43.js} +13 -11
  34. package/dist/{chunk-FRHD22WM.js → chunk-6Y4FXOMI.js} +27 -23
  35. package/dist/{chunk-LWDNKE4X.js → chunk-6ZFF7XSL.js} +6 -6
  36. package/dist/{chunk-FQ6WH6PB.js → chunk-6ZSYLZ7O.js} +6 -4
  37. package/dist/{chunk-LQH4P45K.js → chunk-73CC73I4.js} +1 -1
  38. package/dist/{chunk-Q46QDDMF.js → chunk-73GFVW2L.js} +14 -9
  39. package/dist/{chunk-QKMRFNMA.js → chunk-73V2OONC.js} +17 -15
  40. package/dist/{chunk-FVMPFCDS.js → chunk-75OMRKY2.js} +4 -4
  41. package/dist/{chunk-XEQCQO66.js → chunk-7IFTSAHP.js} +10 -8
  42. package/dist/{chunk-4FOAYLI4.js → chunk-7K5OH45X.js} +139 -17
  43. package/dist/{chunk-3SSTNB4E.js → chunk-7NQAGYK4.js} +34 -14
  44. package/dist/{chunk-URIKUID7.js → chunk-7XWJ6ED2.js} +14 -12
  45. package/dist/{chunk-TYD6I4CZ.js → chunk-7XYLNQFO.js} +7 -7
  46. package/dist/{chunk-BPPU3PW7.js → chunk-7YQBDE5W.js} +10 -4
  47. package/dist/{chunk-CPK7QSBG.js → chunk-A4JXVO5O.js} +8 -6
  48. package/dist/{chunk-YJ3TBOTK.js → chunk-AFBCNZRZ.js} +29 -26
  49. package/dist/{chunk-TW3KOSQK.js → chunk-AGOLEMHK.js} +13 -13
  50. package/dist/chunk-AHFQHPFF.js +49 -0
  51. package/dist/{chunk-NTAVOWYD.js → chunk-APDN6UOR.js} +118 -18
  52. package/dist/chunk-AQRUQNFB.js +322 -0
  53. package/dist/{chunk-KYZMRSPS.js → chunk-AVMWESFZ.js} +6 -3
  54. package/dist/chunk-B4AEL3RF.js +1011 -0
  55. package/dist/{chunk-GS76RXQE.js → chunk-BAY4K55I.js} +15 -12
  56. package/dist/{chunk-4CLK2RJO.js → chunk-BFL4PO64.js} +9 -7
  57. package/dist/{chunk-GCS3FZOB.js → chunk-BFMTGNAQ.js} +15 -4
  58. package/dist/{chunk-YBOVNMHC.js → chunk-BP33TBLI.js} +29 -16
  59. package/dist/chunk-BQGDB6ZL.js +7342 -0
  60. package/dist/{chunk-BXZ4PKIT.js → chunk-BUUJ7N4O.js} +15 -11
  61. package/dist/{chunk-HGHRSF3E.js → chunk-BYBU2EIB.js} +38 -19
  62. package/dist/{chunk-TQ4TG57V.js → chunk-C6ORPLCN.js} +4 -4
  63. package/dist/{chunk-HWD4JPU7.js → chunk-CA3DKO4D.js} +27 -3
  64. package/dist/{chunk-YTTNTQOX.js → chunk-CFUDAW3R.js} +17 -15
  65. package/dist/{chunk-OPQZISG3.js → chunk-CJEBRJBS.js} +5 -4
  66. package/dist/{chunk-RALY3E5U.js → chunk-CKVBDVIW.js} +6 -4
  67. package/dist/{chunk-DUPZPDCJ.js → chunk-CMB7FXHJ.js} +42 -16
  68. package/dist/{chunk-YIGBJNH4.js → chunk-CQ7RF4QN.js} +5 -4
  69. package/dist/{chunk-YAH5IQAL.js → chunk-CS4BMJLL.js} +6 -5
  70. package/dist/{chunk-455SYIIE.js → chunk-CT6NINGR.js} +5 -3
  71. package/dist/chunk-CXTG6AWM.js +40 -0
  72. package/dist/{chunk-JYMIB5XY.js → chunk-CZ2ZS7AT.js} +170 -45
  73. package/dist/{chunk-K332XW7K.js → chunk-D6BVLTDV.js} +100 -33
  74. package/dist/chunk-DCRYOMTM.js +37 -0
  75. package/dist/{chunk-G6X4YL4D.js → chunk-DHKDH464.js} +5 -4
  76. package/dist/{chunk-JRVNXLZP.js → chunk-DSHRA72L.js} +14 -12
  77. package/dist/{chunk-LNWEWYCM.js → chunk-E3PDCQRH.js} +2813 -621
  78. package/dist/chunk-EHXDB3SA.js +25 -0
  79. package/dist/{chunk-EZIN5E5B.js → chunk-EMVZIOOD.js} +11 -9
  80. package/dist/{chunk-IFHDV6KQ.js → chunk-ENH6Z4TY.js} +21 -20
  81. package/dist/{chunk-YKTE2RU3.js → chunk-EVTI22PQ.js} +7 -2
  82. package/dist/{chunk-2D7PWSOK.js → chunk-EXJZBL5N.js} +22 -20
  83. package/dist/{chunk-77O633L5.js → chunk-FBCVC2GJ.js} +14 -12
  84. package/dist/{chunk-HS4BGB4G.js → chunk-FJVUHQPS.js} +37 -24
  85. package/dist/{chunk-4KNOJC6J.js → chunk-FL344WQD.js} +270 -221
  86. package/dist/{chunk-GNWAOVFQ.js → chunk-FMJYKLDY.js} +5 -5
  87. package/dist/chunk-FMR2D3AZ.js +41 -0
  88. package/dist/{chunk-PAINMSID.js → chunk-FPBUTZI5.js} +3102 -7859
  89. package/dist/{chunk-ZOSD4FXV.js → chunk-FQVSLBTV.js} +3 -3
  90. package/dist/chunk-FRAEQVYN.js +52 -0
  91. package/dist/{chunk-UDXWIPCB.js → chunk-FRCOKUU4.js} +9 -7
  92. package/dist/{chunk-UYLBRRFK.js → chunk-FSN6JFXB.js} +129 -27
  93. package/dist/{chunk-BC6KKZ67.js → chunk-FTLYXMHA.js} +9 -6
  94. package/dist/{chunk-FAJDKNSD.js → chunk-FVYZ4Y52.js} +16 -3
  95. package/dist/{chunk-TWQRPM76.js → chunk-G6EFXTUO.js} +23 -16
  96. package/dist/{chunk-ZFQMMU5Y.js → chunk-G7VBMOZH.js} +6 -2
  97. package/dist/{chunk-VYOCPTUB.js → chunk-GM4EFHUX.js} +17 -15
  98. package/dist/chunk-GOZLTLRY.js +232 -0
  99. package/dist/chunk-GPNMSX5H.js +36 -0
  100. package/dist/{chunk-OZJ3JLYI.js → chunk-GUGQSIQM.js} +10 -9
  101. package/dist/chunk-H4VO6WG3.js +10 -0
  102. package/dist/{chunk-QJCJOMW3.js → chunk-HJQVUOUL.js} +16 -18
  103. package/dist/chunk-HMWJWYE2.js +31 -0
  104. package/dist/{chunk-4TKVU2I2.js → chunk-HMZ2DRBC.js} +2 -2
  105. package/dist/{chunk-HK3VOHIE.js → chunk-HRS5O7VV.js} +609 -171
  106. package/dist/{chunk-7FUIVIBG.js → chunk-HUGQZQ2K.js} +13 -8
  107. package/dist/{chunk-QOOEYDNJ.js → chunk-ICBGVVRI.js} +10 -10
  108. package/dist/{chunk-XG4WJHLQ.js → chunk-IGOE6KPG.js} +49 -20
  109. package/dist/{chunk-4SLBCEPD.js → chunk-IKAW2KJU.js} +95 -64
  110. package/dist/{chunk-L4CESDPB.js → chunk-IMZFOMVX.js} +1 -1
  111. package/dist/{chunk-XQ3YZ4QW.js → chunk-ISG547IS.js} +24 -22
  112. package/dist/{chunk-BA2HUMDN.js → chunk-IYNCSYU4.js} +5 -2
  113. package/dist/{chunk-UEVZZZU2.js → chunk-J25YOUIZ.js} +5 -4
  114. package/dist/chunk-J2CDBSFP.js +69 -0
  115. package/dist/chunk-J2H7YG3K.js +34 -0
  116. package/dist/{chunk-O4IKAIZ2.js → chunk-J32IPTVQ.js} +28 -22
  117. package/dist/{chunk-3AQ2R5NL.js → chunk-J4CPHJUL.js} +11 -9
  118. package/dist/{chunk-VUVGX5L2.js → chunk-JFFKHIM6.js} +1 -1
  119. package/dist/chunk-JMEWJPF2.js +384 -0
  120. package/dist/{chunk-LO3BLMVG.js → chunk-JSP73CDW.js} +13 -5
  121. package/dist/chunk-JXAKYP45.js +63 -0
  122. package/dist/{chunk-PNQLCRSS.js → chunk-K4OXYSGS.js} +7 -5
  123. package/dist/{chunk-3J5I7ZOU.js → chunk-K4RNVDR4.js} +4 -4
  124. package/dist/{chunk-LEBR5NHW.js → chunk-K757G7AD.js} +18 -15
  125. package/dist/{chunk-AHW3RY3X.js → chunk-KDJ2YKAZ.js} +8 -7
  126. package/dist/{chunk-4WXRPQDE.js → chunk-KT6Q44CA.js} +178 -31
  127. package/dist/{chunk-EFCQSMXB.js → chunk-KTNOBTV5.js} +10 -4
  128. package/dist/chunk-KVVNAUIG.js +66 -0
  129. package/dist/{chunk-26Z7OGQW.js → chunk-L3RCQWVQ.js} +64 -31
  130. package/dist/{chunk-3WON4G3M.js → chunk-LHH5KG5A.js} +21 -6
  131. package/dist/{chunk-NCB6656Z.js → chunk-LM45GMMB.js} +11 -8
  132. package/dist/{chunk-2HH3UCZM.js → chunk-LO6Y7OTG.js} +5 -4
  133. package/dist/{chunk-36RY7ZXM.js → chunk-LPDTDFKA.js} +88 -26
  134. package/dist/{chunk-67BP7HXL.js → chunk-LSHSDC6S.js} +19 -17
  135. package/dist/{chunk-GDZB57IU.js → chunk-LZVHP7CT.js} +7 -5
  136. package/dist/{chunk-GC2VK3JT.js → chunk-M3EOFSPY.js} +28 -25
  137. package/dist/chunk-MBYYQHPM.js +31 -0
  138. package/dist/{chunk-HXXP2NTE.js → chunk-MEJ63LDG.js} +35 -12
  139. package/dist/{chunk-2UCRFXFZ.js → chunk-MH2ZK67S.js} +13 -11
  140. package/dist/{chunk-BEPCKDCP.js → chunk-MLGWSBF4.js} +5447 -4165
  141. package/dist/{chunk-NRQ65LTQ.js → chunk-MNIPPBCT.js} +6 -5
  142. package/dist/{chunk-3LZ6P5EP.js → chunk-MUWDB4R4.js} +1 -1
  143. package/dist/{chunk-KDAHXQIE.js → chunk-MWF4PXQR.js} +38 -34
  144. package/dist/{chunk-WNTIOBOG.js → chunk-N2YX6JMY.js} +20 -18
  145. package/dist/{chunk-FY3QIRTL.js → chunk-NAPHHWW2.js} +3 -3
  146. package/dist/{chunk-D2WSW4GU.js → chunk-NC755EKE.js} +8 -2
  147. package/dist/{chunk-BA3U7ALS.js → chunk-NCLZJCXA.js} +26 -22
  148. package/dist/chunk-NKJDO4UC.js +39 -0
  149. package/dist/chunk-NOYOFYAJ.js +59 -0
  150. package/dist/{chunk-LPV6T362.js → chunk-NROSSWMS.js} +8 -6
  151. package/dist/{chunk-ZKYRDV7A.js → chunk-OBUB3H72.js} +14 -12
  152. package/dist/{chunk-ZQLRCA2V.js → chunk-OCQWSFJD.js} +10 -8
  153. package/dist/{chunk-42EPP7OB.js → chunk-OK6JGLE7.js} +14 -12
  154. package/dist/{chunk-MD7KUEJ3.js → chunk-OPWGPQ2N.js} +9 -7
  155. package/dist/{chunk-SH27FYPF.js → chunk-OSYHGGL3.js} +20 -18
  156. package/dist/chunk-OXXZZ7HQ.js +50 -0
  157. package/dist/chunk-P22EPEBR.js +57 -0
  158. package/dist/chunk-P4YUT7W7.js +45 -0
  159. package/dist/chunk-PCCLVIDP.js +217 -0
  160. package/dist/chunk-PFULMC2D.js +48 -0
  161. package/dist/chunk-PGAMTKBI.js +16 -0
  162. package/dist/{chunk-Y6K3CJBU.js → chunk-PNSSE7JM.js} +152 -29
  163. package/dist/{chunk-3UTYPHN3.js → chunk-POEMZECG.js} +1 -1
  164. package/dist/{chunk-GSGIZ2OO.js → chunk-POSDBRKV.js} +27 -24
  165. package/dist/{chunk-YZDZOEV4.js → chunk-POSZFDSQ.js} +3 -3
  166. package/dist/{chunk-7AB6OWTV.js → chunk-PQQKZPBU.js} +31 -25
  167. package/dist/{chunk-K6JB6XTX.js → chunk-PRMUQUWN.js} +20 -15
  168. package/dist/{chunk-ICHDSWEY.js → chunk-PT4USJNN.js} +10 -8
  169. package/dist/{chunk-265LWMOA.js → chunk-PWXB5GBB.js} +18 -16
  170. package/dist/{chunk-DCWN3HFV.js → chunk-PXMV2LLY.js} +6 -5
  171. package/dist/{chunk-THN26IEF.js → chunk-PXW2RZGQ.js} +4 -1
  172. package/dist/{chunk-CG6CULP6.js → chunk-Q367UGYN.js} +7 -5
  173. package/dist/chunk-QA4O2GGC.js +265 -0
  174. package/dist/{chunk-7FHNFCHK.js → chunk-QAVRDONY.js} +225 -375
  175. package/dist/{chunk-VAMHOHUU.js → chunk-QBMLBCQH.js} +16 -13
  176. package/dist/{chunk-WEOMJHPV.js → chunk-QLQIFJP3.js} +18 -15
  177. package/dist/{chunk-UZACEG2C.js → chunk-QLWDIKO4.js} +84 -27
  178. package/dist/{chunk-ZZFHLRQW.js → chunk-QVVGJVVX.js} +18 -16
  179. package/dist/{chunk-WIWTJMMR.js → chunk-QX4MAMUG.js} +23 -21
  180. package/dist/{chunk-JYTIHTIK.js → chunk-QZWRPQTI.js} +6 -6
  181. package/dist/{chunk-5WERBKLE.js → chunk-RCG5IAAT.js} +55 -227
  182. package/dist/chunk-RGZFOKVO.js +106 -0
  183. package/dist/{chunk-C7CEK3KW.js → chunk-RLZFL76D.js} +7 -5
  184. package/dist/{chunk-PTQ3ZALZ.js → chunk-RPQITJNX.js} +14 -12
  185. package/dist/{chunk-JS6WMC3J.js → chunk-RQQYEDAC.js} +10 -8
  186. package/dist/chunk-RQSLHZ7T.js +36 -0
  187. package/dist/{chunk-API5TOUB.js → chunk-RRQUQAXP.js} +1 -1
  188. package/dist/chunk-RYQ4JCFT.js +65 -0
  189. package/dist/chunk-S35DIFJH.js +38 -0
  190. package/dist/{chunk-YWAKDNMH.js → chunk-S5GSQPIN.js} +70 -19
  191. package/dist/chunk-S5XFO4GY.js +42 -0
  192. package/dist/chunk-S6LW2RRC.js +25 -0
  193. package/dist/{chunk-TSM6T6GQ.js → chunk-S6W3D5GS.js} +25 -23
  194. package/dist/{chunk-5PV7S2ZP.js → chunk-S7GUZ45I.js} +4 -3
  195. package/dist/{chunk-MMZUN7ZO.js → chunk-SCT4CEF7.js} +22 -20
  196. package/dist/{chunk-AOCWFA7T.js → chunk-SK5RVP7X.js} +8 -8
  197. package/dist/chunk-SRTUETF5.js +50 -0
  198. package/dist/{chunk-E57AOFYN.js → chunk-SVGGMBJI.js} +15 -13
  199. package/dist/{chunk-OV57AHCG.js → chunk-SWNKO4C4.js} +35 -26
  200. package/dist/chunk-SYP56T2D.js +65 -0
  201. package/dist/{chunk-5CMPVC3N.js → chunk-T33TPFGI.js} +25 -23
  202. package/dist/{chunk-Q26LDIUV.js → chunk-T3FNG2H2.js} +18 -15
  203. package/dist/{chunk-UFE36WJH.js → chunk-T6MAWL5P.js} +6 -4
  204. package/dist/{chunk-LN77DXBM.js → chunk-T6MX7WXM.js} +14 -11
  205. package/dist/{chunk-WCEF7H6L.js → chunk-T7IIEDA3.js} +10 -7
  206. package/dist/{chunk-2HTEMYTB.js → chunk-TABH4RBZ.js} +163 -84
  207. package/dist/{chunk-YO2PKTXT.js → chunk-TDSCKP3V.js} +5 -3
  208. package/dist/{chunk-BVWWPBKD.js → chunk-TMFMXQEN.js} +23 -21
  209. package/dist/{chunk-4B6BT75O.js → chunk-TNCF26JK.js} +83 -26
  210. package/dist/{chunk-75ASLHBT.js → chunk-TUM52SOE.js} +21 -15
  211. package/dist/{chunk-ZLS6PU2O.js → chunk-TV56QLLV.js} +4 -3
  212. package/dist/{chunk-JKIGL3XQ.js → chunk-TVQSXWWV.js} +36 -33
  213. package/dist/{chunk-OKUB6RJA.js → chunk-TXNSQ24G.js} +14 -11
  214. package/dist/{chunk-4CYTJ5TZ.js → chunk-UALE35WK.js} +4 -3
  215. package/dist/{chunk-CNU5Q2D5.js → chunk-UJF7PIMP.js} +35 -27
  216. package/dist/chunk-UMCDODBX.js +53 -0
  217. package/dist/{chunk-M6D2U3YM.js → chunk-UTPIFH4I.js} +4 -3
  218. package/dist/{chunk-COYN3UAN.js → chunk-V7PEHQZU.js} +95 -26
  219. package/dist/{chunk-U3NBK4EU.js → chunk-VJFXQISZ.js} +8 -8
  220. package/dist/chunk-VJZI6KFP.js +47 -0
  221. package/dist/{chunk-ECLXZWAG.js → chunk-VK7WYA64.js} +14 -12
  222. package/dist/{chunk-DDJPM5YX.js → chunk-VKTXFFOZ.js} +5 -3
  223. package/dist/{chunk-LIRVU3HW.js → chunk-VNIN7Q6Q.js} +32 -20
  224. package/dist/{chunk-7QPCGTPS.js → chunk-VRO7KSGL.js} +24 -21
  225. package/dist/{chunk-AZDITBCT.js → chunk-W3AZE7LN.js} +3 -3
  226. package/dist/chunk-W4TNCEI4.js +44 -0
  227. package/dist/{chunk-S2RY3BOD.js → chunk-W5VYJWOG.js} +31 -21
  228. package/dist/{chunk-X2CUXTWU.js → chunk-WF3RCZNO.js} +6 -6
  229. package/dist/{chunk-4D62IZII.js → chunk-WOMQQWTO.js} +7 -5
  230. package/dist/{chunk-UF4UHCIG.js → chunk-WXVTYLVH.js} +6 -4
  231. package/dist/{chunk-EDZ45WIR.js → chunk-WYGTSZHR.js} +18 -14
  232. package/dist/{chunk-HSZMPH5T.js → chunk-WZYM5M4U.js} +592 -133
  233. package/dist/chunk-X5ZHDSLU.js +49 -0
  234. package/dist/chunk-X7XVMYIL.js +5 -0
  235. package/dist/chunk-X7ZKNSK4.js +41 -0
  236. package/dist/{chunk-QE527XRY.js → chunk-XAPXKFIS.js} +26 -23
  237. package/dist/{chunk-HE3HRDNZ.js → chunk-XF6TSZW2.js} +2 -2
  238. package/dist/{chunk-GX74YWR7.js → chunk-XFDDJQT7.js} +16 -14
  239. package/dist/{chunk-5QUOPNLN.js → chunk-XGO74QWR.js} +4 -4
  240. package/dist/chunk-XLZAAAPX.js +43 -0
  241. package/dist/{chunk-NYOABJNK.js → chunk-XMUWPA56.js} +26 -24
  242. package/dist/{chunk-M4H2UG4R.js → chunk-XNFM6WUK.js} +19 -16
  243. package/dist/{chunk-TGVVUKTG.js → chunk-XOMEQVLK.js} +2 -2
  244. package/dist/{chunk-A2G72UI4.js → chunk-Y2H7X3VI.js} +7 -7
  245. package/dist/{chunk-37WE3LS2.js → chunk-Y5IE6YKD.js} +5 -3
  246. package/dist/{chunk-IFFRGC3N.js → chunk-YD3KTW4H.js} +14 -12
  247. package/dist/{chunk-75ZOZFGH.js → chunk-YDCOZOER.js} +20 -18
  248. package/dist/{chunk-6DQYZU2W.js → chunk-YERAAEO4.js} +20 -20
  249. package/dist/{chunk-J5AAZ6OJ.js → chunk-YHMPDIRG.js} +5 -4
  250. package/dist/{chunk-CNPY4NTZ.js → chunk-Z2D4P3R3.js} +15 -13
  251. package/dist/{chunk-E2VXBSIR.js → chunk-Z3H27OMV.js} +6 -4
  252. package/dist/{chunk-AE4P57KK.js → chunk-Z3RAFU5B.js} +17 -15
  253. package/dist/{chunk-RA33EYS4.js → chunk-ZENHDXRZ.js} +23 -17
  254. package/dist/{chunk-TJH2EUAZ.js → chunk-ZFHFC74B.js} +20 -18
  255. package/dist/{chunk-4PYC2UGC.js → chunk-ZGULQAPZ.js} +7 -4
  256. package/dist/{chunk-4SKZDI62.js → chunk-ZIUFM5HT.js} +3 -1
  257. package/dist/{chunk-JAABT3DA.js → chunk-ZJGCGKA4.js} +4 -3
  258. package/dist/{chunk-GIFMBCTW.js → chunk-ZLQEQR3D.js} +10 -8
  259. package/dist/{chunk-I2A3Z5AK.js → chunk-ZNHQGG7J.js} +7 -7
  260. package/dist/{chunk-5TDRBOAV.js → chunk-ZNTTW4IT.js} +7 -5
  261. package/dist/{chunk-ZX7235KR.js → chunk-ZR6J4QFQ.js} +44 -383
  262. package/dist/{chunk-F6H2RJ3N.js → chunk-ZSNOILL5.js} +1 -1
  263. package/dist/files.json +585 -509
  264. package/dist/packages/sdk/npm/index.js +1491 -110
  265. package/dist/packages/ui/dist/assets/{elk-api-CowTnhEJ.js → elk-api-DxfAMOJq.js} +2 -2
  266. package/dist/packages/ui/dist/assets/index-Buit9TfP.js +62 -0
  267. package/dist/packages/ui/dist/assets/index-Jyc9dFeZ.css +1 -0
  268. package/dist/packages/ui/dist/index.html +3 -2
  269. package/package.json +3 -3
  270. package/dist/chunk-26WBY34Y.js +0 -37
  271. package/dist/chunk-3TD6S4TC.js +0 -49
  272. package/dist/chunk-5G7ILBUG.js +0 -66
  273. package/dist/chunk-6FNAKCET.js +0 -38
  274. package/dist/chunk-AM6FP6JW.js +0 -43
  275. package/dist/chunk-CFH3QH26.js +0 -29
  276. package/dist/chunk-CLD4RVTA.js +0 -45
  277. package/dist/chunk-D5KV5PSK.js +0 -45
  278. package/dist/chunk-D5MASS4I.js +0 -48
  279. package/dist/chunk-DN4A2Q2O.js +0 -57
  280. package/dist/chunk-FGAGWYZB.js +0 -47
  281. package/dist/chunk-GUYL7RMK.js +0 -60
  282. package/dist/chunk-J2O4LFVI.js +0 -80
  283. package/dist/chunk-JITJP64K.js +0 -34
  284. package/dist/chunk-JRXHON4E.js +0 -41
  285. package/dist/chunk-JU4QNJSR.js +0 -62
  286. package/dist/chunk-N3RUGTGV.js +0 -39
  287. package/dist/chunk-ODMBPDDV.js +0 -298
  288. package/dist/chunk-OMPENNWY.js +0 -39
  289. package/dist/chunk-PKJAV25S.js +0 -43
  290. package/dist/chunk-PRTBPXYA.js +0 -50
  291. package/dist/chunk-PRZ7KMWL.js +0 -42
  292. package/dist/chunk-QSIDVFB7.js +0 -45
  293. package/dist/chunk-SB5GRUFM.js +0 -54
  294. package/dist/chunk-T74WQQGS.js +0 -40
  295. package/dist/chunk-X7EMBM5X.js +0 -34
  296. package/dist/chunk-Z6VLC5X4.js +0 -36
  297. package/dist/chunk-ZPDDEVQX.js +0 -47
  298. package/dist/packages/ui/dist/assets/index-Dw20IRhQ.css +0 -1
  299. package/dist/packages/ui/dist/assets/index-z2wv0d5d.js +0 -47
@@ -5,20 +5,22 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  readCatalog
8
- } from "./chunk-4SLBCEPD.js";
8
+ } from "./chunk-IKAW2KJU.js";
9
9
  import {
10
10
  scopeWords
11
- } from "./chunk-64AADMTW.js";
11
+ } from "./chunk-4GAB5ZOZ.js";
12
12
  import {
13
13
  baseClonePath,
14
14
  loadManifest
15
- } from "./chunk-XOL3GFW2.js";
15
+ } from "./chunk-3EWKO457.js";
16
16
  import {
17
17
  Sources,
18
18
  catalogDirOf,
19
- orgPackDirOf,
19
+ orgPackDirOf
20
+ } from "./chunk-FPBUTZI5.js";
21
+ import {
20
22
  require_dist
21
- } from "./chunk-PAINMSID.js";
23
+ } from "./chunk-BQGDB6ZL.js";
22
24
  import {
23
25
  __toESM
24
26
  } from "./chunk-TV45EUGM.js";
@@ -5,20 +5,20 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  excludesOf
8
- } from "./chunk-Q46QDDMF.js";
8
+ } from "./chunk-73GFVW2L.js";
9
9
  import {
10
10
  dirSource,
11
11
  houseImportsUntaught,
12
12
  readRulesOf
13
- } from "./chunk-JYMIB5XY.js";
13
+ } from "./chunk-CZ2ZS7AT.js";
14
14
  import {
15
15
  globToRegExp
16
- } from "./chunk-7AB6OWTV.js";
16
+ } from "./chunk-PQQKZPBU.js";
17
17
  import {
18
18
  conventionsOf,
19
19
  loadOrgPack,
20
20
  orgPackDirOf
21
- } from "./chunk-PAINMSID.js";
21
+ } from "./chunk-FPBUTZI5.js";
22
22
 
23
23
  // packages/cli/dist/house-imports.js
24
24
  async function houseUntaughtOf(root, repo, o) {
@@ -5,28 +5,31 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  runPluginTests
8
- } from "./chunk-4SLBCEPD.js";
9
- import "./chunk-64AADMTW.js";
10
- import "./chunk-JYMIB5XY.js";
11
- import "./chunk-CPK7QSBG.js";
12
- import "./chunk-YO2PKTXT.js";
13
- import "./chunk-TWQRPM76.js";
14
- import "./chunk-XOL3GFW2.js";
15
- import {
16
- SHIPPED_MODEL_PROVIDER_PLUGINS
17
- } from "./chunk-PRW3HXM3.js";
18
- import "./chunk-QHJJMZLX.js";
8
+ } from "./chunk-IKAW2KJU.js";
9
+ import "./chunk-CZ2ZS7AT.js";
10
+ import "./chunk-4GAB5ZOZ.js";
11
+ import "./chunk-A4JXVO5O.js";
12
+ import "./chunk-TDSCKP3V.js";
13
+ import "./chunk-G6EFXTUO.js";
19
14
  import {
20
15
  pluginEntryHash,
21
16
  runTranslator
22
- } from "./chunk-7AB6OWTV.js";
17
+ } from "./chunk-PQQKZPBU.js";
18
+ import "./chunk-3EWKO457.js";
19
+ import {
20
+ SHIPPED_MODEL_PROVIDER_PLUGINS
21
+ } from "./chunk-27AJAKX7.js";
22
+ import "./chunk-3424TLIJ.js";
23
+ import "./chunk-QA4O2GGC.js";
23
24
  import {
24
25
  ModelProviderPlugin,
25
26
  ScannerPlugin,
26
- orgPackDirOf,
27
+ orgPackDirOf
28
+ } from "./chunk-FPBUTZI5.js";
29
+ import "./chunk-B4AEL3RF.js";
30
+ import {
27
31
  require_dist
28
- } from "./chunk-PAINMSID.js";
29
- import "./chunk-ODMBPDDV.js";
32
+ } from "./chunk-BQGDB6ZL.js";
30
33
  import {
31
34
  __toESM
32
35
  } from "./chunk-TV45EUGM.js";
@@ -5,13 +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
  conformanceCommand
8
- } from "./chunk-G5YJBNDZ.js";
9
- import "./chunk-DDJPM5YX.js";
10
- import "./chunk-4KNOJC6J.js";
11
- import "./chunk-TWQRPM76.js";
12
- import "./chunk-7AB6OWTV.js";
13
- import "./chunk-PAINMSID.js";
14
- import "./chunk-ODMBPDDV.js";
8
+ } from "./chunk-3EX5HCZD.js";
9
+ import "./chunk-VKTXFFOZ.js";
10
+ import "./chunk-FL344WQD.js";
11
+ import "./chunk-G6EFXTUO.js";
12
+ import "./chunk-PQQKZPBU.js";
13
+ import "./chunk-FPBUTZI5.js";
14
+ import "./chunk-B4AEL3RF.js";
15
+ import "./chunk-BQGDB6ZL.js";
15
16
  import "./chunk-TV45EUGM.js";
16
17
  export {
17
18
  conformanceCommand
@@ -3,30 +3,27 @@ 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
+ onboardingView
8
+ } from "./chunk-K4OXYSGS.js";
6
9
  import {
7
10
  onboardingQueue,
8
11
  queueWhy,
9
12
  reasonOf
10
- } from "./chunk-HE3HRDNZ.js";
11
- import {
12
- onboardingView
13
- } from "./chunk-PNQLCRSS.js";
13
+ } from "./chunk-XF6TSZW2.js";
14
14
  import {
15
15
  houseUntaughtOf,
16
16
  houseUntaughtWords
17
- } from "./chunk-3J5I7ZOU.js";
18
- import {
19
- repoIdKey
20
- } from "./chunk-OMPENNWY.js";
17
+ } from "./chunk-K4RNVDR4.js";
21
18
  import {
22
19
  catalogSources
23
- } from "./chunk-4FOAYLI4.js";
20
+ } from "./chunk-7K5OH45X.js";
24
21
  import {
25
22
  readTaskRun
26
- } from "./chunk-Y6K3CJBU.js";
23
+ } from "./chunk-PNSSE7JM.js";
27
24
  import {
28
25
  rulesLackingAll
29
- } from "./chunk-GIFMBCTW.js";
26
+ } from "./chunk-ZLQEQR3D.js";
30
27
  import {
31
28
  loadReadPlan,
32
29
  partOfWords,
@@ -35,31 +32,31 @@ import {
35
32
  readPlanProgress,
36
33
  readPlanRelOf,
37
34
  tokensWords
38
- } from "./chunk-MD7KUEJ3.js";
35
+ } from "./chunk-OPWGPQ2N.js";
39
36
  import {
40
37
  checkoutOf,
41
38
  conventionsAt
42
- } from "./chunk-Q46QDDMF.js";
43
- import {
44
- readChangeTasks
45
- } from "./chunk-YWAKDNMH.js";
39
+ } from "./chunk-73GFVW2L.js";
46
40
  import {
47
41
  isMetarepo,
48
42
  notMetarepo
49
43
  } from "./chunk-3G4YI4ZU.js";
44
+ import {
45
+ readChangeTasks
46
+ } from "./chunk-S5GSQPIN.js";
50
47
  import {
51
48
  ASSISTANT_FORMATS,
52
49
  probedAssistant,
53
50
  readProbes,
54
51
  whatRunsWhere
55
- } from "./chunk-3AQ2R5NL.js";
52
+ } from "./chunk-J4CPHJUL.js";
56
53
  import {
57
54
  readNeeds,
58
55
  seedCollisions
59
- } from "./chunk-BEPCKDCP.js";
56
+ } from "./chunk-MLGWSBF4.js";
60
57
  import {
61
58
  readChangeFiles
62
- } from "./chunk-K332XW7K.js";
59
+ } from "./chunk-D6BVLTDV.js";
63
60
  import {
64
61
  assess,
65
62
  changeStore,
@@ -69,21 +66,25 @@ import {
69
66
  loadChangePolicy,
70
67
  releasePrReasons,
71
68
  stageCompletion
72
- } from "./chunk-HSZMPH5T.js";
69
+ } from "./chunk-WZYM5M4U.js";
70
+ import {
71
+ fileStepStore
72
+ } from "./chunk-FL344WQD.js";
73
73
  import {
74
74
  readCatalog
75
- } from "./chunk-4SLBCEPD.js";
75
+ } from "./chunk-IKAW2KJU.js";
76
76
  import {
77
77
  readKnowledge,
78
78
  snapshotDates,
79
79
  workingDays
80
- } from "./chunk-64AADMTW.js";
80
+ } from "./chunk-4GAB5ZOZ.js";
81
81
  import {
82
- baseClonePath
83
- } from "./chunk-XOL3GFW2.js";
82
+ baseClonePath,
83
+ repoIdKey
84
+ } from "./chunk-3EWKO457.js";
84
85
  import {
85
86
  stepClassOfNextStep
86
- } from "./chunk-QHJJMZLX.js";
87
+ } from "./chunk-3424TLIJ.js";
87
88
  import {
88
89
  ScanVerifyProposal,
89
90
  catalogDirOf,
@@ -103,9 +104,11 @@ import {
103
104
  questionWeights,
104
105
  readRepoSpec,
105
106
  readSpecFindings,
106
- require_dist,
107
107
  stepModelsOf
108
- } from "./chunk-PAINMSID.js";
108
+ } from "./chunk-FPBUTZI5.js";
109
+ import {
110
+ require_dist
111
+ } from "./chunk-BQGDB6ZL.js";
109
112
  import {
110
113
  __toESM
111
114
  } from "./chunk-TV45EUGM.js";
@@ -289,6 +292,7 @@ async function readNextState(root) {
289
292
  const questions = [.../* @__PURE__ */ new Set([...changeQuestions[c.id] ?? [], ...asked])];
290
293
  const missing = c.state === "define" || c.state === "returned" ? await draftMissing(changeContext, c).catch(() => ({ draft: false, brief: false })) : { draft: false, brief: false };
291
294
  const blocking = stageOf(c.state) === "tasks" ? await blockingOf(changeContext, c).catch(() => 0) : 0;
295
+ const gate = draftingAt(own) >= 0 && !live && (stagesDone.includes(own) || c.state === "returned") ? await gateFindingsOf(changeContext, c).catch(() => []) : [];
292
296
  if (busy && stageOf(c.state) !== "done" && (!active || busy > active.at))
293
297
  active = { id: c.id, at: busy };
294
298
  changes.push({
@@ -301,6 +305,8 @@ async function readNextState(root) {
301
305
  feature: existsSync(join(changesDirOf(root), c.id, "feature.yaml")),
302
306
  ...missing.draft ? { undrafted: true } : {},
303
307
  ...blocking ? { blocking } : {},
308
+ ...gate.length ? { gate } : {},
309
+ ...c.state === "released" ? await releasedOf(root, c.id) : {},
304
310
  ...stageOf(c.state) === "release" ? await releasePrsOf(root, c.id) : {},
305
311
  ...missing.brief ? { brief: `${changesRelOf(root)}/${c.id}/brief.md` } : {},
306
312
  ...questions.length ? { questions } : {},
@@ -312,7 +318,8 @@ async function readNextState(root) {
312
318
  phase: live.phase,
313
319
  number: live.pr.number,
314
320
  url: live.pr.url,
315
- state: live.state
321
+ state: live.state,
322
+ ...isManualPrUrl(live.pr.url) ? await manualPrRecorded(root, c.id, live.branch, orgPack) : {}
316
323
  }
317
324
  } : {},
318
325
  ...clash.length ? { seedCollisions: clash } : {},
@@ -410,9 +417,124 @@ async function blockingOf(ctx, c) {
410
417
  const a = await assess(await ctx(), c);
411
418
  return a.blockers.filter((b) => b.code === "blocking-finding" || b.code === "open-gap").length;
412
419
  }
420
+ async function gateFindingsOf(ctx, c) {
421
+ const a = await assess(await ctx(), c);
422
+ return a.blockers.flatMap((b) => b.code === "blocking-finding" || b.code === "open-gap" ? [{ code: b.code, ...b.finding ? { finding: b.finding } : {}, message: b.message }] : []);
423
+ }
424
+ function gateBlockedStep(c, stage, gate) {
425
+ const first = c.gate?.[0];
426
+ if (!first)
427
+ return void 0;
428
+ const id = c.id;
429
+ const more = c.gate.length - 1;
430
+ const head = `${id}'s ${stage} stage is done, but the ${gate} gate is blocked, so its hand-off would be refused: ${first.message.replace(/\.?$/, ".")}`;
431
+ const tail = more ? `; ${more} more after it.` : ".";
432
+ const asked = /\(owner question (q-[0-9a-f]+)[,)]/.exec(first.message)?.[1];
433
+ if (asked)
434
+ return {
435
+ step: "answer",
436
+ command: `atticus questions answer ${asked}`,
437
+ where: METAREPO,
438
+ why: `${head} Its owner answers ${asked} (Questions, Owner questions), and the answer closes the gap${tail}`,
439
+ person: true,
440
+ change: id
441
+ };
442
+ const f = first.finding ?? "<id>";
443
+ if (first.code === "open-gap")
444
+ return {
445
+ step: "finding",
446
+ command: `atticus finding ${id} ${f} ask`,
447
+ where: METAREPO,
448
+ why: `${head} Ask its owner (atticus finding ${id} ${f} ask --asked-of <who>), or fill it in (atticus finding ${id} ${f} edit-and-apply)${tail}`,
449
+ person: true,
450
+ change: id
451
+ };
452
+ return {
453
+ step: "finding",
454
+ command: `atticus finding ${id} ${f} edit-and-apply`,
455
+ where: METAREPO,
456
+ why: `${head} Fix it (atticus finding ${id} ${f} edit-and-apply), or record why it doesn't apply (not-relevant --reason, or waive)${tail}`,
457
+ person: true,
458
+ change: id
459
+ };
460
+ }
461
+ async function releasedOf(root, id) {
462
+ try {
463
+ const { archiveGate } = await import("./chunk-P22EPEBR.js");
464
+ const g = await archiveGate(root, id);
465
+ return {
466
+ released: { blockers: g.blockers.map((b) => ({ code: b.code, message: b.message })) }
467
+ };
468
+ } catch {
469
+ return { released: { blockers: [] } };
470
+ }
471
+ }
472
+ function releasedSteps(c) {
473
+ const id = c.id;
474
+ const blockers = c.released?.blockers ?? [];
475
+ const repoOf = (m) => /^([A-Za-z0-9][\w.-]*): /.exec(m)?.[1];
476
+ const reads = [];
477
+ for (const b of blockers) {
478
+ const repo = repoOf(b.message);
479
+ if (!repo)
480
+ continue;
481
+ if (b.code === "needs-reading")
482
+ reads.push({
483
+ step: "reread",
484
+ command: `atticus map ${repo}`,
485
+ slash: `/atticus-map ${repo}`,
486
+ where: METAREPO,
487
+ why: `${id} is released, and the archive gate needs what shipped read: ${b.message}`,
488
+ repo,
489
+ change: id
490
+ });
491
+ else if (b.code === "catalog-stale")
492
+ reads.push({
493
+ step: "verify",
494
+ command: `atticus verify ${repo} --write`,
495
+ where: METAREPO,
496
+ why: `${id} is released, and the archive gate needs the catalog written from what shipped: ${b.message}`,
497
+ repo,
498
+ change: id
499
+ });
500
+ else if (b.code === "not-synced")
501
+ reads.push({
502
+ step: "sync",
503
+ command: `atticus workspace sync --repos ${repo}`,
504
+ where: METAREPO,
505
+ why: `${id} is released, and the archive gate needs ${repo}'s clone at what merged: ${b.message}`,
506
+ repo,
507
+ change: id
508
+ });
509
+ }
510
+ const others = blockers.filter((b) => !repoOf(b.message) || !["needs-reading", "catalog-stale", "not-synced"].includes(b.code));
511
+ if (others.length)
512
+ return [
513
+ ...reads,
514
+ {
515
+ step: "archive-gate",
516
+ command: `atticus ci archive-gate ${id}`,
517
+ where: METAREPO,
518
+ why: `${id} is released, but the archive gate doesn't pass yet: ${others.map((b) => b.message).join(" ")}`,
519
+ change: id,
520
+ person: true
521
+ }
522
+ ];
523
+ return [
524
+ ...reads,
525
+ {
526
+ step: "archive",
527
+ command: `atticus change archive ${id}`,
528
+ where: METAREPO,
529
+ why: reads.length ? `Then a person archives ${id} (its spec deltas merge into openspec/specs/ and the estate is scanned again).` : `${id} is released and the archive gate passes: a person archives it (its spec deltas merge into openspec/specs/ and the estate is scanned again, so the catalog says what shipped).`,
530
+ change: id,
531
+ person: true
532
+ }
533
+ ];
534
+ }
413
535
  async function releasePrsOf(root, id) {
414
- const reasons = await releasePrReasons(root, id).catch(() => []);
415
- if (reasons.some((r) => r.code === "release-pr-missing"))
536
+ const reasons = await releasePrReasons(root, id, { offline: true }).catch(() => []);
537
+ if (reasons.some((r) => r.code === "release-pr-missing" || r.code === "release-pr-stale"))
416
538
  return { releasePrs: "raise" };
417
539
  if (reasons.some((r) => r.code === "release-pr-not-merged"))
418
540
  return { releasePrs: "merge" };
@@ -439,6 +561,8 @@ function stageOf(state) {
439
561
  }
440
562
  }
441
563
  function changeSteps(c) {
564
+ if (c.state === "released")
565
+ return releasedSteps(c);
442
566
  const stage = stageSteps(c);
443
567
  const id = c.id;
444
568
  const done = stageOf(c.state) === "done";
@@ -481,6 +605,15 @@ function changeSteps(c) {
481
605
  const ownDone = (c.stagesDone ?? []).includes(stageOf(c.state));
482
606
  return ownDone ? [...seeds, ...stage, ...asked, ...find, ...raise] : [...asked, ...seeds, ...stage, ...find, ...raise];
483
607
  }
608
+ async function manualPrRecorded(root, change, branch, orgPack) {
609
+ const steps = await fileStepStore(root).list({ change, system: "git-host" }).catch(() => []);
610
+ const open = steps.find((x) => x.action === "open-pull-request" && x.inputs.head === branch && x.state !== "open");
611
+ if (!open)
612
+ return {};
613
+ const named = orgPack instanceof Error ? void 0 : orgPack.runtime.adapters.gitHost?.settings.metarepo;
614
+ const repo = typeof open.inputs.repo === "string" ? open.inputs.repo : void 0;
615
+ return { recorded: typeof named === "string" || !repo ? {} : { repo } };
616
+ }
484
617
  function handoffWait(c) {
485
618
  const h = c.handoff;
486
619
  if (!h)
@@ -498,6 +631,17 @@ function handoffWait(c) {
498
631
  ...isManualPrUrl(h.url) ? {} : { pr: h.url }
499
632
  }
500
633
  ];
634
+ if (isManualPrUrl(h.url) && h.recorded)
635
+ return [
636
+ {
637
+ step: "merge",
638
+ command: `atticus change sync ${id}${h.recorded.repo ? ` --repo ${h.recorded.repo}` : ""}`,
639
+ where: METAREPO,
640
+ why: `${id}'s ${h.phase} hand-off PR is recorded on its manual steps: syncing reads what was recorded and moves the change on; once its merge is recorded, that approves the ${h.phase} gate.`,
641
+ change: id,
642
+ person: true
643
+ }
644
+ ];
501
645
  if (isManualPrUrl(h.url))
502
646
  return [
503
647
  {
@@ -591,6 +735,9 @@ function stageSteps(c) {
591
735
  change: id
592
736
  }
593
737
  ];
738
+ const blocked = gateBlockedStep(c, stage, gate);
739
+ if (blocked)
740
+ return [blocked];
594
741
  return [
595
742
  {
596
743
  step: "handoff",
@@ -955,7 +1102,7 @@ function nextSteps(s) {
955
1102
  why: `${plural(s.unverifiedNeeds, "open need")} of changes ${s.unverifiedNeeds === 1 ? "comes" : "come"} from knowledge items no person has verified: check each against its page (atticus knowledge verify, correct or reject).`,
956
1103
  person: true
957
1104
  });
958
- const inFlight = s.changes.filter((c) => stageOf(c.state) !== "done");
1105
+ const inFlight = s.changes.filter((c) => stageOf(c.state) !== "done" || c.state === "released");
959
1106
  for (const c of inFlight)
960
1107
  if (c !== inHand)
961
1108
  out.push(...changeAnswer(c, byChange[c.id] ?? []), ...changeSteps(c));
@@ -6,6 +6,8 @@ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  DECIDE_AGENTS,
8
8
  PROPOSE_CHANGE,
9
+ cancelMatchRuns,
10
+ cancelOpenDecideRuns,
9
11
  decideRunDone,
10
12
  decidedAnswerLines,
11
13
  findDecideRun,
@@ -16,14 +18,18 @@ import {
16
18
  proposedSince,
17
19
  sha256,
18
20
  startDecideRun
19
- } from "./chunk-3SSTNB4E.js";
20
- import "./chunk-QHJJMZLX.js";
21
- import "./chunk-PAINMSID.js";
22
- import "./chunk-ODMBPDDV.js";
21
+ } from "./chunk-7NQAGYK4.js";
22
+ import "./chunk-3424TLIJ.js";
23
+ import "./chunk-QA4O2GGC.js";
24
+ import "./chunk-FPBUTZI5.js";
25
+ import "./chunk-B4AEL3RF.js";
26
+ import "./chunk-BQGDB6ZL.js";
23
27
  import "./chunk-TV45EUGM.js";
24
28
  export {
25
29
  DECIDE_AGENTS,
26
30
  PROPOSE_CHANGE,
31
+ cancelMatchRuns,
32
+ cancelOpenDecideRuns,
27
33
  decideRunDone,
28
34
  decidedAnswerLines,
29
35
  findDecideRun,
@@ -0,0 +1,66 @@
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
+
7
+ // packages/cli/dist/user-state.js
8
+ import { createHash, randomBytes } from "node:crypto";
9
+ import { realpathSync } from "node:fs";
10
+ import { mkdir, readFile, rename, rm, writeFile } from "node:fs/promises";
11
+ import { homedir } from "node:os";
12
+ import { join, resolve } from "node:path";
13
+ function userStateDir(env = process.env, platform = process.platform) {
14
+ const xdg = env.XDG_STATE_HOME?.trim();
15
+ if (xdg)
16
+ return join(xdg, "atticus");
17
+ if (platform === "win32")
18
+ return join(env.LOCALAPPDATA?.trim() || join(homedir(), "AppData", "Local"), "atticus", "state");
19
+ return join(homedir(), ".local", "state", "atticus");
20
+ }
21
+ function metarepoStateDir(root, env = process.env) {
22
+ let real = resolve(root);
23
+ try {
24
+ real = realpathSync.native(real);
25
+ } catch {
26
+ }
27
+ if (process.platform === "win32")
28
+ real = real.toLowerCase();
29
+ const id = createHash("sha256").update(real).digest("hex").slice(0, 24);
30
+ return join(userStateDir(env), "metarepos", id);
31
+ }
32
+ async function readUserState(root, name, env = process.env) {
33
+ const text = await readFile(join(metarepoStateDir(root, env), name), "utf8").catch(() => void 0);
34
+ if (text === void 0)
35
+ return void 0;
36
+ try {
37
+ return JSON.parse(text);
38
+ } catch {
39
+ return void 0;
40
+ }
41
+ }
42
+ async function writeUserState(root, name, value, env = process.env) {
43
+ const file = join(metarepoStateDir(root, env), name);
44
+ const dir = join(file, "..");
45
+ await mkdir(dir, { recursive: true, mode: 448 });
46
+ const tmp = `${file}.${randomBytes(6).toString("hex")}.tmp`;
47
+ await writeFile(tmp, JSON.stringify({ ...value, root: resolve(root) }) + "\n", {
48
+ encoding: "utf8",
49
+ mode: 384
50
+ });
51
+ try {
52
+ await rename(tmp, file);
53
+ } catch (e) {
54
+ await rm(tmp, { force: true });
55
+ throw e;
56
+ }
57
+ }
58
+ async function forgetUserState(root, name, env = process.env) {
59
+ await rm(join(metarepoStateDir(root, env), name), { force: true });
60
+ }
61
+
62
+ export {
63
+ readUserState,
64
+ writeUserState,
65
+ forgetUserState
66
+ };