@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
@@ -1,1189 +0,0 @@
1
- import {
2
- run_wake_code,
3
- run_wake_stop,
4
- run_wake_takeover,
5
- run_wake_window
6
- } from "./chunk-HG2NZQD5.js";
7
- import {
8
- run_wake_handoff
9
- } from "./chunk-EBI2BAKQ.js";
10
- import {
11
- lane_withdraw_closed
12
- } from "./chunk-TP6L4W3W.js";
13
- import {
14
- lane_close
15
- } from "./chunk-ZZFFSQF4.js";
16
- import {
17
- backlog_drive_args
18
- } from "./chunk-JHN6RCE6.js";
19
- import {
20
- lane_session_broker
21
- } from "./chunk-L7DAL54N.js";
22
- import {
23
- ts_entry_loader
24
- } from "./chunk-VHRNXWVP.js";
25
- import {
26
- lane_relaunch
27
- } from "./chunk-AC26ZUG5.js";
28
- import {
29
- document_section_cli
30
- } from "./chunk-ZSOR4ISJ.js";
31
- import {
32
- run_stranded_detect
33
- } from "./chunk-G5KSL2Q2.js";
34
- import {
35
- run_wake
36
- } from "./chunk-6Q3XUCLM.js";
37
- import {
38
- run_carry_ended
39
- } from "./chunk-ZVAIIHBE.js";
40
- import {
41
- epic_triage
42
- } from "./chunk-VQRT32JB.js";
43
- import {
44
- josh_command
45
- } from "./chunk-2VRITY55.js";
46
- import {
47
- telegram_notify
48
- } from "./chunk-WJ4NEDNI.js";
49
- import {
50
- run_step_section_table
51
- } from "./chunk-JIGBNCDR.js";
52
- import {
53
- gh_spawn
54
- } from "./chunk-3PEXBHRN.js";
55
- import {
56
- backlogrun_launch
57
- } from "./chunk-2EZTYLO4.js";
58
- import {
59
- agent_argv
60
- } from "./chunk-NU7W6QGT.js";
61
- import {
62
- claude_agent_argv
63
- } from "./chunk-DEZF7QZZ.js";
64
- import {
65
- run_event_setup
66
- } from "./chunk-I2KCGKJI.js";
67
- import {
68
- run_headless
69
- } from "./chunk-7C7FOKJK.js";
70
- import {
71
- agent_role_profile
72
- } from "./chunk-6UCWAFQY.js";
73
- import {
74
- lane_registry
75
- } from "./chunk-452HWOJ7.js";
76
- import {
77
- run_liveness
78
- } from "./chunk-3AEDZZNL.js";
79
- import {
80
- detached_launch
81
- } from "./chunk-C2SEDMZ3.js";
82
- import {
83
- run_event_stream_emit
84
- } from "./chunk-OKZWEVR4.js";
85
- import {
86
- run_event_stream
87
- } from "./chunk-NSAVEXVR.js";
88
- import {
89
- agent_safe_text
90
- } from "./chunk-3LZXX5GL.js";
91
- import {
92
- issue_citation
93
- } from "./chunk-22DVQCP6.js";
94
- import {
95
- run_carry,
96
- run_invocation
97
- } from "./chunk-MPGJ4ONJ.js";
98
- import {
99
- cli_flags
100
- } from "./chunk-2FE3C4PH.js";
101
- import {
102
- poll
103
- } from "./chunk-SBGTCT2C.js";
104
- import {
105
- process_identity
106
- } from "./chunk-AKK56GNX.js";
107
- import {
108
- error_text
109
- } from "./chunk-CDY4NFQG.js";
110
- import {
111
- stamp_file
112
- } from "./chunk-QWWTC3XR.js";
113
- import {
114
- MS_PER_SECOND
115
- } from "./chunk-WPAQUMHC.js";
116
-
117
- // scripts/run/wake/run-wake-cli.ts
118
- import { dirname as __josh_dirname } from "node:path";
119
- import { fileURLToPath as __josh_file_path } from "node:url";
120
- import { fileURLToPath } from "node:url";
121
-
122
- // scripts/run/wake/run-wake-await.ts
123
- function is_live_carry(read, ports) {
124
- if (read.kind !== "carried") return false;
125
- return ports.is_owner_live(read.carry) || ports.is_launched_record(read.carry);
126
- }
127
- function is_launched_record(carry, git_directory) {
128
- const launch = backlogrun_launch.pending_launch(git_directory);
129
- if (launch === void 0 || carry.is_handed_off !== true) return false;
130
- return carry.invocation === launch.invocation && Date.parse(carry.started_at) === Date.parse(launch.started_at);
131
- }
132
- function supervised_invocation(ports) {
133
- const read = ports.read_carry();
134
- if (read.kind !== "carried") return ports.pending_invocation();
135
- if (ports.is_owner_live(read.carry)) return read.carry.invocation;
136
- return ports.pending_invocation() ?? read.carry.invocation;
137
- }
138
- async function await_carry(ports, interval_ms) {
139
- const read = ports.read_carry();
140
- if (is_live_carry(read, ports)) return read;
141
- if (ports.pending_invocation() === void 0) return ports.read_carry();
142
- await ports.sleep(interval_ms);
143
- return await await_carry(ports, interval_ms);
144
- }
145
- function ports_of(context) {
146
- return {
147
- read_carry: () => run_carry.read_carry(context.carry_target),
148
- pending_invocation: () => backlogrun_launch.pending_launch(context.git_directory)?.invocation,
149
- is_owner_live: (carry) => run_carry.is_owner_live(carry),
150
- is_launched_record: (carry) => is_launched_record(carry, context.git_directory),
151
- sleep: poll.sleep
152
- };
153
- }
154
- function supervised_carry(read, invocation, ports) {
155
- if (read.kind !== "carried") return void 0;
156
- if (read.carry.invocation === invocation || ports.is_owner_live(read.carry)) return read.carry;
157
- return void 0;
158
- }
159
- function held_for(target, wake, carry, profile) {
160
- if (carry.invocation === wake.invocation) return { kind: "claimed", wake, carry };
161
- const supervised2 = run_wake.fresh_wake(carry.invocation, /* @__PURE__ */ new Date(), profile);
162
- run_wake.update_wake(target, supervised2);
163
- return { kind: "claimed", wake: supervised2, carry };
164
- }
165
- async function claim_run(context, profile, interval_ms, ports = ports_of(context)) {
166
- const invocation = supervised_invocation(ports);
167
- if (invocation === void 0) return { kind: "refused", carry_kind: ports.read_carry().kind };
168
- const wake = run_wake.claim(context.wake_target, invocation, /* @__PURE__ */ new Date(), profile);
169
- if (wake === void 0) return { kind: "running" };
170
- const read = await await_carry(ports, interval_ms);
171
- const carry = supervised_carry(read, invocation, ports);
172
- if (carry !== void 0) return held_for(context.wake_target, wake, carry, profile);
173
- run_wake.tidy_own_wake(context.wake_target);
174
- return { kind: "refused", carry_kind: read.kind };
175
- }
176
- var run_wake_await = { await_carry, claim_run, supervised_invocation };
177
-
178
- // scripts/run/wake/run-wake-describe.ts
179
- import path from "node:path";
180
-
181
- // scripts/run/wake/run-wake-caffeinate.ts
182
- import { spawn } from "node:child_process";
183
- import { existsSync } from "node:fs";
184
- var CAFFEINATE_PATH = "/usr/bin/caffeinate";
185
- var CAFFEINATE_FLAGS = ["-i", "-s", "-w"];
186
- function argv(pid) {
187
- return [...CAFFEINATE_FLAGS, String(pid)];
188
- }
189
- function keep_awake(pid, is_present = existsSync, spawner = spawn) {
190
- if (!is_present(CAFFEINATE_PATH)) return;
191
- const child = spawner(CAFFEINATE_PATH, argv(pid), { detached: true, stdio: "ignore" });
192
- child.on("error", () => {
193
- });
194
- child.unref();
195
- }
196
- var run_wake_caffeinate = {
197
- CAFFEINATE_PATH,
198
- argv,
199
- keep_awake
200
- };
201
-
202
- // scripts/run/wake/run-wake-session.ts
203
- var WAKE_COMMAND = claude_agent_argv.AGENT_COMMAND;
204
- var WAKE_FLAGS = claude_agent_argv.AGENT_FLAGS;
205
- var LOOP_FLAG = "--loop";
206
- var INTERVAL_FLAG = "--interval";
207
- var SUPERVISOR_SESSION = "run-wake-supervisor";
208
- function scheduler_profile() {
209
- const resolved = agent_role_profile.resolve(agent_role_profile.SCHEDULER);
210
- agent_role_profile.warn_of_default();
211
- if (resolved.kind === "profile") return resolved.profile;
212
- console.error(resolved.note);
213
- return void 0;
214
- }
215
- function chosen_profile(provider) {
216
- const environment = backlogrun_launch.chosen_environment(provider);
217
- return agent_role_profile.resolve(agent_role_profile.SCHEDULER, environment);
218
- }
219
- function supervisor_environment(profile) {
220
- return profile.provider === "openai" ? { CODEX_THREAD_ID: SUPERVISOR_SESSION } : { CLAUDE_CODE_CHILD_SESSION: SUPERVISOR_SESSION, CODEX_THREAD_ID: void 0 };
221
- }
222
- function safe_invocation(invocation) {
223
- if (!detached_launch.is_safe_value(invocation)) return void 0;
224
- const rebuilt = run_invocation.rebuild(invocation);
225
- return rebuilt === invocation ? rebuilt : void 0;
226
- }
227
- function profiled_argv(invocation, profile, cwd, session_id) {
228
- return cwd === void 0 ? agent_argv.with_profile(invocation, profile) : agent_argv.with_profile_in(invocation, profile, cwd, session_id);
229
- }
230
- function resolved_argv(invocation, cwd) {
231
- return cwd === void 0 ? agent_argv.resolve(invocation, agent_role_profile.SCHEDULER) : agent_argv.resolve_in(invocation, agent_role_profile.SCHEDULER, cwd);
232
- }
233
- function handoff_prompt(matched, material) {
234
- return `${matched}
235
- Driver handoff: ${agent_safe_text.printable(material)}`.slice(
236
- 0,
237
- agent_safe_text.MAX_PROMPT_LENGTH
238
- );
239
- }
240
- function wake_argv(invocation, profile, cwd, session) {
241
- const matched = safe_invocation(invocation);
242
- if (matched === void 0) return void 0;
243
- const prompt = typeof session === "object" ? handoff_prompt(matched, session.material) : matched;
244
- const session_id = typeof session === "object" ? session.id : session;
245
- return profile === void 0 ? resolved_argv(prompt, cwd) : profiled_argv(prompt, profile, cwd, session_id);
246
- }
247
- function supervisor_argv(script_path, interval) {
248
- const chosen = interval === void 0 ? [] : [INTERVAL_FLAG, interval];
249
- return {
250
- command: process.execPath,
251
- args: [...ts_entry_loader.loader_argv(process.execArgv), script_path, LOOP_FLAG, ...chosen]
252
- };
253
- }
254
- var run_wake_session = {
255
- INTERVAL_FLAG,
256
- LOOP_FLAG,
257
- WAKE_COMMAND,
258
- WAKE_FLAGS,
259
- ensure_log: detached_launch.ensure_log,
260
- is_safe_argv: detached_launch.is_safe_argv,
261
- keep_awake: run_wake_caffeinate.keep_awake,
262
- launch: detached_launch.launch,
263
- chosen_profile,
264
- scheduler_profile,
265
- supervisor_argv,
266
- supervisor_environment,
267
- wake_argv
268
- };
269
-
270
- // scripts/run/wake/run-wake-describe.ts
271
- var UNKNOWN_CUTS = "an unreadable number of";
272
- var REPO_LOOKUP_TIMEOUT_MS = 1e4;
273
- var STOP_COMMAND = "pnpm josh backlogrun --stop";
274
- var UNREADABLE_TIME = "an unreadable time";
275
- function carry_cuts(read) {
276
- if (read.kind === "carried") return String(read.carry.cuts);
277
- return UNKNOWN_CUTS;
278
- }
279
- function outstanding_line(wake) {
280
- if (wake.attempts === void 0) return void 0;
281
- return `${String(wake.attempts)} launch(es) outstanding for the current cut, none claimed yet`;
282
- }
283
- function wait_input(wake, read, now) {
284
- return {
285
- read,
286
- woke_at: wake.woke_at,
287
- attempts: wake.attempts ?? 0,
288
- is_owner_live: read.kind === "carried" && run_carry.is_owner_live(read.carry, now),
289
- has_work: wake.idle_since === void 0 ? void 0 : false,
290
- idle_since: wake.idle_since,
291
- now
292
- };
293
- }
294
- function deadline(marked_at, limit_ms) {
295
- const marked = Date.parse(marked_at ?? "");
296
- return Number.isNaN(marked) ? UNREADABLE_TIME : new Date(marked + limit_ms).toISOString();
297
- }
298
- function owner_wait(wake, carry) {
299
- if (carry.owner_pid === wake.pid) {
300
- return "waiting: the driver holds the carry record and is running";
301
- }
302
- return `waiting: process ${String(carry.owner_pid)} holds the carry record; the driver starts at its next cut or once it exits`;
303
- }
304
- var WAIT_LINES = {
305
- pending: (wake) => `waiting: the woken session has until ${deadline(wake.woke_at, run_wake.WAKE_GRACE_MS)} to begin work on the carry record`,
306
- idle: (wake) => `waiting: no runnable work; the driver starts anyway at ${deadline(wake.idle_since, run_wake.IDLE_CEILING_MS)}`
307
- };
308
- function wait_line(wake, read, now) {
309
- const { kind } = run_wake.decide(wait_input(wake, read, now));
310
- if (kind === "wait" && read.kind === "carried") return owner_wait(wake, read.carry);
311
- return WAIT_LINES[kind]?.(wake);
312
- }
313
- function stream_lines(context) {
314
- const event = run_event_stream.read_last(context.event_target);
315
- const progress = event === void 0 ? [] : [`progress: ${run_event_stream.format_event(event)}`];
316
- const follow = `watch: \`pnpm josh run:board\` in a pane of its own (recover with \`tail -F ${context.event_target}\`)`;
317
- return [...progress, follow];
318
- }
319
- function describe_wake(wake, context, now = /* @__PURE__ */ new Date()) {
320
- const live = run_wake.is_supervisor_live(wake) ? "running" : "not running";
321
- const read = run_carry.read_carry(context.carry_target);
322
- return [
323
- `invocation: ${wake.invocation}`,
324
- `profile: ${wake.profile === void 0 ? "unrecorded" : agent_role_profile.describe(wake.profile)}`,
325
- `supervisor: process ${String(wake.pid)} (${live}), watching since ${wake.started_at}`,
326
- `woke ${String(wake.woke)} session(s) across ${carry_cuts(read)} cut(s)`,
327
- outstanding_line(wake),
328
- wait_line(wake, read, now),
329
- run_liveness.describe_agent_state(context.log_target),
330
- `output: ${context.log_target}`,
331
- // How progress is seen without asking after the cut: the run's stream, followed from here.
332
- // `--list` is that reader's one-shot last-event form.
333
- ...stream_lines(context),
334
- `stop it with \`${STOP_COMMAND}\``
335
- ].filter((line) => line !== void 0).join("\n");
336
- }
337
- function cite_description(description, repo) {
338
- return repo === void 0 ? description : issue_citation.linkify(description, repo);
339
- }
340
- function describe_wake_cited(wake, context) {
341
- const repo = gh_spawn.get_repo_name_with_owner_within(REPO_LOOKUP_TIMEOUT_MS);
342
- return cite_description(describe_wake(wake, context), repo);
343
- }
344
- function context_of(directory, note) {
345
- const log_target = run_wake.wake_log_path(directory);
346
- run_wake_session.ensure_log(log_target, note);
347
- return {
348
- carry_target: run_carry.carry_path(directory),
349
- ended_target: run_carry_ended.ended_path(directory),
350
- wake_target: run_wake.wake_path(directory),
351
- log_target,
352
- event_target: run_event_stream.target_of(directory),
353
- git_directory: directory,
354
- worktree: path.dirname(directory)
355
- };
356
- }
357
- var run_wake_describe = {
358
- STOP_COMMAND,
359
- cite_description,
360
- context_of,
361
- describe_wake,
362
- describe_wake_cited
363
- };
364
-
365
- // scripts/run/wake/run-wake-loop.ts
366
- var STOPPED_REASON = "stopped";
367
- var FAILED_REASON = "failed";
368
- var RELOAD_REASON = "reload";
369
- var NO_ATTEMPTS = 0;
370
- var STOPPED_BY_PERSON = { reason: STOPPED_REASON, note: void 0 };
371
- var CODE_CHANGED = { reason: RELOAD_REASON, note: void 0 };
372
- function stopped(reason, note) {
373
- return { kind: "stop", stop: { reason, note } };
374
- }
375
- function wake_failure_note(wake) {
376
- const attempts = String(wake.attempts ?? NO_ATTEMPTS);
377
- const last = wake.woke_pid === void 0 ? "none" : `process ${String(wake.woke_pid)}`;
378
- return `woke a session for "${wake.invocation}" ${attempts} time(s) and none of them claimed the carry record; the last one was ${last}, which may still be running`;
379
- }
380
- function beside_step(wake, material, ports) {
381
- const result = ports.wake_beside(wake.invocation, ports.new_session_id(), material);
382
- return result.kind === "failed" ? stopped(FAILED_REASON, result.note) : { kind: "continue", wake };
383
- }
384
- function handoff_step(wake, material, ports) {
385
- const session_id = ports.new_session_id();
386
- ports.hand_off(session_id);
387
- const result = ports.wake(wake.invocation, session_id, material);
388
- if (result.kind === "failed") return stopped(FAILED_REASON, result.note);
389
- return { kind: "continue", wake: run_wake.count_wake(wake, ports.now(), result.pid, session_id) };
390
- }
391
- async function wake_step(wake, ports) {
392
- const driven = await ports.drive();
393
- if (driven.kind === "finished") return stopped("ended");
394
- if (driven.kind === "failed") return stopped(FAILED_REASON, driven.note);
395
- if (driven.kind === "released") return { kind: "continue", wake };
396
- return driven.kind === "triage" ? beside_step(wake, driven.material, ports) : handoff_step(wake, driven.material, ports);
397
- }
398
- function continue_step(wake, decision, ports) {
399
- if (decision.kind === "wait") return { kind: "continue", wake: run_wake.count_claim(wake) };
400
- if (decision.kind === "idle") {
401
- return { kind: "continue", wake: run_wake.mark_idle(wake, ports.now()) };
402
- }
403
- return { kind: "continue", wake };
404
- }
405
- async function step(wake, decision, ports) {
406
- if (decision.kind === "stop") return stopped(decision.reason);
407
- if (decision.kind === "failed") return stopped(FAILED_REASON, wake_failure_note(wake));
408
- if (decision.kind === "wake") return await wake_step(wake, ports);
409
- return continue_step(wake, decision, ports);
410
- }
411
- function decision_input(wake, ports) {
412
- const read = ports.read_carry();
413
- return {
414
- read,
415
- woke_at: wake.woke_at,
416
- attempts: wake.attempts ?? NO_ATTEMPTS,
417
- is_owner_live: ports.is_owner_live(read),
418
- has_work: void 0,
419
- idle_since: wake.idle_since,
420
- now: ports.now()
421
- };
422
- }
423
- async function decide_pass(wake, ports) {
424
- const input = decision_input(wake, ports);
425
- const decision = run_wake.decide(input);
426
- if (decision.kind !== "wake") return decision;
427
- return run_wake.decide({ ...input, has_work: await ports.has_work(input.read) });
428
- }
429
- async function retry_closes(ports) {
430
- try {
431
- await ports.retry_closes();
432
- } catch (error) {
433
- error_text.trace_swallowed("run_wake_loop.retry_closes", error);
434
- }
435
- }
436
- async function run_pass(target, wake, ports) {
437
- const decision = await decide_pass(wake, ports);
438
- if (decision.kind !== "stop" && await ports.is_code_stale()) return CODE_CHANGED;
439
- await retry_closes(ports);
440
- const outcome = await step(wake, decision, ports);
441
- if (outcome.kind === "stop") return outcome.stop;
442
- return run_wake.update_wake(target, outcome.wake) ? void 0 : STOPPED_BY_PERSON;
443
- }
444
- function without_release_gap(ports) {
445
- let is_released = false;
446
- return {
447
- ...ports,
448
- drive: async () => {
449
- const result = await ports.drive();
450
- is_released = result.kind === "released" || result.kind === "triage";
451
- return result;
452
- },
453
- sleep: async (milliseconds) => {
454
- const duration = is_released ? 0 : milliseconds;
455
- is_released = false;
456
- await ports.sleep(duration);
457
- }
458
- };
459
- }
460
- async function run_loop(target, ports, interval_ms) {
461
- const continuous = without_release_gap(ports);
462
- return await poll.wait_for(
463
- async () => {
464
- const wake = run_wake.read_own_wake(target);
465
- return wake === void 0 ? STOPPED_BY_PERSON : await run_pass(target, wake, continuous);
466
- },
467
- { interval_ms, sleeper: continuous.sleep }
468
- );
469
- }
470
- var run_wake_loop = {
471
- FAILED_REASON,
472
- RELOAD_REASON,
473
- run_loop
474
- };
475
-
476
- // scripts/run/wake/run-wake-finish.ts
477
- var SUCCESS_EXIT_CODE = 0;
478
- var FAILURE_EXIT_CODE = 1;
479
- var WARNING_TITLE = "run:wake supervisor";
480
- var WARNING_RECOVERY = `Check the wake command, then restart with \`pnpm josh run:wake --start\`.`;
481
- var STOP_BODIES = {
482
- ended: void 0,
483
- stopped: void 0,
484
- reload: void 0,
485
- failed: "The supervisor could not continue the run and has stopped.",
486
- unreadable: "The carry record could not be read, so the supervisor stopped rather than guess at it."
487
- };
488
- function log_hint(context) {
489
- return `The output of every session this supervisor started is in ${context.log_target}.`;
490
- }
491
- function warning_body(stop, body, context) {
492
- return [body, log_hint(context), stop.note].filter(Boolean).join("\n");
493
- }
494
- async function warn_of_stop(stop, body, context) {
495
- return await telegram_notify.warn({
496
- issue_title: WARNING_TITLE,
497
- body: warning_body(stop, body, context),
498
- recovery: WARNING_RECOVERY
499
- });
500
- }
501
- function is_strand_told(stop, watched, is_warned) {
502
- if (!is_warned || stop.reason !== run_wake_loop.FAILED_REASON) return false;
503
- return run_stranded_detect.is_left_stranded(watched);
504
- }
505
- async function record_failure(stop, watched, is_warned) {
506
- if (!is_strand_told(stop, watched, is_warned)) return;
507
- const [cause = ""] = (stop.note ?? "").split("\n", 1);
508
- await run_event_stream_emit.emit(
509
- run_event_stream.EVENT_KIND.STRANDED,
510
- `The supervisor failed and stopped watching the run \u2014 ${cause}`
511
- );
512
- }
513
- function exit_code_of(reason) {
514
- return reason === run_wake_loop.FAILED_REASON ? FAILURE_EXIT_CODE : SUCCESS_EXIT_CODE;
515
- }
516
- function stop_body(reason) {
517
- return STOP_BODIES[reason];
518
- }
519
- async function warn_and_record(stop, body, context, started_at) {
520
- console.error(stop.note ?? body);
521
- const is_warned = await warn_of_stop(stop, body, context);
522
- await record_failure(stop, { ...context, started_at }, is_warned);
523
- }
524
- async function finish(stop, context, started_at) {
525
- const body = stop_body(stop.reason);
526
- if (body !== void 0) await warn_and_record(stop, body, context, started_at);
527
- console.info(stop.reason);
528
- return exit_code_of(stop.reason);
529
- }
530
- var run_wake_finish = {
531
- finish,
532
- record_failure,
533
- stop_body,
534
- warning_body
535
- };
536
-
537
- // scripts/run/wake/run-wake-ports.ts
538
- import { randomUUID } from "node:crypto";
539
-
540
- // scripts/run/run-step-section-driver.ts
541
- var { DRIVER_SECTIONS, LOOP } = run_step_section_table;
542
- function carried_text(found, root) {
543
- return document_section_cli.section_text(found.document, found.heading, root) ?? `\`${found.document}\` \u2192 "${found.heading}"`;
544
- }
545
- function driver_sections(verdict, root = process.cwd()) {
546
- const found = DRIVER_SECTIONS.find(([prefix]) => verdict.startsWith(prefix));
547
- return (found?.[1] ?? [LOOP]).map((section) => carried_text(section, root)).join("\n");
548
- }
549
- var run_step_section_driver = { driver_sections };
550
-
551
- // scripts/run/wake/run-wake-resume.ts
552
- var RESUME_PREFIX = "resume: ";
553
- var OWNER_FLAG = "--owner";
554
- var DROPPED_FLAGS = /* @__PURE__ */ new Set([OWNER_FLAG, "--active"]);
555
- var SUFFIX = ".resume";
556
- var SUCCESS = 0;
557
- function resume_of(out) {
558
- return out.split("\n").find((line) => line.startsWith(RESUME_PREFIX));
559
- }
560
- function is_dropped(flags, index) {
561
- return [flags[index], flags[index - 1]].some(
562
- (flag) => flag !== void 0 && DROPPED_FLAGS.has(flag)
563
- );
564
- }
565
- function state_flags(line) {
566
- const flags = line.slice(RESUME_PREFIX.length).split(" ");
567
- if (!flags.includes(OWNER_FLAG) || backlog_drive_args.parse(flags) === void 0) return void 0;
568
- return flags.filter((_flag, index) => !is_dropped(flags, index));
569
- }
570
- function is_valid(line) {
571
- return state_flags(line) !== void 0;
572
- }
573
- function resumed_args(base, line) {
574
- const state = line === void 0 ? void 0 : state_flags(line);
575
- return state === void 0 ? void 0 : [...base, ...state];
576
- }
577
- function key_of(carry) {
578
- return `${carry.started_at} ${carry.invocation}`;
579
- }
580
- function resume_path(target) {
581
- return `${target}${SUFFIX}`;
582
- }
583
- function stored(target, carry) {
584
- const [key, line] = stamp_file.read_stamp_text(resume_path(target))?.split("\n") ?? [];
585
- return key === key_of(carry) ? line : void 0;
586
- }
587
- function remember(target, carry, result) {
588
- if (result.code !== SUCCESS) return;
589
- const line = resume_of(result.out);
590
- const source = resume_path(target);
591
- if (line === void 0) stamp_file.remove_stamp(source);
592
- else stamp_file.replace_text_stamp(source, `${key_of(carry)}
593
- ${line}`);
594
- }
595
- function name_beside(target, carry, pid) {
596
- const line = stored(target, carry);
597
- if (line === void 0) return;
598
- const flags = backlog_drive_args.beside_flags(pid, process_identity.read_start(pid));
599
- stamp_file.replace_text_stamp(resume_path(target), `${key_of(carry)}
600
- ${line} ${flags.join(" ")}`);
601
- }
602
- var run_wake_resume = { is_valid, name_beside, remember, resume_of, resumed_args, stored };
603
-
604
- // scripts/run/wake/run-wake-driver.ts
605
- var SUCCESS2 = 0;
606
- var FIRST_LINE = 0;
607
- var DETAILS_TAIL_LENGTH = 2048;
608
- var TRUNCATION_MARK = "... ";
609
- var ERROR_PREFIX = "error ";
610
- var { WINDOW_MINUTES } = run_wake_window;
611
- var WINDOW_VERDICT = "window";
612
- var { TRIAGE_VERDICT } = epic_triage;
613
- function driver_args(invocation) {
614
- const rebuilt = run_invocation.rebuild(invocation);
615
- if (rebuilt !== invocation) return void 0;
616
- const named_count = run_invocation.issue_numbers(rebuilt)?.length ?? 0;
617
- return [
618
- "backlog:drive",
619
- "--owner",
620
- String(process.pid),
621
- "--window",
622
- String(WINDOW_MINUTES),
623
- ...rebuilt.split(" ").slice(1 + named_count)
624
- ];
625
- }
626
- function is_final_stop(verdict, read) {
627
- return verdict?.startsWith("stop") === true && read.kind === "none";
628
- }
629
- function details_tail(details) {
630
- return details.length > DETAILS_TAIL_LENGTH ? `${TRUNCATION_MARK}${details.slice(-DETAILS_TAIL_LENGTH)}` : details;
631
- }
632
- var ALREADY_CLAIMED = "the carry record is already this session's, so run no pnpm josh run:carry --begin;";
633
- var HAND_BACK = "then end the turn, which hands the loop back";
634
- var NEXT_BY_VERDICT = [
635
- [
636
- "retrospective",
637
- `run what pnpm josh run:step prints (the retrospective below), close it with pnpm josh run:carry --retrospective --summary "<result>", ${HAND_BACK}`
638
- ],
639
- [
640
- "merge human-review",
641
- "stop the run, because the child stopped before its commit for a person (the section below)"
642
- ],
643
- ["epic #", `follow the named-issue sections below, ${HAND_BACK}`]
644
- ];
645
- var NEXT_DEFAULT = `act on the result by the sections below, ${HAND_BACK}`;
646
- var NEXT_BESIDE = "\nNext: the carry record stays the supervisor's, whose driver keeps collecting and filling lanes beside this session, so run no pnpm josh run:carry; act on the result by the sections below, then end the turn";
647
- function next_move(verdict) {
648
- if (verdict === TRIAGE_VERDICT) return NEXT_BESIDE;
649
- const found = NEXT_BY_VERDICT.find(([prefix]) => verdict.startsWith(prefix));
650
- return `
651
- Next: ${ALREADY_CLAIMED} ${found?.[1] ?? NEXT_DEFAULT}`;
652
- }
653
- function handoff_material(verdict, resume, details) {
654
- const context = details === "" ? "" : `
655
- Details: ${details_tail(details)}`;
656
- const epic = verdict.startsWith("epic #") ? "\nThe named item is an epic. Follow backlogrun-steps.md named epic procedure; do not launch the epic root as a fullrun child. After all children merge or park, record the root with pnpm josh run:carry --done <epic-number> before continuing to the next named item." : "";
657
- const sections = `
658
- ${run_step_section_driver.driver_sections(verdict)}`;
659
- return `Driver result: ${verdict}
660
- ${resume}${epic}${next_move(verdict)}${sections}${context}`;
661
- }
662
- function judged(verdict, resume, details) {
663
- if (!run_wake_resume.is_valid(resume)) {
664
- return { kind: "failed", note: `backlog:drive returned an invalid resume line: ${resume}` };
665
- }
666
- const kind = verdict === TRIAGE_VERDICT ? "triage" : "judgment";
667
- return { kind, material: handoff_material(verdict, resume, details) };
668
- }
669
- function driver_result(out, read, details = "") {
670
- const lines = out.split("\n");
671
- const verdict = lines[FIRST_LINE];
672
- if (is_final_stop(verdict, read)) return { kind: "finished" };
673
- const resume = run_wake_resume.resume_of(out);
674
- if (verdict === void 0 || resume === void 0) {
675
- return { kind: "failed", note: `backlog:drive returned an incomplete result: ${out}` };
676
- }
677
- return judged(verdict, resume, details);
678
- }
679
- function cause_of(out) {
680
- const errors = out.split("\n").filter((line) => line.startsWith(ERROR_PREFIX));
681
- return errors.length > 0 ? errors.join("\n") : details_tail(out);
682
- }
683
- function failure_note(result) {
684
- return [cause_of(result.out), details_tail(result.err ?? "")].filter(Boolean).join("\n");
685
- }
686
- function read_result(result, target) {
687
- if (result === void 0) return { kind: "released" };
688
- if (result.code !== SUCCESS2) return { kind: "failed", note: failure_note(result) };
689
- return driver_result(result.out, run_carry.read_carry(target), result.err);
690
- }
691
- function claim_record(target, invocation) {
692
- const current = run_carry.read_carry(target);
693
- if (current.kind !== "carried" || current.carry.invocation !== invocation) return false;
694
- if (current.carry.is_handed_off !== true && run_carry.is_held_by_another(current.carry)) {
695
- return false;
696
- }
697
- const owner = {
698
- ...run_carry.owner_of(process.pid),
699
- provider: current.carry.scheduler_provider
700
- };
701
- return run_carry.adopt_carry(target, current.carry, owner) !== void 0;
702
- }
703
- var RERUN_VERDICTS = ["merge busy", "merge retry"];
704
- var RERUN_LIMIT = 10;
705
- var RERUN_PAUSE_MS = 6e4;
706
- async function pause(ms) {
707
- await new Promise((resolve) => {
708
- setTimeout(resolve, ms);
709
- });
710
- }
711
- function is_verdict(result, entries) {
712
- const verdict = result.out.split("\n", 1)[FIRST_LINE] ?? "";
713
- return result.code === SUCCESS2 && entries.some((entry) => verdict === entry || verdict.startsWith(`${entry} `));
714
- }
715
- function rerun_args(pass, result, remaining) {
716
- const is_left = remaining > 0;
717
- if (!is_left || !is_verdict(result, RERUN_VERDICTS)) return void 0;
718
- return run_wake_resume.resumed_args(pass.base, run_wake_resume.resume_of(result.out));
719
- }
720
- async function run_driver(pass, args, remaining) {
721
- const result = await josh_command.josh_run(args, true);
722
- run_wake_resume.remember(pass.target, pass.carry, result);
723
- if (is_verdict(result, [WINDOW_VERDICT])) return void 0;
724
- const next = rerun_args(pass, result, remaining);
725
- if (next === void 0) return result;
726
- await pass.wait(RERUN_PAUSE_MS);
727
- if (run_carry.read_carry(pass.target).kind !== "carried") return void 0;
728
- return await run_driver(pass, next, remaining - 1);
729
- }
730
- async function deferred_triage(result, wait, is_parent_planning) {
731
- if (result === void 0 || !is_verdict(result, [TRIAGE_VERDICT]) || !is_parent_planning()) {
732
- return result;
733
- }
734
- await wait(RERUN_PAUSE_MS);
735
- return void 0;
736
- }
737
- async function announced(result) {
738
- if (result.kind === "judgment") await run_event_setup.emit(run_event_setup.STAGE.JUDGING);
739
- return result;
740
- }
741
- function never_planning() {
742
- return false;
743
- }
744
- function refused(note) {
745
- return { kind: "failed", note };
746
- }
747
- function prepare(target, wait) {
748
- const read = run_carry.read_carry(target);
749
- if (read.kind !== "carried") return refused("The carry record changed.");
750
- const base = driver_args(read.carry.invocation);
751
- if (base === void 0) return refused("The carried invocation is invalid.");
752
- const kept = run_wake_resume.stored(target, read.carry);
753
- const args = kept === void 0 ? base : run_wake_resume.resumed_args(base, kept);
754
- if (args === void 0) return refused("The kept driver resume line is invalid.");
755
- return { kind: "ready", pass: { target, carry: read.carry, base, wait }, args };
756
- }
757
- async function drive_with(target, wait, is_parent_planning) {
758
- const prepared = prepare(target, wait);
759
- if (prepared.kind === "failed") return prepared;
760
- if (!claim_record(target, prepared.pass.carry.invocation)) {
761
- return { kind: "failed", note: "The driver could not claim the carry record." };
762
- }
763
- await run_event_setup.emit(run_event_setup.STAGE.HANDING_OFF);
764
- const result = await deferred_triage(
765
- await run_driver(prepared.pass, prepared.args, RERUN_LIMIT),
766
- wait,
767
- is_parent_planning
768
- );
769
- return await announced(read_result(result, target));
770
- }
771
- async function drive(target, wait = pause, is_parent_planning = never_planning) {
772
- return await drive_with(target, wait, is_parent_planning);
773
- }
774
- var run_wake_driver = { RERUN_LIMIT, drive, driver_args, driver_result };
775
-
776
- // scripts/run/wake/run-wake-ports.ts
777
- var UNSAFE_INVOCATION_NOTE = "the carried invocation is not one this supervisor can continue \u2014 it is neither a backlogrun nor a queue it can rebuild, or it carries text that may not be passed to a command line";
778
- function note_to_stderr(note) {
779
- console.error(`wake: ${note}`);
780
- }
781
- function say_session_running(context) {
782
- run_event_setup.emit_to(context.event_target, run_event_setup.STAGE.SESSION, /* @__PURE__ */ new Date());
783
- }
784
- function session_owner(context, profile, session_id) {
785
- return run_wake_handoff.session_owner({
786
- worktree: context.worktree,
787
- session_id,
788
- provider: profile.provider
789
- });
790
- }
791
- function launch_session(context, invocation, profile, session) {
792
- const built = run_wake_session.wake_argv(invocation, profile, context.worktree, session);
793
- if (built === void 0) return { kind: "failed", note: UNSAFE_INVOCATION_NOTE };
794
- if (built.kind === "rejected") return { kind: "failed", note: built.note };
795
- const target = { cwd: context.worktree, env: session.environment, log_path: context.log_target };
796
- return run_wake_session.launch({ argv: built.argv, ...target, profile }, note_to_stderr);
797
- }
798
- function wake_beside(context, invocation, profile, session) {
799
- const result = launch_session(context, invocation, profile, session);
800
- const read = run_carry.read_carry(context.carry_target);
801
- if (result.kind === "launched" && read.kind === "carried") {
802
- run_wake_resume.name_beside(context.carry_target, read.carry, result.pid);
803
- }
804
- return result;
805
- }
806
- function wake_session(context, invocation, profile, session) {
807
- const result = launch_session(context, invocation, profile, session);
808
- if (result.kind === "launched") {
809
- run_wake_handoff.hand_on(
810
- context.carry_target,
811
- session_owner(context, profile, session.id),
812
- result.pid
813
- );
814
- say_session_running(context);
815
- }
816
- return result;
817
- }
818
- async function retry_closes2() {
819
- await lane_close.retry_closes();
820
- const notes = await lane_withdraw_closed.withdraw_closed();
821
- for (const note of notes) note_to_stderr(note);
822
- }
823
- function is_session_at_work(carry) {
824
- return run_carry.is_held_by_another(carry) && run_wake_handoff.has_session_begun(carry);
825
- }
826
- function session_ports(context, profile) {
827
- return {
828
- new_session_id: () => randomUUID(),
829
- hand_off: (session_id) => {
830
- run_wake_handoff.hand_to(context.carry_target, session_owner(context, profile, session_id));
831
- },
832
- wake: (invocation, session_id, material) => wake_session(context, invocation, profile, {
833
- id: session_id,
834
- material,
835
- environment: run_headless.environment()
836
- }),
837
- wake_beside: (invocation, session_id, material) => wake_beside(context, invocation, profile, {
838
- id: session_id,
839
- material,
840
- environment: run_headless.beside_environment()
841
- })
842
- };
843
- }
844
- function ports_for(context, profile, is_code_stale = async () => false) {
845
- function is_planning() {
846
- return backlogrun_launch.running_parent(context.git_directory) !== void 0;
847
- }
848
- return {
849
- is_code_stale,
850
- read_carry: () => run_carry.read_carry(context.carry_target),
851
- is_owner_live: (read) => read.kind === "carried" && is_session_at_work(read.carry),
852
- has_work: async () => true,
853
- ...session_ports(context, profile),
854
- drive: async () => await run_wake_driver.drive(context.carry_target, poll.sleep, is_planning),
855
- sleep: poll.sleep,
856
- now: () => /* @__PURE__ */ new Date(),
857
- retry_closes: retry_closes2
858
- };
859
- }
860
- var run_wake_ports = { note_to_stderr, ports_for };
861
-
862
- // scripts/lane/claude-lane-broker.ts
863
- var SCAN_INTERVAL_MS = 5e3;
864
- function is_served(lane) {
865
- return !lane.is_stranded && !lane_relaunch.is_openai_lane(lane);
866
- }
867
- async function hold_server(lane, held) {
868
- try {
869
- await lane_session_broker.with_server(lane, async () => {
870
- await held;
871
- });
872
- } catch (error) {
873
- error_text.trace_swallowed("claude_lane_broker.hold_server", error);
874
- }
875
- }
876
- function serve_lane(lane) {
877
- const release = { stop: () => void 0 };
878
- const held = new Promise((resolve) => {
879
- release.stop = resolve;
880
- });
881
- return { stop: release.stop, done: hold_server(lane, held) };
882
- }
883
- async function forget_when_done(served, issue, entry) {
884
- await entry.done;
885
- if (served.get(issue) === entry) served.delete(issue);
886
- }
887
- function close_gone(served, open) {
888
- for (const [issue, entry] of served) {
889
- if (open.has(issue)) {
890
- continue;
891
- }
892
- entry.stop();
893
- void forget_when_done(served, issue, entry);
894
- }
895
- }
896
- function open_new(served, lanes) {
897
- for (const lane of lanes) {
898
- if (!served.has(lane.issue)) served.set(lane.issue, serve_lane(lane));
899
- }
900
- }
901
- async function scan(served, list2) {
902
- try {
903
- const listed = await list2();
904
- const lanes = listed.filter((lane) => is_served(lane));
905
- close_gone(served, new Set(lanes.map((lane) => lane.issue)));
906
- open_new(served, lanes);
907
- } catch (error) {
908
- error_text.trace_swallowed("claude_lane_broker.scan", error);
909
- }
910
- }
911
- async function scan_after(previous, served, list2) {
912
- await previous;
913
- await scan(served, list2);
914
- }
915
- function start(list2 = lane_registry.list_lanes) {
916
- const served = /* @__PURE__ */ new Map();
917
- const state = { scanning: scan(served, list2) };
918
- const timer = setInterval(() => {
919
- state.scanning = scan_after(state.scanning, served, list2);
920
- }, SCAN_INTERVAL_MS).unref();
921
- return async () => {
922
- clearInterval(timer);
923
- await state.scanning;
924
- close_gone(served, /* @__PURE__ */ new Set());
925
- await Promise.all(
926
- [...served.values()].map(async (entry) => {
927
- await entry.done;
928
- })
929
- );
930
- };
931
- }
932
- async function serve_during(run2, list2 = lane_registry.list_lanes) {
933
- const stop = start(list2);
934
- try {
935
- return await run2();
936
- } finally {
937
- await stop();
938
- }
939
- }
940
- var claude_lane_broker = { SCAN_INTERVAL_MS, serve_during, start };
941
-
942
- // scripts/run/wake/run-wake-restart.ts
943
- var RESTART_LIMIT = 3;
944
- function is_restartable(stop, restarts, ports) {
945
- return stop.reason === run_wake_loop.FAILED_REASON && restarts < RESTART_LIMIT && ports.is_resumable();
946
- }
947
- function restart_note(stop, restarts) {
948
- return `the supervisor failed (${stop.note ?? "no note"}); restarting it, ${String(restarts + 1)} of ${String(RESTART_LIMIT)}`;
949
- }
950
- function with_restart_count(stop, restarts) {
951
- if (restarts === 0 || stop.reason !== run_wake_loop.FAILED_REASON) return stop;
952
- return {
953
- ...stop,
954
- note: [stop.note, `after ${String(restarts)} automatic restarts`].filter(Boolean).join("\n")
955
- };
956
- }
957
- async function supervise(ports, restarts = 0) {
958
- const stop = await ports.pass();
959
- if (!is_restartable(stop, restarts, ports)) return with_restart_count(stop, restarts);
960
- ports.note(restart_note(stop, restarts));
961
- await ports.pause();
962
- return await supervise(ports, restarts + 1);
963
- }
964
- var run_wake_restart = { RESTART_LIMIT, supervise };
965
-
966
- // scripts/run/wake/run-wake-supervise.ts
967
- function restart_ports(target) {
968
- const { context, ports, interval_ms } = target;
969
- return {
970
- pass: async () => await run_wake_loop.run_loop(context.wake_target, ports, interval_ms),
971
- is_resumable: () => run_carry.read_carry(context.carry_target).kind === "carried",
972
- pause: async () => {
973
- await poll.sleep(interval_ms);
974
- },
975
- note: target.note
976
- };
977
- }
978
- async function supervise2(target) {
979
- return await claude_lane_broker.serve_during(
980
- async () => await run_wake_restart.supervise(restart_ports(target))
981
- );
982
- }
983
- var run_wake_supervise = { supervise: supervise2 };
984
-
985
- // scripts/run/wake/run-wake-cli.ts
986
- var __josh_meta = import.meta;
987
- var __josh_source_url = new URL("../../scripts/run/wake/run-wake-cli.ts", __josh_meta.url).href;
988
- var __josh_source_filename = __josh_file_path(__josh_source_url);
989
- var __josh_source_dirname = __josh_dirname(__josh_source_filename);
990
- var SUCCESS_EXIT_CODE2 = 0;
991
- var FAILURE_EXIT_CODE2 = 1;
992
- var ONE_GROUP = 1;
993
- var MAX_INTERVAL_SECONDS = 3600;
994
- var SCRIPT_PATH = fileURLToPath(new URL("run-wake-main.ts", __josh_source_url));
995
- var STARTED_VERDICT = "started";
996
- var RUNNING_VERDICT = "running";
997
- var STOPPED_VERDICT = "stopped";
998
- var SUPERVISING_VERDICT = "supervising";
999
- var STALE_VERDICT = "stale";
1000
- var NONE_VERDICT = "none";
1001
- var UNKNOWN_VERDICT = "unknown";
1002
- var FAILED_VERDICT = "failed";
1003
- var NO_PROFILE_NOTE = "the scheduler profile could not be resolved";
1004
- var RELOAD_FAILED_NOTE = "The supervisor's code changed, but the supervisor to replace it did not start";
1005
- var TAKEOVER_NOTES = {
1006
- died: "it exited before it claimed the run",
1007
- unclaimed: "it did not claim the run in time, so it was stopped"
1008
- };
1009
- var SUPERSEDED_RESULT = "superseded";
1010
- var REMOVED_RESULT = "removed";
1011
- var STOPPED_STOP = { reason: "stopped", note: void 0 };
1012
- var SUPERSEDED_NOTE = "another supervisor now holds the record, so it was left alone; this loop is the superseded one";
1013
- var USAGE = "Usage: josh run:wake --start | --list | --stop | --loop [--interval <seconds>]";
1014
- var OPTIONS = {
1015
- interval: { type: "string" },
1016
- list: { type: "boolean" },
1017
- loop: { type: "boolean" },
1018
- start: { type: "boolean" },
1019
- stop: { type: "boolean" }
1020
- };
1021
- function report(verdict, exit_code = SUCCESS_EXIT_CODE2) {
1022
- console.info(verdict);
1023
- return exit_code;
1024
- }
1025
- function usage() {
1026
- console.error(USAGE);
1027
- return FAILURE_EXIT_CODE2;
1028
- }
1029
- var { note_to_stderr: note_to_stderr2 } = run_wake_ports;
1030
- function to_interval_ms(value) {
1031
- if (typeof value !== "string") return run_wake_window.PASS_INTERVAL_MS;
1032
- const seconds = cli_flags.to_positive(value);
1033
- return seconds === void 0 || seconds > MAX_INTERVAL_SECONDS ? void 0 : seconds * MS_PER_SECOND;
1034
- }
1035
- function group_count(values) {
1036
- const verbs = [values.start, values.stop, values.list, values.loop];
1037
- return verbs.filter((flag) => flag === true).length;
1038
- }
1039
- function context_of2(directory) {
1040
- return run_wake_describe.context_of(directory, note_to_stderr2);
1041
- }
1042
- async function resolve_context() {
1043
- const directory = await run_carry.repository_directory();
1044
- return directory === void 0 ? void 0 : context_of2(directory);
1045
- }
1046
- function refuse_without_carry(kind) {
1047
- console.error(`No carried run here to supervise \u2014 \`pnpm josh run:carry --json\` says ${kind}.`);
1048
- return report(NONE_VERDICT, FAILURE_EXIT_CODE2);
1049
- }
1050
- function launch_supervisor(context, interval, profile) {
1051
- if (profile === void 0) return { kind: "failed", note: NO_PROFILE_NOTE };
1052
- const argv2 = run_wake_session.supervisor_argv(SCRIPT_PATH, interval);
1053
- return run_wake_session.launch(
1054
- {
1055
- argv: argv2,
1056
- cwd: context.worktree,
1057
- log_path: context.log_target,
1058
- env: run_wake_session.supervisor_environment(profile)
1059
- },
1060
- note_to_stderr2
1061
- );
1062
- }
1063
- function start_for_launch(git_directory, provider) {
1064
- const resolved = run_wake_session.chosen_profile(provider);
1065
- if (resolved.kind === "rejected") return { kind: "failed", note: resolved.note };
1066
- return launch_supervisor(context_of2(git_directory), void 0, resolved.profile);
1067
- }
1068
- function spawn_supervisor(context, interval, profile) {
1069
- const result = launch_supervisor(context, interval, profile);
1070
- if (result.kind === "failed") {
1071
- console.error(`Could not start the supervisor: ${result.note}`);
1072
- return report(FAILED_VERDICT, FAILURE_EXIT_CODE2);
1073
- }
1074
- console.error(
1075
- `Supervisor started as process ${String(result.pid)}. Stop it with \`${run_wake_describe.STOP_COMMAND}\`.`
1076
- );
1077
- return report(STARTED_VERDICT);
1078
- }
1079
- function start2(context, interval) {
1080
- const read = run_carry.read_carry(context.carry_target);
1081
- if (read.kind !== "carried") return refuse_without_carry(read.kind);
1082
- const existing = run_wake.read_wake(context.wake_target);
1083
- if (existing !== void 0 && run_wake.is_supervisor_live(existing)) {
1084
- console.error(run_wake_describe.describe_wake_cited(existing, context));
1085
- return report(RUNNING_VERDICT);
1086
- }
1087
- return spawn_supervisor(context, interval, run_wake_session.scheduler_profile());
1088
- }
1089
- function restart_supervisor(git_directory, profile) {
1090
- const chosen = profile ?? run_wake_session.scheduler_profile();
1091
- return spawn_supervisor(context_of2(git_directory), void 0, chosen);
1092
- }
1093
- function tidy_up(target) {
1094
- const tidied = run_wake.tidy_own_wake(target);
1095
- if (tidied === SUPERSEDED_RESULT) note_to_stderr2(SUPERSEDED_NOTE);
1096
- return tidied;
1097
- }
1098
- function code_check(is_stale) {
1099
- return async () => !lane_session_broker.is_answering() && await is_stale();
1100
- }
1101
- function reload_failed(note) {
1102
- return { reason: run_wake_loop.FAILED_REASON, note: `${RELOAD_FAILED_NOTE}: ${note}` };
1103
- }
1104
- function as_not_handed_on(stop) {
1105
- return stop.reason === run_wake_loop.RELOAD_REASON ? STOPPED_STOP : stop;
1106
- }
1107
- async function reload(context, interval_ms, profile) {
1108
- const interval = String(Math.round(interval_ms / MS_PER_SECOND));
1109
- const result = launch_supervisor(context, interval, profile);
1110
- if (result.kind === "failed") return reload_failed(result.note);
1111
- const ports = run_wake_takeover.ports_of(context.wake_target);
1112
- const takeover = await run_wake_takeover.await_takeover(result.pid, ports);
1113
- if (takeover !== "taken") return reload_failed(TAKEOVER_NOTES[takeover]);
1114
- await run_event_stream_emit.emit(
1115
- run_event_stream.EVENT_KIND.NOTE,
1116
- `The supervisor's code changed on main, so process ${String(process.pid)} handed the run to process ${String(result.pid)} on the new code.`
1117
- );
1118
- return { reason: run_wake_loop.RELOAD_REASON, note: void 0 };
1119
- }
1120
- async function supervised(context, interval_ms, profile) {
1121
- const source = run_wake_code.source_of(context.worktree, SCRIPT_PATH);
1122
- const is_stale = code_check(await run_wake_code.watch(source, lane_session_broker.take_refusal));
1123
- const ports = run_wake_ports.ports_for(context, profile, is_stale);
1124
- const stop = await run_wake_supervise.supervise({
1125
- context,
1126
- ports,
1127
- interval_ms,
1128
- note: note_to_stderr2
1129
- });
1130
- if (tidy_up(context.wake_target) !== REMOVED_RESULT) return as_not_handed_on(stop);
1131
- if (stop.reason !== run_wake_loop.RELOAD_REASON) return stop;
1132
- return await reload(context, interval_ms, profile);
1133
- }
1134
- async function loop(context, interval_ms) {
1135
- const profile = run_wake_session.scheduler_profile();
1136
- if (profile === void 0) return report(FAILED_VERDICT, FAILURE_EXIT_CODE2);
1137
- const claimed = await run_wake_await.claim_run(context, profile, interval_ms);
1138
- if (claimed.kind === "running") return report(RUNNING_VERDICT);
1139
- if (claimed.kind === "refused") return refuse_without_carry(claimed.carry_kind);
1140
- run_wake_session.keep_awake(process.pid);
1141
- const stop = await supervised(context, interval_ms, claimed.wake.profile ?? profile);
1142
- return await run_wake_finish.finish(stop, context, claimed.carry.started_at);
1143
- }
1144
- function list(context) {
1145
- const wake = run_wake.read_wake(context.wake_target);
1146
- if (wake === void 0) return report(NONE_VERDICT);
1147
- console.error(run_wake_describe.describe_wake_cited(wake, context));
1148
- return report(run_wake.is_supervisor_live(wake) ? SUPERVISING_VERDICT : STALE_VERDICT);
1149
- }
1150
- function stop_supervisor(context) {
1151
- const stopped2 = run_wake_stop.stop(context.wake_target);
1152
- return report(stopped2 === void 0 ? NONE_VERDICT : STOPPED_VERDICT);
1153
- }
1154
- async function dispatch(values, context, interval_ms) {
1155
- if (values.loop === true) return await loop(context, interval_ms);
1156
- if (values.start === true) return start2(context, cli_flags.string_of(values.interval));
1157
- if (values.stop === true) return stop_supervisor(context);
1158
- return list(context);
1159
- }
1160
- async function run(argv2) {
1161
- const values = cli_flags.values_of(argv2, OPTIONS);
1162
- if (values === void 0 || group_count(values) !== ONE_GROUP) return usage();
1163
- const interval_ms = to_interval_ms(values.interval);
1164
- if (interval_ms === void 0) return usage();
1165
- const context = await resolve_context();
1166
- if (context === void 0) return report(UNKNOWN_VERDICT, FAILURE_EXIT_CODE2);
1167
- return await dispatch(values, context, interval_ms);
1168
- }
1169
- var run_wake_cli = {
1170
- FAILED_VERDICT,
1171
- NONE_VERDICT,
1172
- RUNNING_VERDICT,
1173
- SCRIPT_PATH,
1174
- STALE_VERDICT,
1175
- STOPPED_VERDICT,
1176
- SUPERVISING_VERDICT,
1177
- UNKNOWN_VERDICT,
1178
- USAGE,
1179
- RELOAD_FAILED_NOTE,
1180
- reload,
1181
- restart_supervisor,
1182
- run,
1183
- start_for_launch,
1184
- supervised
1185
- };
1186
-
1187
- export {
1188
- run_wake_cli
1189
- };