waterplane 0.1.6 → 0.1.14

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 (656) hide show
  1. package/CHANGELOG.md +146 -1
  2. package/README.md +47 -24
  3. package/SECURITY.md +11 -3
  4. package/deploy/node-version +1 -1
  5. package/node_modules/@waterplane/shared/dist/agentfiles.d.ts +17 -0
  6. package/node_modules/@waterplane/shared/dist/agentfiles.js +60 -5
  7. package/node_modules/@waterplane/shared/dist/agentfiles.js.map +1 -1
  8. package/node_modules/@waterplane/shared/dist/alwaysonwords.d.ts +83 -0
  9. package/node_modules/@waterplane/shared/dist/alwaysonwords.js +215 -0
  10. package/node_modules/@waterplane/shared/dist/alwaysonwords.js.map +1 -0
  11. package/node_modules/@waterplane/shared/dist/assess/sasswords.js +4 -0
  12. package/node_modules/@waterplane/shared/dist/assess/sasswords.js.map +1 -1
  13. package/node_modules/@waterplane/shared/dist/autocompact.js +3 -2
  14. package/node_modules/@waterplane/shared/dist/autocompact.js.map +1 -1
  15. package/node_modules/@waterplane/shared/dist/backendsources.d.ts +11 -1
  16. package/node_modules/@waterplane/shared/dist/backendsources.js.map +1 -1
  17. package/node_modules/@waterplane/shared/dist/branchmode.d.ts +33 -0
  18. package/node_modules/@waterplane/shared/dist/branchmode.js +88 -0
  19. package/node_modules/@waterplane/shared/dist/branchmode.js.map +1 -0
  20. package/node_modules/@waterplane/shared/dist/budget.d.ts +7 -1
  21. package/node_modules/@waterplane/shared/dist/budget.js +11 -3
  22. package/node_modules/@waterplane/shared/dist/budget.js.map +1 -1
  23. package/node_modules/@waterplane/shared/dist/buildstamp.d.ts +37 -0
  24. package/node_modules/@waterplane/shared/dist/buildstamp.js +95 -0
  25. package/node_modules/@waterplane/shared/dist/buildstamp.js.map +1 -0
  26. package/node_modules/@waterplane/shared/dist/burn.d.ts +16 -1
  27. package/node_modules/@waterplane/shared/dist/burn.js +30 -0
  28. package/node_modules/@waterplane/shared/dist/burn.js.map +1 -1
  29. package/node_modules/@waterplane/shared/dist/calday.d.ts +4 -0
  30. package/node_modules/@waterplane/shared/dist/calday.js +25 -0
  31. package/node_modules/@waterplane/shared/dist/calday.js.map +1 -0
  32. package/node_modules/@waterplane/shared/dist/changebrief.d.ts +77 -0
  33. package/node_modules/@waterplane/shared/dist/changebrief.js +70 -0
  34. package/node_modules/@waterplane/shared/dist/changebrief.js.map +1 -0
  35. package/node_modules/@waterplane/shared/dist/clihealth/healthrecord.js +1 -0
  36. package/node_modules/@waterplane/shared/dist/clihealth/healthrecord.js.map +1 -1
  37. package/node_modules/@waterplane/shared/dist/costwindow.d.ts +24 -5
  38. package/node_modules/@waterplane/shared/dist/costwindow.js +35 -15
  39. package/node_modules/@waterplane/shared/dist/costwindow.js.map +1 -1
  40. package/node_modules/@waterplane/shared/dist/desktopfiles.d.ts +100 -0
  41. package/node_modules/@waterplane/shared/dist/desktopfiles.js +192 -0
  42. package/node_modules/@waterplane/shared/dist/desktopfiles.js.map +1 -0
  43. package/node_modules/@waterplane/shared/dist/exposure.d.ts +175 -0
  44. package/node_modules/@waterplane/shared/dist/exposure.js +357 -0
  45. package/node_modules/@waterplane/shared/dist/exposure.js.map +1 -0
  46. package/node_modules/@waterplane/shared/dist/exposurepush.d.ts +60 -0
  47. package/node_modules/@waterplane/shared/dist/exposurepush.js +103 -0
  48. package/node_modules/@waterplane/shared/dist/exposurepush.js.map +1 -0
  49. package/node_modules/@waterplane/shared/dist/healthindex/commits.d.ts +26 -0
  50. package/node_modules/@waterplane/shared/dist/healthindex/commits.js +57 -0
  51. package/node_modules/@waterplane/shared/dist/healthindex/commits.js.map +1 -0
  52. package/node_modules/@waterplane/shared/dist/healthindex/move.d.ts +25 -0
  53. package/node_modules/@waterplane/shared/dist/healthindex/move.js +79 -0
  54. package/node_modules/@waterplane/shared/dist/healthindex/move.js.map +1 -0
  55. package/node_modules/@waterplane/shared/dist/healthindex/readings.d.ts +53 -0
  56. package/node_modules/@waterplane/shared/dist/healthindex/readings.js +154 -0
  57. package/node_modules/@waterplane/shared/dist/healthindex/readings.js.map +1 -0
  58. package/node_modules/@waterplane/shared/dist/healthindex/repoindex.d.ts +41 -0
  59. package/node_modules/@waterplane/shared/dist/healthindex/repoindex.js +19 -0
  60. package/node_modules/@waterplane/shared/dist/healthindex/repoindex.js.map +1 -0
  61. package/node_modules/@waterplane/shared/dist/healthindex/score.d.ts +26 -0
  62. package/node_modules/@waterplane/shared/dist/healthindex/score.js +156 -0
  63. package/node_modules/@waterplane/shared/dist/healthindex/score.js.map +1 -0
  64. package/node_modules/@waterplane/shared/dist/healthindex/types.d.ts +206 -0
  65. package/node_modules/@waterplane/shared/dist/healthindex/types.js +58 -0
  66. package/node_modules/@waterplane/shared/dist/healthindex/types.js.map +1 -0
  67. package/node_modules/@waterplane/shared/dist/healthindex/vs.d.ts +26 -0
  68. package/node_modules/@waterplane/shared/dist/healthindex/vs.js +38 -0
  69. package/node_modules/@waterplane/shared/dist/healthindex/vs.js.map +1 -0
  70. package/node_modules/@waterplane/shared/dist/healthindex/words.d.ts +28 -0
  71. package/node_modules/@waterplane/shared/dist/healthindex/words.js +124 -0
  72. package/node_modules/@waterplane/shared/dist/healthindex/words.js.map +1 -0
  73. package/node_modules/@waterplane/shared/dist/healthindex.d.ts +15 -411
  74. package/node_modules/@waterplane/shared/dist/healthindex.js +8 -602
  75. package/node_modules/@waterplane/shared/dist/healthindex.js.map +1 -1
  76. package/node_modules/@waterplane/shared/dist/hints.js +15 -0
  77. package/node_modules/@waterplane/shared/dist/hints.js.map +1 -1
  78. package/node_modules/@waterplane/shared/dist/index.d.ts +37 -0
  79. package/node_modules/@waterplane/shared/dist/index.js +37 -0
  80. package/node_modules/@waterplane/shared/dist/index.js.map +1 -1
  81. package/node_modules/@waterplane/shared/dist/intent/clean.d.ts +87 -0
  82. package/node_modules/@waterplane/shared/dist/intent/clean.js +51 -3
  83. package/node_modules/@waterplane/shared/dist/intent/clean.js.map +1 -1
  84. package/node_modules/@waterplane/shared/dist/intent/kind.d.ts +40 -1
  85. package/node_modules/@waterplane/shared/dist/intent/kind.js +36 -3
  86. package/node_modules/@waterplane/shared/dist/intent/kind.js.map +1 -1
  87. package/node_modules/@waterplane/shared/dist/intent/types.d.ts +13 -0
  88. package/node_modules/@waterplane/shared/dist/intent/types.js.map +1 -1
  89. package/node_modules/@waterplane/shared/dist/intent/verdict.js +9 -16
  90. package/node_modules/@waterplane/shared/dist/intent/verdict.js.map +1 -1
  91. package/node_modules/@waterplane/shared/dist/intent/words.js +5 -0
  92. package/node_modules/@waterplane/shared/dist/intent/words.js.map +1 -1
  93. package/node_modules/@waterplane/shared/dist/intent.d.ts +2 -2
  94. package/node_modules/@waterplane/shared/dist/intent.js +2 -2
  95. package/node_modules/@waterplane/shared/dist/intent.js.map +1 -1
  96. package/node_modules/@waterplane/shared/dist/launchmodes.d.ts +2 -0
  97. package/node_modules/@waterplane/shared/dist/launchmodes.js +12 -0
  98. package/node_modules/@waterplane/shared/dist/launchmodes.js.map +1 -1
  99. package/node_modules/@waterplane/shared/dist/ledgerspan.d.ts +106 -0
  100. package/node_modules/@waterplane/shared/dist/ledgerspan.js +196 -0
  101. package/node_modules/@waterplane/shared/dist/ledgerspan.js.map +1 -0
  102. package/node_modules/@waterplane/shared/dist/naming.d.ts +3 -1
  103. package/node_modules/@waterplane/shared/dist/naming.js +6 -2
  104. package/node_modules/@waterplane/shared/dist/naming.js.map +1 -1
  105. package/node_modules/@waterplane/shared/dist/netfuse.d.ts +5 -0
  106. package/node_modules/@waterplane/shared/dist/netfuse.js +6 -1
  107. package/node_modules/@waterplane/shared/dist/netfuse.js.map +1 -1
  108. package/node_modules/@waterplane/shared/dist/netretry.d.ts +78 -0
  109. package/node_modules/@waterplane/shared/dist/netretry.js +85 -0
  110. package/node_modules/@waterplane/shared/dist/netretry.js.map +1 -0
  111. package/node_modules/@waterplane/shared/dist/netretrycfg.d.ts +12 -0
  112. package/node_modules/@waterplane/shared/dist/netretrycfg.js +27 -0
  113. package/node_modules/@waterplane/shared/dist/netretrycfg.js.map +1 -0
  114. package/node_modules/@waterplane/shared/dist/nodemin.d.ts +6 -4
  115. package/node_modules/@waterplane/shared/dist/nodemin.js +6 -4
  116. package/node_modules/@waterplane/shared/dist/nodemin.js.map +1 -1
  117. package/node_modules/@waterplane/shared/dist/optins.d.ts +35 -1
  118. package/node_modules/@waterplane/shared/dist/optins.js +39 -1
  119. package/node_modules/@waterplane/shared/dist/optins.js.map +1 -1
  120. package/node_modules/@waterplane/shared/dist/pairing.js +4 -0
  121. package/node_modules/@waterplane/shared/dist/pairing.js.map +1 -1
  122. package/node_modules/@waterplane/shared/dist/passive.js +3 -0
  123. package/node_modules/@waterplane/shared/dist/passive.js.map +1 -1
  124. package/node_modules/@waterplane/shared/dist/plugin/api.d.ts +394 -0
  125. package/node_modules/@waterplane/shared/dist/plugin/api.js +2 -0
  126. package/node_modules/@waterplane/shared/dist/plugin/api.js.map +1 -0
  127. package/node_modules/@waterplane/shared/dist/plugin/backend.d.ts +197 -0
  128. package/node_modules/@waterplane/shared/dist/plugin/backend.js +9 -0
  129. package/node_modules/@waterplane/shared/dist/plugin/backend.js.map +1 -0
  130. package/node_modules/@waterplane/shared/dist/plugin/manifest.d.ts +160 -0
  131. package/node_modules/@waterplane/shared/dist/plugin/manifest.js +98 -0
  132. package/node_modules/@waterplane/shared/dist/plugin/manifest.js.map +1 -0
  133. package/node_modules/@waterplane/shared/dist/plugin/module.d.ts +98 -0
  134. package/node_modules/@waterplane/shared/dist/plugin/module.js +13 -0
  135. package/node_modules/@waterplane/shared/dist/plugin/module.js.map +1 -0
  136. package/node_modules/@waterplane/shared/dist/plugin/version.d.ts +66 -0
  137. package/node_modules/@waterplane/shared/dist/plugin/version.js +86 -0
  138. package/node_modules/@waterplane/shared/dist/plugin/version.js.map +1 -0
  139. package/node_modules/@waterplane/shared/dist/plugin.d.ts +5 -867
  140. package/node_modules/@waterplane/shared/dist/plugin.js +27 -186
  141. package/node_modules/@waterplane/shared/dist/plugin.js.map +1 -1
  142. package/node_modules/@waterplane/shared/dist/pluginlaunch.d.ts +7 -0
  143. package/node_modules/@waterplane/shared/dist/prview.d.ts +23 -0
  144. package/node_modules/@waterplane/shared/dist/prview.js +107 -0
  145. package/node_modules/@waterplane/shared/dist/prview.js.map +1 -0
  146. package/node_modules/@waterplane/shared/dist/queue/queueserial.d.ts +11 -2
  147. package/node_modules/@waterplane/shared/dist/queue/queueserial.js +13 -4
  148. package/node_modules/@waterplane/shared/dist/queue/queueserial.js.map +1 -1
  149. package/node_modules/@waterplane/shared/dist/queue/queuewords.js +1 -0
  150. package/node_modules/@waterplane/shared/dist/queue/queuewords.js.map +1 -1
  151. package/node_modules/@waterplane/shared/dist/repohealth.d.ts +4 -0
  152. package/node_modules/@waterplane/shared/dist/repohealth.js.map +1 -1
  153. package/node_modules/@waterplane/shared/dist/repotwins.d.ts +31 -0
  154. package/node_modules/@waterplane/shared/dist/repotwins.js +52 -0
  155. package/node_modules/@waterplane/shared/dist/repotwins.js.map +1 -0
  156. package/node_modules/@waterplane/shared/dist/requirements.js +4 -1
  157. package/node_modules/@waterplane/shared/dist/requirements.js.map +1 -1
  158. package/node_modules/@waterplane/shared/dist/schedule/schedaction.d.ts +29 -0
  159. package/node_modules/@waterplane/shared/dist/schedule/schedaction.js +22 -0
  160. package/node_modules/@waterplane/shared/dist/schedule/schedaction.js.map +1 -1
  161. package/node_modules/@waterplane/shared/dist/schedule/schedclean.js +26 -0
  162. package/node_modules/@waterplane/shared/dist/schedule/schedclean.js.map +1 -1
  163. package/node_modules/@waterplane/shared/dist/schedule/schedhorizon.d.ts +1 -0
  164. package/node_modules/@waterplane/shared/dist/schedule/schedhorizon.js +1 -0
  165. package/node_modules/@waterplane/shared/dist/schedule/schedhorizon.js.map +1 -1
  166. package/node_modules/@waterplane/shared/dist/schedule.d.ts +1 -1
  167. package/node_modules/@waterplane/shared/dist/schedule.js +1 -1
  168. package/node_modules/@waterplane/shared/dist/schedule.js.map +1 -1
  169. package/node_modules/@waterplane/shared/dist/sessionbudget.d.ts +34 -7
  170. package/node_modules/@waterplane/shared/dist/sessionbudget.js +59 -21
  171. package/node_modules/@waterplane/shared/dist/sessionbudget.js.map +1 -1
  172. package/node_modules/@waterplane/shared/dist/sweep.d.ts +2 -1
  173. package/node_modules/@waterplane/shared/dist/sweep.js +2 -1
  174. package/node_modules/@waterplane/shared/dist/sweep.js.map +1 -1
  175. package/node_modules/@waterplane/shared/dist/tokens.d.ts +4 -3
  176. package/node_modules/@waterplane/shared/dist/tokens.js +9 -7
  177. package/node_modules/@waterplane/shared/dist/tokens.js.map +1 -1
  178. package/node_modules/@waterplane/shared/dist/weekburn.d.ts +144 -0
  179. package/node_modules/@waterplane/shared/dist/weekburn.js +250 -0
  180. package/node_modules/@waterplane/shared/dist/weekburn.js.map +1 -0
  181. package/node_modules/@waterplane/shared/dist/wire/alwayson.d.ts +64 -0
  182. package/node_modules/@waterplane/shared/dist/wire/alwayson.js +7 -0
  183. package/node_modules/@waterplane/shared/dist/wire/alwayson.js.map +1 -0
  184. package/node_modules/@waterplane/shared/dist/wire/backend.d.ts +4 -0
  185. package/node_modules/@waterplane/shared/dist/wire/backendtokens.d.ts +6 -0
  186. package/node_modules/@waterplane/shared/dist/wire/backendtokens.js +0 -9
  187. package/node_modules/@waterplane/shared/dist/wire/backendtokens.js.map +1 -1
  188. package/node_modules/@waterplane/shared/dist/wire/costwindow.d.ts +25 -0
  189. package/node_modules/@waterplane/shared/dist/wire/messages/clienthost.d.ts +15 -1
  190. package/node_modules/@waterplane/shared/dist/wire/messages/clientsession.d.ts +24 -0
  191. package/node_modules/@waterplane/shared/dist/wire/messages/hosttools.d.ts +12 -2
  192. package/node_modules/@waterplane/shared/dist/wire/notify.d.ts +194 -1
  193. package/node_modules/@waterplane/shared/dist/wire/notify.js +139 -1
  194. package/node_modules/@waterplane/shared/dist/wire/notify.js.map +1 -1
  195. package/node_modules/@waterplane/shared/dist/wire/pullrequest.d.ts +42 -0
  196. package/node_modules/@waterplane/shared/dist/wire/pullrequest.js +2 -0
  197. package/node_modules/@waterplane/shared/dist/wire/pullrequest.js.map +1 -0
  198. package/node_modules/@waterplane/shared/dist/wire/repo.d.ts +131 -0
  199. package/node_modules/@waterplane/shared/dist/wire/repo.js +8 -3
  200. package/node_modules/@waterplane/shared/dist/wire/repo.js.map +1 -1
  201. package/node_modules/@waterplane/shared/dist/wire/sent.d.ts +3 -1
  202. package/node_modules/@waterplane/shared/dist/wire/session/contextspark.d.ts +7 -0
  203. package/node_modules/@waterplane/shared/dist/wire/session/info.d.ts +4 -1
  204. package/node_modules/@waterplane/shared/dist/wire/session/launch.d.ts +36 -0
  205. package/node_modules/@waterplane/shared/dist/wire/session.d.ts +1 -1
  206. package/node_modules/@waterplane/shared/dist/wire/telemetry.d.ts +30 -0
  207. package/node_modules/@waterplane/shared/dist/wire/work.d.ts +13 -0
  208. package/node_modules/@waterplane/shared/dist/wire/work.js.map +1 -1
  209. package/node_modules/@waterplane/shared/dist/wordof.d.ts +11 -0
  210. package/node_modules/@waterplane/shared/dist/wordof.js +14 -0
  211. package/node_modules/@waterplane/shared/dist/wordof.js.map +1 -0
  212. package/npm-shrinkwrap.json +3 -3
  213. package/package.json +2 -2
  214. package/packages/extensions/scorecard/waterplane-plugin.json +10 -0
  215. package/packages/host/dist/agentexposure.d.ts +13 -0
  216. package/packages/host/dist/agentexposure.js +90 -0
  217. package/packages/host/dist/agentexposure.js.map +1 -0
  218. package/packages/host/dist/agentintents.js +7 -8
  219. package/packages/host/dist/agentintents.js.map +1 -1
  220. package/packages/host/dist/agentwatch.d.ts +3 -7
  221. package/packages/host/dist/agentwatch.js.map +1 -1
  222. package/packages/host/dist/alwayson.d.ts +18 -0
  223. package/packages/host/dist/alwayson.js +159 -0
  224. package/packages/host/dist/alwayson.js.map +1 -0
  225. package/packages/host/dist/answergate.d.ts +3 -7
  226. package/packages/host/dist/answergate.js.map +1 -1
  227. package/packages/host/dist/attentionstore.d.ts +94 -0
  228. package/packages/host/dist/attentionstore.js +232 -0
  229. package/packages/host/dist/attentionstore.js.map +1 -0
  230. package/packages/host/dist/backends/claude-sources.d.ts +2 -0
  231. package/packages/host/dist/backends/claude-sources.js +12 -0
  232. package/packages/host/dist/backends/claude-sources.js.map +1 -1
  233. package/packages/host/dist/backends/claude.js +3 -2
  234. package/packages/host/dist/backends/claude.js.map +1 -1
  235. package/packages/host/dist/backends/derive.js +1 -0
  236. package/packages/host/dist/backends/derive.js.map +1 -1
  237. package/packages/host/dist/backends/overhead.d.ts +7 -5
  238. package/packages/host/dist/backends/overhead.js +15 -13
  239. package/packages/host/dist/backends/overhead.js.map +1 -1
  240. package/packages/host/dist/backends/registry.js +4 -1
  241. package/packages/host/dist/backends/registry.js.map +1 -1
  242. package/packages/host/dist/backends/types.d.ts +2 -0
  243. package/packages/host/dist/besidespend.d.ts +22 -0
  244. package/packages/host/dist/besidespend.js +65 -0
  245. package/packages/host/dist/besidespend.js.map +1 -0
  246. package/packages/host/dist/boxkit.d.ts +19 -0
  247. package/packages/host/dist/boxkit.js +38 -0
  248. package/packages/host/dist/boxkit.js.map +1 -0
  249. package/packages/host/dist/branchrules.d.ts +14 -0
  250. package/packages/host/dist/branchrules.js +47 -0
  251. package/packages/host/dist/branchrules.js.map +1 -0
  252. package/packages/host/dist/budget.d.ts +3 -2
  253. package/packages/host/dist/budget.js +5 -3
  254. package/packages/host/dist/budget.js.map +1 -1
  255. package/packages/host/dist/builds.d.ts +31 -1
  256. package/packages/host/dist/builds.js +55 -3
  257. package/packages/host/dist/builds.js.map +1 -1
  258. package/packages/host/dist/buildversions.d.ts +2 -0
  259. package/packages/host/dist/buildversions.js +36 -0
  260. package/packages/host/dist/buildversions.js.map +1 -0
  261. package/packages/host/dist/burnwatch.d.ts +23 -11
  262. package/packages/host/dist/burnwatch.js +57 -3
  263. package/packages/host/dist/burnwatch.js.map +1 -1
  264. package/packages/host/dist/changebrief.d.ts +37 -0
  265. package/packages/host/dist/changebrief.js +157 -0
  266. package/packages/host/dist/changebrief.js.map +1 -0
  267. package/packages/host/dist/cli/index.js +1 -1
  268. package/packages/host/dist/cli/index.js.map +1 -1
  269. package/packages/host/dist/clihealth.d.ts +2 -0
  270. package/packages/host/dist/clihealth.js +11 -2
  271. package/packages/host/dist/clihealth.js.map +1 -1
  272. package/packages/host/dist/compliance.d.ts +5 -1
  273. package/packages/host/dist/compliance.js +70 -31
  274. package/packages/host/dist/compliance.js.map +1 -1
  275. package/packages/host/dist/composer.d.ts +3 -1
  276. package/packages/host/dist/composer.js +3 -1
  277. package/packages/host/dist/composer.js.map +1 -1
  278. package/packages/host/dist/context.js +29 -4
  279. package/packages/host/dist/context.js.map +1 -1
  280. package/packages/host/dist/convlog.d.ts +1 -1
  281. package/packages/host/dist/convlog.js +1 -1
  282. package/packages/host/dist/costwindow.d.ts +25 -0
  283. package/packages/host/dist/costwindow.js +63 -1
  284. package/packages/host/dist/costwindow.js.map +1 -1
  285. package/packages/host/dist/ctxlog/ctxagents.js +16 -25
  286. package/packages/host/dist/ctxlog/ctxagents.js.map +1 -1
  287. package/packages/host/dist/ctxlog/ctxcursor.d.ts +36 -1
  288. package/packages/host/dist/ctxlog/ctxcursor.js +96 -2
  289. package/packages/host/dist/ctxlog/ctxcursor.js.map +1 -1
  290. package/packages/host/dist/ctxlog/ctxproject.js +2 -1
  291. package/packages/host/dist/ctxlog/ctxproject.js.map +1 -1
  292. package/packages/host/dist/ctxlog/ctxupdate.js +30 -24
  293. package/packages/host/dist/ctxlog/ctxupdate.js.map +1 -1
  294. package/packages/host/dist/ctxlog/usagerecord.d.ts +28 -0
  295. package/packages/host/dist/ctxlog/usagerecord.js +81 -0
  296. package/packages/host/dist/ctxlog/usagerecord.js.map +1 -0
  297. package/packages/host/dist/diskwatch.d.ts +4 -6
  298. package/packages/host/dist/diskwatch.js +3 -1
  299. package/packages/host/dist/diskwatch.js.map +1 -1
  300. package/packages/host/dist/eraseen.d.ts +6 -0
  301. package/packages/host/dist/eraseen.js +100 -0
  302. package/packages/host/dist/eraseen.js.map +1 -0
  303. package/packages/host/dist/explainjob.d.ts +24 -0
  304. package/packages/host/dist/explainjob.js +80 -0
  305. package/packages/host/dist/explainjob.js.map +1 -0
  306. package/packages/host/dist/exposure.d.ts +56 -0
  307. package/packages/host/dist/exposure.js +371 -0
  308. package/packages/host/dist/exposure.js.map +1 -0
  309. package/packages/host/dist/exposurepush.d.ts +28 -0
  310. package/packages/host/dist/exposurepush.js +136 -0
  311. package/packages/host/dist/exposurepush.js.map +1 -0
  312. package/packages/host/dist/exposurerun.d.ts +18 -0
  313. package/packages/host/dist/exposurerun.js +126 -0
  314. package/packages/host/dist/exposurerun.js.map +1 -0
  315. package/packages/host/dist/exposurewatch.d.ts +29 -0
  316. package/packages/host/dist/exposurewatch.js +127 -0
  317. package/packages/host/dist/exposurewatch.js.map +1 -0
  318. package/packages/host/dist/extensions/scorecard/host/engine.d.mts +54 -0
  319. package/packages/host/dist/extensions/scorecard/host/engine.mjs +303 -0
  320. package/packages/host/dist/extensions/scorecard/host/engine.mjs.map +1 -0
  321. package/packages/host/dist/extensions/scorecard/host/gitslug.d.mts +5 -0
  322. package/packages/host/dist/extensions/scorecard/host/gitslug.mjs +45 -0
  323. package/packages/host/dist/extensions/scorecard/host/gitslug.mjs.map +1 -0
  324. package/packages/host/dist/extensions/scorecard/host/index.d.mts +15 -0
  325. package/packages/host/dist/extensions/scorecard/host/index.mjs +47 -0
  326. package/packages/host/dist/extensions/scorecard/host/index.mjs.map +1 -0
  327. package/packages/host/dist/extensions/scorecard/host/store.d.mts +12 -0
  328. package/packages/host/dist/extensions/scorecard/host/store.mjs +91 -0
  329. package/packages/host/dist/extensions/scorecard/host/store.mjs.map +1 -0
  330. package/packages/host/dist/extensions/scorecard/shared/logic.d.mts +42 -0
  331. package/packages/host/dist/extensions/scorecard/shared/logic.mjs +170 -0
  332. package/packages/host/dist/extensions/scorecard/shared/logic.mjs.map +1 -0
  333. package/packages/host/dist/extensions/scorecard/shared/wire.d.mts +140 -0
  334. package/packages/host/dist/extensions/scorecard/shared/wire.mjs +29 -0
  335. package/packages/host/dist/extensions/scorecard/shared/wire.mjs.map +1 -0
  336. package/packages/host/dist/files.d.ts +14 -12
  337. package/packages/host/dist/files.js +64 -94
  338. package/packages/host/dist/files.js.map +1 -1
  339. package/packages/host/dist/forge/github.d.ts +3 -0
  340. package/packages/host/dist/forge/github.js +96 -0
  341. package/packages/host/dist/forge/github.js.map +1 -0
  342. package/packages/host/dist/forge/index.d.ts +14 -0
  343. package/packages/host/dist/forge/index.js +32 -0
  344. package/packages/host/dist/forge/index.js.map +1 -0
  345. package/packages/host/dist/forge/types.d.ts +58 -0
  346. package/packages/host/dist/forge/types.js +2 -0
  347. package/packages/host/dist/forge/types.js.map +1 -0
  348. package/packages/host/dist/git.d.ts +41 -16
  349. package/packages/host/dist/git.js +162 -101
  350. package/packages/host/dist/git.js.map +1 -1
  351. package/packages/host/dist/gitnotify.d.ts +54 -0
  352. package/packages/host/dist/gitnotify.js +167 -0
  353. package/packages/host/dist/gitnotify.js.map +1 -0
  354. package/packages/host/dist/healthwatch.d.ts +2 -1
  355. package/packages/host/dist/healthwatch.js +4 -2
  356. package/packages/host/dist/healthwatch.js.map +1 -1
  357. package/packages/host/dist/hoststore.js +2 -2
  358. package/packages/host/dist/hoststore.js.map +1 -1
  359. package/packages/host/dist/intents/adapters.js +68 -19
  360. package/packages/host/dist/intents/adapters.js.map +1 -1
  361. package/packages/host/dist/intents/clock.d.ts +6 -3
  362. package/packages/host/dist/intents/clock.js +19 -5
  363. package/packages/host/dist/intents/clock.js.map +1 -1
  364. package/packages/host/dist/intents/contract.d.ts +15 -5
  365. package/packages/host/dist/intents/contract.js.map +1 -1
  366. package/packages/host/dist/intents/disk.d.ts +16 -0
  367. package/packages/host/dist/intents/disk.js +26 -1
  368. package/packages/host/dist/intents/disk.js.map +1 -1
  369. package/packages/host/dist/intents/fire.js +7 -1
  370. package/packages/host/dist/intents/fire.js.map +1 -1
  371. package/packages/host/dist/intents/ladder.js +3 -1
  372. package/packages/host/dist/intents/ladder.js.map +1 -1
  373. package/packages/host/dist/intents/manager.d.ts +3 -3
  374. package/packages/host/dist/intents/manager.js +2 -2
  375. package/packages/host/dist/intents/manager.js.map +1 -1
  376. package/packages/host/dist/intents/watch.d.ts +27 -3
  377. package/packages/host/dist/intents/watch.js +70 -9
  378. package/packages/host/dist/intents/watch.js.map +1 -1
  379. package/packages/host/dist/intents/write.d.ts +28 -1
  380. package/packages/host/dist/intents/write.js +87 -2
  381. package/packages/host/dist/intents/write.js.map +1 -1
  382. package/packages/host/dist/localcistatus.d.ts +22 -0
  383. package/packages/host/dist/localcistatus.js +105 -0
  384. package/packages/host/dist/localcistatus.js.map +1 -0
  385. package/packages/host/dist/main.js +45 -12
  386. package/packages/host/dist/main.js.map +1 -1
  387. package/packages/host/dist/net.d.ts +2 -0
  388. package/packages/host/dist/net.js +11 -2
  389. package/packages/host/dist/net.js.map +1 -1
  390. package/packages/host/dist/netlog.d.ts +40 -0
  391. package/packages/host/dist/netlog.js +165 -0
  392. package/packages/host/dist/netlog.js.map +1 -0
  393. package/packages/host/dist/netretrycfg.d.ts +7 -0
  394. package/packages/host/dist/netretrycfg.js +51 -0
  395. package/packages/host/dist/netretrycfg.js.map +1 -0
  396. package/packages/host/dist/notifyprefs.d.ts +6 -2
  397. package/packages/host/dist/notifyprefs.js +20 -5
  398. package/packages/host/dist/notifyprefs.js.map +1 -1
  399. package/packages/host/dist/notifytypes.d.ts +63 -0
  400. package/packages/host/dist/notifytypes.js +2 -0
  401. package/packages/host/dist/notifytypes.js.map +1 -0
  402. package/packages/host/dist/opendeliveries.js +24 -0
  403. package/packages/host/dist/opendeliveries.js.map +1 -1
  404. package/packages/host/dist/optins.d.ts +28 -1
  405. package/packages/host/dist/optins.js +96 -4
  406. package/packages/host/dist/optins.js.map +1 -1
  407. package/packages/host/dist/peers/agentpeer.js +1 -1
  408. package/packages/host/dist/peers/agentpeer.js.map +1 -1
  409. package/packages/host/dist/peers/jobs.d.ts +2 -4
  410. package/packages/host/dist/peers/jobs.js +6 -1
  411. package/packages/host/dist/peers/jobs.js.map +1 -1
  412. package/packages/host/dist/periodspend.d.ts +22 -3
  413. package/packages/host/dist/periodspend.js +44 -4
  414. package/packages/host/dist/periodspend.js.map +1 -1
  415. package/packages/host/dist/plugins/pluginapi.js +40 -10
  416. package/packages/host/dist/plugins/pluginapi.js.map +1 -1
  417. package/packages/host/dist/plugins/pluginregistry.d.ts +3 -8
  418. package/packages/host/dist/plugins/pluginregistry.js +1 -1
  419. package/packages/host/dist/plugins/pluginregistry.js.map +1 -1
  420. package/packages/host/dist/plugins/plugintoolkit/sessionof.d.ts +47 -0
  421. package/packages/host/dist/plugins/plugintoolkit/sessionof.js +136 -0
  422. package/packages/host/dist/plugins/plugintoolkit/sessionof.js.map +1 -0
  423. package/packages/host/dist/prmergestore.d.ts +31 -0
  424. package/packages/host/dist/prmergestore.js +106 -0
  425. package/packages/host/dist/prmergestore.js.map +1 -0
  426. package/packages/host/dist/protectmain.d.ts +35 -0
  427. package/packages/host/dist/protectmain.js +73 -0
  428. package/packages/host/dist/protectmain.js.map +1 -0
  429. package/packages/host/dist/prpush.d.ts +38 -0
  430. package/packages/host/dist/prpush.js +351 -0
  431. package/packages/host/dist/prpush.js.map +1 -0
  432. package/packages/host/dist/prs.d.ts +118 -0
  433. package/packages/host/dist/prs.js +681 -0
  434. package/packages/host/dist/prs.js.map +1 -0
  435. package/packages/host/dist/push.d.ts +85 -1
  436. package/packages/host/dist/push.js +238 -8
  437. package/packages/host/dist/push.js.map +1 -1
  438. package/packages/host/dist/pushlanded.d.ts +29 -0
  439. package/packages/host/dist/pushlanded.js +61 -0
  440. package/packages/host/dist/pushlanded.js.map +1 -0
  441. package/packages/host/dist/pushreach.d.ts +9 -0
  442. package/packages/host/dist/pushreach.js +102 -0
  443. package/packages/host/dist/pushreach.js.map +1 -0
  444. package/packages/host/dist/pushverdict.d.ts +42 -0
  445. package/packages/host/dist/pushverdict.js +110 -0
  446. package/packages/host/dist/pushverdict.js.map +1 -0
  447. package/packages/host/dist/render.d.ts +57 -0
  448. package/packages/host/dist/render.js +57 -39
  449. package/packages/host/dist/render.js.map +1 -1
  450. package/packages/host/dist/repohealth.js +5 -2
  451. package/packages/host/dist/repohealth.js.map +1 -1
  452. package/packages/host/dist/repohealthapproval.d.ts +3 -0
  453. package/packages/host/dist/repohealthapproval.js +92 -2
  454. package/packages/host/dist/repohealthapproval.js.map +1 -1
  455. package/packages/host/dist/repos.d.ts +7 -1
  456. package/packages/host/dist/repos.js +30 -3
  457. package/packages/host/dist/repos.js.map +1 -1
  458. package/packages/host/dist/reposkill.d.ts +8 -5
  459. package/packages/host/dist/reposkill.js +16 -11
  460. package/packages/host/dist/reposkill.js.map +1 -1
  461. package/packages/host/dist/reposkilltext.d.ts +8 -1
  462. package/packages/host/dist/reposkilltext.js +85 -12
  463. package/packages/host/dist/reposkilltext.js.map +1 -1
  464. package/packages/host/dist/routes/apigitspend.d.ts +2 -0
  465. package/packages/host/dist/routes/apigitspend.js +40 -0
  466. package/packages/host/dist/routes/apigitspend.js.map +1 -0
  467. package/packages/host/dist/routes/apihost.js +17 -0
  468. package/packages/host/dist/routes/apihost.js.map +1 -1
  469. package/packages/host/dist/routes/apiprs.d.ts +2 -0
  470. package/packages/host/dist/routes/apiprs.js +47 -0
  471. package/packages/host/dist/routes/apiprs.js.map +1 -0
  472. package/packages/host/dist/routes/apirepofiles.js +13 -1
  473. package/packages/host/dist/routes/apirepofiles.js.map +1 -1
  474. package/packages/host/dist/routes/apirepowork.d.ts +6 -0
  475. package/packages/host/dist/routes/apirepowork.js +42 -33
  476. package/packages/host/dist/routes/apirepowork.js.map +1 -1
  477. package/packages/host/dist/routes/apiroutes.js +2 -1
  478. package/packages/host/dist/routes/apiroutes.js.map +1 -1
  479. package/packages/host/dist/routes/apisession.js +24 -0
  480. package/packages/host/dist/routes/apisession.js.map +1 -1
  481. package/packages/host/dist/routes/apistats.js +12 -7
  482. package/packages/host/dist/routes/apistats.js.map +1 -1
  483. package/packages/host/dist/routes/apisystem.js +23 -1
  484. package/packages/host/dist/routes/apisystem.js.map +1 -1
  485. package/packages/host/dist/routes/apitable.d.ts +10 -0
  486. package/packages/host/dist/routes/apitable.js.map +1 -1
  487. package/packages/host/dist/routes/apiweekburn.d.ts +2 -0
  488. package/packages/host/dist/routes/apiweekburn.js +30 -0
  489. package/packages/host/dist/routes/apiweekburn.js.map +1 -0
  490. package/packages/host/dist/routes/session.js +10 -0
  491. package/packages/host/dist/routes/session.js.map +1 -1
  492. package/packages/host/dist/routes/system.js +34 -6
  493. package/packages/host/dist/routes/system.js.map +1 -1
  494. package/packages/host/dist/routes/types.d.ts +29 -21
  495. package/packages/host/dist/routes/work/workbuild.js +3 -2
  496. package/packages/host/dist/routes/work/workbuild.js.map +1 -1
  497. package/packages/host/dist/routes/work/workintent.js +6 -2
  498. package/packages/host/dist/routes/work/workintent.js.map +1 -1
  499. package/packages/host/dist/routes/work/workschedule.js +33 -3
  500. package/packages/host/dist/routes/work/workschedule.js.map +1 -1
  501. package/packages/host/dist/screenlog.d.ts +20 -0
  502. package/packages/host/dist/screenlog.js +40 -0
  503. package/packages/host/dist/screenlog.js.map +1 -1
  504. package/packages/host/dist/server/billingwire.d.ts +3 -1
  505. package/packages/host/dist/server/billingwire.js +4 -2
  506. package/packages/host/dist/server/billingwire.js.map +1 -1
  507. package/packages/host/dist/server/clients.d.ts +14 -24
  508. package/packages/host/dist/server/clients.js +81 -11
  509. package/packages/host/dist/server/clients.js.map +1 -1
  510. package/packages/host/dist/server/ctx.d.ts +2 -0
  511. package/packages/host/dist/server/ctxseal.d.ts +1 -1
  512. package/packages/host/dist/server/ctxseal.js +6 -6
  513. package/packages/host/dist/server/ctxseal.js.map +1 -1
  514. package/packages/host/dist/server/deliveries.js +4 -2
  515. package/packages/host/dist/server/deliveries.js.map +1 -1
  516. package/packages/host/dist/server/http.js +2 -2
  517. package/packages/host/dist/server/http.js.map +1 -1
  518. package/packages/host/dist/server/intentDeps.js +13 -6
  519. package/packages/host/dist/server/intentDeps.js.map +1 -1
  520. package/packages/host/dist/server/intentEvents.js +9 -4
  521. package/packages/host/dist/server/intentEvents.js.map +1 -1
  522. package/packages/host/dist/server/scan.js +23 -1
  523. package/packages/host/dist/server/scan.js.map +1 -1
  524. package/packages/host/dist/server/sessionEvents.js +40 -15
  525. package/packages/host/dist/server/sessionEvents.js.map +1 -1
  526. package/packages/host/dist/server/shutdown.d.ts +3 -1
  527. package/packages/host/dist/server/shutdown.js +9 -1
  528. package/packages/host/dist/server/shutdown.js.map +1 -1
  529. package/packages/host/dist/sessionbudget.d.ts +2 -0
  530. package/packages/host/dist/sessionbudget.js +17 -6
  531. package/packages/host/dist/sessionbudget.js.map +1 -1
  532. package/packages/host/dist/sessions/agentpoll.d.ts +42 -0
  533. package/packages/host/dist/sessions/agentpoll.js +193 -0
  534. package/packages/host/dist/sessions/agentpoll.js.map +1 -0
  535. package/packages/host/dist/sessions/apiretry.d.ts +106 -0
  536. package/packages/host/dist/sessions/apiretry.js +387 -0
  537. package/packages/host/dist/sessions/apiretry.js.map +1 -0
  538. package/packages/host/dist/sessions/askwatch.d.ts +62 -0
  539. package/packages/host/dist/sessions/askwatch.js +169 -0
  540. package/packages/host/dist/sessions/askwatch.js.map +1 -0
  541. package/packages/host/dist/sessions/boxes.d.ts +2 -23
  542. package/packages/host/dist/sessions/boxes.js +10 -664
  543. package/packages/host/dist/sessions/boxes.js.map +1 -1
  544. package/packages/host/dist/sessions/boxread.d.ts +47 -0
  545. package/packages/host/dist/sessions/boxread.js +628 -0
  546. package/packages/host/dist/sessions/boxread.js.map +1 -0
  547. package/packages/host/dist/sessions/core.d.ts +22 -1
  548. package/packages/host/dist/sessions/ctxseries.js +3 -0
  549. package/packages/host/dist/sessions/ctxseries.js.map +1 -1
  550. package/packages/host/dist/sessions/drive.d.ts +20 -6
  551. package/packages/host/dist/sessions/drive.js +45 -12
  552. package/packages/host/dist/sessions/drive.js.map +1 -1
  553. package/packages/host/dist/sessions/endsession.d.ts +11 -0
  554. package/packages/host/dist/sessions/endsession.js +71 -0
  555. package/packages/host/dist/sessions/endsession.js.map +1 -0
  556. package/packages/host/dist/sessions/haltall.d.ts +14 -0
  557. package/packages/host/dist/sessions/haltall.js +32 -1
  558. package/packages/host/dist/sessions/haltall.js.map +1 -1
  559. package/packages/host/dist/sessions/knobs.d.ts +11 -0
  560. package/packages/host/dist/sessions/knobs.js +12 -0
  561. package/packages/host/dist/sessions/knobs.js.map +1 -1
  562. package/packages/host/dist/sessions/record.js +7 -2
  563. package/packages/host/dist/sessions/record.js.map +1 -1
  564. package/packages/host/dist/sessions/resume.d.ts +17 -0
  565. package/packages/host/dist/sessions/resume.js +65 -11
  566. package/packages/host/dist/sessions/resume.js.map +1 -1
  567. package/packages/host/dist/sessions/roster.js +3 -0
  568. package/packages/host/dist/sessions/roster.js.map +1 -1
  569. package/packages/host/dist/sessions/sidechannel.d.ts +1 -1
  570. package/packages/host/dist/sessions/sidechannel.js +2 -2
  571. package/packages/host/dist/sessions/tmux.js +21 -2
  572. package/packages/host/dist/sessions/tmux.js.map +1 -1
  573. package/packages/host/dist/sessions/turn.d.ts +15 -58
  574. package/packages/host/dist/sessions/turn.js +19 -358
  575. package/packages/host/dist/sessions/turn.js.map +1 -1
  576. package/packages/host/dist/sessions.d.ts +10 -7
  577. package/packages/host/dist/sessions.js +31 -79
  578. package/packages/host/dist/sessions.js.map +1 -1
  579. package/packages/host/dist/settle.d.ts +30 -2
  580. package/packages/host/dist/settle.js +94 -49
  581. package/packages/host/dist/settle.js.map +1 -1
  582. package/packages/host/dist/setupprefs.d.ts +26 -1
  583. package/packages/host/dist/setupprefs.js +49 -1
  584. package/packages/host/dist/setupprefs.js.map +1 -1
  585. package/packages/host/dist/setupwatch.d.ts +10 -8
  586. package/packages/host/dist/setupwatch.js +19 -16
  587. package/packages/host/dist/setupwatch.js.map +1 -1
  588. package/packages/host/dist/sidecar/sidecarname.d.ts +2 -0
  589. package/packages/host/dist/sidecar/sidecarname.js +5 -1
  590. package/packages/host/dist/sidecar/sidecarname.js.map +1 -1
  591. package/packages/host/dist/sidecar/sidecarroute.d.ts +1 -1
  592. package/packages/host/dist/sidecar/sidecarroute.js +5 -0
  593. package/packages/host/dist/sidecar/sidecarroute.js.map +1 -1
  594. package/packages/host/dist/sidecar.d.ts +1 -1
  595. package/packages/host/dist/sidecar.js +1 -1
  596. package/packages/host/dist/sidecar.js.map +1 -1
  597. package/packages/host/dist/tokenscan.d.ts +4 -4
  598. package/packages/host/dist/tokenscan.js +18 -37
  599. package/packages/host/dist/tokenscan.js.map +1 -1
  600. package/packages/host/dist/tokenstats.js +16 -18
  601. package/packages/host/dist/tokenstats.js.map +1 -1
  602. package/packages/host/dist/transcript/transcriptparse.js +17 -26
  603. package/packages/host/dist/transcript/transcriptparse.js.map +1 -1
  604. package/packages/host/dist/transcript/transcriptturns.d.ts +29 -0
  605. package/packages/host/dist/transcript/transcriptturns.js +27 -0
  606. package/packages/host/dist/transcript/transcriptturns.js.map +1 -1
  607. package/packages/host/dist/transcript.d.ts +1 -1
  608. package/packages/host/dist/transcript.js +1 -1
  609. package/packages/host/dist/transcript.js.map +1 -1
  610. package/packages/host/dist/usagesources.d.ts +1 -1
  611. package/packages/host/dist/usagesources.js +7 -2
  612. package/packages/host/dist/usagesources.js.map +1 -1
  613. package/packages/host/dist/visualskill.js +2 -2
  614. package/packages/host/dist/weekburn.d.ts +79 -0
  615. package/packages/host/dist/weekburn.js +276 -0
  616. package/packages/host/dist/weekburn.js.map +1 -0
  617. package/packages/host/dist/worktreeleftover.d.ts +9 -0
  618. package/packages/host/dist/worktreeleftover.js +17 -1
  619. package/packages/host/dist/worktreeleftover.js.map +1 -1
  620. package/packages/web/dist/assets/demo-DsZGy-MC.js +24 -0
  621. package/packages/web/dist/assets/icons-eqlvjswV.js +1 -0
  622. package/packages/web/dist/assets/index-GHwJuQb3.js +169 -0
  623. package/packages/web/dist/assets/index-VzDSZwwH.css +1 -0
  624. package/packages/web/dist/assets/shared-BWk5jXWb.js +49 -0
  625. package/packages/web/dist/assets/sheets-Dj-0m0DB.js +232 -0
  626. package/packages/web/dist/assets/{sheets-Bjv2L-cG.css → sheets-DoUhPGK0.css} +1 -1
  627. package/packages/web/dist/build-id.txt +1 -1
  628. package/packages/web/dist/buildstamp.json +1 -0
  629. package/packages/web/dist/index.html +7 -7
  630. package/packages/web/dist/sw.js +18 -3
  631. package/release.json +7 -4
  632. package/scripts/windows/wsl-setup.sh +10 -1
  633. package/tools/repohealth/constants.mjs +21 -1
  634. package/tools/repohealth/fixture.json +493 -30
  635. package/tools/repohealth/lang/typescript-resolve.mjs +354 -0
  636. package/tools/repohealth/metrics/graph.mjs +258 -0
  637. package/tools/repohealth/metrics/size.mjs +1 -1
  638. package/tools/repohealth/own.mjs +4 -4
  639. package/tools/repohealth/packs/c.mjs +4 -0
  640. package/tools/repohealth/packs/common.mjs +4 -0
  641. package/tools/repohealth/packs/dart.mjs +4 -0
  642. package/tools/repohealth/packs/kotlin.mjs +8 -0
  643. package/tools/repohealth/packs/python.mjs +8 -0
  644. package/tools/repohealth/packs/shell.mjs +4 -0
  645. package/tools/repohealth/packs/typescript.mjs +278 -7
  646. package/tools/repohealth/readings.mjs +39 -0
  647. package/tools/repohealth/series.mjs +1 -0
  648. package/tools/repohealth/snapshot.mjs +14 -0
  649. package/tools/repohealth/types.mjs +12 -0
  650. package/tools/repohealth.mjs +2 -0
  651. package/packages/web/dist/assets/demo-CXlqlYE4.js +0 -23
  652. package/packages/web/dist/assets/icons-BbqDBVjw.js +0 -1
  653. package/packages/web/dist/assets/index-CgPoyb3Y.css +0 -1
  654. package/packages/web/dist/assets/index-D5JKj8DK.js +0 -169
  655. package/packages/web/dist/assets/shared-eyaskl5l.js +0 -47
  656. package/packages/web/dist/assets/sheets-BzzL2re1.js +0 -204
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Whether a branch's work has reached its REMOTE — read off local refs, never a fetch, never a
3
+ * push. Its own module because it is a question about git STATE, asked by whoever notices refs
4
+ * may have moved (`gitnotify.ts`: when a host-run pull or push ends, and on its tick), while
5
+ * `git.ts` RUNS git operations. A push from a terminal updates the same remote-tracking ref a
6
+ * host-run one does, so this answers for both (design round 4).
7
+ *
8
+ * The branch's remote ref is where its PUSHES go (`remoteRefOf`), never merely its upstream; a LOCAL
9
+ * upstream (`branch.X.remote = .`) is no remote at all, and a branch with no upstream (pushed with a
10
+ * bare `git push origin X`) is `refs/remotes/<its push remote>/X` when that ref exists.
11
+ */
12
+ import { execFileP as pexec } from "./proc.js";
13
+ import { safeBranch } from "./git.js";
14
+ const SHA = /^[0-9a-f]{40,64}$/;
15
+ async function git(wt, args) {
16
+ return (await pexec("git", args, { cwd: wt, maxBuffer: 1024 * 1024 })).stdout.trim();
17
+ }
18
+ /** `git config --get`: the value, "" when unset (exit 1); throws when git itself broke. */
19
+ async function config(wt, key) {
20
+ try {
21
+ return await git(wt, ["config", "--get", key]);
22
+ }
23
+ catch (e) {
24
+ if (e?.code === 1)
25
+ return "";
26
+ throw e;
27
+ }
28
+ }
29
+ /** `merge-base --is-ancestor`: true/false, undefined when git cannot say (a missing object). */
30
+ async function isAncestor(wt, a, b) {
31
+ try {
32
+ await git(wt, ["merge-base", "--is-ancestor", a, b]);
33
+ return true;
34
+ }
35
+ catch (e) {
36
+ return e?.code === 1 ? false : undefined;
37
+ }
38
+ }
39
+ /**
40
+ * The remote-tracking ref a branch's pushes land on, or "" when there is none to read. First
41
+ * `%(push)` — git's OWN answer for where a bare `git push` sends this branch (branch.<b>.pushRemote,
42
+ * remote.pushDefault, push.default, remote.<r>.push), so a branch tracking `origin/main` but pushed
43
+ * to `origin/feat` is read at `origin/feat`, never at its upstream. When git names no remote ref
44
+ * (no upstream under `simple`, a refused push), the branch's own name on its push remote — what an
45
+ * explicit `git push <remote> <b>` moved — when that ref exists. A remote ref holding a commit is
46
+ * never a wrong yes, whichever way it got there.
47
+ */
48
+ async function remoteRefOf(wt, b, push) {
49
+ if (push.startsWith("refs/remotes/"))
50
+ return push;
51
+ const remote = (await config(wt, `branch.${b}.pushRemote`)) || (await config(wt, "remote.pushDefault"))
52
+ || (await config(wt, `branch.${b}.remote`)) || "origin";
53
+ if (remote === "." || !/^[\w.-]+$/.test(remote))
54
+ return ""; // a local upstream: the branch went nowhere
55
+ const ref = `refs/remotes/${remote}/${b}`;
56
+ try {
57
+ await git(wt, ["rev-parse", "--verify", "--quiet", `${ref}^{commit}`]);
58
+ return ref;
59
+ }
60
+ catch {
61
+ return "";
62
+ }
63
+ }
64
+ /**
65
+ * True when a failed push of `sha` on `branch` is RESOLVED by git state: the branch's remote ref
66
+ * contains `sha`, or contains the branch's CURRENT tip when that tip REPLACED `sha` (an `--amend` or
67
+ * rebase — not a reset back onto the remote, whose tip `sha` descends from) and what the branch now
68
+ * is went up. False when neither is there.
69
+ * Undefined — never a made-up "it went up" — for no such branch, no remote ref, an unsafe name or
70
+ * sha, or git broke. It asks about THAT branch, never HEAD.
71
+ */
72
+ export async function pushedAlready(wt, branch, sha) {
73
+ const b = safeBranch(branch);
74
+ if (!b || !SHA.test(sha))
75
+ return undefined;
76
+ try {
77
+ // `for-each-ref` matches a pattern up to a slash too (`feat` would list `feat/x`): the exact line only.
78
+ const line = (await git(wt, ["for-each-ref", "--format=%(refname)%09%(objectname)%09%(push)", `refs/heads/${b}`]))
79
+ .split("\n").map((l) => l.split("\t")).find((p) => p[0] === `refs/heads/${b}`);
80
+ if (!line)
81
+ return undefined;
82
+ const ref = await remoteRefOf(wt, b, line[2] ?? "");
83
+ if (!ref)
84
+ return undefined;
85
+ const onRemote = (c) => isAncestor(wt, c, ref);
86
+ const own = await onRemote(sha);
87
+ if (own !== false)
88
+ return own;
89
+ // The tip counts only as a REPLACEMENT of `sha` (amend, rebase): a tip `sha` descends from
90
+ // is a reset BACK — `sha`'s work is uncommitted or dropped, and a remote holding the older
91
+ // tip says nothing about it. `sha` gone from the store (128) is unknown, never a yes.
92
+ const tip = line[1];
93
+ const back = await isAncestor(wt, tip, sha);
94
+ if (back !== false)
95
+ return back ? false : undefined;
96
+ return onRemote(tip);
97
+ }
98
+ catch {
99
+ return undefined;
100
+ }
101
+ }
102
+ //# sourceMappingURL=pushreach.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pushreach.js","sourceRoot":"","sources":["../src/pushreach.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Reading git's push verdict from its output: pure functions that turn a push's stdout/stderr
3
+ * into "the remote refused for a branch rule" and into the words the phone shows. No git
4
+ * process here — git.ts runs git, this reads what it printed.
5
+ */
6
+ /**
7
+ * True when the REMOTE refused the push for a branch rule (GitHub's GH013 ruleset or GH006
8
+ * classic protection). Read off git's own porcelain status line only — the pre-push hook's
9
+ * log rides the same streams, and this repo's own tests print "GH013" and "protected branch"
10
+ * (bughunt 2026-10-29 PR-10). A hook that failed never reached the remote, so no such line.
11
+ */
12
+ export declare function pushRefusedByRule(stdout: string, stderr: string): boolean;
13
+ /**
14
+ * The refs the remote refused ONLY because its ref had already moved under the push — GitHub's
15
+ * `(cannot lock ref '<dst>': is at <sha> but expected <old>)`, git's own receive-pack
16
+ * `(incorrect old value provided)`, and a NEW branch's `(reference already exists)` (GitHub's
17
+ * `cannot lock ref '<dst>': reference already exists`) — as `{ src, dst, at? }` plus the `To <url>`
18
+ * it went to, or null when any refusal is something else (or there is none). Two pushes of the
19
+ * same commit raced (a second session, a terminal) and the other landed first. Whether the remote now IS at
20
+ * what this push sent only git.ts can tell: `rev-parse src` against `at`, else `ls-remote`.
21
+ */
22
+ export declare function refsLockedAt(stdout: string, stderr: string): {
23
+ to: string | null;
24
+ refs: {
25
+ src: string;
26
+ dst: string;
27
+ at?: string;
28
+ }[];
29
+ } | null;
30
+ /**
31
+ * What a refused push says on the phone. A pre-push hook (the local CI) prints
32
+ * its steps to git's STDOUT, so stderr alone held only node's warnings and
33
+ * git's closing "failed to push" — the step that failed was in the half that
34
+ * was dropped. Both halves, colour codes and node's MODULE_TYPELESS noise out,
35
+ * the hook's `FAILED: <step>` line first, then the last lines that explain it.
36
+ *
37
+ * A hook that PASSED and a remote that then refused is the other case: `--porcelain`
38
+ * writes the refusal (`!\t<ref>\t[rejected] (fetch first)`) to stdout, and 20k of e2e
39
+ * chatter on stderr pushed it out of the tail — the phone showed host warnings and
40
+ * "failed to push" after a green 24-minute check, with the reason nowhere on screen.
41
+ */
42
+ export declare function pushFailureText(stdout: string, stderr: string, tail?: number): string;
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Reading git's push verdict from its output: pure functions that turn a push's stdout/stderr
3
+ * into "the remote refused for a branch rule" and into the words the phone shows. No git
4
+ * process here — git.ts runs git, this reads what it printed.
5
+ */
6
+ /** git's porcelain refusal of one ref: `!\t<src>:<dst>\t[remote rejected] (<why>)`. Only
7
+ * git writes these lines (`--porcelain`, start of line, tab-separated); a hook's log does not. */
8
+ const PORCELAIN_REFUSED = /^!\t(\S+)\t\[remote rejected\] \((.*)\)\s*$/;
9
+ const RULE_REASON = /repository rule violations|protected branch hook declined/;
10
+ /**
11
+ * True when the REMOTE refused the push for a branch rule (GitHub's GH013 ruleset or GH006
12
+ * classic protection). Read off git's own porcelain status line only — the pre-push hook's
13
+ * log rides the same streams, and this repo's own tests print "GH013" and "protected branch"
14
+ * (bughunt 2026-10-29 PR-10). A hook that failed never reached the remote, so no such line.
15
+ */
16
+ export function pushRefusedByRule(stdout, stderr) {
17
+ const lines = `${stdout}\n${stderr}`.split("\n").map((l) => l.replace(/\x1b\[[0-9;]*m/g, ""));
18
+ const refused = lines.map((l) => PORCELAIN_REFUSED.exec(l)).filter((m) => !!m);
19
+ if (!refused.length)
20
+ return false; // the remote refused nothing — whatever the text says
21
+ // The reason on the ref line, or (a pre-receive that words it its own way) the remote's own
22
+ // anchored `remote: error: GH013:`/`GH006:` line beside a ref the remote did refuse.
23
+ return refused.some((m) => RULE_REASON.test(m[2])) || lines.some((l) => /^(?:remote:\s*)+error: GH0(?:13|06):/.test(l));
24
+ }
25
+ /**
26
+ * The refs the remote refused ONLY because its ref had already moved under the push — GitHub's
27
+ * `(cannot lock ref '<dst>': is at <sha> but expected <old>)`, git's own receive-pack
28
+ * `(incorrect old value provided)`, and a NEW branch's `(reference already exists)` (GitHub's
29
+ * `cannot lock ref '<dst>': reference already exists`) — as `{ src, dst, at? }` plus the `To <url>`
30
+ * it went to, or null when any refusal is something else (or there is none). Two pushes of the
31
+ * same commit raced (a second session, a terminal) and the other landed first. Whether the remote now IS at
32
+ * what this push sent only git.ts can tell: `rev-parse src` against `at`, else `ls-remote`.
33
+ */
34
+ export function refsLockedAt(stdout, stderr) {
35
+ const lines = `${stdout}\n${stderr}`.split("\n").map((l) => l.replace(/\x1b\[[0-9;]*m/g, ""));
36
+ const refused = lines.map((l) => PORCELAIN_REFUSED.exec(l)).filter((m) => !!m);
37
+ if (!refused.length)
38
+ return null;
39
+ const refs = [];
40
+ for (const m of refused) {
41
+ const [src, dst] = m[1].split(":");
42
+ const lock = /^cannot lock ref '[^']+': is at ([0-9a-f]{40,64}) but expected [0-9a-f]{40,64}$/.exec(m[2]);
43
+ if (lock)
44
+ refs.push({ src, dst, at: lock[1] });
45
+ else if (/^(?:incorrect old value provided|(?:cannot lock ref '[^']+': )?reference already exists)$/.test(m[2]))
46
+ refs.push({ src, dst });
47
+ else
48
+ return null;
49
+ }
50
+ // git's own `To <url>` heads its porcelain block; a hook prints before it, so the last one
51
+ // above the first refusal is git's.
52
+ const first = lines.findIndex((l) => PORCELAIN_REFUSED.test(l));
53
+ const to = lines.slice(0, first).reverse().map((l) => /^To (\S+)$/.exec(l)).find(Boolean)?.[1] ?? null;
54
+ return { to, refs };
55
+ }
56
+ /**
57
+ * The rules GitHub names when a ruleset (GH013, `remote: - <rule>` lines) or classic branch
58
+ * protection (GH006, `remote: error: <rule>` lines) refuses a push, plus the page that lists them —
59
+ * as a clause, or "" when the remote named none. Only the remote's own words, never a guess.
60
+ */
61
+ function ruleWords(lines) {
62
+ const rules = [];
63
+ let page = "";
64
+ for (const l of lines) {
65
+ const at = /^remote:\s+Review all repository rules at (\S+)/.exec(l);
66
+ if (at) {
67
+ page = at[1];
68
+ continue;
69
+ }
70
+ const r = /^remote:\s+(?:- |error: )(.+?)\s*$/.exec(l);
71
+ if (r && !/^GH0\d\d:/.test(r[1]) && !rules.includes(r[1]))
72
+ rules.push(r[1].replace(/\.$/, ""));
73
+ }
74
+ return (rules.length ? `: ${rules.join("; ")}` : "") + (page ? ` (rules: ${page})` : "");
75
+ }
76
+ /**
77
+ * What a refused push says on the phone. A pre-push hook (the local CI) prints
78
+ * its steps to git's STDOUT, so stderr alone held only node's warnings and
79
+ * git's closing "failed to push" — the step that failed was in the half that
80
+ * was dropped. Both halves, colour codes and node's MODULE_TYPELESS noise out,
81
+ * the hook's `FAILED: <step>` line first, then the last lines that explain it.
82
+ *
83
+ * A hook that PASSED and a remote that then refused is the other case: `--porcelain`
84
+ * writes the refusal (`!\t<ref>\t[rejected] (fetch first)`) to stdout, and 20k of e2e
85
+ * chatter on stderr pushed it out of the tail — the phone showed host warnings and
86
+ * "failed to push" after a green 24-minute check, with the reason nowhere on screen.
87
+ */
88
+ export function pushFailureText(stdout, stderr, tail = 40) {
89
+ const clean = (s) => s.replace(/\x1b\[[0-9;]*m/g, "").split("\n")
90
+ .filter((l) => !/^\(node:\d+\) \[MODULE_TYPELESS_PACKAGE_JSON\]|^Reparsing as ES module|^To eliminate this warning|^\(Use `node --trace-warnings/.test(l));
91
+ const lines = [...clean(stdout), ...clean(stderr)].filter((l, i, a) => l.trim() || (i > 0 && a[i - 1].trim()));
92
+ const failed = lines.find((l) => /^FAILED: /.test(l));
93
+ const body = lines.slice(-tail).join("\n").trim();
94
+ if (failed)
95
+ return `The pre-push check stopped it — ${failed.replace(/^FAILED: /, "")}\n\n${body}`;
96
+ const rejected = lines.map((l) => /^!\t(\S+)\t(.*)$/.exec(l)).find(Boolean);
97
+ if (rejected) {
98
+ const ref = rejected[1].split(":").pop().replace(/^refs\/heads\//, "");
99
+ const why = rejected[2].trim();
100
+ const passed = lines.some((l) => /^local CI passed\b/.test(l)) ? "The pre-push check passed, but the" : "The";
101
+ const moved = /fetch first|non-fast-forward/.test(why)
102
+ ? ` — ${ref} moved on the remote while this ran. Pull, then push again.`
103
+ : /repository rule violations|protected branch hook declined/.test(why)
104
+ ? ` — a branch rule on the remote blocks this push${ruleWords(lines)}. Nothing changed there; your commits are still here.`
105
+ : ` — ${why}`;
106
+ return `${passed} remote refused ${ref}${moved}\n\n${rejected[0]}\n${body}`;
107
+ }
108
+ return body;
109
+ }
110
+ //# sourceMappingURL=pushverdict.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pushverdict.js","sourceRoot":"","sources":["../src/pushverdict.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,53 @@
1
+ /**
2
+ * The ONE headless VT replay: raw PTY bytes → the text that was on screen.
3
+ *
4
+ * The claude TUI positions characters with absolute cursor moves and full-screen
5
+ * repaints rather than printing linearly, so simply stripping ANSI leaves
6
+ * shuffled fragments ("· ← ···") — and, worse, fragments with the spaces GONE,
7
+ * because a gap drawn by a cursor jump is not a space in the byte stream.
8
+ * `Current session` arrives as `Currentsession`. Feeding the bytes to a real VT
9
+ * and reading back the buffer yields what a user would see. The width must match
10
+ * the live PTY or lines wrap wrong. Best-effort — a usable record of what the
11
+ * turn printed, not a true chat transcript.
12
+ *
13
+ * It lives here rather than in `sessions.ts` because it has two callers with no
14
+ * session between them: `screenText()` (a live PTY's scrollback, outside the
15
+ * alternate screen) and `usage.ts`
16
+ * (a short-lived probe's capture). The second one is why the extraction happened
17
+ * — `/usage` prints each window's reset instant as WORDS under its heading
18
+ * ("Resets Sep 10 at 7pm (Europe/Berlin)"), and a scraper reading stripped bytes
19
+ * could match neither the heading nor the sentence, so both resets were null on
20
+ * a screen that named them both.
21
+ *
22
+ * Cost is a full VT replay, so this is for rare paths, not per-frame checks.
23
+ *
24
+ * ## Two readbacks, one replay
25
+ *
26
+ * `renderCapture()` answers "what did it say"; `renderCells()` answers "what did
27
+ * it say, and how was it painted". They share `replay()` and differ only in what
28
+ * they read out of the same buffer, because the alternative was a second VT — a
29
+ * second opinion about what is on a screen, which is exactly the thing CLAUDE.md
30
+ * names this file to prevent.
31
+ *
32
+ * The attributed readback exists because of a measured fact about a second
33
+ * backend: opencode's permission dialog marks the ARMED option with a background
34
+ * colour and nothing else — no number, no `❯`, no bold. Flattening to text
35
+ * throws away the one bit that says which option a Return would press, so the
36
+ * dialog was unanswerable from the phone and `caps.promptBoxes` was false. See
37
+ * `ocprompt.ts` for the reader and `docs/notes/host.md` for the byte-level
38
+ * measurement. The colours themselves are never named here: this file reports
39
+ * what the VT holds, and every judgement about it is the reader's.
40
+ */
41
+ import xtermHeadless from "@xterm/headless";
42
+ declare const Terminal: typeof xtermHeadless.Terminal;
1
43
  export declare function renderCapture(raw: string, cols: number): Promise<string>;
44
+ /**
45
+ * Rendered rows as `renderCapture()` hands them out: trailing spaces trimmed and
46
+ * 3+ blank lines squeezed to one gap. Shared with the recorder's grid read
47
+ * (`drive.ts`'s `screenText`), whose callers measure distance from the LAST
48
+ * row — an untrimmed grid's blank tail would push every echo out of reach.
49
+ */
50
+ export declare function screenTextOf(lines: readonly string[]): string;
2
51
  /**
3
52
  * A run of adjacent cells that agree on every attribute this app reads back.
4
53
  *
@@ -48,3 +97,11 @@ export interface RenderRow {
48
97
  * bottom of a live screen. 0 means the whole buffer.
49
98
  */
50
99
  export declare function renderCells(raw: string, cols: number, tailRows?: number): Promise<RenderRow[]>;
100
+ /**
101
+ * Rows `start` (inclusive) to `end` (exclusive) of a terminal's ACTIVE buffer,
102
+ * read as `RenderRow`s. The cell walk behind `renderCells()`, shared with
103
+ * `screenlog.ts`'s `gridCells()` so a replay and the recorder's live grid can
104
+ * never disagree about what a row's text, runs or dim cells are.
105
+ */
106
+ export declare function cellRows(term: InstanceType<typeof Terminal>, start: number, end: number): RenderRow[];
107
+ export {};
@@ -11,7 +11,8 @@
11
11
  * turn printed, not a true chat transcript.
12
12
  *
13
13
  * It lives here rather than in `sessions.ts` because it has two callers with no
14
- * session between them: `screenText()` (a live PTY's scrollback) and `usage.ts`
14
+ * session between them: `screenText()` (a live PTY's scrollback, outside the
15
+ * alternate screen) and `usage.ts`
15
16
  * (a short-lived probe's capture). The second one is why the extraction happened
16
17
  * — `/usage` prints each window's reset instant as WORDS under its heading
17
18
  * ("Resets Sep 10 at 7pm (Europe/Berlin)"), and a scraper reading stripped bytes
@@ -71,10 +72,18 @@ export function renderCapture(raw, cols) {
71
72
  const line = buf.getLine(i);
72
73
  lines.push(line ? line.translateToString(true) : "");
73
74
  }
74
- // Trim trailing spaces and squeeze 3+ blank lines down to one gap.
75
- return lines.join("\n").replace(/[ \t]+$/gm, "").replace(/\n{3,}/g, "\n\n").trim();
75
+ return screenTextOf(lines);
76
76
  });
77
77
  }
78
+ /**
79
+ * Rendered rows as `renderCapture()` hands them out: trailing spaces trimmed and
80
+ * 3+ blank lines squeezed to one gap. Shared with the recorder's grid read
81
+ * (`drive.ts`'s `screenText`), whose callers measure distance from the LAST
82
+ * row — an untrimmed grid's blank tail would push every echo out of reach.
83
+ */
84
+ export function screenTextOf(lines) {
85
+ return lines.join("\n").replace(/[ \t]+$/gm, "").replace(/\n{3,}/g, "\n\n").trim();
86
+ }
78
87
  /** The attribute key for one cell, in the shape `RenderSpan` documents. */
79
88
  function bgKey(c) {
80
89
  return c.isBgRGB() ? `rgb:${c.getBgColor()}` : c.isBgPalette() ? `pal:${c.getBgColor()}` : "def";
@@ -95,44 +104,53 @@ export function renderCells(raw, cols, tailRows = 0) {
95
104
  if (!raw)
96
105
  return Promise.resolve([]);
97
106
  return replay(raw, cols, (term) => {
98
- const buf = term.buffer.active;
99
- const width = term.cols;
100
- const start = tailRows > 0 ? Math.max(0, buf.length - tailRows) : 0;
101
- const rows = [];
102
- // One reusable cell for the whole walk: `getCell(x)` allocates a fresh
103
- // object per call, and this loop makes one call per cell on screen.
104
- const scratch = buf.getNullCell?.();
105
- for (let i = start; i < buf.length; i++) {
106
- const line = buf.getLine(i);
107
- if (!line) {
108
- rows.push({ text: "", spans: [], undimmed: "" });
107
+ const len = term.buffer.active.length;
108
+ return cellRows(term, tailRows > 0 ? Math.max(0, len - tailRows) : 0, len);
109
+ });
110
+ }
111
+ /**
112
+ * Rows `start` (inclusive) to `end` (exclusive) of a terminal's ACTIVE buffer,
113
+ * read as `RenderRow`s. The cell walk behind `renderCells()`, shared with
114
+ * `screenlog.ts`'s `gridCells()` so a replay and the recorder's live grid can
115
+ * never disagree about what a row's text, runs or dim cells are.
116
+ */
117
+ export function cellRows(term, start, end) {
118
+ const buf = term.buffer.active;
119
+ const width = term.cols;
120
+ const rows = [];
121
+ // One reusable cell for the whole walk: `getCell(x)` allocates a fresh
122
+ // object per call, and this loop makes one call per cell on screen.
123
+ const scratch = buf.getNullCell?.();
124
+ for (let i = start; i < end; i++) {
125
+ const line = buf.getLine(i);
126
+ if (!line) {
127
+ rows.push({ text: "", spans: [], undimmed: "" });
128
+ continue;
129
+ }
130
+ const spans = [];
131
+ let lit = "";
132
+ let cur = null;
133
+ for (let x = 0; x < width; x++) {
134
+ const cell = line.getCell(x, scratch);
135
+ if (!cell)
109
136
  continue;
137
+ const bg = bgKey(cell);
138
+ const fg = fgKey(cell);
139
+ if (!cur || cur.bg !== bg || cur.fg !== fg) {
140
+ cur = { from: x, to: x, text: "", bg, fg };
141
+ spans.push(cur);
110
142
  }
111
- const spans = [];
112
- let lit = "";
113
- let cur = null;
114
- for (let x = 0; x < width; x++) {
115
- const cell = line.getCell(x, scratch);
116
- if (!cell)
117
- continue;
118
- const bg = bgKey(cell);
119
- const fg = fgKey(cell);
120
- if (!cur || cur.bg !== bg || cur.fg !== fg) {
121
- cur = { from: x, to: x, text: "", bg, fg };
122
- spans.push(cur);
123
- }
124
- cur.to = x;
125
- // A cell the VT left empty reads as "", and a row of those must still
126
- // occupy its columns — a span's text is one character per cell or the
127
- // column arithmetic every reader does on top of it is wrong.
128
- cur.text += cell.getChars() || " ";
129
- // The second cell of a wide character has width 0 and no text of its own.
130
- if (cell.getWidth() > 0)
131
- lit += cell.isDim() ? " " : cell.getChars() || " ";
132
- }
133
- rows.push({ text: line.translateToString(true), spans, undimmed: lit.trimEnd() });
143
+ cur.to = x;
144
+ // A cell the VT left empty reads as "", and a row of those must still
145
+ // occupy its columns — a span's text is one character per cell or the
146
+ // column arithmetic every reader does on top of it is wrong.
147
+ cur.text += cell.getChars() || " ";
148
+ // The second cell of a wide character has width 0 and no text of its own.
149
+ if (cell.getWidth() > 0)
150
+ lit += cell.isDim() ? " " : cell.getChars() || " ";
134
151
  }
135
- return rows;
136
- });
152
+ rows.push({ text: line.translateToString(true), spans, undimmed: lit.trimEnd() });
153
+ }
154
+ return rows;
137
155
  }
138
156
  //# sourceMappingURL=render.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
@@ -98,7 +98,10 @@
98
98
  * is also what keeps waterplane self-hosting and every test written against that
99
99
  * shape green. (The flag was designed as ONE argv token precisely so an
100
100
  * old parser ignores it rather than reading it as a subcommand, so the
101
- * omission is not a compatibility crutch — it is who decides.)
101
+ * omission is not a compatibility crutch — it is who decides.) **Unless it
102
+ * cannot load**: a bare package it imports is not installed or not built
103
+ * (a fresh clone) ⇒ the bundled engine reads instead, with `ownSkipped`
104
+ * saying why; the copy wins again the moment the clone is installed.
102
105
  * 2. **The bundled engine** — `WATERPLANE_REPOHEALTH_ENGINE` when set, else this
103
106
  * checkout's own `tools/repohealth.mjs`, three hops up from this module
104
107
  * (the rule `main.ts` uses for `.env` and `webbundle.ts` for the web
@@ -594,7 +597,7 @@ scope = null) {
594
597
  // the one where nothing ran: a phone saying how long a backfill may take
595
598
  // must not hold its own copy of a number this desktop can change.
596
599
  stepTimeoutMs: REPOHEALTH_TIMEOUT_MS,
597
- engine: engine ? { kind: engine.kind, bundled: bundledEngine() } : null,
600
+ engine: engine ? { kind: engine.kind, bundled: bundledEngine(), ...(engine.ownSkipped ? { ownSkipped: engine.ownSkipped } : {}) } : null,
598
601
  // WHICH reading this is, and which others exist. Both ride on every answer
599
602
  // including the one where nothing ran: a client that cannot see the list
600
603
  // cannot offer the subtrees, and one that cannot see which it is holding
@@ -1 +1 @@
1
- {"version":3,"file":"repohealth.js","sourceRoot":"","sources":["../src/repohealth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repohealth.js","sourceRoot":"","sources":["../src/repohealth.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,9 @@ export interface RepoHealthEngine {
57
57
  /** `repo` = the worktree's own copy, which decides its own root; `bundled` =
58
58
  * this desktop's, pointed at the worktree with `--root=`. */
59
59
  kind: "repo" | "bundled";
60
+ /** With `kind: "bundled"`: the worktree HAS its own copy, and it was passed
61
+ * over because it cannot load — the sentence says which package is missing. */
62
+ ownSkipped?: string;
60
63
  }
61
64
  /**
62
65
  * This desktop's own engine: the env override, else this checkout's copy.