@joshuafolkken/kit 1.3044.0 → 1.3092.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 (1236) hide show
  1. package/.claude/skills/workflow-commands/backlogrun-steps.md +1 -1
  2. package/.claude/skills/workflow-commands/fullrun-steps.md +3 -3
  3. package/.claude/skills/workflow-commands/halfrun.md +3 -2
  4. package/.claude/skills/workflow-commands/kickoff.md +9 -2
  5. package/.claude/skills/workflow-commands/prerequisite.md +2 -0
  6. package/.claude/skills/workflow-commands/retrospective.md +2 -1
  7. package/.claude/skills/workflow-commands/split-assessment.md +4 -0
  8. package/.github/workflows/ci.yml +0 -20
  9. package/.github/workflows/pr-classification.yml +0 -5
  10. package/.github/workflows/publish.yml +0 -1
  11. package/.github/workflows/sonar-qube.yml +0 -5
  12. package/README.md +2 -0
  13. package/SECURITY.md +2 -1
  14. package/dist/.inputs-verified.json +1 -1
  15. package/dist/commands/adopt.js +29 -20
  16. package/dist/commands/auto-ok-judge-cli.js +43 -33
  17. package/dist/commands/auto-ok-main.js +73 -74
  18. package/dist/commands/backlog-budget-main.js +5 -6
  19. package/dist/commands/backlog-drive-cli.js +286 -305
  20. package/dist/commands/backlog-next-main.js +111 -108
  21. package/dist/commands/backlog-offer-main.js +148 -112
  22. package/dist/commands/backlog-plan-cli.js +123 -120
  23. package/dist/commands/backlog-triage-cli.js +131 -128
  24. package/dist/commands/backlogrun-cli.js +273 -264
  25. package/dist/commands/behavior-cli.js +23 -26
  26. package/dist/commands/bytes-command.js +56 -59
  27. package/dist/commands/cases-cli.js +4 -5
  28. package/dist/commands/check-commit-message-main.js +3 -4
  29. package/dist/commands/check-related.js +125 -119
  30. package/dist/commands/chunk-26JL4UU4.js +365 -0
  31. package/dist/commands/chunk-2BIVHPCA.js +85 -0
  32. package/dist/commands/chunk-2CKJODCK.js +245 -0
  33. package/dist/commands/chunk-2E6PSONB.js +46 -0
  34. package/dist/commands/chunk-2GA4775H.js +77 -0
  35. package/dist/commands/chunk-2O64H5UJ.js +462 -0
  36. package/dist/commands/chunk-2OEXY4GM.js +252 -0
  37. package/dist/commands/chunk-2OMIHPPE.js +51 -0
  38. package/dist/commands/chunk-2ONSHOAY.js +46 -0
  39. package/dist/commands/chunk-2Q7MGFYB.js +1208 -0
  40. package/dist/commands/chunk-2SA3W4JF.js +41 -0
  41. package/dist/commands/chunk-2VY7CJ2R.js +212 -0
  42. package/dist/commands/chunk-2WRDAQPJ.js +74 -0
  43. package/dist/commands/chunk-2XLR7R6E.js +541 -0
  44. package/dist/commands/chunk-2XZF3YFY.js +47 -0
  45. package/dist/commands/chunk-33TAOZUE.js +29 -0
  46. package/dist/commands/chunk-374XGAWD.js +158 -0
  47. package/dist/commands/chunk-3CJNQU7P.js +179 -0
  48. package/dist/commands/chunk-3D5T6KMW.js +59 -0
  49. package/dist/commands/chunk-3EW5LTN3.js +114 -0
  50. package/dist/commands/chunk-3F3RNIG2.js +128 -0
  51. package/dist/commands/chunk-3FLTEJZY.js +74 -0
  52. package/dist/commands/chunk-3JWPTRNI.js +60 -0
  53. package/dist/commands/chunk-3MQTOUXT.js +94 -0
  54. package/dist/commands/chunk-3PCUERXE.js +19 -0
  55. package/dist/commands/chunk-3U6A5WON.js +173 -0
  56. package/dist/commands/chunk-3YT3RCSI.js +140 -0
  57. package/dist/commands/chunk-43DU7DYZ.js +540 -0
  58. package/dist/commands/chunk-43H725LG.js +132 -0
  59. package/dist/commands/chunk-46STCE6Q.js +48 -0
  60. package/dist/commands/chunk-46WEC6HZ.js +82 -0
  61. package/dist/commands/chunk-47J4KOZP.js +46 -0
  62. package/dist/commands/chunk-47W7PF4T.js +22 -0
  63. package/dist/commands/chunk-4F4KARQN.js +229 -0
  64. package/dist/commands/chunk-4GUGC4IW.js +338 -0
  65. package/dist/commands/chunk-4HB7NWXP.js +263 -0
  66. package/dist/commands/chunk-4HOTJAO6.js +89 -0
  67. package/dist/commands/chunk-4I5AA4P5.js +237 -0
  68. package/dist/commands/chunk-4IDINPBE.js +525 -0
  69. package/dist/commands/chunk-4K7KLR7L.js +69 -0
  70. package/dist/commands/chunk-4MGTNY2L.js +347 -0
  71. package/dist/commands/chunk-4NSIW3UB.js +104 -0
  72. package/dist/commands/chunk-4YTKV6WV.js +37 -0
  73. package/dist/commands/chunk-5ARNFMQK.js +1263 -0
  74. package/dist/commands/chunk-5AZTSESD.js +114 -0
  75. package/dist/commands/chunk-5FUI2MLY.js +89 -0
  76. package/dist/commands/chunk-5GI5GLC4.js +214 -0
  77. package/dist/commands/chunk-5IHEBIPD.js +333 -0
  78. package/dist/commands/chunk-5KAW5GPF.js +44 -0
  79. package/dist/commands/chunk-5KSJEWXR.js +77 -0
  80. package/dist/commands/chunk-5OF2B4BF.js +35 -0
  81. package/dist/commands/chunk-5PLJ7R3D.js +126 -0
  82. package/dist/commands/chunk-5PPWXOCF.js +64 -0
  83. package/dist/commands/chunk-5VQCL33M.js +46 -0
  84. package/dist/commands/chunk-5Y7FOJLX.js +186 -0
  85. package/dist/commands/chunk-5YTEMF4O.js +110 -0
  86. package/dist/commands/chunk-62NYXZCC.js +241 -0
  87. package/dist/commands/chunk-6KUA7MRG.js +64 -0
  88. package/dist/commands/chunk-6LDEZFYR.js +88 -0
  89. package/dist/commands/chunk-6NXIZMIK.js +122 -0
  90. package/dist/commands/chunk-6O45F6YI.js +86 -0
  91. package/dist/commands/chunk-6OHJBQDE.js +184 -0
  92. package/dist/commands/chunk-6WDCCG3M.js +1249 -0
  93. package/dist/commands/chunk-6ZHXEQAI.js +715 -0
  94. package/dist/commands/chunk-736NECRD.js +16 -0
  95. package/dist/commands/chunk-77LEKVEE.js +32 -0
  96. package/dist/commands/chunk-7CX5VYOL.js +50 -0
  97. package/dist/commands/chunk-7DGHFBU7.js +247 -0
  98. package/dist/commands/chunk-7E43YW53.js +128 -0
  99. package/dist/commands/chunk-7EAYFMDN.js +235 -0
  100. package/dist/commands/chunk-7HP3FQGQ.js +51 -0
  101. package/dist/commands/chunk-7JOOMFDI.js +155 -0
  102. package/dist/commands/chunk-7OEBSPPU.js +321 -0
  103. package/dist/commands/chunk-A3JYZWBS.js +803 -0
  104. package/dist/commands/chunk-A3LCN4KA.js +84 -0
  105. package/dist/commands/chunk-ABLXBG6C.js +98 -0
  106. package/dist/commands/chunk-AN7BFVHU.js +244 -0
  107. package/dist/commands/chunk-AQCVEQSM.js +99 -0
  108. package/dist/commands/chunk-AT46EY7H.js +393 -0
  109. package/dist/commands/chunk-AU563VKH.js +75 -0
  110. package/dist/commands/chunk-AUTD5FV2.js +1077 -0
  111. package/dist/commands/chunk-AV26CMY6.js +304 -0
  112. package/dist/commands/chunk-B2PJEV3S.js +246 -0
  113. package/dist/commands/chunk-B545ENGY.js +214 -0
  114. package/dist/commands/chunk-B5HP6T4L.js +170 -0
  115. package/dist/commands/chunk-B5XYAWNN.js +37 -0
  116. package/dist/commands/chunk-B73IIRMS.js +207 -0
  117. package/dist/commands/chunk-BAEDHPXW.js +160 -0
  118. package/dist/commands/chunk-BDSG6JKH.js +977 -0
  119. package/dist/commands/chunk-BE6F4YK2.js +769 -0
  120. package/dist/commands/chunk-BFKTUD3V.js +33 -0
  121. package/dist/commands/chunk-BLRXHK2V.js +17 -0
  122. package/dist/commands/chunk-BLUAO4QW.js +173 -0
  123. package/dist/commands/chunk-BML6MEUB.js +326 -0
  124. package/dist/commands/chunk-BPDNGJXY.js +63 -0
  125. package/dist/commands/chunk-BQLKWGGC.js +118 -0
  126. package/dist/commands/chunk-BRMJVCP7.js +167 -0
  127. package/dist/commands/chunk-BRWR5YKU.js +268 -0
  128. package/dist/commands/chunk-BUZAYEBD.js +319 -0
  129. package/dist/commands/chunk-BVUL57IX.js +139 -0
  130. package/dist/commands/chunk-CC4BIGCA.js +20 -0
  131. package/dist/commands/chunk-CCHJZEF5.js +4220 -0
  132. package/dist/commands/chunk-CDK7QZWG.js +44 -0
  133. package/dist/commands/chunk-CDYFUCDC.js +72 -0
  134. package/dist/commands/chunk-CEADAQIL.js +170 -0
  135. package/dist/commands/chunk-CNL3SLM6.js +116 -0
  136. package/dist/commands/chunk-CNQ7D2GZ.js +104 -0
  137. package/dist/commands/chunk-CTXJVMHW.js +48 -0
  138. package/dist/commands/chunk-CUWT6UQO.js +13 -0
  139. package/dist/commands/chunk-CVRDJCOE.js +125 -0
  140. package/dist/commands/chunk-D6CF5QGM.js +80 -0
  141. package/dist/commands/chunk-DACNQAXC.js +20 -0
  142. package/dist/commands/chunk-DDOS32JU.js +74 -0
  143. package/dist/commands/chunk-DDZVMXZD.js +481 -0
  144. package/dist/commands/chunk-DF6QD4AF.js +52 -0
  145. package/dist/commands/chunk-DFEXNB44.js +159 -0
  146. package/dist/commands/chunk-DHDKG5HZ.js +151 -0
  147. package/dist/commands/chunk-DHJRFBKO.js +223 -0
  148. package/dist/commands/chunk-DKDWOE3C.js +78 -0
  149. package/dist/commands/chunk-DKO5VTEH.js +65 -0
  150. package/dist/commands/chunk-DLHH3MLS.js +85 -0
  151. package/dist/commands/chunk-DOYNK72G.js +81 -0
  152. package/dist/commands/chunk-DS53UUDH.js +679 -0
  153. package/dist/commands/chunk-DUA4E4ES.js +230 -0
  154. package/dist/commands/chunk-DURHGVRC.js +33 -0
  155. package/dist/commands/chunk-DVCMQMRN.js +191 -0
  156. package/dist/commands/chunk-E3YKMCCJ.js +108 -0
  157. package/dist/commands/chunk-E4F2RTKC.js +272 -0
  158. package/dist/commands/chunk-E4PFCTXN.js +127 -0
  159. package/dist/commands/chunk-EAOTR2WL.js +24 -0
  160. package/dist/commands/chunk-EE4VOZJP.js +167 -0
  161. package/dist/commands/chunk-EHVEWJQ4.js +33 -0
  162. package/dist/commands/chunk-EMFSPPMH.js +98 -0
  163. package/dist/commands/chunk-EN65ZS3S.js +73 -0
  164. package/dist/commands/chunk-ES42XPAD.js +123 -0
  165. package/dist/commands/chunk-ESUY7KTZ.js +137 -0
  166. package/dist/commands/chunk-ET6IRQ3L.js +330 -0
  167. package/dist/commands/chunk-EWCUT7U2.js +1314 -0
  168. package/dist/commands/chunk-EWXXEGXL.js +149 -0
  169. package/dist/commands/chunk-EZYW54OQ.js +7569 -0
  170. package/dist/commands/chunk-F2RDEF2J.js +205 -0
  171. package/dist/commands/chunk-F2U46HAE.js +52 -0
  172. package/dist/commands/chunk-F2VYWU6Z.js +653 -0
  173. package/dist/commands/chunk-F4SGOTUF.js +36 -0
  174. package/dist/commands/chunk-F4YMLVWN.js +183 -0
  175. package/dist/commands/chunk-F5N2QIFD.js +213 -0
  176. package/dist/commands/chunk-F7B4ESZE.js +80 -0
  177. package/dist/commands/chunk-FJM2HWKW.js +299 -0
  178. package/dist/commands/chunk-FJMXUDEY.js +3985 -0
  179. package/dist/commands/chunk-FM7VVAK6.js +426 -0
  180. package/dist/commands/chunk-FQWRM5FC.js +67 -0
  181. package/dist/commands/chunk-FT33ZCSB.js +298 -0
  182. package/dist/commands/chunk-G2DNS74C.js +53 -0
  183. package/dist/commands/chunk-G75GWNNY.js +101 -0
  184. package/dist/commands/chunk-GA2YSPFH.js +32 -0
  185. package/dist/commands/chunk-GAVSK6P6.js +230 -0
  186. package/dist/commands/chunk-GB2BRQVL.js +300 -0
  187. package/dist/commands/chunk-GBMZXFFC.js +44 -0
  188. package/dist/commands/chunk-GDP7QXYE.js +76 -0
  189. package/dist/commands/chunk-GGWXF7RJ.js +70 -0
  190. package/dist/commands/chunk-GHOTKHI4.js +30 -0
  191. package/dist/commands/chunk-GMVN6ZP2.js +48 -0
  192. package/dist/commands/chunk-GNTTGRCX.js +133 -0
  193. package/dist/commands/chunk-GOY5JECO.js +130 -0
  194. package/dist/commands/chunk-GVDRRBHZ.js +507 -0
  195. package/dist/commands/chunk-GWTBIGYC.js +550 -0
  196. package/dist/commands/chunk-GZL6ISVM.js +72 -0
  197. package/dist/commands/chunk-HALHQILI.js +51 -0
  198. package/dist/commands/chunk-HAT7AFBF.js +85 -0
  199. package/dist/commands/chunk-HDVSZ6CZ.js +292 -0
  200. package/dist/commands/chunk-HE3GOMR7.js +88 -0
  201. package/dist/commands/chunk-HEFUC4ZW.js +65 -0
  202. package/dist/commands/chunk-HESWKELD.js +60 -0
  203. package/dist/commands/chunk-HNFBEB4L.js +77 -0
  204. package/dist/commands/chunk-HRN73FQJ.js +77 -0
  205. package/dist/commands/chunk-HYE3MBAN.js +113 -0
  206. package/dist/commands/chunk-IAB6LCJL.js +18 -0
  207. package/dist/commands/chunk-IAGENI2U.js +42 -0
  208. package/dist/commands/chunk-ICPVBHIX.js +48 -0
  209. package/dist/commands/chunk-IEKW3ON6.js +161 -0
  210. package/dist/commands/chunk-IOKOHB7P.js +109 -0
  211. package/dist/commands/chunk-IONGJJYM.js +179 -0
  212. package/dist/commands/chunk-IP23WOWP.js +126 -0
  213. package/dist/commands/chunk-IPS7EBE5.js +140 -0
  214. package/dist/commands/chunk-IXZZSST7.js +459 -0
  215. package/dist/commands/chunk-J4XHEOOW.js +156 -0
  216. package/dist/commands/chunk-JDHLHYJJ.js +208 -0
  217. package/dist/commands/chunk-JEYITIWB.js +423 -0
  218. package/dist/commands/chunk-JGX7JIW4.js +126 -0
  219. package/dist/commands/chunk-JHIGDFBS.js +59 -0
  220. package/dist/commands/chunk-JI2EGXZX.js +53 -0
  221. package/dist/commands/chunk-JNV3VRK2.js +47 -0
  222. package/dist/commands/chunk-JPMAW2VZ.js +91 -0
  223. package/dist/commands/chunk-JQEY6KDP.js +90 -0
  224. package/dist/commands/chunk-JSJDIEGZ.js +88 -0
  225. package/dist/commands/chunk-JT5ICRFF.js +44 -0
  226. package/dist/commands/chunk-JUCJ4Y42.js +77 -0
  227. package/dist/commands/chunk-K3OZBV3L.js +49 -0
  228. package/dist/commands/chunk-K5H3CLZZ.js +430 -0
  229. package/dist/commands/chunk-K6P5PISC.js +114 -0
  230. package/dist/commands/chunk-KD3SEAMV.js +402 -0
  231. package/dist/commands/chunk-KDCHY7XO.js +88 -0
  232. package/dist/commands/chunk-KDGX3JTV.js +51 -0
  233. package/dist/commands/chunk-KGSEWOKI.js +353 -0
  234. package/dist/commands/chunk-KHGDZQRG.js +271 -0
  235. package/dist/commands/chunk-KIS7JFNP.js +217 -0
  236. package/dist/commands/chunk-KKHD3C2P.js +114 -0
  237. package/dist/commands/chunk-KKIIY5I5.js +67 -0
  238. package/dist/commands/chunk-KN46UC77.js +114 -0
  239. package/dist/commands/chunk-KP2BVAS5.js +125 -0
  240. package/dist/commands/chunk-KPAJBJXG.js +63 -0
  241. package/dist/commands/chunk-KPMAJP6D.js +145 -0
  242. package/dist/commands/chunk-KR6WUAJM.js +122 -0
  243. package/dist/commands/chunk-KWLNK2NJ.js +391 -0
  244. package/dist/commands/chunk-L2CLCNXW.js +144 -0
  245. package/dist/commands/chunk-L7MDU6D7.js +155 -0
  246. package/dist/commands/chunk-L7VD4MLF.js +78 -0
  247. package/dist/commands/chunk-LBMAJDGN.js +124 -0
  248. package/dist/commands/chunk-LBVYFW3I.js +38 -0
  249. package/dist/commands/chunk-LE3M42CF.js +350 -0
  250. package/dist/commands/chunk-LIPUSINQ.js +140 -0
  251. package/dist/commands/chunk-LJVZWE3A.js +1885 -0
  252. package/dist/commands/chunk-LKSSQVDA.js +49 -0
  253. package/dist/commands/chunk-LL6G34MF.js +93 -0
  254. package/dist/commands/chunk-LNQOL2CL.js +321 -0
  255. package/dist/commands/chunk-LS7P324N.js +72 -0
  256. package/dist/commands/chunk-LU5EOGFQ.js +50 -0
  257. package/dist/commands/chunk-LX2ENXHZ.js +197 -0
  258. package/dist/commands/chunk-M32UPB2D.js +110 -0
  259. package/dist/commands/chunk-M3UGRNNB.js +103 -0
  260. package/dist/commands/chunk-M4WG74Q7.js +260 -0
  261. package/dist/commands/chunk-M5HA2ZCG.js +105 -0
  262. package/dist/commands/chunk-MDGPJOLK.js +351 -0
  263. package/dist/commands/chunk-MDKRTUE4.js +288 -0
  264. package/dist/commands/chunk-MFZVRWRS.js +34 -0
  265. package/dist/commands/chunk-MHXIJKGP.js +304 -0
  266. package/dist/commands/chunk-MK4CARBI.js +90 -0
  267. package/dist/commands/chunk-MLJDW7YN.js +64 -0
  268. package/dist/commands/chunk-MNLHYAJO.js +80 -0
  269. package/dist/commands/chunk-MOD3FG4V.js +419 -0
  270. package/dist/commands/chunk-MRAEJLXL.js +83 -0
  271. package/dist/commands/chunk-MRW2WYJS.js +68 -0
  272. package/dist/commands/chunk-MXPCEZL5.js +23 -0
  273. package/dist/commands/chunk-N2XH7QBY.js +103 -0
  274. package/dist/commands/chunk-N2ZF6T4E.js +332 -0
  275. package/dist/commands/chunk-N36NZMAL.js +79 -0
  276. package/dist/commands/chunk-N4EMFHQ6.js +114 -0
  277. package/dist/commands/chunk-N4P64UIH.js +211 -0
  278. package/dist/commands/chunk-NABSSY4P.js +204 -0
  279. package/dist/commands/chunk-NDQIJBRQ.js +100 -0
  280. package/dist/commands/chunk-NDR4PCVG.js +29 -0
  281. package/dist/commands/chunk-NEOCCN6D.js +302 -0
  282. package/dist/commands/chunk-NFKWFOFM.js +45 -0
  283. package/dist/commands/chunk-NFUPJBBG.js +516 -0
  284. package/dist/commands/chunk-NHEBKL7X.js +170 -0
  285. package/dist/commands/chunk-NHTEC5U4.js +99 -0
  286. package/dist/commands/chunk-NOSG3RUP.js +84 -0
  287. package/dist/commands/chunk-NOSODWWK.js +1132 -0
  288. package/dist/commands/chunk-NPXXYG6Z.js +580 -0
  289. package/dist/commands/chunk-NR2JDBPV.js +75 -0
  290. package/dist/commands/chunk-NRULNBYI.js +1153 -0
  291. package/dist/commands/chunk-NTGF5N3N.js +110 -0
  292. package/dist/commands/chunk-NTIVNQKF.js +73 -0
  293. package/dist/commands/chunk-NUCFIYZL.js +119 -0
  294. package/dist/commands/chunk-NVMV7BYX.js +88 -0
  295. package/dist/commands/chunk-NYWPTYGL.js +169 -0
  296. package/dist/commands/chunk-NZ45KOLL.js +104 -0
  297. package/dist/commands/chunk-O45BX4EL.js +39 -0
  298. package/dist/commands/chunk-O46T4ANI.js +229 -0
  299. package/dist/commands/chunk-O5JGV7NA.js +245 -0
  300. package/dist/commands/chunk-O7ESC4HL.js +566 -0
  301. package/dist/commands/chunk-OBYLXHCH.js +86 -0
  302. package/dist/commands/chunk-OKN63ZH5.js +109 -0
  303. package/dist/commands/chunk-ON4IKRGS.js +469 -0
  304. package/dist/commands/chunk-OT74RSQO.js +82 -0
  305. package/dist/commands/chunk-OVCVINYW.js +143 -0
  306. package/dist/commands/chunk-OZKLVTYI.js +342 -0
  307. package/dist/commands/chunk-P3LJ2Q4N.js +555 -0
  308. package/dist/commands/chunk-P43GWYR6.js +185 -0
  309. package/dist/commands/chunk-P6ASP2DY.js +132 -0
  310. package/dist/commands/chunk-PBAEJ5PT.js +38 -0
  311. package/dist/commands/chunk-PCZROH3R.js +100 -0
  312. package/dist/commands/chunk-PF3PMT2Q.js +46 -0
  313. package/dist/commands/chunk-PILH72AV.js +170 -0
  314. package/dist/commands/chunk-PJYTUUTH.js +34 -0
  315. package/dist/commands/chunk-PKXTISWR.js +58 -0
  316. package/dist/commands/chunk-PSGLUBSB.js +74 -0
  317. package/dist/commands/chunk-PUQA7F6Y.js +186 -0
  318. package/dist/commands/chunk-PVRDJU2B.js +126 -0
  319. package/dist/commands/chunk-Q3HM2BEH.js +45 -0
  320. package/dist/commands/chunk-Q42NF2TL.js +47 -0
  321. package/dist/commands/chunk-Q4ULMZAS.js +106 -0
  322. package/dist/commands/chunk-QCRUPRQ2.js +207 -0
  323. package/dist/commands/chunk-QFIKPGMC.js +280 -0
  324. package/dist/commands/chunk-QSBYULSS.js +100 -0
  325. package/dist/commands/chunk-QSJCZATC.js +18 -0
  326. package/dist/commands/chunk-QTJPCXEW.js +23 -0
  327. package/dist/commands/chunk-QTQAI2M2.js +179 -0
  328. package/dist/commands/chunk-QTVVFV4Q.js +127 -0
  329. package/dist/commands/chunk-QX2EMUXV.js +102 -0
  330. package/dist/commands/chunk-QXBOECGL.js +272 -0
  331. package/dist/commands/chunk-QXCG3SG4.js +88 -0
  332. package/dist/commands/chunk-QZVMGAWV.js +307 -0
  333. package/dist/commands/chunk-R36VZIKU.js +53 -0
  334. package/dist/commands/chunk-R3F7F3TX.js +94 -0
  335. package/dist/commands/chunk-R5AABJZJ.js +1062 -0
  336. package/dist/commands/chunk-R7PYR4HW.js +389 -0
  337. package/dist/commands/chunk-RDUFVQVJ.js +997 -0
  338. package/dist/commands/chunk-RESNXNDG.js +54 -0
  339. package/dist/commands/chunk-RFIOZTXY.js +305 -0
  340. package/dist/commands/chunk-RFWB2KAV.js +102 -0
  341. package/dist/commands/chunk-RFXON3FK.js +25 -0
  342. package/dist/commands/chunk-RGEB5L37.js +66 -0
  343. package/dist/commands/chunk-RGRLLF2J.js +119 -0
  344. package/dist/commands/chunk-RLRIMYXM.js +178 -0
  345. package/dist/commands/chunk-RNB3DQOZ.js +70 -0
  346. package/dist/commands/chunk-RO4QEZJO.js +172 -0
  347. package/dist/commands/chunk-RS5HBJY6.js +161 -0
  348. package/dist/commands/chunk-RV7EQIE4.js +202 -0
  349. package/dist/commands/chunk-RWPCK3CO.js +41 -0
  350. package/dist/commands/chunk-RWYSVFIA.js +250 -0
  351. package/dist/commands/chunk-RYKK75YT.js +289 -0
  352. package/dist/commands/chunk-S4JE63QE.js +704 -0
  353. package/dist/commands/chunk-S4OZJIXD.js +134 -0
  354. package/dist/commands/chunk-SD4EX75H.js +177 -0
  355. package/dist/commands/chunk-SJITWFNY.js +480 -0
  356. package/dist/commands/chunk-SKGDMAIA.js +33 -0
  357. package/dist/commands/chunk-SNSZ25XZ.js +393 -0
  358. package/dist/commands/chunk-SQZZHK6X.js +119 -0
  359. package/dist/commands/chunk-SRTEE34O.js +93 -0
  360. package/dist/commands/chunk-SYTCTLMD.js +285 -0
  361. package/dist/commands/chunk-T6JUDQMW.js +181 -0
  362. package/dist/commands/chunk-T6OUNP7E.js +426 -0
  363. package/dist/commands/chunk-TEXUEBGE.js +208 -0
  364. package/dist/commands/chunk-TFDVTU6O.js +910 -0
  365. package/dist/commands/chunk-TFYYXETQ.js +472 -0
  366. package/dist/commands/chunk-TMFKVJUW.js +121 -0
  367. package/dist/commands/chunk-TNJU4CXD.js +32 -0
  368. package/dist/commands/chunk-TRHWBUWE.js +61 -0
  369. package/dist/commands/chunk-TROCFVCU.js +45 -0
  370. package/dist/commands/chunk-TTTZZN7F.js +269 -0
  371. package/dist/commands/chunk-TUBBESHU.js +85 -0
  372. package/dist/commands/chunk-TVZIFZZN.js +62 -0
  373. package/dist/commands/chunk-TXRWAL63.js +144 -0
  374. package/dist/commands/chunk-U46YTYJQ.js +92 -0
  375. package/dist/commands/chunk-U5EO4QEV.js +48 -0
  376. package/dist/commands/chunk-UCO333EX.js +47 -0
  377. package/dist/commands/chunk-UIXQ4IYT.js +445 -0
  378. package/dist/commands/chunk-UJGNYPMD.js +716 -0
  379. package/dist/commands/chunk-URZ4RDC4.js +220 -0
  380. package/dist/commands/chunk-UUH3DE77.js +57 -0
  381. package/dist/commands/chunk-UVY5ODCM.js +60 -0
  382. package/dist/commands/chunk-UWMB6EOU.js +45 -0
  383. package/dist/commands/chunk-UX3HCPLX.js +449 -0
  384. package/dist/commands/chunk-UY62WJV6.js +120 -0
  385. package/dist/commands/chunk-V2T5DP3B.js +224 -0
  386. package/dist/commands/chunk-VAHQ4AFM.js +585 -0
  387. package/dist/commands/chunk-VCWNMRH7.js +71 -0
  388. package/dist/commands/chunk-VHLDQ3PH.js +30 -0
  389. package/dist/commands/chunk-VL5I2IOD.js +332 -0
  390. package/dist/commands/chunk-VLN6TSPJ.js +139 -0
  391. package/dist/commands/chunk-VMG3QB6C.js +81 -0
  392. package/dist/commands/chunk-VO25PMGS.js +58 -0
  393. package/dist/commands/chunk-VTLWODJ2.js +133 -0
  394. package/dist/commands/chunk-VXE3V3OC.js +335 -0
  395. package/dist/commands/chunk-VY7ZJMDT.js +469 -0
  396. package/dist/commands/chunk-W3MDLQZF.js +137 -0
  397. package/dist/commands/chunk-W4BR6QNU.js +1241 -0
  398. package/dist/commands/chunk-WCYRNNKF.js +76 -0
  399. package/dist/commands/chunk-WEUUJIWQ.js +84 -0
  400. package/dist/commands/chunk-WNBJK6QE.js +84 -0
  401. package/dist/commands/chunk-WR5PKCQW.js +61 -0
  402. package/dist/commands/chunk-WR73HTRG.js +121 -0
  403. package/dist/commands/chunk-WRNMUQTD.js +95 -0
  404. package/dist/commands/chunk-WROJTXWZ.js +138 -0
  405. package/dist/commands/chunk-WTIPX5NG.js +43 -0
  406. package/dist/commands/chunk-WWLCQREY.js +225 -0
  407. package/dist/commands/chunk-WXLW7S4M.js +71 -0
  408. package/dist/commands/chunk-WXXLJQBO.js +67 -0
  409. package/dist/commands/chunk-X4LYH6Q4.js +56 -0
  410. package/dist/commands/chunk-XAEL24EG.js +66 -0
  411. package/dist/commands/chunk-XCCT6GKA.js +74 -0
  412. package/dist/commands/chunk-XDR2BRDL.js +216 -0
  413. package/dist/commands/chunk-XRQMVAB4.js +85 -0
  414. package/dist/commands/chunk-XSKJAG72.js +91 -0
  415. package/dist/commands/chunk-XTJA34ND.js +492 -0
  416. package/dist/commands/chunk-XUXCFPDK.js +218 -0
  417. package/dist/commands/chunk-XXPDFJRI.js +48 -0
  418. package/dist/commands/chunk-Y6OGDG5I.js +49 -0
  419. package/dist/commands/chunk-YEAE46TS.js +98 -0
  420. package/dist/commands/chunk-YEQFAEVW.js +112 -0
  421. package/dist/commands/chunk-YJZAD4Z5.js +103 -0
  422. package/dist/commands/chunk-YMAEYY5R.js +278 -0
  423. package/dist/commands/chunk-YNCF66RK.js +1052 -0
  424. package/dist/commands/chunk-YOA25SII.js +210 -0
  425. package/dist/commands/chunk-YOZTZMAT.js +38 -0
  426. package/dist/commands/chunk-YSGRHVZG.js +897 -0
  427. package/dist/commands/chunk-YSLGWRQN.js +646 -0
  428. package/dist/commands/chunk-YTXCLGGL.js +168 -0
  429. package/dist/commands/chunk-YVHJN2HS.js +74 -0
  430. package/dist/commands/chunk-YY7XVVSB.js +43 -0
  431. package/dist/commands/chunk-Z5GZV4DV.js +16 -0
  432. package/dist/commands/chunk-Z6QLFPFB.js +907 -0
  433. package/dist/commands/chunk-ZB52ZIEA.js +1629 -0
  434. package/dist/commands/chunk-ZCD4AV2P.js +73 -0
  435. package/dist/commands/chunk-ZCHZU6NX.js +799 -0
  436. package/dist/commands/chunk-ZEH2B3DF.js +239 -0
  437. package/dist/commands/chunk-ZEUKX3RZ.js +245 -0
  438. package/dist/commands/chunk-ZGANVZCA.js +92 -0
  439. package/dist/commands/chunk-ZGBXUY7R.js +198 -0
  440. package/dist/commands/chunk-ZGEUWHFF.js +297 -0
  441. package/dist/commands/chunk-ZHSNQ2F7.js +161 -0
  442. package/dist/commands/chunk-ZIIUBGON.js +773 -0
  443. package/dist/commands/chunk-ZJ5S4VFD.js +258 -0
  444. package/dist/commands/chunk-ZNIIA275.js +59 -0
  445. package/dist/commands/chunk-ZV6BZZJ2.js +271 -0
  446. package/dist/commands/ci-timing-cli.js +22 -3
  447. package/dist/commands/code-symbol-cli.js +21 -7
  448. package/dist/commands/codex-hook-adapter.js +124 -119
  449. package/dist/commands/command-derive.js +9 -11
  450. package/dist/commands/cost-audit-main.js +118 -119
  451. package/dist/commands/cost-main.js +5 -7
  452. package/dist/commands/cspell-cached.js +55 -57
  453. package/dist/commands/defect-origin-main.js +42 -37
  454. package/dist/commands/defect-report-main.js +33 -25
  455. package/dist/commands/diff-summary-cli.js +3 -4
  456. package/dist/commands/disposition-cli.js +117 -118
  457. package/dist/commands/doctor.js +24 -11
  458. package/dist/commands/document-read-cli.js +50 -53
  459. package/dist/commands/document-section-main.js +50 -53
  460. package/dist/commands/dogfood-commit-cli.js +19 -4
  461. package/dist/commands/effect-audit-cli.js +40 -41
  462. package/dist/commands/epic-audit-main.js +88 -86
  463. package/dist/commands/epic-bundle-main.js +122 -119
  464. package/dist/commands/epic-check.js +37 -31
  465. package/dist/commands/epic-main.js +129 -126
  466. package/dist/commands/epic-next-main.js +85 -83
  467. package/dist/commands/eval-run.js +6 -7
  468. package/dist/commands/format-edited-cli.js +71 -46
  469. package/dist/commands/format.js +41 -56
  470. package/dist/commands/fresh-machine-cli.js +24 -7
  471. package/dist/commands/gh-usage-cli.js +22 -22
  472. package/dist/commands/git-followup-workflow.js +158 -158
  473. package/dist/commands/git-gh-checks-failed-main.js +23 -15
  474. package/dist/commands/git-workflow.js +52 -53
  475. package/dist/commands/github-release-cli.js +3 -3
  476. package/dist/commands/hook-ledger-cli.js +93 -94
  477. package/dist/commands/init-main.js +40 -40
  478. package/dist/commands/inputs.json +2020 -1980
  479. package/dist/commands/issue-ack-cli.js +28 -21
  480. package/dist/commands/issue-already-done-cli.js +107 -110
  481. package/dist/commands/issue-body-cli.js +71 -73
  482. package/dist/commands/issue-cite-main.js +35 -28
  483. package/dist/commands/issue-comment-main.js +36 -30
  484. package/dist/commands/issue-consolidate-cli.js +54 -54
  485. package/dist/commands/issue-file-main.js +274 -148
  486. package/dist/commands/issue-fold-existing-cli.js +126 -123
  487. package/dist/commands/issue-fold-main.js +57 -60
  488. package/dist/commands/issue-lint-main.js +59 -61
  489. package/dist/commands/issue-measured-cli.js +108 -110
  490. package/dist/commands/issue-plan-cli.js +156 -155
  491. package/dist/commands/issue-premise-unmet-cli.js +111 -113
  492. package/dist/commands/issue-priority-cli.js +38 -32
  493. package/dist/commands/issue-read-main.js +38 -33
  494. package/dist/commands/issue-release-class-cli.js +37 -31
  495. package/dist/commands/issue-release-main.js +35 -29
  496. package/dist/commands/issue-scout-main.js +123 -120
  497. package/dist/commands/issue-spill-main.js +149 -144
  498. package/dist/commands/issue-state-main.js +36 -31
  499. package/dist/commands/issue-tick-cli.js +37 -31
  500. package/dist/commands/josh-completion.js +21 -24
  501. package/dist/commands/lane-adopt-cli.js +53 -55
  502. package/dist/commands/lane-breakdown-cli.js +193 -172
  503. package/dist/commands/lane-cli.js +199 -180
  504. package/dist/commands/lane-launch-main.js +106 -56
  505. package/dist/commands/lane-limit-cli.js +119 -116
  506. package/dist/commands/lane-measure-cli.js +408 -245
  507. package/dist/commands/lane-pause-cli.js +51 -54
  508. package/dist/commands/lane-plan-cli.js +148 -147
  509. package/dist/commands/lane-resolve-cli.js +48 -50
  510. package/dist/commands/lane-restart-cli.js +185 -168
  511. package/dist/commands/lane-why-cli.js +121 -122
  512. package/dist/commands/lane-withdraw-cli.js +84 -86
  513. package/dist/commands/latest-corepack.js +3 -2
  514. package/dist/commands/latest-if-required-cli.js +12 -15
  515. package/dist/commands/latest-lane-guard-main.js +2 -3
  516. package/dist/commands/latest-scope-main.js +5 -7
  517. package/dist/commands/latest-update.js +3 -2
  518. package/dist/commands/lines-command.js +8 -10
  519. package/dist/commands/lint-parallel-main.js +65 -67
  520. package/dist/commands/lint-related.js +149 -133
  521. package/dist/commands/lint-rule.js +64 -66
  522. package/dist/commands/lockfile-policy.js +29 -32
  523. package/dist/commands/main-merge-main.js +23 -25
  524. package/dist/commands/main-sync-main.js +23 -24
  525. package/dist/commands/managed-config-scope-cli.js +11 -10
  526. package/dist/commands/measure-rerun-cli.js +31 -26
  527. package/dist/commands/metrics-command.js +97 -100
  528. package/dist/commands/observation-record-cli.js +24 -14
  529. package/dist/commands/observations-flush-cli.js +50 -52
  530. package/dist/commands/overrides-check.js +1 -1
  531. package/dist/commands/package-scout-cli.js +70 -73
  532. package/dist/commands/pin-verify-cli.js +21 -2
  533. package/dist/commands/plan-consumers-main.js +3 -4
  534. package/dist/commands/plan-scaffold-cli.js +145 -146
  535. package/dist/commands/pr-classification-main.js +22 -3
  536. package/dist/commands/pre-commit-lint.js +30 -34
  537. package/dist/commands/pre-commit-type-check.js +55 -55
  538. package/dist/commands/pre-push-unit.js +69 -70
  539. package/dist/commands/pretool-guard-cli.js +111 -113
  540. package/dist/commands/prevent-main-commit.js +2 -3
  541. package/dist/commands/project-profile-cli.js +24 -9
  542. package/dist/commands/propagate.js +31 -23
  543. package/dist/commands/prose-stale-cli.js +48 -42
  544. package/dist/commands/publishable-range-check.js +3 -3
  545. package/dist/commands/read-set-cli.js +58 -61
  546. package/dist/commands/refactor-scan-cli.js +8 -9
  547. package/dist/commands/release-cli.js +57 -57
  548. package/dist/commands/release-scope-main.js +41 -36
  549. package/dist/commands/rename-cli.js +64 -36
  550. package/dist/commands/repo-party-cli.js +3 -4
  551. package/dist/commands/report-template-cli.js +4 -5
  552. package/dist/commands/reserved-run.js +17 -20
  553. package/dist/commands/retrospective-cli.js +126 -127
  554. package/dist/commands/review-attest-cli.js +28 -20
  555. package/dist/commands/review-brief-main.js +184 -167
  556. package/dist/commands/review-findings-cli.js +23 -13
  557. package/dist/commands/review-pair-cli.js +180 -156
  558. package/dist/commands/review-record-main.js +171 -147
  559. package/dist/commands/review-round2-cli.js +89 -91
  560. package/dist/commands/review-stops-cli.js +51 -54
  561. package/dist/commands/review-submit-cli.js +184 -167
  562. package/dist/commands/rule-list.js +78 -80
  563. package/dist/commands/rule-value-cli.js +115 -116
  564. package/dist/commands/ruleset-check-cli.js +23 -6
  565. package/dist/commands/run-add-cli.js +115 -75
  566. package/dist/commands/run-board-main.js +172 -169
  567. package/dist/commands/run-carry-cli.js +182 -174
  568. package/dist/commands/run-chain-cli.js +184 -160
  569. package/dist/commands/run-cut-cli.js +206 -168
  570. package/dist/commands/run-ending-cli.js +51 -54
  571. package/dist/commands/run-entry-cli.js +230 -283
  572. package/dist/commands/run-event-cli.js +18 -21
  573. package/dist/commands/run-handoff-cli.js +75 -78
  574. package/dist/commands/run-handoff-lanes-cli.js +48 -51
  575. package/dist/commands/run-hold-main.js +105 -107
  576. package/dist/commands/run-liveness-cli.js +47 -49
  577. package/dist/commands/run-merge-main.js +159 -151
  578. package/dist/commands/run-next-cli.js +128 -129
  579. package/dist/commands/run-park-cli.js +137 -140
  580. package/dist/commands/run-pause-cli.js +190 -186
  581. package/dist/commands/run-pickup-cli.js +49 -52
  582. package/dist/commands/run-prep-main.js +124 -125
  583. package/dist/commands/run-prime-cli.js +175 -147
  584. package/dist/commands/run-progress-main.js +149 -146
  585. package/dist/commands/run-report-cli.js +60 -60
  586. package/dist/commands/run-review-cli.js +229 -214
  587. package/dist/commands/run-ship-cli.js +258 -252
  588. package/dist/commands/run-ship-evidence-cli.js +71 -72
  589. package/dist/commands/run-ship-lap-W66LTXJJ.js +28 -0
  590. package/dist/commands/run-ship-wait-main.js +83 -85
  591. package/dist/commands/run-split-cli.js +176 -172
  592. package/dist/commands/run-stale-main.js +72 -75
  593. package/dist/commands/run-status-cli.js +44 -44
  594. package/dist/commands/run-step-cli.js +213 -211
  595. package/dist/commands/run-tail-cli.js +23 -18
  596. package/dist/commands/run-tidy-main.js +67 -69
  597. package/dist/commands/run-wake-main.js +206 -187
  598. package/dist/commands/run-watcher-guard-cli.js +63 -66
  599. package/dist/commands/security-audit-main.js +21 -24
  600. package/dist/commands/security-audit-provision-main.js +9 -11
  601. package/dist/commands/selfcheck-cli.js +63 -57
  602. package/dist/commands/session-language-main.js +70 -73
  603. package/dist/commands/sonar-hotspots-cli.js +9 -8
  604. package/dist/commands/sonar-new-code-cli.js +3 -4
  605. package/dist/commands/split-assess-cli.js +55 -58
  606. package/dist/commands/split-child-recover-cli.js +38 -39
  607. package/dist/commands/start.js +64 -64
  608. package/dist/commands/stash-pop-main.js +4 -5
  609. package/dist/commands/stash-push-main.js +7 -9
  610. package/dist/commands/stop-guard.js +180 -176
  611. package/dist/commands/sync-main.js +30 -15
  612. package/dist/commands/telegram-test-main.js +29 -22
  613. package/dist/commands/test-declared.js +29 -15
  614. package/dist/commands/test-e2e-guard.js +54 -54
  615. package/dist/commands/test-pinned-main.js +57 -56
  616. package/dist/commands/test-reach-cli.js +40 -32
  617. package/dist/commands/test-red-main.js +12 -14
  618. package/dist/commands/test-related-Z6YY2GFH.js +113 -0
  619. package/dist/commands/test-related-main.js +89 -89
  620. package/dist/commands/test-unit-guard-main.js +37 -37
  621. package/dist/commands/time-cli.js +54 -57
  622. package/dist/commands/time-density-cli.js +26 -29
  623. package/dist/commands/tree-status-cli.js +6 -8
  624. package/dist/commands/type-check-command.js +26 -11
  625. package/dist/commands/ui-routes-cli.js +5 -6
  626. package/dist/commands/ui-shot-cli.js +1 -1
  627. package/dist/commands/uninstall.js +44 -43
  628. package/dist/commands/unused-members-KVKZDTXD.js +329 -0
  629. package/dist/commands/unused-members-cli.js +27 -12
  630. package/dist/commands/upstream-interrupt-main.js +159 -151
  631. package/dist/commands/verification-gate.js +85 -86
  632. package/dist/commands/version-check.js +25 -8
  633. package/dist/hooks/chunk-3SA3FIQC.js +6869 -0
  634. package/dist/hooks/chunk-46PTTMGE.js +1625 -0
  635. package/dist/hooks/chunk-5NIBRHWG.js +77 -0
  636. package/dist/hooks/chunk-76QKN2K3.js +258 -0
  637. package/dist/hooks/chunk-CHEKMGFP.js +321 -0
  638. package/dist/hooks/chunk-DCILEVDR.js +5173 -0
  639. package/dist/hooks/chunk-HVNGIM5W.js +5092 -0
  640. package/dist/hooks/chunk-L6IZZ2IL.js +11219 -0
  641. package/dist/hooks/chunk-UZXMFOVK.js +9170 -0
  642. package/dist/hooks/chunk-WCJ2GWYJ.js +1381 -0
  643. package/dist/hooks/chunk-YRKS5ZKE.js +1915 -0
  644. package/dist/hooks/codex-hook-adapter.js +11 -12
  645. package/dist/hooks/daemon.js +2140 -1387
  646. package/dist/hooks/format-edited.js +6 -6
  647. package/dist/hooks/inputs.json +521 -497
  648. package/dist/hooks/pretool-guard.js +8 -8
  649. package/dist/hooks/run-ship-lap-P5555IG7.js +8 -0
  650. package/dist/hooks/session-lang.js +9 -7
  651. package/dist/hooks/stop-guard.js +962 -669
  652. package/dist/inputs.json +63 -54
  653. package/dist/josh.js +1029 -577
  654. package/dist/registry-migrate.mjs +33938 -0
  655. package/dist/version/index.js +4251 -175
  656. package/package.json +4 -1
  657. package/prompts/collaboration-workflow/principles.md +4 -1
  658. package/prompts/collaboration-workflow/rule-delivery.md +1 -1
  659. package/scripts/agent/codex-launch-identity.ts +70 -0
  660. package/scripts/auto-ok/auto-ok-cli.ts +2 -0
  661. package/scripts/auto-ok/auto-ok-judge-write.ts +2 -0
  662. package/scripts/auto-ok/auto-ok-judge.ts +3 -1
  663. package/scripts/backlog/backlog-arrival.ts +1 -1
  664. package/scripts/backlog/backlog-budget.ts +5 -2
  665. package/scripts/backlog/backlog-defect-priority.ts +1 -1
  666. package/scripts/backlog/backlog-dispatch-bound.ts +17 -0
  667. package/scripts/backlog/backlog-drain-flush.ts +38 -3
  668. package/scripts/backlog/backlog-drive-cli.ts +1 -1
  669. package/scripts/backlog/backlog-drive-hold.ts +28 -5
  670. package/scripts/backlog/backlog-drive-launch.ts +37 -15
  671. package/scripts/backlog/backlog-drive-listing.ts +39 -23
  672. package/scripts/backlog/backlog-drive-retrospective-unit.ts +3 -2
  673. package/scripts/backlog/backlog-drive-split-unit.ts +1 -0
  674. package/scripts/backlog/backlog-hold-codes.ts +7 -0
  675. package/scripts/backlog/backlog-hold-text.ts +14 -1
  676. package/scripts/backlog/backlog-measure-close.ts +6 -0
  677. package/scripts/backlog/backlog-next-shared.ts +20 -2
  678. package/scripts/backlog/backlog-next.ts +24 -3
  679. package/scripts/backlog/backlog-offer-cli.ts +69 -16
  680. package/scripts/build/build-migration.ts +25 -0
  681. package/scripts/build/build.ts +2 -0
  682. package/scripts/epic/epic-classify.ts +6 -1
  683. package/scripts/epic/epic-live.ts +46 -0
  684. package/scripts/followup/followup-failed-tests.ts +71 -10
  685. package/scripts/followup/followup-job-rerun.ts +2 -2
  686. package/scripts/gate/change-scope-action.integration.test.ts +88 -0
  687. package/scripts/gate/change-scope-action.ts +2 -0
  688. package/scripts/gate/check-related-order.ts +6 -7
  689. package/scripts/gate/check-related.ts +18 -8
  690. package/scripts/gate/core-admission.ts +17 -30
  691. package/scripts/gate/core-budget-poll.ts +183 -0
  692. package/scripts/gate/core-budget-timing.ts +1 -1
  693. package/scripts/gate/core-budget.ts +24 -112
  694. package/scripts/gate/core-wait-record.ts +52 -7
  695. package/scripts/gate/machine-capacity.ts +6 -2
  696. package/scripts/gate/metrics-totals.ts +11 -0
  697. package/scripts/gate/path-glob.test.ts +18 -0
  698. package/scripts/gate/toolchain-inputs.consumer.test.ts +36 -0
  699. package/scripts/gh/fix-gh-packages-logic.ts +22 -15
  700. package/scripts/gh/gh-request-tally.ts +4 -0
  701. package/scripts/hooks/bash-revert.ts +79 -31
  702. package/scripts/hooks/format-edited-file.ts +6 -8
  703. package/scripts/hooks/implementation-shell.ts +3 -2
  704. package/scripts/init/distributed-paths.ts +18 -5
  705. package/scripts/init/init-actions.ts +16 -1
  706. package/scripts/init/init-bootstrap.ts +2 -0
  707. package/scripts/init/init-logic.ts +40 -8
  708. package/scripts/init/init.ts +11 -3
  709. package/scripts/issue/defect-rate-cli.ts +19 -13
  710. package/scripts/issue/issue-file-batch.ts +7 -3
  711. package/scripts/issue/issue-file-cli.ts +19 -6
  712. package/scripts/issue/issue-file-main.ts +6 -1
  713. package/scripts/issue/issue-file-pass.ts +17 -0
  714. package/scripts/issue/issue-file.ts +3 -0
  715. package/scripts/issue/issue-not-before.ts +9 -2
  716. package/scripts/issue/issue-observation-gate.ts +141 -0
  717. package/scripts/issue/issue-observation-prime.ts +83 -0
  718. package/scripts/issue/issue-publication-state.ts +61 -0
  719. package/scripts/issue/issue-publication.ts +144 -0
  720. package/scripts/issue/issue-sample-prime.ts +2 -0
  721. package/scripts/issue/issue-search-count.ts +26 -0
  722. package/scripts/issue/issue-search.ts +128 -3
  723. package/scripts/issue/issue-spill-cli.ts +4 -0
  724. package/scripts/issue/upstream-interrupt-cli.ts +21 -5
  725. package/scripts/josh/josh-commands-ai.ts +1 -1
  726. package/scripts/josh/josh-commands-development.ts +1 -1
  727. package/scripts/josh/josh-commands-issue-write.ts +9 -0
  728. package/scripts/josh/josh-commands-run.ts +6 -1
  729. package/scripts/josh/josh-commands-ship.ts +5 -5
  730. package/scripts/josh/josh-run.ts +5 -2
  731. package/scripts/josh/shared-cache.ts +16 -1
  732. package/scripts/lane/lane-await.ts +15 -0
  733. package/scripts/lane/lane-cli.ts +2 -0
  734. package/scripts/lane/lane-dispatch-dependency.ts +102 -0
  735. package/scripts/lane/lane-dispatch-wait-stats.ts +239 -0
  736. package/scripts/lane/lane-dispatch.ts +44 -5
  737. package/scripts/lane/lane-early-push-count.ts +21 -0
  738. package/scripts/lane/lane-install.ts +15 -5
  739. package/scripts/lane/lane-launch-cli.ts +35 -14
  740. package/scripts/lane/lane-ledger-kind.ts +2 -0
  741. package/scripts/lane/lane-ledger-schema-ship.ts +5 -1
  742. package/scripts/lane/lane-ledger-schema.ts +15 -1
  743. package/scripts/lane/lane-ledger-write.ts +4 -1
  744. package/scripts/lane/lane-relaunch.ts +25 -2
  745. package/scripts/lane/lane-state-record.ts +2 -0
  746. package/scripts/lane/lane-state.ts +8 -1
  747. package/scripts/lane/lane-stats-tables.ts +2 -0
  748. package/scripts/lane/openai-lane-supervisor.ts +16 -1
  749. package/scripts/lib/inherited-scope.ts +48 -0
  750. package/scripts/lint/format-steps.ts +93 -0
  751. package/scripts/lint/format.ts +6 -49
  752. package/scripts/lint/lint-related-fix.ts +35 -0
  753. package/scripts/lint/lint-related.ts +22 -35
  754. package/scripts/propagate/propagate-steps.ts +9 -4
  755. package/scripts/registry-migration/migrate-cli.ts +50 -0
  756. package/scripts/registry-migration/migrate-files.ts +154 -0
  757. package/scripts/registry-migration/migrate-lock.ts +147 -0
  758. package/scripts/registry-migration/migrate.ts +235 -0
  759. package/scripts/registry-migration/npm-acquisition.ts +118 -0
  760. package/scripts/review/review-record-cli.ts +27 -13
  761. package/scripts/review/review-record-pinned.ts +15 -6
  762. package/scripts/run/add/run-add-cli.ts +21 -3
  763. package/scripts/run/add/run-add.ts +26 -9
  764. package/scripts/run/board/run-board-layout.ts +2 -2
  765. package/scripts/run/board/run-board-reason.ts +12 -0
  766. package/scripts/run/board/run-board-retry-wait.ts +35 -0
  767. package/scripts/run/board/run-board-seat.ts +9 -2
  768. package/scripts/run/board/run-board-setup.ts +6 -4
  769. package/scripts/run/carry/run-carry-reclaim.ts +12 -2
  770. package/scripts/run/carry/run-carry-session.ts +48 -0
  771. package/scripts/run/carry/run-carry.ts +21 -14
  772. package/scripts/run/cut/run-cut-resume.ts +15 -3
  773. package/scripts/run/cut/run-cut.ts +1 -1
  774. package/scripts/run/detached-launch.ts +14 -5
  775. package/scripts/run/early-push-record.ts +6 -2
  776. package/scripts/run/event/run-event-setup.ts +2 -0
  777. package/scripts/run/event/run-event-stream-emit.ts +27 -7
  778. package/scripts/run/hold/run-hold-cli.ts +40 -5
  779. package/scripts/run/merge/run-merge-cut-release.ts +17 -0
  780. package/scripts/run/merge/run-merge-human-review.ts +6 -0
  781. package/scripts/run/merge/run-merge-steps.ts +4 -57
  782. package/scripts/run/merge/run-merge-waits.ts +54 -0
  783. package/scripts/run/prime/run-prime-cli.ts +16 -2
  784. package/scripts/run/review/run-review-cli.ts +5 -7
  785. package/scripts/run/review/run-review-early-push.ts +19 -8
  786. package/scripts/run/review/run-review-join-read.ts +33 -6
  787. package/scripts/run/review/run-review-pinned-remaining.ts +124 -0
  788. package/scripts/run/review/run-review-pinned-steps.ts +7 -1
  789. package/scripts/run/run-halfrun-resume.ts +49 -6
  790. package/scripts/run/run-headless.ts +3 -0
  791. package/scripts/run/run-pr-return.ts +14 -5
  792. package/scripts/run/run-repair-attempt.ts +219 -0
  793. package/scripts/run/ship/run-ship-lap.ts +5 -17
  794. package/scripts/run/ship/run-ship-pre-detach-pinned.ts +4 -13
  795. package/scripts/run/ship/run-ship-scoped.ts +66 -30
  796. package/scripts/run/startup/run-startup-schema.ts +31 -0
  797. package/scripts/run/startup/run-startup-store.ts +130 -0
  798. package/scripts/run/startup/run-startup.ts +119 -0
  799. package/scripts/run/wake/run-wake-codex.ts +144 -0
  800. package/scripts/run/wake/run-wake-driver.ts +32 -7
  801. package/scripts/run/wake/run-wake-handoff.ts +9 -8
  802. package/scripts/run/wake/run-wake-loop.ts +23 -3
  803. package/scripts/run/wake/run-wake-ports.ts +17 -3
  804. package/scripts/run/wake/run-wake-takeover.ts +6 -3
  805. package/scripts/run/wake/run-wake-window.ts +4 -1
  806. package/scripts/run/wake/run-wake.ts +5 -0
  807. package/scripts/sync/sync-ai-files.ts +17 -0
  808. package/scripts/sync/sync-configs.ts +11 -1
  809. package/scripts/sync/sync.ts +5 -1
  810. package/scripts/test/test-related-cap.ts +7 -3
  811. package/scripts/test/test-related-imports.ts +92 -0
  812. package/scripts/test/vitest-failure-summary.ts +7 -0
  813. package/scripts/version/npm-registry.ts +45 -7
  814. package/scripts/version/upgrade-shell-command.ts +34 -2
  815. package/templates/workflows/ci.yml +0 -15
  816. package/templates/workflows/github-release.yml +0 -5
  817. package/dist/commands/chunk-23GH6B3D.js +0 -333
  818. package/dist/commands/chunk-24OATKOF.js +0 -7534
  819. package/dist/commands/chunk-24ZDAWML.js +0 -48
  820. package/dist/commands/chunk-2BB5ZR2F.js +0 -128
  821. package/dist/commands/chunk-2BJJUTZA.js +0 -59
  822. package/dist/commands/chunk-2CXT6MBR.js +0 -51
  823. package/dist/commands/chunk-2DJLAUYB.js +0 -109
  824. package/dist/commands/chunk-2EZTYLO4.js +0 -179
  825. package/dist/commands/chunk-2FJJYCBD.js +0 -149
  826. package/dist/commands/chunk-2PHOLX62.js +0 -43
  827. package/dist/commands/chunk-2QM72JCJ.js +0 -338
  828. package/dist/commands/chunk-2VRITY55.js +0 -41
  829. package/dist/commands/chunk-2XAH3MHV.js +0 -23
  830. package/dist/commands/chunk-34KZDKQJ.js +0 -304
  831. package/dist/commands/chunk-352KLSFX.js +0 -67
  832. package/dist/commands/chunk-36LOGVJ7.js +0 -38
  833. package/dist/commands/chunk-3AEDZZNL.js +0 -223
  834. package/dist/commands/chunk-3B2HEFNO.js +0 -51
  835. package/dist/commands/chunk-3PEXBHRN.js +0 -33
  836. package/dist/commands/chunk-3Z425MM3.js +0 -61
  837. package/dist/commands/chunk-3ZOX4G4U.js +0 -88
  838. package/dist/commands/chunk-452HWOJ7.js +0 -395
  839. package/dist/commands/chunk-475EFIJV.js +0 -178
  840. package/dist/commands/chunk-47UZB54M.js +0 -73
  841. package/dist/commands/chunk-4DN4XVPL.js +0 -716
  842. package/dist/commands/chunk-4DVM57T7.js +0 -86
  843. package/dist/commands/chunk-4EADHJVC.js +0 -247
  844. package/dist/commands/chunk-4HERA2GY.js +0 -95
  845. package/dist/commands/chunk-4JI35CVO.js +0 -70
  846. package/dist/commands/chunk-4L4LNWZ7.js +0 -143
  847. package/dist/commands/chunk-4N32QKJZ.js +0 -170
  848. package/dist/commands/chunk-4NRSFLG7.js +0 -185
  849. package/dist/commands/chunk-4OKRPAUT.js +0 -98
  850. package/dist/commands/chunk-4PUKDAXL.js +0 -42
  851. package/dist/commands/chunk-4Q64PG46.js +0 -478
  852. package/dist/commands/chunk-4UDTQVDD.js +0 -278
  853. package/dist/commands/chunk-4WR2LEZL.js +0 -123
  854. package/dist/commands/chunk-4ZJOC6OK.js +0 -298
  855. package/dist/commands/chunk-4ZQM4I7R.js +0 -533
  856. package/dist/commands/chunk-54X37JEJ.js +0 -170
  857. package/dist/commands/chunk-56KW5EOK.js +0 -85
  858. package/dist/commands/chunk-5CG3XU3O.js +0 -74
  859. package/dist/commands/chunk-5ESZLHDZ.js +0 -514
  860. package/dist/commands/chunk-5FBRMARM.js +0 -578
  861. package/dist/commands/chunk-5RG4S66L.js +0 -47
  862. package/dist/commands/chunk-5UJGACVN.js +0 -137
  863. package/dist/commands/chunk-5Y7B7FDL.js +0 -44
  864. package/dist/commands/chunk-5Z6E5ZUV.js +0 -89
  865. package/dist/commands/chunk-5ZNUH4LV.js +0 -1722
  866. package/dist/commands/chunk-5ZTQX7OS.js +0 -125
  867. package/dist/commands/chunk-66NX6EXR.js +0 -29
  868. package/dist/commands/chunk-66TGK5XL.js +0 -84
  869. package/dist/commands/chunk-6CFHLMKM.js +0 -555
  870. package/dist/commands/chunk-6DDK5XWK.js +0 -74
  871. package/dist/commands/chunk-6GQX752S.js +0 -145
  872. package/dist/commands/chunk-6HRRZANN.js +0 -55
  873. package/dist/commands/chunk-6MAZ55GF.js +0 -1241
  874. package/dist/commands/chunk-6OP63TBT.js +0 -78
  875. package/dist/commands/chunk-6Q3XUCLM.js +0 -204
  876. package/dist/commands/chunk-6RUWU2SB.js +0 -45
  877. package/dist/commands/chunk-6UCWAFQY.js +0 -245
  878. package/dist/commands/chunk-6WKJ3GDA.js +0 -408
  879. package/dist/commands/chunk-6YURRFRU.js +0 -461
  880. package/dist/commands/chunk-6YVURZAJ.js +0 -350
  881. package/dist/commands/chunk-6Z4YZG7P.js +0 -169
  882. package/dist/commands/chunk-77BIN247.js +0 -122
  883. package/dist/commands/chunk-7ABHNNY3.js +0 -529
  884. package/dist/commands/chunk-7C7FOKJK.js +0 -115
  885. package/dist/commands/chunk-7HAGC6SW.js +0 -1062
  886. package/dist/commands/chunk-7KKUFLH5.js +0 -56
  887. package/dist/commands/chunk-7LJQMM2K.js +0 -102
  888. package/dist/commands/chunk-7MJYLUF4.js +0 -99
  889. package/dist/commands/chunk-7NHZCI5Y.js +0 -704
  890. package/dist/commands/chunk-7OQ56DVW.js +0 -239
  891. package/dist/commands/chunk-7VWPGTZO.js +0 -260
  892. package/dist/commands/chunk-7YZXS3AK.js +0 -30
  893. package/dist/commands/chunk-A4HOQKOG.js +0 -85
  894. package/dist/commands/chunk-A6T2N7VC.js +0 -159
  895. package/dist/commands/chunk-AAUDI7WJ.js +0 -250
  896. package/dist/commands/chunk-AC26ZUG5.js +0 -259
  897. package/dist/commands/chunk-ACZ52JPI.js +0 -140
  898. package/dist/commands/chunk-AJ65WNJB.js +0 -230
  899. package/dist/commands/chunk-AK7SEO4Y.js +0 -177
  900. package/dist/commands/chunk-AKK56GNX.js +0 -205
  901. package/dist/commands/chunk-AKQYYHP2.js +0 -461
  902. package/dist/commands/chunk-ALDAS2WG.js +0 -137
  903. package/dist/commands/chunk-ANUTT56I.js +0 -85
  904. package/dist/commands/chunk-AVVMDVGO.js +0 -68
  905. package/dist/commands/chunk-B3M5WSGN.js +0 -72
  906. package/dist/commands/chunk-B7ZNIEDV.js +0 -351
  907. package/dist/commands/chunk-BCUDQWYK.js +0 -77
  908. package/dist/commands/chunk-BF6YX4HE.js +0 -70
  909. package/dist/commands/chunk-BHRS7HAM.js +0 -272
  910. package/dist/commands/chunk-BIKGPT52.js +0 -29
  911. package/dist/commands/chunk-BJA5U4Q7.js +0 -75
  912. package/dist/commands/chunk-BMKWSWWE.js +0 -126
  913. package/dist/commands/chunk-BMTYUJNT.js +0 -59
  914. package/dist/commands/chunk-BRHPRDDV.js +0 -127
  915. package/dist/commands/chunk-BRUBX64M.js +0 -33
  916. package/dist/commands/chunk-BTZJDHQT.js +0 -46
  917. package/dist/commands/chunk-BYFC6MD2.js +0 -72
  918. package/dist/commands/chunk-BYGJ3BCJ.js +0 -803
  919. package/dist/commands/chunk-C2SEDMZ3.js +0 -238
  920. package/dist/commands/chunk-C54QXJD6.js +0 -4208
  921. package/dist/commands/chunk-C6QSVO5K.js +0 -56
  922. package/dist/commands/chunk-CBAKBWSZ.js +0 -332
  923. package/dist/commands/chunk-CFHRNTE5.js +0 -326
  924. package/dist/commands/chunk-CGLLAEKZ.js +0 -110
  925. package/dist/commands/chunk-CHKYPF5O.js +0 -82
  926. package/dist/commands/chunk-CJBW6BWG.js +0 -800
  927. package/dist/commands/chunk-CJKPF5DJ.js +0 -156
  928. package/dist/commands/chunk-CKUKK7JG.js +0 -252
  929. package/dist/commands/chunk-CMHGDCGN.js +0 -263
  930. package/dist/commands/chunk-CNGTHSUS.js +0 -750
  931. package/dist/commands/chunk-CP2J4RV2.js +0 -3987
  932. package/dist/commands/chunk-CQZI7RIK.js +0 -72
  933. package/dist/commands/chunk-CWCKCZS6.js +0 -188
  934. package/dist/commands/chunk-D5HIP4HT.js +0 -289
  935. package/dist/commands/chunk-D6D6WQR6.js +0 -125
  936. package/dist/commands/chunk-D7JRJI44.js +0 -297
  937. package/dist/commands/chunk-D7OAU32Z.js +0 -119
  938. package/dist/commands/chunk-DAAX7XDS.js +0 -1208
  939. package/dist/commands/chunk-DBKTFB5V.js +0 -18
  940. package/dist/commands/chunk-DEZF7QZZ.js +0 -184
  941. package/dist/commands/chunk-DMD74E3F.js +0 -39
  942. package/dist/commands/chunk-DPJVKTO4.js +0 -41
  943. package/dist/commands/chunk-DXJQHJQ4.js +0 -73
  944. package/dist/commands/chunk-DYZOOWVW.js +0 -912
  945. package/dist/commands/chunk-EBI2BAKQ.js +0 -47
  946. package/dist/commands/chunk-EDKOSZ3K.js +0 -88
  947. package/dist/commands/chunk-EFDVE5P5.js +0 -121
  948. package/dist/commands/chunk-EGIHAEMT.js +0 -72
  949. package/dist/commands/chunk-EKLU6QR7.js +0 -507
  950. package/dist/commands/chunk-ELY76WAR.js +0 -65
  951. package/dist/commands/chunk-EM3HAZF6.js +0 -52
  952. package/dist/commands/chunk-EMTZAGT5.js +0 -51
  953. package/dist/commands/chunk-ENKFCOVY.js +0 -472
  954. package/dist/commands/chunk-ERG4QRNG.js +0 -224
  955. package/dist/commands/chunk-EUGNQCYK.js +0 -139
  956. package/dist/commands/chunk-EW4NPUMQ.js +0 -363
  957. package/dist/commands/chunk-EWVR5AEX.js +0 -140
  958. package/dist/commands/chunk-EXDFKKMH.js +0 -113
  959. package/dist/commands/chunk-EXWB34R2.js +0 -238
  960. package/dist/commands/chunk-EYMPBHDN.js +0 -61
  961. package/dist/commands/chunk-EZ7IPKIH.js +0 -20
  962. package/dist/commands/chunk-EZSO25UZ.js +0 -80
  963. package/dist/commands/chunk-F6IQHZYY.js +0 -94
  964. package/dist/commands/chunk-FDS65XOJ.js +0 -212
  965. package/dist/commands/chunk-FFHEGWPK.js +0 -91
  966. package/dist/commands/chunk-FGL6DBZU.js +0 -71
  967. package/dist/commands/chunk-FHFWNNUC.js +0 -144
  968. package/dist/commands/chunk-FIUCHMCF.js +0 -32
  969. package/dist/commands/chunk-FJX7AENO.js +0 -74
  970. package/dist/commands/chunk-FKZ5E4JD.js +0 -97
  971. package/dist/commands/chunk-FMZWRDKH.js +0 -302
  972. package/dist/commands/chunk-FOKCRIAN.js +0 -67
  973. package/dist/commands/chunk-FQGWO2ZH.js +0 -43
  974. package/dist/commands/chunk-FROACLVU.js +0 -525
  975. package/dist/commands/chunk-FURNDIT3.js +0 -34
  976. package/dist/commands/chunk-FVDQNMP6.js +0 -93
  977. package/dist/commands/chunk-FVVZIJUC.js +0 -425
  978. package/dist/commands/chunk-FWU3H4TX.js +0 -17
  979. package/dist/commands/chunk-G3HBYHFA.js +0 -16
  980. package/dist/commands/chunk-G4E4M2P4.js +0 -299
  981. package/dist/commands/chunk-G5KSL2Q2.js +0 -151
  982. package/dist/commands/chunk-G6XC7V6Y.js +0 -58
  983. package/dist/commands/chunk-GCPP5XIG.js +0 -90
  984. package/dist/commands/chunk-GITT5A5A.js +0 -198
  985. package/dist/commands/chunk-GJYMI2CM.js +0 -48
  986. package/dist/commands/chunk-GLC47H7I.js +0 -285
  987. package/dist/commands/chunk-GUR54ELE.js +0 -328
  988. package/dist/commands/chunk-GW4UWR3O.js +0 -126
  989. package/dist/commands/chunk-GY4DMCKS.js +0 -306
  990. package/dist/commands/chunk-H6JQRHDC.js +0 -80
  991. package/dist/commands/chunk-HATKF6VX.js +0 -173
  992. package/dist/commands/chunk-HG2NZQD5.js +0 -135
  993. package/dist/commands/chunk-HH3CVIFU.js +0 -93
  994. package/dist/commands/chunk-HHMMGDMP.js +0 -469
  995. package/dist/commands/chunk-HI5WPM6C.js +0 -127
  996. package/dist/commands/chunk-HQGNXR6I.js +0 -245
  997. package/dist/commands/chunk-HTIDHEEN.js +0 -108
  998. package/dist/commands/chunk-HVCQYZVD.js +0 -38
  999. package/dist/commands/chunk-HWEZRNPL.js +0 -66
  1000. package/dist/commands/chunk-HX3FFIO5.js +0 -74
  1001. package/dist/commands/chunk-HXDTA5VU.js +0 -208
  1002. package/dist/commands/chunk-I2KCGKJI.js +0 -107
  1003. package/dist/commands/chunk-I63RNFFR.js +0 -213
  1004. package/dist/commands/chunk-IAD4WLLI.js +0 -98
  1005. package/dist/commands/chunk-IB5TT73I.js +0 -177
  1006. package/dist/commands/chunk-IBAYXCMU.js +0 -156
  1007. package/dist/commands/chunk-IGDJNXX2.js +0 -49
  1008. package/dist/commands/chunk-ILGPZ47M.js +0 -33
  1009. package/dist/commands/chunk-IYJEBWW5.js +0 -44
  1010. package/dist/commands/chunk-J22PSIXR.js +0 -418
  1011. package/dist/commands/chunk-J66YBAAM.js +0 -161
  1012. package/dist/commands/chunk-J6WKZRV2.js +0 -391
  1013. package/dist/commands/chunk-J7IO3AYH.js +0 -179
  1014. package/dist/commands/chunk-JAKC2BHX.js +0 -88
  1015. package/dist/commands/chunk-JCAQ7B6J.js +0 -124
  1016. package/dist/commands/chunk-JHN6RCE6.js +0 -123
  1017. package/dist/commands/chunk-JIGBNCDR.js +0 -88
  1018. package/dist/commands/chunk-JJHWTFWQ.js +0 -76
  1019. package/dist/commands/chunk-JJRKTWLK.js +0 -64
  1020. package/dist/commands/chunk-JKOGWGQM.js +0 -92
  1021. package/dist/commands/chunk-JM6EVOFN.js +0 -172
  1022. package/dist/commands/chunk-JQXPLMCO.js +0 -81
  1023. package/dist/commands/chunk-JV24VP2O.js +0 -81
  1024. package/dist/commands/chunk-JVKXJ763.js +0 -45
  1025. package/dist/commands/chunk-K275REYP.js +0 -37
  1026. package/dist/commands/chunk-K4G3HOKS.js +0 -105
  1027. package/dist/commands/chunk-K64EIHD2.js +0 -138
  1028. package/dist/commands/chunk-KB3OQWDT.js +0 -71
  1029. package/dist/commands/chunk-KCFOP5RI.js +0 -1310
  1030. package/dist/commands/chunk-KGE4AS2Y.js +0 -134
  1031. package/dist/commands/chunk-KIILCKQR.js +0 -220
  1032. package/dist/commands/chunk-KK2SL42W.js +0 -241
  1033. package/dist/commands/chunk-KKIMVXAP.js +0 -280
  1034. package/dist/commands/chunk-KODXWMBX.js +0 -77
  1035. package/dist/commands/chunk-KPSKWTOS.js +0 -208
  1036. package/dist/commands/chunk-KVHNQHX3.js +0 -100
  1037. package/dist/commands/chunk-KWYQR5MK.js +0 -269
  1038. package/dist/commands/chunk-KXHXMERX.js +0 -214
  1039. package/dist/commands/chunk-KZ5BBBMO.js +0 -271
  1040. package/dist/commands/chunk-KZ7HD37E.js +0 -121
  1041. package/dist/commands/chunk-KZSM5M5P.js +0 -89
  1042. package/dist/commands/chunk-KZZWPUJW.js +0 -25
  1043. package/dist/commands/chunk-L7DAL54N.js +0 -347
  1044. package/dist/commands/chunk-LAR76BFA.js +0 -114
  1045. package/dist/commands/chunk-LB557AHJ.js +0 -192
  1046. package/dist/commands/chunk-LJXKVLYI.js +0 -229
  1047. package/dist/commands/chunk-LOOFYHUM.js +0 -773
  1048. package/dist/commands/chunk-LQXFVZTS.js +0 -13
  1049. package/dist/commands/chunk-LT7QSHR4.js +0 -995
  1050. package/dist/commands/chunk-LUXWDMKI.js +0 -426
  1051. package/dist/commands/chunk-LWAXXZPS.js +0 -118
  1052. package/dist/commands/chunk-LX7TIEMI.js +0 -1612
  1053. package/dist/commands/chunk-LZ5QXE5N.js +0 -244
  1054. package/dist/commands/chunk-LZPPSOTP.js +0 -122
  1055. package/dist/commands/chunk-M4UV3BEV.js +0 -313
  1056. package/dist/commands/chunk-M6JDU5EK.js +0 -133
  1057. package/dist/commands/chunk-MDLOETXL.js +0 -211
  1058. package/dist/commands/chunk-MFBNNTBM.js +0 -44
  1059. package/dist/commands/chunk-MGF64OHV.js +0 -32
  1060. package/dist/commands/chunk-MI2OS6TL.js +0 -132
  1061. package/dist/commands/chunk-MLW4S35K.js +0 -389
  1062. package/dist/commands/chunk-MN425CU6.js +0 -63
  1063. package/dist/commands/chunk-MPGJ4ONJ.js +0 -634
  1064. package/dist/commands/chunk-MRORPFSO.js +0 -402
  1065. package/dist/commands/chunk-MUGTOJUL.js +0 -319
  1066. package/dist/commands/chunk-MVHPRYHE.js +0 -91
  1067. package/dist/commands/chunk-MWO6FOSZ.js +0 -393
  1068. package/dist/commands/chunk-MXC4IBZ7.js +0 -104
  1069. package/dist/commands/chunk-N7QTMTST.js +0 -210
  1070. package/dist/commands/chunk-NDBX7LSS.js +0 -32
  1071. package/dist/commands/chunk-NEGJ77RV.js +0 -173
  1072. package/dist/commands/chunk-NEGRE5VW.js +0 -101
  1073. package/dist/commands/chunk-NFPD2P3V.js +0 -53
  1074. package/dist/commands/chunk-NHIW7JE6.js +0 -335
  1075. package/dist/commands/chunk-NILSN7A4.js +0 -158
  1076. package/dist/commands/chunk-NOLFSPOB.js +0 -74
  1077. package/dist/commands/chunk-NSAVEXVR.js +0 -353
  1078. package/dist/commands/chunk-NT67QTZO.js +0 -65
  1079. package/dist/commands/chunk-NU7W6QGT.js +0 -155
  1080. package/dist/commands/chunk-NYWGJLBU.js +0 -19
  1081. package/dist/commands/chunk-OAAVY2JK.js +0 -49
  1082. package/dist/commands/chunk-OGS2DK7I.js +0 -47
  1083. package/dist/commands/chunk-OHNP3QL2.js +0 -186
  1084. package/dist/commands/chunk-OIPV3PWW.js +0 -870
  1085. package/dist/commands/chunk-OIX2363L.js +0 -16
  1086. package/dist/commands/chunk-OJ65BZBV.js +0 -646
  1087. package/dist/commands/chunk-OKZWEVR4.js +0 -352
  1088. package/dist/commands/chunk-OL6IF4JC.js +0 -20
  1089. package/dist/commands/chunk-OMPRILFH.js +0 -29
  1090. package/dist/commands/chunk-OOWGH2RG.js +0 -85
  1091. package/dist/commands/chunk-OP2RFVLS.js +0 -102
  1092. package/dist/commands/chunk-ORKVN2LO.js +0 -56
  1093. package/dist/commands/chunk-OSBWXZJ4.js +0 -492
  1094. package/dist/commands/chunk-OT3UMEWK.js +0 -47
  1095. package/dist/commands/chunk-OVWPZDWP.js +0 -64
  1096. package/dist/commands/chunk-OWYK2BEJ.js +0 -1222
  1097. package/dist/commands/chunk-OX3VQLV2.js +0 -488
  1098. package/dist/commands/chunk-OZJP77UM.js +0 -103
  1099. package/dist/commands/chunk-OZZWRJQI.js +0 -246
  1100. package/dist/commands/chunk-P3H3DKTE.js +0 -69
  1101. package/dist/commands/chunk-P4D5RESF.js +0 -88
  1102. package/dist/commands/chunk-P4KIQRSL.js +0 -119
  1103. package/dist/commands/chunk-P5SOYWH2.js +0 -37
  1104. package/dist/commands/chunk-P7FPXAHP.js +0 -29
  1105. package/dist/commands/chunk-PE7B7242.js +0 -84
  1106. package/dist/commands/chunk-PFO7EYAP.js +0 -45
  1107. package/dist/commands/chunk-PHLOTUB7.js +0 -366
  1108. package/dist/commands/chunk-PTNQCCIB.js +0 -41
  1109. package/dist/commands/chunk-PTZEFQUX.js +0 -211
  1110. package/dist/commands/chunk-Q5Q2QYVU.js +0 -112
  1111. package/dist/commands/chunk-Q7EEIOAD.js +0 -120
  1112. package/dist/commands/chunk-QABRNGQV.js +0 -88
  1113. package/dist/commands/chunk-QAHFPCFR.js +0 -50
  1114. package/dist/commands/chunk-QDFVVRQP.js +0 -92
  1115. package/dist/commands/chunk-QGAERR7D.js +0 -99
  1116. package/dist/commands/chunk-QHWJJ6X5.js +0 -53
  1117. package/dist/commands/chunk-QJRVDE7T.js +0 -307
  1118. package/dist/commands/chunk-QMDKDQKW.js +0 -114
  1119. package/dist/commands/chunk-QOSC5RKD.js +0 -18
  1120. package/dist/commands/chunk-QQ4CIYMF.js +0 -132
  1121. package/dist/commands/chunk-QV5FKMOU.js +0 -80
  1122. package/dist/commands/chunk-QWWTC3XR.js +0 -109
  1123. package/dist/commands/chunk-QXQ56E56.js +0 -27
  1124. package/dist/commands/chunk-R54Z2Z3X.js +0 -114
  1125. package/dist/commands/chunk-R6QE5VJG.js +0 -46
  1126. package/dist/commands/chunk-RG53UFNW.js +0 -418
  1127. package/dist/commands/chunk-RGGEQM6G.js +0 -140
  1128. package/dist/commands/chunk-RH6ZWJOA.js +0 -77
  1129. package/dist/commands/chunk-RHKCWJQX.js +0 -62
  1130. package/dist/commands/chunk-RKIAX4DZ.js +0 -191
  1131. package/dist/commands/chunk-RLBFEHHC.js +0 -300
  1132. package/dist/commands/chunk-RN2YDNLF.js +0 -229
  1133. package/dist/commands/chunk-RRAIRS2T.js +0 -54
  1134. package/dist/commands/chunk-RS764ZMU.js +0 -46
  1135. package/dist/commands/chunk-RUIBQMOV.js +0 -38
  1136. package/dist/commands/chunk-RUQY5TS3.js +0 -83
  1137. package/dist/commands/chunk-RVUJ6F5L.js +0 -181
  1138. package/dist/commands/chunk-RW64VHEB.js +0 -130
  1139. package/dist/commands/chunk-RXYMJPJB.js +0 -114
  1140. package/dist/commands/chunk-S4M6UWR2.js +0 -103
  1141. package/dist/commands/chunk-SASX3W2M.js +0 -99
  1142. package/dist/commands/chunk-SFNBUB6D.js +0 -110
  1143. package/dist/commands/chunk-SJ2ZN575.js +0 -90
  1144. package/dist/commands/chunk-SP7DKYGU.js +0 -1263
  1145. package/dist/commands/chunk-SSL6A3Y4.js +0 -165
  1146. package/dist/commands/chunk-SVAKCXZ7.js +0 -44
  1147. package/dist/commands/chunk-SYOXIKB7.js +0 -705
  1148. package/dist/commands/chunk-SZG5HDNP.js +0 -321
  1149. package/dist/commands/chunk-T25S4QHL.js +0 -52
  1150. package/dist/commands/chunk-T4F33UKZ.js +0 -114
  1151. package/dist/commands/chunk-T4UYEHWG.js +0 -50
  1152. package/dist/commands/chunk-TAEGXID2.js +0 -58
  1153. package/dist/commands/chunk-TCBUX52E.js +0 -701
  1154. package/dist/commands/chunk-TEPYEUYG.js +0 -585
  1155. package/dist/commands/chunk-TFLHYC2F.js +0 -141
  1156. package/dist/commands/chunk-TJKM56WJ.js +0 -109
  1157. package/dist/commands/chunk-TLAB552K.js +0 -445
  1158. package/dist/commands/chunk-TP6L4W3W.js +0 -82
  1159. package/dist/commands/chunk-TR7WWYD5.js +0 -60
  1160. package/dist/commands/chunk-TVZXG4Y4.js +0 -197
  1161. package/dist/commands/chunk-TYNH2R66.js +0 -1150
  1162. package/dist/commands/chunk-U3IVVR4W.js +0 -33
  1163. package/dist/commands/chunk-U5P6G3UV.js +0 -77
  1164. package/dist/commands/chunk-U7XU5RG3.js +0 -86
  1165. package/dist/commands/chunk-UKBBWMLE.js +0 -1189
  1166. package/dist/commands/chunk-ULVVGGTY.js +0 -64
  1167. package/dist/commands/chunk-UNMSZGSG.js +0 -269
  1168. package/dist/commands/chunk-URDT2O2K.js +0 -36
  1169. package/dist/commands/chunk-UTHUX7VU.js +0 -88
  1170. package/dist/commands/chunk-V4Z7G4UH.js +0 -73
  1171. package/dist/commands/chunk-V5FD7DVV.js +0 -48
  1172. package/dist/commands/chunk-VCPGFBMN.js +0 -655
  1173. package/dist/commands/chunk-VGPIQNDB.js +0 -24
  1174. package/dist/commands/chunk-VJE3RJAX.js +0 -23
  1175. package/dist/commands/chunk-VK6D5CWA.js +0 -161
  1176. package/dist/commands/chunk-VOF3N4WO.js +0 -114
  1177. package/dist/commands/chunk-VQVPAVQ3.js +0 -45
  1178. package/dist/commands/chunk-VV4TQYGD.js +0 -38
  1179. package/dist/commands/chunk-W3FX7FYN.js +0 -84
  1180. package/dist/commands/chunk-W7DRUOF7.js +0 -122
  1181. package/dist/commands/chunk-WAEN2RTT.js +0 -161
  1182. package/dist/commands/chunk-WCEUMOKK.js +0 -84
  1183. package/dist/commands/chunk-WJ4NEDNI.js +0 -288
  1184. package/dist/commands/chunk-WMMGXJXP.js +0 -92
  1185. package/dist/commands/chunk-WOFLW2LX.js +0 -26
  1186. package/dist/commands/chunk-WTH6NTXU.js +0 -128
  1187. package/dist/commands/chunk-WWVYEHQT.js +0 -272
  1188. package/dist/commands/chunk-X3TNPALI.js +0 -213
  1189. package/dist/commands/chunk-XC6GG5JR.js +0 -78
  1190. package/dist/commands/chunk-XDF25GSU.js +0 -536
  1191. package/dist/commands/chunk-XFPEUYDV.js +0 -67
  1192. package/dist/commands/chunk-XFWI6WHH.js +0 -60
  1193. package/dist/commands/chunk-XGMRAKSL.js +0 -85
  1194. package/dist/commands/chunk-XHGWMD3L.js +0 -104
  1195. package/dist/commands/chunk-XKSUBUIH.js +0 -116
  1196. package/dist/commands/chunk-XPBF5DG3.js +0 -419
  1197. package/dist/commands/chunk-XUMYPESL.js +0 -160
  1198. package/dist/commands/chunk-XXC32PVL.js +0 -541
  1199. package/dist/commands/chunk-XXN2EZBY.js +0 -133
  1200. package/dist/commands/chunk-XXNEY4B3.js +0 -110
  1201. package/dist/commands/chunk-Y27PTXXI.js +0 -258
  1202. package/dist/commands/chunk-Y4EBUI6M.js +0 -237
  1203. package/dist/commands/chunk-YAU3LYNF.js +0 -60
  1204. package/dist/commands/chunk-YDURQICF.js +0 -204
  1205. package/dist/commands/chunk-YGFOGA7C.js +0 -1153
  1206. package/dist/commands/chunk-YHJ2AJMA.js +0 -66
  1207. package/dist/commands/chunk-YIA6FC3K.js +0 -78
  1208. package/dist/commands/chunk-YM77CF4D.js +0 -183
  1209. package/dist/commands/chunk-YNPRJCEO.js +0 -81
  1210. package/dist/commands/chunk-YTBQAD5W.js +0 -170
  1211. package/dist/commands/chunk-YVH2OLDS.js +0 -104
  1212. package/dist/commands/chunk-ZAAHZY2A.js +0 -19
  1213. package/dist/commands/chunk-ZBZ5DDCH.js +0 -1866
  1214. package/dist/commands/chunk-ZLRUHSOP.js +0 -48
  1215. package/dist/commands/chunk-ZNR75OXP.js +0 -444
  1216. package/dist/commands/chunk-ZSOR4ISJ.js +0 -75
  1217. package/dist/commands/chunk-ZVAIIHBE.js +0 -63
  1218. package/dist/commands/chunk-ZYFHYQA7.js +0 -51
  1219. package/dist/commands/chunk-ZZFFSQF4.js +0 -218
  1220. package/dist/commands/chunk-ZZULXNC2.js +0 -47
  1221. package/dist/commands/chunk-ZZXO6TFH.js +0 -232
  1222. package/dist/commands/run-ship-lap-W5T2VHFC.js +0 -30
  1223. package/dist/commands/test-related-ZCNC46MS.js +0 -113
  1224. package/dist/commands/unused-members-STULPRBU.js +0 -331
  1225. package/dist/hooks/chunk-5CUXGQT6.js +0 -8353
  1226. package/dist/hooks/chunk-5R5YFQR5.js +0 -931
  1227. package/dist/hooks/chunk-6RLY27FT.js +0 -232
  1228. package/dist/hooks/chunk-6YGMIODI.js +0 -86
  1229. package/dist/hooks/chunk-AO4TOV4V.js +0 -5026
  1230. package/dist/hooks/chunk-FOW4B7OQ.js +0 -1795
  1231. package/dist/hooks/chunk-G5WSPYJ6.js +0 -5663
  1232. package/dist/hooks/chunk-HHIVWGHX.js +0 -6869
  1233. package/dist/hooks/chunk-IURJANNZ.js +0 -1082
  1234. package/dist/hooks/chunk-OV22V63P.js +0 -10980
  1235. package/dist/hooks/chunk-SXABK6UV.js +0 -321
  1236. package/dist/hooks/run-ship-lap-VCEOUHQI.js +0 -8
@@ -0,0 +1,907 @@
1
+ import {
2
+ test_pinned,
3
+ test_pinned_ledger,
4
+ test_pinned_record
5
+ } from "./chunk-2Q7MGFYB.js";
6
+ import {
7
+ run_ship_planned
8
+ } from "./chunk-PKXTISWR.js";
9
+ import {
10
+ gate_skip
11
+ } from "./chunk-NOSG3RUP.js";
12
+ import {
13
+ test_pinned_logic
14
+ } from "./chunk-ZJ5S4VFD.js";
15
+ import {
16
+ review_finding_ledger
17
+ } from "./chunk-KVURNO74.js";
18
+ import {
19
+ observation_ledger_home
20
+ } from "./chunk-QXBOECGL.js";
21
+ import {
22
+ review_stamps
23
+ } from "./chunk-XSKJAG72.js";
24
+ import {
25
+ gate_tree,
26
+ review_tree
27
+ } from "./chunk-R36VZIKU.js";
28
+ import {
29
+ file_map_stamp
30
+ } from "./chunk-M32UPB2D.js";
31
+ import {
32
+ run_record_path
33
+ } from "./chunk-WL5JHB3I.js";
34
+ import {
35
+ core_budget,
36
+ core_priority
37
+ } from "./chunk-ZCHZU6NX.js";
38
+ import {
39
+ run_ship_detach
40
+ } from "./chunk-FJM2HWKW.js";
41
+ import {
42
+ detached_launch
43
+ } from "./chunk-HDVSZ6CZ.js";
44
+ import {
45
+ poll
46
+ } from "./chunk-SBGTCT2C.js";
47
+ import {
48
+ GATE_COMMAND
49
+ } from "./chunk-TBIX5FRN.js";
50
+ import {
51
+ error_text
52
+ } from "./chunk-CDY4NFQG.js";
53
+ import {
54
+ lane_ledger_write
55
+ } from "./chunk-KIS7JFNP.js";
56
+ import {
57
+ lane_child_marker
58
+ } from "./chunk-XXPDFJRI.js";
59
+ import {
60
+ process_identity
61
+ } from "./chunk-F2RDEF2J.js";
62
+ import {
63
+ stamp_file
64
+ } from "./chunk-VLN6TSPJ.js";
65
+ import {
66
+ PROJECT_ROOT
67
+ } from "./chunk-3CCGKX7Y.js";
68
+ import {
69
+ git_command
70
+ } from "./chunk-IXZZSST7.js";
71
+ import {
72
+ git_location_environment
73
+ } from "./chunk-B77ZMVHS.js";
74
+ import {
75
+ MS_PER_SECOND
76
+ } from "./chunk-WPAQUMHC.js";
77
+
78
+ // scripts/gate/check-related-unplanned.ts
79
+ async function read_unplanned() {
80
+ try {
81
+ return await run_ship_planned.unplanned();
82
+ } catch (error) {
83
+ error_text.trace_swallowed("check_related_unplanned.notice", error);
84
+ return void 0;
85
+ }
86
+ }
87
+ async function notice() {
88
+ const found = await read_unplanned();
89
+ if (found === void 0) return void 0;
90
+ await lane_ledger_write.record_unplanned_notice({ issue: found.issue, files: [...found.files] });
91
+ return found.text;
92
+ }
93
+ async function show() {
94
+ const text = await notice();
95
+ if (text !== void 0) console.info(text);
96
+ }
97
+ var check_related_unplanned = { notice, read_unplanned, show };
98
+
99
+ // scripts/run/review/run-review-pinned.ts
100
+ var UNPINNED_OK_FLAG = "--unpinned-ok";
101
+ var OK_ARGUMENT_COUNT = 2;
102
+ var STOP_NOTE = 'Pin each unpinned place with a test that turns red without it, then re-run `pnpm josh run:review`; for a change no test can pin, leave the tree as it is and pass the reason with `pnpm josh run:review --unpinned-ok "<reason>"` \u2014 on this tree and a green gate it judges this answer (or, cut at its first unpinned place, checks the whole change) and re-runs neither the gate nor the pair (`pnpm josh ship --review` forwards it).';
103
+ function ok_reason_of(argv) {
104
+ const [flag, reason = ""] = argv;
105
+ if (flag !== UNPINNED_OK_FLAG || argv.length !== OK_ARGUMENT_COUNT) return void 0;
106
+ return reason.trim() === "" ? void 0 : reason;
107
+ }
108
+ function verdict_of(summary, reason) {
109
+ const { report_text } = test_pinned_logic;
110
+ if (summary.unpinned.length === 0) {
111
+ return summary.is_unchecked === true ? { kind: "unchecked", text: report_text(summary, test_pinned_record.UNCHECKED_NOTE) } : { kind: "clear", text: report_text(summary) };
112
+ }
113
+ if (reason === void 0) return { kind: "stop", text: report_text(summary, `${STOP_NOTE}
114
+ `) };
115
+ const note = `Unpinned accepted by the implementer: ${reason}
116
+ `;
117
+ return { kind: "accepted", text: report_text(summary, note) };
118
+ }
119
+ var run_review_pinned = { STOP_NOTE, UNPINNED_OK_FLAG, ok_reason_of, verdict_of };
120
+
121
+ // scripts/run/review/run-review-pinned-accepted.ts
122
+ import path from "node:path";
123
+ var RECORD_NAME = "josh-unpinned-ok.json";
124
+ var RECORDED_NOTE = "Unpinned accepted by an earlier run on this branch: ";
125
+ async function record_path() {
126
+ const [git_directory] = await git_command.git_directories();
127
+ return git_directory === void 0 ? void 0 : path.join(git_directory, RECORD_NAME);
128
+ }
129
+ async function write(reason, unpinned) {
130
+ const target = await record_path();
131
+ if (target === void 0) return;
132
+ stamp_file.replace_stamp(target, { branch: await git_command.branch(), reason, unpinned });
133
+ }
134
+ function to_accepted(record) {
135
+ const { branch, reason, unpinned } = record;
136
+ if (typeof branch !== "string" || typeof reason !== "string") return void 0;
137
+ return test_pinned_record.is_text_list(unpinned) ? { branch, reason, unpinned } : void 0;
138
+ }
139
+ function read_record(target) {
140
+ const raw = target === void 0 ? void 0 : stamp_file.read_stamp_text(target);
141
+ const record = raw === void 0 ? void 0 : test_pinned_record.parsed(raw);
142
+ return record === void 0 ? void 0 : to_accepted(record);
143
+ }
144
+ async function recorded() {
145
+ const accepted = read_record(await record_path());
146
+ return accepted?.branch === await git_command.branch() ? accepted : void 0;
147
+ }
148
+ function covering_reason(accepted, unpinned) {
149
+ const known = new Set(accepted?.unpinned);
150
+ return unpinned.every((site) => known.has(site)) ? accepted?.reason : void 0;
151
+ }
152
+ async function remember(reason, unpinned) {
153
+ try {
154
+ await write(reason, unpinned);
155
+ } catch (error) {
156
+ error_text.trace_swallowed("run_review_pinned_accepted.remember", error);
157
+ }
158
+ }
159
+ async function keep_reason(reason) {
160
+ try {
161
+ const accepted = await recorded();
162
+ await write(reason, accepted?.unpinned ?? []);
163
+ } catch (error) {
164
+ error_text.trace_swallowed("run_review_pinned_accepted.keep_reason", error);
165
+ }
166
+ }
167
+ async function earlier_reason(unpinned) {
168
+ try {
169
+ return covering_reason(await recorded(), unpinned);
170
+ } catch (error) {
171
+ error_text.trace_swallowed("run_review_pinned_accepted.earlier_reason", error);
172
+ return void 0;
173
+ }
174
+ }
175
+ async function recorded_reason() {
176
+ try {
177
+ const accepted = await recorded();
178
+ return accepted?.reason;
179
+ } catch (error) {
180
+ error_text.trace_swallowed("run_review_pinned_accepted.recorded_reason", error);
181
+ return void 0;
182
+ }
183
+ }
184
+ async function judge(summary, reason) {
185
+ if (summary.unpinned.length === 0) return run_review_pinned.verdict_of(summary, reason);
186
+ if (reason !== void 0) {
187
+ await remember(reason, summary.unpinned);
188
+ return run_review_pinned.verdict_of(summary, reason);
189
+ }
190
+ const earlier = summary.is_cut === true ? void 0 : await earlier_reason(summary.unpinned);
191
+ if (earlier === void 0) return run_review_pinned.verdict_of(summary, void 0);
192
+ const note = `${RECORDED_NOTE}${earlier}
193
+ `;
194
+ return { kind: "accepted", text: test_pinned_logic.report_text(summary, note) };
195
+ }
196
+ var run_review_pinned_accepted = { RECORD_NAME, judge, keep_reason, recorded_reason };
197
+
198
+ // scripts/run/review/run-review.ts
199
+ var ADOPT = "adopt";
200
+ var BLOCKED = "blocked";
201
+ function adopt_verdict(is_gate_green) {
202
+ return is_gate_green ? ADOPT : BLOCKED;
203
+ }
204
+ var GATE_GREEN = "green";
205
+ var GATE_RUNNING = "running";
206
+ var GATE_RED = "red";
207
+ var GATE_MOVED = "moved";
208
+ function gate_state(is_green, is_running, is_moved = false) {
209
+ if (is_green) return GATE_GREEN;
210
+ if (is_running) return GATE_RUNNING;
211
+ if (is_moved) return GATE_MOVED;
212
+ return GATE_RED;
213
+ }
214
+ var MOVED_EXIT_CODE = 2;
215
+ var UNPINNED_EXIT_CODE = 3;
216
+ var CODE_ONLY_FLAG = "--code-only";
217
+ function is_gate_settled(state) {
218
+ return state !== GATE_RUNNING;
219
+ }
220
+ var SECONDS_DECIMALS = 1;
221
+ var NO_OVERLAP = 0;
222
+ function format_seconds(seconds) {
223
+ return `${seconds.toFixed(SECONDS_DECIMALS)}s`;
224
+ }
225
+ function span_seconds(from, to) {
226
+ return Math.max(NO_OVERLAP, (Date.parse(to) - Date.parse(from)) / MS_PER_SECOND);
227
+ }
228
+ function overlap_seconds(timing) {
229
+ const start2 = Math.max(Date.parse(timing.gate_started_at), Date.parse(timing.review_started_at));
230
+ const end = Math.min(Date.parse(timing.gate_ended_at), Date.parse(timing.review_ended_at));
231
+ return Math.max(NO_OVERLAP, (end - start2) / MS_PER_SECOND);
232
+ }
233
+ function format_timing(timing) {
234
+ const gate = span_seconds(timing.gate_started_at, timing.gate_ended_at);
235
+ const review = span_seconds(timing.review_started_at, timing.review_ended_at);
236
+ return [
237
+ `gate: ${timing.gate_started_at} \u2192 ${timing.gate_ended_at} (${format_seconds(gate)})`,
238
+ `review: ${timing.review_started_at} \u2192 ${timing.review_ended_at} (${format_seconds(review)})`,
239
+ `overlap: ${format_seconds(overlap_seconds(timing))}`
240
+ ].join("\n");
241
+ }
242
+ var run_review = {
243
+ ADOPT,
244
+ BLOCKED,
245
+ CODE_ONLY_FLAG,
246
+ GATE_GREEN,
247
+ GATE_MOVED,
248
+ GATE_RED,
249
+ GATE_RUNNING,
250
+ MOVED_EXIT_CODE,
251
+ UNPINNED_EXIT_CODE,
252
+ adopt_verdict,
253
+ format_timing,
254
+ gate_state,
255
+ is_gate_settled,
256
+ overlap_seconds
257
+ };
258
+
259
+ // scripts/run/review/run-review-steps.ts
260
+ import { setTimeout as sleep } from "node:timers/promises";
261
+ var PNPM = "pnpm";
262
+ var DIRECTORY_FLAG = "--dir";
263
+ var JOSH_SCRIPT = "josh";
264
+ var GATE_LOG_PREFIX = "josh-run-review-gate-log-";
265
+ var TIMING_PREFIX = "josh-run-review-timing-";
266
+ var START_TREE_PREFIX = "josh-run-review-start-tree-";
267
+ var start_tree_stamp = file_map_stamp.create(START_TREE_PREFIX, PROJECT_ROOT);
268
+ var POLL_INTERVAL_MS = 1e3;
269
+ var MAX_JOIN_WAIT_MS = 6e5;
270
+ var MAX_OPEN_WAIT_MS = 42e4;
271
+ function gate_log_path(root = PROJECT_ROOT) {
272
+ return stamp_file.stamp_path(GATE_LOG_PREFIX, root);
273
+ }
274
+ function timing_path(target = PROJECT_ROOT) {
275
+ return stamp_file.stamp_path(TIMING_PREFIX, target);
276
+ }
277
+ function josh_argv(root, josh_args) {
278
+ return {
279
+ command: PNPM,
280
+ args: [DIRECTORY_FLAG, root, JOSH_SCRIPT, ...josh_args]
281
+ };
282
+ }
283
+ function launch_josh(josh_args, log_path2, root = PROJECT_ROOT) {
284
+ return detached_launch.launch(
285
+ {
286
+ argv: josh_argv(root, josh_args),
287
+ cwd: root,
288
+ log_path: log_path2,
289
+ env: {
290
+ ...git_location_environment.location_free_environment(),
291
+ ...core_priority.UNMARKED_ENVIRONMENT
292
+ }
293
+ },
294
+ (note) => process.stderr.write(`${note}
295
+ `)
296
+ );
297
+ }
298
+ function launch_gate(root = PROJECT_ROOT) {
299
+ return launch_josh([GATE_COMMAND], gate_log_path(root), root);
300
+ }
301
+ function to_timing(value) {
302
+ if (typeof value !== "object" || value === null) return void 0;
303
+ const { gate_started_at, review_started_at } = value;
304
+ if (typeof gate_started_at !== "string" || typeof review_started_at !== "string") return void 0;
305
+ return { gate_started_at, review_started_at };
306
+ }
307
+ function read_timing_start(target = PROJECT_ROOT) {
308
+ const raw = stamp_file.read_stamp_text(timing_path(target));
309
+ if (raw === void 0) return void 0;
310
+ try {
311
+ return to_timing(JSON.parse(raw));
312
+ } catch {
313
+ return void 0;
314
+ }
315
+ }
316
+ function is_green_on_start_tree(base) {
317
+ const start2 = start_tree_stamp.read();
318
+ if (start2 === void 0) return false;
319
+ return gate_skip.reusable_green_gate(start2.files, base) !== void 0;
320
+ }
321
+ async function read_gate_state() {
322
+ const is_running = file_map_stamp.is_writer_running(review_stamps.in_flight_stamp.read());
323
+ const tree = await gate_tree.read_gate_tree();
324
+ const is_green = gate_skip.reusable_green_gate(tree.files, tree.base) !== void 0;
325
+ return run_review.gate_state(is_green, is_running, is_green_on_start_tree(tree.base));
326
+ }
327
+ async function mark_gate_starting() {
328
+ const tree = await review_tree.read_changed_tree();
329
+ review_stamps.in_flight_stamp.write(tree);
330
+ start_tree_stamp.write(tree);
331
+ }
332
+ async function wait_for_gate_finish(max_wait_ms = MAX_JOIN_WAIT_MS, now = () => Date.now()) {
333
+ const started = now();
334
+ let state = await read_gate_state();
335
+ await poll.poll_until(() => run_review.is_gate_settled(state) || now() - started >= max_wait_ms, {
336
+ attempts: Infinity,
337
+ interval_ms: POLL_INTERVAL_MS,
338
+ sleeper: async (milliseconds) => {
339
+ await sleep(milliseconds);
340
+ state = await read_gate_state();
341
+ }
342
+ });
343
+ return state;
344
+ }
345
+ function read_gate_log(root = PROJECT_ROOT) {
346
+ return stamp_file.read_stamp_text(gate_log_path(root));
347
+ }
348
+ function write_timing_start(start2, target = PROJECT_ROOT) {
349
+ stamp_file.write_stamp(timing_path(target), start2);
350
+ }
351
+ function complete_timing(ended, target = PROJECT_ROOT) {
352
+ const start2 = read_timing_start(target);
353
+ if (start2 === void 0) return void 0;
354
+ return { ...start2, ...ended };
355
+ }
356
+ var run_review_steps = {
357
+ MAX_JOIN_WAIT_MS,
358
+ MAX_OPEN_WAIT_MS,
359
+ POLL_INTERVAL_MS,
360
+ complete_timing,
361
+ gate_log_path,
362
+ launch_gate,
363
+ launch_josh,
364
+ mark_gate_starting,
365
+ read_gate_log,
366
+ read_gate_state,
367
+ read_timing_start,
368
+ start_tree_stamp,
369
+ timing_path,
370
+ wait_for_gate_finish,
371
+ write_timing_start
372
+ };
373
+
374
+ // scripts/run/review/run-review-pinned-steps.ts
375
+ import { randomUUID } from "node:crypto";
376
+ import { setTimeout as sleep2 } from "node:timers/promises";
377
+ var PINNED_COMMAND = "test:pinned";
378
+ var REMAINING_ORIGIN = "pre-detach";
379
+ var LAUNCH_PREFIX = "josh-run-review-pinned-launch-";
380
+ var LOG_PREFIX = "josh-run-review-pinned-log-";
381
+ var MS_PER_SECOND2 = 1e3;
382
+ var LOST_NOTE = "its process ended without an answer";
383
+ var STOP_SIGNAL = "SIGTERM";
384
+ var GRACE_MS = 12e4;
385
+ var READ_COMMAND = "pnpm josh run:review --pinned";
386
+ var STILL_RUNNING_NOTE = `it is still running on this tree; wait for its answer with \`${READ_COMMAND}\` (a lane child: the ship's pre-detach reads it)`;
387
+ var TIMED_OUT_NOTE = `no answer within ${String(GRACE_MS / MS_PER_SECOND2)}s of the gate and the review`;
388
+ var QUEUED_NOTE = "it was still waiting for cores when the gate and the review ended";
389
+ var FIXING_NOTE = "round 1 has fixes to make \u2014 it is left running, and the round's `josh review:record` starts it again on the fixed tree for the ship's pre-detach to read";
390
+ var ALONE_GRACE_MS = 9e5;
391
+ var ALONE_TIMED_OUT_NOTE = `no answer within ${String(ALONE_GRACE_MS / MS_PER_SECOND2)}s of the read`;
392
+ function launch_path(root = PROJECT_ROOT) {
393
+ return stamp_file.stamp_path(LAUNCH_PREFIX, root);
394
+ }
395
+ function log_path(root = PROJECT_ROOT) {
396
+ return stamp_file.stamp_path(LOG_PREFIX, root, ".log");
397
+ }
398
+ function launch_with({ root, token, argv, origin, reason, tree }) {
399
+ const launched = run_review_steps.launch_josh(argv, log_path(root), root);
400
+ if (launched.kind === "launched") {
401
+ const { pid } = launched;
402
+ stamp_file.write_stamp(launch_path(root), {
403
+ pid,
404
+ token,
405
+ reason,
406
+ start: process_identity.read_start(pid),
407
+ tree,
408
+ launched_at: Date.now(),
409
+ origin
410
+ });
411
+ }
412
+ return launched;
413
+ }
414
+ function launch(root = PROJECT_ROOT, reason, tree) {
415
+ const token = randomUUID();
416
+ const origin = test_pinned_ledger.BACKGROUND_ORIGIN;
417
+ const argv = test_pinned_record.launch_argv(token, reason, origin);
418
+ return launch_with({ root, token, argv, origin, reason, tree });
419
+ }
420
+ function launch_remaining(root = PROJECT_ROOT, tree) {
421
+ const token = randomUUID();
422
+ const origin = REMAINING_ORIGIN;
423
+ const argv = test_pinned_record.launch_argv(token, void 0, origin, true);
424
+ return launch_with({ root, token, argv, origin, tree });
425
+ }
426
+ function optional_text(value) {
427
+ return typeof value === "string" ? value : void 0;
428
+ }
429
+ function origin_of(value) {
430
+ return typeof value === "string" ? test_pinned_ledger.origin_of(value) : void 0;
431
+ }
432
+ function to_launch(value) {
433
+ const { pid, token, reason, start: start2, tree, launched_at, origin } = value;
434
+ if (typeof pid !== "number" || typeof token !== "string") return void 0;
435
+ return {
436
+ pid,
437
+ token,
438
+ reason: optional_text(reason),
439
+ start: optional_text(start2),
440
+ tree: optional_text(tree),
441
+ launched_at: typeof launched_at === "number" ? launched_at : void 0,
442
+ origin: origin_of(origin)
443
+ };
444
+ }
445
+ function read_launch(root) {
446
+ const raw = stamp_file.read_stamp_text(launch_path(root));
447
+ if (raw === void 0) return void 0;
448
+ try {
449
+ return to_launch(JSON.parse(raw));
450
+ } catch {
451
+ return void 0;
452
+ }
453
+ }
454
+ function read_answer(root, { pid, token, start: start2 }) {
455
+ const summary = test_pinned_record.read(token, root);
456
+ if (summary !== void 0) return summary;
457
+ if (process_identity.is_same_process(pid, start2) !== false) return void 0;
458
+ return test_pinned_record.read(token, root) ?? test_pinned_record.not_run_summary(new Error(LOST_NOTE));
459
+ }
460
+ function signal_group(pid) {
461
+ try {
462
+ process.kill(-pid, STOP_SIGNAL);
463
+ } catch {
464
+ }
465
+ }
466
+ function discard(launched) {
467
+ signal_group(launched.pid);
468
+ if (launched.launched_at === void 0) return;
469
+ void test_pinned_ledger.record_discarded(Date.now() - launched.launched_at, launched.origin);
470
+ }
471
+ function stop_last(launched) {
472
+ if (process_identity.is_same_process(launched.pid, launched.start) === true) discard(launched);
473
+ }
474
+ function stop_current(launched) {
475
+ if (process_identity.is_same_process(launched.pid, launched.start) !== false) discard(launched);
476
+ }
477
+ function clear(root = PROJECT_ROOT) {
478
+ const last = read_launch(root);
479
+ if (last !== void 0) {
480
+ stop_last(last);
481
+ test_pinned_record.clear(last.token, root);
482
+ }
483
+ stamp_file.remove_stamp(launch_path(root));
484
+ }
485
+ function is_queued(root) {
486
+ return core_budget.live_reservations().some(
487
+ ({ reservation }) => reservation.command === PINNED_COMMAND && reservation.checkout === root && reservation.admitted_at === void 0
488
+ );
489
+ }
490
+ function stopped(launched, note) {
491
+ stop_current(launched);
492
+ return test_pinned_record.not_run_summary(new Error(note));
493
+ }
494
+ async function poll_within_grace(root, launched, now, grace_ms = GRACE_MS) {
495
+ const started = now();
496
+ let summary = read_answer(root, launched);
497
+ await poll.poll_until(() => summary !== void 0 || now() - started >= grace_ms, {
498
+ attempts: Infinity,
499
+ interval_ms: run_review_steps.POLL_INTERVAL_MS,
500
+ sleeper: async (milliseconds) => {
501
+ await sleep2(milliseconds);
502
+ summary = read_answer(root, launched);
503
+ }
504
+ });
505
+ return summary;
506
+ }
507
+ function given_up(launched, note, is_left_running) {
508
+ if (!is_left_running) return stopped(launched, note);
509
+ return test_pinned_record.not_run_summary(new Error(`${note} \u2014 ${STILL_RUNNING_NOTE}`));
510
+ }
511
+ async function poll_answer(root, launched, now, is_left_running) {
512
+ const summary = read_answer(root, launched);
513
+ if (summary !== void 0) return summary;
514
+ if (is_queued(root)) return given_up(launched, QUEUED_NOTE, is_left_running);
515
+ const late = await poll_within_grace(root, launched, now);
516
+ return late ?? given_up(launched, TIMED_OUT_NOTE, is_left_running);
517
+ }
518
+ function launched_reason(root = PROJECT_ROOT) {
519
+ return read_launch(root)?.reason;
520
+ }
521
+ function carry_reason(reason, root = PROJECT_ROOT) {
522
+ const launched = read_launch(root);
523
+ if (launched !== void 0) stamp_file.write_stamp(launch_path(root), { ...launched, reason });
524
+ }
525
+ function launched_tree(root = PROJECT_ROOT) {
526
+ return read_launch(root)?.tree;
527
+ }
528
+ function is_remaining(root = PROJECT_ROOT) {
529
+ return read_launch(root)?.origin === REMAINING_ORIGIN;
530
+ }
531
+ async function wait_for_answer(root = PROJECT_ROOT, now = () => Date.now(), is_left_running = true) {
532
+ const launched = read_launch(root);
533
+ if (launched === void 0) return void 0;
534
+ return await poll_answer(root, launched, now, is_left_running);
535
+ }
536
+ function answer_now(root = PROJECT_ROOT, pending_note = FIXING_NOTE) {
537
+ const launched = read_launch(root);
538
+ if (launched === void 0) return void 0;
539
+ return read_answer(root, launched) ?? test_pinned_record.not_run_summary(new Error(pending_note));
540
+ }
541
+ function is_answered(root = PROJECT_ROOT) {
542
+ const launched = read_launch(root);
543
+ return launched !== void 0 && test_pinned_record.read(launched.token, root) !== void 0;
544
+ }
545
+ function is_pending(root = PROJECT_ROOT) {
546
+ const launched = read_launch(root);
547
+ return launched !== void 0 && read_answer(root, launched) === void 0;
548
+ }
549
+ function is_live(root = PROJECT_ROOT) {
550
+ const launched = read_launch(root);
551
+ return launched !== void 0 && process_identity.is_same_process(launched.pid, launched.start) === true;
552
+ }
553
+ async function wait_alone(root = PROJECT_ROOT, now = () => Date.now()) {
554
+ const launched = read_launch(root);
555
+ if (launched === void 0) return void 0;
556
+ const summary = await poll_within_grace(root, launched, now, ALONE_GRACE_MS);
557
+ return summary ?? stopped(launched, ALONE_TIMED_OUT_NOTE);
558
+ }
559
+ var run_review_pinned_steps = {
560
+ FIXING_NOTE,
561
+ answer_now,
562
+ carry_reason,
563
+ clear,
564
+ is_answered,
565
+ is_live,
566
+ is_pending,
567
+ is_remaining,
568
+ launch,
569
+ launch_remaining,
570
+ launched_reason,
571
+ launched_tree,
572
+ log_path,
573
+ wait_alone,
574
+ wait_for_answer
575
+ };
576
+
577
+ // scripts/run/review/run-review-pinned-tree.ts
578
+ import { createHash } from "node:crypto";
579
+ function digest_of({ files, base }) {
580
+ const entries = Object.entries(files);
581
+ if (base === void 0 || entries.length === 0) return void 0;
582
+ const code = entries.filter(([file]) => !run_record_path.is_run_record(file)).toSorted(([left], [right]) => left.localeCompare(right));
583
+ return createHash("sha256").update(JSON.stringify([base, code])).digest("hex");
584
+ }
585
+ async function key() {
586
+ return digest_of(await gate_tree.read_gate_tree());
587
+ }
588
+ var run_review_pinned_tree = { digest_of, key };
589
+
590
+ // scripts/run/review/run-review-pinned-join.ts
591
+ import { setTimeout as sleep3 } from "node:timers/promises";
592
+ var PENDING_NOTE = "`josh test:pinned` is still running; the hunks below are unpinned by the verdicts it already reached; the round is not stopped on them:";
593
+ var RESTARTED_NOTE = "started again on the moved tree \u2014 it is left running for the ship's pre-detach to read";
594
+ async function moved_tree(root) {
595
+ const launched = run_review_pinned_steps.launched_tree(root);
596
+ if (launched === void 0) return void 0;
597
+ const current = await run_review_pinned_tree.key();
598
+ return current === launched ? void 0 : current;
599
+ }
600
+ function restart(root, tree) {
601
+ const reason = run_review_pinned_steps.launched_reason(root);
602
+ run_review_pinned_steps.clear(root);
603
+ return run_review_pinned_steps.launch(root, reason, tree).kind === "launched";
604
+ }
605
+ async function restart_if_moved(root = PROJECT_ROOT) {
606
+ const tree = await moved_tree(root);
607
+ return tree !== void 0 && restart(root, tree);
608
+ }
609
+ async function is_restarted(root) {
610
+ try {
611
+ return await restart_if_moved(root);
612
+ } catch (error) {
613
+ error_text.trace_swallowed("run_review_pinned_join.is_restarted", error);
614
+ return false;
615
+ }
616
+ }
617
+ async function cached_summary() {
618
+ try {
619
+ const report = await test_pinned.cached(test_pinned_logic.DEFAULT_MAX_HUNKS);
620
+ return report.unpinned.length === 0 && !test_pinned_logic.has_unchecked(report) ? void 0 : test_pinned_record.partial_summary(report, PENDING_NOTE);
621
+ } catch (error) {
622
+ error_text.trace_swallowed("run_review_pinned_join.cached_summary", error);
623
+ return void 0;
624
+ }
625
+ }
626
+ async function fixing_answer(root, note) {
627
+ const cached = run_review_pinned_steps.is_pending(root) ? await cached_summary() : void 0;
628
+ return cached ?? run_review_pinned_steps.answer_now(root, note);
629
+ }
630
+ async function graceless_note(root, is_fixing) {
631
+ const is_fresh = await is_restarted(root);
632
+ if (is_fixing) return run_review_pinned_steps.FIXING_NOTE;
633
+ return is_fresh ? RESTARTED_NOTE : void 0;
634
+ }
635
+ async function wait_for_join(root = PROJECT_ROOT, now, is_fixing = false) {
636
+ if (run_ship_detach.is_supervised()) {
637
+ return await run_review_pinned_steps.wait_for_answer(root, now, false);
638
+ }
639
+ const note = await graceless_note(root, is_fixing);
640
+ return note === void 0 ? await run_review_pinned_steps.wait_for_answer(root, now) : await fixing_answer(root, note);
641
+ }
642
+ async function is_launched_on_current_tree(root) {
643
+ const launched = run_review_pinned_steps.launched_tree(root);
644
+ if (launched === void 0) return false;
645
+ try {
646
+ return launched === await run_review_pinned_tree.key();
647
+ } catch (error) {
648
+ error_text.trace_swallowed("run_review_pinned_join.is_launched_on_current_tree", error);
649
+ return false;
650
+ }
651
+ }
652
+ async function waited_answer(root) {
653
+ const summary = await run_review_pinned_steps.wait_alone(root);
654
+ return run_review_pinned_steps.is_answered(root) ? summary : void 0;
655
+ }
656
+ async function settle_elsewhere(root) {
657
+ if (run_review_pinned_steps.is_live(root)) await run_review_pinned_steps.wait_alone(root);
658
+ run_review_pinned_steps.clear(root);
659
+ }
660
+ async function answer_on_tree(root = PROJECT_ROOT) {
661
+ if (await is_launched_on_current_tree(root)) return await waited_answer(root);
662
+ await settle_elsewhere(root);
663
+ return void 0;
664
+ }
665
+ async function finished_on_tree(root = PROJECT_ROOT) {
666
+ if (!run_review_pinned_steps.is_answered(root)) return void 0;
667
+ return await is_launched_on_current_tree(root) ? run_review_pinned_steps.answer_now(root) : void 0;
668
+ }
669
+ async function poll_pause() {
670
+ await sleep3(run_review_steps.POLL_INTERVAL_MS);
671
+ }
672
+ function is_ended(root) {
673
+ return run_review_pinned_steps.is_answered(root) || !run_review_pinned_steps.is_live(root);
674
+ }
675
+ async function is_coming_on_tree(root) {
676
+ return !is_ended(root) && await is_launched_on_current_tree(root);
677
+ }
678
+ async function wait_on_tree(root, is_within, pause) {
679
+ await poll.poll_until(async () => !is_within() || !await is_coming_on_tree(root), {
680
+ attempts: Infinity,
681
+ interval_ms: run_review_steps.POLL_INTERVAL_MS,
682
+ sleeper: pause
683
+ });
684
+ }
685
+ async function settled_on_tree(root, grace_ms, now = () => Date.now(), pause = poll_pause) {
686
+ const started = now();
687
+ await wait_on_tree(root, () => now() - started < grace_ms, pause);
688
+ return await finished_on_tree(root);
689
+ }
690
+ var run_review_pinned_join = {
691
+ answer_on_tree,
692
+ finished_on_tree,
693
+ restart_if_moved,
694
+ settled_on_tree,
695
+ wait_for_join
696
+ };
697
+
698
+ // scripts/run/review/run-review-pinned-remaining.ts
699
+ var MOVED_NOTE = "the tree moved while collecting remaining verdicts";
700
+ async function is_current(tree) {
701
+ return tree !== void 0 && tree === await run_review_pinned_tree.key();
702
+ }
703
+ async function start(root = PROJECT_ROOT) {
704
+ try {
705
+ const tree = await run_review_pinned_tree.key();
706
+ if (tree === void 0) return { kind: "failed", note: "could not read the current tree" };
707
+ run_review_pinned_steps.clear(root);
708
+ return run_review_pinned_steps.launch_remaining(root, tree);
709
+ } catch (error) {
710
+ error_text.trace_swallowed("run_review_pinned_remaining.start", error);
711
+ return { kind: "failed", note: String(error) };
712
+ }
713
+ }
714
+ function is_failed(summary) {
715
+ return summary?.counts === void 0 && summary?.is_unchecked === true;
716
+ }
717
+ async function recover_failed(summary, root) {
718
+ try {
719
+ const report = await test_pinned.cached(test_pinned_logic.DEFAULT_MAX_HUNKS);
720
+ if (report.is_stale === true || report.unpinned.length === 0) return summary;
721
+ const known = test_pinned_record.summary_of(report, root);
722
+ return { ...known, is_cut: true, is_unchecked: true, text: `${known.text}${summary.text}` };
723
+ } catch (error) {
724
+ error_text.trace_swallowed("run_review_pinned_remaining.recover_failed", error);
725
+ return summary;
726
+ }
727
+ }
728
+ async function current_answer(root) {
729
+ const summary = await run_review_pinned_steps.wait_alone(root);
730
+ const tree = await run_review_pinned_tree.key();
731
+ if (tree === void 0 || run_review_pinned_steps.launched_tree(root) !== tree) {
732
+ return test_pinned_record.not_run_summary(MOVED_NOTE);
733
+ }
734
+ const answer = is_failed(summary) ? await recover_failed(summary, root) : summary;
735
+ return await is_current(tree) ? answer : test_pinned_record.not_run_summary(MOVED_NOTE);
736
+ }
737
+ async function relaunched_answer(root) {
738
+ const launched = await start(root);
739
+ return launched.kind === "launched" ? await current_answer(root) : test_pinned_record.not_run_summary(launched.note);
740
+ }
741
+ async function read(root = PROJECT_ROOT) {
742
+ if (!run_review_pinned_steps.is_remaining(root)) return void 0;
743
+ if (run_review_pinned_steps.launched_tree(root) === await run_review_pinned_tree.key()) {
744
+ return await current_answer(root);
745
+ }
746
+ return await run_review_pinned_join.answer_on_tree(root) ?? await relaunched_answer(root);
747
+ }
748
+ function incomplete(summary) {
749
+ return {
750
+ ...summary,
751
+ text: `${summary.text}Remaining probe incomplete: no current-tree answer
752
+ `
753
+ };
754
+ }
755
+ function collected(summary, answer) {
756
+ if (answer === void 0) return incomplete(summary);
757
+ return answer.counts === void 0 && answer.is_unchecked === true ? { ...summary, text: `${summary.text}${answer.text}` } : answer;
758
+ }
759
+ function is_collectable(summary, root) {
760
+ return summary.is_cut === true && run_review_pinned_steps.launched_reason(root) === void 0;
761
+ }
762
+ async function collect_current(summary, root) {
763
+ const tree = await run_review_pinned_tree.key();
764
+ const answer = await read(root) ?? await relaunched_answer(root);
765
+ return await is_current(tree) ? collected(summary, answer) : test_pinned_record.not_run_summary(MOVED_NOTE);
766
+ }
767
+ async function collect(summary, root = PROJECT_ROOT) {
768
+ return summary !== void 0 && is_collectable(summary, root) ? await collect_current(summary, root) : summary;
769
+ }
770
+ var run_review_pinned_remaining = { collect, read, start };
771
+
772
+ // scripts/run/review/run-review-join-read.ts
773
+ var DUE_PREFIX = "josh-run-review-join-due-";
774
+ function due_path(root) {
775
+ return stamp_file.stamp_path(DUE_PREFIX, root);
776
+ }
777
+ function mark_due(root = PROJECT_ROOT) {
778
+ try {
779
+ stamp_file.replace_stamp(due_path(root), { due: true });
780
+ } catch (error) {
781
+ error_text.trace_swallowed("run_review_join_read.mark_due", error);
782
+ }
783
+ }
784
+ function is_due(root = PROJECT_ROOT) {
785
+ return stamp_file.read_stamp_text(due_path(root)) !== void 0;
786
+ }
787
+ async function verdict(wait) {
788
+ const summary = await wait();
789
+ if (summary === void 0) return void 0;
790
+ if (summary.is_partial === true) {
791
+ return { summary, is_stop: false, text: test_pinned_logic.report_text(summary) };
792
+ }
793
+ const judged = await run_review_pinned_accepted.judge(
794
+ summary,
795
+ run_review_pinned_steps.launched_reason()
796
+ );
797
+ return { summary, is_stop: judged.kind === "stop", text: judged.text };
798
+ }
799
+ async function read_with(wait, root = PROJECT_ROOT) {
800
+ stamp_file.remove_stamp(due_path(root));
801
+ return await verdict(wait);
802
+ }
803
+ async function read2(root = PROJECT_ROOT, is_fixing = false) {
804
+ return await read_with(
805
+ async () => await run_review_pinned_remaining.collect(
806
+ await run_review_pinned_join.wait_for_join(root, void 0, is_fixing),
807
+ root
808
+ ),
809
+ root
810
+ );
811
+ }
812
+ async function read_finished(root = PROJECT_ROOT) {
813
+ return await read_with(
814
+ async () => await run_review_pinned_remaining.read(root) ?? await run_review_pinned_remaining.collect(
815
+ await run_review_pinned_join.finished_on_tree(root),
816
+ root
817
+ ),
818
+ root
819
+ );
820
+ }
821
+ async function read_remaining() {
822
+ return await read_with(
823
+ async () => await run_review_pinned_remaining.read() ?? await run_review_pinned_remaining.collect(await run_review_pinned_steps.wait_alone())
824
+ );
825
+ }
826
+ var run_review_join_read = {
827
+ is_due,
828
+ mark_due,
829
+ read: read2,
830
+ read_finished,
831
+ read_remaining,
832
+ read_with,
833
+ verdict
834
+ };
835
+
836
+ // scripts/review/review-record-pinned.ts
837
+ function started_line() {
838
+ return `test:pinned restarted in the background on the tree this round's fixes moved. Where it names unpinned places, the ship's pre-detach stops on them: pin each with a test that turns red without it, or ship with \`--unpinned-ok "<reason>"\`.`;
839
+ }
840
+ async function restart_if_moved2(root = PROJECT_ROOT) {
841
+ try {
842
+ const is_started = await run_review_pinned_join.restart_if_moved(root);
843
+ if (is_started) console.info(started_line());
844
+ return is_started;
845
+ } catch (error) {
846
+ error_text.trace_swallowed("review_record_pinned.restart_if_moved", error);
847
+ return false;
848
+ }
849
+ }
850
+ var CHOICE_LINE = 'Unpinned before the ship: pin each place above with a test that turns red without it, or ship with `--unpinned-ok "<reason>"`.\n';
851
+ function show_stop(joined) {
852
+ if (joined === void 0) return;
853
+ const text = joined.is_stop ? test_pinned_logic.report_text(joined.summary, CHOICE_LINE) : joined.text;
854
+ if (joined.is_stop || [joined.summary.is_unchecked, joined.summary.is_partial].includes(true)) {
855
+ console.info(text.trimEnd());
856
+ }
857
+ }
858
+ async function read_skipped_join(root = PROJECT_ROOT) {
859
+ try {
860
+ if (run_review_join_read.is_due(root) || run_review_pinned_steps.is_remaining(root)) {
861
+ show_stop(await run_review_join_read.read_finished(root));
862
+ }
863
+ } catch (error) {
864
+ error_text.trace_swallowed("review_record_pinned.read_skipped_join", error);
865
+ }
866
+ await check_related_unplanned.show();
867
+ }
868
+ async function is_round_recorded(root) {
869
+ const issue = lane_child_marker.marked_issue();
870
+ if (issue === void 0) return false;
871
+ const content = await observation_ledger_home.read(root);
872
+ return content !== void 0 && review_finding_ledger.has_issue_record(content, Number(issue));
873
+ }
874
+ async function is_restartable_before_record(root) {
875
+ if (!lane_child_marker.is_child_of(root) || run_ship_detach.is_supervised()) return false;
876
+ return !await is_round_recorded(root);
877
+ }
878
+ async function restart_in_lane(root = PROJECT_ROOT) {
879
+ try {
880
+ return await is_restartable_before_record(root) && await restart_if_moved2(root);
881
+ } catch (error) {
882
+ error_text.trace_swallowed("review_record_pinned.restart_in_lane", error);
883
+ return false;
884
+ }
885
+ }
886
+ var review_record_pinned = {
887
+ CHOICE_LINE,
888
+ read_skipped_join,
889
+ restart_if_moved: restart_if_moved2,
890
+ restart_in_lane,
891
+ started_line
892
+ };
893
+
894
+ export {
895
+ check_related_unplanned,
896
+ run_review_pinned,
897
+ run_review_pinned_accepted,
898
+ GATE_GREEN,
899
+ run_review,
900
+ run_review_steps,
901
+ run_review_pinned_steps,
902
+ run_review_pinned_tree,
903
+ run_review_pinned_join,
904
+ run_review_pinned_remaining,
905
+ run_review_join_read,
906
+ review_record_pinned
907
+ };