@joshuafolkken/kit 1.3099.0 → 1.3125.0

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 (1119) hide show
  1. package/.claude/skills/workflow-commands/split-assessment.md +2 -3
  2. package/.github/actions/setup-pnpm/action.yml +12 -4
  3. package/dist/.inputs-verified.json +1 -1
  4. package/dist/commands/adopt.js +20 -20
  5. package/dist/commands/auto-ok-judge-cli.js +30 -30
  6. package/dist/commands/auto-ok-main.js +64 -63
  7. package/dist/commands/backlog-budget-main.js +5 -5
  8. package/dist/commands/backlog-drive-cli.js +220 -203
  9. package/dist/commands/backlog-next-main.js +157 -101
  10. package/dist/commands/backlog-offer-main.js +168 -120
  11. package/dist/commands/backlog-plan-cli.js +159 -110
  12. package/dist/commands/backlog-triage-cli.js +171 -115
  13. package/dist/commands/backlogrun-cli.js +255 -245
  14. package/dist/commands/behavior-cli.js +16 -15
  15. package/dist/commands/bytes-command.js +41 -41
  16. package/dist/commands/cases-cli.js +3 -3
  17. package/dist/commands/check-commit-message-main.js +3 -3
  18. package/dist/commands/check-related.js +93 -93
  19. package/dist/commands/chunk-23PU6FAC.js +140 -0
  20. package/dist/commands/chunk-23TWJOAI.js +172 -0
  21. package/dist/commands/chunk-24MXEDSJ.js +81 -0
  22. package/dist/commands/chunk-25LVQDOF.js +183 -0
  23. package/dist/commands/chunk-25LYH5QR.js +85 -0
  24. package/dist/commands/chunk-2AH73ZTW.js +84 -0
  25. package/dist/commands/chunk-2BNLPPP4.js +42 -0
  26. package/dist/commands/chunk-2FD3N3OX.js +119 -0
  27. package/dist/commands/chunk-2GJ3WJVT.js +117 -0
  28. package/dist/commands/chunk-2JGOKYJQ.js +426 -0
  29. package/dist/commands/chunk-2MDLCJZ4.js +389 -0
  30. package/dist/commands/chunk-2ROVUERM.js +99 -0
  31. package/dist/commands/chunk-2TI22UNK.js +137 -0
  32. package/dist/commands/chunk-2TUA6V4F.js +191 -0
  33. package/dist/commands/chunk-2UXSF5YF.js +49 -0
  34. package/dist/commands/chunk-2ZDVX64H.js +66 -0
  35. package/dist/commands/chunk-33N7SBIU.js +18 -0
  36. package/dist/commands/chunk-373P5MM2.js +353 -0
  37. package/dist/commands/chunk-37RULO76.js +220 -0
  38. package/dist/commands/chunk-3EYRE3GI.js +173 -0
  39. package/dist/commands/chunk-3IXIYDC3.js +179 -0
  40. package/dist/commands/chunk-3OFJCJN4.js +30 -0
  41. package/dist/commands/chunk-3OSUM6DM.js +53 -0
  42. package/dist/commands/chunk-3PGB2RKZ.js +333 -0
  43. package/dist/commands/chunk-3QNEEG5O.js +117 -0
  44. package/dist/commands/chunk-3TN76RWK.js +156 -0
  45. package/dist/commands/chunk-3W2TJZMD.js +77 -0
  46. package/dist/commands/chunk-3Y32BYLU.js +1244 -0
  47. package/dist/commands/chunk-3ZQOMI5A.js +245 -0
  48. package/dist/commands/chunk-42W6WARP.js +263 -0
  49. package/dist/commands/chunk-44UIURBQ.js +130 -0
  50. package/dist/commands/chunk-45RCSJGE.js +321 -0
  51. package/dist/commands/chunk-4DNAAFF4.js +159 -0
  52. package/dist/commands/chunk-4E5WBWG7.js +70 -0
  53. package/dist/commands/chunk-4MRBLCDB.js +96 -0
  54. package/dist/commands/chunk-4NIHTEGD.js +332 -0
  55. package/dist/commands/chunk-4ODXKJJT.js +566 -0
  56. package/dist/commands/chunk-4P5F7CLB.js +47 -0
  57. package/dist/commands/chunk-52CGT2IN.js +119 -0
  58. package/dist/commands/chunk-54ZLBLLE.js +74 -0
  59. package/dist/commands/chunk-56344LLX.js +114 -0
  60. package/dist/commands/chunk-56GR7L5L.js +36 -0
  61. package/dist/commands/chunk-5ADJDGFT.js +126 -0
  62. package/dist/commands/chunk-5CMXAHCL.js +161 -0
  63. package/dist/commands/chunk-5DMFMP4V.js +121 -0
  64. package/dist/commands/chunk-5I3M4B3H.js +185 -0
  65. package/dist/commands/chunk-5JIMCETI.js +104 -0
  66. package/dist/commands/chunk-5KEESWMC.js +138 -0
  67. package/dist/commands/chunk-5LNRVX2R.js +214 -0
  68. package/dist/commands/chunk-5PLKHUQD.js +492 -0
  69. package/dist/commands/chunk-5QICRFVL.js +167 -0
  70. package/dist/commands/chunk-5RCBXYYD.js +101 -0
  71. package/dist/commands/chunk-5SOU366I.js +252 -0
  72. package/dist/commands/chunk-5VUHAXPI.js +77 -0
  73. package/dist/commands/chunk-5XJUUZ6U.js +773 -0
  74. package/dist/commands/chunk-5ZMVRU3U.js +46 -0
  75. package/dist/commands/chunk-5ZWU2B7T.js +507 -0
  76. package/dist/commands/chunk-5ZXR36N7.js +67 -0
  77. package/dist/commands/chunk-623LFKFM.js +60 -0
  78. package/dist/commands/chunk-64II6P7B.js +81 -0
  79. package/dist/commands/chunk-6DJT64DN.js +342 -0
  80. package/dist/commands/chunk-6HJ5CJSJ.js +121 -0
  81. package/dist/commands/chunk-6LGMEJRN.js +67 -0
  82. package/dist/commands/chunk-6LHMR3CR.js +126 -0
  83. package/dist/commands/chunk-6NXTP5JT.js +114 -0
  84. package/dist/commands/chunk-6OKVY2E3.js +128 -0
  85. package/dist/commands/chunk-6OUQZC6V.js +1153 -0
  86. package/dist/commands/chunk-6PL2AK3C.js +204 -0
  87. package/dist/commands/chunk-6PLIQCBG.js +326 -0
  88. package/dist/commands/chunk-6QVDEMGB.js +118 -0
  89. package/dist/commands/chunk-6T67GZMJ.js +60 -0
  90. package/dist/commands/chunk-6TC2ZMNB.js +64 -0
  91. package/dist/commands/chunk-6TOHJZ4J.js +224 -0
  92. package/dist/commands/chunk-6TOWGIY2.js +127 -0
  93. package/dist/commands/chunk-6TPGDOOD.js +48 -0
  94. package/dist/commands/chunk-6XXEW3NQ.js +159 -0
  95. package/dist/commands/chunk-72HZ2APA.js +229 -0
  96. package/dist/commands/chunk-72LAYP5S.js +46 -0
  97. package/dist/commands/chunk-72Y7PXUJ.js +83 -0
  98. package/dist/commands/chunk-77R6JEET.js +128 -0
  99. package/dist/commands/chunk-7GICNM73.js +137 -0
  100. package/dist/commands/chunk-7OZT74HR.js +78 -0
  101. package/dist/commands/chunk-7QAYL2RH.js +555 -0
  102. package/dist/commands/chunk-7T7GIZYW.js +92 -0
  103. package/dist/commands/chunk-7VXSMXVE.js +79 -0
  104. package/dist/commands/chunk-7WTVADW4.js +33 -0
  105. package/dist/commands/chunk-7YXCOW3X.js +114 -0
  106. package/dist/commands/chunk-7YYI3OX6.js +104 -0
  107. package/dist/commands/chunk-7Z25RNTV.js +516 -0
  108. package/dist/commands/chunk-A73RWSHJ.js +126 -0
  109. package/dist/commands/chunk-AAIZ2H66.js +58 -0
  110. package/dist/commands/chunk-AFGEGGIF.js +17 -0
  111. package/dist/commands/chunk-AJTXSSRD.js +29 -0
  112. package/dist/commands/chunk-AKM3BHVJ.js +48 -0
  113. package/dist/commands/chunk-AL2H63BP.js +48 -0
  114. package/dist/commands/chunk-AMQNHTDN.js +60 -0
  115. package/dist/commands/chunk-AQGVQMWF.js +168 -0
  116. package/dist/commands/chunk-B4OZF4XL.js +89 -0
  117. package/dist/commands/chunk-B4W77FVS.js +704 -0
  118. package/dist/commands/chunk-B4YBGU2C.js +580 -0
  119. package/dist/commands/chunk-B636LL4X.js +239 -0
  120. package/dist/commands/chunk-B762PNT6.js +66 -0
  121. package/dist/commands/chunk-B7UY7EOD.js +72 -0
  122. package/dist/commands/chunk-BAJABWKW.js +43 -0
  123. package/dist/commands/chunk-BAQRD3TC.js +105 -0
  124. package/dist/commands/chunk-BBPESBU3.js +85 -0
  125. package/dist/commands/chunk-BGKUZJT7.js +25 -0
  126. package/dist/commands/chunk-BIVM6OTE.js +19 -0
  127. package/dist/commands/chunk-BJQDQAQU.js +167 -0
  128. package/dist/commands/chunk-BU3WIUDD.js +230 -0
  129. package/dist/commands/chunk-C2WXQPF3.js +34 -0
  130. package/dist/commands/chunk-C3V6H6TW.js +183 -0
  131. package/dist/commands/chunk-C3Y42PHX.js +229 -0
  132. package/dist/commands/chunk-C7CDGSMW.js +112 -0
  133. package/dist/commands/chunk-C7JEMYPV.js +102 -0
  134. package/dist/commands/chunk-CCAVK7HN.js +4221 -0
  135. package/dist/commands/chunk-CFLCZ2WO.js +63 -0
  136. package/dist/commands/chunk-CGA2K3XV.js +137 -0
  137. package/dist/commands/chunk-CHQQ3VTL.js +184 -0
  138. package/dist/commands/chunk-CKD2G35M.js +86 -0
  139. package/dist/commands/chunk-CMTTDS7F.js +77 -0
  140. package/dist/commands/chunk-CRCQOA4Z.js +77 -0
  141. package/dist/commands/chunk-CT773QBI.js +161 -0
  142. package/dist/commands/chunk-CVZXDKCV.js +525 -0
  143. package/dist/commands/chunk-CXFN5W7O.js +116 -0
  144. package/dist/commands/chunk-CXVNQ7DS.js +88 -0
  145. package/dist/commands/chunk-CYYJLRIW.js +85 -0
  146. package/dist/commands/chunk-D6UXGFJ7.js +44 -0
  147. package/dist/commands/chunk-DIXUXHZ2.js +207 -0
  148. package/dist/commands/chunk-DM6I4PYD.js +110 -0
  149. package/dist/commands/chunk-DOM6HJL3.js +769 -0
  150. package/dist/commands/chunk-DVIOBFU7.js +210 -0
  151. package/dist/commands/chunk-E5CGA7FC.js +114 -0
  152. package/dist/commands/chunk-EG44IWNI.js +88 -0
  153. package/dist/commands/chunk-EHVFQQO6.js +45 -0
  154. package/dist/commands/chunk-EJG5ZJKD.js +1629 -0
  155. package/dist/commands/chunk-EKKUHXFD.js +241 -0
  156. package/dist/commands/chunk-ELCYNBZO.js +430 -0
  157. package/dist/commands/chunk-ELZQL6M3.js +100 -0
  158. package/dist/commands/chunk-EOPRRSCY.js +1891 -0
  159. package/dist/commands/chunk-EQTDNFPF.js +123 -0
  160. package/dist/commands/chunk-ERAABGU7.js +93 -0
  161. package/dist/commands/chunk-ESMIFITZ.js +715 -0
  162. package/dist/commands/chunk-EWBEYTVS.js +50 -0
  163. package/dist/commands/chunk-EYR2X5MZ.js +53 -0
  164. package/dist/commands/chunk-F546BPG3.js +74 -0
  165. package/dist/commands/chunk-F7SAHNGR.js +34 -0
  166. package/dist/commands/chunk-FBWNL3UA.js +209 -0
  167. package/dist/commands/chunk-FBZD6LOK.js +225 -0
  168. package/dist/commands/chunk-FDSSBZC7.js +75 -0
  169. package/dist/commands/chunk-FFLZPLWC.js +59 -0
  170. package/dist/commands/chunk-FHLV5BII.js +170 -0
  171. package/dist/commands/chunk-FITTCICF.js +247 -0
  172. package/dist/commands/chunk-FJ622XHY.js +179 -0
  173. package/dist/commands/chunk-FQPL6T66.js +80 -0
  174. package/dist/commands/chunk-FSM3WPTR.js +73 -0
  175. package/dist/commands/chunk-FSZA4DME.js +268 -0
  176. package/dist/commands/chunk-FVPRBMHE.js +38 -0
  177. package/dist/commands/chunk-FZ62KJXP.js +75 -0
  178. package/dist/commands/chunk-FZNYKSQS.js +335 -0
  179. package/dist/commands/chunk-FZYFGHRY.js +72 -0
  180. package/dist/commands/chunk-G4UVY3TO.js +90 -0
  181. package/dist/commands/chunk-G6H2TOAA.js +18 -0
  182. package/dist/commands/chunk-GC73YEU7.js +119 -0
  183. package/dist/commands/chunk-GHVL6IJA.js +653 -0
  184. package/dist/commands/chunk-GIGXVOKR.js +208 -0
  185. package/dist/commands/chunk-GL2DZXYD.js +103 -0
  186. package/dist/commands/chunk-GL3VOBWB.js +170 -0
  187. package/dist/commands/chunk-GLXOLYZE.js +64 -0
  188. package/dist/commands/chunk-GNRTFRSL.js +41 -0
  189. package/dist/commands/chunk-GX5XHW2F.js +132 -0
  190. package/dist/commands/chunk-GXXWRH6F.js +98 -0
  191. package/dist/commands/chunk-GY6O2WYG.js +120 -0
  192. package/dist/commands/chunk-H4IDKP55.js +37 -0
  193. package/dist/commands/chunk-H5WWD3TX.js +719 -0
  194. package/dist/commands/chunk-H6MHUR2Y.js +114 -0
  195. package/dist/commands/chunk-H6TBBVC2.js +73 -0
  196. package/dist/commands/chunk-HF52YP56.js +178 -0
  197. package/dist/commands/chunk-HKHGX7TW.js +173 -0
  198. package/dist/commands/chunk-HLQVLQEB.js +177 -0
  199. package/dist/commands/chunk-HN3EGYAI.js +169 -0
  200. package/dist/commands/chunk-HNZLKGKJ.js +43 -0
  201. package/dist/commands/chunk-HQ5U6OZR.js +315 -0
  202. package/dist/commands/chunk-HUCOQ4PI.js +161 -0
  203. package/dist/commands/chunk-HXAVYXUS.js +307 -0
  204. package/dist/commands/chunk-HXM26K3O.js +67 -0
  205. package/dist/commands/chunk-HYQ5Q6AE.js +304 -0
  206. package/dist/commands/chunk-HYVAEK6M.js +155 -0
  207. package/dist/commands/chunk-I2HHXZVG.js +46 -0
  208. package/dist/commands/chunk-I2RBOH4F.js +469 -0
  209. package/dist/commands/chunk-I36PDO6I.js +258 -0
  210. package/dist/commands/chunk-IAA73DWD.js +212 -0
  211. package/dist/commands/chunk-IBOCPSPK.js +103 -0
  212. package/dist/commands/chunk-IC5XLIE2.js +68 -0
  213. package/dist/commands/chunk-ICKP5W3Q.js +41 -0
  214. package/dist/commands/chunk-IHQHHNYR.js +1314 -0
  215. package/dist/commands/chunk-ILQU26IF.js +408 -0
  216. package/dist/commands/chunk-INOXSDDC.js +7712 -0
  217. package/dist/commands/chunk-IQMMYORJ.js +554 -0
  218. package/dist/commands/chunk-ISNZX75X.js +168 -0
  219. package/dist/commands/chunk-ISY5TFYT.js +80 -0
  220. package/dist/commands/chunk-IT2O5MOW.js +37 -0
  221. package/dist/commands/chunk-IV6ETHVB.js +155 -0
  222. package/dist/commands/chunk-IZPMBGAI.js +202 -0
  223. package/dist/commands/chunk-J56TYLAL.js +77 -0
  224. package/dist/commands/chunk-JGC4B5JR.js +94 -0
  225. package/dist/commands/chunk-JKPYLZ6T.js +198 -0
  226. package/dist/commands/chunk-JM3EJYA3.js +65 -0
  227. package/dist/commands/chunk-JN7IG7HT.js +426 -0
  228. package/dist/commands/chunk-JSJS3OT7.js +679 -0
  229. package/dist/commands/chunk-JUQN3OXG.js +351 -0
  230. package/dist/commands/chunk-JUXKVN77.js +100 -0
  231. package/dist/commands/chunk-JZZURWZH.js +33 -0
  232. package/dist/commands/chunk-K2FXMBIU.js +95 -0
  233. package/dist/commands/chunk-K2VIKG5M.js +34 -0
  234. package/dist/commands/chunk-K3LHBJDY.js +1223 -0
  235. package/dist/commands/chunk-K3TPIV56.js +480 -0
  236. package/dist/commands/chunk-K6QAQSCJ.js +98 -0
  237. package/dist/commands/chunk-KJ2ZIDQP.js +92 -0
  238. package/dist/commands/chunk-KMED24C4.js +459 -0
  239. package/dist/commands/chunk-KMVJKK43.js +88 -0
  240. package/dist/commands/chunk-KXZR7UAE.js +302 -0
  241. package/dist/commands/chunk-L7GYJHDX.js +223 -0
  242. package/dist/commands/chunk-LAQZJX5C.js +49 -0
  243. package/dist/commands/chunk-LAUKNN57.js +530 -0
  244. package/dist/commands/chunk-LDYDRXOY.js +88 -0
  245. package/dist/commands/chunk-LZNACCHR.js +174 -0
  246. package/dist/commands/chunk-MEJ2CQK2.js +102 -0
  247. package/dist/commands/chunk-MHTKSRAH.js +278 -0
  248. package/dist/commands/chunk-MI4NHZWO.js +65 -0
  249. package/dist/commands/chunk-MIDWHXJZ.js +46 -0
  250. package/dist/commands/chunk-MIZLGSHI.js +419 -0
  251. package/dist/commands/chunk-MKIHWQ65.js +218 -0
  252. package/dist/commands/chunk-MOAPWO34.js +292 -0
  253. package/dist/commands/chunk-MOLXF5KO.js +51 -0
  254. package/dist/commands/chunk-MQNKIKJ6.js +288 -0
  255. package/dist/commands/chunk-MT6TRLFD.js +91 -0
  256. package/dist/commands/chunk-MTPFNRYF.js +213 -0
  257. package/dist/commands/chunk-N2EE7MMH.js +305 -0
  258. package/dist/commands/chunk-N5FT5LYP.js +272 -0
  259. package/dist/commands/chunk-N5YPDLZM.js +114 -0
  260. package/dist/commands/chunk-NASUAXRJ.js +45 -0
  261. package/dist/commands/chunk-NAZ753DE.js +540 -0
  262. package/dist/commands/chunk-NDPR5U4U.js +897 -0
  263. package/dist/commands/chunk-NFRDCRDI.js +285 -0
  264. package/dist/commands/chunk-NHXMWRBI.js +16 -0
  265. package/dist/commands/chunk-NMG65AFQ.js +20 -0
  266. package/dist/commands/chunk-NQ4D2XZY.js +213 -0
  267. package/dist/commands/chunk-NQFQVSHV.js +56 -0
  268. package/dist/commands/chunk-NR4BD5DD.js +38 -0
  269. package/dist/commands/chunk-NV6Y4U37.js +338 -0
  270. package/dist/commands/chunk-NWMY2QJJ.js +133 -0
  271. package/dist/commands/chunk-NXWVWI4U.js +1062 -0
  272. package/dist/commands/chunk-NZ2UKIY5.js +445 -0
  273. package/dist/commands/chunk-OB3WF3DW.js +24 -0
  274. package/dist/commands/chunk-OBMXXG5D.js +181 -0
  275. package/dist/commands/chunk-OHZ6GLEJ.js +74 -0
  276. package/dist/commands/chunk-OJO5AADO.js +322 -0
  277. package/dist/commands/chunk-ORFXTHXU.js +108 -0
  278. package/dist/commands/chunk-OTCWA4QE.js +910 -0
  279. package/dist/commands/chunk-OYGNL5RO.js +290 -0
  280. package/dist/commands/chunk-OYZP5ANC.js +48 -0
  281. package/dist/commands/chunk-P35FFJXA.js +73 -0
  282. package/dist/commands/chunk-P3UODIMZ.js +272 -0
  283. package/dist/commands/chunk-PF2HZHJG.js +94 -0
  284. package/dist/commands/chunk-PIAVFPYB.js +52 -0
  285. package/dist/commands/chunk-PLE3MBGO.js +85 -0
  286. package/dist/commands/chunk-PM3YCN46.js +39 -0
  287. package/dist/commands/chunk-PMC2N6JK.js +91 -0
  288. package/dist/commands/chunk-PTJ6X3QK.js +330 -0
  289. package/dist/commands/chunk-PTRK3NBC.js +211 -0
  290. package/dist/commands/chunk-Q2VV3WT7.js +120 -0
  291. package/dist/commands/chunk-Q67SPFHV.js +44 -0
  292. package/dist/commands/chunk-Q7GMTDMG.js +44 -0
  293. package/dist/commands/chunk-QA44M56F.js +333 -0
  294. package/dist/commands/chunk-QDUWBRQC.js +61 -0
  295. package/dist/commands/chunk-QGTLTPXT.js +58 -0
  296. package/dist/commands/chunk-QHWQJCV5.js +250 -0
  297. package/dist/commands/chunk-QI72D6NY.js +54 -0
  298. package/dist/commands/chunk-QN3FWRDW.js +122 -0
  299. package/dist/commands/chunk-QQ2JKDSV.js +144 -0
  300. package/dist/commands/chunk-QRY55H5U.js +48 -0
  301. package/dist/commands/chunk-QUO5B2JH.js +260 -0
  302. package/dist/commands/chunk-QY7RITZQ.js +99 -0
  303. package/dist/commands/chunk-R4GZWGIN.js +160 -0
  304. package/dist/commands/chunk-RETTGONB.js +84 -0
  305. package/dist/commands/chunk-RH4LJ4D6.js +69 -0
  306. package/dist/commands/chunk-RKCENL5P.js +271 -0
  307. package/dist/commands/chunk-RLWK2CP3.js +82 -0
  308. package/dist/commands/chunk-RMDQQKXD.js +179 -0
  309. package/dist/commands/chunk-RRNC3QEB.js +449 -0
  310. package/dist/commands/chunk-RUCV7UYK.js +341 -0
  311. package/dist/commands/chunk-RVFE7JDZ.js +126 -0
  312. package/dist/commands/chunk-RVKFX3FD.js +70 -0
  313. package/dist/commands/chunk-RW7OILP7.js +71 -0
  314. package/dist/commands/chunk-S23MUFND.js +122 -0
  315. package/dist/commands/chunk-S3DRNZRT.js +74 -0
  316. package/dist/commands/chunk-SB3R6E3R.js +49 -0
  317. package/dist/commands/chunk-SCCUBRDO.js +237 -0
  318. package/dist/commands/chunk-SIPHEZXP.js +72 -0
  319. package/dist/commands/chunk-SK3GDQOI.js +20 -0
  320. package/dist/commands/chunk-SNXSRNFI.js +1052 -0
  321. package/dist/commands/chunk-SWHN7TNT.js +59 -0
  322. package/dist/commands/chunk-T5D3BW3D.js +85 -0
  323. package/dist/commands/chunk-T76CS2AQ.js +307 -0
  324. package/dist/commands/chunk-TBIX42IT.js +144 -0
  325. package/dist/commands/chunk-TGCIRQG5.js +109 -0
  326. package/dist/commands/chunk-TJAGKUS2.js +84 -0
  327. package/dist/commands/chunk-TKRUZZXG.js +103 -0
  328. package/dist/commands/chunk-TLCFZAL4.js +63 -0
  329. package/dist/commands/chunk-TNPFVNKX.js +585 -0
  330. package/dist/commands/chunk-TNU3IEAP.js +151 -0
  331. package/dist/commands/chunk-TQ6M5ICK.js +49 -0
  332. package/dist/commands/chunk-TR6NTNWR.js +128 -0
  333. package/dist/commands/chunk-TSS2RKBC.js +271 -0
  334. package/dist/commands/chunk-TWI7UTVE.js +799 -0
  335. package/dist/commands/chunk-TXXEXJAV.js +390 -0
  336. package/dist/commands/chunk-U6SMBYTN.js +472 -0
  337. package/dist/commands/chunk-U7JJGYYY.js +30 -0
  338. package/dist/commands/chunk-UACWDTJ5.js +106 -0
  339. package/dist/commands/chunk-UBWYGOEC.js +86 -0
  340. package/dist/commands/chunk-UC5ZOPKX.js +3983 -0
  341. package/dist/commands/chunk-UJFEMO6X.js +153 -0
  342. package/dist/commands/chunk-ULL3OIAG.js +59 -0
  343. package/dist/commands/chunk-UN6BPKQ5.js +922 -0
  344. package/dist/commands/chunk-UW3KES66.js +32 -0
  345. package/dist/commands/chunk-UWLANGIR.js +817 -0
  346. package/dist/commands/chunk-UYHREBT7.js +99 -0
  347. package/dist/commands/chunk-V2KHY4UQ.js +393 -0
  348. package/dist/commands/chunk-V36OV7AP.js +191 -0
  349. package/dist/commands/chunk-V37AWEYE.js +62 -0
  350. package/dist/commands/chunk-V4D4YV4B.js +110 -0
  351. package/dist/commands/chunk-V56NLG7I.js +217 -0
  352. package/dist/commands/chunk-V6WHDQAZ.js +74 -0
  353. package/dist/commands/chunk-V6WWW6HX.js +140 -0
  354. package/dist/commands/chunk-V7QOC5NV.js +51 -0
  355. package/dist/commands/chunk-VA4M733Q.js +127 -0
  356. package/dist/commands/chunk-VBZ47BVH.js +64 -0
  357. package/dist/commands/chunk-VD4ELMDA.js +158 -0
  358. package/dist/commands/chunk-VFW6XZH7.js +469 -0
  359. package/dist/commands/chunk-VHSGVCRM.js +244 -0
  360. package/dist/commands/chunk-VJNE7W7O.js +1153 -0
  361. package/dist/commands/chunk-VLDPUHGE.js +134 -0
  362. package/dist/commands/chunk-VMMNYTET.js +61 -0
  363. package/dist/commands/chunk-VO2GSW5P.js +99 -0
  364. package/dist/commands/chunk-VP3P7FLJ.js +168 -0
  365. package/dist/commands/chunk-VRS252GW.js +88 -0
  366. package/dist/commands/chunk-VWNVKWLV.js +298 -0
  367. package/dist/commands/chunk-VXWGPQJX.js +140 -0
  368. package/dist/commands/chunk-W4R6ZBLO.js +197 -0
  369. package/dist/commands/chunk-WE2UMZXX.js +47 -0
  370. package/dist/commands/chunk-WEEJU3EH.js +109 -0
  371. package/dist/commands/chunk-WHXGUOYP.js +48 -0
  372. package/dist/commands/chunk-WHYYBPIC.js +113 -0
  373. package/dist/commands/chunk-WKXMY7MW.js +84 -0
  374. package/dist/commands/chunk-WPSCCUTE.js +119 -0
  375. package/dist/commands/chunk-WQ3O7IKL.js +289 -0
  376. package/dist/commands/chunk-WSTNBBR3.js +22 -0
  377. package/dist/commands/chunk-WX3HQXBK.js +124 -0
  378. package/dist/commands/chunk-WYAY6CQI.js +541 -0
  379. package/dist/commands/chunk-XBXY3R4K.js +74 -0
  380. package/dist/commands/chunk-XDWCF4XH.js +347 -0
  381. package/dist/commands/chunk-XHLSJPV7.js +69 -0
  382. package/dist/commands/chunk-XHR7O2DE.js +52 -0
  383. package/dist/commands/chunk-XIV3UDHV.js +119 -0
  384. package/dist/commands/chunk-XMNPU3J5.js +469 -0
  385. package/dist/commands/chunk-XMZJB7JP.js +100 -0
  386. package/dist/commands/chunk-XO7S2BTY.js +365 -0
  387. package/dist/commands/chunk-XQDG56LP.js +47 -0
  388. package/dist/commands/chunk-XSBLCTDI.js +143 -0
  389. package/dist/commands/chunk-XT3W32DO.js +977 -0
  390. package/dist/commands/chunk-XUA7QZET.js +1263 -0
  391. package/dist/commands/chunk-XZQHP4JR.js +145 -0
  392. package/dist/commands/chunk-YDVFQL3G.js +23 -0
  393. package/dist/commands/chunk-YFD46GB2.js +45 -0
  394. package/dist/commands/chunk-YJMOFRL7.js +269 -0
  395. package/dist/commands/chunk-YPCMBQYP.js +88 -0
  396. package/dist/commands/chunk-YR5RS4YT.js +38 -0
  397. package/dist/commands/chunk-YSBLGTDZ.js +339 -0
  398. package/dist/commands/chunk-YSDBY2G7.js +186 -0
  399. package/dist/commands/chunk-YSL43R4Y.js +149 -0
  400. package/dist/commands/chunk-YUAIWKOM.js +132 -0
  401. package/dist/commands/chunk-YVNYX4UA.js +74 -0
  402. package/dist/commands/chunk-Z2GZIWAU.js +33 -0
  403. package/dist/commands/chunk-Z3XNSXQH.js +47 -0
  404. package/dist/commands/chunk-Z4E7V7YJ.js +18 -0
  405. package/dist/commands/chunk-Z7C2O5JC.js +299 -0
  406. package/dist/commands/chunk-Z7R6JWN7.js +1077 -0
  407. package/dist/commands/chunk-ZB25RO3U.js +208 -0
  408. package/dist/commands/chunk-ZBRUCKLP.js +133 -0
  409. package/dist/commands/chunk-ZCWBZOBM.js +61 -0
  410. package/dist/commands/chunk-ZDP6SKBK.js +246 -0
  411. package/dist/commands/chunk-ZEVI2ZGI.js +145 -0
  412. package/dist/commands/chunk-ZF3SZQRJ.js +44 -0
  413. package/dist/commands/chunk-ZHEUK3ZX.js +16 -0
  414. package/dist/commands/chunk-ZJ5C6KVM.js +1072 -0
  415. package/dist/commands/chunk-ZMDHJ6QF.js +42 -0
  416. package/dist/commands/chunk-ZMS3EFW3.js +1250 -0
  417. package/dist/commands/chunk-ZMWL7LZM.js +210 -0
  418. package/dist/commands/chunk-ZNFVJETO.js +263 -0
  419. package/dist/commands/chunk-ZQEKIMBV.js +82 -0
  420. package/dist/commands/chunk-ZW6DLYS4.js +646 -0
  421. package/dist/commands/ci-timing-cli.js +10 -10
  422. package/dist/commands/code-symbol-cli.js +11 -11
  423. package/dist/commands/codex-hook-adapter.js +105 -106
  424. package/dist/commands/command-derive.js +5 -5
  425. package/dist/commands/cost-audit-main.js +139 -99
  426. package/dist/commands/cspell-cached.js +38 -37
  427. package/dist/commands/defect-origin-main.js +32 -32
  428. package/dist/commands/defect-report-main.js +29 -29
  429. package/dist/commands/diff-summary-cli.js +3 -3
  430. package/dist/commands/disposition-cli.js +108 -96
  431. package/dist/commands/doctor.js +13 -13
  432. package/dist/commands/document-read-cli.js +35 -35
  433. package/dist/commands/document-section-main.js +35 -35
  434. package/dist/commands/dogfood-commit-cli.js +11 -11
  435. package/dist/commands/effect-audit-cli.js +41 -35
  436. package/dist/commands/epic-audit-main.js +77 -76
  437. package/dist/commands/epic-bundle-main.js +167 -111
  438. package/dist/commands/epic-check.js +29 -29
  439. package/dist/commands/epic-main.js +170 -117
  440. package/dist/commands/epic-next-main.js +73 -72
  441. package/dist/commands/format-edited-cli.js +43 -43
  442. package/dist/commands/format.js +21 -21
  443. package/dist/commands/fresh-machine-cli.js +9 -9
  444. package/dist/commands/gh-usage-cli.js +13 -13
  445. package/dist/commands/git-followup-workflow.js +130 -130
  446. package/dist/commands/git-gh-checks-failed-main.js +16 -16
  447. package/dist/commands/git-workflow.js +47 -47
  448. package/dist/commands/hook-ledger-cli.js +113 -74
  449. package/dist/commands/init-main.js +28 -28
  450. package/dist/commands/inputs.json +2011 -2001
  451. package/dist/commands/issue-ack-cli.js +17 -17
  452. package/dist/commands/issue-already-done-cli.js +88 -87
  453. package/dist/commands/issue-body-cli.js +78 -64
  454. package/dist/commands/issue-cite-main.js +26 -26
  455. package/dist/commands/issue-comment-main.js +29 -29
  456. package/dist/commands/issue-consolidate-cli.js +43 -43
  457. package/dist/commands/issue-file-main.js +181 -133
  458. package/dist/commands/issue-fold-existing-cli.js +169 -113
  459. package/dist/commands/issue-fold-main.js +44 -43
  460. package/dist/commands/issue-lint-main.js +55 -54
  461. package/dist/commands/issue-measured-cli.js +91 -90
  462. package/dist/commands/issue-plan-cli.js +136 -135
  463. package/dist/commands/issue-premise-unmet-cli.js +91 -90
  464. package/dist/commands/issue-priority-cli.js +28 -28
  465. package/dist/commands/issue-read-main.js +30 -30
  466. package/dist/commands/issue-release-class-cli.js +26 -26
  467. package/dist/commands/issue-release-main.js +28 -28
  468. package/dist/commands/issue-scout-main.js +168 -112
  469. package/dist/commands/issue-spill-main.js +194 -135
  470. package/dist/commands/issue-state-main.js +28 -28
  471. package/dist/commands/issue-tick-cli.js +28 -28
  472. package/dist/commands/josh-completion.js +12 -12
  473. package/dist/commands/lane-adopt-cli.js +38 -37
  474. package/dist/commands/lane-breakdown-cli.js +176 -166
  475. package/dist/commands/lane-cli.js +163 -163
  476. package/dist/commands/lane-launch-main.js +71 -70
  477. package/dist/commands/lane-limit-cli.js +162 -106
  478. package/dist/commands/lane-measure-cli.js +386 -254
  479. package/dist/commands/lane-pause-cli.js +33 -32
  480. package/dist/commands/lane-plan-cli.js +134 -133
  481. package/dist/commands/lane-resolve-cli.js +35 -35
  482. package/dist/commands/lane-restart-cli.js +157 -157
  483. package/dist/commands/lane-why-cli.js +131 -102
  484. package/dist/commands/lane-withdraw-cli.js +66 -65
  485. package/dist/commands/latest-if-required-cli.js +5 -5
  486. package/dist/commands/lines-command.js +3 -3
  487. package/dist/commands/lint-parallel-main.js +47 -46
  488. package/dist/commands/lint-related.js +86 -86
  489. package/dist/commands/lint-rule.js +46 -45
  490. package/dist/commands/lockfile-policy.js +18 -18
  491. package/dist/commands/main-merge-main.js +12 -12
  492. package/dist/commands/main-sync-main.js +12 -12
  493. package/dist/commands/managed-config-scope-cli.js +7 -7
  494. package/dist/commands/measure-rerun-cli.js +23 -23
  495. package/dist/commands/metrics-command.js +67 -67
  496. package/dist/commands/observation-record-cli.js +13 -13
  497. package/dist/commands/observations-flush-cli.js +41 -41
  498. package/dist/commands/package-scout-cli.js +52 -52
  499. package/dist/commands/pin-verify-cli.js +9 -9
  500. package/dist/commands/plan-consumers-main.js +6 -6
  501. package/dist/commands/plan-scaffold-cli.js +125 -125
  502. package/dist/commands/pr-classification-main.js +12 -12
  503. package/dist/commands/pre-commit-lint.js +14 -15
  504. package/dist/commands/pre-commit-type-check.js +46 -46
  505. package/dist/commands/pre-push-unit.js +51 -52
  506. package/dist/commands/pretool-guard-cli.js +94 -94
  507. package/dist/commands/prevent-main-commit.js +2 -2
  508. package/dist/commands/project-profile-cli.js +13 -13
  509. package/dist/commands/propagate.js +22 -22
  510. package/dist/commands/prose-stale-cli.js +32 -32
  511. package/dist/commands/read-set-cli.js +39 -39
  512. package/dist/commands/refactor-scan-cli.js +5 -5
  513. package/dist/commands/release-cli.js +95 -43
  514. package/dist/commands/release-scope-main.js +34 -34
  515. package/dist/commands/rename-cli.js +39 -38
  516. package/dist/commands/report-template-cli.js +3 -3
  517. package/dist/commands/reserved-run.js +10 -10
  518. package/dist/commands/retrospective-cli.js +141 -102
  519. package/dist/commands/review-attest-cli.js +19 -19
  520. package/dist/commands/review-brief-main.js +159 -159
  521. package/dist/commands/review-findings-cli.js +12 -12
  522. package/dist/commands/review-pair-cli.js +145 -145
  523. package/dist/commands/review-record-main.js +145 -145
  524. package/dist/commands/review-round2-cli.js +66 -65
  525. package/dist/commands/review-stops-cli.js +35 -34
  526. package/dist/commands/review-submit-cli.js +159 -159
  527. package/dist/commands/rule-list.js +59 -59
  528. package/dist/commands/rule-value-cli.js +129 -93
  529. package/dist/commands/ruleset-check-cli.js +12 -12
  530. package/dist/commands/run-add-cli.js +61 -61
  531. package/dist/commands/run-board-main.js +197 -156
  532. package/dist/commands/run-carry-cli.js +182 -150
  533. package/dist/commands/run-chain-cli.js +153 -153
  534. package/dist/commands/run-cut-cli.js +160 -160
  535. package/dist/commands/run-ending-cli.js +34 -34
  536. package/dist/commands/run-entry-cli.js +210 -201
  537. package/dist/commands/run-event-cli.js +9 -8
  538. package/dist/commands/run-handoff-cli.js +50 -50
  539. package/dist/commands/run-handoff-lanes-cli.js +34 -33
  540. package/dist/commands/run-hold-main.js +87 -86
  541. package/dist/commands/run-liveness-cli.js +31 -30
  542. package/dist/commands/run-merge-main.js +171 -139
  543. package/dist/commands/run-next-cli.js +110 -110
  544. package/dist/commands/run-park-cli.js +109 -109
  545. package/dist/commands/run-pause-cli.js +189 -165
  546. package/dist/commands/run-pickup-cli.js +34 -33
  547. package/dist/commands/run-prep-main.js +106 -106
  548. package/dist/commands/run-prime-cli.js +136 -136
  549. package/dist/commands/run-progress-main.js +174 -127
  550. package/dist/commands/run-report-cli.js +45 -44
  551. package/dist/commands/run-review-cli.js +188 -188
  552. package/dist/commands/run-ship-cli.js +239 -234
  553. package/dist/commands/run-ship-evidence-cli.js +53 -54
  554. package/dist/commands/run-ship-lap-DGUAMCPY.js +28 -0
  555. package/dist/commands/run-ship-wait-main.js +64 -63
  556. package/dist/commands/run-split-cli.js +183 -156
  557. package/dist/commands/run-stale-main.js +55 -54
  558. package/dist/commands/run-status-cli.js +28 -28
  559. package/dist/commands/run-step-cli.js +192 -190
  560. package/dist/commands/run-tail-cli.js +9 -9
  561. package/dist/commands/run-tidy-main.js +53 -52
  562. package/dist/commands/run-wake-main.js +178 -178
  563. package/dist/commands/run-watcher-guard-cli.js +51 -50
  564. package/dist/commands/security-audit-main.js +8 -8
  565. package/dist/commands/security-audit-provision-main.js +5 -5
  566. package/dist/commands/selfcheck-cli.js +47 -47
  567. package/dist/commands/session-language-main.js +51 -51
  568. package/dist/commands/sonar-hotspots-cli.js +5 -5
  569. package/dist/commands/sonar-new-code-cli.js +3 -3
  570. package/dist/commands/split-assess-cli.js +42 -41
  571. package/dist/commands/split-child-recover-cli.js +28 -28
  572. package/dist/commands/start.js +53 -53
  573. package/dist/commands/stash-pop-main.js +3 -3
  574. package/dist/commands/stash-push-main.js +4 -4
  575. package/dist/commands/stop-guard.js +183 -159
  576. package/dist/commands/sync-main.js +18 -18
  577. package/dist/commands/telegram-test-main.js +20 -20
  578. package/dist/commands/test-declared.js +15 -15
  579. package/dist/commands/test-e2e-guard.js +41 -41
  580. package/dist/commands/test-pinned-main.js +43 -43
  581. package/dist/commands/test-reach-cli.js +27 -27
  582. package/dist/commands/test-red-main.js +12 -12
  583. package/dist/commands/test-related-UHUIUC7X.js +112 -0
  584. package/dist/commands/test-related-main.js +75 -76
  585. package/dist/commands/test-unit-guard-main.js +21 -21
  586. package/dist/commands/time-cli.js +34 -34
  587. package/dist/commands/time-density-cli.js +13 -12
  588. package/dist/commands/tree-status-cli.js +4 -4
  589. package/dist/commands/type-check-command.js +14 -14
  590. package/dist/commands/ui-routes-cli.js +4 -4
  591. package/dist/commands/uninstall.js +30 -30
  592. package/dist/commands/unused-members-LOSERD3C.js +329 -0
  593. package/dist/commands/unused-members-cli.js +15 -15
  594. package/dist/commands/upstream-interrupt-main.js +183 -136
  595. package/dist/commands/verification-gate.js +71 -72
  596. package/dist/commands/version-check.js +12 -12
  597. package/dist/hooks/audit-provision.js +4 -4
  598. package/dist/hooks/chunk-2R62D5UU.js +12 -0
  599. package/dist/hooks/chunk-3J5M7SXZ.js +1059 -0
  600. package/dist/hooks/chunk-4UAA2YFC.js +258 -0
  601. package/dist/hooks/chunk-74D3EJGW.js +5204 -0
  602. package/dist/hooks/chunk-74FYAI2L.js +43 -0
  603. package/dist/hooks/chunk-ALY5AW75.js +1953 -0
  604. package/dist/hooks/chunk-FBDC6KVJ.js +77 -0
  605. package/dist/hooks/chunk-HKUR6WKR.js +6874 -0
  606. package/dist/hooks/chunk-NFTDYUN3.js +1915 -0
  607. package/dist/hooks/chunk-NP6BVTR3.js +9176 -0
  608. package/dist/hooks/chunk-OOEG63LD.js +321 -0
  609. package/dist/hooks/chunk-RWVA2SFN.js +28584 -0
  610. package/dist/hooks/chunk-U55QDXSC.js +32 -0
  611. package/dist/hooks/chunk-VWZOPSZX.js +5092 -0
  612. package/dist/hooks/chunk-Z6W64J64.js +11254 -0
  613. package/dist/hooks/codex-hook-adapter.js +12 -12
  614. package/dist/hooks/daemon.js +112 -40
  615. package/dist/hooks/format-edited.js +7 -7
  616. package/dist/hooks/inputs.json +612 -556
  617. package/dist/hooks/pretool-guard.js +10 -10
  618. package/dist/hooks/run-ship-lap-XDLXQIS3.js +8 -0
  619. package/dist/hooks/session-lang.js +7 -7
  620. package/dist/hooks/stop-guard.js +8396 -4497
  621. package/dist/inputs.json +76 -76
  622. package/dist/josh.js +31 -15
  623. package/dist/registry-migrate.mjs +32 -8
  624. package/dist/version/index.js +48 -19
  625. package/package.json +1 -1
  626. package/prompts/collaboration-workflow/issue-template.en.md +5 -0
  627. package/prompts/collaboration-workflow/issue-template.md +14 -1
  628. package/scripts/backlog/backlog-drive-cli.ts +2 -1
  629. package/scripts/backlog/backlog-drive-listing.ts +20 -6
  630. package/scripts/backlog/backlog-hold-text.ts +1 -0
  631. package/scripts/backlog/backlog-listing-trace.ts +35 -0
  632. package/scripts/backlog/backlog-offer-timing.ts +10 -2
  633. package/scripts/backlog/backlog-wait-cause.ts +10 -2
  634. package/scripts/document/document-byte-budget.ts +2 -2
  635. package/scripts/git/git-command.ts +7 -3
  636. package/scripts/git/git-pre-push-hook.ts +9 -5
  637. package/scripts/git/git-spawn.ts +20 -4
  638. package/scripts/hooks/implementation-shell-deny-git.ts +17 -3
  639. package/scripts/hooks/pre-push-related-switch.ts +3 -2
  640. package/scripts/hooks/pre-push-unit.ts +3 -1
  641. package/scripts/issue/effect-audit.ts +7 -0
  642. package/scripts/issue/issue-body-cli.ts +18 -2
  643. package/scripts/issue/issue-body-keys.ts +1 -0
  644. package/scripts/issue/issue-file-pass.ts +1 -0
  645. package/scripts/issue/issue-lint-cli.ts +16 -2
  646. package/scripts/issue/issue-lint.ts +16 -0
  647. package/scripts/issue/issue-publication-state.ts +82 -6
  648. package/scripts/issue/issue-spill.ts +18 -4
  649. package/scripts/issue/issue-template-section.ts +7 -1
  650. package/scripts/josh/josh-commands-ai.ts +3 -2
  651. package/scripts/lane/lane-chain-stop-stats.ts +19 -7
  652. package/scripts/lane/lane-concurrency-stats.ts +39 -14
  653. package/scripts/lane/lane-concurrency-wait.ts +64 -0
  654. package/scripts/lane/lane-core-wait-stats.ts +13 -4
  655. package/scripts/lane/lane-implement-read-calls.ts +123 -0
  656. package/scripts/lane/lane-implement-read.ts +8 -3
  657. package/scripts/lane/lane-implement-stats.ts +33 -6
  658. package/scripts/lane/lane-ledger-schema-ship.ts +17 -3
  659. package/scripts/lane/lane-measure-cli.ts +5 -3
  660. package/scripts/lane/lane-plan-size.ts +1 -1
  661. package/scripts/lane/lane-size-record.ts +4 -3
  662. package/scripts/lane/lane-size-stats.ts +21 -9
  663. package/scripts/lane/lane-stats-request.ts +12 -3
  664. package/scripts/lane/lane-stats-tables.ts +30 -9
  665. package/scripts/lane/lane-stop-stats.ts +10 -1
  666. package/scripts/lane/lane-table-rows.ts +26 -0
  667. package/scripts/lib/timeouts.ts +4 -3
  668. package/scripts/registry-migration/migrate-lock.ts +40 -8
  669. package/scripts/registry-migration/migrate.ts +6 -3
  670. package/scripts/release/release-publish.ts +23 -3
  671. package/scripts/release/release-step-time.ts +61 -0
  672. package/scripts/review/disposition-batch-filing.ts +13 -0
  673. package/scripts/rules/git-argv.ts +10 -3
  674. package/scripts/run/board/run-board-closed-pace.ts +76 -0
  675. package/scripts/run/board/run-board-github.ts +17 -28
  676. package/scripts/run/board/run-board-labels.ts +5 -2
  677. package/scripts/run/board/run-board-reason.ts +10 -0
  678. package/scripts/run/entry/run-entry-sync.ts +17 -5
  679. package/scripts/run/hold/run-hold-cli.ts +8 -2
  680. package/scripts/run/merge/run-merge-health.ts +9 -2
  681. package/scripts/run/review/run-review-pinned-accepted.ts +24 -1
  682. package/scripts/run/run-preflight.ts +81 -17
  683. package/scripts/run/ship/run-ship-pre-detach-pinned.ts +14 -9
  684. package/scripts/run/ship/run-ship-pre-detach.ts +16 -7
  685. package/scripts/run/ship/run-ship-stop-cause.ts +13 -2
  686. package/scripts/run/ship/run-ship.ts +7 -1
  687. package/scripts/split/split-assess.ts +7 -22
  688. package/scripts/split/split-cap.ts +31 -0
  689. package/scripts/test/direct-importers.ts +46 -3
  690. package/scripts/test/lockfile-changed-packages.ts +155 -0
  691. package/scripts/test/package-version-only.ts +30 -0
  692. package/scripts/test/pure-files-entries.ts +1 -27
  693. package/scripts/test/test-related-scope.ts +30 -5
  694. package/scripts/test/test-related.ts +3 -3
  695. package/scripts/test/test-unit-guard.ts +9 -9
  696. package/scripts/test/unit-worker-share.ts +21 -0
  697. package/scripts/test/whole-suite-files.ts +23 -2
  698. package/scripts/test/whole-suite-narrowing.ts +108 -0
  699. package/dist/commands/chunk-26JL4UU4.js +0 -365
  700. package/dist/commands/chunk-2BC33QPY.js +0 -183
  701. package/dist/commands/chunk-2BIVHPCA.js +0 -85
  702. package/dist/commands/chunk-2CKJODCK.js +0 -245
  703. package/dist/commands/chunk-2CNVIA35.js +0 -335
  704. package/dist/commands/chunk-2E6PSONB.js +0 -46
  705. package/dist/commands/chunk-2GA4775H.js +0 -77
  706. package/dist/commands/chunk-2O64H5UJ.js +0 -462
  707. package/dist/commands/chunk-2OEXY4GM.js +0 -252
  708. package/dist/commands/chunk-2ONSHOAY.js +0 -46
  709. package/dist/commands/chunk-2SA3W4JF.js +0 -41
  710. package/dist/commands/chunk-2VY7CJ2R.js +0 -212
  711. package/dist/commands/chunk-2WRDAQPJ.js +0 -74
  712. package/dist/commands/chunk-2XLR7R6E.js +0 -541
  713. package/dist/commands/chunk-34JJYCIY.js +0 -117
  714. package/dist/commands/chunk-36XHHYNU.js +0 -158
  715. package/dist/commands/chunk-3CJNQU7P.js +0 -179
  716. package/dist/commands/chunk-3D5T6KMW.js +0 -59
  717. package/dist/commands/chunk-3EW5LTN3.js +0 -114
  718. package/dist/commands/chunk-3F3RNIG2.js +0 -128
  719. package/dist/commands/chunk-3FLTEJZY.js +0 -74
  720. package/dist/commands/chunk-3JWPTRNI.js +0 -60
  721. package/dist/commands/chunk-3LUPGBW4.js +0 -137
  722. package/dist/commands/chunk-3PCUERXE.js +0 -19
  723. package/dist/commands/chunk-3U6A5WON.js +0 -173
  724. package/dist/commands/chunk-3VLDFM5I.js +0 -426
  725. package/dist/commands/chunk-3YT3RCSI.js +0 -140
  726. package/dist/commands/chunk-43DU7DYZ.js +0 -540
  727. package/dist/commands/chunk-43H725LG.js +0 -132
  728. package/dist/commands/chunk-46STCE6Q.js +0 -48
  729. package/dist/commands/chunk-46WEC6HZ.js +0 -82
  730. package/dist/commands/chunk-47J4KOZP.js +0 -46
  731. package/dist/commands/chunk-47W7PF4T.js +0 -22
  732. package/dist/commands/chunk-4F4KARQN.js +0 -229
  733. package/dist/commands/chunk-4HB7NWXP.js +0 -263
  734. package/dist/commands/chunk-4I5AA4P5.js +0 -237
  735. package/dist/commands/chunk-4IDINPBE.js +0 -525
  736. package/dist/commands/chunk-4NSIW3UB.js +0 -104
  737. package/dist/commands/chunk-4YTKV6WV.js +0 -37
  738. package/dist/commands/chunk-5ARNFMQK.js +0 -1263
  739. package/dist/commands/chunk-5AZTSESD.js +0 -114
  740. package/dist/commands/chunk-5FUI2MLY.js +0 -89
  741. package/dist/commands/chunk-5IHEBIPD.js +0 -333
  742. package/dist/commands/chunk-5KAW5GPF.js +0 -44
  743. package/dist/commands/chunk-5KSJEWXR.js +0 -77
  744. package/dist/commands/chunk-5PCK53WP.js +0 -168
  745. package/dist/commands/chunk-5PPWXOCF.js +0 -64
  746. package/dist/commands/chunk-5Y7FOJLX.js +0 -186
  747. package/dist/commands/chunk-5YTEMF4O.js +0 -110
  748. package/dist/commands/chunk-6AHAY5VZ.js +0 -69
  749. package/dist/commands/chunk-6FN37DER.js +0 -330
  750. package/dist/commands/chunk-6JD4VNO4.js +0 -124
  751. package/dist/commands/chunk-6KUA7MRG.js +0 -64
  752. package/dist/commands/chunk-6LDEZFYR.js +0 -88
  753. package/dist/commands/chunk-6NXIZMIK.js +0 -122
  754. package/dist/commands/chunk-6O45F6YI.js +0 -86
  755. package/dist/commands/chunk-6OHJBQDE.js +0 -184
  756. package/dist/commands/chunk-6TIVDEKG.js +0 -34
  757. package/dist/commands/chunk-6WDCCG3M.js +0 -1249
  758. package/dist/commands/chunk-6ZHXEQAI.js +0 -715
  759. package/dist/commands/chunk-736NECRD.js +0 -16
  760. package/dist/commands/chunk-77LEKVEE.js +0 -32
  761. package/dist/commands/chunk-7DGHFBU7.js +0 -247
  762. package/dist/commands/chunk-7EAYFMDN.js +0 -235
  763. package/dist/commands/chunk-7HYYHCTN.js +0 -402
  764. package/dist/commands/chunk-7JOOMFDI.js +0 -155
  765. package/dist/commands/chunk-7K5ITPHR.js +0 -338
  766. package/dist/commands/chunk-7OEBSPPU.js +0 -321
  767. package/dist/commands/chunk-7ULYLGUK.js +0 -492
  768. package/dist/commands/chunk-A3JYZWBS.js +0 -803
  769. package/dist/commands/chunk-A3LCN4KA.js +0 -84
  770. package/dist/commands/chunk-ABLXBG6C.js +0 -98
  771. package/dist/commands/chunk-ABM2MZBF.js +0 -161
  772. package/dist/commands/chunk-AN7BFVHU.js +0 -244
  773. package/dist/commands/chunk-AQCVEQSM.js +0 -99
  774. package/dist/commands/chunk-AU563VKH.js +0 -75
  775. package/dist/commands/chunk-AUTD5FV2.js +0 -1077
  776. package/dist/commands/chunk-AV26CMY6.js +0 -304
  777. package/dist/commands/chunk-B2PJEV3S.js +0 -246
  778. package/dist/commands/chunk-B545ENGY.js +0 -214
  779. package/dist/commands/chunk-B5HP6T4L.js +0 -170
  780. package/dist/commands/chunk-B73IIRMS.js +0 -207
  781. package/dist/commands/chunk-BBLEC4YQ.js +0 -109
  782. package/dist/commands/chunk-BDSG6JKH.js +0 -977
  783. package/dist/commands/chunk-BFKTUD3V.js +0 -33
  784. package/dist/commands/chunk-BLRXHK2V.js +0 -17
  785. package/dist/commands/chunk-BML6MEUB.js +0 -326
  786. package/dist/commands/chunk-BMM4RHCG.js +0 -69
  787. package/dist/commands/chunk-BPDNGJXY.js +0 -63
  788. package/dist/commands/chunk-BQLKWGGC.js +0 -118
  789. package/dist/commands/chunk-BRMJVCP7.js +0 -167
  790. package/dist/commands/chunk-BRWR5YKU.js +0 -268
  791. package/dist/commands/chunk-BUZAYEBD.js +0 -319
  792. package/dist/commands/chunk-C7FGDZWP.js +0 -224
  793. package/dist/commands/chunk-CC4BIGCA.js +0 -20
  794. package/dist/commands/chunk-CCHJZEF5.js +0 -4220
  795. package/dist/commands/chunk-CDK7QZWG.js +0 -44
  796. package/dist/commands/chunk-CDYFUCDC.js +0 -72
  797. package/dist/commands/chunk-CEADAQIL.js +0 -170
  798. package/dist/commands/chunk-CNL3SLM6.js +0 -116
  799. package/dist/commands/chunk-CNQ7D2GZ.js +0 -104
  800. package/dist/commands/chunk-COGKULQH.js +0 -119
  801. package/dist/commands/chunk-CQUZ6TNQ.js +0 -120
  802. package/dist/commands/chunk-CTXJVMHW.js +0 -48
  803. package/dist/commands/chunk-CUWT6UQO.js +0 -13
  804. package/dist/commands/chunk-D6CF5QGM.js +0 -80
  805. package/dist/commands/chunk-DACNQAXC.js +0 -20
  806. package/dist/commands/chunk-DDOS32JU.js +0 -74
  807. package/dist/commands/chunk-DF6QD4AF.js +0 -52
  808. package/dist/commands/chunk-DFEXNB44.js +0 -159
  809. package/dist/commands/chunk-DHDKG5HZ.js +0 -151
  810. package/dist/commands/chunk-DHJRFBKO.js +0 -223
  811. package/dist/commands/chunk-DKO5VTEH.js +0 -65
  812. package/dist/commands/chunk-DLHH3MLS.js +0 -85
  813. package/dist/commands/chunk-DOYNK72G.js +0 -81
  814. package/dist/commands/chunk-DS53UUDH.js +0 -679
  815. package/dist/commands/chunk-DUA4E4ES.js +0 -230
  816. package/dist/commands/chunk-DVCMQMRN.js +0 -191
  817. package/dist/commands/chunk-E3YKMCCJ.js +0 -108
  818. package/dist/commands/chunk-E4F2RTKC.js +0 -272
  819. package/dist/commands/chunk-E4PFCTXN.js +0 -127
  820. package/dist/commands/chunk-EAOTR2WL.js +0 -24
  821. package/dist/commands/chunk-EHPTXSAT.js +0 -315
  822. package/dist/commands/chunk-EHVEWJQ4.js +0 -33
  823. package/dist/commands/chunk-EMFSPPMH.js +0 -98
  824. package/dist/commands/chunk-EPICTV2P.js +0 -46
  825. package/dist/commands/chunk-ES42XPAD.js +0 -123
  826. package/dist/commands/chunk-ESUY7KTZ.js +0 -137
  827. package/dist/commands/chunk-EVVQJJFV.js +0 -507
  828. package/dist/commands/chunk-EWXXEGXL.js +0 -149
  829. package/dist/commands/chunk-F2U46HAE.js +0 -52
  830. package/dist/commands/chunk-F2VYWU6Z.js +0 -653
  831. package/dist/commands/chunk-F4SGOTUF.js +0 -36
  832. package/dist/commands/chunk-F4YMLVWN.js +0 -183
  833. package/dist/commands/chunk-F57LACNC.js +0 -84
  834. package/dist/commands/chunk-F5N2QIFD.js +0 -213
  835. package/dist/commands/chunk-FA7CN75F.js +0 -160
  836. package/dist/commands/chunk-FDASVHZD.js +0 -241
  837. package/dist/commands/chunk-FEYZ575X.js +0 -278
  838. package/dist/commands/chunk-FJM2HWKW.js +0 -299
  839. package/dist/commands/chunk-FJMXUDEY.js +0 -3985
  840. package/dist/commands/chunk-FM7VVAK6.js +0 -426
  841. package/dist/commands/chunk-FQWRM5FC.js +0 -67
  842. package/dist/commands/chunk-FT33ZCSB.js +0 -298
  843. package/dist/commands/chunk-FTAWHAI7.js +0 -170
  844. package/dist/commands/chunk-G2DNS74C.js +0 -53
  845. package/dist/commands/chunk-G3BBCAAH.js +0 -90
  846. package/dist/commands/chunk-G6BXCWPH.js +0 -141
  847. package/dist/commands/chunk-GABDPTDK.js +0 -907
  848. package/dist/commands/chunk-GAVSK6P6.js +0 -230
  849. package/dist/commands/chunk-GB2BRQVL.js +0 -300
  850. package/dist/commands/chunk-GBMZXFFC.js +0 -44
  851. package/dist/commands/chunk-GGWXF7RJ.js +0 -70
  852. package/dist/commands/chunk-GHOTKHI4.js +0 -30
  853. package/dist/commands/chunk-GMVN6ZP2.js +0 -48
  854. package/dist/commands/chunk-GNTTGRCX.js +0 -133
  855. package/dist/commands/chunk-GOY5JECO.js +0 -130
  856. package/dist/commands/chunk-GZL6ISVM.js +0 -72
  857. package/dist/commands/chunk-HALHQILI.js +0 -51
  858. package/dist/commands/chunk-HAT7AFBF.js +0 -85
  859. package/dist/commands/chunk-HDVSZ6CZ.js +0 -292
  860. package/dist/commands/chunk-HE3GOMR7.js +0 -88
  861. package/dist/commands/chunk-HEFUC4ZW.js +0 -65
  862. package/dist/commands/chunk-HHS3LYLV.js +0 -30
  863. package/dist/commands/chunk-HQSWPRUF.js +0 -61
  864. package/dist/commands/chunk-HQZ65PJE.js +0 -167
  865. package/dist/commands/chunk-HRN73FQJ.js +0 -77
  866. package/dist/commands/chunk-HSZECERZ.js +0 -271
  867. package/dist/commands/chunk-HYE3MBAN.js +0 -113
  868. package/dist/commands/chunk-IAB6LCJL.js +0 -18
  869. package/dist/commands/chunk-IAGENI2U.js +0 -42
  870. package/dist/commands/chunk-ICPVBHIX.js +0 -48
  871. package/dist/commands/chunk-ILIITIMQ.js +0 -126
  872. package/dist/commands/chunk-IONGJJYM.js +0 -179
  873. package/dist/commands/chunk-IP23WOWP.js +0 -126
  874. package/dist/commands/chunk-IPS7EBE5.js +0 -140
  875. package/dist/commands/chunk-IXZZSST7.js +0 -459
  876. package/dist/commands/chunk-IY3DSDRW.js +0 -173
  877. package/dist/commands/chunk-J2RUI4KN.js +0 -47
  878. package/dist/commands/chunk-J3PCRUVY.js +0 -1223
  879. package/dist/commands/chunk-J4XHEOOW.js +0 -156
  880. package/dist/commands/chunk-JDHLHYJJ.js +0 -208
  881. package/dist/commands/chunk-JGX7JIW4.js +0 -126
  882. package/dist/commands/chunk-JHIGDFBS.js +0 -59
  883. package/dist/commands/chunk-JI2EGXZX.js +0 -53
  884. package/dist/commands/chunk-JNV3VRK2.js +0 -47
  885. package/dist/commands/chunk-JPMAW2VZ.js +0 -91
  886. package/dist/commands/chunk-JQEY6KDP.js +0 -90
  887. package/dist/commands/chunk-JSJDIEGZ.js +0 -88
  888. package/dist/commands/chunk-JT5ICRFF.js +0 -44
  889. package/dist/commands/chunk-JU2MAYQ3.js +0 -997
  890. package/dist/commands/chunk-JUCJ4Y42.js +0 -77
  891. package/dist/commands/chunk-JZK33TA5.js +0 -99
  892. package/dist/commands/chunk-K3OZBV3L.js +0 -49
  893. package/dist/commands/chunk-K6P5PISC.js +0 -114
  894. package/dist/commands/chunk-KDCHY7XO.js +0 -88
  895. package/dist/commands/chunk-KDGX3JTV.js +0 -51
  896. package/dist/commands/chunk-KGSEWOKI.js +0 -353
  897. package/dist/commands/chunk-KIS7JFNP.js +0 -217
  898. package/dist/commands/chunk-KJPZPTS4.js +0 -245
  899. package/dist/commands/chunk-KKHD3C2P.js +0 -114
  900. package/dist/commands/chunk-KKIIY5I5.js +0 -67
  901. package/dist/commands/chunk-KN46UC77.js +0 -114
  902. package/dist/commands/chunk-KP2BVAS5.js +0 -125
  903. package/dist/commands/chunk-KPAJBJXG.js +0 -63
  904. package/dist/commands/chunk-KPMAJP6D.js +0 -145
  905. package/dist/commands/chunk-KR6WUAJM.js +0 -122
  906. package/dist/commands/chunk-KWLNK2NJ.js +0 -391
  907. package/dist/commands/chunk-KXK2A2HB.js +0 -158
  908. package/dist/commands/chunk-L2CLCNXW.js +0 -144
  909. package/dist/commands/chunk-L7MDU6D7.js +0 -155
  910. package/dist/commands/chunk-L7VD4MLF.js +0 -78
  911. package/dist/commands/chunk-LBVYFW3I.js +0 -38
  912. package/dist/commands/chunk-LIPUSINQ.js +0 -140
  913. package/dist/commands/chunk-LJVZWE3A.js +0 -1885
  914. package/dist/commands/chunk-LKSSQVDA.js +0 -49
  915. package/dist/commands/chunk-LNQOL2CL.js +0 -321
  916. package/dist/commands/chunk-LS7P324N.js +0 -72
  917. package/dist/commands/chunk-LU5EOGFQ.js +0 -50
  918. package/dist/commands/chunk-LX2ENXHZ.js +0 -197
  919. package/dist/commands/chunk-M3UGRNNB.js +0 -103
  920. package/dist/commands/chunk-M3ZDYCUF.js +0 -117
  921. package/dist/commands/chunk-MDGPJOLK.js +0 -351
  922. package/dist/commands/chunk-MDKRTUE4.js +0 -288
  923. package/dist/commands/chunk-MFZVRWRS.js +0 -34
  924. package/dist/commands/chunk-MHF6BDQI.js +0 -128
  925. package/dist/commands/chunk-MLJDW7YN.js +0 -64
  926. package/dist/commands/chunk-MNLHYAJO.js +0 -80
  927. package/dist/commands/chunk-MOD3FG4V.js +0 -419
  928. package/dist/commands/chunk-MRAEJLXL.js +0 -83
  929. package/dist/commands/chunk-MRW2WYJS.js +0 -68
  930. package/dist/commands/chunk-N2XH7QBY.js +0 -103
  931. package/dist/commands/chunk-N2ZF6T4E.js +0 -332
  932. package/dist/commands/chunk-N36NZMAL.js +0 -79
  933. package/dist/commands/chunk-N4EMFHQ6.js +0 -114
  934. package/dist/commands/chunk-N4P64UIH.js +0 -211
  935. package/dist/commands/chunk-NABSSY4P.js +0 -204
  936. package/dist/commands/chunk-NDQIJBRQ.js +0 -100
  937. package/dist/commands/chunk-NDR4PCVG.js +0 -29
  938. package/dist/commands/chunk-NEOCCN6D.js +0 -302
  939. package/dist/commands/chunk-NFKWFOFM.js +0 -45
  940. package/dist/commands/chunk-NFUPJBBG.js +0 -516
  941. package/dist/commands/chunk-NHEBKL7X.js +0 -170
  942. package/dist/commands/chunk-NHTEC5U4.js +0 -99
  943. package/dist/commands/chunk-NOSODWWK.js +0 -1132
  944. package/dist/commands/chunk-NPXXYG6Z.js +0 -580
  945. package/dist/commands/chunk-NR2JDBPV.js +0 -75
  946. package/dist/commands/chunk-NRULNBYI.js +0 -1153
  947. package/dist/commands/chunk-NTGF5N3N.js +0 -110
  948. package/dist/commands/chunk-NTIVNQKF.js +0 -73
  949. package/dist/commands/chunk-NUCFIYZL.js +0 -119
  950. package/dist/commands/chunk-NVMV7BYX.js +0 -88
  951. package/dist/commands/chunk-NYWPTYGL.js +0 -169
  952. package/dist/commands/chunk-O45BX4EL.js +0 -39
  953. package/dist/commands/chunk-O46T4ANI.js +0 -229
  954. package/dist/commands/chunk-O7ESC4HL.js +0 -566
  955. package/dist/commands/chunk-OBYLXHCH.js +0 -86
  956. package/dist/commands/chunk-OHN3QARP.js +0 -769
  957. package/dist/commands/chunk-OKBZGLD5.js +0 -393
  958. package/dist/commands/chunk-OKN63ZH5.js +0 -109
  959. package/dist/commands/chunk-ON4IKRGS.js +0 -469
  960. package/dist/commands/chunk-OT74RSQO.js +0 -82
  961. package/dist/commands/chunk-OVCVINYW.js +0 -143
  962. package/dist/commands/chunk-OZKLVTYI.js +0 -342
  963. package/dist/commands/chunk-OZN4HOZT.js +0 -74
  964. package/dist/commands/chunk-P3LJ2Q4N.js +0 -555
  965. package/dist/commands/chunk-P43GWYR6.js +0 -185
  966. package/dist/commands/chunk-P6ASP2DY.js +0 -132
  967. package/dist/commands/chunk-PBAEJ5PT.js +0 -38
  968. package/dist/commands/chunk-PCZROH3R.js +0 -100
  969. package/dist/commands/chunk-PJYTUUTH.js +0 -34
  970. package/dist/commands/chunk-PKXTISWR.js +0 -58
  971. package/dist/commands/chunk-PSGLUBSB.js +0 -74
  972. package/dist/commands/chunk-PVRDJU2B.js +0 -126
  973. package/dist/commands/chunk-Q42NF2TL.js +0 -47
  974. package/dist/commands/chunk-Q4ULMZAS.js +0 -106
  975. package/dist/commands/chunk-QCRUPRQ2.js +0 -207
  976. package/dist/commands/chunk-QGATHT4S.js +0 -114
  977. package/dist/commands/chunk-QKTTKAXM.js +0 -119
  978. package/dist/commands/chunk-QSBYULSS.js +0 -100
  979. package/dist/commands/chunk-QSJCZATC.js +0 -18
  980. package/dist/commands/chunk-QTJPCXEW.js +0 -23
  981. package/dist/commands/chunk-QTQAI2M2.js +0 -179
  982. package/dist/commands/chunk-QTVVFV4Q.js +0 -127
  983. package/dist/commands/chunk-QVOFWFWC.js +0 -134
  984. package/dist/commands/chunk-QX2EMUXV.js +0 -102
  985. package/dist/commands/chunk-QXBOECGL.js +0 -272
  986. package/dist/commands/chunk-QXCG3SG4.js +0 -88
  987. package/dist/commands/chunk-QZVMGAWV.js +0 -307
  988. package/dist/commands/chunk-R2THGPI3.js +0 -99
  989. package/dist/commands/chunk-R36VZIKU.js +0 -53
  990. package/dist/commands/chunk-R3F7F3TX.js +0 -94
  991. package/dist/commands/chunk-R5AABJZJ.js +0 -1062
  992. package/dist/commands/chunk-R7PYR4HW.js +0 -389
  993. package/dist/commands/chunk-RAQ3E6OT.js +0 -258
  994. package/dist/commands/chunk-RESNXNDG.js +0 -54
  995. package/dist/commands/chunk-RFIOZTXY.js +0 -305
  996. package/dist/commands/chunk-RFWB2KAV.js +0 -102
  997. package/dist/commands/chunk-RFXON3FK.js +0 -25
  998. package/dist/commands/chunk-RGEB5L37.js +0 -66
  999. package/dist/commands/chunk-RGRLLF2J.js +0 -119
  1000. package/dist/commands/chunk-RLRIMYXM.js +0 -178
  1001. package/dist/commands/chunk-RNB3DQOZ.js +0 -70
  1002. package/dist/commands/chunk-RO4QEZJO.js +0 -172
  1003. package/dist/commands/chunk-RS5HBJY6.js +0 -161
  1004. package/dist/commands/chunk-RV7EQIE4.js +0 -202
  1005. package/dist/commands/chunk-RWPCK3CO.js +0 -41
  1006. package/dist/commands/chunk-RWYSVFIA.js +0 -250
  1007. package/dist/commands/chunk-RYKK75YT.js +0 -289
  1008. package/dist/commands/chunk-S4JE63QE.js +0 -704
  1009. package/dist/commands/chunk-S5GX3H4P.js +0 -91
  1010. package/dist/commands/chunk-SC57VV6A.js +0 -60
  1011. package/dist/commands/chunk-SD4EX75H.js +0 -177
  1012. package/dist/commands/chunk-SJITWFNY.js +0 -480
  1013. package/dist/commands/chunk-SKGDMAIA.js +0 -33
  1014. package/dist/commands/chunk-SNSZ25XZ.js +0 -393
  1015. package/dist/commands/chunk-SOETJZWH.js +0 -7672
  1016. package/dist/commands/chunk-SQZZHK6X.js +0 -119
  1017. package/dist/commands/chunk-SRG6PKVS.js +0 -49
  1018. package/dist/commands/chunk-SRTEE34O.js +0 -93
  1019. package/dist/commands/chunk-SVTS7ACS.js +0 -18
  1020. package/dist/commands/chunk-SYTCTLMD.js +0 -285
  1021. package/dist/commands/chunk-T6JUDQMW.js +0 -181
  1022. package/dist/commands/chunk-TEXUEBGE.js +0 -208
  1023. package/dist/commands/chunk-TFDVTU6O.js +0 -910
  1024. package/dist/commands/chunk-TFYYXETQ.js +0 -472
  1025. package/dist/commands/chunk-TMFKVJUW.js +0 -121
  1026. package/dist/commands/chunk-TRHWBUWE.js +0 -61
  1027. package/dist/commands/chunk-TROCFVCU.js +0 -45
  1028. package/dist/commands/chunk-TUBBESHU.js +0 -85
  1029. package/dist/commands/chunk-TVZIFZZN.js +0 -62
  1030. package/dist/commands/chunk-TXRWAL63.js +0 -144
  1031. package/dist/commands/chunk-U46YTYJQ.js +0 -92
  1032. package/dist/commands/chunk-U5EO4QEV.js +0 -48
  1033. package/dist/commands/chunk-U7Y6RKLK.js +0 -168
  1034. package/dist/commands/chunk-UCO333EX.js +0 -47
  1035. package/dist/commands/chunk-UIXQ4IYT.js +0 -445
  1036. package/dist/commands/chunk-UJGNYPMD.js +0 -716
  1037. package/dist/commands/chunk-UREXZJDB.js +0 -210
  1038. package/dist/commands/chunk-URZ4RDC4.js +0 -220
  1039. package/dist/commands/chunk-UUA63LCI.js +0 -77
  1040. package/dist/commands/chunk-UVY5ODCM.js +0 -60
  1041. package/dist/commands/chunk-UWMB6EOU.js +0 -45
  1042. package/dist/commands/chunk-UY62WJV6.js +0 -120
  1043. package/dist/commands/chunk-UZDKCGDC.js +0 -198
  1044. package/dist/commands/chunk-VAHQ4AFM.js +0 -585
  1045. package/dist/commands/chunk-VL5I2IOD.js +0 -332
  1046. package/dist/commands/chunk-VMG3QB6C.js +0 -81
  1047. package/dist/commands/chunk-VO25PMGS.js +0 -58
  1048. package/dist/commands/chunk-VPRQFM2T.js +0 -37
  1049. package/dist/commands/chunk-VTLWODJ2.js +0 -133
  1050. package/dist/commands/chunk-VUCDGQ6Y.js +0 -260
  1051. package/dist/commands/chunk-VY7ZJMDT.js +0 -469
  1052. package/dist/commands/chunk-W4BR6QNU.js +0 -1241
  1053. package/dist/commands/chunk-W7X7MZZN.js +0 -449
  1054. package/dist/commands/chunk-WCYRNNKF.js +0 -76
  1055. package/dist/commands/chunk-WEUUJIWQ.js +0 -84
  1056. package/dist/commands/chunk-WNBJK6QE.js +0 -84
  1057. package/dist/commands/chunk-WORHUJ6T.js +0 -73
  1058. package/dist/commands/chunk-WR5PKCQW.js +0 -61
  1059. package/dist/commands/chunk-WR73HTRG.js +0 -121
  1060. package/dist/commands/chunk-WRNMUQTD.js +0 -95
  1061. package/dist/commands/chunk-WROJTXWZ.js +0 -138
  1062. package/dist/commands/chunk-WTIPX5NG.js +0 -43
  1063. package/dist/commands/chunk-WWLCQREY.js +0 -225
  1064. package/dist/commands/chunk-WXLW7S4M.js +0 -71
  1065. package/dist/commands/chunk-WXXLJQBO.js +0 -67
  1066. package/dist/commands/chunk-X4LYH6Q4.js +0 -56
  1067. package/dist/commands/chunk-XAEL24EG.js +0 -66
  1068. package/dist/commands/chunk-XI2ABCRX.js +0 -209
  1069. package/dist/commands/chunk-XRQMVAB4.js +0 -85
  1070. package/dist/commands/chunk-XUXCFPDK.js +0 -218
  1071. package/dist/commands/chunk-XZQWEVR3.js +0 -84
  1072. package/dist/commands/chunk-Y6OGDG5I.js +0 -49
  1073. package/dist/commands/chunk-YANDBVAT.js +0 -430
  1074. package/dist/commands/chunk-YD7XK2TX.js +0 -550
  1075. package/dist/commands/chunk-YEAE46TS.js +0 -98
  1076. package/dist/commands/chunk-YEQFAEVW.js +0 -112
  1077. package/dist/commands/chunk-YJZAD4Z5.js +0 -103
  1078. package/dist/commands/chunk-YNCF66RK.js +0 -1052
  1079. package/dist/commands/chunk-YOA25SII.js +0 -210
  1080. package/dist/commands/chunk-YOZTZMAT.js +0 -38
  1081. package/dist/commands/chunk-YSGRHVZG.js +0 -897
  1082. package/dist/commands/chunk-YSLGWRQN.js +0 -646
  1083. package/dist/commands/chunk-YT5JR2CB.js +0 -105
  1084. package/dist/commands/chunk-YTXCLGGL.js +0 -168
  1085. package/dist/commands/chunk-YVHJN2HS.js +0 -74
  1086. package/dist/commands/chunk-YY7XVVSB.js +0 -43
  1087. package/dist/commands/chunk-Z2NUK47W.js +0 -1314
  1088. package/dist/commands/chunk-Z5GZV4DV.js +0 -16
  1089. package/dist/commands/chunk-ZB52ZIEA.js +0 -1629
  1090. package/dist/commands/chunk-ZCD4AV2P.js +0 -73
  1091. package/dist/commands/chunk-ZCHZU6NX.js +0 -799
  1092. package/dist/commands/chunk-ZEH2B3DF.js +0 -239
  1093. package/dist/commands/chunk-ZGANVZCA.js +0 -92
  1094. package/dist/commands/chunk-ZGEUWHFF.js +0 -297
  1095. package/dist/commands/chunk-ZHSNQ2F7.js +0 -161
  1096. package/dist/commands/chunk-ZI3SABMH.js +0 -347
  1097. package/dist/commands/chunk-ZIIUBGON.js +0 -773
  1098. package/dist/commands/chunk-ZJJLROJY.js +0 -269
  1099. package/dist/commands/chunk-ZNIIA275.js +0 -59
  1100. package/dist/commands/chunk-ZV6BZZJ2.js +0 -271
  1101. package/dist/commands/run-ship-lap-W66LTXJJ.js +0 -28
  1102. package/dist/commands/test-related-XBDH2IOH.js +0 -113
  1103. package/dist/commands/unused-members-KVKZDTXD.js +0 -329
  1104. package/dist/hooks/chunk-3SA3FIQC.js +0 -6869
  1105. package/dist/hooks/chunk-46PTTMGE.js +0 -1625
  1106. package/dist/hooks/chunk-5NIBRHWG.js +0 -77
  1107. package/dist/hooks/chunk-76QKN2K3.js +0 -258
  1108. package/dist/hooks/chunk-CHEKMGFP.js +0 -321
  1109. package/dist/hooks/chunk-CY3ADSDR.js +0 -28580
  1110. package/dist/hooks/chunk-DCILEVDR.js +0 -5173
  1111. package/dist/hooks/chunk-HVNGIM5W.js +0 -5092
  1112. package/dist/hooks/chunk-L6IZZ2IL.js +0 -11219
  1113. package/dist/hooks/chunk-SAAPRHTK.js +0 -43
  1114. package/dist/hooks/chunk-U3ON2GBN.js +0 -12
  1115. package/dist/hooks/chunk-UZXMFOVK.js +0 -9170
  1116. package/dist/hooks/chunk-WCJ2GWYJ.js +0 -1381
  1117. package/dist/hooks/chunk-YEURBB4L.js +0 -32
  1118. package/dist/hooks/chunk-YRKS5ZKE.js +0 -1915
  1119. package/dist/hooks/run-ship-lap-P5555IG7.js +0 -8
@@ -1,1241 +0,0 @@
1
- import {
2
- run_watcher_guard
3
- } from "./chunk-5KAW5GPF.js";
4
- import {
5
- run_event_plan
6
- } from "./chunk-NDR4PCVG.js";
7
- import {
8
- josh_read_only
9
- } from "./chunk-F4SGOTUF.js";
10
- import {
11
- run_progress_read
12
- } from "./chunk-ES42XPAD.js";
13
- import {
14
- gh_usage_log
15
- } from "./chunk-O45BX4EL.js";
16
- import {
17
- issue_watch_gate
18
- } from "./chunk-6KUA7MRG.js";
19
- import {
20
- issue_watch
21
- } from "./chunk-3CJNQU7P.js";
22
- import {
23
- hook_demoted
24
- } from "./chunk-3JWPTRNI.js";
25
- import {
26
- rule_rewrite
27
- } from "./chunk-WCYRNNKF.js";
28
- import {
29
- hook_ledger
30
- } from "./chunk-4NSIW3UB.js";
31
- import {
32
- lane_plan
33
- } from "./chunk-MDGPJOLK.js";
34
- import {
35
- batch_outcome,
36
- delivered_rules,
37
- investigation_outcome,
38
- nested_commands
39
- } from "./chunk-FJMXUDEY.js";
40
- import {
41
- implementation_cut_verdict
42
- } from "./chunk-ZEH2B3DF.js";
43
- import {
44
- lane_background
45
- } from "./chunk-ZIIUBGON.js";
46
- import {
47
- cost_cli,
48
- cost_verdict
49
- } from "./chunk-JEYITIWB.js";
50
- import {
51
- bash_revert,
52
- step_zero_notice
53
- } from "./chunk-BRWR5YKU.js";
54
- import {
55
- run_headless
56
- } from "./chunk-Q4ULMZAS.js";
57
- import {
58
- shell_segments
59
- } from "./chunk-CVJHQOI3.js";
60
- import {
61
- duplicate_read_outcome,
62
- duplicate_reads,
63
- investigation_reads,
64
- lane_guard_policy
65
- } from "./chunk-TFDVTU6O.js";
66
- import {
67
- time_spans
68
- } from "./chunk-R5AABJZJ.js";
69
- import {
70
- cost_blocks,
71
- time_josh_names,
72
- time_shell
73
- } from "./chunk-LHKXJD6L.js";
74
- import {
75
- canonical_command
76
- } from "./chunk-ROJXMBXP.js";
77
- import {
78
- hook_decision,
79
- hook_tool_payload
80
- } from "./chunk-GB2BRQVL.js";
81
- import {
82
- hook_context
83
- } from "./chunk-CUWT6UQO.js";
84
- import {
85
- transcript_tail
86
- } from "./chunk-2OMIHPPE.js";
87
- import {
88
- agent_session_role
89
- } from "./chunk-DURHGVRC.js";
90
- import {
91
- run_event_scope,
92
- run_event_stream_emit
93
- } from "./chunk-26JL4UU4.js";
94
- import {
95
- run_event_stream
96
- } from "./chunk-KGSEWOKI.js";
97
- import {
98
- repository_lock
99
- } from "./chunk-NUCFIYZL.js";
100
- import {
101
- issue_cite
102
- } from "./chunk-HQ2HSZBN.js";
103
- import {
104
- gh_call_kind
105
- } from "./chunk-43DU7DYZ.js";
106
- import {
107
- gh_api
108
- } from "./chunk-QVOFWFWC.js";
109
- import {
110
- git_argv
111
- } from "./chunk-G6BXCWPH.js";
112
- import {
113
- error_text
114
- } from "./chunk-CDY4NFQG.js";
115
- import {
116
- lane_child_marker
117
- } from "./chunk-XXPDFJRI.js";
118
- import {
119
- git_common_directory
120
- } from "./chunk-JPMAW2VZ.js";
121
- import {
122
- json_value
123
- } from "./chunk-HIU2WXB6.js";
124
-
125
- // scripts/delegation/large-read-guard.ts
126
- import { statSync } from "node:fs";
127
- var SWITCH_ENV_KEY = "JOSH_LARGE_READ_GUARD";
128
- var LANE_GUARD_ID = "duplicate-read";
129
- var STAMP_PREFIX = "josh-large-read-guard-";
130
- var NOTICE_STAMP_PREFIX = "josh-large-read-notice-";
131
- var READ_TOOL = "Read";
132
- var BYTES_PER_KB = 1024;
133
- var LARGE_READ_KB = 32;
134
- var LARGE_READ_BYTES = LARGE_READ_KB * BYTES_PER_KB;
135
- var LIMIT_TEXT = `${String(LARGE_READ_KB)} KB`;
136
- var REASON = `\u26D4 large read: this file is over ${LIMIT_TEXT}, and a whole-file read stays in context and is re-billed on every later call. Grep for the part you need and Read it with offset/limit. Repeat the same call to read the whole file anyway; set \`JOSH_LARGE_READ_GUARD=off\` to disable this guard.`;
137
- var NOTICE = `\u26A0 large read: this file is over ${LIMIT_TEXT} \u2014 next time Grep for the part you need and Read it with offset/limit. Set \`JOSH_LARGE_READ_GUARD=off\` to silence this.`;
138
- function is_whole_read(call) {
139
- if (call.name !== READ_TOOL || !json_value.is_record(call.input)) return false;
140
- return call.input["offset"] === void 0 && call.input["limit"] === void 0;
141
- }
142
- function file_bytes(target) {
143
- try {
144
- return statSync(target).size;
145
- } catch {
146
- return 0;
147
- }
148
- }
149
- function whole_read_target(call, root) {
150
- if (!is_whole_read(call)) return void 0;
151
- const { file_path } = call.input;
152
- if (typeof file_path !== "string" || file_path === "") return void 0;
153
- return investigation_reads.resolved(file_path, root);
154
- }
155
- function is_large_read(call, root) {
156
- const target = whole_read_target(call, root);
157
- return target !== void 0 && file_bytes(target) > LARGE_READ_BYTES;
158
- }
159
- function large_read_mode(context) {
160
- return lane_guard_policy.mode_here(LANE_GUARD_ID, context.cwd, context.env);
161
- }
162
- function is_candidate(call, context) {
163
- return is_large_read(call, context.cwd) && large_read_mode(context) !== "off";
164
- }
165
- function last_read_ms(spans) {
166
- const times = spans.filter((span) => duplicate_reads.is_successful_read(span)).map((span) => span.ended_ms);
167
- return times.length === 0 ? hook_decision.NEVER_MS : Math.max(...times);
168
- }
169
- function is_rearmed(tail, fired_at_ms) {
170
- const { spans, started_ms } = time_spans.parse_timeline(tail);
171
- if (fired_at_ms === hook_decision.NEVER_MS || fired_at_ms < started_ms) return true;
172
- return last_read_ms(spans) > fired_at_ms;
173
- }
174
- function is_read_of(span, target, root) {
175
- const is_read = span.label === READ_TOOL;
176
- return is_read && span.targets.some((one) => investigation_reads.resolved(one, root) === target);
177
- }
178
- function is_repeat_of_refusal(tail, target, root) {
179
- const reads = time_spans.parse_timeline(tail).spans.filter((span) => is_read_of(span, target, root));
180
- const latest = reads.at(-1);
181
- return latest?.outcome === time_spans.FAILED_OUTCOME;
182
- }
183
- function refuses(tail, call, _fired_at_ms, run) {
184
- const { cwd } = run.context;
185
- const target = whole_read_target(call, cwd);
186
- if (target === void 0 || large_read_mode(run.context) !== "refuse") return false;
187
- return !is_repeat_of_refusal(tail, target, cwd);
188
- }
189
- function notifies(tail, _call, fired_at_ms, run) {
190
- return large_read_mode(run.context) === "notice" && is_rearmed(tail, fired_at_ms);
191
- }
192
- var GUARD = hook_decision.create_transcript_guard({
193
- prefix: STAMP_PREFIX,
194
- switch_key: SWITCH_ENV_KEY,
195
- is_candidate,
196
- should_block: refuses,
197
- reason: REASON,
198
- notify: { prefix: NOTICE_STAMP_PREFIX, should_notify: notifies, text: () => NOTICE }
199
- });
200
- var large_read_outcome = GUARD.outcome;
201
- var large_read_refusal = GUARD.refusal;
202
- var { refusal_path } = GUARD;
203
- var notice_refusal_path = hook_decision.create_refusal_stamp(NOTICE_STAMP_PREFIX).path;
204
-
205
- // scripts/issue/issue-watch-hook.ts
206
- var POLL_INTERVAL_MS = 18e4;
207
- var POLL_TIMEOUT_MS = 5e3;
208
- function is_new_to_run(record2) {
209
- const news = record2 === void 0 ? void 0 : issue_watch.news_of(record2);
210
- return news !== void 0 && news !== record2?.shown;
211
- }
212
- function message_of(record2) {
213
- return record2.pending === void 0 ? record2.notice ?? "" : issue_watch_gate.unread_message(record2);
214
- }
215
- async function new_update_reason(now, root) {
216
- const options = { interval_ms: POLL_INTERVAL_MS, timeout_ms: POLL_TIMEOUT_MS, now };
217
- const record2 = await issue_watch.poll(options, root);
218
- if (!is_new_to_run(record2)) return void 0;
219
- issue_watch.mark_shown(record2, root);
220
- return message_of(record2);
221
- }
222
- async function watch_reason(context = hook_context.from_process(), now = /* @__PURE__ */ new Date()) {
223
- try {
224
- return await new_update_reason(now, context.cwd);
225
- } catch (error) {
226
- error_text.trace_swallowed("issue_watch_hook.watch_reason", error);
227
- return void 0;
228
- }
229
- }
230
- var issue_watch_hook = { POLL_INTERVAL_MS, watch_reason };
231
-
232
- // scripts/lane/lane-phase.ts
233
- var LOCK_WAIT_MS = 5e3;
234
- function implement_text(issue) {
235
- return `${issue_cite.plain_for("program", issue)} implement`;
236
- }
237
- async function has_implement(issue) {
238
- const events = await run_event_stream_emit.invocation_or_all_events();
239
- return run_event_scope.since_own_launch(events, issue).some(
240
- (event) => event.kind === run_event_stream.EVENT_KIND.LANE_PHASE && event.text === implement_text(issue)
241
- );
242
- }
243
- async function mark_once(issue) {
244
- if (await has_implement(issue)) return;
245
- await run_event_plan.emit_plan(issue);
246
- await run_event_stream_emit.emit(run_event_stream.EVENT_KIND.LANE_PHASE, implement_text(issue));
247
- }
248
- async function mark_implement(directory = process.cwd(), source = process.env) {
249
- const issue = lane_child_marker.marked_issue(source);
250
- if (issue === void 0 || !lane_child_marker.is_child_of(directory, source)) return;
251
- await repository_lock.with_lock(
252
- async () => {
253
- await mark_once(issue);
254
- },
255
- repository_lock.lock_path(`josh-lane-phase-${issue}-`, directory),
256
- LOCK_WAIT_MS
257
- );
258
- }
259
- var lane_phase = { mark_implement };
260
-
261
- // scripts/run/run-watcher-hook.ts
262
- import { z } from "zod";
263
- var SWITCH_ENV_KEY2 = "JOSH_WATCHER_GUARD";
264
- var STAMP_PREFIX2 = "josh-watcher-guard-";
265
- var payload_schema = z.object({ transcript_path: z.string().min(1) });
266
- function transcript_of(raw_payload) {
267
- return json_value.parse_with(raw_payload, payload_schema)?.transcript_path;
268
- }
269
- function fires_once(transcript, now_ms) {
270
- const stamp = hook_decision.create_refusal_stamp(STAMP_PREFIX2);
271
- const target = stamp.path(transcript);
272
- if (stamp.last_ms(target) !== hook_decision.NEVER_MS) return false;
273
- return stamp.record(target, now_ms);
274
- }
275
- function is_active(context) {
276
- return hook_decision.is_switch_enabled(SWITCH_ENV_KEY2) && lane_child_marker.marked_issue(context.env) === void 0;
277
- }
278
- async function stale_reason(transcript, now_ms, ancestry) {
279
- const result = await run_watcher_guard.check(await run_progress_read.live_target(), ancestry);
280
- if (result.kind === "ok") return void 0;
281
- return fires_once(transcript, now_ms) ? result.note : void 0;
282
- }
283
- async function watcher_hook_reason(raw_payload, context = hook_context.from_process(), now_ms = Date.now()) {
284
- if (!is_active(context)) return void 0;
285
- const transcript = transcript_of(raw_payload);
286
- if (transcript === void 0) return void 0;
287
- return await stale_reason(transcript, now_ms, context.ancestry);
288
- }
289
- var run_watcher_hook = { transcript_of, watcher_hook_reason };
290
-
291
- // scripts/run/run-parent-cut-hook.ts
292
- var SWITCH_ENV_KEY3 = "JOSH_PARENT_CUT_GUARD";
293
- var STAMP_PREFIX3 = "josh-parent-cut-guard-";
294
- var QUIET_WINDOW_MS = 6e5;
295
- function current_state(context = hook_context.from_process()) {
296
- return {
297
- carry: async () => await run_headless.driving_carry(context.env, context.ancestry),
298
- verdict: () => implementation_cut_verdict.reused_verdict(
299
- () => cost_cli.session_verdict(context.cwd, context.env),
300
- context.cwd
301
- )
302
- };
303
- }
304
- var THRESHOLD_TEXT = "`pnpm josh cost --cut`";
305
- var PARENT_CUT_REASON = `\u26D4 backlogrun parent hand-off: this session drives a \`backlogrun\` and its recent context crossed the ${THRESHOLD_TEXT} threshold between merges. Take the hand-off now: open no new lane, follow \`backlogrun-progress.md\` \u2192 "The hand-off" (\`pnpm josh run:handoff-lanes\`, then the \`next:\` line its \`cut\` / \`blocked\` / \`capped\` verdict prints). Reissue this call once done or if it cannot be taken.`;
306
- async function is_due(state) {
307
- const carry = await state.carry();
308
- if (carry === void 0 || run_headless.is_cut_capped(carry)) return false;
309
- return state.verdict() === cost_verdict.OVER_VERDICT;
310
- }
311
- function is_quiet(target, now_ms) {
312
- const last_ms = hook_decision.create_refusal_stamp(STAMP_PREFIX3).last_ms(target);
313
- return last_ms !== hook_decision.NEVER_MS && now_ms - last_ms < QUIET_WINDOW_MS;
314
- }
315
- async function refusal_for(transcript, now_ms, state) {
316
- const stamp = hook_decision.create_refusal_stamp(STAMP_PREFIX3);
317
- const target = stamp.path(transcript);
318
- if (is_quiet(target, now_ms) || !await is_due(state)) return void 0;
319
- return stamp.record(target, now_ms) ? PARENT_CUT_REASON : void 0;
320
- }
321
- function is_unit_call(raw_payload) {
322
- try {
323
- return (hook_decision.parse_hook_payload(raw_payload)?.agent_id ?? "") !== "";
324
- } catch (error) {
325
- error_text.trace_swallowed("run_parent_cut_hook.is_unit_call", error);
326
- return false;
327
- }
328
- }
329
- function is_exempt(raw_payload) {
330
- return !hook_decision.is_switch_enabled(SWITCH_ENV_KEY3) || is_unit_call(raw_payload);
331
- }
332
- async function parent_cut_reason(raw_payload, now_ms = Date.now(), state = current_state()) {
333
- if (is_exempt(raw_payload)) return void 0;
334
- const transcript = run_watcher_hook.transcript_of(raw_payload);
335
- if (transcript === void 0) return void 0;
336
- return await refusal_for(transcript, now_ms, state);
337
- }
338
- var run_parent_cut_hook = {
339
- PARENT_CUT_REASON,
340
- QUIET_WINDOW_MS,
341
- SWITCH_ENV_KEY: SWITCH_ENV_KEY3,
342
- current_state,
343
- parent_cut_reason
344
- };
345
-
346
- // scripts/run/run-poll-hook.ts
347
- var SWITCH_ENV_KEY4 = "JOSH_POLL_GUARD";
348
- var BASH_TOOL = "Bash";
349
- var STATE_READS = /* @__PURE__ */ new Set([
350
- "josh lane:list",
351
- "josh lane:output",
352
- "josh run:board",
353
- "josh run:carry",
354
- "josh run:liveness",
355
- "josh run:progress",
356
- "josh run:wake"
357
- ]);
358
- var POLL_REASON = "\u26D4 poll: this `backlogrun` session repeats a state read with nothing decided in between, on every occurrence. Wait on `pnpm josh backlog:drive`, or `pnpm josh lane:await <N...>` in the background, and end the turn; its exit is the wake.";
359
- var WRITING_FLAGS = /* @__PURE__ */ new Set([
360
- "--begin",
361
- "--cut",
362
- "--done",
363
- "--end",
364
- "--every",
365
- "--filed",
366
- "--loop",
367
- "--mark",
368
- "--merged",
369
- "--resume",
370
- "--retrospective",
371
- "--start",
372
- "--stop",
373
- "--wait"
374
- ]);
375
- var FLAG_PREFIX = "-";
376
- var NAME_WORDS = 2;
377
- var SIGNATURE_SEPARATOR = " ";
378
- function read_key(signature) {
379
- const words = signature.split(SIGNATURE_SEPARATOR);
380
- const name = words.slice(0, NAME_WORDS).join(SIGNATURE_SEPARATOR);
381
- if (!STATE_READS.has(name) || words.some((word) => WRITING_FLAGS.has(word))) return void 0;
382
- return words.filter((word) => !word.startsWith(FLAG_PREFIX)).join(SIGNATURE_SEPARATOR);
383
- }
384
- function read_keys(signatures) {
385
- return signatures.map((signature) => read_key(signature)).filter((key) => key !== void 0);
386
- }
387
- function state_reads_of(command) {
388
- return read_keys(time_josh_names.josh_signatures_of(command));
389
- }
390
- function command_of(input) {
391
- if (typeof input !== "object" || input === null || !("command" in input)) return "";
392
- return typeof input.command === "string" ? input.command : "";
393
- }
394
- function candidate_reads(raw_payload) {
395
- const payload = hook_decision.parse_hook_payload(raw_payload);
396
- if (payload?.tool_name !== BASH_TOOL || (payload.agent_id ?? "") !== "") return [];
397
- return state_reads_of(command_of(payload.tool_input));
398
- }
399
- function last_step(tail) {
400
- return time_spans.parse_timeline(tail).spans.findLast((span) => span.category !== time_spans.MODEL_CATEGORY);
401
- }
402
- function repeats_last_call(tail, reads) {
403
- const last = last_step(tail);
404
- if (last?.category !== time_spans.TOOL_CATEGORY) return false;
405
- const last_reads = read_keys(last.josh_signatures);
406
- return reads.some((key) => last_reads.includes(key));
407
- }
408
- function is_repeat(raw_payload) {
409
- const reads = hook_decision.is_switch_enabled(SWITCH_ENV_KEY4) ? candidate_reads(raw_payload) : [];
410
- const transcript = reads.length === 0 ? void 0 : run_watcher_hook.transcript_of(raw_payload);
411
- if (transcript === void 0) return false;
412
- return repeats_last_call(transcript_tail.read_tail(transcript), reads);
413
- }
414
- async function poll_reason(raw_payload, is_parent = run_headless.is_backlog_parent) {
415
- if (!is_repeat(raw_payload)) return void 0;
416
- return await is_parent() ? POLL_REASON : void 0;
417
- }
418
- async function safe_poll_reason(raw_payload, context = hook_context.from_process()) {
419
- try {
420
- return await poll_reason(
421
- raw_payload,
422
- async () => await run_headless.is_backlog_parent(context.env, context.ancestry)
423
- );
424
- } catch (error) {
425
- error_text.trace_swallowed("run_poll_hook.poll_reason", error);
426
- return void 0;
427
- }
428
- }
429
- var run_poll_hook = {
430
- POLL_REASON,
431
- SWITCH_ENV_KEY: SWITCH_ENV_KEY4,
432
- poll_reason,
433
- safe_poll_reason
434
- };
435
-
436
- // scripts/hooks/direct-gh-usage.ts
437
- var PREFIX = "direct:";
438
- var API = "api";
439
- var FREE_ENDPOINT = "rate_limit";
440
- var LEADING_SLASH = /^\//u;
441
- var SUBCOMMAND_WORDS = 2;
442
- function gh_words(segment) {
443
- return git_argv.arguments_of(segment, "gh")?.filter((word) => !word.startsWith("-")) ?? [];
444
- }
445
- function is_free(api_words) {
446
- return api_words.some((word) => word.replace(LEADING_SLASH, "") === FREE_ENDPOINT);
447
- }
448
- function subcommand_of(segment) {
449
- const words = gh_words(segment);
450
- const [head, ...rest] = words;
451
- if (head === API) return is_free(rest) ? void 0 : API;
452
- return head === void 0 ? void 0 : words.slice(0, SUBCOMMAND_WORDS).join(" ");
453
- }
454
- function direct_call_of(segment) {
455
- const subcommand = subcommand_of(segment);
456
- if (subcommand === void 0) return void 0;
457
- const kind = gh_call_kind.of(git_argv.arguments_of(segment, "gh") ?? []);
458
- return { command: `${PREFIX}${subcommand}`, kind };
459
- }
460
- function direct_calls(command) {
461
- return nested_commands.commands_of(command).map((segment) => direct_call_of(segment)).filter((call) => call !== void 0);
462
- }
463
- function calls_of(raw_payload) {
464
- const payload = hook_tool_payload.parse(raw_payload);
465
- if (payload?.tool_name !== "Bash") return [];
466
- return direct_calls(time_shell.bash_command(payload.tool_input));
467
- }
468
- function log_target(context) {
469
- if (context.env["VITEST"] !== void 0) return void 0;
470
- const repository = git_common_directory.repository(context.cwd);
471
- return repository === void 0 ? void 0 : gh_usage_log.target_of(repository);
472
- }
473
- function append_all(target, calls, environment) {
474
- const marked = lane_child_marker.marked_issue(environment);
475
- const issue = marked === void 0 ? void 0 : Number(marked);
476
- for (const { command, kind } of calls) {
477
- const at = (/* @__PURE__ */ new Date()).toISOString();
478
- const endpoints = { [kind]: { calls: 1, not_modified: 0 } };
479
- gh_usage_log.append(target, {
480
- at,
481
- command,
482
- issue,
483
- calls: 1,
484
- not_modified: 0,
485
- elapsed_ms: 0,
486
- endpoints
487
- });
488
- }
489
- }
490
- async function record(raw_payload, context = hook_context.from_process()) {
491
- try {
492
- const calls = calls_of(raw_payload);
493
- const target = calls.length === 0 ? void 0 : log_target(context);
494
- if (target !== void 0) append_all(target, calls, context.env);
495
- } catch (error) {
496
- error_text.trace_swallowed("direct_gh_usage.record", error);
497
- }
498
- }
499
- var direct_gh_usage = { record };
500
-
501
- // scripts/hooks/implementation-shell.ts
502
- import path from "node:path";
503
-
504
- // scripts/hooks/implementation-shell-deny-expansion.ts
505
- var DYNAMIC = /[$`]/u;
506
- function is_dynamic(word) {
507
- return DYNAMIC.test(word);
508
- }
509
- function refusal(program, word) {
510
- return `\`${program} ${word}\`, an expansion that may spell a write`;
511
- }
512
- var implementation_shell_deny_expansion = { is_dynamic, refusal };
513
-
514
- // scripts/hooks/implementation-shell-deny-git.ts
515
- var GIT_WRITES = /* @__PURE__ */ new Set([
516
- "add",
517
- "am",
518
- "apply",
519
- "bisect",
520
- "checkout",
521
- "checkout-index",
522
- "cherry-pick",
523
- "clean",
524
- "commit",
525
- "credential",
526
- "fetch",
527
- "filter-branch",
528
- "gc",
529
- "init",
530
- "maintenance",
531
- "merge",
532
- "mv",
533
- "pack-refs",
534
- "prune",
535
- "prune-packed",
536
- "pull",
537
- "push",
538
- "read-tree",
539
- "rebase",
540
- "repack",
541
- "replace",
542
- "reset",
543
- "restore",
544
- "revert",
545
- "rm",
546
- "send-email",
547
- "sparse-checkout",
548
- "stage",
549
- "submodule",
550
- "switch",
551
- "symbolic-ref",
552
- "update-index",
553
- "update-ref"
554
- ]);
555
- var BRANCH_CHANGE = /^--(?:delete|move|copy|force|set-upstream-to|unset-upstream|edit-description)/u;
556
- var BRANCH_CHANGE_LETTERS = "dDmMcCfu";
557
- var CONFIG_READ = /^(?:--get|--list$|-l$)/u;
558
- var LIST_MODE = /^(?:-l$|--list$|-n\d*$|--contains|--no-contains|--points-at|--merged|--no-merged)/u;
559
- var LIST_VALUE_FLAGS = /* @__PURE__ */ new Set(["--sort", "--format"]);
560
- var REFLOG_WRITES = /* @__PURE__ */ new Set(["expire", "delete"]);
561
- var GIT_WRITE_FLAGS = /^-c$|^--(?:config-env|exec-path|output|ext-diff|textconv)/u;
562
- var QUOTES = /['"\\]/gu;
563
- function is_branch_change(argument) {
564
- return BRANCH_CHANGE.test(argument) || git_argv.short_cluster_has(argument, BRANCH_CHANGE_LETTERS);
565
- }
566
- function names_a_reference(args) {
567
- return args.some(
568
- (argument, index) => !argument.startsWith("-") && !LIST_VALUE_FLAGS.has(args[index - 1] ?? "")
569
- );
570
- }
571
- function is_listing(args) {
572
- return !names_a_reference(args) || args.some((argument) => LIST_MODE.test(argument));
573
- }
574
- var GIT_READ_FORMS = /* @__PURE__ */ new Map([
575
- ["branch", (args) => is_listing(args) && args.every((argument) => !is_branch_change(argument))],
576
- ["stash", (args) => ["list", "show"].includes(args[0] ?? "")],
577
- ["worktree", (args) => args[0] === "list"],
578
- ["notes", (args) => ["list", "show"].includes(args[0] ?? "")],
579
- ["remote", (args) => ["", "-v", "show", "get-url"].includes(args[0] ?? "")],
580
- ["config", (args) => args.some((argument) => CONFIG_READ.test(argument))],
581
- ["tag", is_listing],
582
- ["reflog", (args) => !REFLOG_WRITES.has(args[0] ?? "")]
583
- ]);
584
- function is_git_write(subcommand, args) {
585
- if (GIT_WRITES.has(subcommand)) return true;
586
- const read_form = GIT_READ_FORMS.get(subcommand);
587
- if (read_form === void 0) return false;
588
- return args.some((argument) => implementation_shell_deny_expansion.is_dynamic(argument)) || !read_form(args);
589
- }
590
- function parsed_git(segment) {
591
- return git_argv.parse(segment) ?? git_argv.parse(segment.replaceAll(QUOTES, ""));
592
- }
593
- function subcommand_refusal(segment) {
594
- const call = parsed_git(segment);
595
- if (call?.subcommand === void 0) return void 0;
596
- if (implementation_shell_deny_expansion.is_dynamic(call.subcommand)) return implementation_shell_deny_expansion.refusal("git", call.subcommand);
597
- const subcommand = call.subcommand.replaceAll(QUOTES, "");
598
- const args = call.args.map((argument) => argument.replaceAll(QUOTES, ""));
599
- return is_git_write(subcommand, args) ? `\`git ${subcommand}\`, a git write` : void 0;
600
- }
601
- function refusal2(segment, args) {
602
- if (args.some((argument) => GIT_WRITE_FLAGS.test(argument))) {
603
- return "a git option that rewrites its configuration, runs a program or writes a file";
604
- }
605
- return subcommand_refusal(segment);
606
- }
607
- var implementation_shell_deny_git = { refusal: refusal2 };
608
-
609
- // scripts/hooks/implementation-shell-deny.ts
610
- var GH_READS = /* @__PURE__ */ new Set([
611
- "checks",
612
- "code",
613
- "commits",
614
- "diff",
615
- "issues",
616
- "list",
617
- "prs",
618
- "repos",
619
- "status",
620
- "token",
621
- "view",
622
- "watch"
623
- ]);
624
- var GH_WRITES = /* @__PURE__ */ new Set([
625
- "add",
626
- "archive",
627
- "cancel",
628
- "checkout",
629
- "clone",
630
- "close",
631
- "comment",
632
- "copy",
633
- "create",
634
- "delete",
635
- "develop",
636
- "disable",
637
- "edit",
638
- "enable",
639
- "field-create",
640
- "field-delete",
641
- "fork",
642
- "install",
643
- "item-add",
644
- "item-archive",
645
- "item-create",
646
- "item-delete",
647
- "item-edit",
648
- "link",
649
- "lock",
650
- "login",
651
- "logout",
652
- "mark-template",
653
- "merge",
654
- "pin",
655
- "ready",
656
- "refresh",
657
- "remove",
658
- "rename",
659
- "reopen",
660
- "rerun",
661
- "revert",
662
- "review",
663
- "run",
664
- "set",
665
- "setup-git",
666
- "sync",
667
- "transfer",
668
- "unarchive",
669
- "unlink",
670
- "unlock",
671
- "unpin",
672
- "update-branch",
673
- "upgrade",
674
- "upload"
675
- ]);
676
- var GRAPHQL_MUTATION = /\bmutation\b|=@|^--input/u;
677
- var PACKAGE_MANAGERS = /* @__PURE__ */ new Set(["npm", "yarn"]);
678
- var PACKAGE_WRITES = /* @__PURE__ */ new Set([
679
- "add",
680
- "ci",
681
- "dedupe",
682
- "i",
683
- "install",
684
- "link",
685
- "patch-commit",
686
- "publish",
687
- "rebuild",
688
- "remove",
689
- "un",
690
- "uninstall",
691
- "unlink",
692
- "unpublish",
693
- "up",
694
- "update",
695
- "upgrade",
696
- // Commits and tags the version bump.
697
- "version"
698
- ]);
699
- var JOSH_SHARED_WRITES = /* @__PURE__ */ new Set([
700
- "adopt",
701
- "bump",
702
- "dogfood:commit",
703
- "followup",
704
- "git",
705
- "init",
706
- "latest",
707
- "latest:corepack",
708
- "latest:update",
709
- "overrides",
710
- "pr",
711
- "release",
712
- "release:github",
713
- "ship",
714
- "stash:pop",
715
- "stash:push",
716
- "sync",
717
- "uninstall"
718
- ]);
719
- function is_gh_api_write(args) {
720
- if (args.includes("graphql")) return args.some((argument) => GRAPHQL_MUTATION.test(argument));
721
- return gh_api.is_write(["gh", ...args].join(" "));
722
- }
723
- function is_gh_verb(argument) {
724
- return GH_WRITES.has(argument) || GH_READS.has(argument) || implementation_shell_deny_expansion.is_dynamic(argument);
725
- }
726
- function verb_refusal(group, args) {
727
- const verb = args.slice(1).find((argument) => is_gh_verb(argument));
728
- if (verb === void 0 || GH_READS.has(verb)) return void 0;
729
- return implementation_shell_deny_expansion.is_dynamic(verb) ? implementation_shell_deny_expansion.refusal(`gh ${group}`, verb) : `\`gh ${group} ${verb}\`, a GitHub write`;
730
- }
731
- function gh_refusal(args) {
732
- const group = args[0] ?? "";
733
- if (group === "api") return is_gh_api_write(args) ? "a `gh api` call other than GET" : void 0;
734
- return implementation_shell_deny_expansion.is_dynamic(group) ? implementation_shell_deny_expansion.refusal("gh", group) : verb_refusal(group, args);
735
- }
736
- function is_flag(argument) {
737
- return argument.startsWith("-");
738
- }
739
- function is_action_word(args, index) {
740
- const previous = args[index - 1] ?? "";
741
- return !is_flag(args[index] ?? "-") && (!is_flag(previous) || previous.includes("="));
742
- }
743
- function package_actions(call) {
744
- if (!PACKAGE_MANAGERS.has(call.name)) return [call.name];
745
- const end = call.args.findIndex((_argument, index) => is_action_word(call.args, index));
746
- const read = end === -1 ? call.args : call.args.slice(0, end + 1);
747
- const actions = read.filter((word) => !is_flag(word));
748
- return end === -1 && call.name === "yarn" ? [...actions, "install"] : actions;
749
- }
750
- function action_refusal(manager, action) {
751
- if (implementation_shell_deny_expansion.is_dynamic(action)) return implementation_shell_deny_expansion.refusal(manager, action);
752
- return PACKAGE_WRITES.has(action) ? `\`${action}\`, a dependency change` : void 0;
753
- }
754
- function package_refusal(call) {
755
- return package_actions(call).map((action) => action_refusal(call.name, action)).find((rule) => rule !== void 0);
756
- }
757
- function josh_refusal(args) {
758
- const command = canonical_command(args[0] ?? "");
759
- if (implementation_shell_deny_expansion.is_dynamic(command)) return implementation_shell_deny_expansion.refusal("josh", command);
760
- if (!JOSH_SHARED_WRITES.has(command)) return void 0;
761
- const rule = josh_read_only.refusal(args);
762
- return rule === void 0 ? void 0 : `\`josh ${command}\`, a shared-state write: ${rule}`;
763
- }
764
- function refusal3(segment, call) {
765
- if (implementation_shell_deny_expansion.is_dynamic(call.name)) return `\`${call.name}\`, a program an expansion names`;
766
- if (call.name === "git") return implementation_shell_deny_git.refusal(segment, call.args);
767
- if (call.name === "gh") return gh_refusal(call.args);
768
- if (call.name === "josh") return josh_refusal(call.args);
769
- return package_refusal(call);
770
- }
771
- var implementation_shell_deny = { refusal: refusal3 };
772
-
773
- // scripts/hooks/implementation-shell-nested.ts
774
- var SUBSTITUTION = /\$\(([^()]*)\)|`([^`]*)`|[<>]\(([^()]*)\)/u;
775
- var SHELLS = /* @__PURE__ */ new Set(["sh", "bash", "zsh", "dash"]);
776
- var SHELL_COMMAND_LETTER = "c";
777
- var SHELL_STDIN_LETTER = "s";
778
- var FIND_RUNNERS = /^-(?:exec|execdir|ok|okdir)$/u;
779
- var FIND_ENDS = /* @__PURE__ */ new Set([";", String.raw`\;`, "';'", "+"]);
780
- var JOSH_SCRIPT = /(?:^|\/)josh[\w-]*\.ts$/u;
781
- var INPUT_WORDS = "$xargs";
782
- var AFTER_VALUE = 2;
783
- var QUOTED = /^(?<quote>['"])(?<body>[\s\S]*)\k<quote>$/u;
784
- var LAUNCHERS = /* @__PURE__ */ new Map([
785
- [
786
- "xargs",
787
- {
788
- value_flags: /* @__PURE__ */ new Set(["-I", "-L", "-n", "-P", "-s", "-d", "-E", "-a"]),
789
- operands: 0,
790
- is_appending: true
791
- }
792
- ],
793
- [
794
- "timeout",
795
- {
796
- value_flags: /* @__PURE__ */ new Set(["-s", "--signal", "-k", "--kill-after"]),
797
- operands: 1,
798
- is_appending: false
799
- }
800
- ],
801
- ["nice", { value_flags: /* @__PURE__ */ new Set(["-n", "--adjustment"]), operands: 0, is_appending: false }],
802
- ["nohup", { value_flags: /* @__PURE__ */ new Set(), operands: 0, is_appending: false }],
803
- ["stdbuf", { value_flags: /* @__PURE__ */ new Set(["-i", "-o", "-e"]), operands: 0, is_appending: false }],
804
- ["watch", { value_flags: /* @__PURE__ */ new Set(["-n", "--interval"]), operands: 0, is_appending: false }]
805
- ]);
806
- function unquoted(word) {
807
- return QUOTED.exec(word)?.groups?.["body"] ?? word;
808
- }
809
- function substitution_bodies(command) {
810
- const bodies = [];
811
- let rest = time_shell.literal_blanked(command);
812
- let match = SUBSTITUTION.exec(rest);
813
- while (match !== null) {
814
- bodies.push(match.slice(1).join(""));
815
- rest = `${rest.slice(0, match.index)} ${rest.slice(match.index + match[0].length)}`;
816
- match = SUBSTITUTION.exec(rest);
817
- }
818
- return bodies;
819
- }
820
- function after_flag(launcher, args, index) {
821
- return index + (launcher.value_flags.has(args[index] ?? "") ? AFTER_VALUE : 1);
822
- }
823
- function launched_commands(launcher, args) {
824
- let index = 0;
825
- while (args[index]?.startsWith("-") === true) index = after_flag(launcher, args, index);
826
- const words = args.slice(index + launcher.operands);
827
- if (words.length === 0) return [];
828
- return [[...words, ...launcher.is_appending ? [INPUT_WORDS] : []].join(" ")];
829
- }
830
- function josh_script_commands(args) {
831
- const index = args.findIndex((argument) => JOSH_SCRIPT.test(argument));
832
- return index === -1 ? [] : [["josh", ...args.slice(index + 1)].join(" ")];
833
- }
834
- function find_body(args, start) {
835
- const end = args.findIndex((argument, index) => index >= start && FIND_ENDS.has(argument));
836
- return args.slice(start, end === -1 ? void 0 : end).join(" ");
837
- }
838
- function find_commands(args) {
839
- return args.flatMap(
840
- (argument, index) => FIND_RUNNERS.test(argument) ? find_body(args, index + 1) : []
841
- );
842
- }
843
- function shell_commands(args) {
844
- const index = args.findIndex(
845
- (argument) => git_argv.short_cluster_has(argument, SHELL_COMMAND_LETTER)
846
- );
847
- const body = index === -1 ? void 0 : args[index + 1];
848
- return body === void 0 ? [] : [unquoted(body)];
849
- }
850
- function eval_commands(args) {
851
- return [args.map((argument) => unquoted(argument)).join(" ")];
852
- }
853
- var RUNNERS = new Map([
854
- ["find", find_commands],
855
- ["eval", eval_commands],
856
- ["node", josh_script_commands],
857
- ...[...SHELLS].map((shell) => [shell, shell_commands])
858
- ]);
859
- function call_commands(call) {
860
- const launcher = LAUNCHERS.get(call.name);
861
- if (launcher !== void 0) return launched_commands(launcher, call.args);
862
- return RUNNERS.get(call.name)?.(call.args) ?? [];
863
- }
864
- function reads_stdin(call) {
865
- if (!SHELLS.has(call.name)) return false;
866
- if (call.args.some((argument) => git_argv.short_cluster_has(argument, SHELL_STDIN_LETTER))) {
867
- return true;
868
- }
869
- return call.args.every((argument) => argument.startsWith("-"));
870
- }
871
- var implementation_shell_nested = { call_commands, reads_stdin, substitution_bodies };
872
-
873
- // scripts/hooks/implementation-shell.ts
874
- var FILE_PROGRAMS = /* @__PURE__ */ new Set(["tee", "touch", "rm", "truncate"]);
875
- var COPY_PROGRAMS = /* @__PURE__ */ new Set(["cp", "ln", "install", "rsync", "scp"]);
876
- var MOVE_PROGRAMS = /* @__PURE__ */ new Set([
877
- ...COPY_PROGRAMS,
878
- "mv",
879
- "dd",
880
- "patch",
881
- "tar",
882
- "unzip"
883
- ]);
884
- var TARGET_DIRECTORY = /^-(?:[A-Za-z]*t|-target-directory)/u;
885
- var IN_PLACE_PROGRAMS = /* @__PURE__ */ new Set(["sed", "perl"]);
886
- var IN_PLACE = /^-(?:[A-Za-z]*i|-in-place)/u;
887
- var REDIRECT = /(?<![<>])(?:<>|>[>|&]?)(?![>&])/gu;
888
- var DESCRIPTOR = /^(?:\d+[+-]?|-)$/u;
889
- var QUOTES2 = /^['"]|['"]$/gu;
890
- var DYNAMIC_PATH = /[$`*?{}\\]/u;
891
- var COMPOUND_HEAD = /^\s*(?:[({!]\s*|(?:if|then|else|elif|while|until|do)\s+)+/u;
892
- var COMPOUND_CLOSERS = /* @__PURE__ */ new Set([")", "}", " ", " ", "\n"]);
893
- var KEYWORDS = /* @__PURE__ */ new Set([
894
- "for",
895
- "do",
896
- "done",
897
- "then",
898
- "else",
899
- "fi",
900
- "case",
901
- "select",
902
- "function",
903
- "esac"
904
- ]);
905
- var FUNCTION_START = /^(?:function\s|[\w.:-]+\s*\(\s*\))/u;
906
- var FUNCTION_HEAD = /^(?:function\s+)?[\w.:-]+(?:\s*\()?$/u;
907
- var UNREAD_ARMS = [/^case\s[\s\S]*\)/u, /^[^\s$`]*\)/u];
908
- var ARGUMENT_QUOTES = /['"\\]/gu;
909
- var TIME_PROGRAM = /(?:^|\/)time$/u;
910
- var TIME_WRITE = /^-(?:[A-Za-z]*o|-o)/u;
911
- var CD_WRITE = "a write beside `cd`, whose target is not read off the repository root";
912
- var STDIN_SHELL = "a shell running the commands its standard input spells, which may be any write";
913
- function unsafe_path(target, root) {
914
- const file_path = target.replaceAll(QUOTES2, "");
915
- if (file_path === "/dev/null") return false;
916
- return DYNAMIC_PATH.test(file_path) || step_zero_notice.is_runtime_file(file_path, root, true);
917
- }
918
- function redirected_paths(command) {
919
- const plain = time_shell.blanked(command);
920
- if (plain === void 0) return [];
921
- return [...plain.matchAll(REDIRECT)].map((match) => {
922
- const following = command.slice(match.index + match[0].length);
923
- const target = git_argv.words_of(following)[0] ?? "$unknown";
924
- return match[0].endsWith(">&") && DESCRIPTOR.test(target) ? "/dev/null" : target;
925
- });
926
- }
927
- function write_args_are_unsafe(args, root) {
928
- return args.filter((argument) => argument !== "-a").some((argument) => unsafe_path(argument, root));
929
- }
930
- function plain_argument(word) {
931
- if (/^'[^']*'$/u.test(word) || /^"[^"\\$`]*"$/u.test(word)) return word.slice(1, -1);
932
- if (/['"\\$`]/u.test(word)) return void 0;
933
- return word;
934
- }
935
- function wrapper_writes(segment) {
936
- const words = git_argv.words_of(segment);
937
- const index = words.findIndex((word) => TIME_PROGRAM.test(word));
938
- if (index === -1) return false;
939
- const call = git_argv.program_of(segment);
940
- const program_index = words.length - (call?.args.length ?? 0) - 1;
941
- return words.slice(index + 1, program_index).some((word) => {
942
- const argument = plain_argument(word);
943
- return argument === void 0 || TIME_WRITE.test(argument);
944
- });
945
- }
946
- function is_copy_to_last(call) {
947
- if (!COPY_PROGRAMS.has(call.name)) return false;
948
- return call.args.every((argument) => !TARGET_DIRECTORY.test(argument));
949
- }
950
- function written_args(call) {
951
- const written = is_copy_to_last(call) ? call.args.slice(-1) : call.args;
952
- return written.map((argument) => argument.slice(argument.indexOf("=") + 1));
953
- }
954
- function is_outside(target, root) {
955
- const relative = path.relative(root, path.resolve(root, target.replaceAll(QUOTES2, "")));
956
- return relative.startsWith("..") || path.isAbsolute(relative);
957
- }
958
- function file_write_refusal(call, root) {
959
- return write_args_are_unsafe(call.args, root) ? `\`${call.name}\` to a runtime path` : void 0;
960
- }
961
- function writes_elsewhere(call) {
962
- if (MOVE_PROGRAMS.has(call.name)) return true;
963
- return IN_PLACE_PROGRAMS.has(call.name) && call.args.some((argument) => IN_PLACE.test(argument));
964
- }
965
- function outside_write_refusal(call, root) {
966
- if (!writes_elsewhere(call)) return void 0;
967
- const target = written_args(call).find(
968
- (argument) => is_outside(argument, root) && unsafe_path(argument, root)
969
- );
970
- return target === void 0 ? void 0 : `\`${call.name}\` to a runtime path outside this checkout`;
971
- }
972
- function call_refusal(segment, call, root) {
973
- if (FILE_PROGRAMS.has(call.name)) return file_write_refusal(call, root);
974
- if (implementation_shell_nested.reads_stdin(call)) return STDIN_SHELL;
975
- const args = call.args.map((argument) => argument.replaceAll(ARGUMENT_QUOTES, ""));
976
- const name = call.name.replaceAll(ARGUMENT_QUOTES, "");
977
- const outside = outside_write_refusal(call, root);
978
- return outside ?? implementation_shell_deny.refusal(segment, { name, args });
979
- }
980
- function body_of(segment) {
981
- const body = segment.replace(COMPOUND_HEAD, "");
982
- let end = body.length;
983
- while (end > 0 && COMPOUND_CLOSERS.has(body.charAt(end - 1))) end -= 1;
984
- return body.slice(0, end);
985
- }
986
- function call_of(segment) {
987
- const body = body_of(segment);
988
- if (KEYWORDS.has(git_argv.words_of(body)[0] ?? "")) return void 0;
989
- return git_argv.program_of(body);
990
- }
991
- function command_refusal(segment, root) {
992
- const call = call_of(segment);
993
- return call === void 0 ? void 0 : call_refusal(body_of(segment), call, root);
994
- }
995
- function is_unread_body(body) {
996
- if (FUNCTION_START.test(body)) return !FUNCTION_HEAD.test(body);
997
- return UNREAD_ARMS.some((pattern) => pattern.test(body));
998
- }
999
- function segment_refusal(segment, root) {
1000
- if (wrapper_writes(segment)) return "a time output file";
1001
- if (is_unread_body(body_of(segment))) return "a `case` arm or function body";
1002
- const target = redirected_paths(segment).find((redirected) => unsafe_path(redirected, root));
1003
- return target === void 0 ? command_refusal(segment, root) : `redirect to \`${target}\``;
1004
- }
1005
- function is_cd(segment) {
1006
- return call_of(segment)?.name === "cd";
1007
- }
1008
- function is_write(segment) {
1009
- const call = call_of(segment);
1010
- if (call !== void 0 && (FILE_PROGRAMS.has(call.name) || writes_elsewhere(call))) return true;
1011
- return redirected_paths(segment).some((redirected) => redirected !== "/dev/null");
1012
- }
1013
- function segments_refusal(segments, root) {
1014
- const is_moved = segments.some((segment) => is_cd(segment));
1015
- if (is_moved && segments.some((segment) => is_write(segment))) return CD_WRITE;
1016
- return segments.map((segment) => segment_refusal(segment, root)).find((rule) => rule !== void 0);
1017
- }
1018
- function nested_lines(line, segments) {
1019
- const launched = segments.flatMap((segment) => {
1020
- const call = call_of(segment);
1021
- return call === void 0 ? [] : implementation_shell_nested.call_commands(call);
1022
- });
1023
- return [...implementation_shell_nested.substitution_bodies(line), ...launched];
1024
- }
1025
- function segments_of(command) {
1026
- const segments = [];
1027
- const pending = [command];
1028
- let line = pending.pop();
1029
- while (line !== void 0) {
1030
- const cut = shell_segments.quote_aware_commands_of(line);
1031
- segments.push(...cut);
1032
- pending.push(...nested_lines(line, cut));
1033
- line = pending.pop();
1034
- }
1035
- return segments;
1036
- }
1037
- function input_refusal(command) {
1038
- if (command.trim() === "") return "an empty command";
1039
- return time_shell.has_heredoc(command) ? "a heredoc" : void 0;
1040
- }
1041
- function refusal4(command, root = process.cwd()) {
1042
- return input_refusal(command) ?? segments_refusal(segments_of(command), root);
1043
- }
1044
- function is_unsafe(command, root = process.cwd()) {
1045
- return refusal4(command, root) !== void 0;
1046
- }
1047
- var implementation_shell = { is_unsafe, refusal: refusal4 };
1048
-
1049
- // scripts/hooks/implementation-authority.ts
1050
- var HANDOFF = " Implementation refused before execution. Record the plan with issue:plan or issue:comment and hand it to lane:dispatch; repeating the request does not grant authority.";
1051
- var UNKNOWN = " Cannot verify the write targets of this shell or patch input. Use explicit Edit/Write paths for operational records, or hand implementation to a worker lane.";
1052
- var MATCHED = " Matched rule: ";
1053
- function edit_refusal(tool_input) {
1054
- return step_zero_notice.edited_paths(tool_input).length === 0 ? "no edited path" : void 0;
1055
- }
1056
- function unverified_write(raw_payload) {
1057
- const payload = hook_tool_payload.parse(raw_payload);
1058
- if (payload === void 0) return "an unparsed hook payload";
1059
- if (["apply_patch", "exec"].includes(payload.tool_name)) return `\`${payload.tool_name}\` input`;
1060
- if (["Edit", "Write"].includes(payload.tool_name)) return edit_refusal(payload.tool_input);
1061
- if (payload.tool_name !== "Bash") return void 0;
1062
- return implementation_shell.refusal(time_shell.bash_command(payload.tool_input));
1063
- }
1064
- function reason(raw_payload, context = hook_context.from_process()) {
1065
- if (agent_session_role.can_implement(context.env)) return void 0;
1066
- const scope = agent_session_role.scope_line(context.env);
1067
- if (step_zero_notice.is_runtime_edit(raw_payload, context.cwd, true)) return scope + HANDOFF;
1068
- const rule = unverified_write(raw_payload);
1069
- if (rule === void 0) return void 0;
1070
- return `${scope}${HANDOFF}${UNKNOWN}${MATCHED}${rule}.`;
1071
- }
1072
- var implementation_authority = { reason };
1073
-
1074
- // scripts/hooks/lane-plan-guard.ts
1075
- var COMMAND_DOC = '`docs/josh-commands-lane.md` \u2192 "`josh lane:plan`"';
1076
- var OUTCOMES = "on `yield` end the session with no edit (its lane is given back); on `wait` run it again";
1077
- function reason_text(issue) {
1078
- const command = `\`pnpm josh lane:plan ${issue} <path>...\``;
1079
- return `\u26D4 lane plan: run ${command} naming every file the work summary changes before the first implementation edit \u2014 ${OUTCOMES} (${COMMAND_DOC}).`;
1080
- }
1081
- function lane_child_edit(raw_payload, directory, source) {
1082
- if (!lane_child_marker.is_child_of(directory, source)) return void 0;
1083
- return step_zero_notice.is_runtime_edit(raw_payload, directory) ? lane_child_marker.marked_issue(source) : void 0;
1084
- }
1085
- function reason2(raw_payload, directory = process.cwd(), source = process.env) {
1086
- const issue = lane_child_edit(raw_payload, directory, source);
1087
- if (issue === void 0) return void 0;
1088
- return lane_plan.is_uncleared(Number(issue), directory) ? reason_text(issue) : void 0;
1089
- }
1090
- var lane_plan_guard = { reason: reason2 };
1091
-
1092
- // scripts/hooks/shell-rules-notice.ts
1093
- var STAMP_PREFIX4 = "josh-shell-rules-notice-";
1094
- var NOTICE2 = "Shell rules: change an existing file with Edit or Write, never a script or heredoc that writes it (file-edits.md); run a josh check with no pipe or under `set -o pipefail`, never `| head` (output-bounds.md).";
1095
- var STAMP = hook_decision.create_refusal_stamp(STAMP_PREFIX4);
1096
- function notice(raw_payload) {
1097
- const payload = hook_decision.parse_hook_payload(raw_payload);
1098
- if (payload?.tool_name !== cost_blocks.BASH_TOOL) return void 0;
1099
- const target = STAMP.path(payload.transcript_path);
1100
- if (STAMP.last_ms(target) !== hook_decision.NEVER_MS || !STAMP.record(target, Date.now())) {
1101
- return void 0;
1102
- }
1103
- return NOTICE2;
1104
- }
1105
- var shell_rules_notice = { NOTICE: NOTICE2, notice, stamp_path: STAMP.path };
1106
-
1107
- // scripts/hooks/pretool-guard.ts
1108
- var CLEAR = { reason: void 0, notice: void 0, fault: void 0 };
1109
- var HOOK_NAME = "pretool-guard";
1110
- function is_clear(outcome) {
1111
- return outcome.reason === void 0 && outcome.notice === void 0 && outcome.fault === void 0;
1112
- }
1113
- function combine_outcomes(outcomes, rule_reason, demoted = hook_demoted.rules()) {
1114
- const reasons = [...outcomes.map((outcome) => outcome.reason), rule_reason].filter(
1115
- (reason3) => reason3 !== void 0
1116
- );
1117
- return hook_demoted.verdict(reasons, demoted) ?? outcomes.find((outcome) => !is_clear(outcome)) ?? CLEAR;
1118
- }
1119
- function with_session_notice(outcome, raw_payload, context) {
1120
- if (!is_clear(outcome)) return outcome;
1121
- const notice2 = step_zero_notice.notice(raw_payload, context.cwd) ?? shell_rules_notice.notice(raw_payload);
1122
- return notice2 === void 0 ? outcome : { reason: void 0, notice: notice2, fault: void 0 };
1123
- }
1124
- function guarded_call(raw_payload) {
1125
- try {
1126
- const payload = hook_decision.parse_hook_payload(raw_payload);
1127
- return payload === void 0 ? void 0 : { name: payload.tool_name, input: payload.tool_input };
1128
- } catch {
1129
- return void 0;
1130
- }
1131
- }
1132
- function authority_outcome(raw_payload, context) {
1133
- return {
1134
- reason: implementation_authority.reason(raw_payload, context),
1135
- notice: void 0,
1136
- fault: void 0
1137
- };
1138
- }
1139
- function lane_plan_outcome(raw_payload, context) {
1140
- const reason3 = lane_plan_guard.reason(raw_payload, context.cwd, context.env);
1141
- return { reason: reason3, notice: void 0, fault: void 0 };
1142
- }
1143
- function clocked(outcome) {
1144
- return function clocked_outcome(raw_payload, context) {
1145
- return outcome(raw_payload, Date.now(), context);
1146
- };
1147
- }
1148
- var READ_ONLY_TOOLS = /* @__PURE__ */ new Set(["Read", "Glob", "Grep"]);
1149
- var SYNC_GUARDS = [
1150
- { outcome: authority_outcome, reads: false },
1151
- { outcome: clocked(batch_outcome), reads: true },
1152
- { outcome: clocked(investigation_outcome), reads: true },
1153
- { outcome: clocked(duplicate_read_outcome), reads: true },
1154
- { outcome: clocked(large_read_outcome), reads: true },
1155
- { outcome: lane_plan_outcome, reads: false }
1156
- ];
1157
- function guard_outcome(raw_payload, context) {
1158
- const is_read = READ_ONLY_TOOLS.has(guarded_call(raw_payload)?.name ?? "");
1159
- const outcomes = SYNC_GUARDS.filter((guard) => guard.reads || !is_read).map(
1160
- (guard) => guard.outcome(raw_payload, context)
1161
- );
1162
- return combine_outcomes(
1163
- outcomes,
1164
- delivered_rules.delivery(raw_payload, Date.now(), context),
1165
- hook_demoted.rules(context.env)
1166
- );
1167
- }
1168
- function pretool_outcome(raw_payload, context = hook_context.from_process()) {
1169
- return with_session_notice(guard_outcome(raw_payload, context), raw_payload, context);
1170
- }
1171
- async function mark_phase(outcome, raw_payload, context = hook_context.from_process()) {
1172
- const is_allowed_edit = outcome.reason === void 0 && step_zero_notice.is_runtime_edit(raw_payload, context.cwd);
1173
- if (is_allowed_edit) await lane_phase.mark_implement(context.cwd, context.env);
1174
- }
1175
- async function async_reason(raw_payload, context) {
1176
- const watcher = await run_watcher_hook.watcher_hook_reason(raw_payload, context);
1177
- const state = run_parent_cut_hook.current_state(context);
1178
- const cut = watcher ?? await run_parent_cut_hook.parent_cut_reason(raw_payload, Date.now(), state);
1179
- const poll = cut ?? await run_poll_hook.safe_poll_reason(raw_payload, context);
1180
- return poll ?? await issue_watch_hook.watch_reason(context);
1181
- }
1182
- async function pretool_outcome_async(raw_payload, context = hook_context.from_process()) {
1183
- const base = guard_outcome(raw_payload, context);
1184
- if (base.reason !== void 0) return base;
1185
- const reason3 = await async_reason(raw_payload, context);
1186
- if (reason3 !== void 0) return { reason: reason3, notice: void 0, fault: void 0 };
1187
- const outcome = with_session_notice(base, raw_payload, context);
1188
- await mark_phase(outcome, raw_payload, context);
1189
- return outcome;
1190
- }
1191
- function rewrite_context(note, outcome) {
1192
- return [note, outcome.notice ?? outcome.fault].filter(Boolean).join("\n\n");
1193
- }
1194
- function foreground_input_of(raw_payload, is_lane_child) {
1195
- const call = guarded_call(raw_payload);
1196
- return call === void 0 ? void 0 : lane_background.foreground_input(call, is_lane_child);
1197
- }
1198
- function foreground_rewrite(outcome, raw_payload, is_lane_child, rewrite) {
1199
- const input = outcome.reason === void 0 ? foreground_input_of(raw_payload, is_lane_child) : void 0;
1200
- if (input === void 0) return void 0;
1201
- const note = [rewrite?.note, lane_background.FOREGROUND_NOTE].filter(Boolean).join("\n\n");
1202
- const envelope_of = rewrite === void 0 ? hook_decision.rewrite_envelope : hook_decision.flow_rewrite_envelope;
1203
- return envelope_of(input, rewrite_context(note, outcome));
1204
- }
1205
- function rule_envelope(outcome, rewrite) {
1206
- if (rewrite === void 0 || outcome.reason !== void 0) return void 0;
1207
- return hook_decision.flow_rewrite_envelope(rewrite.input, rewrite_context(rewrite.note, outcome));
1208
- }
1209
- function emit(raw_payload, outcome, rewrite, context = hook_context.from_process()) {
1210
- const is_lane_child = lane_child_marker.is_child_of.bind(void 0, context.cwd, context.env);
1211
- const envelope = foreground_rewrite(outcome, raw_payload, is_lane_child, rewrite) ?? rule_envelope(outcome, rewrite);
1212
- if (envelope === void 0) hook_decision.emit_outcome(outcome);
1213
- else process.stdout.write(`${envelope}
1214
- `);
1215
- }
1216
- async function record_refusal(judged_payload, outcome, context = hook_context.from_process(), demoted = hook_demoted.rules(context.env)) {
1217
- const refusal5 = outcome.reason ?? hook_demoted.refusal_of(outcome.notice, demoted);
1218
- await hook_ledger.record_reason(HOOK_NAME, refusal5, judged_payload, context);
1219
- if (outcome.reason === void 0) await direct_gh_usage.record(judged_payload, context);
1220
- }
1221
- async function respond(raw_payload, context = hook_context.from_process()) {
1222
- const rewrite = rule_rewrite.rewrite(raw_payload, context);
1223
- const judged = rewrite?.payload ?? raw_payload;
1224
- bash_revert.stamp(judged, context.cwd);
1225
- const outcome = await pretool_outcome_async(judged, context);
1226
- emit(judged, outcome, rewrite, context);
1227
- await record_refusal(judged, outcome, context);
1228
- }
1229
- var pretool_guard = {
1230
- combine_outcomes,
1231
- emit,
1232
- foreground_rewrite,
1233
- mark_phase,
1234
- pretool_outcome,
1235
- record_refusal,
1236
- respond
1237
- };
1238
-
1239
- export {
1240
- pretool_guard
1241
- };