@maycombhq/atticus 2.0.0-beta.25 → 2.0.0-beta.27

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 (326) hide show
  1. package/dist/bin.js +3 -3
  2. package/dist/chunk-22A2K555.js +653 -0
  3. package/dist/{chunk-UTZMF5CV.js → chunk-23TTURB2.js} +1 -1
  4. package/dist/{chunk-F36DIKJ3.js → chunk-2666BPJE.js} +19 -19
  5. package/dist/{chunk-E2OP6JNF.js → chunk-2ALBHI4Q.js} +28 -27
  6. package/dist/chunk-2ANBMA74.js +107 -0
  7. package/dist/{chunk-S7UQFI4B.js → chunk-2HCW6HXK.js} +27 -26
  8. package/dist/{chunk-HV3KPEFH.js → chunk-2ISR6MWD.js} +15 -15
  9. package/dist/{chunk-QQD25YNF.js → chunk-2MRYL45Z.js} +50 -9
  10. package/dist/{chunk-KN4UQJ7R.js → chunk-3GNUHLAN.js} +4 -4
  11. package/dist/chunk-3GURU22K.js +44 -0
  12. package/dist/{chunk-4U3JLIRC.js → chunk-3M3MDBOG.js} +1 -1
  13. package/dist/{chunk-DJ4C5ELF.js → chunk-3PBIZBWN.js} +1 -1
  14. package/dist/{chunk-XUCHGEF5.js → chunk-3PWXVBCB.js} +83 -40
  15. package/dist/chunk-3W2QX6TT.js +58 -0
  16. package/dist/{chunk-CPFAWYVC.js → chunk-3Z7ATALI.js} +5 -5
  17. package/dist/{chunk-ZGULQAPZ.js → chunk-44SWXDD7.js} +8 -5
  18. package/dist/{chunk-LGE6H4UP.js → chunk-46N5O5H7.js} +5 -5
  19. package/dist/{chunk-SRLUADSY.js → chunk-4D4DNTFE.js} +4 -4
  20. package/dist/{chunk-DMQJDHXG.js → chunk-4EAT7HOX.js} +7 -5
  21. package/dist/{chunk-DPZD7WVX.js → chunk-4FLIW5PJ.js} +4 -4
  22. package/dist/{chunk-SGTAQNOP.js → chunk-4LWA5VMJ.js} +52 -37
  23. package/dist/{chunk-D45K3XKK.js → chunk-4ODVHNA6.js} +18 -17
  24. package/dist/{chunk-7QZDGM5V.js → chunk-4POSAXNC.js} +6 -6
  25. package/dist/{chunk-A3J75BO2.js → chunk-4PQ4KDOA.js} +16 -15
  26. package/dist/{chunk-2Y5FJQSF.js → chunk-4UVTNHA6.js} +1 -1
  27. package/dist/{chunk-KVVNAUIG.js → chunk-4XK3HLOH.js} +1 -0
  28. package/dist/{chunk-V7T6URII.js → chunk-523NRKHF.js} +4 -4
  29. package/dist/{chunk-7EAH2MFY.js → chunk-5GCCG3GJ.js} +11 -5
  30. package/dist/{chunk-7U6PBBXG.js → chunk-5XW6RUDV.js} +8 -8
  31. package/dist/{chunk-Y3J365UC.js → chunk-5YEUAZZE.js} +8 -8
  32. package/dist/{chunk-JWLABUXL.js → chunk-62LD7CSY.js} +13 -13
  33. package/dist/{chunk-LOJGNSPA.js → chunk-67Y2J55V.js} +22 -21
  34. package/dist/{chunk-UCKG6UE7.js → chunk-6DSZ4CL7.js} +37 -22
  35. package/dist/{chunk-FNP4M4VL.js → chunk-6G67LSBG.js} +283 -61
  36. package/dist/{chunk-5GLGLWAJ.js → chunk-6OEB4FTC.js} +20 -19
  37. package/dist/{chunk-5RKN5QIX.js → chunk-6OTGCKYH.js} +9 -9
  38. package/dist/{chunk-UI7ID4HG.js → chunk-6XLCMDIP.js} +13 -13
  39. package/dist/chunk-76DZJTU7.js +190 -0
  40. package/dist/chunk-7764GVJK.js +37 -0
  41. package/dist/{chunk-TKCNJJ2S.js → chunk-7BOGXFZ3.js} +11 -11
  42. package/dist/{chunk-Q52KWTG5.js → chunk-7CVHKNAF.js} +16 -15
  43. package/dist/{chunk-XF5UMMQL.js → chunk-7FEIS3KV.js} +25 -24
  44. package/dist/{chunk-UTYL4XVA.js → chunk-7GXM45T5.js} +26 -23
  45. package/dist/{chunk-4PW5SRKJ.js → chunk-7YMAMNMT.js} +17 -16
  46. package/dist/chunk-7YWS47SE.js +56 -0
  47. package/dist/{chunk-LZFKJ2BR.js → chunk-A3LVMCA5.js} +1 -1
  48. package/dist/{chunk-7YFUNWFM.js → chunk-A7ZJKLFC.js} +11 -11
  49. package/dist/chunk-AANQC5QP.js +47 -0
  50. package/dist/{chunk-LP5QGTCR.js → chunk-AIQLTDC3.js} +3 -3
  51. package/dist/{chunk-EPXYFJTY.js → chunk-AKZTCZ6F.js} +4 -4
  52. package/dist/{chunk-5267F4BS.js → chunk-ALCSTVWQ.js} +3 -3
  53. package/dist/{chunk-NMBHFSJQ.js → chunk-ALUHO7SE.js} +26 -25
  54. package/dist/{chunk-3WO7ASU7.js → chunk-AMZ4XMES.js} +8 -8
  55. package/dist/{chunk-JKEUPSCE.js → chunk-AOQG37K4.js} +8 -6
  56. package/dist/{chunk-3NA2VE45.js → chunk-ARXZTHEI.js} +16 -15
  57. package/dist/{chunk-W2W7YCFL.js → chunk-AS4CTARY.js} +16 -15
  58. package/dist/{chunk-7AKJ2XTW.js → chunk-AVUPW23W.js} +18 -17
  59. package/dist/{chunk-CMUJSPP4.js → chunk-B56FCIEJ.js} +12 -12
  60. package/dist/{chunk-K3OIBTCV.js → chunk-BABATPOZ.js} +18 -17
  61. package/dist/{chunk-VAZYNF6I.js → chunk-BIOKDLLX.js} +21 -19
  62. package/dist/{chunk-23QHP4JJ.js → chunk-BUBKKEUV.js} +5 -5
  63. package/dist/{chunk-N3OEBQTA.js → chunk-CDC6VECU.js} +3 -3
  64. package/dist/chunk-CHEFUNZ4.js +425 -0
  65. package/dist/{chunk-MM7YWUBB.js → chunk-CIFR3DPV.js} +6 -6
  66. package/dist/{chunk-JCKKAELC.js → chunk-CLBVKD4P.js} +16 -15
  67. package/dist/{chunk-HHZEXF7V.js → chunk-CLM5Z3R5.js} +5 -5
  68. package/dist/{chunk-M7XNX5IC.js → chunk-CLYV5MB6.js} +9 -9
  69. package/dist/{chunk-SHWHRCMU.js → chunk-CRYIBCGP.js} +37 -19
  70. package/dist/{chunk-6576X5BJ.js → chunk-D3L5SO27.js} +5 -5
  71. package/dist/chunk-DAZM2INZ.js +34 -0
  72. package/dist/{chunk-VBJHIRKV.js → chunk-DF4BXBB2.js} +6 -6
  73. package/dist/{chunk-U4HZ5CXL.js → chunk-E7Q52EOO.js} +11 -11
  74. package/dist/{chunk-MZTU5L6S.js → chunk-EFDUC35B.js} +3 -3
  75. package/dist/{chunk-GIOOA2ZO.js → chunk-EHXEJFHD.js} +5 -5
  76. package/dist/{chunk-M6HI36T3.js → chunk-ELJ5Q4J2.js} +2 -2
  77. package/dist/{chunk-MJAIBPI5.js → chunk-EM6DKBTJ.js} +3 -3
  78. package/dist/{chunk-YGS2YVF2.js → chunk-EMC46SU4.js} +38 -17
  79. package/dist/{chunk-CB6H7MH2.js → chunk-EQEDIWFQ.js} +25 -24
  80. package/dist/chunk-EW574EZI.js +57 -0
  81. package/dist/{chunk-JJEPU4VS.js → chunk-EYINWNXL.js} +5 -5
  82. package/dist/{chunk-MJOIMGS4.js → chunk-EYVYHYCA.js} +8 -8
  83. package/dist/{chunk-WGOQZ4PQ.js → chunk-F66542M6.js} +34 -9
  84. package/dist/{chunk-EUCATH2U.js → chunk-F74OMLNU.js} +6 -6
  85. package/dist/{chunk-G5P7F6RQ.js → chunk-FADIWOA5.js} +3 -3
  86. package/dist/{chunk-JMOZ6K5A.js → chunk-FC3ZVD3O.js} +3 -3
  87. package/dist/{chunk-XXJSGCDO.js → chunk-FG65LXED.js} +8 -8
  88. package/dist/{chunk-5WZV37WS.js → chunk-FKAUBC4Y.js} +8 -8
  89. package/dist/{chunk-WA644MUQ.js → chunk-FM3EEDS2.js} +15 -15
  90. package/dist/{chunk-XZQBFF65.js → chunk-FS4E7F6O.js} +403 -148
  91. package/dist/{chunk-Q6UYUCNS.js → chunk-FSYJPYLE.js} +16 -15
  92. package/dist/{chunk-H7GAPNGQ.js → chunk-G33UIUG3.js} +46 -20
  93. package/dist/{chunk-OEUTV6EL.js → chunk-G3F4BYML.js} +15 -14
  94. package/dist/{chunk-7UYRN4ON.js → chunk-GBJRFFDW.js} +5 -5
  95. package/dist/{chunk-7HW2CMIN.js → chunk-GF6GBHFN.js} +13 -11
  96. package/dist/{chunk-DCPI3ETH.js → chunk-GLHOUT5E.js} +26 -25
  97. package/dist/{chunk-VOBG7BLB.js → chunk-GM6GXO2A.js} +20 -19
  98. package/dist/{chunk-KJPKIU2R.js → chunk-GSJ2RXE7.js} +29 -28
  99. package/dist/{chunk-HU7VXMFV.js → chunk-GT72FDER.js} +6 -6
  100. package/dist/{chunk-SBNBVUOF.js → chunk-GW6ZH77P.js} +37 -36
  101. package/dist/{chunk-6WYOJCB4.js → chunk-GZILYRGC.js} +3 -3
  102. package/dist/{chunk-4SS5ZK47.js → chunk-GZSOZYEP.js} +3 -3
  103. package/dist/{chunk-N6SSI6XO.js → chunk-H25QNDKK.js} +58 -36
  104. package/dist/{chunk-DYVUNT4O.js → chunk-H3RKW4RF.js} +7 -7
  105. package/dist/chunk-H7M7ZH6H.js +52 -0
  106. package/dist/chunk-H7NRWSMP.js +55 -0
  107. package/dist/{chunk-KW4DIXUL.js → chunk-HDWVR5KD.js} +4 -4
  108. package/dist/{chunk-HR34F2AJ.js → chunk-HG24EF5S.js} +16 -15
  109. package/dist/chunk-HPNYSY5M.js +1068 -0
  110. package/dist/{chunk-3VC2XJ53.js → chunk-HUMM4S5I.js} +6 -6
  111. package/dist/{chunk-K373N5U6.js → chunk-HVPS2YCW.js} +11 -11
  112. package/dist/{chunk-IGOE6KPG.js → chunk-I34CXV2C.js} +185 -11
  113. package/dist/{chunk-U7YZ3IRI.js → chunk-I57IH5X6.js} +360 -271
  114. package/dist/{chunk-P56N3NPT.js → chunk-I5X4WU7U.js} +6 -6
  115. package/dist/chunk-IAVVJ34R.js +55 -0
  116. package/dist/chunk-IBJE2E2S.js +51 -0
  117. package/dist/{chunk-EXCXNDTQ.js → chunk-IF3X6FMO.js} +1 -1
  118. package/dist/{chunk-GAVEIYKH.js → chunk-IJHJIL6T.js} +154 -25
  119. package/dist/chunk-IM435QAM.js +72 -0
  120. package/dist/{chunk-7NLYSTEK.js → chunk-IMBJ7WAO.js} +6 -6
  121. package/dist/{chunk-EM7F6XEU.js → chunk-INCFIDCB.js} +2 -2
  122. package/dist/{chunk-AYWJMHSX.js → chunk-IPMPLTEG.js} +3 -3
  123. package/dist/{chunk-PGKCRK77.js → chunk-IPSZDVLI.js} +12 -12
  124. package/dist/{chunk-IMTAHDME.js → chunk-IX2EOYOU.js} +50 -13
  125. package/dist/{chunk-QE444DZ2.js → chunk-IXNMGPF7.js} +61 -28
  126. package/dist/{chunk-NL6GIEJU.js → chunk-J6GO3K7G.js} +19 -18
  127. package/dist/chunk-JBLM6IUA.js +42 -0
  128. package/dist/{chunk-IWQEZFVV.js → chunk-JL2VOYSL.js} +91 -93
  129. package/dist/{chunk-K77ILFUQ.js → chunk-JRXFZB6J.js} +8 -8
  130. package/dist/{chunk-UR6JGVX2.js → chunk-JTOLBS7R.js} +988 -410
  131. package/dist/{chunk-GD6FXN6R.js → chunk-K73BHPTQ.js} +19 -18
  132. package/dist/{chunk-PYVFLITV.js → chunk-KF7KVUNJ.js} +5 -5
  133. package/dist/{chunk-F4WKGX7K.js → chunk-KKUCBKJE.js} +20 -19
  134. package/dist/{chunk-U7F6E5M3.js → chunk-KLFFHBWG.js} +27 -26
  135. package/dist/{chunk-ROVOAF2O.js → chunk-KMYB2XO7.js} +21 -13
  136. package/dist/chunk-KNYQUWFN.js +52 -0
  137. package/dist/{chunk-KFDOL2Y4.js → chunk-KOAJPMU2.js} +31 -20
  138. package/dist/chunk-KRTSE73S.js +55 -0
  139. package/dist/{chunk-IW3QMW3X.js → chunk-L3AM5YRP.js} +28 -9
  140. package/dist/{chunk-334N6EI2.js → chunk-LCIIFAID.js} +22 -21
  141. package/dist/{chunk-DLNQ3HUM.js → chunk-LCQIRCOT.js} +55 -10
  142. package/dist/{chunk-QFOJ3UPU.js → chunk-LFHBAWIM.js} +13 -13
  143. package/dist/chunk-LIHEMWIT.js +39 -0
  144. package/dist/{chunk-T5QYYB5L.js → chunk-LJLYWILK.js} +14 -14
  145. package/dist/{chunk-E7PR4WMM.js → chunk-LNJKDS5C.js} +26 -25
  146. package/dist/{chunk-HHZ2ZKUD.js → chunk-LTHY7E2P.js} +16 -15
  147. package/dist/{chunk-4WIVTPGE.js → chunk-LTVOQJKT.js} +7 -7
  148. package/dist/{chunk-TIOYZDRB.js → chunk-LZO3JABE.js} +6 -6
  149. package/dist/{chunk-PXMV2LLY.js → chunk-M65AZ4ZE.js} +3 -5
  150. package/dist/chunk-MPNTEWNY.js +492 -0
  151. package/dist/chunk-MQGQ3AWK.js +58 -0
  152. package/dist/{chunk-NQLTWGF4.js → chunk-MUXYUIBV.js} +6 -6
  153. package/dist/{chunk-5R3FRI6H.js → chunk-MWRRJDXQ.js} +34 -31
  154. package/dist/{chunk-XY6FVBBV.js → chunk-MZDHFWTN.js} +2 -2
  155. package/dist/chunk-N2XCT5OX.js +68 -0
  156. package/dist/{chunk-C5LX54QK.js → chunk-N3JGYAMD.js} +15 -15
  157. package/dist/{chunk-RL7PETU6.js → chunk-N5DLB74D.js} +367 -71
  158. package/dist/{chunk-MJMEF7SD.js → chunk-NC3Q7RIB.js} +10 -10
  159. package/dist/{chunk-4GWQVT2C.js → chunk-NCNLX4DL.js} +19 -18
  160. package/dist/{chunk-3D74UADA.js → chunk-NGSGJLKW.js} +2 -2
  161. package/dist/{chunk-OOU4N2JQ.js → chunk-NN7K2LLN.js} +25 -24
  162. package/dist/{chunk-ELNIQYLR.js → chunk-NNURP7VO.js} +15 -15
  163. package/dist/chunk-NSQB24WR.js +56 -0
  164. package/dist/{chunk-MWOPED6I.js → chunk-NV5S63YK.js} +7 -7
  165. package/dist/{chunk-CTJHEG6A.js → chunk-NWMFVPEP.js} +2 -0
  166. package/dist/{chunk-7E3G5NCH.js → chunk-NYT6QGZA.js} +22 -18
  167. package/dist/chunk-OB2DAIJX.js +62 -0
  168. package/dist/{chunk-YAUMNRCB.js → chunk-OC3OXDTG.js} +13 -8
  169. package/dist/{chunk-DAHKLVHU.js → chunk-OD6RNYMQ.js} +16 -16
  170. package/dist/{chunk-7FUQAT2R.js → chunk-OFYBRMRG.js} +6 -6
  171. package/dist/chunk-OGTELPDN.js +43 -0
  172. package/dist/{chunk-BS52P2CM.js → chunk-OQ7SBQ2Z.js} +7 -7
  173. package/dist/{chunk-OMSH46JK.js → chunk-OUDGBJC2.js} +16 -9
  174. package/dist/{chunk-USH4VU5D.js → chunk-OUGTAOGA.js} +2 -2
  175. package/dist/chunk-OWP5FCYM.js +60 -0
  176. package/dist/{chunk-YEGGQG5E.js → chunk-P36PTWBM.js} +8 -8
  177. package/dist/{chunk-IKRM64KR.js → chunk-P6Y2J2QY.js} +12 -12
  178. package/dist/{chunk-P4QTTCVK.js → chunk-PDJL2HO5.js} +24 -22
  179. package/dist/{chunk-WDJGJ3HV.js → chunk-PPKH6ULR.js} +152 -20
  180. package/dist/{chunk-5OVSDV77.js → chunk-Q4PFF2ZE.js} +8 -8
  181. package/dist/chunk-Q7EUPQEG.js +5 -0
  182. package/dist/{chunk-YRKAJ42V.js → chunk-QC6GSNIK.js} +7074 -3456
  183. package/dist/chunk-QCRQNYGI.js +211 -0
  184. package/dist/chunk-QDF533AW.js +90 -0
  185. package/dist/chunk-QDGNDNBG.js +50 -0
  186. package/dist/{chunk-2ULVUSIP.js → chunk-QGMD3PYL.js} +31 -24
  187. package/dist/{chunk-QEP4HTJE.js → chunk-QLT3WYTD.js} +6 -6
  188. package/dist/{chunk-GX67TNFA.js → chunk-QNDMAKQS.js} +11 -3
  189. package/dist/{chunk-XM3JE4QY.js → chunk-QNXMVJMA.js} +8 -8
  190. package/dist/{chunk-XP5DF5MC.js → chunk-QPAANKUR.js} +13 -12
  191. package/dist/{chunk-SD3PGZSR.js → chunk-QS4VX3HZ.js} +1 -1
  192. package/dist/{chunk-ZD64ZR64.js → chunk-QSM4K6LI.js} +7 -7
  193. package/dist/{chunk-Z4N7BKLN.js → chunk-QUFZDWPC.js} +8 -8
  194. package/dist/{chunk-ELNLHU7Y.js → chunk-QXXEOH3A.js} +18 -6
  195. package/dist/{chunk-QA4O2GGC.js → chunk-R4TUWD4C.js} +17 -1
  196. package/dist/{chunk-TAIYQDIV.js → chunk-ROI64BAI.js} +22 -21
  197. package/dist/{chunk-NMGFXT4S.js → chunk-RPVL3RTX.js} +19 -18
  198. package/dist/{chunk-62FMA437.js → chunk-RUNHVUCW.js} +16 -15
  199. package/dist/{chunk-I2M7MXSV.js → chunk-RWYPLODE.js} +9 -9
  200. package/dist/{chunk-5K6ZKHZR.js → chunk-RZYRUXSU.js} +4 -4
  201. package/dist/{chunk-TVFADTAT.js → chunk-S6TLXRBR.js} +7 -7
  202. package/dist/{chunk-PCZ4C2V7.js → chunk-SCOP3J6X.js} +7 -7
  203. package/dist/{chunk-JXLUHMTC.js → chunk-SCP24MJX.js} +24 -23
  204. package/dist/{chunk-R6HJ4SDB.js → chunk-SF3HXNXR.js} +6 -6
  205. package/dist/{chunk-7F4GZ7U2.js → chunk-SFCFL7Y5.js} +1 -1
  206. package/dist/{chunk-5RDKQOY3.js → chunk-SHFY73RI.js} +53 -112
  207. package/dist/{chunk-H75SPCAW.js → chunk-SHIARIEZ.js} +20 -19
  208. package/dist/chunk-SMFFUFMN.js +1876 -0
  209. package/dist/{chunk-JQGWP3SC.js → chunk-SVOGRJO6.js} +197 -124
  210. package/dist/chunk-SVZAAOHJ.js +46 -0
  211. package/dist/{chunk-BJDVI5W6.js → chunk-SZOU32VF.js} +21 -20
  212. package/dist/{chunk-MXPKXCGP.js → chunk-T2MN24LZ.js} +1 -1
  213. package/dist/{chunk-A3AADMM2.js → chunk-TD5WWJLN.js} +6 -6
  214. package/dist/{chunk-SXF66YNZ.js → chunk-TFN2N227.js} +6 -6
  215. package/dist/{chunk-RSA5JJMN.js → chunk-TFXNOQEU.js} +28 -27
  216. package/dist/{chunk-BEDZNT62.js → chunk-TMETWJFO.js} +11 -11
  217. package/dist/chunk-TNSAIISO.js +50 -0
  218. package/dist/{chunk-IDTVBZQI.js → chunk-TRJO2I4S.js} +3 -3
  219. package/dist/{chunk-IFDCCCEN.js → chunk-TRSNIJNM.js} +7 -7
  220. package/dist/{chunk-GDGE7ZHC.js → chunk-U3Z2QZE3.js} +6 -6
  221. package/dist/{chunk-GVOQJPKA.js → chunk-U7L3ORPK.js} +22 -21
  222. package/dist/{chunk-5UJ7C7IH.js → chunk-UDM6HGF4.js} +6 -6
  223. package/dist/{chunk-Z3KEX7ON.js → chunk-UDM7LXNJ.js} +7 -7
  224. package/dist/chunk-UDTO3U6E.js +35 -0
  225. package/dist/{chunk-UVKJVTKX.js → chunk-UEUPEUZX.js} +3 -3
  226. package/dist/chunk-UWBODTY7.js +514 -0
  227. package/dist/{chunk-KGT5RIGE.js → chunk-UYYYQTPD.js} +84 -51
  228. package/dist/{chunk-LKRMVWXB.js → chunk-V34N6JAN.js} +32 -31
  229. package/dist/{chunk-RX56MZLX.js → chunk-V3Y5P7OS.js} +24 -23
  230. package/dist/chunk-V6MLVGTP.js +89 -0
  231. package/dist/chunk-VC2XHC7P.js +424 -0
  232. package/dist/{chunk-MM5OAVSW.js → chunk-VCYE4MUD.js} +29 -28
  233. package/dist/{chunk-AGAFNUYZ.js → chunk-VN2VJ6BV.js} +19 -15
  234. package/dist/{chunk-DBVQEPZB.js → chunk-VVLWEM2Y.js} +6 -6
  235. package/dist/{chunk-F56DNMDD.js → chunk-VWCNMDMZ.js} +5 -5
  236. package/dist/{chunk-LNGFTPU7.js → chunk-W2A4NHQD.js} +25 -24
  237. package/dist/{chunk-LQD3R6NZ.js → chunk-W6OY2PMB.js} +10 -10
  238. package/dist/{chunk-IP6TSICI.js → chunk-WC6DHBVG.js} +16 -15
  239. package/dist/{chunk-MELS6T5J.js → chunk-WCA3WIGG.js} +5 -5
  240. package/dist/{chunk-GLISHJ4G.js → chunk-WJWSB65O.js} +1602 -452
  241. package/dist/{chunk-77REYYY5.js → chunk-WNPGLGCJ.js} +5 -5
  242. package/dist/chunk-WTOVWEY3.js +67 -0
  243. package/dist/{chunk-WS7KBKP4.js → chunk-X5B7KYPD.js} +507 -20
  244. package/dist/{chunk-O6DJMDBR.js → chunk-X73WLHSN.js} +7 -7
  245. package/dist/{chunk-YGNQUFVZ.js → chunk-XIIT4PVT.js} +3 -3
  246. package/dist/{chunk-5P4PNGPL.js → chunk-XLTT5QCX.js} +28 -25
  247. package/dist/{chunk-NPZ4KXIV.js → chunk-XMIS25ZJ.js} +21 -20
  248. package/dist/{chunk-NB664KWQ.js → chunk-XPDQ4T6G.js} +27 -26
  249. package/dist/{chunk-EAGSM3XY.js → chunk-XRWUYOX3.js} +138 -22
  250. package/dist/{chunk-2VN4TLGI.js → chunk-XZY4GTCX.js} +14 -9
  251. package/dist/{chunk-QSKY7FE3.js → chunk-Y2TVTI4P.js} +121 -15
  252. package/dist/{chunk-XVQQ3BQS.js → chunk-Y2U4CSCA.js} +28 -27
  253. package/dist/chunk-Y2U63JKE.js +41 -0
  254. package/dist/{chunk-UJ535VWR.js → chunk-Y6S7VCYN.js} +6 -6
  255. package/dist/{chunk-SEBBJQWK.js → chunk-YAPMGK7E.js} +11 -11
  256. package/dist/{chunk-CNF7D3A7.js → chunk-YAPVAYZN.js} +3 -3
  257. package/dist/{chunk-B2U4AOZ5.js → chunk-YCBDNWX3.js} +78 -57
  258. package/dist/{chunk-CGVRLQAY.js → chunk-YIGSUTW2.js} +1329 -92
  259. package/dist/{chunk-J65TN6QU.js → chunk-YJTBE6AJ.js} +5 -5
  260. package/dist/chunk-YQ3IXQIH.js +185 -0
  261. package/dist/{chunk-ZJQ64T6M.js → chunk-YRHKEXTP.js} +11 -11
  262. package/dist/{chunk-MN2XDLDM.js → chunk-YSSFS3YC.js} +17 -17
  263. package/dist/{chunk-BPDS7KUR.js → chunk-YXG2VQJJ.js} +200 -56
  264. package/dist/{chunk-XC5ZDFW7.js → chunk-Z4GLFTEH.js} +8 -8
  265. package/dist/{chunk-7X3WLAKP.js → chunk-Z65FWO6A.js} +157 -89
  266. package/dist/{chunk-OW53P52N.js → chunk-ZDG637ZT.js} +22 -21
  267. package/dist/{chunk-BIQNPWGX.js → chunk-ZIAMPN7N.js} +6 -6
  268. package/dist/chunk-ZIIBQHCX.js +53 -0
  269. package/dist/{chunk-RFQW7XT3.js → chunk-ZJJMYPGZ.js} +57 -27
  270. package/dist/{chunk-Y6KPWRZJ.js → chunk-ZOAX7W5S.js} +11 -11
  271. package/dist/chunk-ZSSR5GGB.js +48 -0
  272. package/dist/files.json +655 -551
  273. package/dist/fixtures/forge/expected/crosscheck.json +726 -0
  274. package/dist/fixtures/forge/slots/README.md +13 -0
  275. package/dist/fixtures/forge/slots/build.json +2686 -0
  276. package/dist/fixtures/forge/slots/crosscheck/forge-ledger.crosscheck.yaml +8 -0
  277. package/dist/fixtures/forge/slots/facts/forge-ledger.jsonl +17 -0
  278. package/dist/fixtures/forge/slots/facts/forge-ledger.meta.json +9 -0
  279. package/dist/fixtures/forge/slots/legacy/joins.json +113 -0
  280. package/dist/fixtures/forge/slots/readers/forge-events.json +306 -0
  281. package/dist/fixtures/forge/slots/readers/forge-gateway.json +238 -0
  282. package/dist/fixtures/forge/slots/readers/forge-infra.json +264 -0
  283. package/dist/fixtures/forge/slots/readers/forge-ledger.json +756 -0
  284. package/dist/fixtures/forge/slots/readers/forge-portal-bff.json +349 -0
  285. package/dist/fixtures/forge/slots/readers/forge-portal-ui.json +214 -0
  286. package/dist/fixtures/forge/slots/readers/forge-reports-job.json +258 -0
  287. package/dist/packages/sdk/npm/index.js +3859 -2939
  288. package/dist/packages/ui/dist/assets/{elk-api-ts8TigYQ.js → elk-api-CPE6PVL8.js} +2 -2
  289. package/dist/packages/ui/dist/assets/index-BYcVqj0l.js +65 -0
  290. package/dist/packages/ui/dist/assets/index-DF52Ejvz.css +1 -0
  291. package/dist/packages/ui/dist/index.html +2 -2
  292. package/package.json +5 -5
  293. package/dist/chunk-24OXGB3P.js +0 -82
  294. package/dist/chunk-2RABF6RT.js +0 -36
  295. package/dist/chunk-5CPZIWIN.js +0 -38
  296. package/dist/chunk-7YSMZEO3.js +0 -55
  297. package/dist/chunk-AENMOZMM.js +0 -42
  298. package/dist/chunk-BDKYHCGI.js +0 -71
  299. package/dist/chunk-BMMTWRWE.js +0 -50
  300. package/dist/chunk-CQRFCWQV.js +0 -45
  301. package/dist/chunk-CVWKS6GO.js +0 -50
  302. package/dist/chunk-D2CGJ7RR.js +0 -46
  303. package/dist/chunk-D7QIZLWB.js +0 -38
  304. package/dist/chunk-DM3H4V2G.js +0 -62
  305. package/dist/chunk-EJGUEUXG.js +0 -51
  306. package/dist/chunk-ELKTDXV3.js +0 -67
  307. package/dist/chunk-EP7ZBZLT.js +0 -170
  308. package/dist/chunk-EXGXCVWC.js +0 -52
  309. package/dist/chunk-FJS2FZFZ.js +0 -41
  310. package/dist/chunk-G3ZFEHCX.js +0 -925
  311. package/dist/chunk-GAU2IFIC.js +0 -33
  312. package/dist/chunk-GPOL5H3B.js +0 -55
  313. package/dist/chunk-HD72AL3L.js +0 -43
  314. package/dist/chunk-K4C2DWOZ.js +0 -232
  315. package/dist/chunk-KY3BUZYI.js +0 -54
  316. package/dist/chunk-LMNCRSER.js +0 -257
  317. package/dist/chunk-LPXH2DA4.js +0 -40
  318. package/dist/chunk-MLUHBVCI.js +0 -45
  319. package/dist/chunk-ONB7M2AF.js +0 -52
  320. package/dist/chunk-QBK33722.js +0 -51
  321. package/dist/chunk-S7I7SLZN.js +0 -59
  322. package/dist/chunk-UCQB6NKS.js +0 -192
  323. package/dist/chunk-UKMA5JFE.js +0 -52
  324. package/dist/chunk-X7QLAUNS.js +0 -47
  325. package/dist/packages/ui/dist/assets/index-CIfmX7DJ.css +0 -1
  326. package/dist/packages/ui/dist/assets/index-DNtpSfZS.js +0 -63
@@ -3,27 +3,24 @@ 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-EP7ZBZLT.js";
9
6
  import {
10
7
  onboardingQueue,
11
8
  queueWhy,
12
9
  reasonOf
13
- } from "./chunk-5267F4BS.js";
10
+ } from "./chunk-ALCSTVWQ.js";
14
11
  import {
15
12
  houseUntaughtOf,
16
13
  houseUntaughtWords
17
- } from "./chunk-HHZEXF7V.js";
14
+ } from "./chunk-CLM5Z3R5.js";
18
15
  import {
19
16
  catalogSources
20
- } from "./chunk-AGAFNUYZ.js";
17
+ } from "./chunk-VN2VJ6BV.js";
21
18
  import {
22
19
  readTaskRun
23
- } from "./chunk-5RDKQOY3.js";
20
+ } from "./chunk-SHFY73RI.js";
24
21
  import {
25
22
  rulesLackingAll
26
- } from "./chunk-5WZV37WS.js";
23
+ } from "./chunk-FKAUBC4Y.js";
27
24
  import {
28
25
  loadReadPlan,
29
26
  partOfWords,
@@ -32,31 +29,31 @@ import {
32
29
  readPlanProgress,
33
30
  readPlanRelOf,
34
31
  tokensWords
35
- } from "./chunk-DBVQEPZB.js";
32
+ } from "./chunk-VVLWEM2Y.js";
36
33
  import {
37
34
  checkoutOf,
38
35
  conventionsAt
39
- } from "./chunk-XP5DF5MC.js";
36
+ } from "./chunk-QPAANKUR.js";
40
37
  import {
41
38
  isMetarepo,
42
39
  notMetarepo
43
40
  } from "./chunk-3G4YI4ZU.js";
44
41
  import {
45
42
  readChangeTasks
46
- } from "./chunk-MN2XDLDM.js";
43
+ } from "./chunk-YSSFS3YC.js";
44
+ import {
45
+ readNeeds,
46
+ seedCollisions
47
+ } from "./chunk-JL2VOYSL.js";
47
48
  import {
48
49
  ASSISTANT_FORMATS,
49
50
  probedAssistant,
50
51
  readProbes,
51
52
  whatRunsWhere
52
- } from "./chunk-H7GAPNGQ.js";
53
- import {
54
- readNeeds,
55
- seedCollisions
56
- } from "./chunk-IWQEZFVV.js";
53
+ } from "./chunk-G33UIUG3.js";
57
54
  import {
58
55
  readChangeFiles
59
- } from "./chunk-GDGE7ZHC.js";
56
+ } from "./chunk-U3Z2QZE3.js";
60
57
  import {
61
58
  assess,
62
59
  changeStore,
@@ -65,26 +62,29 @@ import {
65
62
  loadChangeContext,
66
63
  loadChangePolicy,
67
64
  releasePrReasons,
68
- stageCompletion
69
- } from "./chunk-JQGWP3SC.js";
70
- import {
71
- fileStepStore
72
- } from "./chunk-U7YZ3IRI.js";
65
+ stageCompletion,
66
+ stageWorkDone
67
+ } from "./chunk-SVOGRJO6.js";
73
68
  import {
74
69
  readCatalog
75
- } from "./chunk-YRKAJ42V.js";
70
+ } from "./chunk-QC6GSNIK.js";
76
71
  import {
77
72
  readKnowledge,
73
+ scopeWords,
78
74
  snapshotDates,
79
75
  workingDays
80
- } from "./chunk-RL7PETU6.js";
76
+ } from "./chunk-N5DLB74D.js";
81
77
  import {
82
- stepClassOfNextStep
83
- } from "./chunk-QQD25YNF.js";
78
+ fileStepStore
79
+ } from "./chunk-I57IH5X6.js";
84
80
  import {
85
81
  baseClonePath,
82
+ loadManifest,
86
83
  repoIdKey
87
- } from "./chunk-WS7KBKP4.js";
84
+ } from "./chunk-X5B7KYPD.js";
85
+ import {
86
+ stepClassOfNextStep
87
+ } from "./chunk-2MRYL45Z.js";
88
88
  import {
89
89
  ScanVerifyProposal,
90
90
  catalogDirOf,
@@ -102,12 +102,13 @@ import {
102
102
  questionWeights,
103
103
  readRepoSpec,
104
104
  readSpecFindings
105
- } from "./chunk-GLISHJ4G.js";
105
+ } from "./chunk-WJWSB65O.js";
106
106
  import {
107
+ Sources,
107
108
  fastPathOf,
108
109
  loadOrgPack,
109
110
  stepModelsOf
110
- } from "./chunk-LZFKJ2BR.js";
111
+ } from "./chunk-A3LVMCA5.js";
111
112
  import {
112
113
  require_dist
113
114
  } from "./chunk-BQGDB6ZL.js";
@@ -116,20 +117,159 @@ import {
116
117
  } from "./chunk-TV45EUGM.js";
117
118
 
118
119
  // packages/cli/dist/next-commands.js
119
- var import_yaml = __toESM(require_dist(), 1);
120
+ var import_yaml2 = __toESM(require_dist(), 1);
120
121
  import { existsSync } from "node:fs";
121
- import { readdir, readFile } from "node:fs/promises";
122
- import { join } from "node:path";
122
+ import { readdir as readdir2, readFile as readFile2 } from "node:fs/promises";
123
+ import { join as join2 } from "node:path";
124
+
125
+ // packages/cli/dist/ui-api-onboarding.js
126
+ var import_yaml = __toESM(require_dist(), 1);
127
+ import { readdir, readFile, stat } from "node:fs/promises";
128
+ import { join, relative, sep } from "node:path";
129
+ var exists = (p) => stat(p).then(() => true, () => false);
130
+ var firstLine = (e) => String(e.message ?? e).split("\n")[0];
131
+ async function onboardingView(root) {
132
+ const rel = (p) => relative(root, p).split(sep).join("/");
133
+ const orgPack = orgPackDirOf(root);
134
+ const problems = [];
135
+ const manifests = [];
136
+ const listed = [];
137
+ const profiles = join(orgPack, "profiles");
138
+ const names = await readdir(profiles, { withFileTypes: true }).then((d) => d.filter((x) => x.isDirectory()).map((x) => x.name).sort(), () => []);
139
+ const seen = /* @__PURE__ */ new Map();
140
+ for (const name of names) {
141
+ const path = join(profiles, name, "repos.manifest.yaml");
142
+ if (!await exists(path))
143
+ continue;
144
+ try {
145
+ const m = await loadManifest(path);
146
+ manifests.push({ platform: m.platform, path: rel(path), repos: m.repos.length });
147
+ for (const r of m.repos) {
148
+ const other = seen.get(r.id);
149
+ if (other) {
150
+ problems.push({ file: rel(path), message: `repo id ${r.id} is also in ${other}` });
151
+ continue;
152
+ }
153
+ seen.set(r.id, rel(path));
154
+ listed.push({
155
+ repo: {
156
+ id: r.id,
157
+ platform: m.platform,
158
+ type: r.type,
159
+ owner: r.owner,
160
+ manifest: rel(path),
161
+ // ADR 0128: what it is, in a person's words, or a draft waiting for one.
162
+ ...r.description ? { description: r.description } : {},
163
+ // ADR 0123: the branch the catalog is read from, and those scanned beside it.
164
+ defaultBranch: r.defaultBranch,
165
+ branches: r.branches
166
+ }
167
+ });
168
+ }
169
+ } catch (e) {
170
+ problems.push({ file: rel(path), message: firstLine(e) });
171
+ }
172
+ }
173
+ const catalog = await readCatalog(join(catalogDirOf(root), "generated"), { cacheRoot: root });
174
+ for (const p of catalog.problems)
175
+ problems.push({ file: rel(join(catalogDirOf(root), "generated", p.file)), message: p.message });
176
+ const scans = /* @__PURE__ */ new Map();
177
+ for (const r of catalog.records) {
178
+ const repos2 = new Set(r.evidence.map((e) => e.repo).filter((x) => !!x));
179
+ for (const repo of repos2) {
180
+ const s = scans.get(repo) ?? { records: 0, kinds: {} };
181
+ s.records += 1;
182
+ s.kinds[r.kind] = (s.kinds[r.kind] ?? 0) + 1;
183
+ for (const e of r.evidence) {
184
+ if (e.repo !== repo || !e.scannedAt)
185
+ continue;
186
+ if (!s.scannedAt || e.scannedAt > s.scannedAt) {
187
+ s.scannedAt = e.scannedAt;
188
+ if (e.commit)
189
+ s.commit = e.commit;
190
+ }
191
+ }
192
+ if (!s.commit) {
193
+ const c = r.evidence.find((e) => e.repo === repo && e.commit)?.commit;
194
+ if (c)
195
+ s.commit = c;
196
+ }
197
+ scans.set(repo, s);
198
+ }
199
+ }
200
+ const repos = [];
201
+ for (const { repo } of listed) {
202
+ const settings = join(orgPack, "scan", `${repo.id}.yaml`);
203
+ repos.push({
204
+ ...repo,
205
+ cloned: await exists(join(baseClonePath(root, repo.id), ".git")),
206
+ scanSettings: { path: rel(settings), present: await exists(settings) },
207
+ lastScan: scans.get(repo.id) ?? null
208
+ });
209
+ }
210
+ const sourcesFile = join(orgPack, "sources.yaml");
211
+ const sources = {
212
+ path: rel(sourcesFile),
213
+ present: await exists(sourcesFile),
214
+ wikis: [],
215
+ absorbed: []
216
+ };
217
+ if (sources.present) {
218
+ try {
219
+ const s = Sources.safeParse((0, import_yaml.parse)(await readFile(sourcesFile, "utf8")));
220
+ if (!s.success)
221
+ problems.push({
222
+ file: rel(sourcesFile),
223
+ message: s.error.issues.map((i) => `${i.path.map(String).join(".") || "(file)"}: ${i.message}`).join("; ")
224
+ });
225
+ else {
226
+ sources.wikis = s.data.wikis.map((w) => ({
227
+ id: w.id,
228
+ type: w.type,
229
+ location: w.location,
230
+ spaces: w.spaces,
231
+ ...w.owner ? { owner: w.owner } : {},
232
+ // 2.30.0 (ADR 0132): how much its word counts, and where it applies.
233
+ ...w.authority ? { authority: w.authority } : {},
234
+ ...w.appliesTo ? { scope: scopeWords(w.appliesTo) } : {}
235
+ }));
236
+ sources.absorbed = s.data.absorbed.map((a) => ({
237
+ id: a.id,
238
+ url: a.url,
239
+ format: a.format,
240
+ mode: a.mode
241
+ }));
242
+ }
243
+ } catch (e) {
244
+ problems.push({ file: rel(sourcesFile), message: `can't read YAML: ${firstLine(e)}` });
245
+ }
246
+ }
247
+ return {
248
+ manifests,
249
+ repos,
250
+ sources,
251
+ catalog: { records: catalog.records.length },
252
+ problems
253
+ };
254
+ }
255
+ function uiOnboardingRoutes(r, ctx) {
256
+ return r.add("GET", "/api/onboarding", async () => ({
257
+ status: 200,
258
+ body: await onboardingView(ctx.root)
259
+ }));
260
+ }
261
+
262
+ // packages/cli/dist/next-commands.js
123
263
  var METAREPO = "metarepo";
124
264
  var DRAFTING = ["feature", "architecture", "stories"];
125
265
  var draftingAt = (s) => DRAFTING.indexOf(s);
126
266
  var STALE_DAYS = 14;
127
267
  var plural = (n, one, many = `${one}s`) => `${n} ${n === 1 ? one : many}`;
128
268
  async function verifyState(root, repo) {
129
- const text = await readFile(join(proposalsDirOf(root), "scan", `${repo}.yaml`), "utf8").catch(() => void 0);
269
+ const text = await readFile2(join2(proposalsDirOf(root), "scan", `${repo}.yaml`), "utf8").catch(() => void 0);
130
270
  if (text === void 0)
131
271
  return "none";
132
- const p = ScanVerifyProposal.safeParse((0, import_yaml.parse)(text));
272
+ const p = ScanVerifyProposal.safeParse((0, import_yaml2.parse)(text));
133
273
  if (!p.success)
134
274
  return "none";
135
275
  const s = p.data.settings;
@@ -139,10 +279,10 @@ async function verifyState(root, repo) {
139
279
  return "done";
140
280
  }
141
281
  async function staleOf(root, repo) {
142
- const text = await readFile(join(factsDirOf(root), `${repo}.verify.yaml`), "utf8").catch(() => void 0);
282
+ const text = await readFile2(join2(factsDirOf(root), `${repo}.verify.yaml`), "utf8").catch(() => void 0);
143
283
  let facts;
144
284
  try {
145
- const c = (0, import_yaml.parse)(text ?? "")?.commit;
285
+ const c = (0, import_yaml2.parse)(text ?? "")?.commit;
146
286
  if (typeof c === "string" && /^[0-9a-f]{7,64}$/.test(c))
147
287
  facts = c;
148
288
  } catch {
@@ -165,10 +305,10 @@ async function readNextState(root) {
165
305
  const view = await onboardingView(root);
166
306
  const problems = [...view.problems];
167
307
  const repos = [];
168
- const factIds = (await readdir(factsDirOf(root)).catch(() => [])).map((n) => factsFileOf(n)).flatMap((f) => f?.facts ? [f.repo] : []);
169
- const fromFacts = catalogSources((await readCatalog(join(catalogDirOf(root), "generated"), { cacheRoot: root })).records);
308
+ const factIds = (await readdir2(factsDirOf(root)).catch(() => [])).map((n) => factsFileOf(n)).flatMap((f) => f?.facts ? [f.repo] : []);
309
+ const fromFacts = catalogSources((await readCatalog(join2(catalogDirOf(root), "generated"), { cacheRoot: root })).records);
170
310
  for (const r of view.repos) {
171
- const hasFacts = existsSync(join(factsDirOf(root), `${r.id}.jsonl`));
311
+ const hasFacts = existsSync(join2(factsDirOf(root), `${r.id}.jsonl`));
172
312
  const near = hasFacts ? [] : factIds.filter((x) => x !== r.id && repoIdKey(x) === repoIdKey(r.id)).sort().map((x) => ({ id: x, file: `${factsRelOf(root)}/${x}.jsonl` }));
173
313
  const spec = await readRepoSpec(root, r.id, { cacheRoot: root });
174
314
  problems.push(...spec.problems);
@@ -251,9 +391,9 @@ async function readNextState(root) {
251
391
  const names = new Set(op.profiles.flatMap((p) => (p.profile?.systems ?? []).flatMap((x) => [x.name, ...x.aliases])).map((n) => n.toLowerCase()));
252
392
  const missing = knowledge.items.filter((i) => (i.kind === "Product" && i.productKind === "product" || i.kind === "Party" && i.partyKind === "vendor" && !!i.quote) && ![i.name, ...i.aliases].some((n) => names.has(n.toLowerCase()))).length;
253
393
  let draft;
254
- for (const f of await readdir(join(proposalsDirOf(root), "orgpack")).catch(() => []))
394
+ for (const f of await readdir2(join2(proposalsDirOf(root), "orgpack")).catch(() => []))
255
395
  if (f.endsWith(".yaml")) {
256
- const d = (0, import_yaml.parse)(await readFile(join(proposalsDirOf(root), "orgpack", f), "utf8"));
396
+ const d = (0, import_yaml2.parse)(await readFile2(join2(proposalsDirOf(root), "orgpack", f), "utf8"));
257
397
  if (d?.platform && d.proposals?.length)
258
398
  draft = { platform: d.platform, proposals: d.proposals.length };
259
399
  }
@@ -273,8 +413,10 @@ async function readNextState(root) {
273
413
  try {
274
414
  for (const c of await changeStore(root).list()) {
275
415
  const clash = clashes.filter((x) => x.change === c.id).map(({ seed, repo, capability, flow }) => ({ seed, repo, capability, flow }));
276
- const files = await readChangeFiles(join(changesDirOf(root), c.id)).catch(() => void 0);
277
- const stagesDone = (await stageCompletion({ root, policy }, c)).filter((s) => s.state === "done").map((s) => s.stage);
416
+ const files = await readChangeFiles(join2(changesDirOf(root), c.id)).catch(() => void 0);
417
+ const completion = await stageCompletion({ root, policy }, c);
418
+ const stagesDone = completion.filter((s) => stageWorkDone(s.state)).map((s) => s.stage);
419
+ const byPerson = completion.find((s) => s.state === "person");
278
420
  const needs = await readNeeds(root, c.id);
279
421
  const open2 = needs?.needs.filter((n) => n.status === "open") ?? [];
280
422
  unverifiedNeeds += open2.filter((n) => {
@@ -304,8 +446,9 @@ async function readNextState(root) {
304
446
  const run = t.done ? void 0 : (await readTaskRun(root, c.id, t.id).catch(() => void 0))?.state;
305
447
  return { id: t.id, repo: t.repo, done: t.done, ...run ? { run } : {} };
306
448
  })) : [],
307
- feature: existsSync(join(changesDirOf(root), c.id, "feature.yaml")),
449
+ feature: existsSync(join2(changesDirOf(root), c.id, "feature.yaml")),
308
450
  ...missing.draft ? { undrafted: true } : {},
451
+ ...byPerson ? { byPerson: { stage: byPerson.stage, files: byPerson.files ?? [] } } : {},
309
452
  ...blocking ? { blocking } : {},
310
453
  ...gate.length ? { gate } : {},
311
454
  ...c.state === "released" ? await releasedOf(root, c.id) : {},
@@ -327,7 +470,7 @@ async function readNextState(root) {
327
470
  ...clash.length ? { seedCollisions: clash } : {},
328
471
  ...await isFast(root, c, types) ? {
329
472
  fast: true,
330
- .../^state: done$/m.test(await readFile(join(changesDirOf(root), c.id, "stage", "small.yaml"), "utf8").catch(() => "")) ? { fastDone: true } : {}
473
+ .../^state: done$/m.test(await readFile2(join2(changesDirOf(root), c.id, "stage", "small.yaml"), "utf8").catch(() => "")) ? { fastDone: true } : {}
331
474
  } : {},
332
475
  ...needs ? {
333
476
  needs: {
@@ -356,12 +499,12 @@ async function readNextState(root) {
356
499
  }
357
500
  var UNDER_WAY = /* @__PURE__ */ new Set(["drafting", "waiting", "questions", "stopped"]);
358
501
  async function stageInProgress(root, change) {
359
- const dir = join(changesDirOf(root), change, "stage");
502
+ const dir = join2(changesDirOf(root), change, "stage");
360
503
  let newest;
361
- for (const f of (await readdir(dir).catch(() => [])).filter((x) => x.endsWith(".yaml"))) {
362
- const loop = await readFile(join(dir, f), "utf8").then((t) => {
504
+ for (const f of (await readdir2(dir).catch(() => [])).filter((x) => x.endsWith(".yaml"))) {
505
+ const loop = await readFile2(join2(dir, f), "utf8").then((t) => {
363
506
  try {
364
- return (0, import_yaml.parse)(t);
507
+ return (0, import_yaml2.parse)(t);
365
508
  } catch {
366
509
  return null;
367
510
  }
@@ -373,11 +516,11 @@ async function stageInProgress(root, change) {
373
516
  return newest;
374
517
  }
375
518
  async function loopState(root, change, stage) {
376
- const t = await readFile(join(changesDirOf(root), change, "stage", `${stage}.yaml`), "utf8").catch(() => void 0);
519
+ const t = await readFile2(join2(changesDirOf(root), change, "stage", `${stage}.yaml`), "utf8").catch(() => void 0);
377
520
  if (t === void 0)
378
521
  return void 0;
379
522
  try {
380
- const s = (0, import_yaml.parse)(t)?.state;
523
+ const s = (0, import_yaml2.parse)(t)?.state;
381
524
  return typeof s === "string" ? s : void 0;
382
525
  } catch {
383
526
  return void 0;
@@ -386,10 +529,10 @@ async function loopState(root, change, stage) {
386
529
  async function stageQuestions(root, change, open) {
387
530
  const out = [];
388
531
  for (const s of DRAFTING) {
389
- const t = await readFile(join(changesDirOf(root), change, "stage", `${s}.yaml`), "utf8").catch(() => "");
532
+ const t = await readFile2(join2(changesDirOf(root), change, "stage", `${s}.yaml`), "utf8").catch(() => "");
390
533
  let y;
391
534
  try {
392
- y = (0, import_yaml.parse)(t);
535
+ y = (0, import_yaml2.parse)(t);
393
536
  } catch {
394
537
  continue;
395
538
  }
@@ -405,7 +548,7 @@ async function isFast(root, c, types) {
405
548
  const type = types.find((t) => t.id === c.type);
406
549
  if (!type || type.size !== "small" && !type.smallWhenBriefSays)
407
550
  return false;
408
- const brief = await readFile(join(changesDirOf(root), c.id, "brief.md"), "utf8").catch(() => "");
551
+ const brief = await readFile2(join2(changesDirOf(root), c.id, "brief.md"), "utf8").catch(() => "");
409
552
  return fastPathOf(type, brief).fast;
410
553
  }
411
554
  async function draftMissing(ctx, c) {
@@ -462,7 +605,7 @@ function gateBlockedStep(c, stage, gate) {
462
605
  }
463
606
  async function releasedOf(root, id) {
464
607
  try {
465
- const { archiveGate } = await import("./chunk-F4WKGX7K.js");
608
+ const { archiveGate } = await import("./chunk-KKUCBKJE.js");
466
609
  const g = await archiveGate(root, id);
467
610
  return {
468
611
  released: { blockers: g.blockers.map((b) => ({ code: b.code, message: b.message })) }
@@ -745,7 +888,7 @@ function stageSteps(c) {
745
888
  step: "handoff",
746
889
  command: `atticus change handoff ${id} --approve`,
747
890
  where: METAREPO,
748
- why: `${id}'s ${stage} stage is done${later.length ? ` (and ${later.join(" and ")} ran ahead)` : ""}, but the change is still in ${c.state}: a person raises its ${gate} hand-off PR, and merging it approves the ${gate} gate and moves it on (ADR 0073).`,
891
+ why: `${c.byPerson?.stage === stage ? `${id}'s ${c.byPerson.files.join(" and ")} ${c.byPerson.files.length === 1 ? "is" : "are"} written by a person (the ${stage} stage never ran)` : `${id}'s ${stage} stage is done`}${later.length ? ` (and ${later.join(" and ")} ran ahead)` : ""}, but the change is still in ${c.state}: a person raises its ${gate} hand-off PR, and merging it approves the ${gate} gate and moves it on (ADR 0073).`,
749
892
  change: id,
750
893
  person: true
751
894
  }
@@ -1209,6 +1352,7 @@ function queueOut(s, o, io) {
1209
1352
  }
1210
1353
 
1211
1354
  export {
1355
+ uiOnboardingRoutes,
1212
1356
  readNextState,
1213
1357
  changeSteps,
1214
1358
  nextSteps,
@@ -3,33 +3,33 @@ 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
- doctorChecks
8
- } from "./chunk-F36DIKJ3.js";
9
6
  import {
10
7
  buildSite,
11
8
  catalogRecords,
12
9
  openChanges
13
- } from "./chunk-N3OEBQTA.js";
10
+ } from "./chunk-CDC6VECU.js";
11
+ import {
12
+ doctorChecks
13
+ } from "./chunk-2666BPJE.js";
14
14
  import {
15
15
  readProbes,
16
16
  whatRunsWhere
17
- } from "./chunk-H7GAPNGQ.js";
17
+ } from "./chunk-G33UIUG3.js";
18
18
  import {
19
19
  baseClonePath,
20
20
  loadRepos
21
- } from "./chunk-WS7KBKP4.js";
21
+ } from "./chunk-X5B7KYPD.js";
22
22
  import {
23
23
  catalogDirOf,
24
24
  inputsDirOf,
25
25
  orgPackDirOf
26
- } from "./chunk-GLISHJ4G.js";
26
+ } from "./chunk-WJWSB65O.js";
27
27
  import {
28
28
  CatalogBaseline,
29
29
  DEFAULT_RUNTIME,
30
30
  WORKSPACE_SCHEMA_VERSION,
31
31
  loadOrgPack
32
- } from "./chunk-LZFKJ2BR.js";
32
+ } from "./chunk-A3LVMCA5.js";
33
33
  import {
34
34
  require_dist
35
35
  } from "./chunk-BQGDB6ZL.js";