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

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 (235) hide show
  1. package/dist/bin.js +3 -3
  2. package/dist/{chunk-AY2IUF4K.js → chunk-22GLUHGE.js} +659 -73
  3. package/dist/{chunk-CIUHAHM6.js → chunk-2A24BNRZ.js} +8 -8
  4. package/dist/{chunk-2RX7PI2Y.js → chunk-2ELFEKOO.js} +4 -4
  5. package/dist/{chunk-QKEFZRHS.js → chunk-2P6IHSRO.js} +17 -17
  6. package/dist/chunk-2Q2YBAR5.js +40 -0
  7. package/dist/{chunk-7DUDLVFJ.js → chunk-2VQLFNBO.js} +20 -20
  8. package/dist/{chunk-E3Z67HRK.js → chunk-3256EDLL.js} +4 -4
  9. package/dist/{chunk-OIU657QQ.js → chunk-34BCKMBS.js} +4 -4
  10. package/dist/{chunk-UR7RMZ3R.js → chunk-34NWVIBC.js} +2 -2
  11. package/dist/{chunk-6VBXAGJX.js → chunk-36KD4OGC.js} +14 -14
  12. package/dist/{chunk-I7IWQIEB.js → chunk-3CFBU2O6.js} +4 -4
  13. package/dist/{chunk-OSGQW2Z6.js → chunk-3JLTN3Y7.js} +8 -8
  14. package/dist/{chunk-FOGG4AUR.js → chunk-3M7QBKKG.js} +25 -7
  15. package/dist/{chunk-UF7TAFJM.js → chunk-3RP34PYV.js} +18 -18
  16. package/dist/{chunk-YLAJAI2W.js → chunk-3ZKLWM5Y.js} +11 -11
  17. package/dist/{chunk-LTQANUDH.js → chunk-47HPZ34V.js} +25 -25
  18. package/dist/chunk-4BPROPGG.js +45 -0
  19. package/dist/{chunk-Y4BRGOJR.js → chunk-4G56W6H7.js} +13 -10
  20. package/dist/{chunk-YXJ4XOHF.js → chunk-4HIQ2FTI.js} +4 -4
  21. package/dist/{chunk-AJJK7GLO.js → chunk-4HTILEXW.js} +3 -3
  22. package/dist/{chunk-OJLRFGBP.js → chunk-4Q2PGM5T.js} +78 -15
  23. package/dist/{chunk-GR6YKM55.js → chunk-4RDW2X43.js} +108 -14
  24. package/dist/{chunk-23M2LUYM.js → chunk-4VOG5H2K.js} +1 -1
  25. package/dist/chunk-5CSZTVXH.js +34 -0
  26. package/dist/{chunk-65C57N7P.js → chunk-5FFMJMVH.js} +19 -19
  27. package/dist/{chunk-XNYNEEBR.js → chunk-5GGGAI5C.js} +18 -18
  28. package/dist/{chunk-IUD3ME4E.js → chunk-5H46QFSL.js} +4 -4
  29. package/dist/{chunk-KIHOIVST.js → chunk-5ION6STH.js} +3 -3
  30. package/dist/chunk-5M3CLAOV.js +39 -0
  31. package/dist/chunk-5OACMWWI.js +886 -0
  32. package/dist/{chunk-2HMWX4T6.js → chunk-6ENDKY52.js} +11 -11
  33. package/dist/{chunk-OS7PQ35Z.js → chunk-6FG7QKJC.js} +22 -22
  34. package/dist/{chunk-FEZE6NIA.js → chunk-6JV3YHRR.js} +18 -18
  35. package/dist/{chunk-WGZWR4RF.js → chunk-6ROZRBWH.js} +5 -5
  36. package/dist/{chunk-WARBF2KY.js → chunk-6S27MUQQ.js} +10 -6
  37. package/dist/{chunk-TZDSDDSV.js → chunk-72DY5NCN.js} +2 -2
  38. package/dist/chunk-76QVBNEM.js +37 -0
  39. package/dist/{chunk-N4QZJJVB.js → chunk-77UOXZVM.js} +5 -5
  40. package/dist/{chunk-LVGBKKSM.js → chunk-7AXMUE2U.js} +15 -15
  41. package/dist/{chunk-FJCFYKVO.js → chunk-7TEQF64E.js} +196 -76
  42. package/dist/{chunk-IDGSU7JF.js → chunk-7TH6I6TL.js} +9 -9
  43. package/dist/{chunk-ZONE6E3Z.js → chunk-7UKETVPW.js} +2 -2
  44. package/dist/{chunk-XKS6THI5.js → chunk-7VNEDDCC.js} +2 -2
  45. package/dist/{chunk-BMHGA7WD.js → chunk-A5GY2EWH.js} +12 -12
  46. package/dist/{chunk-E3JYO547.js → chunk-AEZ3EICK.js} +20 -20
  47. package/dist/{chunk-7F2RUWPU.js → chunk-ARLH2ZMD.js} +1 -1
  48. package/dist/{chunk-VKMTFIWS.js → chunk-AYVLEB55.js} +18 -18
  49. package/dist/chunk-B6X5PJSA.js +320 -0
  50. package/dist/{chunk-JMSEEBN4.js → chunk-BRCDEGNE.js} +1 -1
  51. package/dist/{chunk-67J3VZBA.js → chunk-BSVTNNUK.js} +5 -5
  52. package/dist/{chunk-3GTZ2OON.js → chunk-BTOGAUWX.js} +20 -11
  53. package/dist/{chunk-4SVJNVEE.js → chunk-BXBCMGIQ.js} +2 -0
  54. package/dist/chunk-BXP2Q4TD.js +48 -0
  55. package/dist/{chunk-XPEEICAO.js → chunk-BZRWJUB4.js} +15 -15
  56. package/dist/{chunk-MH5OCRUM.js → chunk-CH6LUQLD.js} +2 -2
  57. package/dist/{chunk-T6USVBEJ.js → chunk-CIIRPLI6.js} +5 -5
  58. package/dist/chunk-CJXM6SG4.js +339 -0
  59. package/dist/{chunk-5XDNUJ4P.js → chunk-CQD26SMZ.js} +4 -2
  60. package/dist/{chunk-7TGYNOXD.js → chunk-CW5SEPUT.js} +7 -7
  61. package/dist/{chunk-5KTOPOEP.js → chunk-CWSZP2LU.js} +25 -25
  62. package/dist/chunk-CXK27ZUY.js +32 -0
  63. package/dist/{chunk-YGKYFMSL.js → chunk-CXY4YDXS.js} +3 -3
  64. package/dist/{chunk-R64GLVBO.js → chunk-DDZZXVQ5.js} +10 -10
  65. package/dist/{chunk-7YYEKTYF.js → chunk-DGZXJO5I.js} +8 -8
  66. package/dist/{chunk-IV7BCWWN.js → chunk-DONCF2XC.js} +3 -3
  67. package/dist/{chunk-RRVT4MPS.js → chunk-DPNCAFMB.js} +18 -18
  68. package/dist/{chunk-UBWCUP3G.js → chunk-DQKNOHUZ.js} +2 -2
  69. package/dist/{chunk-NGPU2ARF.js → chunk-DW4BM73R.js} +1 -1
  70. package/dist/{chunk-PEF5OEMB.js → chunk-DWN7RSNQ.js} +4 -4
  71. package/dist/{chunk-KC5DROFC.js → chunk-DWYPYVPJ.js} +14 -14
  72. package/dist/{chunk-B7434AE2.js → chunk-E73QLYK7.js} +24 -3
  73. package/dist/{chunk-EX6ZXS5K.js → chunk-EE3UNC44.js} +4 -4
  74. package/dist/chunk-EJDZEK22.js +53 -0
  75. package/dist/{chunk-ISNZYKAS.js → chunk-ENZWVTTN.js} +21 -21
  76. package/dist/{chunk-ROTY5J2L.js → chunk-EREL3TQG.js} +1 -1
  77. package/dist/{chunk-ZZXF6OOJ.js → chunk-ESGIBN3S.js} +2 -2
  78. package/dist/{chunk-YGR6OCHQ.js → chunk-EU7VTBAI.js} +8 -14
  79. package/dist/chunk-F5GA6G3U.js +48 -0
  80. package/dist/{chunk-JAA53T23.js → chunk-F6FGIYPT.js} +20 -20
  81. package/dist/{chunk-NPCD54I7.js → chunk-FAET4BB6.js} +8 -5
  82. package/dist/{chunk-YPBQNJHA.js → chunk-FBFSTYAB.js} +8 -8
  83. package/dist/{chunk-OEI7LVRP.js → chunk-FEBYMFZA.js} +24 -24
  84. package/dist/chunk-FMV6IZ3P.js +54 -0
  85. package/dist/{chunk-F7UQR4ZX.js → chunk-FQ6IBYFC.js} +3 -3
  86. package/dist/{chunk-J5LHDJU4.js → chunk-FSJMFPA3.js} +7 -7
  87. package/dist/chunk-GFZ5MIQG.js +47 -0
  88. package/dist/{chunk-LK44ULGI.js → chunk-GHSVJNVL.js} +104 -11
  89. package/dist/{chunk-LRS573EX.js → chunk-GKPOCUQR.js} +12 -7
  90. package/dist/{chunk-LDKUC2QJ.js → chunk-GLSNVC67.js} +17 -17
  91. package/dist/{chunk-47QE246J.js → chunk-GMDOXWIS.js} +5 -5
  92. package/dist/{chunk-5MI2SEV5.js → chunk-GN5ZLSLD.js} +3 -3
  93. package/dist/{chunk-JQ7XQPQS.js → chunk-GUNBOZ75.js} +4 -4
  94. package/dist/{chunk-HHUFVJF7.js → chunk-GYS64N6F.js} +6 -6
  95. package/dist/{chunk-AKJTKMXU.js → chunk-HIQWJ6JZ.js} +5 -5
  96. package/dist/{chunk-6GNS32SI.js → chunk-HJ52XDST.js} +4 -4
  97. package/dist/{chunk-2KDSXJFJ.js → chunk-HJUEQERG.js} +34 -7
  98. package/dist/chunk-HKGQUOQ3.js +88 -0
  99. package/dist/chunk-HP32HUWR.js +41 -0
  100. package/dist/{chunk-R4TBNKKC.js → chunk-HY2VVVFZ.js} +1249 -610
  101. package/dist/{chunk-G5SFOH7P.js → chunk-I2PNEG3M.js} +38 -23
  102. package/dist/{chunk-Y5PZHS4K.js → chunk-INCECZ2E.js} +5 -5
  103. package/dist/{chunk-RK6MKKKP.js → chunk-ISXNWUG7.js} +1 -1
  104. package/dist/{chunk-73VPWF5R.js → chunk-ITJ7ST5E.js} +4 -4
  105. package/dist/{chunk-5IALSMZ2.js → chunk-J3VAFDEX.js} +14 -14
  106. package/dist/chunk-JGLZUQVN.js +29 -0
  107. package/dist/{chunk-5XN76FTF.js → chunk-JLIEAQP4.js} +5 -5
  108. package/dist/{chunk-MGVYVW7Q.js → chunk-JQG4VO47.js} +1 -1
  109. package/dist/chunk-JXXQHETS.js +130 -0
  110. package/dist/{chunk-APSVL2AI.js → chunk-KNGESBFW.js} +15 -15
  111. package/dist/{chunk-7UKVYFQ2.js → chunk-KUYA2E7M.js} +8 -8
  112. package/dist/{chunk-WLIIQ2A4.js → chunk-KY2ZHTBJ.js} +7 -7
  113. package/dist/{chunk-YPIEYQF4.js → chunk-L4UIKAWD.js} +6 -6
  114. package/dist/chunk-LDUJ6NIT.js +247 -0
  115. package/dist/{chunk-5YIBJXGB.js → chunk-LTLR4JZJ.js} +10 -10
  116. package/dist/{chunk-IZNSAEBX.js → chunk-MFRPLAOH.js} +2 -2
  117. package/dist/{chunk-6GWHKMQR.js → chunk-MH7UBG47.js} +4 -4
  118. package/dist/{chunk-4GZXS6S2.js → chunk-MLAACAES.js} +278 -17
  119. package/dist/{chunk-D3PO4DOZ.js → chunk-MMB2OHUY.js} +4 -2
  120. package/dist/{chunk-DDAHCPGA.js → chunk-MNCQ2GL7.js} +12 -12
  121. package/dist/{chunk-UYYN2IUZ.js → chunk-MNUZX67F.js} +6 -6
  122. package/dist/{chunk-YFSSNGLR.js → chunk-MQHYCS6A.js} +32 -29
  123. package/dist/{chunk-MKRBG5EF.js → chunk-MRLCNXXR.js} +1 -1
  124. package/dist/{chunk-BUYJL3GJ.js → chunk-NBQO75XT.js} +1 -1
  125. package/dist/{chunk-GXJVY6WT.js → chunk-NCONDPHH.js} +5 -5
  126. package/dist/{chunk-ZP4FJHR4.js → chunk-NHS55U7T.js} +18 -18
  127. package/dist/{chunk-CRE4BJHM.js → chunk-NL6XQZSV.js} +23 -23
  128. package/dist/{chunk-YVLMBAYE.js → chunk-NSJ6ZR2A.js} +3 -3
  129. package/dist/{chunk-XRO65C7V.js → chunk-NTNJNRHW.js} +8 -6
  130. package/dist/{chunk-FTV6I76U.js → chunk-NTTXTLCQ.js} +25 -25
  131. package/dist/chunk-NWL7XEQ4.js +37 -0
  132. package/dist/{chunk-CNKGYDMG.js → chunk-NWXY3B4R.js} +23 -23
  133. package/dist/{chunk-52R2YXP5.js → chunk-O5W4ECUY.js} +16 -16
  134. package/dist/{chunk-OGRWQ562.js → chunk-O6ILVBYB.js} +2 -2
  135. package/dist/{chunk-BJPMKJTL.js → chunk-OJAJXU65.js} +102 -2
  136. package/dist/{chunk-FZL2HNWP.js → chunk-OMH3I5BH.js} +3 -3
  137. package/dist/{chunk-MF7QH4AX.js → chunk-P6UJ22XR.js} +5 -5
  138. package/dist/{chunk-HE4ZQXZM.js → chunk-P76AW3PA.js} +309 -15
  139. package/dist/{chunk-GZ4TKR3Q.js → chunk-PCCPXWJC.js} +48 -139
  140. package/dist/{chunk-6TJCUYC5.js → chunk-PGFRXGHA.js} +3 -3
  141. package/dist/{chunk-NIXVDQVO.js → chunk-PJRMMWU4.js} +2 -2
  142. package/dist/{chunk-X4W4XXWP.js → chunk-PKJ3K3GM.js} +5 -5
  143. package/dist/{chunk-KM2FBM3T.js → chunk-PVW2N63M.js} +302 -55
  144. package/dist/{chunk-Y7KBQ4BD.js → chunk-Q55UP5EZ.js} +22 -22
  145. package/dist/{chunk-7URGP4DD.js → chunk-QAFMLBPF.js} +12 -12
  146. package/dist/{chunk-KIAI6PWL.js → chunk-QEZSA2O7.js} +17 -17
  147. package/dist/{chunk-PKCMRPPB.js → chunk-QJ3OX7OC.js} +33 -27
  148. package/dist/{chunk-6EDQE7GO.js → chunk-QL4VNY4U.js} +2 -2
  149. package/dist/{chunk-6JLPXDWN.js → chunk-QR65C3DV.js} +5 -5
  150. package/dist/{chunk-ILFKECGI.js → chunk-QXGOEP44.js} +4 -4
  151. package/dist/chunk-QY7RGTUP.js +326 -0
  152. package/dist/{chunk-PGKHJYOB.js → chunk-RA64IK43.js} +1 -1
  153. package/dist/{chunk-XB5RFZHH.js → chunk-RLJDYLID.js} +12 -12
  154. package/dist/{chunk-AWECWW5Y.js → chunk-RMLUZYEA.js} +13 -11
  155. package/dist/chunk-RSVBX6A3.js +54 -0
  156. package/dist/chunk-RZWZO2JQ.js +42 -0
  157. package/dist/chunk-S5LSDXV4.js +40 -0
  158. package/dist/{chunk-TM7LC37P.js → chunk-SAC6FNKR.js} +181 -117
  159. package/dist/{chunk-DPHCFZ7W.js → chunk-SCBU46AJ.js} +3 -3
  160. package/dist/{chunk-EZIUFEN6.js → chunk-SGNHNN3G.js} +12 -12
  161. package/dist/{chunk-XKZHAD6Y.js → chunk-SHAAGH3T.js} +15 -15
  162. package/dist/chunk-SK5OYWIY.js +122 -0
  163. package/dist/{chunk-FR7JPYBD.js → chunk-SNSFQ47W.js} +12 -12
  164. package/dist/{chunk-FV5YFR6I.js → chunk-SSL6JMPA.js} +9 -9
  165. package/dist/{chunk-XEG3FE2R.js → chunk-TA2ZNDYD.js} +1 -1
  166. package/dist/{chunk-JF2NSTFO.js → chunk-TEHH47TG.js} +3 -3
  167. package/dist/{chunk-W5OYJMBT.js → chunk-TEZSZ24W.js} +5 -5
  168. package/dist/{chunk-SS66Q4VE.js → chunk-TH526O6E.js} +12 -12
  169. package/dist/{chunk-R6B6XAKK.js → chunk-TIAPEYWI.js} +4 -4
  170. package/dist/chunk-TLCRIAU3.js +44 -0
  171. package/dist/{chunk-FMKKVWZD.js → chunk-TQYBXDVH.js} +2 -2
  172. package/dist/chunk-TV4CGNEY.js +43 -0
  173. package/dist/{chunk-QICFHVRW.js → chunk-TVSNWIAM.js} +8 -6
  174. package/dist/{chunk-CHC5FKTU.js → chunk-TWHZU36X.js} +1 -1
  175. package/dist/{chunk-BMCKL3VQ.js → chunk-TXV2AYZB.js} +24 -24
  176. package/dist/{chunk-577AJVRS.js → chunk-U25OX22K.js} +2039 -289
  177. package/dist/{chunk-7EKESFWV.js → chunk-U4NNG3ES.js} +11 -11
  178. package/dist/{chunk-XQ3YIV5R.js → chunk-U5T4A2QV.js} +6 -6
  179. package/dist/{chunk-2XM6PYQQ.js → chunk-UT5OA7KA.js} +43 -11
  180. package/dist/{chunk-BXIX7S7O.js → chunk-V3VCUSQ6.js} +15 -15
  181. package/dist/{chunk-4QUQEBFT.js → chunk-V5XV3JSP.js} +6 -6
  182. package/dist/{chunk-F7YL2RZ4.js → chunk-VF4VOPMB.js} +23 -23
  183. package/dist/{chunk-3QAKDIEU.js → chunk-VLDM4QZM.js} +23 -23
  184. package/dist/chunk-VP5H6DII.js +34 -0
  185. package/dist/{chunk-N3NBWIYQ.js → chunk-VRYQJZFL.js} +10 -9
  186. package/dist/{chunk-FQSRHTTC.js → chunk-VS6FS472.js} +15 -15
  187. package/dist/{chunk-YMOJD5BO.js → chunk-VTMIRRIZ.js} +3 -3
  188. package/dist/{chunk-4PJADZRR.js → chunk-VXSJKWB7.js} +16 -16
  189. package/dist/{chunk-MTAUZW2Z.js → chunk-WE5VMPUP.js} +216 -106
  190. package/dist/{chunk-ZE3P35DA.js → chunk-WEG7DY5K.js} +9 -9
  191. package/dist/{chunk-V2TH46ZY.js → chunk-WIF7A6JU.js} +12 -12
  192. package/dist/{chunk-GFXLPJWY.js → chunk-WM4N2L4T.js} +2 -2
  193. package/dist/{chunk-XIWYUQZQ.js → chunk-X64BFQ3R.js} +9 -9
  194. package/dist/{chunk-QWVBEK4P.js → chunk-XJRC3ZDI.js} +13 -13
  195. package/dist/{chunk-F2FOQLJ7.js → chunk-XVIVWG7B.js} +6 -6
  196. package/dist/{chunk-XTVDAHH2.js → chunk-Y3ZKT6IF.js} +5 -5
  197. package/dist/{chunk-62YMDXY6.js → chunk-YURIUFKF.js} +16 -16
  198. package/dist/{chunk-HKTUIMH4.js → chunk-YY2WGL6S.js} +3 -3
  199. package/dist/{chunk-BDEKREZH.js → chunk-Z2BA4NNR.js} +3 -3
  200. package/dist/{chunk-MTEBM4Y4.js → chunk-Z47YGBUY.js} +19 -12
  201. package/dist/chunk-Z4JSRKNR.js +41 -0
  202. package/dist/{chunk-G2E5MNYP.js → chunk-Z53ZB34U.js} +7 -7
  203. package/dist/{chunk-NNUASOAA.js → chunk-ZBOPIYOY.js} +12 -12
  204. package/dist/{chunk-7GB4ZRE2.js → chunk-ZBQCLKTH.js} +12 -12
  205. package/dist/chunk-ZGI7DNJ6.js +38 -0
  206. package/dist/{chunk-P3TKKBAH.js → chunk-ZPT4QX3J.js} +4 -4
  207. package/dist/chunk-ZS47PQ3O.js +41 -0
  208. package/dist/{chunk-PIVKU64W.js → chunk-ZTIMXVV5.js} +2 -2
  209. package/dist/{chunk-T4RTWMJD.js → chunk-ZYASEL7K.js} +5 -5
  210. package/dist/files.json +469 -417
  211. package/dist/packages/sdk/npm/index.js +2309 -1983
  212. package/dist/packages/ui/dist/assets/{elk-api-Mo5w5xCa.js → elk-api-D2NcYpUJ.js} +2 -2
  213. package/dist/packages/ui/dist/assets/{index-Bp3XhPHX.css → index-C0JEkXyN.css} +1 -1
  214. package/dist/packages/ui/dist/assets/index-CT7skl01.js +29 -0
  215. package/dist/packages/ui/dist/index.html +2 -2
  216. package/package.json +4 -4
  217. package/dist/chunk-26PLPSQW.js +0 -48
  218. package/dist/chunk-2G4DFUWJ.js +0 -43
  219. package/dist/chunk-2M6WXO73.js +0 -38
  220. package/dist/chunk-5F3RJCHB.js +0 -45
  221. package/dist/chunk-B2VSVN4P.js +0 -34
  222. package/dist/chunk-B3O52AUQ.js +0 -275
  223. package/dist/chunk-CITDNDIZ.js +0 -53
  224. package/dist/chunk-DAQBIK5G.js +0 -47
  225. package/dist/chunk-DZRQDNPT.js +0 -34
  226. package/dist/chunk-FLOEZA6K.js +0 -29
  227. package/dist/chunk-FNHSVBRA.js +0 -48
  228. package/dist/chunk-FPGVOSOG.js +0 -41
  229. package/dist/chunk-FZ2E5LGK.js +0 -54
  230. package/dist/chunk-HB6XSGI6.js +0 -131
  231. package/dist/chunk-HUZQDKQK.js +0 -48
  232. package/dist/chunk-L4VJ4ETL.js +0 -41
  233. package/dist/chunk-XPCWQXTY.js +0 -37
  234. package/dist/chunk-YIEOFHOL.js +0 -30
  235. package/dist/packages/ui/dist/assets/index-DM212ZbV.js +0 -29
@@ -0,0 +1,247 @@
1
+ import { createRequire as __atticusCreateRequire } from "node:module";
2
+ import { fileURLToPath as __atticusFileURLToPath } from "node:url";
3
+ var require = __atticusCreateRequire(import.meta.url);
4
+ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
+ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
+ import {
7
+ repoFor
8
+ } from "./chunk-7VNEDDCC.js";
9
+ import {
10
+ draftRepoType,
11
+ matchRepoType
12
+ } from "./chunk-22GLUHGE.js";
13
+ import {
14
+ fsRepo
15
+ } from "./chunk-MRLCNXXR.js";
16
+ import {
17
+ CONVENTIONS_SCHEMA_VERSION,
18
+ ChecklistPack,
19
+ Conventions,
20
+ OrgNote,
21
+ REPO_TYPE_SCHEMA_VERSION,
22
+ REVIEW_SCHEMA_VERSION,
23
+ RULE_WORDS,
24
+ RecordId,
25
+ RepoType,
26
+ TERM_STEP,
27
+ loadOrgPack,
28
+ noteKey,
29
+ noteRuleDrafts,
30
+ notesFor,
31
+ orgPackDirOf,
32
+ require_dist,
33
+ termAnswerNote,
34
+ termOfQuestion
35
+ } from "./chunk-U25OX22K.js";
36
+ import {
37
+ __toESM
38
+ } from "./chunk-TV45EUGM.js";
39
+
40
+ // packages/cli/dist/repo-type-commands.js
41
+ var import_yaml = __toESM(require_dist(), 1);
42
+ import { mkdir, readFile, stat, writeFile } from "node:fs/promises";
43
+ import { join } from "node:path";
44
+ var pct = (n) => `${Math.round(n * 100)}%`;
45
+ var notFound = (target) => `${target} isn't a cloned repo of the manifest or a folder; clone it with atticus workspace sync, or give its folder.`;
46
+ function verdictLine(id, r) {
47
+ const best = r.matches.find((m) => m.type === r.best);
48
+ switch (r.verdict) {
49
+ case "clear":
50
+ return `${id} is a clear match for ${best.name} (${best.type}), ${pct(best.score)}. Reuse it: atticus scan survey ${id} hands its settings and skills to your assistant.`;
51
+ case "partial":
52
+ return `${id} is a partial match for ${best.name} (${best.type}), ${pct(best.score)}. Reuse it, and extend the type with what this repo does differently.`;
53
+ case "tie":
54
+ return `${id} matches ${r.tied.join(" and ")} about as well.${r.fromDescription ? ` Its description says "${r.fromDescription.words}", so ${r.fromDescription.type} is the likelier of them; a person still decides.` : ""} A person decides which it is; then change the types so their fingerprints tell them apart.`;
55
+ case "none":
56
+ return `${id} matches no known repo type.${r.fromDescription ? ` Its description says "${r.fromDescription.words}", so ${r.fromDescription.type} may be it, though nothing in its files says so.` : ""} Draft one: atticus repo-type new <id> --from ${id}`;
57
+ }
58
+ }
59
+ function typeYaml(t) {
60
+ const doc = new import_yaml.Document(t);
61
+ (0, import_yaml.visit)(doc, {
62
+ Seq(_, node) {
63
+ if (node.items.every((i) => (0, import_yaml.isScalar)(i)))
64
+ node.flow = true;
65
+ }
66
+ });
67
+ return doc.toString({ lineWidth: 0, flowCollectionPadding: false });
68
+ }
69
+ async function repoTypeDetect(root, target, o, io) {
70
+ const repo = await repoFor(root, target);
71
+ if (!repo) {
72
+ io.err(notFound(target));
73
+ return 2;
74
+ }
75
+ const op = await loadOrgPack(orgPackDirOf(root));
76
+ const said = op.profiles.flatMap((p) => p.repos?.repos ?? []).find((x) => x.id === repo.id)?.description?.text;
77
+ const r = await matchRepoType(fsRepo(repo.id, repo.dir, "0".repeat(40)), op.repoTypes, {
78
+ ...said ? { description: said } : {}
79
+ });
80
+ if (o.json) {
81
+ io.out(JSON.stringify({ repo: repo.id, ...r }, null, 2));
82
+ return 0;
83
+ }
84
+ if (op.repoTypes.length === 0) {
85
+ io.out(`The org pack has no repo types yet (org-pack/repo-types/<id>/type.yaml). Draft one: atticus repo-type new <id> --from ${repo.id}`);
86
+ return 0;
87
+ }
88
+ io.out(verdictLine(repo.id, r));
89
+ for (const m of r.matches) {
90
+ io.out(` ${m.type} ${pct(m.score)} (${m.got} of ${m.total})${m.ruledOut ? ", ruled out: a required signal is missing" : ""}`);
91
+ for (const s of m.signals)
92
+ io.out(` ${s.found ? "found " : "missing"} ${s.label} (${s.weight}${s.required ? ", required" : ""})${s.found ? `: ${s.evidence.join(", ")}` : ""}`);
93
+ }
94
+ return 0;
95
+ }
96
+ async function repoTypeNew(root, id, o, io) {
97
+ if (!RecordId.safeParse(id).success || !o.from) {
98
+ io.err("Usage: atticus repo-type new <id> --from <repo> [--force]. The id is a lowercase slug, like forge-spring-service.");
99
+ return 2;
100
+ }
101
+ const repo = await repoFor(root, o.from);
102
+ if (!repo) {
103
+ io.err(notFound(o.from));
104
+ return 2;
105
+ }
106
+ const dir = join(orgPackDirOf(root), "repo-types", id);
107
+ const file = join(dir, "type.yaml");
108
+ if (!o.force && await stat(file).catch(() => void 0)) {
109
+ io.err(`The repo type ${id} already exists (org-pack/repo-types/${id}/type.yaml). Re-run with --force to draft it again.`);
110
+ return 1;
111
+ }
112
+ const t = await draftRepoType(fsRepo(repo.id, repo.dir, "0".repeat(40)), id);
113
+ if (!t) {
114
+ io.out(`${repo.id} has no build file, dependency, framework marker or known folder to fingerprint; nothing was written. Write the type by hand.`);
115
+ return 1;
116
+ }
117
+ await mkdir(dir, { recursive: true });
118
+ const date = (o.now ?? /* @__PURE__ */ new Date()).toISOString().slice(0, 10);
119
+ await writeFile(file, `# Drafted from ${repo.id} by atticus repo-type new on ${date} (ADR 0077). Edit it: name what kind
120
+ # of repo this is, keep the signals every repo of the kind has, set the weights, add skills.
121
+ ${typeYaml(t)}`, "utf8");
122
+ const kinds = /* @__PURE__ */ new Map();
123
+ for (const s of t.fingerprint)
124
+ kinds.set(s.kind, (kinds.get(s.kind) ?? 0) + 1);
125
+ io.out(`Wrote org-pack/repo-types/${id}/type.yaml from ${repo.id}: ${[...kinds].map(([k, n]) => `${n} ${k}`).join(", ")} ${t.fingerprint.length === 1 ? "signal" : "signals"}, ${t.settings.prefixes.length} prefix ${t.settings.prefixes.length === 1 ? "rule" : "rules"}.`);
126
+ io.out(`Next: edit it, check it with atticus repo-type detect ${repo.id} and atticus orgpack validate, then review it in a pull request.`);
127
+ return 0;
128
+ }
129
+ var noteFileOf = (root, type) => type ? join(orgPackDirOf(root), "repo-types", type, "type.yaml") : join(orgPackDirOf(root), "conventions.yaml");
130
+ var noteRel = (type) => type ? `org-pack/repo-types/${type}/type.yaml` : "org-pack/conventions.yaml";
131
+ async function repoTypeNote(root, type, o, io) {
132
+ if (!type && !o.org || type && o.org) {
133
+ io.err('Usage: atticus repo-type note <type> [--add "..."], or atticus repo-type note --org-wide [--add "..."] for the notes every repo is read with.');
134
+ return 2;
135
+ }
136
+ const file = noteFileOf(root, type);
137
+ const exists = await stat(file).catch(() => void 0);
138
+ if (type && !exists) {
139
+ io.err(`No repo type ${type} (${noteRel(type)}). Draft one: atticus repo-type new ${type} --from <repo>`);
140
+ return 2;
141
+ }
142
+ const doc = exists ? (0, import_yaml.parseDocument)(await readFile(file, "utf8")) : new import_yaml.Document({ schemaVersion: CONVENTIONS_SCHEMA_VERSION });
143
+ const notes = doc.toJS()?.notes ?? [];
144
+ if (o.add === void 0) {
145
+ if (!notes.length)
146
+ io.out(`${noteRel(type)} has no notes yet. Add one: atticus repo-type note ${type ?? "--org-wide"} --add "..."`);
147
+ notes.forEach((n, i) => io.out(`${i + 1}. ${String(n)} (note ${noteKey(String(n))})`));
148
+ return 0;
149
+ }
150
+ const note = OrgNote.safeParse(o.add.replace(/\s*[\r\n]+\s*/g, " "));
151
+ if (!note.success) {
152
+ io.err("A note is plain text, from 1 to 1000 characters, on one line.");
153
+ return 2;
154
+ }
155
+ if (notes.some((n) => String(n).trim() === note.data)) {
156
+ io.out(`${noteRel(type)} already has that note.`);
157
+ return 0;
158
+ }
159
+ doc.set("schemaVersion", type ? REPO_TYPE_SCHEMA_VERSION : CONVENTIONS_SCHEMA_VERSION);
160
+ doc.set("notes", [...notes.map(String), note.data]);
161
+ const check = (type ? RepoType : Conventions).safeParse(doc.toJS());
162
+ if (!check.success) {
163
+ io.err(`${noteRel(type)} doesn't read as it should with the note added: ${check.error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; ")}`);
164
+ return 1;
165
+ }
166
+ await mkdir(join(file, ".."), { recursive: true });
167
+ await writeFile(file, doc.toString({ lineWidth: 0 }), "utf8");
168
+ io.out(`Added note ${notes.length + 1} (note ${noteKey(note.data)}) to ${noteRel(type)}. The next read of ${type ? `each ${type} repo` : "every repo"} is handed it; review it in a pull request.`);
169
+ if (RULE_WORDS.test(note.data))
170
+ io.out(`It reads as a rule: atticus repo-type rules drafts a checklist rule from it for a person to review.`);
171
+ return 0;
172
+ }
173
+ function termNoteOffer(q) {
174
+ if (q.askedBy.step !== TERM_STEP || !q.answer)
175
+ return void 0;
176
+ const about = termOfQuestion(q.question);
177
+ if (!about)
178
+ return void 0;
179
+ const label = q.answer.option ? q.options[q.answer.option - 1]?.label : void 0;
180
+ const text = termAnswerNote({
181
+ ...about,
182
+ ...q.answer.text ? { text: q.answer.text } : {},
183
+ ...label === "owner" || label === "consumer" || label === "none" ? { option: label } : {}
184
+ });
185
+ const type = q.scope.level === "repo-type" ? q.scope.id : void 0;
186
+ return type ? `Save it as a note on ${type}, so every ${type} repo is read with it: atticus repo-type note ${type} --add ${JSON.stringify(text)}` : `Save it as a note every repo is read with: atticus repo-type note --org-wide --add ${JSON.stringify(text)}`;
187
+ }
188
+ var NOTE_RULES_FILE = "checklists/org-notes.yaml";
189
+ async function repoTypeRules(root, o, io) {
190
+ const op = await loadOrgPack(orgPackDirOf(root));
191
+ const notes = [
192
+ ...op.repoTypes.flatMap((t) => notesFor(t, void 0)),
193
+ ...notesFor(void 0, op.conventions)
194
+ ];
195
+ const drafts = noteRuleDrafts(notes);
196
+ const file = join(orgPackDirOf(root), ...NOTE_RULES_FILE.split("/"));
197
+ const onFile = await stat(file).catch(() => void 0) ? ChecklistPack.safeParse((0, import_yaml.parse)(await readFile(file, "utf8"))) : void 0;
198
+ if (onFile && !onFile.success) {
199
+ io.err(`org-pack/${NOTE_RULES_FILE} doesn't read as a checklist; fix it first (atticus orgpack validate).`);
200
+ return 1;
201
+ }
202
+ const kept = onFile?.data.rules ?? [];
203
+ const fresh = drafts.filter((d) => !kept.some((k) => k.id === d.id));
204
+ if (o.json) {
205
+ io.out(JSON.stringify({ file: `org-pack/${NOTE_RULES_FILE}`, drafts, fresh: fresh.map((d) => d.id) }, null, 2));
206
+ } else if (!drafts.length) {
207
+ io.out('No note reads as a rule (all, every or must). Notes are added with atticus repo-type note <type> --add "...".');
208
+ return 0;
209
+ } else
210
+ for (const d of drafts)
211
+ io.out(`${d.id}${kept.some((k) => k.id === d.id) ? ` (in org-pack/${NOTE_RULES_FILE}, ${kept.find((k) => k.id === d.id).status})` : " (new draft)"}: ${d.title}
212
+ check: ${d.check.type === "deterministic" ? `${d.check.check} ${JSON.stringify(d.check.params)}` : "ai"}; from ${d.source}`);
213
+ if (!o.write) {
214
+ if (!o.json && fresh.length)
215
+ io.out(`Write the new drafts with atticus repo-type rules --save, then review them in a pull request.`);
216
+ return 0;
217
+ }
218
+ if (!fresh.length) {
219
+ if (!o.json)
220
+ io.out(`org-pack/${NOTE_RULES_FILE} already has every draft.`);
221
+ return 0;
222
+ }
223
+ const pack = ChecklistPack.parse({
224
+ schemaVersion: REVIEW_SCHEMA_VERSION,
225
+ name: onFile?.data.name ?? "org-notes",
226
+ version: onFile?.data.version ?? "0.1.0",
227
+ description: onFile?.data.description ?? "Rules drafted from the organisation's notes (ADR 0163). A person sets what each checks and makes it active; Atticus never reads the note to check it.",
228
+ rules: [...kept, ...fresh]
229
+ });
230
+ await mkdir(join(file, ".."), { recursive: true });
231
+ await writeFile(file, `# Drafted by atticus repo-type rules from the org pack's notes (ADR 0163). Review each rule:
232
+ # set its check, then change status from draft to active. Accepted call-security rules are
233
+ # checked at each atticus verify <repo> --write.
234
+ ${typeYaml(pack)}`, "utf8");
235
+ if (!o.json)
236
+ io.out(`Wrote ${fresh.length} ${fresh.length === 1 ? "draft" : "drafts"} to org-pack/${NOTE_RULES_FILE}; review them in a pull request.`);
237
+ return 0;
238
+ }
239
+
240
+ export {
241
+ repoTypeDetect,
242
+ repoTypeNew,
243
+ repoTypeNote,
244
+ termNoteOffer,
245
+ NOTE_RULES_FILE,
246
+ repoTypeRules
247
+ };
@@ -12,13 +12,13 @@ import {
12
12
  readPlan,
13
13
  readView,
14
14
  workingDays
15
- } from "./chunk-UYYN2IUZ.js";
15
+ } from "./chunk-MNUZX67F.js";
16
16
  import {
17
17
  traceMatrix
18
- } from "./chunk-7YYEKTYF.js";
18
+ } from "./chunk-DGZXJO5I.js";
19
19
  import {
20
20
  SYNC_FILE
21
- } from "./chunk-KC5DROFC.js";
21
+ } from "./chunk-DWYPYVPJ.js";
22
22
  import {
23
23
  contentLines,
24
24
  docOf,
@@ -38,7 +38,7 @@ import {
38
38
  sectionLines,
39
39
  sectionMatching,
40
40
  tableWith
41
- } from "./chunk-47QE246J.js";
41
+ } from "./chunk-GMDOXWIS.js";
42
42
  import {
43
43
  changeFolder,
44
44
  changeReport,
@@ -47,17 +47,17 @@ import {
47
47
  outsideKindOf,
48
48
  outsideSystemsOf,
49
49
  outsideWords
50
- } from "./chunk-XQ3YIV5R.js";
50
+ } from "./chunk-U5T4A2QV.js";
51
51
  import {
52
52
  fileStepStore,
53
53
  stepOfProvisional
54
- } from "./chunk-NGPU2ARF.js";
54
+ } from "./chunk-DW4BM73R.js";
55
55
  import {
56
56
  readServiceRequestExports
57
- } from "./chunk-R4TBNKKC.js";
57
+ } from "./chunk-HY2VVVFZ.js";
58
58
  import {
59
59
  readChangeRepos
60
- } from "./chunk-PGKHJYOB.js";
60
+ } from "./chunk-RA64IK43.js";
61
61
  import {
62
62
  BREAKING_SPEC,
63
63
  NAMES_SECRET_SPEC,
@@ -67,7 +67,7 @@ import {
67
67
  settle,
68
68
  tokenFormatIn,
69
69
  verdictOf
70
- } from "./chunk-5XDNUJ4P.js";
70
+ } from "./chunk-CQD26SMZ.js";
71
71
  import {
72
72
  ChangeOutcomes,
73
73
  WORKSPACE_SCHEMA_VERSION,
@@ -77,7 +77,7 @@ import {
77
77
  readRunSummary,
78
78
  require_dist,
79
79
  toCanonicalYaml
80
- } from "./chunk-577AJVRS.js";
80
+ } from "./chunk-U25OX22K.js";
81
81
  import {
82
82
  __toESM
83
83
  } from "./chunk-TV45EUGM.js";
@@ -6,14 +6,14 @@ var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  resumedAttempt,
8
8
  stepClassOf
9
- } from "./chunk-5XDNUJ4P.js";
9
+ } from "./chunk-CQD26SMZ.js";
10
10
  import {
11
11
  RUN_SCHEMA_VERSION,
12
12
  STEP_CLASSES,
13
13
  changesDirOf,
14
14
  runsDirOf,
15
15
  runsRelOf
16
- } from "./chunk-577AJVRS.js";
16
+ } from "./chunk-U25OX22K.js";
17
17
 
18
18
  // packages/cli/dist/runs-view.js
19
19
  import { createHash } from "node:crypto";
@@ -5,10 +5,10 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
5
5
  var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
6
6
  import {
7
7
  factsRepos
8
- } from "./chunk-3GTZ2OON.js";
8
+ } from "./chunk-BTOGAUWX.js";
9
9
  import {
10
10
  checkoutOf
11
- } from "./chunk-B3O52AUQ.js";
11
+ } from "./chunk-P76AW3PA.js";
12
12
  import {
13
13
  AUDIT_ANSWERS,
14
14
  AUDIT_DEFAULT_SIZE,
@@ -26,7 +26,7 @@ import {
26
26
  require_dist,
27
27
  serializeAuditFile,
28
28
  sumAuditPrecision
29
- } from "./chunk-577AJVRS.js";
29
+ } from "./chunk-U25OX22K.js";
30
30
  import {
31
31
  __toESM
32
32
  } from "./chunk-TV45EUGM.js";
@@ -102,7 +102,7 @@ async function readFactsOf(root, repo) {
102
102
  return r.ok ? { facts: r.facts } : { bad: true };
103
103
  }
104
104
  async function linksOf(root, repo) {
105
- const { estateFacts, estateJoinOf, auditLinkCandidates } = await import("./chunk-2XM6PYQQ.js");
105
+ const { estateFacts, estateJoinOf, auditLinkCandidates } = await import("./chunk-UT5OA7KA.js");
106
106
  const op = await loadOrgPack(orgPackDirOf(root));
107
107
  const estate = await estateFacts(root, op, "");
108
108
  const join2 = estateJoinOf(op, estate.repos, estate.targets);