waterplane 0.1.6 → 0.1.11

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 (496) hide show
  1. package/CHANGELOG.md +92 -1
  2. package/README.md +1 -1
  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 +58 -4
  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 +209 -0
  10. package/node_modules/@waterplane/shared/dist/alwaysonwords.js.map +1 -0
  11. package/node_modules/@waterplane/shared/dist/autocompact.js +1 -1
  12. package/node_modules/@waterplane/shared/dist/autocompact.js.map +1 -1
  13. package/node_modules/@waterplane/shared/dist/backendsources.d.ts +11 -1
  14. package/node_modules/@waterplane/shared/dist/backendsources.js.map +1 -1
  15. package/node_modules/@waterplane/shared/dist/branchmode.d.ts +27 -0
  16. package/node_modules/@waterplane/shared/dist/branchmode.js +80 -0
  17. package/node_modules/@waterplane/shared/dist/branchmode.js.map +1 -0
  18. package/node_modules/@waterplane/shared/dist/buildstamp.d.ts +37 -0
  19. package/node_modules/@waterplane/shared/dist/buildstamp.js +95 -0
  20. package/node_modules/@waterplane/shared/dist/buildstamp.js.map +1 -0
  21. package/node_modules/@waterplane/shared/dist/burn.d.ts +16 -1
  22. package/node_modules/@waterplane/shared/dist/burn.js +30 -0
  23. package/node_modules/@waterplane/shared/dist/burn.js.map +1 -1
  24. package/node_modules/@waterplane/shared/dist/changebrief.d.ts +61 -0
  25. package/node_modules/@waterplane/shared/dist/changebrief.js +70 -0
  26. package/node_modules/@waterplane/shared/dist/changebrief.js.map +1 -0
  27. package/node_modules/@waterplane/shared/dist/desktopfiles.d.ts +100 -0
  28. package/node_modules/@waterplane/shared/dist/desktopfiles.js +192 -0
  29. package/node_modules/@waterplane/shared/dist/desktopfiles.js.map +1 -0
  30. package/node_modules/@waterplane/shared/dist/exposure.d.ts +175 -0
  31. package/node_modules/@waterplane/shared/dist/exposure.js +357 -0
  32. package/node_modules/@waterplane/shared/dist/exposure.js.map +1 -0
  33. package/node_modules/@waterplane/shared/dist/exposurepush.d.ts +60 -0
  34. package/node_modules/@waterplane/shared/dist/exposurepush.js +103 -0
  35. package/node_modules/@waterplane/shared/dist/exposurepush.js.map +1 -0
  36. package/node_modules/@waterplane/shared/dist/healthindex/commits.d.ts +26 -0
  37. package/node_modules/@waterplane/shared/dist/healthindex/commits.js +57 -0
  38. package/node_modules/@waterplane/shared/dist/healthindex/commits.js.map +1 -0
  39. package/node_modules/@waterplane/shared/dist/healthindex/move.d.ts +25 -0
  40. package/node_modules/@waterplane/shared/dist/healthindex/move.js +79 -0
  41. package/node_modules/@waterplane/shared/dist/healthindex/move.js.map +1 -0
  42. package/node_modules/@waterplane/shared/dist/healthindex/readings.d.ts +53 -0
  43. package/node_modules/@waterplane/shared/dist/healthindex/readings.js +154 -0
  44. package/node_modules/@waterplane/shared/dist/healthindex/readings.js.map +1 -0
  45. package/node_modules/@waterplane/shared/dist/healthindex/repoindex.d.ts +41 -0
  46. package/node_modules/@waterplane/shared/dist/healthindex/repoindex.js +19 -0
  47. package/node_modules/@waterplane/shared/dist/healthindex/repoindex.js.map +1 -0
  48. package/node_modules/@waterplane/shared/dist/healthindex/score.d.ts +26 -0
  49. package/node_modules/@waterplane/shared/dist/healthindex/score.js +154 -0
  50. package/node_modules/@waterplane/shared/dist/healthindex/score.js.map +1 -0
  51. package/node_modules/@waterplane/shared/dist/healthindex/types.d.ts +206 -0
  52. package/node_modules/@waterplane/shared/dist/healthindex/types.js +58 -0
  53. package/node_modules/@waterplane/shared/dist/healthindex/types.js.map +1 -0
  54. package/node_modules/@waterplane/shared/dist/healthindex/vs.d.ts +26 -0
  55. package/node_modules/@waterplane/shared/dist/healthindex/vs.js +38 -0
  56. package/node_modules/@waterplane/shared/dist/healthindex/vs.js.map +1 -0
  57. package/node_modules/@waterplane/shared/dist/healthindex/words.d.ts +28 -0
  58. package/node_modules/@waterplane/shared/dist/healthindex/words.js +69 -0
  59. package/node_modules/@waterplane/shared/dist/healthindex/words.js.map +1 -0
  60. package/node_modules/@waterplane/shared/dist/healthindex.d.ts +15 -411
  61. package/node_modules/@waterplane/shared/dist/healthindex.js +8 -602
  62. package/node_modules/@waterplane/shared/dist/healthindex.js.map +1 -1
  63. package/node_modules/@waterplane/shared/dist/hints.js +5 -0
  64. package/node_modules/@waterplane/shared/dist/hints.js.map +1 -1
  65. package/node_modules/@waterplane/shared/dist/index.d.ts +29 -0
  66. package/node_modules/@waterplane/shared/dist/index.js +29 -0
  67. package/node_modules/@waterplane/shared/dist/index.js.map +1 -1
  68. package/node_modules/@waterplane/shared/dist/intent/kind.d.ts +31 -1
  69. package/node_modules/@waterplane/shared/dist/intent/kind.js +27 -3
  70. package/node_modules/@waterplane/shared/dist/intent/kind.js.map +1 -1
  71. package/node_modules/@waterplane/shared/dist/intent.d.ts +1 -1
  72. package/node_modules/@waterplane/shared/dist/intent.js +1 -1
  73. package/node_modules/@waterplane/shared/dist/intent.js.map +1 -1
  74. package/node_modules/@waterplane/shared/dist/launchmodes.d.ts +2 -0
  75. package/node_modules/@waterplane/shared/dist/launchmodes.js +12 -0
  76. package/node_modules/@waterplane/shared/dist/launchmodes.js.map +1 -1
  77. package/node_modules/@waterplane/shared/dist/ledgerspan.d.ts +59 -0
  78. package/node_modules/@waterplane/shared/dist/ledgerspan.js +99 -0
  79. package/node_modules/@waterplane/shared/dist/ledgerspan.js.map +1 -0
  80. package/node_modules/@waterplane/shared/dist/netretry.d.ts +38 -0
  81. package/node_modules/@waterplane/shared/dist/netretry.js +31 -0
  82. package/node_modules/@waterplane/shared/dist/netretry.js.map +1 -0
  83. package/node_modules/@waterplane/shared/dist/netretrycfg.d.ts +12 -0
  84. package/node_modules/@waterplane/shared/dist/netretrycfg.js +27 -0
  85. package/node_modules/@waterplane/shared/dist/netretrycfg.js.map +1 -0
  86. package/node_modules/@waterplane/shared/dist/nodemin.d.ts +6 -4
  87. package/node_modules/@waterplane/shared/dist/nodemin.js +6 -4
  88. package/node_modules/@waterplane/shared/dist/nodemin.js.map +1 -1
  89. package/node_modules/@waterplane/shared/dist/optins.d.ts +35 -1
  90. package/node_modules/@waterplane/shared/dist/optins.js +39 -1
  91. package/node_modules/@waterplane/shared/dist/optins.js.map +1 -1
  92. package/node_modules/@waterplane/shared/dist/plugin/api.d.ts +364 -0
  93. package/node_modules/@waterplane/shared/dist/plugin/api.js +2 -0
  94. package/node_modules/@waterplane/shared/dist/plugin/api.js.map +1 -0
  95. package/node_modules/@waterplane/shared/dist/plugin/backend.d.ts +197 -0
  96. package/node_modules/@waterplane/shared/dist/plugin/backend.js +9 -0
  97. package/node_modules/@waterplane/shared/dist/plugin/backend.js.map +1 -0
  98. package/node_modules/@waterplane/shared/dist/plugin/manifest.d.ts +160 -0
  99. package/node_modules/@waterplane/shared/dist/plugin/manifest.js +98 -0
  100. package/node_modules/@waterplane/shared/dist/plugin/manifest.js.map +1 -0
  101. package/node_modules/@waterplane/shared/dist/plugin/module.d.ts +98 -0
  102. package/node_modules/@waterplane/shared/dist/plugin/module.js +13 -0
  103. package/node_modules/@waterplane/shared/dist/plugin/module.js.map +1 -0
  104. package/node_modules/@waterplane/shared/dist/plugin/version.d.ts +64 -0
  105. package/node_modules/@waterplane/shared/dist/plugin/version.js +84 -0
  106. package/node_modules/@waterplane/shared/dist/plugin/version.js.map +1 -0
  107. package/node_modules/@waterplane/shared/dist/plugin.d.ts +5 -867
  108. package/node_modules/@waterplane/shared/dist/plugin.js +27 -186
  109. package/node_modules/@waterplane/shared/dist/plugin.js.map +1 -1
  110. package/node_modules/@waterplane/shared/dist/pluginlaunch.d.ts +7 -0
  111. package/node_modules/@waterplane/shared/dist/prview.d.ts +23 -0
  112. package/node_modules/@waterplane/shared/dist/prview.js +107 -0
  113. package/node_modules/@waterplane/shared/dist/prview.js.map +1 -0
  114. package/node_modules/@waterplane/shared/dist/repohealth.d.ts +4 -0
  115. package/node_modules/@waterplane/shared/dist/repohealth.js.map +1 -1
  116. package/node_modules/@waterplane/shared/dist/schedule/schedaction.d.ts +29 -0
  117. package/node_modules/@waterplane/shared/dist/schedule/schedaction.js +22 -0
  118. package/node_modules/@waterplane/shared/dist/schedule/schedaction.js.map +1 -1
  119. package/node_modules/@waterplane/shared/dist/schedule/schedclean.js +26 -0
  120. package/node_modules/@waterplane/shared/dist/schedule/schedclean.js.map +1 -1
  121. package/node_modules/@waterplane/shared/dist/schedule.d.ts +1 -1
  122. package/node_modules/@waterplane/shared/dist/schedule.js +1 -1
  123. package/node_modules/@waterplane/shared/dist/schedule.js.map +1 -1
  124. package/node_modules/@waterplane/shared/dist/sessionbudget.d.ts +20 -5
  125. package/node_modules/@waterplane/shared/dist/sessionbudget.js +42 -16
  126. package/node_modules/@waterplane/shared/dist/sessionbudget.js.map +1 -1
  127. package/node_modules/@waterplane/shared/dist/weekburn.d.ts +114 -0
  128. package/node_modules/@waterplane/shared/dist/weekburn.js +205 -0
  129. package/node_modules/@waterplane/shared/dist/weekburn.js.map +1 -0
  130. package/node_modules/@waterplane/shared/dist/wire/alwayson.d.ts +64 -0
  131. package/node_modules/@waterplane/shared/dist/wire/alwayson.js +7 -0
  132. package/node_modules/@waterplane/shared/dist/wire/alwayson.js.map +1 -0
  133. package/node_modules/@waterplane/shared/dist/wire/backend.d.ts +4 -0
  134. package/node_modules/@waterplane/shared/dist/wire/backendtokens.d.ts +6 -0
  135. package/node_modules/@waterplane/shared/dist/wire/backendtokens.js +0 -9
  136. package/node_modules/@waterplane/shared/dist/wire/backendtokens.js.map +1 -1
  137. package/node_modules/@waterplane/shared/dist/wire/costwindow.d.ts +20 -0
  138. package/node_modules/@waterplane/shared/dist/wire/messages/clienthost.d.ts +15 -1
  139. package/node_modules/@waterplane/shared/dist/wire/messages/clientsession.d.ts +10 -0
  140. package/node_modules/@waterplane/shared/dist/wire/messages/hosttools.d.ts +12 -2
  141. package/node_modules/@waterplane/shared/dist/wire/notify.d.ts +129 -1
  142. package/node_modules/@waterplane/shared/dist/wire/notify.js +79 -1
  143. package/node_modules/@waterplane/shared/dist/wire/notify.js.map +1 -1
  144. package/node_modules/@waterplane/shared/dist/wire/pullrequest.d.ts +42 -0
  145. package/node_modules/@waterplane/shared/dist/wire/pullrequest.js +2 -0
  146. package/node_modules/@waterplane/shared/dist/wire/pullrequest.js.map +1 -0
  147. package/node_modules/@waterplane/shared/dist/wire/repo.d.ts +119 -0
  148. package/node_modules/@waterplane/shared/dist/wire/repo.js +8 -3
  149. package/node_modules/@waterplane/shared/dist/wire/repo.js.map +1 -1
  150. package/node_modules/@waterplane/shared/dist/wire/sent.d.ts +3 -1
  151. package/node_modules/@waterplane/shared/dist/wire/session/contextspark.d.ts +7 -0
  152. package/node_modules/@waterplane/shared/dist/wire/session/info.d.ts +4 -1
  153. package/node_modules/@waterplane/shared/dist/wire/session/launch.d.ts +25 -0
  154. package/node_modules/@waterplane/shared/dist/wire/session.d.ts +1 -1
  155. package/node_modules/@waterplane/shared/dist/wire/telemetry.d.ts +4 -0
  156. package/node_modules/@waterplane/shared/dist/wire/work.d.ts +13 -0
  157. package/node_modules/@waterplane/shared/dist/wire/work.js.map +1 -1
  158. package/npm-shrinkwrap.json +3 -3
  159. package/package.json +2 -2
  160. package/packages/extensions/scorecard/waterplane-plugin.json +10 -0
  161. package/packages/host/dist/agentexposure.d.ts +13 -0
  162. package/packages/host/dist/agentexposure.js +90 -0
  163. package/packages/host/dist/agentexposure.js.map +1 -0
  164. package/packages/host/dist/agentintents.js +2 -2
  165. package/packages/host/dist/agentintents.js.map +1 -1
  166. package/packages/host/dist/agentwatch.d.ts +3 -7
  167. package/packages/host/dist/agentwatch.js.map +1 -1
  168. package/packages/host/dist/alwayson.d.ts +18 -0
  169. package/packages/host/dist/alwayson.js +159 -0
  170. package/packages/host/dist/alwayson.js.map +1 -0
  171. package/packages/host/dist/answergate.d.ts +3 -7
  172. package/packages/host/dist/answergate.js.map +1 -1
  173. package/packages/host/dist/attentionstore.d.ts +61 -0
  174. package/packages/host/dist/attentionstore.js +162 -0
  175. package/packages/host/dist/attentionstore.js.map +1 -0
  176. package/packages/host/dist/backends/claude.js +1 -1
  177. package/packages/host/dist/backends/claude.js.map +1 -1
  178. package/packages/host/dist/backends/derive.js +1 -0
  179. package/packages/host/dist/backends/derive.js.map +1 -1
  180. package/packages/host/dist/backends/registry.js +4 -1
  181. package/packages/host/dist/backends/registry.js.map +1 -1
  182. package/packages/host/dist/backends/types.d.ts +2 -0
  183. package/packages/host/dist/besidespend.d.ts +22 -0
  184. package/packages/host/dist/besidespend.js +65 -0
  185. package/packages/host/dist/besidespend.js.map +1 -0
  186. package/packages/host/dist/boxkit.d.ts +19 -0
  187. package/packages/host/dist/boxkit.js +38 -0
  188. package/packages/host/dist/boxkit.js.map +1 -0
  189. package/packages/host/dist/branchrules.d.ts +14 -0
  190. package/packages/host/dist/branchrules.js +47 -0
  191. package/packages/host/dist/branchrules.js.map +1 -0
  192. package/packages/host/dist/builds.d.ts +31 -1
  193. package/packages/host/dist/builds.js +55 -3
  194. package/packages/host/dist/builds.js.map +1 -1
  195. package/packages/host/dist/buildversions.d.ts +2 -0
  196. package/packages/host/dist/buildversions.js +36 -0
  197. package/packages/host/dist/buildversions.js.map +1 -0
  198. package/packages/host/dist/burnwatch.d.ts +23 -11
  199. package/packages/host/dist/burnwatch.js +51 -2
  200. package/packages/host/dist/burnwatch.js.map +1 -1
  201. package/packages/host/dist/changebrief.d.ts +37 -0
  202. package/packages/host/dist/changebrief.js +157 -0
  203. package/packages/host/dist/changebrief.js.map +1 -0
  204. package/packages/host/dist/cli/index.js +1 -1
  205. package/packages/host/dist/cli/index.js.map +1 -1
  206. package/packages/host/dist/clihealth.d.ts +2 -0
  207. package/packages/host/dist/clihealth.js +11 -2
  208. package/packages/host/dist/clihealth.js.map +1 -1
  209. package/packages/host/dist/compliance.d.ts +5 -1
  210. package/packages/host/dist/compliance.js +70 -31
  211. package/packages/host/dist/compliance.js.map +1 -1
  212. package/packages/host/dist/composer.d.ts +3 -1
  213. package/packages/host/dist/composer.js +3 -1
  214. package/packages/host/dist/composer.js.map +1 -1
  215. package/packages/host/dist/ctxlog/ctxcursor.d.ts +36 -1
  216. package/packages/host/dist/ctxlog/ctxcursor.js +96 -2
  217. package/packages/host/dist/ctxlog/ctxcursor.js.map +1 -1
  218. package/packages/host/dist/ctxlog/ctxproject.js +2 -1
  219. package/packages/host/dist/ctxlog/ctxproject.js.map +1 -1
  220. package/packages/host/dist/ctxlog/ctxupdate.js +13 -2
  221. package/packages/host/dist/ctxlog/ctxupdate.js.map +1 -1
  222. package/packages/host/dist/diskwatch.d.ts +4 -6
  223. package/packages/host/dist/diskwatch.js +3 -1
  224. package/packages/host/dist/diskwatch.js.map +1 -1
  225. package/packages/host/dist/eraseen.d.ts +6 -0
  226. package/packages/host/dist/eraseen.js +100 -0
  227. package/packages/host/dist/eraseen.js.map +1 -0
  228. package/packages/host/dist/exposure.d.ts +56 -0
  229. package/packages/host/dist/exposure.js +371 -0
  230. package/packages/host/dist/exposure.js.map +1 -0
  231. package/packages/host/dist/exposurepush.d.ts +28 -0
  232. package/packages/host/dist/exposurepush.js +136 -0
  233. package/packages/host/dist/exposurepush.js.map +1 -0
  234. package/packages/host/dist/exposurerun.d.ts +18 -0
  235. package/packages/host/dist/exposurerun.js +126 -0
  236. package/packages/host/dist/exposurerun.js.map +1 -0
  237. package/packages/host/dist/exposurewatch.d.ts +29 -0
  238. package/packages/host/dist/exposurewatch.js +127 -0
  239. package/packages/host/dist/exposurewatch.js.map +1 -0
  240. package/packages/host/dist/extensions/scorecard/host/engine.d.mts +54 -0
  241. package/packages/host/dist/extensions/scorecard/host/engine.mjs +303 -0
  242. package/packages/host/dist/extensions/scorecard/host/engine.mjs.map +1 -0
  243. package/packages/host/dist/extensions/scorecard/host/gitslug.d.mts +5 -0
  244. package/packages/host/dist/extensions/scorecard/host/gitslug.mjs +45 -0
  245. package/packages/host/dist/extensions/scorecard/host/gitslug.mjs.map +1 -0
  246. package/packages/host/dist/extensions/scorecard/host/index.d.mts +15 -0
  247. package/packages/host/dist/extensions/scorecard/host/index.mjs +47 -0
  248. package/packages/host/dist/extensions/scorecard/host/index.mjs.map +1 -0
  249. package/packages/host/dist/extensions/scorecard/host/store.d.mts +12 -0
  250. package/packages/host/dist/extensions/scorecard/host/store.mjs +91 -0
  251. package/packages/host/dist/extensions/scorecard/host/store.mjs.map +1 -0
  252. package/packages/host/dist/extensions/scorecard/shared/logic.d.mts +42 -0
  253. package/packages/host/dist/extensions/scorecard/shared/logic.mjs +170 -0
  254. package/packages/host/dist/extensions/scorecard/shared/logic.mjs.map +1 -0
  255. package/packages/host/dist/extensions/scorecard/shared/wire.d.mts +140 -0
  256. package/packages/host/dist/extensions/scorecard/shared/wire.mjs +29 -0
  257. package/packages/host/dist/extensions/scorecard/shared/wire.mjs.map +1 -0
  258. package/packages/host/dist/forge/github.d.ts +3 -0
  259. package/packages/host/dist/forge/github.js +82 -0
  260. package/packages/host/dist/forge/github.js.map +1 -0
  261. package/packages/host/dist/forge/index.d.ts +14 -0
  262. package/packages/host/dist/forge/index.js +32 -0
  263. package/packages/host/dist/forge/index.js.map +1 -0
  264. package/packages/host/dist/forge/types.d.ts +52 -0
  265. package/packages/host/dist/forge/types.js +2 -0
  266. package/packages/host/dist/forge/types.js.map +1 -0
  267. package/packages/host/dist/git.d.ts +36 -3
  268. package/packages/host/dist/git.js +119 -41
  269. package/packages/host/dist/git.js.map +1 -1
  270. package/packages/host/dist/gitnotify.d.ts +24 -0
  271. package/packages/host/dist/gitnotify.js +60 -0
  272. package/packages/host/dist/gitnotify.js.map +1 -0
  273. package/packages/host/dist/healthwatch.d.ts +2 -1
  274. package/packages/host/dist/healthwatch.js +4 -2
  275. package/packages/host/dist/healthwatch.js.map +1 -1
  276. package/packages/host/dist/intents/adapters.js +45 -14
  277. package/packages/host/dist/intents/adapters.js.map +1 -1
  278. package/packages/host/dist/intents/contract.d.ts +4 -0
  279. package/packages/host/dist/intents/contract.js.map +1 -1
  280. package/packages/host/dist/intents/fire.js +7 -1
  281. package/packages/host/dist/intents/fire.js.map +1 -1
  282. package/packages/host/dist/intents/manager.d.ts +3 -3
  283. package/packages/host/dist/intents/manager.js +2 -2
  284. package/packages/host/dist/intents/manager.js.map +1 -1
  285. package/packages/host/dist/intents/watch.d.ts +10 -2
  286. package/packages/host/dist/intents/watch.js +27 -2
  287. package/packages/host/dist/intents/watch.js.map +1 -1
  288. package/packages/host/dist/localcistatus.d.ts +22 -0
  289. package/packages/host/dist/localcistatus.js +105 -0
  290. package/packages/host/dist/localcistatus.js.map +1 -0
  291. package/packages/host/dist/main.js +40 -10
  292. package/packages/host/dist/main.js.map +1 -1
  293. package/packages/host/dist/net.d.ts +2 -0
  294. package/packages/host/dist/net.js +11 -2
  295. package/packages/host/dist/net.js.map +1 -1
  296. package/packages/host/dist/netlog.d.ts +40 -0
  297. package/packages/host/dist/netlog.js +165 -0
  298. package/packages/host/dist/netlog.js.map +1 -0
  299. package/packages/host/dist/netretrycfg.d.ts +7 -0
  300. package/packages/host/dist/netretrycfg.js +51 -0
  301. package/packages/host/dist/netretrycfg.js.map +1 -0
  302. package/packages/host/dist/notifyprefs.d.ts +6 -2
  303. package/packages/host/dist/notifyprefs.js +20 -5
  304. package/packages/host/dist/notifyprefs.js.map +1 -1
  305. package/packages/host/dist/notifytypes.d.ts +58 -0
  306. package/packages/host/dist/notifytypes.js +2 -0
  307. package/packages/host/dist/notifytypes.js.map +1 -0
  308. package/packages/host/dist/opendeliveries.js +24 -0
  309. package/packages/host/dist/opendeliveries.js.map +1 -1
  310. package/packages/host/dist/optins.d.ts +28 -1
  311. package/packages/host/dist/optins.js +96 -4
  312. package/packages/host/dist/optins.js.map +1 -1
  313. package/packages/host/dist/peers/agentpeer.js +1 -1
  314. package/packages/host/dist/peers/agentpeer.js.map +1 -1
  315. package/packages/host/dist/peers/jobs.d.ts +2 -4
  316. package/packages/host/dist/peers/jobs.js +6 -1
  317. package/packages/host/dist/peers/jobs.js.map +1 -1
  318. package/packages/host/dist/plugins/pluginapi.js +2 -0
  319. package/packages/host/dist/plugins/pluginapi.js.map +1 -1
  320. package/packages/host/dist/plugins/pluginregistry.d.ts +3 -8
  321. package/packages/host/dist/plugins/pluginregistry.js +1 -1
  322. package/packages/host/dist/plugins/pluginregistry.js.map +1 -1
  323. package/packages/host/dist/protectmain.d.ts +35 -0
  324. package/packages/host/dist/protectmain.js +73 -0
  325. package/packages/host/dist/protectmain.js.map +1 -0
  326. package/packages/host/dist/prpush.d.ts +30 -0
  327. package/packages/host/dist/prpush.js +171 -0
  328. package/packages/host/dist/prpush.js.map +1 -0
  329. package/packages/host/dist/prs.d.ts +70 -0
  330. package/packages/host/dist/prs.js +328 -0
  331. package/packages/host/dist/prs.js.map +1 -0
  332. package/packages/host/dist/push.d.ts +19 -0
  333. package/packages/host/dist/push.js.map +1 -1
  334. package/packages/host/dist/render.d.ts +57 -0
  335. package/packages/host/dist/render.js +57 -39
  336. package/packages/host/dist/render.js.map +1 -1
  337. package/packages/host/dist/repohealth.js +5 -2
  338. package/packages/host/dist/repohealth.js.map +1 -1
  339. package/packages/host/dist/repohealthapproval.d.ts +3 -0
  340. package/packages/host/dist/repohealthapproval.js +92 -2
  341. package/packages/host/dist/repohealthapproval.js.map +1 -1
  342. package/packages/host/dist/repos.js +7 -1
  343. package/packages/host/dist/repos.js.map +1 -1
  344. package/packages/host/dist/reposkill.d.ts +8 -5
  345. package/packages/host/dist/reposkill.js +16 -11
  346. package/packages/host/dist/reposkill.js.map +1 -1
  347. package/packages/host/dist/reposkilltext.d.ts +8 -1
  348. package/packages/host/dist/reposkilltext.js +72 -3
  349. package/packages/host/dist/reposkilltext.js.map +1 -1
  350. package/packages/host/dist/routes/apihost.js +26 -2
  351. package/packages/host/dist/routes/apihost.js.map +1 -1
  352. package/packages/host/dist/routes/apiprs.d.ts +2 -0
  353. package/packages/host/dist/routes/apiprs.js +45 -0
  354. package/packages/host/dist/routes/apiprs.js.map +1 -0
  355. package/packages/host/dist/routes/apirepofiles.js +12 -1
  356. package/packages/host/dist/routes/apirepofiles.js.map +1 -1
  357. package/packages/host/dist/routes/apirepowork.js +48 -24
  358. package/packages/host/dist/routes/apirepowork.js.map +1 -1
  359. package/packages/host/dist/routes/apiroutes.js +2 -1
  360. package/packages/host/dist/routes/apiroutes.js.map +1 -1
  361. package/packages/host/dist/routes/apisession.js +24 -0
  362. package/packages/host/dist/routes/apisession.js.map +1 -1
  363. package/packages/host/dist/routes/apistats.js +12 -7
  364. package/packages/host/dist/routes/apistats.js.map +1 -1
  365. package/packages/host/dist/routes/apisystem.js +23 -1
  366. package/packages/host/dist/routes/apisystem.js.map +1 -1
  367. package/packages/host/dist/routes/apitable.d.ts +10 -0
  368. package/packages/host/dist/routes/apitable.js.map +1 -1
  369. package/packages/host/dist/routes/apiweekburn.d.ts +2 -0
  370. package/packages/host/dist/routes/apiweekburn.js +30 -0
  371. package/packages/host/dist/routes/apiweekburn.js.map +1 -0
  372. package/packages/host/dist/routes/session.js +4 -0
  373. package/packages/host/dist/routes/session.js.map +1 -1
  374. package/packages/host/dist/routes/system.js +33 -6
  375. package/packages/host/dist/routes/system.js.map +1 -1
  376. package/packages/host/dist/routes/types.d.ts +29 -21
  377. package/packages/host/dist/routes/work/workbuild.js +3 -2
  378. package/packages/host/dist/routes/work/workbuild.js.map +1 -1
  379. package/packages/host/dist/routes/work/workschedule.js +33 -3
  380. package/packages/host/dist/routes/work/workschedule.js.map +1 -1
  381. package/packages/host/dist/screenlog.d.ts +20 -0
  382. package/packages/host/dist/screenlog.js +40 -0
  383. package/packages/host/dist/screenlog.js.map +1 -1
  384. package/packages/host/dist/server/clients.d.ts +14 -24
  385. package/packages/host/dist/server/clients.js +77 -11
  386. package/packages/host/dist/server/clients.js.map +1 -1
  387. package/packages/host/dist/server/ctx.d.ts +2 -0
  388. package/packages/host/dist/server/ctxseal.d.ts +1 -1
  389. package/packages/host/dist/server/ctxseal.js +6 -6
  390. package/packages/host/dist/server/ctxseal.js.map +1 -1
  391. package/packages/host/dist/server/deliveries.js +4 -2
  392. package/packages/host/dist/server/deliveries.js.map +1 -1
  393. package/packages/host/dist/server/http.js +2 -2
  394. package/packages/host/dist/server/http.js.map +1 -1
  395. package/packages/host/dist/server/intentDeps.js +4 -1
  396. package/packages/host/dist/server/intentDeps.js.map +1 -1
  397. package/packages/host/dist/server/intentEvents.js +9 -4
  398. package/packages/host/dist/server/intentEvents.js.map +1 -1
  399. package/packages/host/dist/server/scan.js +23 -1
  400. package/packages/host/dist/server/scan.js.map +1 -1
  401. package/packages/host/dist/server/sessionEvents.js +37 -10
  402. package/packages/host/dist/server/sessionEvents.js.map +1 -1
  403. package/packages/host/dist/sessions/agentpoll.d.ts +31 -0
  404. package/packages/host/dist/sessions/agentpoll.js +176 -0
  405. package/packages/host/dist/sessions/agentpoll.js.map +1 -0
  406. package/packages/host/dist/sessions/apiretry.d.ts +59 -0
  407. package/packages/host/dist/sessions/apiretry.js +240 -0
  408. package/packages/host/dist/sessions/apiretry.js.map +1 -0
  409. package/packages/host/dist/sessions/askwatch.d.ts +62 -0
  410. package/packages/host/dist/sessions/askwatch.js +169 -0
  411. package/packages/host/dist/sessions/askwatch.js.map +1 -0
  412. package/packages/host/dist/sessions/boxes.d.ts +2 -23
  413. package/packages/host/dist/sessions/boxes.js +10 -664
  414. package/packages/host/dist/sessions/boxes.js.map +1 -1
  415. package/packages/host/dist/sessions/boxread.d.ts +47 -0
  416. package/packages/host/dist/sessions/boxread.js +628 -0
  417. package/packages/host/dist/sessions/boxread.js.map +1 -0
  418. package/packages/host/dist/sessions/core.d.ts +16 -1
  419. package/packages/host/dist/sessions/ctxseries.js +3 -0
  420. package/packages/host/dist/sessions/ctxseries.js.map +1 -1
  421. package/packages/host/dist/sessions/drive.d.ts +20 -6
  422. package/packages/host/dist/sessions/drive.js +43 -8
  423. package/packages/host/dist/sessions/drive.js.map +1 -1
  424. package/packages/host/dist/sessions/knobs.d.ts +8 -0
  425. package/packages/host/dist/sessions/knobs.js +9 -0
  426. package/packages/host/dist/sessions/knobs.js.map +1 -1
  427. package/packages/host/dist/sessions/record.js +7 -2
  428. package/packages/host/dist/sessions/record.js.map +1 -1
  429. package/packages/host/dist/sessions/resume.d.ts +17 -0
  430. package/packages/host/dist/sessions/resume.js +65 -11
  431. package/packages/host/dist/sessions/resume.js.map +1 -1
  432. package/packages/host/dist/sessions/roster.js +3 -0
  433. package/packages/host/dist/sessions/roster.js.map +1 -1
  434. package/packages/host/dist/sessions/sidechannel.d.ts +1 -1
  435. package/packages/host/dist/sessions/sidechannel.js +2 -2
  436. package/packages/host/dist/sessions/turn.d.ts +15 -58
  437. package/packages/host/dist/sessions/turn.js +17 -356
  438. package/packages/host/dist/sessions/turn.js.map +1 -1
  439. package/packages/host/dist/sessions.d.ts +7 -1
  440. package/packages/host/dist/sessions.js +22 -13
  441. package/packages/host/dist/sessions.js.map +1 -1
  442. package/packages/host/dist/settle.d.ts +6 -0
  443. package/packages/host/dist/settle.js +26 -21
  444. package/packages/host/dist/settle.js.map +1 -1
  445. package/packages/host/dist/setupprefs.d.ts +26 -1
  446. package/packages/host/dist/setupprefs.js +49 -1
  447. package/packages/host/dist/setupprefs.js.map +1 -1
  448. package/packages/host/dist/sidecar/sidecarname.d.ts +2 -0
  449. package/packages/host/dist/sidecar/sidecarname.js +5 -1
  450. package/packages/host/dist/sidecar/sidecarname.js.map +1 -1
  451. package/packages/host/dist/sidecar/sidecarroute.d.ts +1 -1
  452. package/packages/host/dist/sidecar/sidecarroute.js +5 -0
  453. package/packages/host/dist/sidecar/sidecarroute.js.map +1 -1
  454. package/packages/host/dist/sidecar.d.ts +1 -1
  455. package/packages/host/dist/sidecar.js +1 -1
  456. package/packages/host/dist/sidecar.js.map +1 -1
  457. package/packages/host/dist/tokenscan.d.ts +4 -0
  458. package/packages/host/dist/tokenscan.js +6 -1
  459. package/packages/host/dist/tokenscan.js.map +1 -1
  460. package/packages/host/dist/tokenstats.js +3 -1
  461. package/packages/host/dist/tokenstats.js.map +1 -1
  462. package/packages/host/dist/transcript/transcriptparse.js +6 -1
  463. package/packages/host/dist/transcript/transcriptparse.js.map +1 -1
  464. package/packages/host/dist/transcript/transcriptturns.d.ts +29 -0
  465. package/packages/host/dist/transcript/transcriptturns.js +27 -0
  466. package/packages/host/dist/transcript/transcriptturns.js.map +1 -1
  467. package/packages/host/dist/transcript.d.ts +1 -1
  468. package/packages/host/dist/transcript.js +1 -1
  469. package/packages/host/dist/transcript.js.map +1 -1
  470. package/packages/host/dist/usagesources.d.ts +1 -1
  471. package/packages/host/dist/usagesources.js +7 -2
  472. package/packages/host/dist/usagesources.js.map +1 -1
  473. package/packages/host/dist/weekburn.d.ts +75 -0
  474. package/packages/host/dist/weekburn.js +251 -0
  475. package/packages/host/dist/weekburn.js.map +1 -0
  476. package/packages/host/dist/worktreeleftover.d.ts +9 -0
  477. package/packages/host/dist/worktreeleftover.js +17 -1
  478. package/packages/host/dist/worktreeleftover.js.map +1 -1
  479. package/packages/web/dist/assets/demo-C1GHaeTv.js +23 -0
  480. package/packages/web/dist/assets/icons-DlcvcZoo.js +1 -0
  481. package/packages/web/dist/assets/index-BBc6xwDA.css +1 -0
  482. package/packages/web/dist/assets/index-DzQKnksZ.js +169 -0
  483. package/packages/web/dist/assets/shared-Cl34umPA.js +47 -0
  484. package/packages/web/dist/assets/{sheets-Bjv2L-cG.css → sheets-DoUhPGK0.css} +1 -1
  485. package/packages/web/dist/assets/sheets-_3_SvXAx.js +220 -0
  486. package/packages/web/dist/build-id.txt +1 -1
  487. package/packages/web/dist/buildstamp.json +1 -0
  488. package/packages/web/dist/index.html +7 -7
  489. package/packages/web/dist/sw.js +14 -3
  490. package/release.json +7 -4
  491. package/packages/web/dist/assets/demo-CXlqlYE4.js +0 -23
  492. package/packages/web/dist/assets/icons-BbqDBVjw.js +0 -1
  493. package/packages/web/dist/assets/index-CgPoyb3Y.css +0 -1
  494. package/packages/web/dist/assets/index-D5JKj8DK.js +0 -169
  495. package/packages/web/dist/assets/shared-eyaskl5l.js +0 -47
  496. package/packages/web/dist/assets/sheets-BzzL2re1.js +0 -204
@@ -1,5 +1,5 @@
1
1
  import type { PluginCaller, PluginCallResult, PluginUsageProbe } from "@waterplane/shared";
2
- import type { AnswerSuggestion, ComplianceCheck, DecisionLogEntry, DetectedPrompt, HandToAgentResult, HostPluginModule, NotificationKind, PluginHookHold, PluginQuestionEvent, PluginStatus, PluginValue, PluginView, RepoTarget, SetupFixOutcome, SetupSubject, UsageInfo } from "@waterplane/shared";
2
+ import type { AnswerSuggestion, ComplianceCheck, DecisionLogEntry, DetectedPrompt, HandToAgentResult, HostPluginModule, PluginHookHold, PluginQuestionEvent, PluginStatus, PluginValue, PluginView, RepoTarget, SetupFixOutcome, SetupSubject, UsageInfo } from "@waterplane/shared";
3
3
  import type { HostCtx } from "../routes/types.js";
4
4
  import type { SessionManager } from "../sessions.js";
5
5
  import { type PluginRoute } from "./pluginroutes.js";
@@ -7,6 +7,7 @@ import { type ReleaseBuiltins } from "./builtin.js";
7
7
  import { PluginStreams, type StreamSink } from "./pluginstreams.js";
8
8
  import { PluginFiles, type ServedFile } from "./pluginfiles.js";
9
9
  import { type AssetResult } from "./pluginassets.js";
10
+ import type { Notify } from "../notifytypes.js";
10
11
  type Handler = (e: any) => unknown;
11
12
  /** One installed plugin, as the registry holds it. */
12
13
  export interface PluginEntry {
@@ -74,13 +75,7 @@ export interface RegistryDeps {
74
75
  outTok: number;
75
76
  ts: number;
76
77
  }): void;
77
- notify(kind: NotificationKind, p: {
78
- title: string;
79
- body: string;
80
- sessionId?: string;
81
- tag?: string;
82
- plugin?: string;
83
- }): void;
78
+ notify: Notify;
84
79
  usage(): UsageInfo;
85
80
  /** The plugin list changed — broadcast it. */
86
81
  changed(): void;
@@ -56,7 +56,7 @@ const IN_PROCESS_CALLER = { kind: "unknown", deviceId: null, deviceName: null };
56
56
  /** A `call()` answer is data for the phone, not a transfer channel. */
57
57
  const CALL_RESULT_MAX = 512 * 1024;
58
58
  /** Fix ids `compliance.ts` answers itself — a plugin may not take one. */
59
- export const CORE_FIX_IDS = ["gitignore", "claude-md", "visual-check", "auto-compact", "state-dir", "android-toolchain", "signing-key", "builds-configured"];
59
+ export const CORE_FIX_IDS = ["gitignore", "claude-md", "visual-check", "auto-compact", "state-dir", "android-toolchain", "signing-key", "builds-configured", "exposure-watch", "protect-main", "era-seen", "local-ci-status"];
60
60
  const isPlainObject = (v) => !!v && typeof v === "object" && !Array.isArray(v);
61
61
  const isEnabledDoc = (v) => isPlainObject(v) && (v.enabled === undefined || isPlainObject(v.enabled));
62
62
  const msgOf = (e) => (e instanceof Error ? e.message : String(e)).slice(0, 400);
@@ -1 +1 @@
1
- {"version":3,"file":"pluginregistry.js","sourceRoot":"","sources":["../../src/plugins/pluginregistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pluginregistry.js","sourceRoot":"","sources":["../../src/plugins/pluginregistry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ export declare const STANDARD_RULESETS: readonly [{
2
+ readonly name: "protect main";
3
+ readonly target: "branch";
4
+ readonly enforcement: "active";
5
+ readonly bypass_actors: readonly [];
6
+ readonly conditions: {
7
+ readonly ref_name: {
8
+ readonly include: readonly ["~DEFAULT_BRANCH"];
9
+ readonly exclude: readonly [];
10
+ };
11
+ };
12
+ readonly rules: {
13
+ type: string;
14
+ }[];
15
+ }, {
16
+ readonly name: "protect release tags";
17
+ readonly target: "tag";
18
+ readonly enforcement: "active";
19
+ readonly bypass_actors: readonly [];
20
+ readonly conditions: {
21
+ readonly ref_name: {
22
+ readonly include: readonly ["refs/tags/v*"];
23
+ readonly exclude: readonly [];
24
+ };
25
+ };
26
+ readonly rules: {
27
+ type: string;
28
+ }[];
29
+ }];
30
+ type Gh = (args: string[], input?: string) => string;
31
+ export declare function protectMain(wt: string, run?: Gh): {
32
+ applied: boolean;
33
+ note: string;
34
+ };
35
+ export {};
@@ -0,0 +1,73 @@
1
+ /**
2
+ * **The owner's standard branch rules, set from a tap** — the `protect-main` fix the exposure
3
+ * watch's `B4:default-branch` finding offers (no ruleset, no protection on the default branch).
4
+ *
5
+ * The rules are the ones every public repo here already carries, nothing stricter: block
6
+ * force-push and deletion on the default branch, and on `v*` tags. Direct pushes to main keep
7
+ * working — the owner's workflow has no branches and no PRs, and these rules never ask for either.
8
+ *
9
+ * - **Only ADDS**: a ruleset with the same name already on the repo is left as it is; nothing is
10
+ * edited or deleted. A repo that turned out to be protected meanwhile is a note, not a write.
11
+ * - **The repo is this worktree's own github.com `origin`** — no slug arrives from the client.
12
+ * - **The remote's refusal is quoted** (a private repo on a free plan cannot have rulesets);
13
+ * never a guess, never retried.
14
+ * - Confirm-gated (`CONFIRM_GATED_FIXES`): it changes GitHub, not this desktop. Sync `gh` calls
15
+ * with short timeouts, like the rest of `fixRepoCompliance` — one tap, three calls at most.
16
+ */
17
+ import { execFileSync } from "node:child_process";
18
+ import { ghOfRemote } from "./exposurewatch.js";
19
+ const RULES = [{ type: "non_fast_forward" }, { type: "deletion" }];
20
+ export const STANDARD_RULESETS = [
21
+ { name: "protect main", target: "branch", enforcement: "active", bypass_actors: [],
22
+ conditions: { ref_name: { include: ["~DEFAULT_BRANCH"], exclude: [] } }, rules: RULES },
23
+ { name: "protect release tags", target: "tag", enforcement: "active", bypass_actors: [],
24
+ conditions: { ref_name: { include: ["refs/tags/v*"], exclude: [] } }, rules: RULES },
25
+ ];
26
+ const gh = (args, input) => execFileSync("gh", args, {
27
+ encoding: "utf8", timeout: 15_000, input, stdio: ["pipe", "pipe", "pipe"], env: { ...process.env, GH_PROMPT_DISABLED: "1" },
28
+ });
29
+ /** The remote's own words out of a failed `gh` call, one line. */
30
+ function why(e) {
31
+ const err = e;
32
+ const text = String(err?.stderr || err?.message || e).split("\n").map((l) => l.trim()).filter(Boolean);
33
+ return text.find((l) => /HTTP \d{3}|upgrade|not found|forbidden/i.test(l)) ?? text[0] ?? "gh failed";
34
+ }
35
+ export function protectMain(wt, run = gh) {
36
+ let slug;
37
+ try {
38
+ slug = ghOfRemote(execFileSync("git", ["remote", "get-url", "origin"], { cwd: wt, encoding: "utf8", stdio: ["ignore", "pipe", "ignore"], timeout: 3000 }));
39
+ }
40
+ catch { /* none */ }
41
+ if (!slug)
42
+ return { applied: false, note: "this repo has no github.com origin — no branch rules set" };
43
+ let have;
44
+ try {
45
+ const list = JSON.parse(run(["api", `repos/${slug}/rulesets`]) || "[]");
46
+ have = new Set(list.map((r) => String(r?.name)));
47
+ }
48
+ catch (e) {
49
+ return { applied: false, note: `could not read ${slug}'s rulesets — ${why(e)}` };
50
+ }
51
+ const made = [], kept = [], failed = [];
52
+ for (const rs of STANDARD_RULESETS) {
53
+ if (have.has(rs.name)) {
54
+ kept.push(rs.name);
55
+ continue;
56
+ }
57
+ try {
58
+ run(["api", "-X", "POST", `repos/${slug}/rulesets`, "--input", "-"], JSON.stringify(rs));
59
+ made.push(rs.name);
60
+ }
61
+ catch (e) {
62
+ failed.push(`${rs.name}: ${why(e)}`);
63
+ }
64
+ }
65
+ const parts = [
66
+ made.length ? `set "${made.join('" and "')}" on ${slug} (force-push and deletion blocked; direct pushes still work)` : "",
67
+ kept.length ? `"${kept.join('" and "')}" already there — left as it is` : "",
68
+ failed.length ? `GitHub refused ${failed.join("; ")}` : "",
69
+ made.length ? "the exposure watch reads it again on its next run" : "",
70
+ ].filter(Boolean);
71
+ return { applied: made.length > 0, note: parts.join("; ") };
72
+ }
73
+ //# sourceMappingURL=protectmain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protectmain.js","sourceRoot":"","sources":["../src/protectmain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import type { BranchRules } from "@waterplane/shared";
2
+ type Result = {
3
+ ok: boolean;
4
+ output?: string;
5
+ error?: string;
6
+ };
7
+ export interface PrPushIo {
8
+ /** The streamed `git push` (local-CI hook output feeds the progress parser). */
9
+ push(args: string[]): Promise<{
10
+ stdout: string;
11
+ stderr: string;
12
+ }>;
13
+ /** Turn a failed push's output into the sentence the phone shows. */
14
+ failText(stdout: string, stderr: string): string;
15
+ }
16
+ type Lookup = (wt: string) => Promise<BranchRules | undefined>;
17
+ /** Test seam: replace (or, with null, restore) how the rules are read. */
18
+ export declare function setRulesLookup(fn: Lookup | null): void;
19
+ /** What a push decides on: the CACHED reading only — a push never waits on `gh`, so a
20
+ * direct repo's push is exactly as fast as before. Not read yet = plain push; a rule
21
+ * refusal then re-reads (git.ts) and the next push opens the PR. */
22
+ export declare function rulesFor(wt: string): Promise<BranchRules | undefined>;
23
+ /** `wp/<slug>` body: lowercase [a-z0-9-], at most 40 chars. */
24
+ export declare function branchSlug(subject: string): string;
25
+ /**
26
+ * Run the PR flow. `null` = nothing for it to do (not in PR mode, detached, or
27
+ * default branch with nothing ahead): the caller runs the plain push.
28
+ */
29
+ export declare function pushForPr(wt: string, rules: BranchRules | undefined, io: PrPushIo): Promise<Result | null>;
30
+ export {};
@@ -0,0 +1,171 @@
1
+ /**
2
+ * "Push & open PR" — the push job's path for a repo whose remote rules demand a
3
+ * pull request (`branchrules.ts`: mode pr / pr-checks). Direct and absent rules
4
+ * never come here: `gitPush` runs its own plain path for them, unchanged.
5
+ *
6
+ * EVERY forge call of this flow goes through `forge/` (`forgeOrGh`), never `gh` directly. Outcome text ("opened PR #N" / "updated PR #N"
7
+ * + url) travels as the push job's `output`, the field the phone already reads.
8
+ *
9
+ * Moving local default back (the dance): the new branch is created at HEAD, pushed
10
+ * and the PR opened FIRST. Only then — every ahead commit verified reachable from
11
+ * the new branch — is local default moved, with `git reset --keep origin/<default>`:
12
+ * it moves HEAD to the remote's tip but REFUSES (changing nothing) if a locally
13
+ * modified file would be overwritten, so uncommitted edits are never lost and a
14
+ * commit is never lost (it lives on the branch). If it refuses, the PR still
15
+ * stands, local default keeps its commits, and the sentence says so.
16
+ */
17
+ import { execFileP } from "./proc.js";
18
+ import { reportLocalCi } from "./localcistatus.js";
19
+ import { forgeOrGh } from "./forge/index.js";
20
+ let lookup = null;
21
+ /** Test seam: replace (or, with null, restore) how the rules are read. */
22
+ export function setRulesLookup(fn) { lookup = fn; }
23
+ /** What a push decides on: the CACHED reading only — a push never waits on `gh`, so a
24
+ * direct repo's push is exactly as fast as before. Not read yet = plain push; a rule
25
+ * refusal then re-reads (git.ts) and the next push opens the PR. */
26
+ export async function rulesFor(wt) {
27
+ if (lookup)
28
+ return lookup(wt);
29
+ const { cachedBranchRules } = await import("./branchrules.js");
30
+ return cachedBranchRules(wt);
31
+ }
32
+ const NO_PROMPT = { ...process.env, GIT_TERMINAL_PROMPT: "0", GH_PROMPT_DISABLED: "1" };
33
+ const git = (wt, args) => execFileP("git", args, { cwd: wt, timeout: 60_000, env: NO_PROMPT, maxBuffer: 8 * 1024 * 1024 });
34
+ const msg = (e) => String(e.stderr || e?.message || e).trim().split("\n").slice(-3).join(" ");
35
+ const out = async (wt, args) => (await git(wt, args)).stdout.trim();
36
+ const ok = async (wt, args) => { try {
37
+ await git(wt, args);
38
+ return true;
39
+ }
40
+ catch {
41
+ return false;
42
+ } };
43
+ /** `wp/<slug>` body: lowercase [a-z0-9-], at most 40 chars. */
44
+ export function branchSlug(subject) {
45
+ const s = subject.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "").slice(0, 40).replace(/-+$/g, "");
46
+ return s || "changes";
47
+ }
48
+ async function uniqueBranch(wt, slug) {
49
+ for (let n = 1; n < 100; n++) {
50
+ const name = `wp/${slug}${n === 1 ? "" : `-${n}`}`;
51
+ if (await ok(wt, ["show-ref", "--verify", "--quiet", `refs/heads/${name}`]))
52
+ continue;
53
+ let remote = "";
54
+ try {
55
+ remote = await out(wt, ["ls-remote", "--heads", "origin", name]);
56
+ }
57
+ catch { /* offline: the push will say */ }
58
+ if (!remote)
59
+ return name;
60
+ }
61
+ throw new Error("no free branch name");
62
+ }
63
+ async function defaultBranch(wt) {
64
+ try {
65
+ return (await out(wt, ["symbolic-ref", "--short", "refs/remotes/origin/HEAD"])).replace(/^origin\//, "") || undefined;
66
+ }
67
+ catch { /* fall through */ }
68
+ return (await forgeOrGh(wt)).defaultBranch();
69
+ }
70
+ /** Append the local-ci receipt (when the switch is on) as a second sentence. */
71
+ const withNote = (r, note) => {
72
+ if (!note)
73
+ return r;
74
+ return r.ok ? { ...r, output: `${r.output ?? ""} ${note}`.trim() } : { ...r, error: `${r.error ?? ""} ${note}`.trim() };
75
+ };
76
+ const prNumber = (url) => /\/pull\/(\d+)/.exec(url)?.[1];
77
+ const done = (verb, url) => {
78
+ const n = prNumber(url);
79
+ return { ok: true, output: `${verb} PR${n ? ` #${n}` : ""} — ${url}` };
80
+ };
81
+ /** The PR for the checked-out branch, if one exists. */
82
+ async function existingPr(wt) {
83
+ return (await forgeOrGh(wt)).existingPr();
84
+ }
85
+ /**
86
+ * Run the PR flow. `null` = nothing for it to do (not in PR mode, detached, or
87
+ * default branch with nothing ahead): the caller runs the plain push.
88
+ */
89
+ export async function pushForPr(wt, rules, io) {
90
+ if (!rules || rules.mode === "direct")
91
+ return null;
92
+ let cur;
93
+ try {
94
+ cur = await out(wt, ["rev-parse", "--abbrev-ref", "HEAD"]);
95
+ }
96
+ catch {
97
+ return null;
98
+ }
99
+ if (!cur || cur === "HEAD")
100
+ return null;
101
+ const def = await defaultBranch(wt);
102
+ if (!def)
103
+ return null;
104
+ try {
105
+ if (cur !== def)
106
+ return await onBranch(wt, cur, io);
107
+ return await fromDefault(wt, def, io);
108
+ }
109
+ catch (e) {
110
+ return { ok: false, error: `The pull request could not be opened — ${msg(e)}. Nothing else was changed.` };
111
+ }
112
+ }
113
+ async function onBranch(wt, branch, io) {
114
+ const hasUp = await ok(wt, ["rev-parse", "--abbrev-ref", "@{u}"]);
115
+ let pushed;
116
+ try {
117
+ pushed = await io.push(hasUp ? ["push", "--porcelain"] : ["push", "--porcelain", "--set-upstream", "origin", branch]);
118
+ }
119
+ catch (e) {
120
+ return { ok: false, error: io.failText(String(e?.stdout ?? ""), String(e?.stderr ?? "") || String(e)) };
121
+ }
122
+ const note = await reportLocalCi(wt, pushed, branch);
123
+ const have = await existingPr(wt);
124
+ if (have)
125
+ return withNote(done("updated", have.url), note);
126
+ try {
127
+ return withNote(done("opened", await (await forgeOrGh(wt)).openPr()), note);
128
+ }
129
+ catch (e) {
130
+ return withNote({ ok: false, error: `${branch} is pushed to origin, but opening the pull request failed — ${msg(e)}. Nothing else was changed.` }, note);
131
+ }
132
+ }
133
+ async function fromDefault(wt, def, io) {
134
+ await git(wt, ["fetch", "--quiet", "origin", def]).catch(() => undefined); // best effort
135
+ let ahead;
136
+ try {
137
+ ahead = (await out(wt, ["rev-list", "--reverse", `origin/${def}..HEAD`])).split("\n").filter(Boolean);
138
+ }
139
+ catch {
140
+ return null;
141
+ }
142
+ if (!ahead.length)
143
+ return null;
144
+ const tip = await out(wt, ["rev-parse", "HEAD"]);
145
+ const branch = await uniqueBranch(wt, branchSlug(await out(wt, ["log", "-1", "--format=%s", ahead[0]])));
146
+ await git(wt, ["branch", branch, tip]);
147
+ let pushed;
148
+ try {
149
+ pushed = await io.push(["push", "--porcelain", "--set-upstream", "origin", `${branch}:${branch}`]);
150
+ }
151
+ catch (e) {
152
+ // Nothing reached the remote and main still holds every commit: drop the branch we made.
153
+ await git(wt, ["branch", "-D", branch]).catch(() => undefined);
154
+ return { ok: false, error: io.failText(String(e?.stdout ?? ""), String(e?.stderr ?? "") || String(e)) };
155
+ }
156
+ const note = await reportLocalCi(wt, pushed, branch, tip);
157
+ let url;
158
+ try {
159
+ url = await (await forgeOrGh(wt)).openPr({ head: branch, base: def });
160
+ }
161
+ catch (e) {
162
+ return withNote({ ok: false, error: `Your ${ahead.length} commit${ahead.length === 1 ? " is" : "s are"} pushed to origin as ${branch} and still on ${def} here, but opening the pull request failed — ${msg(e)}. Nothing else was changed; push again to retry.` }, note);
163
+ }
164
+ if (!(await ok(wt, ["merge-base", "--is-ancestor", tip, branch]))) {
165
+ return withNote({ ok: true, output: `${done("opened", url).output}. Local ${def} was left as it is — the branch does not hold every commit.` }, note);
166
+ }
167
+ if (await ok(wt, ["reset", "--keep", `origin/${def}`]))
168
+ return withNote(done("opened", url), note);
169
+ return withNote({ ok: true, output: `${done("opened", url).output}. Local ${def} still has the commits — edited files in the tree stopped moving it back; they are all on ${branch} too.` }, note);
170
+ }
171
+ //# sourceMappingURL=prpush.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prpush.js","sourceRoot":"","sources":["../src/prpush.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * The person's open pull requests, and the actions on them (the PR card, P3).
3
+ *
4
+ * EVERY forge call of this module goes through `forge/` (`forgeOrGh`), never `gh`
5
+ * directly. Git calls are `git()`.
6
+ *
7
+ * The list is polled ONLY while a client holds a LEASE on the repo
8
+ * (`localrt.ts`'s model: no socket-close hook here, so a watcher that stops
9
+ * renewing lapses by itself — the phone renews every ~30 s, a lease lasts 60 s,
10
+ * the poll stops with the last watcher). A request never runs `gh pr list`: it is
11
+ * answered from the cache the poll keeps. The actions (merge, auto-merge, close,
12
+ * failing log) are one explicit POST each, from a tap, and run `gh` once.
13
+ *
14
+ * Notifications (checks failed / changes requested / merged or closed off the
15
+ * phone) are raised from the poll, so they exist ONLY while somebody is looking
16
+ * at the card — by design: a background poller per repo is a cost nobody asked for.
17
+ * They go through the same `notify("git", …)` path, so the push prefs gate them.
18
+ */
19
+ import { type BranchRules, type PrActionResult, type PrListDoc, type PullRequestView } from "@waterplane/shared";
20
+ import { type GitRepoRef } from "./git.js";
21
+ import type { NotifyParams } from "./notifytypes.js";
22
+ export declare let LEASE_MS: number;
23
+ /** Test seam: shorten the lease / poll period (no floor). */
24
+ export declare function setPrTiming(t: {
25
+ leaseMs?: number;
26
+ pollMs?: number;
27
+ }): void;
28
+ /** Test seam: replace (null restores) how branch rules are read (a fake forge has no `gh api`). */
29
+ type RulesLookup = (wt: string) => Promise<BranchRules | undefined>;
30
+ export declare function setPrRules(fn: RulesLookup | null): void;
31
+ export interface PrNotifyDeps {
32
+ notify(kind: "git", p: NotifyParams): void;
33
+ resolveAttention(key: string, note: string): number;
34
+ }
35
+ export declare function setPrNotify(d: PrNotifyDeps | null): void;
36
+ /** Is anything polling this worktree right now? (tests, diagnostics) */
37
+ export declare function prsPolling(wt: string): boolean;
38
+ /** The cached reading: never runs `gh`. */
39
+ export declare function cachedPrs(wt: string): PrListDoc;
40
+ /** One `gh pr list`. Failure of any kind is ABSENT (undefined) with a sentence. */
41
+ export declare function listPrs(wt: string, rules?: BranchRules): Promise<{
42
+ prs?: PullRequestView[];
43
+ why?: string;
44
+ }>;
45
+ /**
46
+ * Take (or renew) a lease. The first lease of a worktree polls at once; the
47
+ * answer is whatever is cached NOW (the phone asks again, or the next frame of
48
+ * its renewal carries the fresh list) — a request never waits on `gh`.
49
+ */
50
+ export declare function leasePrs(wt: string, holder: string, ref?: GitRepoRef): PrListDoc;
51
+ /** Drop everything (tests). */
52
+ export declare function stopAllPrs(): void;
53
+ export declare function mergePr(wt: string, body: {
54
+ number?: unknown;
55
+ method?: unknown;
56
+ }): Promise<PrActionResult>;
57
+ export declare function autoMergePr(wt: string, body: {
58
+ number?: unknown;
59
+ on?: unknown;
60
+ method?: unknown;
61
+ }): Promise<PrActionResult>;
62
+ export declare function closePr(wt: string, body: {
63
+ number?: unknown;
64
+ }): Promise<PrActionResult>;
65
+ /** The tail of the failing check's Actions log, or the check's own page when it is not an Actions run. */
66
+ export declare function failingLog(wt: string, body: {
67
+ number?: unknown;
68
+ check?: unknown;
69
+ }): Promise<PrActionResult>;
70
+ export {};