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

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 (279) hide show
  1. package/dist/bin.js +3 -3
  2. package/dist/{chunk-IKAW2KJU.js → chunk-25CUJJTP.js} +505 -285
  3. package/dist/chunk-26AB2WNW.js +62 -0
  4. package/dist/{chunk-TXNSQ24G.js → chunk-2ITYURTR.js} +3 -3
  5. package/dist/{chunk-66AQ2JIU.js → chunk-2JHE75RW.js} +13 -11
  6. package/dist/{chunk-T7IIEDA3.js → chunk-37UTWGU4.js} +6 -4
  7. package/dist/{chunk-OCQWSFJD.js → chunk-3BEGKSDW.js} +14 -12
  8. package/dist/{chunk-4MYHETJ3.js → chunk-3FGQFDS4.js} +20 -18
  9. package/dist/{chunk-ZFHFC74B.js → chunk-3NS4RS3C.js} +20 -18
  10. package/dist/{chunk-LO6Y7OTG.js → chunk-3TGX4SJ3.js} +10 -7
  11. package/dist/{chunk-K4OXYSGS.js → chunk-3UMKLB6P.js} +7 -5
  12. package/dist/{chunk-4R3TO4VL.js → chunk-3VS7RNEB.js} +19 -17
  13. package/dist/{chunk-ICBGVVRI.js → chunk-3XCCT2GR.js} +163 -38
  14. package/dist/{chunk-MWF4PXQR.js → chunk-3XZRYQWU.js} +37 -34
  15. package/dist/{chunk-KDJ2YKAZ.js → chunk-432FGEVB.js} +9 -7
  16. package/dist/{chunk-C6ORPLCN.js → chunk-44QUCNPH.js} +7 -5
  17. package/dist/{chunk-RLZFL76D.js → chunk-4CS3PMIM.js} +15 -13
  18. package/dist/{chunk-T6MX7WXM.js → chunk-4DCIUKIE.js} +18 -11
  19. package/dist/{chunk-FRCOKUU4.js → chunk-4DX4DIND.js} +9 -7
  20. package/dist/{chunk-RGZFOKVO.js → chunk-4MNMOUU7.js} +6 -4
  21. package/dist/{chunk-BP33TBLI.js → chunk-4RKIOUPA.js} +9 -7
  22. package/dist/{chunk-HUGQZQ2K.js → chunk-532HDXMM.js} +9 -7
  23. package/dist/{chunk-6RQOINER.js → chunk-5EIKOU7L.js} +6 -4
  24. package/dist/{chunk-G6EFXTUO.js → chunk-5FPAKAGE.js} +7 -5
  25. package/dist/{chunk-CA3DKO4D.js → chunk-5FUFVNXB.js} +4 -2
  26. package/dist/{chunk-NC755EKE.js → chunk-5MKV4TV6.js} +1 -1
  27. package/dist/{chunk-VRO7KSGL.js → chunk-5ORLKITZ.js} +23 -21
  28. package/dist/{chunk-W3AZE7LN.js → chunk-5PSKLTBR.js} +3 -3
  29. package/dist/{chunk-JMEWJPF2.js → chunk-5QF5W5P2.js} +7 -7
  30. package/dist/{chunk-CT6NINGR.js → chunk-5Z7L2TSR.js} +3 -3
  31. package/dist/{chunk-SCT4CEF7.js → chunk-66DWUSNY.js} +22 -20
  32. package/dist/{chunk-SRTUETF5.js → chunk-6FIYEB7M.js} +24 -22
  33. package/dist/{chunk-6NCPLIIP.js → chunk-6OZAQPU5.js} +417 -365
  34. package/dist/{chunk-4FLNCK6Q.js → chunk-6TNQO76I.js} +13 -11
  35. package/dist/{chunk-LPDTDFKA.js → chunk-6UTD5RQH.js} +18 -16
  36. package/dist/{chunk-ZNHQGG7J.js → chunk-775FMPUB.js} +4 -4
  37. package/dist/{chunk-GM4EFHUX.js → chunk-77AZRGWE.js} +19 -16
  38. package/dist/{chunk-75OMRKY2.js → chunk-7HWCEDPX.js} +7 -5
  39. package/dist/{chunk-TMFMXQEN.js → chunk-7U46TCRZ.js} +22 -19
  40. package/dist/{chunk-5VTIWEWP.js → chunk-A3NUZJFI.js} +4 -2
  41. package/dist/{chunk-OK6JGLE7.js → chunk-A4VDFIMR.js} +14 -12
  42. package/dist/{chunk-QLWDIKO4.js → chunk-A53IYUCR.js} +20 -17
  43. package/dist/{chunk-D6BVLTDV.js → chunk-A6ZG3UOS.js} +28 -26
  44. package/dist/{chunk-QVVGJVVX.js → chunk-AAY6VPPO.js} +18 -16
  45. package/dist/{chunk-VNIN7Q6Q.js → chunk-ABDE5IRC.js} +18 -16
  46. package/dist/{chunk-XFDDJQT7.js → chunk-AM7PYKVP.js} +15 -13
  47. package/dist/{chunk-J32IPTVQ.js → chunk-ANUMIPF6.js} +22 -20
  48. package/dist/{chunk-SK5RVP7X.js → chunk-ASFRT33J.js} +11 -9
  49. package/dist/{chunk-6R5VHR3N.js → chunk-AWDCVZYO.js} +9 -7
  50. package/dist/{chunk-YD3KTW4H.js → chunk-B63NWU3P.js} +14 -12
  51. package/dist/{chunk-HMZ2DRBC.js → chunk-BBZ6UKN3.js} +16 -5
  52. package/dist/{chunk-3ZA3AK2D.js → chunk-BFQ5IKQA.js} +12 -10
  53. package/dist/{chunk-3UHV76UD.js → chunk-BLVFHN3C.js} +41 -38
  54. package/dist/{chunk-PT4USJNN.js → chunk-BQXAHIZ6.js} +10 -8
  55. package/dist/{chunk-5OXKCH4Z.js → chunk-BTS56NV7.js} +90 -40
  56. package/dist/{chunk-S5GSQPIN.js → chunk-BWYW533C.js} +18 -16
  57. package/dist/{chunk-4ETO2FXE.js → chunk-BYKWWSXL.js} +14 -12
  58. package/dist/chunk-C7BB6IQT.js +147 -0
  59. package/dist/{chunk-S35DIFJH.js → chunk-CCQWQFOT.js} +19 -17
  60. package/dist/{chunk-TVQSXWWV.js → chunk-CCQZN6W3.js} +35 -33
  61. package/dist/{chunk-POSDBRKV.js → chunk-CFSBBLDD.js} +28 -25
  62. package/dist/{chunk-2UMSHYCB.js → chunk-CFSHLQPK.js} +26 -24
  63. package/dist/{chunk-X7ZKNSK4.js → chunk-CI4D6VSU.js} +20 -18
  64. package/dist/{chunk-JXAKYP45.js → chunk-CKRPMRFQ.js} +27 -25
  65. package/dist/{chunk-QAVRDONY.js → chunk-CNF2EZ6S.js} +120 -118
  66. package/dist/chunk-CTJHEG6A.js +97 -0
  67. package/dist/{chunk-ENH6Z4TY.js → chunk-CU7ZK7KP.js} +17 -17
  68. package/dist/{chunk-4GAB5ZOZ.js → chunk-CZ75S2EZ.js} +30 -26
  69. package/dist/{chunk-EVTI22PQ.js → chunk-D5CJEKZI.js} +7 -4
  70. package/dist/{chunk-TV56QLLV.js → chunk-D5ZC7IMC.js} +5 -3
  71. package/dist/{chunk-YDCOZOER.js → chunk-D63NU53X.js} +20 -18
  72. package/dist/{chunk-N2YX6JMY.js → chunk-DCQSPSXU.js} +28 -23
  73. package/dist/{chunk-ZLQEQR3D.js → chunk-DCRZ3OQ7.js} +8 -6
  74. package/dist/chunk-DD2AXECF.js +41 -0
  75. package/dist/{chunk-PRMUQUWN.js → chunk-DF6DPCW2.js} +16 -14
  76. package/dist/{chunk-ZJGCGKA4.js → chunk-DH3EQMIA.js} +5 -3
  77. package/dist/{chunk-UALE35WK.js → chunk-DIXA74N7.js} +5 -3
  78. package/dist/{chunk-TDSCKP3V.js → chunk-DIYNRYXW.js} +2 -2
  79. package/dist/chunk-DYDNW4O6.js +52 -0
  80. package/dist/{chunk-TNCF26JK.js → chunk-E7YDJH6B.js} +14 -12
  81. package/dist/chunk-EEKQI3U4.js +45 -0
  82. package/dist/{chunk-IYNCSYU4.js → chunk-EHF2MBGR.js} +6 -4
  83. package/dist/{chunk-FQVSLBTV.js → chunk-ENZ3PI7L.js} +3 -3
  84. package/dist/{chunk-HJQVUOUL.js → chunk-EPQQ2XVM.js} +13 -11
  85. package/dist/{chunk-FL344WQD.js → chunk-ESJALLOK.js} +6 -4
  86. package/dist/{chunk-MBYYQHPM.js → chunk-ETQSQ2EC.js} +6 -4
  87. package/dist/{chunk-7XYLNQFO.js → chunk-EUMXLSW5.js} +13 -5
  88. package/dist/{chunk-PWXB5GBB.js → chunk-F63F4NKT.js} +18 -16
  89. package/dist/{chunk-6Y4FXOMI.js → chunk-FDL2JOLB.js} +24 -22
  90. package/dist/{chunk-T33TPFGI.js → chunk-FFDVAV56.js} +24 -22
  91. package/dist/{chunk-S6LW2RRC.js → chunk-FFYOZ7PF.js} +10 -8
  92. package/dist/{chunk-6SNTHK43.js → chunk-FGW5TLGM.js} +24 -19
  93. package/dist/{chunk-RRQUQAXP.js → chunk-FL53R4SW.js} +1 -1
  94. package/dist/chunk-FYWLB7PO.js +38 -0
  95. package/dist/{chunk-ZENHDXRZ.js → chunk-G3W7GNEP.js} +20 -18
  96. package/dist/{chunk-B4AEL3RF.js → chunk-G3ZFEHCX.js} +21 -107
  97. package/dist/{chunk-Y2H7X3VI.js → chunk-G67GOK4S.js} +10 -8
  98. package/dist/{chunk-73GFVW2L.js → chunk-GCMDDVIE.js} +14 -9
  99. package/dist/{chunk-A4JXVO5O.js → chunk-GFYVVTKH.js} +10 -8
  100. package/dist/chunk-GJVCBTSO.js +20722 -0
  101. package/dist/{chunk-7NQAGYK4.js → chunk-GKZDHXC2.js} +8 -8
  102. package/dist/{chunk-P22EPEBR.js → chunk-GQFUEUC7.js} +18 -16
  103. package/dist/chunk-GQPP4P2E.js +33 -0
  104. package/dist/{chunk-UJF7PIMP.js → chunk-GS7N3RFG.js} +53 -34
  105. package/dist/{chunk-LZVHP7CT.js → chunk-GXQYEIYM.js} +7 -5
  106. package/dist/{chunk-2YSD6E6V.js → chunk-H5EQOSTC.js} +42 -33
  107. package/dist/{chunk-FTLYXMHA.js → chunk-H7KERB6Q.js} +7 -5
  108. package/dist/{chunk-IMZFOMVX.js → chunk-HGDBM3A5.js} +5 -3
  109. package/dist/{chunk-73CC73I4.js → chunk-HI7ADE4E.js} +1 -1
  110. package/dist/{chunk-CZ2ZS7AT.js → chunk-HNPKCRCE.js} +1004 -329
  111. package/dist/{chunk-CMB7FXHJ.js → chunk-HRHXTLUM.js} +16 -14
  112. package/dist/{chunk-CFUDAW3R.js → chunk-HRYI22QU.js} +17 -15
  113. package/dist/{chunk-XOMEQVLK.js → chunk-HWNFFCGB.js} +5 -3
  114. package/dist/{chunk-VJFXQISZ.js → chunk-HXFZX2BI.js} +12 -8
  115. package/dist/{chunk-BAY4K55I.js → chunk-HYHV2P3G.js} +16 -13
  116. package/dist/{chunk-QZWRPQTI.js → chunk-IB66ZLDN.js} +8 -6
  117. package/dist/{chunk-PQQKZPBU.js → chunk-IJQHBK76.js} +1 -1
  118. package/dist/{chunk-XF6TSZW2.js → chunk-IK6LHW3E.js} +6 -4
  119. package/dist/{chunk-FSN6JFXB.js → chunk-IOHRX4KF.js} +20 -18
  120. package/dist/{chunk-TUM52SOE.js → chunk-IRXZKKCG.js} +17 -15
  121. package/dist/{chunk-TABH4RBZ.js → chunk-IUBBEU6O.js} +16 -14
  122. package/dist/{chunk-S6W3D5GS.js → chunk-IWPO5AUT.js} +29 -26
  123. package/dist/{chunk-J4CPHJUL.js → chunk-J4K4C4T5.js} +30 -14
  124. package/dist/{chunk-JSP73CDW.js → chunk-JCEYOSST.js} +8 -5
  125. package/dist/{chunk-POEMZECG.js → chunk-JCG2EBNB.js} +1 -1
  126. package/dist/{chunk-63NFFAGI.js → chunk-JFBVIMGY.js} +14 -12
  127. package/dist/{chunk-FMR2D3AZ.js → chunk-JJ4SCGRJ.js} +8 -6
  128. package/dist/{chunk-ZNTTW4IT.js → chunk-JLYH2QOE.js} +7 -5
  129. package/dist/{chunk-W5VYJWOG.js → chunk-JMH6TCZJ.js} +25 -23
  130. package/dist/{chunk-2WUTCPPJ.js → chunk-JUHZBZPZ.js} +17 -13
  131. package/dist/{chunk-NAPHHWW2.js → chunk-JVMNEI7B.js} +3 -3
  132. package/dist/{chunk-S5XFO4GY.js → chunk-JYJMIAFS.js} +6 -4
  133. package/dist/{chunk-BFMTGNAQ.js → chunk-KIY2WCN7.js} +5 -3
  134. package/dist/{chunk-DCRYOMTM.js → chunk-KYO5HT4G.js} +14 -12
  135. package/dist/chunk-L27KUL5B.js +38 -0
  136. package/dist/{chunk-PGAMTKBI.js → chunk-L3PIN47C.js} +6 -4
  137. package/dist/{chunk-FMJYKLDY.js → chunk-L6Z6TMIK.js} +5 -5
  138. package/dist/{chunk-QBMLBCQH.js → chunk-LAGZBQHK.js} +16 -13
  139. package/dist/{chunk-SYP56T2D.js → chunk-LBG4GMOR.js} +7 -4
  140. package/dist/{chunk-XAPXKFIS.js → chunk-LDKP7OWQ.js} +33 -24
  141. package/dist/{chunk-ZR6J4QFQ.js → chunk-LELM7X5H.js} +13 -11
  142. package/dist/{chunk-CQ7RF4QN.js → chunk-LIB6AUZS.js} +6 -4
  143. package/dist/{chunk-J25YOUIZ.js → chunk-LIQWFDOZ.js} +6 -4
  144. package/dist/{chunk-OPWGPQ2N.js → chunk-LKUTBQ2Y.js} +8 -6
  145. package/dist/{chunk-7IFTSAHP.js → chunk-LOCJHNZI.js} +10 -8
  146. package/dist/{chunk-6ZFF7XSL.js → chunk-LTIXFLYE.js} +6 -6
  147. package/dist/{chunk-M3EOFSPY.js → chunk-M3RWF7MC.js} +33 -29
  148. package/dist/chunk-MA6UK7GX.js +42 -0
  149. package/dist/{chunk-RCG5IAAT.js → chunk-MCE74XMF.js} +12 -10
  150. package/dist/{chunk-BYBU2EIB.js → chunk-MDTAZ6NE.js} +23 -21
  151. package/dist/{chunk-Y5IE6YKD.js → chunk-MMOMKHAX.js} +6 -4
  152. package/dist/{chunk-3424TLIJ.js → chunk-MOWUP33K.js} +12 -10
  153. package/dist/{chunk-WYGTSZHR.js → chunk-MPATOMY5.js} +16 -14
  154. package/dist/{chunk-QX4MAMUG.js → chunk-MQFSEGTU.js} +23 -21
  155. package/dist/{chunk-WXVTYLVH.js → chunk-MT3FNSXO.js} +4 -4
  156. package/dist/{chunk-MH2ZK67S.js → chunk-MUY5MAGM.js} +15 -12
  157. package/dist/{chunk-WF3RCZNO.js → chunk-MVXMISNA.js} +9 -7
  158. package/dist/{chunk-S7GUZ45I.js → chunk-MWN7CBVL.js} +5 -3
  159. package/dist/{chunk-AGOLEMHK.js → chunk-MZWM73S2.js} +10 -8
  160. package/dist/chunk-NBZ7RKX3.js +46 -0
  161. package/dist/{chunk-CKVBDVIW.js → chunk-NC56V6KQ.js} +6 -4
  162. package/dist/{chunk-Z3RAFU5B.js → chunk-NN6AXKFX.js} +17 -15
  163. package/dist/{chunk-T6MAWL5P.js → chunk-NOU5IBLM.js} +6 -4
  164. package/dist/{chunk-YERAAEO4.js → chunk-NQDHRT2H.js} +15 -13
  165. package/dist/{chunk-POSZFDSQ.js → chunk-NTEPBOAF.js} +6 -4
  166. package/dist/{chunk-27AJAKX7.js → chunk-NTOPAOBY.js} +3 -3
  167. package/dist/{chunk-K757G7AD.js → chunk-NX5IPHI3.js} +19 -16
  168. package/dist/{chunk-7YQBDE5W.js → chunk-O4ZWZZZT.js} +6 -4
  169. package/dist/{chunk-J2H7YG3K.js → chunk-OCU5S2XG.js} +5 -3
  170. package/dist/{chunk-LSHSDC6S.js → chunk-OKSRK2LJ.js} +19 -17
  171. package/dist/{chunk-BFL4PO64.js → chunk-OSWOIFRQ.js} +6 -4
  172. package/dist/{chunk-3EWKO457.js → chunk-OSZTENIA.js} +8 -6
  173. package/dist/{chunk-Q367UGYN.js → chunk-OTUBMKSG.js} +10 -8
  174. package/dist/{chunk-E3PDCQRH.js → chunk-OYKNPZCV.js} +291 -247
  175. package/dist/{chunk-NROSSWMS.js → chunk-OYTSRNSZ.js} +8 -6
  176. package/dist/chunk-OYZ64UMQ.js +67 -0
  177. package/dist/{chunk-RPQITJNX.js → chunk-PB3NCPRF.js} +10 -8
  178. package/dist/chunk-PIPJZIJE.js +47 -0
  179. package/dist/{chunk-XMUWPA56.js → chunk-PIPYJTIL.js} +27 -24
  180. package/dist/{chunk-SVGGMBJI.js → chunk-PUMNCWHJ.js} +15 -13
  181. package/dist/{chunk-L3RCQWVQ.js → chunk-PZBNDFZ7.js} +31 -24
  182. package/dist/chunk-Q2ULHBCJ.js +59 -0
  183. package/dist/{chunk-Z2D4P3R3.js → chunk-Q5QSWV2R.js} +14 -12
  184. package/dist/{chunk-FPBUTZI5.js → chunk-QFDPX6C4.js} +3236 -22928
  185. package/dist/{chunk-6RYB3EET.js → chunk-QGBS4GMS.js} +14 -12
  186. package/dist/{chunk-EMVZIOOD.js → chunk-QIDSEHJA.js} +17 -15
  187. package/dist/{chunk-VK7WYA64.js → chunk-QJ3AYXVO.js} +14 -12
  188. package/dist/{chunk-KTNOBTV5.js → chunk-QK6CGRKK.js} +6 -4
  189. package/dist/{chunk-PXW2RZGQ.js → chunk-QOC3Q4UU.js} +1 -1
  190. package/dist/{chunk-UTPIFH4I.js → chunk-QPLNB2BM.js} +5 -3
  191. package/dist/chunk-QVF4KYIO.js +71 -0
  192. package/dist/{chunk-VKTXFFOZ.js → chunk-QXXEO4TF.js} +5 -3
  193. package/dist/{chunk-JFFKHIM6.js → chunk-QYFNVQLK.js} +1 -1
  194. package/dist/{chunk-PNSSE7JM.js → chunk-R6CJOMPC.js} +25 -23
  195. package/dist/{chunk-3MYBT62N.js → chunk-ROWZYQOI.js} +9 -7
  196. package/dist/{chunk-3ASYYMOX.js → chunk-RQAMZVWW.js} +10 -8
  197. package/dist/chunk-RQSUFGU2.js +55 -0
  198. package/dist/{chunk-SWNKO4C4.js → chunk-RRKM3GJA.js} +29 -26
  199. package/dist/{chunk-XGO74QWR.js → chunk-RSHVSXPJ.js} +7 -5
  200. package/dist/chunk-RSKMV3VC.js +22 -0
  201. package/dist/{chunk-X5ZHDSLU.js → chunk-RU5W7JJQ.js} +25 -23
  202. package/dist/{chunk-CS4BMJLL.js → chunk-RYY554OA.js} +7 -5
  203. package/dist/{chunk-AVMWESFZ.js → chunk-SGYQORAD.js} +6 -3
  204. package/dist/{chunk-6ZSYLZ7O.js → chunk-SLGUSFOD.js} +3 -3
  205. package/dist/{chunk-73V2OONC.js → chunk-SUAHNYNQ.js} +17 -15
  206. package/dist/{chunk-KT6Q44CA.js → chunk-SUYC5NP6.js} +27 -25
  207. package/dist/{chunk-CJEBRJBS.js → chunk-SWSGRRNO.js} +6 -4
  208. package/dist/{chunk-FJVUHQPS.js → chunk-SYLXQNPC.js} +26 -23
  209. package/dist/{chunk-FRAEQVYN.js → chunk-T24TBI7F.js} +24 -22
  210. package/dist/chunk-T2HXLDY3.js +55 -0
  211. package/dist/{chunk-7XWJ6ED2.js → chunk-T5NH5L7A.js} +16 -13
  212. package/dist/{chunk-2QPJ4E4Z.js → chunk-TAR6T2RE.js} +4 -2
  213. package/dist/{chunk-AQRUQNFB.js → chunk-TBQHBOFF.js} +10 -8
  214. package/dist/{chunk-AFBCNZRZ.js → chunk-TKE6ZJMM.js} +26 -24
  215. package/dist/chunk-TKEXS74L.js +52 -0
  216. package/dist/{chunk-3EX5HCZD.js → chunk-TXYMNKGM.js} +16 -14
  217. package/dist/{chunk-WZYM5M4U.js → chunk-U2JTTRKS.js} +19 -17
  218. package/dist/{chunk-LM45GMMB.js → chunk-U37ZOYJJ.js} +7 -7
  219. package/dist/{chunk-EXJZBL5N.js → chunk-U57VLY6X.js} +23 -21
  220. package/dist/{chunk-YHMPDIRG.js → chunk-U66RQUFC.js} +6 -4
  221. package/dist/{chunk-PFULMC2D.js → chunk-UCFNHK5L.js} +22 -20
  222. package/dist/{chunk-BUUJ7N4O.js → chunk-UI6KNLSO.js} +31 -11
  223. package/dist/{chunk-FVYZ4Y52.js → chunk-UKRJ2ISN.js} +5 -3
  224. package/dist/{chunk-GOZLTLRY.js → chunk-UWJOM457.js} +4 -4
  225. package/dist/{chunk-6NN36LVK.js → chunk-UXO25YBN.js} +3 -3
  226. package/dist/chunk-VE2T5URA.js +51 -0
  227. package/dist/{chunk-HRS5O7VV.js → chunk-W4EG25TI.js} +21 -17
  228. package/dist/{chunk-Z3H27OMV.js → chunk-WAAPMZWO.js} +6 -4
  229. package/dist/{chunk-MLGWSBF4.js → chunk-WECCLSYY.js} +47 -45
  230. package/dist/chunk-WQDJGNJQ.js +45 -0
  231. package/dist/{chunk-OBUB3H72.js → chunk-WWSCJBF6.js} +14 -12
  232. package/dist/{chunk-FBCVC2GJ.js → chunk-X7HFXXTZ.js} +16 -13
  233. package/dist/{chunk-RQQYEDAC.js → chunk-XERIHPBF.js} +12 -9
  234. package/dist/{chunk-XNFM6WUK.js → chunk-XKNISZ6N.js} +21 -18
  235. package/dist/{chunk-OSYHGGL3.js → chunk-XNH5ZWIA.js} +20 -18
  236. package/dist/{chunk-LHH5KG5A.js → chunk-XNW3EDCY.js} +3 -3
  237. package/dist/{chunk-DSHRA72L.js → chunk-XPXOKHNZ.js} +13 -11
  238. package/dist/{chunk-T3FNG2H2.js → chunk-XXRBAJ36.js} +14 -12
  239. package/dist/{chunk-K4RNVDR4.js → chunk-YA2IJJ6N.js} +8 -6
  240. package/dist/{chunk-WOMQQWTO.js → chunk-YB5AKYVQ.js} +7 -5
  241. package/dist/{chunk-G7VBMOZH.js → chunk-YDDLVBQ4.js} +3 -3
  242. package/dist/{chunk-ZSNOILL5.js → chunk-YF6N45QN.js} +1 -1
  243. package/dist/{chunk-NCLZJCXA.js → chunk-YHWX5LPT.js} +23 -21
  244. package/dist/{chunk-MEJ63LDG.js → chunk-YLZNTVZR.js} +11 -9
  245. package/dist/{chunk-APDN6UOR.js → chunk-YUJTOALL.js} +20 -18
  246. package/dist/{chunk-QLQIFJP3.js → chunk-Z5YDTIWQ.js} +19 -16
  247. package/dist/{chunk-ISG547IS.js → chunk-ZCU2UY47.js} +24 -22
  248. package/dist/{chunk-7K5OH45X.js → chunk-ZIAYNHHE.js} +69 -9
  249. package/dist/{chunk-MNIPPBCT.js → chunk-ZJ2W2RDE.js} +7 -5
  250. package/dist/{chunk-DHKDH464.js → chunk-ZRQHSMPK.js} +6 -4
  251. package/dist/{chunk-V7PEHQZU.js → chunk-ZSD75FYI.js} +21 -19
  252. package/dist/{chunk-PCCLVIDP.js → chunk-ZSNNF26J.js} +25 -22
  253. package/dist/{chunk-GUGQSIQM.js → chunk-ZX6RAGE6.js} +11 -9
  254. package/dist/files.json +561 -545
  255. package/dist/packages/sdk/npm/index.js +5502 -4956
  256. package/dist/packages/ui/dist/assets/{elk-api-DxfAMOJq.js → elk-api--rH6Kdl4.js} +2 -2
  257. package/dist/packages/ui/dist/assets/{index-Jyc9dFeZ.css → index-Bf2immpE.css} +1 -1
  258. package/dist/packages/ui/dist/assets/index-CH4nGIW3.js +62 -0
  259. package/dist/packages/ui/dist/index.html +2 -2
  260. package/package.json +5 -5
  261. package/dist/chunk-5MYE42AP.js +0 -43
  262. package/dist/chunk-5O7U67UA.js +0 -57
  263. package/dist/chunk-6JVPBGQG.js +0 -50
  264. package/dist/chunk-AHFQHPFF.js +0 -49
  265. package/dist/chunk-CXTG6AWM.js +0 -40
  266. package/dist/chunk-GPNMSX5H.js +0 -36
  267. package/dist/chunk-HMWJWYE2.js +0 -31
  268. package/dist/chunk-J2CDBSFP.js +0 -69
  269. package/dist/chunk-NKJDO4UC.js +0 -39
  270. package/dist/chunk-NOYOFYAJ.js +0 -59
  271. package/dist/chunk-OXXZZ7HQ.js +0 -50
  272. package/dist/chunk-P4YUT7W7.js +0 -45
  273. package/dist/chunk-RQSLHZ7T.js +0 -36
  274. package/dist/chunk-RYQ4JCFT.js +0 -65
  275. package/dist/chunk-UMCDODBX.js +0 -53
  276. package/dist/chunk-VJZI6KFP.js +0 -47
  277. package/dist/chunk-W4TNCEI4.js +0 -44
  278. package/dist/chunk-XLZAAAPX.js +0 -43
  279. package/dist/packages/ui/dist/assets/index-Buit9TfP.js +0 -62
@@ -10,14 +10,17 @@ import {
10
10
  precisionOf,
11
11
  prepareAudit,
12
12
  writeAudit
13
- } from "./chunk-HUGQZQ2K.js";
13
+ } from "./chunk-532HDXMM.js";
14
14
  import {
15
15
  uiCiteRoutes
16
- } from "./chunk-T7IIEDA3.js";
17
- import "./chunk-QZWRPQTI.js";
16
+ } from "./chunk-37UTWGU4.js";
17
+ import "./chunk-IB66ZLDN.js";
18
18
  import {
19
19
  uiComponentTypeRoutes
20
- } from "./chunk-Q367UGYN.js";
20
+ } from "./chunk-OTUBMKSG.js";
21
+ import {
22
+ conformanceCommand
23
+ } from "./chunk-TXYMNKGM.js";
21
24
  import {
22
25
  outcomeList,
23
26
  outcomeRecord,
@@ -26,17 +29,17 @@ import {
26
29
  releaseNotesCommand,
27
30
  releasePlanCommand,
28
31
  releaseSecurityCommand
29
- } from "./chunk-W3AZE7LN.js";
32
+ } from "./chunk-5PSKLTBR.js";
30
33
  import {
31
34
  historyEntry,
32
35
  listHistory
33
- } from "./chunk-LHH5KG5A.js";
36
+ } from "./chunk-XNW3EDCY.js";
34
37
  import {
35
38
  FORCE_STEPS,
36
39
  appLines,
37
40
  hasKeptResume,
38
41
  mapRepoOf
39
- } from "./chunk-GOZLTLRY.js";
42
+ } from "./chunk-UWJOM457.js";
40
43
  import {
41
44
  allRuns,
42
45
  answerOf,
@@ -44,10 +47,20 @@ import {
44
47
  listRuns,
45
48
  partStates,
46
49
  runTranscript
47
- } from "./chunk-IYNCSYU4.js";
50
+ } from "./chunk-EHF2MBGR.js";
48
51
  import {
49
52
  isHandoffStep
50
53
  } from "./chunk-4Q3NN7VF.js";
54
+ import {
55
+ executorsCheck,
56
+ todoDone,
57
+ todoRun,
58
+ todoShow
59
+ } from "./chunk-YDDLVBQ4.js";
60
+ import {
61
+ inputsSha256,
62
+ loadExecutors
63
+ } from "./chunk-QXXEO4TF.js";
51
64
  import {
52
65
  isSandbox,
53
66
  learnCheck,
@@ -55,26 +68,23 @@ import {
55
68
  lessonsFor,
56
69
  readProgress,
57
70
  sandboxCreate
58
- } from "./chunk-OCQWSFJD.js";
71
+ } from "./chunk-3BEGKSDW.js";
59
72
  import {
60
73
  defencesScan,
61
74
  evalRun
62
- } from "./chunk-75OMRKY2.js";
75
+ } from "./chunk-7HWCEDPX.js";
63
76
  import {
64
77
  listReports,
65
78
  readQuality
66
- } from "./chunk-6SNTHK43.js";
67
- import {
68
- conformanceCommand
69
- } from "./chunk-3EX5HCZD.js";
79
+ } from "./chunk-FGW5TLGM.js";
70
80
  import {
71
81
  estimateOf
72
- } from "./chunk-3MYBT62N.js";
82
+ } from "./chunk-ROWZYQOI.js";
73
83
  import {
74
84
  changeMapBody,
75
85
  changeMapOf,
76
86
  targetFlowsOf
77
- } from "./chunk-FMJYKLDY.js";
87
+ } from "./chunk-L6Z6TMIK.js";
78
88
  import {
79
89
  changeArchive,
80
90
  changeHandoff,
@@ -82,117 +92,111 @@ import {
82
92
  changeReleasePrs,
83
93
  changeSync,
84
94
  syncAfterManualStep
85
- } from "./chunk-V7PEHQZU.js";
95
+ } from "./chunk-ZSD75FYI.js";
86
96
  import {
87
- executorsCheck,
88
- todoDone,
89
- todoRun,
90
- todoShow
91
- } from "./chunk-G7VBMOZH.js";
97
+ boxesOf,
98
+ candidatesOf,
99
+ uiLinkRoutes
100
+ } from "./chunk-NQDHRT2H.js";
92
101
  import {
93
- inputsSha256,
94
- loadExecutors
95
- } from "./chunk-VKTXFFOZ.js";
102
+ matchDone,
103
+ quotesOf,
104
+ readMatch,
105
+ runMatch
106
+ } from "./chunk-EPQQ2XVM.js";
107
+ import "./chunk-GKZDHXC2.js";
96
108
  import {
97
109
  readServiceRequests
98
- } from "./chunk-LPDTDFKA.js";
110
+ } from "./chunk-6UTD5RQH.js";
99
111
  import {
100
112
  initiativeStatus,
101
113
  readView
102
- } from "./chunk-2WUTCPPJ.js";
114
+ } from "./chunk-JUHZBZPZ.js";
103
115
  import {
104
116
  runDone,
105
117
  taskRun,
106
118
  taskRunNotWaiting
107
- } from "./chunk-SK5RVP7X.js";
119
+ } from "./chunk-ASFRT33J.js";
120
+ import {
121
+ idFromUrl
122
+ } from "./chunk-MZWM73S2.js";
108
123
  import {
109
124
  DecideError,
110
125
  correctDecision,
111
126
  decisionsView,
112
127
  undoBatch
113
- } from "./chunk-FSN6JFXB.js";
114
- import {
115
- boxesOf,
116
- candidatesOf,
117
- uiLinkRoutes
118
- } from "./chunk-YERAAEO4.js";
119
- import {
120
- matchDone,
121
- quotesOf,
122
- readMatch,
123
- runMatch
124
- } from "./chunk-HJQVUOUL.js";
125
- import "./chunk-7NQAGYK4.js";
126
- import "./chunk-DSHRA72L.js";
128
+ } from "./chunk-IOHRX4KF.js";
129
+ import "./chunk-XPXOKHNZ.js";
127
130
  import {
128
131
  copilotAcpAllowed
129
- } from "./chunk-66AQ2JIU.js";
130
- import "./chunk-L3RCQWVQ.js";
131
- import "./chunk-TXNSQ24G.js";
132
+ } from "./chunk-2JHE75RW.js";
133
+ import "./chunk-PZBNDFZ7.js";
134
+ import "./chunk-2ITYURTR.js";
135
+ import {
136
+ readRepos
137
+ } from "./chunk-BBZ6UKN3.js";
132
138
  import {
133
139
  filesUnder,
134
140
  memoByFiles,
135
141
  recheckNow,
136
142
  uiFactsRoutes
137
- } from "./chunk-ICBGVVRI.js";
143
+ } from "./chunk-3XCCT2GR.js";
138
144
  import {
139
145
  safeMessage,
140
146
  withFileLock
141
- } from "./chunk-PXW2RZGQ.js";
142
- import "./chunk-T6MX7WXM.js";
147
+ } from "./chunk-QOC3Q4UU.js";
148
+ import "./chunk-4DCIUKIE.js";
143
149
  import {
144
150
  syncNextOf
145
151
  } from "./chunk-EHXDB3SA.js";
146
- import "./chunk-IMZFOMVX.js";
147
- import "./chunk-VJFXQISZ.js";
148
- import "./chunk-CT6NINGR.js";
152
+ import "./chunk-HGDBM3A5.js";
153
+ import "./chunk-HXFZX2BI.js";
154
+ import "./chunk-5Z7L2TSR.js";
149
155
  import {
150
- idFromUrl
151
- } from "./chunk-AGOLEMHK.js";
156
+ digestCommand
157
+ } from "./chunk-MVXMISNA.js";
152
158
  import {
153
159
  reconcileCommand
154
- } from "./chunk-POSZFDSQ.js";
160
+ } from "./chunk-NTEPBOAF.js";
155
161
  import {
156
162
  sourcesAdd,
157
163
  sourcesSync
158
- } from "./chunk-MEJ63LDG.js";
164
+ } from "./chunk-YLZNTVZR.js";
159
165
  import {
160
166
  INPUTS_SOURCE_ID
161
- } from "./chunk-6NN36LVK.js";
162
- import "./chunk-XGO74QWR.js";
163
- import {
164
- readRepos
165
- } from "./chunk-HMZ2DRBC.js";
167
+ } from "./chunk-UXO25YBN.js";
168
+ import "./chunk-RSHVSXPJ.js";
166
169
  import {
167
170
  uiOnboardingRoutes
168
- } from "./chunk-K4OXYSGS.js";
169
- import "./chunk-K4RNVDR4.js";
171
+ } from "./chunk-3UMKLB6P.js";
170
172
  import "./chunk-X7XVMYIL.js";
173
+ import "./chunk-YA2IJJ6N.js";
171
174
  import {
172
175
  answersMayHaveChanged,
173
176
  checkoutsStamp,
174
177
  keepAnswersWhileWatched,
175
178
  keptAnswer,
176
179
  uiTrustRoutes
177
- } from "./chunk-7K5OH45X.js";
180
+ } from "./chunk-ZIAYNHHE.js";
178
181
  import {
179
182
  contractCheckOf,
180
183
  estateJoinOnFile,
181
184
  stampOf
182
- } from "./chunk-XFDDJQT7.js";
183
- import "./chunk-6R5VHR3N.js";
184
- import {
185
- digestCommand
186
- } from "./chunk-WF3RCZNO.js";
185
+ } from "./chunk-AM7PYKVP.js";
186
+ import "./chunk-AWDCVZYO.js";
187
+ import "./chunk-OYTSRNSZ.js";
187
188
  import {
188
189
  MACHINE_CHECKING,
189
190
  baselineCommand,
190
191
  setupSteps
191
- } from "./chunk-4FLNCK6Q.js";
192
+ } from "./chunk-6TNQO76I.js";
193
+ import {
194
+ doctorChecks
195
+ } from "./chunk-MDTAZ6NE.js";
192
196
  import {
193
197
  readMe,
194
198
  writeMe
195
- } from "./chunk-WXVTYLVH.js";
199
+ } from "./chunk-MT3FNSXO.js";
196
200
  import {
197
201
  buildTask,
198
202
  cancelTaskRunWait,
@@ -206,73 +210,69 @@ import {
206
210
  settleTaskPr,
207
211
  stopAllBuilds,
208
212
  taskRunOfRun
209
- } from "./chunk-PNSSE7JM.js";
210
- import "./chunk-ZLQEQR3D.js";
211
- import "./chunk-OPWGPQ2N.js";
213
+ } from "./chunk-R6CJOMPC.js";
214
+ import "./chunk-DCRZ3OQ7.js";
215
+ import "./chunk-LKUTBQ2Y.js";
212
216
  import {
213
217
  checkoutOf
214
- } from "./chunk-73GFVW2L.js";
215
- import "./chunk-XOMEQVLK.js";
218
+ } from "./chunk-GCMDDVIE.js";
219
+ import "./chunk-HWNFFCGB.js";
216
220
  import {
217
221
  intakeContext
218
- } from "./chunk-C6ORPLCN.js";
219
- import "./chunk-NROSSWMS.js";
222
+ } from "./chunk-44QUCNPH.js";
220
223
  import {
221
224
  scanCommand
222
- } from "./chunk-LM45GMMB.js";
223
- import "./chunk-7XYLNQFO.js";
225
+ } from "./chunk-U37ZOYJJ.js";
226
+ import "./chunk-EUMXLSW5.js";
224
227
  import {
225
228
  catalogRecords,
226
229
  openChanges,
227
230
  systemGuide
228
- } from "./chunk-NAPHHWW2.js";
229
- import {
230
- doctorChecks
231
- } from "./chunk-BYBU2EIB.js";
231
+ } from "./chunk-JVMNEI7B.js";
232
232
  import {
233
233
  isMetarepo
234
234
  } from "./chunk-3G4YI4ZU.js";
235
- import "./chunk-TNCF26JK.js";
236
- import "./chunk-TABH4RBZ.js";
235
+ import "./chunk-E7YDJH6B.js";
236
+ import "./chunk-IUBBEU6O.js";
237
237
  import {
238
238
  workspaceOpen,
239
239
  workspaceSync
240
- } from "./chunk-ENH6Z4TY.js";
241
- import "./chunk-73CC73I4.js";
242
- import "./chunk-4ETO2FXE.js";
240
+ } from "./chunk-CU7ZK7KP.js";
241
+ import "./chunk-HI7ADE4E.js";
242
+ import "./chunk-BYKWWSXL.js";
243
243
  import {
244
244
  readChangeTasks,
245
245
  readStory,
246
246
  setTaskDone
247
- } from "./chunk-S5GSQPIN.js";
247
+ } from "./chunk-BWYW533C.js";
248
248
  import {
249
249
  ASSISTANT_FORMATS,
250
250
  readProbes,
251
251
  whatRunsWhere
252
- } from "./chunk-J4CPHJUL.js";
252
+ } from "./chunk-J4K4C4T5.js";
253
253
  import {
254
254
  critic,
255
255
  criticStats,
256
256
  findingAction
257
- } from "./chunk-RPQITJNX.js";
258
- import "./chunk-Y2H7X3VI.js";
257
+ } from "./chunk-PB3NCPRF.js";
258
+ import "./chunk-G67GOK4S.js";
259
259
  import {
260
260
  planStories,
261
261
  snowDraft,
262
262
  snowSubmit
263
- } from "./chunk-ZNHQGG7J.js";
264
- import "./chunk-ZSNOILL5.js";
263
+ } from "./chunk-775FMPUB.js";
264
+ import "./chunk-YF6N45QN.js";
265
265
  import {
266
266
  ciArchiveGate
267
- } from "./chunk-JMEWJPF2.js";
267
+ } from "./chunk-5QF5W5P2.js";
268
268
  import {
269
269
  traceMatrix
270
- } from "./chunk-EMVZIOOD.js";
270
+ } from "./chunk-QIDSEHJA.js";
271
271
  import "./chunk-MUWDB4R4.js";
272
272
  import "./chunk-VOGCSYOI.js";
273
273
  import {
274
274
  archiveGate
275
- } from "./chunk-ZR6J4QFQ.js";
275
+ } from "./chunk-LELM7X5H.js";
276
276
  import {
277
277
  CORRECTIONS_FILE,
278
278
  FEATURE_FILE,
@@ -322,14 +322,14 @@ import {
322
322
  syncWorkItems,
323
323
  threadReplies,
324
324
  writeSketch
325
- } from "./chunk-MLGWSBF4.js";
325
+ } from "./chunk-WECCLSYY.js";
326
326
  import {
327
327
  FeaturePlacement,
328
328
  STAGES,
329
329
  STAGE_PHASE,
330
330
  fieldNames,
331
331
  rerunOf
332
- } from "./chunk-CA3DKO4D.js";
332
+ } from "./chunk-5FUFVNXB.js";
333
333
  import {
334
334
  HttpError,
335
335
  badRequest,
@@ -339,7 +339,7 @@ import {
339
339
  requireConfirmation,
340
340
  startServer,
341
341
  strParam
342
- } from "./chunk-HRS5O7VV.js";
342
+ } from "./chunk-W4EG25TI.js";
343
343
  import {
344
344
  layerRules,
345
345
  loadConstitution,
@@ -352,17 +352,7 @@ import {
352
352
  readStoryIndex,
353
353
  reviewedGates,
354
354
  roundsOf
355
- } from "./chunk-D6BVLTDV.js";
356
- import "./chunk-RCG5IAAT.js";
357
- import {
358
- addressRefusal,
359
- asTheApp,
360
- recordConfirmedAddress,
361
- requireConfirmedModel,
362
- servingTheApp,
363
- whereKeyGoes
364
- } from "./chunk-RGZFOKVO.js";
365
- import "./chunk-KVVNAUIG.js";
355
+ } from "./chunk-A6ZG3UOS.js";
366
356
  import {
367
357
  ChangeOwnersError,
368
358
  artifactFiles,
@@ -382,13 +372,30 @@ import {
382
372
  setChangeOwners,
383
373
  unmergedTaskBranches,
384
374
  unmergedTaskWords
385
- } from "./chunk-WZYM5M4U.js";
386
- import "./chunk-NC755EKE.js";
375
+ } from "./chunk-U2JTTRKS.js";
376
+ import "./chunk-5MKV4TV6.js";
387
377
  import {
388
378
  fileStepStore,
389
379
  manualAdapter,
390
380
  stepOfProvisional
391
- } from "./chunk-FL344WQD.js";
381
+ } from "./chunk-ESJALLOK.js";
382
+ import "./chunk-MCE74XMF.js";
383
+ import {
384
+ addressRefusal,
385
+ asTheApp,
386
+ recordConfirmedAddress,
387
+ requireConfirmedModel,
388
+ servingTheApp,
389
+ whereKeyGoes
390
+ } from "./chunk-4MNMOUU7.js";
391
+ import "./chunk-KVVNAUIG.js";
392
+ import {
393
+ COMMON_SETTINGS,
394
+ PROVIDER_SETTINGS,
395
+ defaultKeyStore,
396
+ keyEnvFromEnvironment,
397
+ looksLikeKey
398
+ } from "./chunk-NTOPAOBY.js";
392
399
  import {
393
400
  componentRenames,
394
401
  estateFacts,
@@ -400,14 +407,14 @@ import {
400
407
  outsideProfileSystems,
401
408
  readCatalog,
402
409
  targetPicker
403
- } from "./chunk-IKAW2KJU.js";
410
+ } from "./chunk-25CUJJTP.js";
404
411
  import {
405
412
  NoSuchNode,
406
413
  buildEstate,
407
414
  focusView,
408
415
  nodeView,
409
416
  viewKey
410
- } from "./chunk-CZ2ZS7AT.js";
417
+ } from "./chunk-HNPKCRCE.js";
411
418
  import {
412
419
  OrgPackProposal,
413
420
  SNAPSHOT_FILE,
@@ -431,60 +438,39 @@ import {
431
438
  snapshotDates,
432
439
  snapshotSources,
433
440
  writeReview
434
- } from "./chunk-4GAB5ZOZ.js";
441
+ } from "./chunk-CZ75S2EZ.js";
435
442
  import {
436
443
  readServiceRequestExports,
437
444
  readVendorSpec,
438
445
  readWorkItemExports
439
- } from "./chunk-A4JXVO5O.js";
440
- import "./chunk-TDSCKP3V.js";
441
- import "./chunk-G6EFXTUO.js";
442
- import "./chunk-PQQKZPBU.js";
443
- import "./chunk-JFFKHIM6.js";
444
- import "./chunk-RRQUQAXP.js";
446
+ } from "./chunk-GFYVVTKH.js";
447
+ import "./chunk-DIYNRYXW.js";
448
+ import "./chunk-5FPAKAGE.js";
449
+ import "./chunk-IJQHBK76.js";
450
+ import "./chunk-QYFNVQLK.js";
451
+ import "./chunk-FL53R4SW.js";
452
+ import {
453
+ batchSections,
454
+ providerFactoryFor
455
+ } from "./chunk-MOWUP33K.js";
456
+ import "./chunk-QA4O2GGC.js";
445
457
  import {
446
458
  baseClonePath,
447
459
  changeWorktreesDir,
448
460
  cloneUrlKey,
449
461
  loadRepos,
450
462
  readChangeRepos
451
- } from "./chunk-3EWKO457.js";
452
- import {
453
- COMMON_SETTINGS,
454
- PROVIDER_SETTINGS,
455
- defaultKeyStore,
456
- keyEnvFromEnvironment,
457
- looksLikeKey
458
- } from "./chunk-27AJAKX7.js";
459
- import {
460
- batchSections,
461
- providerFactoryFor
462
- } from "./chunk-3424TLIJ.js";
463
- import "./chunk-QA4O2GGC.js";
463
+ } from "./chunk-OSZTENIA.js";
464
464
  import {
465
465
  ADAPTER_FIELDS,
466
466
  ADAPTER_KINDS,
467
467
  ADAPTER_TYPES,
468
- ASSISTANTS,
469
- ChangeArtifact,
470
468
  DEFAULT_PORT,
471
- DEFAULT_RUNTIME,
472
469
  DeclareError,
473
470
  DiagramLayout,
474
- KNOWLEDGE_KINDS,
475
- KNOWLEDGE_RECORD_KIND,
476
471
  LAYOUT_SCHEMA_VERSION,
477
- MANUAL_SYSTEMS,
478
472
  ManifestEditError,
479
473
  QuestionError,
480
- QuestionRole,
481
- QuestionState,
482
- RUNTIME_SCHEMA_VERSION,
483
- RUN_SCHEMA_VERSION,
484
- RecordId,
485
- RepoDescription,
486
- Runtime,
487
- SOURCE_KIND_SUGGESTIONS,
488
474
  SPEC_HEADER_FILE,
489
475
  SetupEditError,
490
476
  TARGETS_STEP_ID,
@@ -495,7 +481,6 @@ import {
495
481
  addPattern,
496
482
  addProfileSystem,
497
483
  addRolesTeam,
498
- answerByWords,
499
484
  answerQuestion,
500
485
  api_exports,
501
486
  asksOfQuestion,
@@ -504,37 +489,30 @@ import {
504
489
  changedLines,
505
490
  changesDirOf,
506
491
  changesRelOf,
507
- copilotAcpOf,
508
492
  currentSignal,
509
- decideOf,
510
493
  declareLink,
511
494
  declaredOf,
512
495
  diagramsRelOf,
513
496
  eolOf,
514
- external_exports,
515
497
  factIdPart,
516
498
  factsDirOf,
517
499
  factsFileOf,
518
500
  factsRelOf,
519
- gateRoundLimit,
520
501
  inEol,
521
502
  inputsDirOf,
522
503
  isAdopted,
523
- joinConventions,
504
+ joinDependencies,
524
505
  joinSharedMaps,
525
506
  joinVendorOperations,
526
507
  knowledgeDirOf,
527
- knowledgeKindOf,
528
508
  knowledgeRelOf,
529
509
  layoutPath,
530
510
  lfOnly,
531
511
  listQuestions,
532
- loadOrgPack,
533
512
  manifestFiles,
534
513
  migrateRuntimeV4Text,
535
514
  orgPackDirOf,
536
515
  orgPackFileProblems,
537
- pageStanding,
538
516
  parseCorrections,
539
517
  proposalsDirOf,
540
518
  proposalsRelOf,
@@ -554,21 +532,48 @@ import {
554
532
  specRepos,
555
533
  undeclareLink,
556
534
  writeOrgPackFile
557
- } from "./chunk-FPBUTZI5.js";
535
+ } from "./chunk-GJVCBTSO.js";
558
536
  import {
559
537
  FileChangedError,
560
538
  RUN_LOG_READ_MAX,
561
539
  createLog,
562
- keptFilesMayHaveChanged,
563
540
  printToCurrent,
564
541
  readTerminalRunLines,
565
542
  readTerminalRuns,
566
543
  runLogsDirOf,
567
544
  tailTerminalRunLines,
568
- trustKeptFiles,
569
545
  writeFileAtomic,
570
546
  writeFileIfUnchanged
571
- } from "./chunk-B4AEL3RF.js";
547
+ } from "./chunk-G3ZFEHCX.js";
548
+ import {
549
+ ASSISTANTS,
550
+ ChangeArtifact,
551
+ DEFAULT_RUNTIME,
552
+ KNOWLEDGE_KINDS,
553
+ KNOWLEDGE_RECORD_KIND,
554
+ MANUAL_SYSTEMS,
555
+ QuestionRole,
556
+ QuestionState,
557
+ RUNTIME_SCHEMA_VERSION,
558
+ RUN_SCHEMA_VERSION,
559
+ RecordId,
560
+ RepoDescription,
561
+ Runtime,
562
+ SOURCE_KIND_SUGGESTIONS,
563
+ answerByWords,
564
+ copilotAcpOf,
565
+ decideOf,
566
+ external_exports,
567
+ gateRoundLimit,
568
+ joinConventions,
569
+ knowledgeKindOf,
570
+ loadOrgPack,
571
+ pageStanding
572
+ } from "./chunk-QFDPX6C4.js";
573
+ import {
574
+ keptFilesMayHaveChanged,
575
+ trustKeptFiles
576
+ } from "./chunk-CTJHEG6A.js";
572
577
  import {
573
578
  require_dist
574
579
  } from "./chunk-BQGDB6ZL.js";
@@ -1001,19 +1006,19 @@ async function changesWithWorktrees(root) {
1001
1006
  function uiStepRoutes(r, ctx, asJob) {
1002
1007
  const root = ctx.root;
1003
1008
  return r.add("POST", "/api/facts/apply-all", async () => {
1004
- const { verifyAllCommand } = await import("./chunk-XLZAAAPX.js");
1009
+ const { verifyAllCommand } = await import("./chunk-EEKQI3U4.js");
1005
1010
  return asJob("Applying to every repo", () => captured((io) => verifyAllCommand(root, { write: true, verbose: false, json: false }, io)));
1006
1011
  }).add("POST", "/api/estate/join", async () => {
1007
- const { estateJoin } = await import("./chunk-N2YX6JMY.js");
1012
+ const { estateJoin } = await import("./chunk-DCQSPSXU.js");
1008
1013
  return asJob("Joining the estate's flows", () => captured((io) => estateJoin(root, { json: false }, io)));
1009
1014
  }).add("POST", "/api/knowledge/sources/sync", async () => {
1010
- const { sourcesSync: sourcesSync2 } = await import("./chunk-WYGTSZHR.js");
1015
+ const { sourcesSync: sourcesSync2 } = await import("./chunk-MPATOMY5.js");
1011
1016
  return asJob("Syncing every wiki", () => captured((io) => sourcesSync2(root, io, { json: false })));
1012
1017
  }).add("POST", "/api/workspace/prune", async ({ body }) => {
1013
1018
  const change = body?.change;
1014
1019
  if (change !== void 0 && (typeof change !== "string" || !ID2.test(change)))
1015
1020
  throw badRequest("change is a change id, or left out for every change with worktrees.");
1016
- const { workspacePrune } = await import("./chunk-5O7U67UA.js");
1021
+ const { workspacePrune } = await import("./chunk-Q2ULHBCJ.js");
1017
1022
  return asJob(change ? `Cleaning up ${change}'s worktrees` : "Cleaning up worktrees", () => captured(async (io) => {
1018
1023
  const list = change ? [change] : await changesWithWorktrees(root);
1019
1024
  if (!list.length) {
@@ -1028,7 +1033,7 @@ function uiStepRoutes(r, ctx, asJob) {
1028
1033
  return code;
1029
1034
  }));
1030
1035
  }).add("GET", "/api/changes/{changeId}/tasks/{taskId}/context", async ({ params }) => {
1031
- const { taskContextCli } = await import("./chunk-ISG547IS.js");
1036
+ const { taskContextCli } = await import("./chunk-ZCU2UY47.js");
1032
1037
  const lines = [];
1033
1038
  const errs = [];
1034
1039
  const code = await taskContextCli(root, params.changeId, params.taskId, { markdown: true }, { out: (l) => lines.push(l), err: (l) => errs.push(l) });
@@ -1039,7 +1044,7 @@ function uiStepRoutes(r, ctx, asJob) {
1039
1044
  const on = body?.on;
1040
1045
  if (typeof on !== "boolean")
1041
1046
  throw badRequest("on is true or false.");
1042
- const { setLocalRecording } = await import("./chunk-S5XFO4GY.js");
1047
+ const { setLocalRecording } = await import("./chunk-JYJMIAFS.js");
1043
1048
  await setLocalRecording(root, on);
1044
1049
  ctx.events.publish({ type: "file.changed", path: ".atticus/me.yaml" });
1045
1050
  return { status: 200, body: { on } };
@@ -1112,7 +1117,7 @@ async function answerFile(root, s) {
1112
1117
  const inRun = join3(s.dir, out);
1113
1118
  if (s.run.request.outputIn === "run" || s.run.parts?.length)
1114
1119
  return inRun;
1115
- const { changesDirOf: changesDirOf2 } = await import("./chunk-6NCPLIIP.js");
1120
+ const { changesDirOf: changesDirOf2 } = await import("./chunk-6OZAQPU5.js");
1116
1121
  return join3(changesDirOf2(root), s.run.request.change, out);
1117
1122
  }
1118
1123
  async function dueRuns(root, o) {
@@ -1361,7 +1366,7 @@ async function changeDetail(root, id) {
1361
1366
  state: c.state,
1362
1367
  // ADR 0191 (app-only audit): the repos it names and its target flows' ("Name its repos on its
1363
1368
  // brief" stayed after the stories named them; the brief has no repos).
1364
- repos: await (await import("./chunk-PCCLVIDP.js")).changeRepos(root, c),
1369
+ repos: await (await import("./chunk-ZSNNF26J.js")).changeRepos(root, c),
1365
1370
  openFindings: open,
1366
1371
  updatedAt: c.history.at(-1)?.at ?? c.createdAt,
1367
1372
  ...fast ? { fastPath: true } : {},
@@ -1531,7 +1536,7 @@ function uiRoutes(r, ctx, deps = {}) {
1531
1536
  const { root, user, jobs } = ctx;
1532
1537
  const confirmed2 = (write, target, given) => requireConfirmation(ctx.confirmations, write, target, given);
1533
1538
  const readyView = async (change) => {
1534
- const { deployOrderOf } = await import("./chunk-TVQSXWWV.js");
1539
+ const { deployOrderOf } = await import("./chunk-CCQZN6W3.js");
1535
1540
  const repoOrder = await deployOrderOf(root, change);
1536
1541
  const prStates = /* @__PURE__ */ new Map();
1537
1542
  for (const t of await taskViews(root, change, {
@@ -1563,7 +1568,7 @@ function uiRoutes(r, ctx, deps = {}) {
1563
1568
  c.progress(1, 1, res.code === 0 ? "Done" : "Stopped");
1564
1569
  ctx.events.publish({ type: "file.changed", path: "." });
1565
1570
  const raw = [...res.out, ...res.err];
1566
- const { appLines: appLines2 } = await import("./chunk-FMR2D3AZ.js");
1571
+ const { appLines: appLines2 } = await import("./chunk-JJ4SCGRJ.js");
1567
1572
  const lines = appLines2(raw);
1568
1573
  const next = res.code === 0 ? void 0 : syncNextOf(raw);
1569
1574
  return {
@@ -1594,7 +1599,7 @@ function uiRoutes(r, ctx, deps = {}) {
1594
1599
  };
1595
1600
  const doneMayStart = async (runId) => {
1596
1601
  const before = await findRun(root, runId);
1597
- const { hasKeptResume: hasKeptResume2 } = await import("./chunk-FMR2D3AZ.js");
1602
+ const { hasKeptResume: hasKeptResume2 } = await import("./chunk-JJ4SCGRJ.js");
1598
1603
  const onlyResume = before.state === "validated" && await hasKeptResume2(root, runId);
1599
1604
  if (before.state === "validated" && !onlyResume || before.state === "cancelled")
1600
1605
  throw conflict(`Run ${runId} is already ${before.state}.`);
@@ -1616,17 +1621,17 @@ function uiRoutes(r, ctx, deps = {}) {
1616
1621
  }
1617
1622
  const after = await findRun(root, runId);
1618
1623
  ctx.events.publish({ type: "run.changed", runId: after.runId, state: after.state });
1619
- const { resumeAfterDone, appLines: appLines2 } = await import("./chunk-FMR2D3AZ.js");
1624
+ const { resumeAfterDone, appLines: appLines2 } = await import("./chunk-JJ4SCGRJ.js");
1620
1625
  if (res.code !== 0)
1621
1626
  throw refused({ ...res, out: appLines2(res.out), err: appLines2(res.err) });
1622
1627
  const stepRunner = deps.runStep ?? (async (args) => {
1623
- const { main } = await import("./chunk-QAVRDONY.js");
1628
+ const { main } = await import("./chunk-CNF2EZ6S.js");
1624
1629
  const out = [];
1625
1630
  const err = [];
1626
1631
  const code = await main([...args, "--root", root], { out: (l) => out.push(l), err: (l) => err.push(l) }, { quiet: true });
1627
1632
  return { code, out, err };
1628
1633
  });
1629
- const { hasKeptResume: kept } = await import("./chunk-FMR2D3AZ.js");
1634
+ const { hasKeptResume: kept } = await import("./chunk-JJ4SCGRJ.js");
1630
1635
  const resumed = !await kept(root, after.runId) ? void 0 : await trackedLocal(ctx, `Finishing the step: ${after.runId}`, () => resumeAfterDone(root, stepRunner, after.change, after.runId), { meta: { handoffRun: after.runId } }).catch((e) => ({ lines: [e.message] }));
1631
1636
  if (resumed)
1632
1637
  ctx.events.publish({ type: "file.changed", path: changesRelOf(root) });
@@ -1646,7 +1651,7 @@ function uiRoutes(r, ctx, deps = {}) {
1646
1651
  };
1647
1652
  startAutoDone(ctx, (runId) => doneRun(runId, "app"), deps.autoDone ?? {});
1648
1653
  return r.add("POST", "/api/facts/{repo}/apply", async ({ params }) => {
1649
- const { verifyCommand } = await import("./chunk-XLZAAAPX.js");
1654
+ const { verifyCommand } = await import("./chunk-EEKQI3U4.js");
1650
1655
  const repo = params.repo;
1651
1656
  if (!FACTS_REPO.test(repo))
1652
1657
  throw badRequest(`${JSON.stringify(repo)} isn't a repo name.`);
@@ -1654,7 +1659,7 @@ function uiRoutes(r, ctx, deps = {}) {
1654
1659
  throw notFound(`There is no repo ${repo} in this workspace.`);
1655
1660
  return asJob(`Applying to ${repo}`, () => run((io) => verifyCommand(root, repo, { write: true, verbose: false, json: false }, io)));
1656
1661
  }).add("GET", "/api/upgrade", async () => keptAnswer(root, "upgrade", async () => {
1657
- const { newerAtticusOf, upgradeCheck } = await import("./chunk-AHFQHPFF.js");
1662
+ const { newerAtticusOf, upgradeCheck } = await import("./chunk-VE2T5URA.js");
1658
1663
  const c = await upgradeCheck(root);
1659
1664
  const stamp3 = c.stamp?.atticus ?? newerAtticusOf(c);
1660
1665
  const body = {
@@ -1665,7 +1670,7 @@ function uiRoutes(r, ctx, deps = {}) {
1665
1670
  };
1666
1671
  return { status: 200, body };
1667
1672
  })).add("POST", "/api/upgrade", async () => {
1668
- const { newerThan, newerWords, upgradeCheck, upgradeCommand } = await import("./chunk-AHFQHPFF.js");
1673
+ const { newerThan, newerWords, upgradeCheck, upgradeCommand } = await import("./chunk-VE2T5URA.js");
1669
1674
  const c = await upgradeCheck(root);
1670
1675
  if (c.newer)
1671
1676
  throw conflict(newerWords(c));
@@ -1673,7 +1678,7 @@ function uiRoutes(r, ctx, deps = {}) {
1673
1678
  throw conflict(`Nothing to upgrade: up to date for Atticus ${c.atticus}.`);
1674
1679
  return asJob("Upgrading the metarepo", () => run((io) => upgradeCommand(root, { by: user }, io)));
1675
1680
  }).add("GET", "/api/propose", async ({ query }) => {
1676
- const { proposePlan, PROPOSE_SCOPES } = await import("./chunk-QLWDIKO4.js");
1681
+ const { proposePlan, PROPOSE_SCOPES } = await import("./chunk-A53IYUCR.js");
1677
1682
  const scope = query.get("scope") ?? "";
1678
1683
  if (!PROPOSE_SCOPES.includes(scope))
1679
1684
  throw refused({
@@ -1696,7 +1701,7 @@ function uiRoutes(r, ctx, deps = {}) {
1696
1701
  }).add("POST", "/api/propose", async ({ body }) => {
1697
1702
  const b = parseBody(api_exports.ProposeRequest, body);
1698
1703
  confirmed2("propose", b.scope, b.confirmation);
1699
- const { proposeForReview } = await import("./chunk-QLWDIKO4.js");
1704
+ const { proposeForReview } = await import("./chunk-A53IYUCR.js");
1700
1705
  return asJob("Proposing for review", () => run((io) => proposeForReview(root, {
1701
1706
  scope: b.scope,
1702
1707
  by: user,
@@ -1705,15 +1710,15 @@ function uiRoutes(r, ctx, deps = {}) {
1705
1710
  ...b.branch ? { branch: b.branch } : {}
1706
1711
  }, io)));
1707
1712
  }).add("POST", "/api/propose/bring-in", async () => {
1708
- const { bringInMerged } = await import("./chunk-QLWDIKO4.js");
1713
+ const { bringInMerged } = await import("./chunk-A53IYUCR.js");
1709
1714
  return asJob("Bringing in what merged", () => run((io) => bringInMerged(root, io)));
1710
1715
  }).add("POST", "/api/propose/upstream", async ({ body }) => {
1711
1716
  const b = parseBody(api_exports.UpstreamRequest, body);
1712
- const { setUpstream } = await import("./chunk-QLWDIKO4.js");
1717
+ const { setUpstream } = await import("./chunk-A53IYUCR.js");
1713
1718
  return asJob(`Setting the upstream to ${b.upstream}`, () => run((io) => setUpstream(root, b.upstream, io)));
1714
1719
  }).add("POST", "/api/changes/{changeId}/conformance", async ({ params }) => {
1715
1720
  await readChange(root, params.changeId);
1716
- const { changeConformCommand } = await import("./chunk-T33TPFGI.js");
1721
+ const { changeConformCommand } = await import("./chunk-FFDVAV56.js");
1717
1722
  return asJob(`Checking ${params.changeId}'s code against its design`, () => run((io) => changeConformCommand(root, params.changeId, { findingsAnswer: true }, io)));
1718
1723
  }).add("GET", "/api/change-types", async () => {
1719
1724
  const op = await loadOrgPack(orgPackDirOf(root));
@@ -1816,7 +1821,7 @@ function uiRoutes(r, ctx, deps = {}) {
1816
1821
  throw conflict(`${rel} changed since you opened it. Reload it, then make your edit again.`);
1817
1822
  await mkdir(dirname3(file), { recursive: true });
1818
1823
  await writeFileIfUnchanged(file, was, b.content);
1819
- const { recordPersonSave: recordPersonSave2 } = await import("./chunk-APDN6UOR.js");
1824
+ const { recordPersonSave: recordPersonSave2 } = await import("./chunk-YUJTOALL.js");
1820
1825
  await recordPersonSave2(join4(changesDirOf(root), params.changeId), params.changeId, {
1821
1826
  file: rel,
1822
1827
  who: user,
@@ -2114,7 +2119,7 @@ function uiRoutes(r, ctx, deps = {}) {
2114
2119
  const res = await run((io) => changeSync(root, params.changeId, { by: user, approve, ...b.repo ? { repo: b.repo } : {} }, io, changeDeps));
2115
2120
  if (res.code === 2)
2116
2121
  throw refused(res);
2117
- const { appLines: appLines2 } = await import("./chunk-FMR2D3AZ.js");
2122
+ const { appLines: appLines2 } = await import("./chunk-JJ4SCGRJ.js");
2118
2123
  return {
2119
2124
  status: 200,
2120
2125
  body: {
@@ -2124,14 +2129,14 @@ function uiRoutes(r, ctx, deps = {}) {
2124
2129
  };
2125
2130
  }).add("GET", "/api/changes/{changeId}/inputs", async ({ params }) => {
2126
2131
  const c = await readChange(root, params.changeId);
2127
- const { readChangeInputs } = await import("./chunk-FRCOKUU4.js");
2132
+ const { readChangeInputs } = await import("./chunk-4DX4DIND.js");
2128
2133
  return {
2129
2134
  status: 200,
2130
2135
  body: api_exports.ChangeInputList.parse(await readChangeInputs(join4(changesDirOf(root), c.id)))
2131
2136
  };
2132
2137
  }).add("GET", "/api/changes/{changeId}/prototypes", async ({ params }) => {
2133
2138
  const c = await readChange(root, params.changeId);
2134
- const { changePrototypes } = await import("./chunk-GM4EFHUX.js");
2139
+ const { changePrototypes } = await import("./chunk-77AZRGWE.js");
2135
2140
  return {
2136
2141
  status: 200,
2137
2142
  body: api_exports.ChangePrototypeList.parse(await changePrototypes(root, c.id))
@@ -2139,7 +2144,7 @@ function uiRoutes(r, ctx, deps = {}) {
2139
2144
  }).add("POST", "/api/changes/{changeId}/prototypes", async ({ params, body }) => {
2140
2145
  const c = await readChange(root, params.changeId);
2141
2146
  const b = parseBody(api_exports.ComparePrototypeRequest, body);
2142
- const { attachPrototype, changePrototypes } = await import("./chunk-GM4EFHUX.js");
2147
+ const { attachPrototype, changePrototypes } = await import("./chunk-77AZRGWE.js");
2143
2148
  const res = await run((io) => attachPrototype(root, c.id, b.repo, { by: user, ...deps.now ? { now: new Date(deps.now) } : {} }, io));
2144
2149
  if (res.code !== 0)
2145
2150
  throw refused(res);
@@ -2157,7 +2162,7 @@ function uiRoutes(r, ctx, deps = {}) {
2157
2162
  const bytes = new Uint8Array(Buffer.from(b.content, "base64"));
2158
2163
  if (bytes.length > MAX_ATTACH)
2159
2164
  throw new HttpError(413, "The file is too large", "Attach a file of 15 MB or less.");
2160
- const { attachFiles } = await import("./chunk-ISG547IS.js");
2165
+ const { attachFiles } = await import("./chunk-ZCU2UY47.js");
2161
2166
  const r2 = await attachFiles(root, c.id, [{ name: b.name, bytes }], user);
2162
2167
  if (!r2.added.length)
2163
2168
  throw new HttpError(422, "Atticus can't attach that", r2.refused[0]?.why ?? "", {
@@ -3426,7 +3431,7 @@ function uiKnowRoutes(r, ctx, o = {}) {
3426
3431
  const args = build(arg);
3427
3432
  if (!args)
3428
3433
  throw badRequest(`The ${name} view needs an id: /api/view/${name}/<id>.`);
3429
- const { main } = await import("./chunk-QAVRDONY.js");
3434
+ const { main } = await import("./chunk-CNF2EZ6S.js");
3430
3435
  const out = [];
3431
3436
  const err = [];
3432
3437
  const code = await main([...args, "--json", "--root", ctx.root], { out: (l) => out.push(l), err: (l) => err.push(l) }, { quiet: true });
@@ -3456,7 +3461,7 @@ function uiKnowRoutes(r, ctx, o = {}) {
3456
3461
  return { status: 200, body: { code, data: body, problems: err } };
3457
3462
  };
3458
3463
  const text = async (args) => {
3459
- const { main } = await import("./chunk-QAVRDONY.js");
3464
+ const { main } = await import("./chunk-CNF2EZ6S.js");
3460
3465
  const out = [];
3461
3466
  const err = [];
3462
3467
  const code = await main([...args, "--root", ctx.root], { out: (l) => out.push(l), err: (l) => err.push(l) }, { quiet: true });
@@ -3474,7 +3479,7 @@ function uiKnowRoutes(r, ctx, o = {}) {
3474
3479
  throw badRequest("Some fields aren't right.", {
3475
3480
  errors: b.error.issues.map((i) => ({ path: i.path.join("."), message: i.message }))
3476
3481
  });
3477
- const { triageDecide } = await import("./chunk-OBUB3H72.js");
3482
+ const { triageDecide } = await import("./chunk-WWSCJBF6.js");
3478
3483
  const out = [];
3479
3484
  const err = [];
3480
3485
  const code = await triageDecide(ctx.root, params.itemId, b.data.option, { by: ctx.user, ...b.data.reason ? { reason: b.data.reason } : {} }, { out: (l) => out.push(l), err: (l) => err.push(l) });
@@ -3601,7 +3606,7 @@ function refused3(r) {
3601
3606
  return r.code === 2 ? badRequest(detail) : new HttpError(422, "Atticus refused", detail);
3602
3607
  }
3603
3608
  function uiInitiativeRoutes(r, ctx) {
3604
- const commands = () => import("./chunk-Z3RAFU5B.js");
3609
+ const commands = () => import("./chunk-NN6AXKFX.js");
3605
3610
  const changed = () => ctx.events.publish({ type: "file.changed", path: "catalog/curated" });
3606
3611
  return r.add("POST", "/api/initiatives", async ({ body }) => {
3607
3612
  const b = parseBody3(api_exports.NewInitiativeRequest, body);
@@ -3680,9 +3685,9 @@ function uiQuestionRoutes(r, ctx, deps = {}) {
3680
3685
  throw badRequest("role is product, architecture, analysis or delivery, or left out.");
3681
3686
  const onFile = await listQuestions(ctx.root);
3682
3687
  const every = { ...onFile, questions: onFile.questions.filter((q) => !q.finding) };
3683
- const { routeQuestions } = await import("./chunk-6RQOINER.js");
3688
+ const { routeQuestions } = await import("./chunk-5EIKOU7L.js");
3684
3689
  const routedAll = await routeQuestions(ctx.root, every.questions, mine ? { mine: ctx.user } : {});
3685
- const { stageQuestions, roleWithStage, isChangeQuestion, countByRole, personsRoles } = await import("./chunk-AVMWESFZ.js");
3690
+ const { stageQuestions, roleWithStage, isChangeQuestion, countByRole, personsRoles } = await import("./chunk-SGYQORAD.js");
3686
3691
  const stages = await stageQuestions(ctx.root);
3687
3692
  const roleOf = (q) => roleWithStage(q, stages);
3688
3693
  for (const q of every.questions) {
@@ -3733,13 +3738,13 @@ function uiQuestionRoutes(r, ctx, deps = {}) {
3733
3738
  return { status: 200, body };
3734
3739
  };
3735
3740
  return r.add("GET", "/api/questions", async ({ query }) => keptAnswer(ctx.root, `questions?${query.toString()}&by=${ctx.user}`, () => questionsAnswer(query), () => checkoutsStamp(ctx.root))).add("GET", "/api/owner-questions", async () => keptAnswer(ctx.root, "owner-questions", async () => {
3736
- const { ownerQuestions } = await import("./chunk-XNFM6WUK.js");
3741
+ const { ownerQuestions } = await import("./chunk-XKNISZ6N.js");
3737
3742
  return { status: 200, body: await ownerQuestions(ctx.root, { now: now() }) };
3738
3743
  })).add("POST", "/api/owner-questions/{id}/answer", async ({ params, body }) => {
3739
3744
  const b = api_exports.OwnerAnswerRequest.safeParse(body ?? {});
3740
3745
  if (!b.success || !b.data.answer.trim())
3741
3746
  throw badRequest('Answer with { answer: "what the owner said" }.');
3742
- const { answerOwnerQuestion, OwnerQuestionError } = await import("./chunk-XNFM6WUK.js");
3747
+ const { answerOwnerQuestion, OwnerQuestionError } = await import("./chunk-XKNISZ6N.js");
3743
3748
  try {
3744
3749
  const r2 = await answerOwnerQuestion(ctx.root, params.id, b.data.answer, {
3745
3750
  by: ctx.user,
@@ -3764,13 +3769,13 @@ function uiQuestionRoutes(r, ctx, deps = {}) {
3764
3769
  throw notFound(`There is no question ${params.id}.`);
3765
3770
  if (q.askedBy.step !== TARGETS_STEP_ID && q.askedBy.step !== TOPICS_STEP_ID)
3766
3771
  throw new HttpError(422, "That question doesn't ask where a call goes or who owns a topic", `${q.id} isn't a targets or topics question, so it has no picker.`);
3767
- const { pickerOf } = await import("./chunk-YD3KTW4H.js");
3772
+ const { pickerOf } = await import("./chunk-B63NWU3P.js");
3768
3773
  return { status: 200, body: { picks: await pickerOf(ctx.root) } };
3769
3774
  }).add("GET", "/api/questions/{id}/evidence", async ({ params }) => {
3770
3775
  const q = await readQuestion(ctx.root, params.id).catch(() => void 0);
3771
3776
  if (!q)
3772
3777
  throw notFound(`There is no question ${params.id}.`);
3773
- const { evidenceExcerpts } = await import("./chunk-T6MAWL5P.js");
3778
+ const { evidenceExcerpts } = await import("./chunk-NOU5IBLM.js");
3774
3779
  return {
3775
3780
  status: 200,
3776
3781
  body: {
@@ -3803,7 +3808,10 @@ function uiQuestionRoutes(r, ctx, deps = {}) {
3803
3808
  errors: b.error.issues.map((i) => ({ path: i.path.join("."), message: i.message }))
3804
3809
  });
3805
3810
  try {
3806
- const { acceptProposal: acceptProposal2, target, addSystem, name, ...given } = b.data;
3811
+ const { acceptProposal: acceptProposal2, target, addSystem, name, ignore, reason, ...given } = b.data;
3812
+ if (ignore && (acceptProposal2 || target || given.option !== void 0 || given.text))
3813
+ throw badRequest("Give ignore alone (with a reason, if any), not with an answer.");
3814
+ let adds;
3807
3815
  let writeSystem;
3808
3816
  let system;
3809
3817
  if (target) {
@@ -3812,7 +3820,7 @@ function uiQuestionRoutes(r, ctx, deps = {}) {
3812
3820
  const q0 = await readQuestion(ctx.root, params.id).catch(() => void 0);
3813
3821
  if (!q0)
3814
3822
  throw notFound(`There is no question ${params.id}.`);
3815
- const { targetAnswerOf, offerLine } = await import("./chunk-YD3KTW4H.js");
3823
+ const { targetAnswerOf, offerLine } = await import("./chunk-B63NWU3P.js");
3816
3824
  const t = await targetAnswerOf(ctx.root, q0, target, {
3817
3825
  ...addSystem ? { addSystem } : {},
3818
3826
  ...name ? { name } : {}
@@ -3821,6 +3829,7 @@ function uiQuestionRoutes(r, ctx, deps = {}) {
3821
3829
  throw badRequest([t.problem, ...t.offer ? [offerLine(q0.id, target, t.offer)] : []].join(" "), t.offer ? { offer: t.offer } : void 0);
3822
3830
  given.text = t.text;
3823
3831
  writeSystem = t.write;
3832
+ adds = t.adds;
3824
3833
  }
3825
3834
  const r2 = acceptProposal2 ? await acceptProposal(ctx.root, params.id, {
3826
3835
  ...given.scope ? { scope: given.scope } : {},
@@ -3830,6 +3839,8 @@ function uiQuestionRoutes(r, ctx, deps = {}) {
3830
3839
  at: now().toISOString()
3831
3840
  }) : await answerQuestion(ctx.root, params.id, {
3832
3841
  ...given,
3842
+ ...ignore ? { ignore: reason?.trim() ? { reason } : {} } : {},
3843
+ ...adds ? { adds } : {},
3833
3844
  // Review item 14: the profile is written only once the answer is accepted.
3834
3845
  ...writeSystem ? {
3835
3846
  beforeWrite: async () => {
@@ -4117,20 +4128,32 @@ function vscodeFileLink(path, line) {
4117
4128
  const segs = (posix.startsWith("/") ? posix.slice(1) : posix).split("/").map((x) => /^[A-Za-z]:$/.test(x) ? x : encodeURIComponent(x));
4118
4129
  return `vscode://file/${segs.join("/")}:${line}`;
4119
4130
  }
4131
+ async function estateDependencies(root, records = []) {
4132
+ const op = await loadOrgPack(orgPackDirOf(root)).catch(() => void 0);
4133
+ if (!op)
4134
+ return [];
4135
+ const estate = await estateFacts(root, op, "");
4136
+ if (!estate.repos.some((r) => r.facts.some((f) => f.kind === "dependency")))
4137
+ return [];
4138
+ const known = records.flatMap((r) => r.kind === "Component" && r.repo ? [{ id: r.id, repo: r.repo }] : []);
4139
+ const repos = joinReposOf(op, estate.repos, componentRenames(estate.repos, op, known));
4140
+ return joinDependencies({ repos }).links;
4141
+ }
4120
4142
  function uiGraphRoutes(r, ctx) {
4121
4143
  const memoKey = `estate:${ctx.root}`;
4122
4144
  ctx.events.listen((e) => {
4123
- if (e.type === "file.changed" && typeof e.path === "string" && /^(\.atticus[\\/])?catalog[\\/]/.test(e.path))
4145
+ if (e.type === "file.changed" && typeof e.path === "string" && /^(\.atticus[\\/])?(catalog|facts)[\\/]/.test(e.path))
4124
4146
  recheckNow(memoKey);
4125
4147
  });
4126
- const estate = async () => memoByFiles(memoKey, () => filesUnder(catalogDirOf(ctx.root)), buildFromCatalog, {
4127
- recheckAfterMs: 1e3
4128
- });
4148
+ const estate = async () => memoByFiles(memoKey, async () => [
4149
+ ...await filesUnder(catalogDirOf(ctx.root)),
4150
+ ...await filesUnder(factsDirOf(ctx.root))
4151
+ ], buildFromCatalog, { recheckAfterMs: 1e3 });
4129
4152
  const buildFromCatalog = async () => {
4130
4153
  const records = await catalogRecords(ctx.root);
4131
4154
  if (!records.length)
4132
4155
  throw new HttpError(422, "Atticus can't show that yet", "The catalog is empty: read the repos first (atticus map <repo>, then atticus verify <repo> --write).", { notYet: true });
4133
- return buildEstate(records);
4156
+ return buildEstate(records, { dependsOn: await estateDependencies(ctx.root, records) });
4134
4157
  };
4135
4158
  setTimeout(() => void estate().catch(() => void 0), 0).unref?.();
4136
4159
  const guard = (f) => {
@@ -4172,6 +4195,27 @@ function uiGraphRoutes(r, ctx) {
4172
4195
  const lens = lensOf(query.get("lens"), "data");
4173
4196
  const est = await estate();
4174
4197
  return { status: 200, body: guard(() => focusView(est, id, { lens })) };
4198
+ }).add("GET", "/api/graph/edge-calls", async ({ query }) => {
4199
+ const edge = query.get("edge");
4200
+ const node = query.get("node");
4201
+ const focus = query.get("focus");
4202
+ if (!edge || !node === !focus)
4203
+ throw badRequest("Say edge=<edge id> and node=<id> or focus=<id>.");
4204
+ const id = idOf(node ?? focus);
4205
+ const lens = lensOf(query.get("lens"), node ? "architecture" : "data");
4206
+ const est = await estate();
4207
+ const v = guard(() => node ? nodeView(est, id, { lens, everyJoin: true }) : focusView(est, id, { lens, everyJoin: true }));
4208
+ const e = v.edges.find((x) => x.id === edge);
4209
+ if (!e)
4210
+ throw notFound(`The ${lens} view of ${id} has no edge ${edge}.`);
4211
+ return {
4212
+ status: 200,
4213
+ body: {
4214
+ edge: e.id,
4215
+ count: e.count,
4216
+ joins: e.joins ?? []
4217
+ }
4218
+ };
4175
4219
  }).add("GET", "/api/graph/views", async () => {
4176
4220
  const dir = join6(ctx.root, ...viewsRel.split("/"));
4177
4221
  const names = (await readdir5(dir).catch(() => [])).filter((n) => n.endsWith(".yaml")).sort();
@@ -4396,7 +4440,7 @@ function uiSpecRoutes(r, ctx) {
4396
4440
  });
4397
4441
  r.add("GET", "/api/changes/{changeId}/conformance", async ({ params }) => {
4398
4442
  const change = idOf2(params.changeId, "change");
4399
- const { conformanceOf } = await import("./chunk-6Y4FXOMI.js");
4443
+ const { conformanceOf } = await import("./chunk-FDL2JOLB.js");
4400
4444
  const c = await conformanceOf(root, change);
4401
4445
  if (!c)
4402
4446
  throw notFound(`There is no change ${change}.`);
@@ -4411,7 +4455,7 @@ function uiSpecRoutes(r, ctx) {
4411
4455
  });
4412
4456
  r.add("GET", "/api/changes/{changeId}/impact", async ({ params }) => {
4413
4457
  const change = idOf2(params.changeId, "change");
4414
- const { changeImpactOf } = await import("./chunk-EXJZBL5N.js");
4458
+ const { changeImpactOf } = await import("./chunk-U57VLY6X.js");
4415
4459
  const i = await changeImpactOf(root, change);
4416
4460
  if (!i)
4417
4461
  throw notFound(`There is no change ${change}.`);
@@ -4564,8 +4608,8 @@ function uiKnowledgeRoutes(r, ctx, deps = {}) {
4564
4608
  const slash = id.indexOf("/");
4565
4609
  return hash > 0 && slash > 0 && slash < hash ? { source: id.slice(0, slash), page: id.slice(slash + 1, hash) } : void 0;
4566
4610
  };
4567
- const { knowledgePages } = await import("./chunk-PCCLVIDP.js");
4568
- const { sectionOf } = await import("./chunk-AQRUQNFB.js");
4611
+ const { knowledgePages } = await import("./chunk-ZSNNF26J.js");
4612
+ const { sectionOf } = await import("./chunk-TBQHBOFF.js");
4569
4613
  const pages = doc?.items.some((i) => i.id.includes("#")) ? await knowledgePages(root) : [];
4570
4614
  const records = doc?.items.length ? new Map((await readKnowledge(root, { cacheRoot: root })).items.map((r2) => [r2.id, r2])) : /* @__PURE__ */ new Map();
4571
4615
  const passageOf = (id) => {
@@ -4856,7 +4900,7 @@ function uiKnowledgeRoutes(r, ctx, deps = {}) {
4856
4900
  if (source !== void 0)
4857
4901
  idOf3(source, "source");
4858
4902
  const ids = await snapshotSources(root);
4859
- const { inputsPassagePages, pastableArg } = await import("./chunk-PCCLVIDP.js");
4903
+ const { inputsPassagePages, pastableArg } = await import("./chunk-ZSNNF26J.js");
4860
4904
  const live = !ids.includes(INPUTS_SOURCE_ID) && (!source || source === INPUTS_SOURCE_ID) ? await inputsPassagePages(root) : [];
4861
4905
  if (source && !ids.includes(source) && !(source === INPUTS_SOURCE_ID && live.length))
4862
4906
  throw notFound(`${source} has no snapshot yet: atticus sources sync --source ${source}.`);
@@ -5071,7 +5115,7 @@ async function configuredModel(root) {
5071
5115
  function uiModelRunRoutes(r, ctx, deps = {}) {
5072
5116
  const root = ctx.root;
5073
5117
  const runStep = deps.runStep ?? (async (args) => {
5074
- const { main } = await import("./chunk-QAVRDONY.js");
5118
+ const { main } = await import("./chunk-CNF2EZ6S.js");
5075
5119
  const out = [];
5076
5120
  const err = [];
5077
5121
  const code = await main([...args, "--root", root], { out: (l) => out.push(l), err: (l) => err.push(l) }, { quiet: true });
@@ -5079,7 +5123,7 @@ function uiModelRunRoutes(r, ctx, deps = {}) {
5079
5123
  });
5080
5124
  return r.add("POST", "/api/runs/handoff", async ({ body }) => {
5081
5125
  const words = stepWords(body);
5082
- const { prepareStep } = await import("./chunk-FMR2D3AZ.js");
5126
+ const { prepareStep } = await import("./chunk-JJ4SCGRJ.js");
5083
5127
  const { code, prepared } = await prepareStep(root, runStep, words);
5084
5128
  ctx.events.publish({ type: "file.changed", path: runsRelOf(root) });
5085
5129
  if (!prepared.runId && code !== 0) {
@@ -5297,10 +5341,10 @@ var CopilotRun = class {
5297
5341
 
5298
5342
  // packages/cli/dist/ui-api-copilot-runs.js
5299
5343
  var defaultStarter = (root) => async (o, io, deps) => {
5300
- const { mapAllCommand } = await import("./chunk-2YSD6E6V.js");
5344
+ const { mapAllCommand } = await import("./chunk-H5EQOSTC.js");
5301
5345
  return mapAllCommand(root, o, io, {
5302
5346
  ...deps,
5303
- makeAcp: async () => (await import("./chunk-SRTUETF5.js")).acpStepRunner(root)
5347
+ makeAcp: async () => (await import("./chunk-6FIYEB7M.js")).acpStepRunner(root)
5304
5348
  });
5305
5349
  };
5306
5350
  var TAIL = 200;
@@ -5624,7 +5668,7 @@ function uiDecisionRoutes(r, ctx, deps = {}) {
5624
5668
  ctx.events.publish({ type: "file.changed", path });
5625
5669
  return { status: 200, body: out };
5626
5670
  }).add("GET", "/api/propose-answers", async () => {
5627
- const { openDecideRun, PROPOSE_CHANGE } = await import("./chunk-KTNOBTV5.js");
5671
+ const { openDecideRun, PROPOSE_CHANGE } = await import("./chunk-QK6CGRKK.js");
5628
5672
  const run5 = await openDecideRun(ctx.root, PROPOSE_CHANGE);
5629
5673
  const body = run5 ? {
5630
5674
  state: "waiting",
@@ -5638,7 +5682,7 @@ function uiDecisionRoutes(r, ctx, deps = {}) {
5638
5682
  const op = await loadOrgPack(orgPackDirOf(ctx.root));
5639
5683
  if (op.runtime.ai === "off")
5640
5684
  throw conflict("runtime.yaml turns AI off here (ai: off): answer the questions yourself.");
5641
- const { startProposeHandoff } = await import("./chunk-SRTUETF5.js");
5685
+ const { startProposeHandoff } = await import("./chunk-6FIYEB7M.js");
5642
5686
  const h = await startProposeHandoff(ctx.root, { now: now() });
5643
5687
  const body = {
5644
5688
  state: "waiting",
@@ -6295,7 +6339,7 @@ function uiDocumentRoutes(r, ctx) {
6295
6339
  const root = ctx.root;
6296
6340
  const changed = (path) => ctx.events.publish({ type: "file.changed", path });
6297
6341
  return r.add("GET", "/api/knowledge/documents", async () => {
6298
- const { listDocuments } = await import("./chunk-7XWJ6ED2.js");
6342
+ const { listDocuments } = await import("./chunk-T5NH5L7A.js");
6299
6343
  return { status: 200, body: api_exports.DocumentList.parse(await listDocuments(root)) };
6300
6344
  }).add("POST", "/api/knowledge/documents", async ({ body }) => {
6301
6345
  const b = api_exports.AttachFileRequest.safeParse(body ?? {});
@@ -6304,7 +6348,7 @@ function uiDocumentRoutes(r, ctx) {
6304
6348
  const bytes = new Uint8Array(Buffer.from(b.data.content, "base64"));
6305
6349
  if (bytes.length > MAX_FILE)
6306
6350
  throw new HttpError(413, "The file is too large", "Add a file of 15 MB or less.");
6307
- const { addToInbox } = await import("./chunk-OBUB3H72.js");
6351
+ const { addToInbox } = await import("./chunk-WWSCJBF6.js");
6308
6352
  const res = await addToInbox(root, [{ name: b.data.name, bytes }]);
6309
6353
  if (!res.added.length)
6310
6354
  throw new HttpError(422, "Atticus can't add that", res.refused[0]?.why ?? "", {
@@ -6314,7 +6358,7 @@ function uiDocumentRoutes(r, ctx) {
6314
6358
  changed(a.path);
6315
6359
  return { status: 201, body: api_exports.AddDocumentResult.parse(res) };
6316
6360
  }, { maxBody: Math.ceil(MAX_FILE * 4 / 3) + 64 * 1024 }).add("POST", "/api/changes/{changeId}/inputs/{name}/promote", async ({ params }) => {
6317
- const { AttachError, promoteChangeInput } = await import("./chunk-ISG547IS.js");
6361
+ const { AttachError, promoteChangeInput } = await import("./chunk-ZCU2UY47.js");
6318
6362
  try {
6319
6363
  const res = await promoteChangeInput(root, params.changeId, params.name);
6320
6364
  changed(res.path);
@@ -6331,13 +6375,13 @@ function uiDocumentRoutes(r, ctx) {
6331
6375
  function uiRepoRoutes(r, ctx) {
6332
6376
  const root = ctx.root;
6333
6377
  return r.add("GET", "/api/repos/branches", async () => {
6334
- const { repoBranches } = await import("./chunk-DCRYOMTM.js");
6378
+ const { repoBranches } = await import("./chunk-KYO5HT4G.js");
6335
6379
  return { status: 200, body: api_exports.RepoBranchesList.parse(await repoBranches(root)) };
6336
6380
  }).add("GET", "/api/repos/compare", async ({ query }) => {
6337
6381
  const branch = query.get("branch")?.trim() ?? "";
6338
6382
  if (!branch)
6339
6383
  throw badRequest("Say which branch: ?branch=<name>.");
6340
- const { compareBranch } = await import("./chunk-DCRYOMTM.js");
6384
+ const { compareBranch } = await import("./chunk-KYO5HT4G.js");
6341
6385
  const c = await compareBranch(root, branch);
6342
6386
  if (!c)
6343
6387
  throw notFound(`${branch} hasn't been scanned beside the baseline yet.`);
@@ -6346,7 +6390,7 @@ function uiRepoRoutes(r, ctx) {
6346
6390
  const b = api_exports.EditRepoBranchesRequest.safeParse(body ?? {});
6347
6391
  if (!b.success)
6348
6392
  throw badRequest("Send defaultBranch and branches as branch names.");
6349
- const { editRepoBranches, RepoEditError } = await import("./chunk-DCRYOMTM.js");
6393
+ const { editRepoBranches, RepoEditError } = await import("./chunk-KYO5HT4G.js");
6350
6394
  try {
6351
6395
  const file = await editRepoBranches(root, params.repoId, b.data);
6352
6396
  ctx.events.publish({ type: "file.changed", path: file });
@@ -6366,7 +6410,7 @@ function uiRepoRoutes(r, ctx) {
6366
6410
  const b = api_exports.EditRepoBuildRequest.safeParse(body ?? {});
6367
6411
  if (!b.success)
6368
6412
  throw badRequest('Send the build command as build ("" clears it), up to 500 characters.');
6369
- const { editRepoBuild, RepoEditError } = await import("./chunk-DCRYOMTM.js");
6413
+ const { editRepoBuild, RepoEditError } = await import("./chunk-KYO5HT4G.js");
6370
6414
  try {
6371
6415
  const r2 = await editRepoBuild(root, params.repoId, b.data);
6372
6416
  ctx.events.publish({ type: "file.changed", path: r2.file });
@@ -6387,7 +6431,7 @@ function uiRepoRoutes(r, ctx) {
6387
6431
  const b = api_exports.SetOrgPackOwnerRequest.safeParse(body ?? {});
6388
6432
  if (!b.success)
6389
6433
  throw badRequest("Send the owner as one handle: { owner }.");
6390
- const { setOrgPackOwner, OwnerEditError } = await import("./chunk-2QPJ4E4Z.js");
6434
+ const { setOrgPackOwner, OwnerEditError } = await import("./chunk-TAR6T2RE.js");
6391
6435
  try {
6392
6436
  const r2 = await setOrgPackOwner(root, b.data.owner, b.data.was);
6393
6437
  ctx.events.publish({ type: "file.changed", path: r2.file });
@@ -6408,7 +6452,7 @@ function uiRepoRoutes(r, ctx) {
6408
6452
  const b = api_exports.EditRepoDescriptionRequest.safeParse(body ?? {});
6409
6453
  if (!b.success)
6410
6454
  throw badRequest("Send what the repo is as text, or accept: true to confirm the draft, or reject: true to drop it.");
6411
- const { editRepoDescription, RepoEditError } = await import("./chunk-DCRYOMTM.js");
6455
+ const { editRepoDescription, RepoEditError } = await import("./chunk-KYO5HT4G.js");
6412
6456
  try {
6413
6457
  const r2 = await editRepoDescription(root, params.repoId, b.data);
6414
6458
  ctx.events.publish({ type: "file.changed", path: r2.file });
@@ -6437,7 +6481,7 @@ function changeIdOf(v) {
6437
6481
  function uiCockpitRoutes(r, ctx) {
6438
6482
  return r.add("GET", "/api/changes/{changeId}/cockpit", async ({ params }) => {
6439
6483
  const id = changeIdOf(params.changeId);
6440
- const { cockpit } = await import("./chunk-3UHV76UD.js");
6484
+ const { cockpit } = await import("./chunk-BLVFHN3C.js");
6441
6485
  try {
6442
6486
  return await keptAnswer(ctx.root, `cockpit:${id}:${ctx.user}`, async () => ({
6443
6487
  status: 200,
@@ -6449,7 +6493,7 @@ function uiCockpitRoutes(r, ctx) {
6449
6493
  throw e;
6450
6494
  }
6451
6495
  }).add("GET", "/api/past-changes", async ({ query }) => {
6452
- const { changeAboutText, similarChanges } = await import("./chunk-FTLYXMHA.js");
6496
+ const { changeAboutText, similarChanges } = await import("./chunk-H7KERB6Q.js");
6453
6497
  const given = query.get("change");
6454
6498
  const change = given ? changeIdOf(given) : void 0;
6455
6499
  const text = change ? await changeAboutText(ctx.root, change) : query.get("text")?.trim();
@@ -6468,11 +6512,11 @@ function uiCockpitRoutes(r, ctx) {
6468
6512
  const b = api_exports.AttachPastChangeRequest.safeParse(body ?? {});
6469
6513
  if (!b.success)
6470
6514
  throw badRequest("Say which archived change: { like: <its folder or id> }.");
6471
- const { attachPastChange, findPastChange } = await import("./chunk-FTLYXMHA.js");
6515
+ const { attachPastChange, findPastChange } = await import("./chunk-H7KERB6Q.js");
6472
6516
  const folder = await findPastChange(ctx.root, b.data.like);
6473
6517
  if (!folder)
6474
6518
  throw notFound(`There is no archived change ${b.data.like}.`);
6475
- const { AttachError } = await import("./chunk-ISG547IS.js");
6519
+ const { AttachError } = await import("./chunk-ZCU2UY47.js");
6476
6520
  try {
6477
6521
  const name = await attachPastChange(ctx.root, params.changeId, folder, ctx.user);
6478
6522
  ctx.events.publish({ type: "file.changed", path: `inputs/${name}` });
@@ -7667,7 +7711,7 @@ function uiSetupRoutes(r, ctx, deps = {}) {
7667
7711
  };
7668
7712
  return r.add("GET", "/api/setup/metarepo", async () => {
7669
7713
  const origin = await originOf(root);
7670
- const { metarepoIdFromUrl } = await import("./chunk-ZENHDXRZ.js");
7714
+ const { metarepoIdFromUrl } = await import("./chunk-G3W7GNEP.js");
7671
7715
  const folder = basename2(root);
7672
7716
  const body = {
7673
7717
  metarepo: isMetarepo(root),
@@ -7685,7 +7729,7 @@ function uiSetupRoutes(r, ctx, deps = {}) {
7685
7729
  const b = parseBody4(api_exports.CreateMetarepoRequest, body);
7686
7730
  if (isMetarepo(root))
7687
7731
  throw conflict(`${root} is a metarepo already.`);
7688
- const { initCommand } = await import("./chunk-FJVUHQPS.js");
7732
+ const { initCommand } = await import("./chunk-SYLXQNPC.js");
7689
7733
  const res = await run4((io) => initCommand(root, {
7690
7734
  name: b.name,
7691
7735
  platform: b.platform,
@@ -7710,7 +7754,7 @@ function uiSetupRoutes(r, ctx, deps = {}) {
7710
7754
  if (!await stat9(dir).then((s) => s.isDirectory(), () => false))
7711
7755
  throw notFound(`There is no folder ${dir} on this machine.`);
7712
7756
  const open = deps.openFolder ?? (async (d) => {
7713
- const { startUi: startUi2 } = await import("./chunk-E3PDCQRH.js");
7757
+ const { startUi: startUi2 } = await import("./chunk-OYKNPZCV.js");
7714
7758
  const srv = await startUi2(d, {
7715
7759
  port: 0,
7716
7760
  user,
@@ -7742,7 +7786,7 @@ function uiSetupRoutes(r, ctx, deps = {}) {
7742
7786
  };
7743
7787
  return { status: 200, body: ask };
7744
7788
  }
7745
- const { reposDiscover, AdoptError } = await import("./chunk-ZENHDXRZ.js");
7789
+ const { reposDiscover, AdoptError } = await import("./chunk-G3W7GNEP.js");
7746
7790
  const found = await reposDiscover(root, { dir }, { dryRun: true, ...b.platform ? { platform: b.platform } : {} }).catch((e) => {
7747
7791
  if (e instanceof AdoptError)
7748
7792
  throw unprocessable2(e.message.replace(/ with --platform\b/g, " (choose the platform)"));
@@ -7759,7 +7803,7 @@ function uiSetupRoutes(r, ctx, deps = {}) {
7759
7803
  detected: { signals: f.detection.signals, confidence: f.detection.confidence }
7760
7804
  }));
7761
7805
  } else {
7762
- const { cloneAt, typeOf } = await import("./chunk-MBYYQHPM.js");
7806
+ const { cloneAt, typeOf } = await import("./chunk-ETQSQ2EC.js");
7763
7807
  for (const given of pastedUrls(b.urls ?? "").slice(0, 500)) {
7764
7808
  const c = candidateOf(given);
7765
7809
  const clone = await cloneAt(c.url);
@@ -7830,13 +7874,13 @@ function uiSetupRoutes(r, ctx, deps = {}) {
7830
7874
  const id = params.repoId;
7831
7875
  if (!(await loadRepos(root).catch(() => [])).some((x) => x.id === id))
7832
7876
  throw notFound(`There is no repo ${id} in any manifest.`);
7833
- const { repoFor } = await import("./chunk-PGAMTKBI.js");
7877
+ const { repoFor } = await import("./chunk-L3PIN47C.js");
7834
7878
  const repo = await repoFor(root, id);
7835
7879
  if (!repo)
7836
7880
  throw conflict(`${id} isn't cloned here yet, so there are no files to read its type from: clone it first (Sync on Onboarding, or atticus workspace sync).`);
7837
7881
  const op = await loadOrgPack(orgPackDirOf(root));
7838
7882
  if (op.repoTypes.length) {
7839
- const { repoTypeDetect } = await import("./chunk-X7ZKNSK4.js");
7883
+ const { repoTypeDetect } = await import("./chunk-CI4D6VSU.js");
7840
7884
  const res = await run4((io) => repoTypeDetect(root, id, { json: true }, io));
7841
7885
  if (res.code !== 0)
7842
7886
  throw unprocessable2([...res.err, ...res.out].join("\n"));
@@ -7850,7 +7894,7 @@ function uiSetupRoutes(r, ctx, deps = {}) {
7850
7894
  };
7851
7895
  return { status: 200, body: body2 };
7852
7896
  }
7853
- const { typeOf } = await import("./chunk-MBYYQHPM.js");
7897
+ const { typeOf } = await import("./chunk-ETQSQ2EC.js");
7854
7898
  const t = await typeOf(repo.dir, void 0);
7855
7899
  const body = {
7856
7900
  repo: id,
@@ -7991,7 +8035,7 @@ function uiSetupRoutes(r, ctx, deps = {}) {
7991
8035
  const b = parseBody4(api_exports.SourceRequest, body);
7992
8036
  const file = join17(orgPackDirOf(root), "sources.yaml");
7993
8037
  const before = await readFile13(file, "utf8").catch(() => "");
7994
- const { sourcesAdd: sourcesAdd2 } = await import("./chunk-WYGTSZHR.js");
8038
+ const { sourcesAdd: sourcesAdd2 } = await import("./chunk-MPATOMY5.js");
7995
8039
  const res = await run4((io) => sourcesAdd2(root, b.type, b.location.trim(), io, {
7996
8040
  ...b.id ? { id: b.id } : {},
7997
8041
  ...b.path ? { path: b.path } : {},
@@ -8014,7 +8058,7 @@ function uiSetupRoutes(r, ctx, deps = {}) {
8014
8058
  };
8015
8059
  }
8016
8060
  const after = await readFile13(file, "utf8").catch(() => "");
8017
- const { changedLines: changedLines2, lfOnly: lfOnly2 } = await import("./chunk-6NCPLIIP.js");
8061
+ const { changedLines: changedLines2, lfOnly: lfOnly2 } = await import("./chunk-6OZAQPU5.js");
8018
8062
  changed(path);
8019
8063
  return {
8020
8064
  status: 200,
@@ -8039,7 +8083,7 @@ function uiRolesRoutes(r, ctx, deps = {}) {
8039
8083
  const root = ctx.root;
8040
8084
  const now = deps.now ?? (() => /* @__PURE__ */ new Date());
8041
8085
  ctx.askKnowledge = async (q) => {
8042
- const { knowledgeAnswerOf } = await import("./chunk-PCCLVIDP.js");
8086
+ const { knowledgeAnswerOf } = await import("./chunk-ZSNNF26J.js");
8043
8087
  return api_exports.KnowledgeAnswerView.parse(await knowledgeAnswerOf(root, q));
8044
8088
  };
8045
8089
  const exists4 = async (id) => {
@@ -8100,7 +8144,7 @@ function uiRolesRoutes(r, ctx, deps = {}) {
8100
8144
  const id = changeIdOf2(params.changeId);
8101
8145
  if (!await exists4(id))
8102
8146
  throw notFound(`There is no change ${id}.`);
8103
- const { ownerSuggestions } = await import("./chunk-PCCLVIDP.js");
8147
+ const { ownerSuggestions } = await import("./chunk-ZSNNF26J.js");
8104
8148
  return {
8105
8149
  status: 200,
8106
8150
  body: api_exports.OwnerSuggestionList.parse(await ownerSuggestions(root, id))
@@ -8210,12 +8254,12 @@ function uiRolesRoutes(r, ctx, deps = {}) {
8210
8254
  const b = api_exports.SendOwnerAskRequest.safeParse(body ?? {});
8211
8255
  if (!b.success)
8212
8256
  throw badRequest("Send { confirmation? }.");
8213
- const { ownerQuestions } = await import("./chunk-XNFM6WUK.js");
8257
+ const { ownerQuestions } = await import("./chunk-XKNISZ6N.js");
8214
8258
  const list = await ownerQuestions(root, { now: now() });
8215
8259
  const q = list.questions.find((x) => x.id === params.id);
8216
8260
  if (!q)
8217
8261
  throw notFound(`There is no owner question ${params.id}.`);
8218
- const { notifierFor } = await import("./chunk-PCCLVIDP.js");
8262
+ const { notifierFor } = await import("./chunk-ZSNNF26J.js");
8219
8263
  const n = await notifierFor(root, q.finding?.change, deps.notify);
8220
8264
  const to = q.owner;
8221
8265
  if (!n.notify || n.kind === "none")
@@ -8270,7 +8314,7 @@ Answer it in Atticus (Questions \u203A Owner questions), or reply to ${ctx.user}
8270
8314
  const id = strParam(query, "id")?.trim();
8271
8315
  if (!id || id.length > 400 || /[\p{Cc}]/u.test(id))
8272
8316
  throw badRequest("Say which section: ?id=<source>/<page>#<heading>.");
8273
- const { passageOf } = await import("./chunk-PCCLVIDP.js");
8317
+ const { passageOf } = await import("./chunk-ZSNNF26J.js");
8274
8318
  const p = await passageOf(root, id);
8275
8319
  if (!p)
8276
8320
  throw notFound(`No page or section ${id} is in a snapshot or in inputs/.`);