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
@@ -16,6 +16,7 @@
16
16
  */
17
17
  import { statSync } from "node:fs";
18
18
  import { basename, join } from "node:path";
19
+ import { buildAttentionKey } from "@waterplane/shared";
19
20
  import { discoverArtifacts, discoverArtifactsAsync, isMarkdownPath } from "../files.js";
20
21
  import { targetId } from "../repos.js";
21
22
  import { catchUpCandidates } from "../autopull.js";
@@ -65,6 +66,26 @@ export function createScan(ctx) {
65
66
  return { name: a.name, relPath: a.relPath, size: a.size, mtime };
66
67
  }), "build");
67
68
  }
69
+ // One attention item per build ENTRY of one repo/worktree (`RepoTarget.id`, so the chip lines
70
+ // up with /api/repos): a failure files it, the next success of the same entry resolves it.
71
+ const repoId = targetId(run.repoDir);
72
+ const key = buildAttentionKey(repoId, run.buildId);
73
+ let fail;
74
+ if (run.status === "failed") {
75
+ let out = "";
76
+ try {
77
+ out = ctx.builds.getOutput(run.runId).slice(-1500).trim();
78
+ }
79
+ catch { /* no tail is fine */ }
80
+ fail = {
81
+ outcome: "failed", key, build: { id: run.buildId, name: run.name },
82
+ detail: out || verdict, open: { to: "build", repoId, buildId: run.buildId },
83
+ };
84
+ }
85
+ else {
86
+ const at = new Date(run.finishedAt ?? Date.now());
87
+ ctx.resolveAttention(key, `fixed by the ${String(at.getHours()).padStart(2, "0")}:${String(at.getMinutes()).padStart(2, "0")} run`);
88
+ }
68
89
  const art = run.artifacts?.[0];
69
90
  if (art) {
70
91
  ctx.notify("artifact", {
@@ -72,10 +93,11 @@ export function createScan(ctx) {
72
93
  body: `${fmtSize(art.size)} · ${verdict} — tap to download`,
73
94
  tag: `build-${run.runId}`,
74
95
  file: { repoId: art.repoId, relPath: art.relPath, name: art.name, size: art.size, mtime: art.mtime },
96
+ ...(fail ?? { outcome: "ok" }),
75
97
  });
76
98
  }
77
99
  else {
78
- ctx.notify("info", { title: `Build “${run.name}” ${verdict}`, body: run.cwd, tag: `build-${run.runId}` });
100
+ ctx.notify("info", { title: `Build “${run.name}” ${verdict}`, body: run.cwd, tag: `build-${run.runId}`, ...(fail ?? { outcome: "ok" }) });
79
101
  }
80
102
  }
81
103
  // `ctx.autopull` was constructed (in main.ts) immediately before this call;
@@ -1 +1 @@
1
- {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../src/server/scan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../src/server/scan.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,7 @@ import { peerJobOriginAt } from "../peers/serve.js";
39
39
  import { createBudgetCalibrator } from "../sessionbudget.js";
40
40
  import { backendInfos, onBackendsChanged, primeNewBackendModels } from "../backends/index.js";
41
41
  import { hostStateDir } from "../branddirs.js";
42
+ import { noteOptInSends } from "../optins.js";
42
43
  export function wireSessionEvents(ctx) {
43
44
  // A closed row says how its item SETTLED (`roster.ts`'s `closedRowOf`) —
44
45
  // read at close time, through the store, never a copy of it.
@@ -48,7 +49,14 @@ export function wireSessionEvents(ctx) {
48
49
  // maps; this is the commit that deletes one.
49
50
  // …and a HARD session budget re-owes its Esc for the next turn while over
50
51
  // (`sessions/budgetwatch.ts`; sent by the judge that sees it working).
51
- ctx.sessions.on("turnEnded", (id, stopCount) => { ctx.intents.onTurnEnded(id, stopCount); ctx.sessions.budgetTurnEnded(id); });
52
+ // A turn the CLI gave up on a transient API error carries `net`
53
+ // (`sessions/apiretry.ts`): the intents do not complete off it. The budget
54
+ // still counts it — the retry's `continue` is a turn that spends, and a HARD
55
+ // budget over owes it its Esc exactly as any other.
56
+ ctx.sessions.on("turnEnded", (id, stopCount, net) => { ctx.intents.onTurnEnded(id, stopCount, net); ctx.sessions.budgetTurnEnded(id); });
57
+ // The late answer to a `checking` turn end (or the halt stopping a retry):
58
+ // the intents only — the budget already counted that turn.
59
+ ctx.sessions.on("netTurnSettled", (id, stopCount, net) => ctx.intents.onTurnEnded(id, stopCount, net ?? undefined));
52
60
  ctx.sessions.on("exit", (id) => ctx.intents.onSessionExit(id));
53
61
  // The CLI's own on-screen "Update available!" nag → surface the update button
54
62
  // immediately, even while the Homebrew cask still lags the npm release.
@@ -90,15 +98,29 @@ export function wireSessionEvents(ctx) {
90
98
  ctx.broadcast({ t: "session.exit", id, code });
91
99
  // A standing rule a person made lives exactly as long as its session (`answergate.ts`).
92
100
  forgetRules({ sessionId: id });
101
+ ctx.resolveAttention(`prompt:${id}`, "session closed");
93
102
  });
94
103
  ctx.sessions.on("closed", (closed) => ctx.broadcast({ t: "closed.list", closed }));
95
- ctx.sessions.on("updated", (info) => ctx.broadcast({ t: "session.updated", session: info }));
104
+ ctx.sessions.on("updated", (info) => {
105
+ ctx.broadcast({ t: "session.updated", session: info });
106
+ // An attention item resolves by its cause: the box is gone (answered, or the turn moved on)
107
+ // / the follow-up flag was cleared. A silent no-op when nothing matches.
108
+ if (!info.prompt && !info.awaitingInput && !info.asking)
109
+ ctx.resolveAttention(`prompt:${info.id}`, "answered");
110
+ if (!info.followUp)
111
+ ctx.resolveAttention(`followup:${info.id}`, "flag cleared");
112
+ });
113
+ ctx.sessions.on("followUpCleared", (ids) => {
114
+ for (const k of ids)
115
+ ctx.resolveAttention(`followup:${k}`, "flag cleared");
116
+ });
96
117
  // A follow-up flag nobody tapped (a launch option on finishing, or the session's
97
118
  // agent): one push saying who and why. A hand flag never gets here (`roster.ts`).
98
119
  ctx.sessions.on("followUp", (info, f) => {
99
120
  const p = followUpPushText(f, info.tabTitle || info.title);
121
+ // The launch option ("flag when done") is a receipt, so info; the session's own agent asking is attention.
100
122
  if (p)
101
- ctx.notify("followup", { ...p, sessionId: info.id, tag: `followup-${info.id}` });
123
+ ctx.notify("followup", { ...p, sessionId: info.id, tag: `followup-${info.id}`, key: `followup:${info.id}`, ...(f.by === "launch" ? { level: "info" } : {}) });
102
124
  });
103
125
  // History updates stream only to sockets viewing that session (like PTY frames).
104
126
  ctx.sessions.on("history", (id, entries) => {
@@ -106,6 +128,10 @@ export function wireSessionEvents(ctx) {
106
128
  for (const ws of ctx.clients)
107
129
  if (ctx.attached.get(ws)?.has(id))
108
130
  ctx.send(ws, frame);
131
+ // An opt-in's words sent here are remembered past the session (`optins.ts`).
132
+ const cwd = ctx.sessions.get(id)?.cwd;
133
+ if (cwd)
134
+ noteOptInSends(cwd, entries);
109
135
  });
110
136
  // Fires for every session, including ones the backlog creates internally.
111
137
  ctx.sessions.on("created", (info) => {
@@ -167,14 +193,14 @@ export function wireSessionEvents(ctx) {
167
193
  ctx.notify("prompt", {
168
194
  title: `${s?.title ?? "Session"} needs you`,
169
195
  body: "A dialog is open in the CLI — open the session to answer.",
170
- sessionId: id, tag: `prompt-${id}`,
196
+ sessionId: id, tag: `prompt-${id}`, key: `prompt:${id}`,
171
197
  });
172
198
  });
173
199
  // Notifications: prompt waiting + turn finished.
174
200
  ctx.sessions.on("prompt", (id, prompt) => {
175
201
  const s = ctx.sessions.get(id);
176
202
  const opts = prompt.options.map((o) => `${o.index}. ${o.label}`).join(" ");
177
- ctx.notify("prompt", { title: `${s?.title ?? "Session"} needs you`, body: `${prompt.question}\n${opts}`, sessionId: id, tag: `prompt-${id}` });
203
+ ctx.notify("prompt", { title: `${s?.title ?? "Session"} needs you`, body: `${prompt.question}\n${opts}`, sessionId: id, tag: `prompt-${id}`, key: `prompt:${id}` });
178
204
  // Plugins hear about every box (docs/notes/plugins.md). `blocked` is the
179
205
  // core's gate verdict, precomputed; answering goes through that gate.
180
206
  ctx.plugins.firePrompt(id, prompt);
@@ -254,10 +280,11 @@ export function wireSessionEvents(ctx) {
254
280
  });
255
281
  }
256
282
  else if (phase === "resumed") {
257
- ctx.notify("limit", { title: `Session resumed · ${info.title}`, body: `usage limit lifted after ${att} attempt${att === 1 ? "" : "s"}${dur ? ` · blocked ${dur}` : ""} — work continues`, sessionId: id, tag: `limit-${id}-done` });
283
+ ctx.notify("limit", { title: `Session resumed · ${info.title}`, body: `usage limit lifted after ${att} attempt${att === 1 ? "" : "s"}${dur ? ` · blocked ${dur}` : ""} — work continues`, sessionId: id, tag: `limit-${id}-done`, outcome: "ok" });
284
+ ctx.resolveAttention(`limit:${id}`, "session resumed");
258
285
  }
259
286
  else if (phase === "gaveup") {
260
- ctx.notify("limit", { title: `Auto-continue gave up · ${info.title}`, body: `still limit-blocked after ${att} attempts — resume manually`, sessionId: id, tag: `limit-${id}-done` });
287
+ ctx.notify("limit", { title: `Auto-continue gave up · ${info.title}`, body: `still limit-blocked after ${att} attempts — resume manually`, sessionId: id, tag: `limit-${id}-done`, outcome: "failed", key: `limit:${id}` });
261
288
  }
262
289
  });
263
290
  ctx.sessions.on("idle", (id, info) => {
@@ -282,7 +309,7 @@ export function wireSessionEvents(ctx) {
282
309
  ctx.notify("prompt", {
283
310
  title: `Needs your decision · ${info.title}`,
284
311
  body: info.asking.text,
285
- sessionId: id, tag: `prompt-${id}`,
312
+ sessionId: id, tag: `prompt-${id}`, key: `prompt:${id}`,
286
313
  });
287
314
  }
288
315
  else {
@@ -402,7 +429,7 @@ export function wireSessionEvents(ctx) {
402
429
  ctx.notify("limit", {
403
430
  title: `Session budget hit · ${info.title}`,
404
431
  body: `${sessionBudgetText(b.verdict)}. ${sessionBudgetHoldText(b.cfg)} ${esc.why}${tail}`,
405
- sessionId: id, tag: `session-budget:${id}`,
432
+ sessionId: id, tag: `session-budget:${id}`, level: "attention", key: `budget:${id}`,
406
433
  });
407
434
  });
408
435
  ctx.sessions.on("budgetEscDue", (id, info) => {
@@ -416,7 +443,7 @@ export function wireSessionEvents(ctx) {
416
443
  ctx.notify("limit", {
417
444
  title: `Session budget · ${info.title} interrupted`,
418
445
  body: `${sessionBudgetText(b.verdict)}. ${esc.why} ${sessionBudgetHoldText(b.cfg)}`,
419
- sessionId: id, tag: `session-budget:${id}`,
446
+ sessionId: id, tag: `session-budget:${id}`, level: "attention", key: `budget:${id}`,
420
447
  });
421
448
  });
422
449
  // A running subagent over the person's line: one `agent` push per agent
@@ -1 +1 @@
1
- {"version":3,"file":"sessionEvents.js","sourceRoot":"","sources":["../../src/server/sessionEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessionEvents.js","sourceRoot":"","sources":["../../src/server/sessionEvents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGjE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,UAAU,iBAAiB,CAAC,GAAc;IAC9C,yEAAyE;IACzE,6DAA6D;IAC7D,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAChE,gFAAgF;IAChF,8EAA8E;IAC9E,6CAA6C;IAC7C,0EAA0E;IAC1E,uEAAuE;IACvE,gEAAgE;IAChE,2EAA2E;IAC3E,6EAA6E;IAC7E,oDAAoD;IACpD,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,EAAU,EAAE,SAAiB,EAAE,GAAgB,EAAE,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtK,2EAA2E;IAC3E,2DAA2D;IAC3D,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,EAAU,EAAE,SAAiB,EAAE,GAAsB,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC;IACvJ,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvE,8EAA8E;IAC9E,wEAAwE;IACxE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,MAAe,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IAErF,4EAA4E;IAC5E,kEAAkE;IAClE,0EAA0E;IAC1E,sEAAsE;IACtE,4EAA4E;IAC5E,8EAA8E;IAC9E,4EAA4E;IAC5E,MAAM,OAAO,GAAG,IAAI,OAAO,EAA0B,CAAC;IACtD,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAU,EAAE,KAAa,EAAE,GAAW,EAAE,EAAE;QACjE,IAAI,KAAK,GAAuB,IAAI,CAAC;QACrC,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;gBAAE,SAAS;YAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7B,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,cAAc,EAAE,oBAAoB,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACxF,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBACtB,IAAI,IAAI;oBAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;;oBAAM,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC;iBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;gBACjB,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;gBACrD,IAAI,GAAG;oBAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACnI,CAAC;iBAAM,CAAC;gBACN,KAAK,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;gBACxF,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAU,EAAE,IAAmB,EAAE,EAAE;QAC1D,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,wFAAwF;QACxF,WAAW,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/B,GAAG,CAAC,gBAAgB,CAAC,UAAU,EAAE,EAAE,EAAE,gBAAgB,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IACnF,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAiB,EAAE,EAAE;QAC/C,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,iBAAiB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,4FAA4F;QAC5F,yEAAyE;QACzE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,GAAG,CAAC,gBAAgB,CAAC,UAAU,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/G,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,GAAG,CAAC,gBAAgB,CAAC,YAAY,IAAI,CAAC,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,GAAa,EAAE,EAAE;QACnD,KAAK,MAAM,CAAC,IAAI,GAAG;YAAE,GAAG,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IACH,iFAAiF;IACjF,kFAAkF;IAClF,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,IAAiB,EAAE,CAAW,EAAE,EAAE;QAC7D,MAAM,CAAC,GAAG,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,2GAA2G;QAC3G,IAAI,CAAC;YAAE,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,YAAY,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,YAAY,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAChL,CAAC,CAAC,CAAC;IACH,iFAAiF;IACjF,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,EAAU,EAAE,OAAuB,EAAE,EAAE;QACjE,MAAM,KAAK,GAAgB,EAAE,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;QACjE,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,OAAO;YAAE,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACrF,6EAA6E;QAC7E,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;QACtC,IAAI,GAAG;YAAE,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,0EAA0E;IAC1E,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAiB,EAAE,EAAE;QAC/C,oFAAoF;QACpF,wEAAwE;QACxE,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,MAAM;YAAE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QAClC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,iBAAiB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACvE,8EAA8E;QAC9E,6FAA6F;QAC7F,2FAA2F;QAC3F,6DAA6D;QAC7D,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;QACrE,KAAK,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YAC1C,IAAI,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACpH,CAAC,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACb,wEAAwE;QACxE,4EAA4E;QAC5E,2EAA2E;QAC3E,mCAAmC;QACnC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACvH,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9C,KAAK,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YAClE,IAAI,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7I,CAAC,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACb,8EAA8E;QAC9E,6EAA6E;QAC7E,6EAA6E;QAC7E,+EAA+E;QAC/E,YAAY,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3H,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAU,EAAE,EAAE;QACrC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACvB,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACxB,8EAA8E;QAC9E,8EAA8E;QAC9E,+EAA+E;QAC/E,uEAAuE;QACvE,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACrF,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvF,0EAA0E;QAC1E,8EAA8E;QAC9E,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,sEAAsE;IACtE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,EAAU,EAAE,EAAE;QACzC,MAAM,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/B,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE;YACnB,KAAK,EAAE,GAAG,CAAC,EAAE,KAAK,IAAI,SAAS,YAAY;YAC3C,IAAI,EAAE,2DAA2D;YACjE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE;SACxD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,iDAAiD;IACjD,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAU,EAAE,MAAsB,EAAE,EAAE;QAC/D,MAAM,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,KAAK,IAAI,SAAS,YAAY,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,QAAQ,KAAK,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;QAEpK,yEAAyE;QACzE,sEAAsE;QACtE,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,kFAAkF;IAClF,yEAAyE;IACzE,6EAA6E;IAC7E,gFAAgF;IAChF,yEAAyE;IACzE,6BAA6B;IAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACrE,SAAS,aAAa,CAAC,CAA0B;QAC/C,IAAI,CAAC;YACH,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACvD,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YACpD,uEAAuE;YACvE,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,EAAE,CAAC;gBAC1C,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,uCAAuC,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAC7G,MAAM,MAAM,GAAG,CAAC,EAAU,EAAE,EAAE;QAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IACjE,CAAC,CAAC;IAEF,2EAA2E;IAC3E,sEAAsE;IACtE,wCAAwC;IACxC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;QACjC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC/G,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAU,EAAE,IAAiB,EAAE,KAAiE,EAAE,EAAE;QAC5H,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;QACvB,MAAM,IAAI,GAAG,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACzD,MAAM,IAAI,GAAG,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACrE,OAAO,CAAC,GAAG,CACT,GAAG,MAAM,UAAU,KAAK,MAAM,IAAI,CAAC,KAAK,KAAK,EAAE,GAAG;YAClD,CAAC,GAAG,CAAC,CAAC,CAAC,eAAe,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACxG,CAAC;QACF,aAAa,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,IAAI,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa,IAAI,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC;QAE3O,6EAA6E;QAC7E,6EAA6E;QAC7E,gDAAgD;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QAC1F,4FAA4F;QAC5F,2CAA2C;QAC3C,MAAM,IAAI,GAAG,GAAG,EAAE,QAAQ;YACxB,CAAC,CAAC,gDAAgD,GAAG,CAAC,QAAQ,EAAE;YAChE,CAAC,CAAC,GAAG,EAAE,YAAY;gBACnB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mCAAmC,IAAI,GAAG,CAAC,CAAC,CAAC,kCAAkC,QAAQ,MAAM,CAAC;gBACxG,CAAC,CAAC,wCAAwC,CAAC;QAC7C,MAAM,GAAG,GAAG,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,MAAM,GAAG,GAAG,GAAG,EAAE,QAAQ,IAAI,CAAC,CAAC;QAE/B,0EAA0E;QAC1E,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;YAC1B,MAAM,QAAQ,GACZ,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,gEAAgE,CAAC,CAAC,CAAC,4CAA4C,CAAC;gBACvJ,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,yBAAyB,GAAG,wCAAwC;oBAC5F,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,uCAAuC;wBAC/D,CAAC,CAAC,+BAA+B,GAAG,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YACzE,MAAM,SAAS,GACb,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG;gBACxE,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iCAAiC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9E,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;wBAChG,CAAC,CAAC,kCAAkC,CAAC;YACvC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC;gBAClB,EAAE,EAAE,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,KAAK;gBACrF,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO;aACzF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,MAAM,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;QAClJ,CAAC;aAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE;gBAClB,KAAK,EAAE,wBAAwB,IAAI,CAAC,KAAK,EAAE;gBAC3C,IAAI,EAAE,WAAW,GAAG,EAAE,QAAQ,IAAI,GAAG,6CAA6C,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;gBACjH,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,+DAA+D;aACnG,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,qBAAqB,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,4BAA4B,GAAG,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YACnP,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAC;QACzD,CAAC;aAAM,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,2BAA2B,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,6BAA6B,GAAG,6BAA6B,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9N,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAU,EAAE,IAAiB,EAAE,EAAE;QACxD,oEAAoE;QACpE,sDAAsD;QACtD,KAAK,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE9B,yEAAyE;QACzE,kEAAkE;QAClE,IAAI,IAAI,CAAC,KAAK,EAAE,OAAO;YAAE,OAAO;QAEhC,uEAAuE;QACvE,wEAAwE;QACxE,sEAAsE;QACtE,sEAAsE;QACtE,0EAA0E;QAC1E,cAAc;QACd,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAC7D,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxH,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE;gBACnB,KAAK,EAAE,yBAAyB,IAAI,CAAC,KAAK,EAAE;gBAC5C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtB,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE;aACxD,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,0EAA0E;YAC1E,0EAA0E;YAC1E,yEAAyE;YACzE,2EAA2E;YAC3E,0EAA0E;YAC1E,kCAAkC;YAClC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC;YACnC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpH,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;gBACjB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,mBAAmB,KAAK,gBAAgB,CAAC,CAAC,CAAC,eAAe;gBACzE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;aACnD,CAAC,CAAC;QACL,CAAC;QAED,+EAA+E;QAC/E,+EAA+E;QAC/E,6EAA6E;QAC7E,oDAAoD;QACpD,KAAK,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAEpD,oEAAoE;QACpE,gDAAgD;QAChD,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,SAAS,GAAG,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtC,KAAK,MAAM,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBACtC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,sBAAsB,IAAI,CAAC,KAAK,KAAK,EAAE,OAAO,CAAC,CAAC,OAAO,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzG,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE;oBACrB,KAAK,EAAE,WAAW,CAAC,CAAC,IAAI,EAAE;oBAC1B,iEAAiE;oBACjE,0DAA0D;oBAC1D,IAAI,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,MAAM,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,EAAE;oBAC9G,SAAS,EAAE,EAAE;oBACb,uEAAuE;oBACvE,kEAAkE;oBAClE,uEAAuE;oBACvE,uEAAuE;oBACvE,8DAA8D;oBAC9D,GAAG,EAAE,YAAY,UAAU,IAAI,CAAC,CAAC,OAAO,EAAE;oBAC1C,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE;iBAC7F,CAAC,CAAC;YACL,CAAC;YACD,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,2BAA2B;QACtF,CAAC;QAED,qFAAqF;QACrF,4FAA4F;QAC5F,+EAA+E;QAC/E,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO;QACjC,KAAK,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YAC1C,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjC,IAAI,CAAC,IAAI;gBAAE,OAAO;YAClB,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,MAAM;gBAAE,OAAO;YAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YAClE,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,OAAO;YACzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7D,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE;gBAClB,KAAK,EAAE,YAAY,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,KAAK,EAAE;gBAChF,IAAI,EAAE,KAAK,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1C,SAAS,EAAE,EAAE;gBACb,GAAG,EAAE,SAAS,EAAE,EAAE;gBAClB,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE;aAC5C,CAAC,CAAC;QACL,CAAC,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,2EAA2E;IAC3E,2EAA2E;IAC3E,0EAA0E;IAC1E,6EAA6E;IAC7E,qEAAqE;IACrE,EAAE;IACF,0EAA0E;IAC1E,wEAAwE;IACxE,0EAA0E;IAC1E,iEAAiE;IACjE,MAAM,YAAY,GAAG,CAAC,EAAU,EAAE,IAAiB,EAAkC,EAAE;QACrF,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACtB,MAAM,OAAO,GAAG,gBAAgB,CAAC;YAC/B,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS;YAC7B,MAAM,EAAE,GAAG,CAAC,0BAA0B,CAAC,KAAK,GAAG;YAC/C,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM;YACrB,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa;YACnC,YAAY,EAAE,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC;SAC/E,CAAC,CAAC;QACH,IAAI,OAAO;YAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;QAClD,sEAAsE;QACtE,2EAA2E;QAC3E,yEAAyE;QACzE,8CAA8C;QAC9C,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QACjE,IAAI,MAAM;YAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;QAChD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,oDAAoD,EAAE,CAAC;QACvH,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACjC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,6CAA6C,EAAE,CAAC;IAC5E,CAAC,CAAC;IACF,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,EAAU,EAAE,IAAiB,EAAE,EAAE;QACjE,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACtB,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,0BAA0B,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC;QACrG,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,kEAAkE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,yBAAyB,EAAE,MAAM,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9G,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE;YAClB,KAAK,EAAE,wBAAwB,IAAI,CAAC,KAAK,EAAE;YAC3C,IAAI,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,qBAAqB,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,IAAI,EAAE;YAC1F,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,kBAAkB,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE;SACpF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,EAAU,EAAE,IAAiB,EAAE,EAAE;QAChE,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACtB,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,OAAO;QACtB,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,yBAAyB,EAAE,MAAM,GAAG,CAAC,GAAG,wBAAwB,CAAC,CAAC;QACvF,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE;YAClB,KAAK,EAAE,oBAAoB,IAAI,CAAC,KAAK,cAAc;YACnD,IAAI,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,qBAAqB,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;YACnF,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,kBAAkB,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE;SACpF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,wEAAwE;IACxE,iFAAiF;IACjF,MAAM,UAAU,GAAG,gBAAgB,CAAC;QAClC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACxC,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,KAAK;KAC9D,CAAC,CAAC;IACH,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAiB,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9E,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,6EAA6E;IAC7E,+DAA+D;IAC/D,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAiB,EAAE,EAAE,GAAG,IAAI,IAAI,CAAC,MAAM;QAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAChG,wEAAwE;IACxE,8EAA8E;IAC9E,4EAA4E;IAC5E,6EAA6E;IAC7E,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,SAAS,GAAG,sBAAsB,CAAC;YACvC,YAAY,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC;YAC/E,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC;SAC/C,CAAC,CAAC;QACH,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC;IAC1G,CAAC;IACD,+EAA+E;IAC/E,gEAAgE;IAChE,yEAAyE;IACzE,wBAAwB;IACxB,iBAAiB,CAAC,GAAG,EAAE;QACrB,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;QACvD,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACtB,KAAK,qBAAqB,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,KAAK;YAAE,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvH,CAAC,CAAC,CAAC;IACH,iGAAiG;IACjG,OAAO;QACL,OAAO,EAAE,CAAC,EAAa,EAAW,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,cAAc,EAAE,oBAAoB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;KAChI,CAAC;AACJ,CAAC;AAED,wEAAwE;AACxE,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAQnC;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,gBAAgB,CAAC,CAAiB;IAChD,IAAI,CAAC,CAAC,CAAC,SAAS;QAAE,OAAO,uDAAuD,CAAC;IACjF,IAAI,CAAC,CAAC,MAAM;QAAE,OAAO,gEAAgE,OAAO,CAAC,0BAA0B,CAAC,MAAM,CAAC;IAC/H,IAAI,CAAC,CAAC,CAAC,OAAO;QAAE,OAAO,8CAA8C,CAAC;IACtE,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,aAAa;QAAE,OAAO,oEAAoE,CAAC;IAC7G,IAAI,CAAC,CAAC,YAAY;QAAE,OAAO,sGAAsG,CAAC;IAClI,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,qGAAqG,CAAC;IAC/H,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1E,OAAO,8EAA8E,CAAC;IACxF,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAAE,OAAO,yGAAyG,CAAC;IACzI,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,31 @@
1
+ import type { SourceSession } from "@waterplane/shared";
2
+ import type { Session, SessionCore } from "./core.js";
3
+ /**
4
+ * The `SourceSession` `agents.list()` is handed — the SAME one every other slot gets (review R7):
5
+ * the live channel's own when one is attached (`sidechannel.ts`'s `sourceSession`), else built the
6
+ * same way, `cwd` REALPATHED (`/var` -> `/private/var`), so a plugin keying its agent list by cwd sees
7
+ * one string on every call. `backendSessionId` absent rather than `undefined`. Exported for the test.
8
+ */
9
+ export declare function agentsSourceSession(s: Pick<Session, "spawnedAt"> & {
10
+ info: Pick<Session["info"], "id" | "cwd" | "backendSessionId">;
11
+ }): SourceSession;
12
+ /**
13
+ * Publish which agents are running UNDER this session, and keep polling while
14
+ * any are.
15
+ *
16
+ * The turn flag answers for the MAIN loop only. A background agent survives
17
+ * its Stop hook by design — the CLI prints "Waiting for 2 background agents
18
+ * to finish" and hands the composer back — so a session with two reviewers in
19
+ * flight published `turnActive: false, idle: true` and the reader, which has
20
+ * no terminal to check that against, said "idle — nothing running" for six
21
+ * minutes of real work. `agents.ts` reads the fact off the CLI's own logs.
22
+ *
23
+ * Polled rather than evented because there is no event: the parent's log is
24
+ * not written while a background agent runs, and no hook fires for an agent.
25
+ * The poll is a `readdir` plus a `stat` per agent, armed ONLY while agents
26
+ * exist, so a desktop full of quiet sessions pays for nothing. Elapsed is
27
+ * counted on the phone off `startedAt`, so a broadcast happens on a CHANGE
28
+ * (an agent appearing, finishing, or moving to a different tool) and not once
29
+ * a tick per attached client.
30
+ */
31
+ export declare function checkAgents(core: SessionCore, s: Session): void;
@@ -0,0 +1,176 @@
1
+ /**
2
+ * What runs UNDER a session: the agents and background shells `checkAgents`
3
+ * publishes and keeps polling (`agents.ts`, `shells.ts`). Cut out of `turn.ts`
4
+ * by subject; stateless like it — every fact lives on the `Session`.
5
+ */
6
+ import { realpathSync } from "node:fs";
7
+ import { shellBucket } from "@waterplane/shared";
8
+ import { agentsChanged, readAgents, readCliRecord, readRunningAgents } from "../agents.js";
9
+ import { derive } from "../backends/derive.js";
10
+ import { liveSourceFor } from "../livesources.js";
11
+ import { readPsTableAsync, readShellList, shellsEnabled } from "../shells.js";
12
+ import { AGENT_POLL_MS, tmuxName } from "./knobs.js";
13
+ /**
14
+ * The `SourceSession` `agents.list()` is handed — the SAME one every other slot gets (review R7):
15
+ * the live channel's own when one is attached (`sidechannel.ts`'s `sourceSession`), else built the
16
+ * same way, `cwd` REALPATHED (`/var` -> `/private/var`), so a plugin keying its agent list by cwd sees
17
+ * one string on every call. `backendSessionId` absent rather than `undefined`. Exported for the test.
18
+ */
19
+ export function agentsSourceSession(s) {
20
+ const live = liveSourceFor(s.info.id)?.session;
21
+ if (live)
22
+ return live;
23
+ let cwd = s.info.cwd;
24
+ try {
25
+ cwd = realpathSync(cwd);
26
+ }
27
+ catch { /* the record's own path */ }
28
+ return { id: s.info.id, cwd, spawnedAt: s.spawnedAt, ...(s.info.backendSessionId ? { backendSessionId: s.info.backendSessionId } : {}) };
29
+ }
30
+ /**
31
+ * Publish which agents are running UNDER this session, and keep polling while
32
+ * any are.
33
+ *
34
+ * The turn flag answers for the MAIN loop only. A background agent survives
35
+ * its Stop hook by design — the CLI prints "Waiting for 2 background agents
36
+ * to finish" and hands the composer back — so a session with two reviewers in
37
+ * flight published `turnActive: false, idle: true` and the reader, which has
38
+ * no terminal to check that against, said "idle — nothing running" for six
39
+ * minutes of real work. `agents.ts` reads the fact off the CLI's own logs.
40
+ *
41
+ * Polled rather than evented because there is no event: the parent's log is
42
+ * not written while a background agent runs, and no hook fires for an agent.
43
+ * The poll is a `readdir` plus a `stat` per agent, armed ONLY while agents
44
+ * exist, so a desktop full of quiet sessions pays for nothing. Elapsed is
45
+ * counted on the phone off `startedAt`, so a broadcast happens on a CHANGE
46
+ * (an agent appearing, finishing, or moving to a different tool) and not once
47
+ * a tick per attached client.
48
+ */
49
+ export function checkAgents(core, s) {
50
+ if (s.agentTimer) {
51
+ clearTimeout(s.agentTimer);
52
+ s.agentTimer = null;
53
+ }
54
+ // Any call supersedes a still-pending `ps` read from an earlier one: that one
55
+ // must not publish an older picture over this one, nor arm a second timer.
56
+ const gen = (agentGen.get(s) ?? 0) + 1;
57
+ agentGen.set(s, gen);
58
+ if (!s.info.running) {
59
+ if (s.info.agents || s.info.shells || s.info.shellList) {
60
+ s.info.agents = undefined;
61
+ s.info.shells = undefined;
62
+ s.info.shellList = undefined;
63
+ s.shellsFp = undefined;
64
+ core.emit("updated", s.info);
65
+ }
66
+ return;
67
+ }
68
+ // What is running under a session is read off the CLI's OWN logs
69
+ // (`subagents/agent-*.jsonl`). A backend that writes none has no such file
70
+ // to read, so the list stays ABSENT — which is what "this app cannot tell
71
+ // you" looks like, as against an empty list, which would claim nothing is
72
+ // running.
73
+ // claude keeps its own reader and its own error rule (a throw reads as "none running");
74
+ // another backend asks its `agents` providers, and no answer keeps the list ABSENT.
75
+ let rows = [];
76
+ if (derive(s.backend).keepsClaudeLog) {
77
+ try {
78
+ rows = readRunningAgents(s.info.cwd, s.info.claudeSessionId);
79
+ }
80
+ catch {
81
+ rows = [];
82
+ }
83
+ }
84
+ else {
85
+ let read = null;
86
+ try {
87
+ read = readAgents(s.backend, agentsSourceSession(s));
88
+ }
89
+ catch {
90
+ read = null;
91
+ }
92
+ if (read === null)
93
+ return;
94
+ rows = read;
95
+ }
96
+ // Background SHELLS are the same fact by another route (a `run_in_background`
97
+ // Bash or a Monitor outlives its turn too), and no log records them — the
98
+ // CLI's own session record does (`agents.ts`'s `readCliRecord`).
99
+ let record = null;
100
+ try {
101
+ record = readCliRecord(s.info.id, tmuxName(s.info.id), s.info.claudeSessionId);
102
+ }
103
+ catch {
104
+ record = null;
105
+ }
106
+ const cli = record?.status ?? null;
107
+ const shells = cli === "shell" ? true : undefined;
108
+ // The RICH list, read only while the CLI's own record says there is
109
+ // something under it worth asking about — a `busy` main loop still gets
110
+ // asked, for the same edge `shells` itself is asked through: the Stop hook
111
+ // can land before the record catches up to `shell`.
112
+ if (record && (cli === "shell" || cli === "busy") && shellsEnabled()) {
113
+ // The process table is read ASYNC: this runs per shell/busy session every
114
+ // `AGENT_POLL_MS`, on the one loop that pumps every PTY, and the blocking
115
+ // `ps` it replaced cost ~50 ms a time. The rest of the tick is unchanged
116
+ // and picks up when the table is in (`publishAgents`).
117
+ const pid = record.pid;
118
+ void readPsTableAsync()
119
+ .then((psRows) => readShellList(pid, s.info.cwd, s.info.claudeSessionId, cli, Date.now(), psRows))
120
+ .catch(() => undefined)
121
+ .then((shellList) => {
122
+ if (agentGen.get(s) !== gen)
123
+ return; // a newer tick owns the result and the timer
124
+ if (!s.info.running) {
125
+ checkAgents(core, s);
126
+ return;
127
+ } // ended meanwhile: the early branch retires the fields
128
+ publishAgents(core, s, rows, shells, cli, shellList);
129
+ });
130
+ return;
131
+ }
132
+ publishAgents(core, s, rows, shells, cli, undefined);
133
+ }
134
+ /** Per-session generation of the latest `checkAgents` call — see there. */
135
+ const agentGen = new WeakMap();
136
+ /** The second half of `checkAgents`: compare, broadcast on a change, re-arm. */
137
+ function publishAgents(core, s, rows, shells, cli, shellList) {
138
+ const shellsFp = shellsFingerprint(shellList, Date.now());
139
+ const changed = agentsChanged(s.info.agents, rows) || shells !== s.info.shells || shellsFp !== s.shellsFp;
140
+ if (changed) {
141
+ s.info.agents = rows.length ? rows : undefined;
142
+ s.info.shells = shells;
143
+ s.info.shellList = shellList;
144
+ s.shellsFp = shellsFp;
145
+ core.emit("updated", s.info);
146
+ }
147
+ // Keep polling while something runs underneath — and while the CLI still
148
+ // says `busy` after our turn flag dropped: the Stop hook can land before the
149
+ // CLI rewrites its record to `shell`, and reading once at that edge would
150
+ // miss every shell the turn left behind. And while a TURN runs: a turn that
151
+ // starts with nothing under it and then fans out to N agents was read once at
152
+ // its start and never again, so the phone's parallel-agent count missed every
153
+ // agent launched mid-turn. The poll is a readdir per busy session plus the
154
+ // shared, memoised `ps`.
155
+ if (!rows.length && !shells && !(shellList && shellList.length) && cli !== "busy" && !s.turnActive)
156
+ return;
157
+ s.agentTimer = setTimeout(() => { s.agentTimer = null; checkAgents(core, s); }, AGENT_POLL_MS);
158
+ s.agentTimer.unref?.();
159
+ }
160
+ /**
161
+ * `pid:bucket:workers:fg` per row, joined — the STATE a person would see,
162
+ * never a raw timestamp. Keying on `cpuMovedAt` directly (the old key) meant
163
+ * a genuinely WORKING shell rebroadcast on nearly every poll: its CPU is, by
164
+ * definition, moving, so `cpuMovedAt` ticks to `now` almost every time this
165
+ * function is asked, and "only broadcast on a change a person would see" was
166
+ * defeated for the one bucket that polls most often. `shellBucket` only
167
+ * changes when the shell actually crosses working/waiting/quiet/unknown —
168
+ * that IS a change worth a broadcast — and `workers`/`foreground` cover the
169
+ * two other facts a person's view of the row depends on.
170
+ */
171
+ function shellsFingerprint(list, now) {
172
+ if (!list)
173
+ return "";
174
+ return list.map((sh) => `${sh.pid}:${shellBucket(sh, now)}:${sh.workers}:${sh.foreground ? "fg" : "bg"}`).join("|");
175
+ }
176
+ //# sourceMappingURL=agentpoll.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agentpoll.js","sourceRoot":"","sources":["../../src/sessions/agentpoll.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * The retry of a turn the CLI GAVE UP on a transient API error (R-connection-024).
3
+ *
4
+ * The CLI retries a failed request on its own, but during a DNS or Wi-Fi outage
5
+ * that budget runs out and the turn ENDS on "API Error: Can't reach the API
6
+ * server (ENOTFOUND)" — and someone has to type "try again" by hand. Here the
7
+ * host does, on a widening ladder (`netlog.ts`'s `netRetryDelay`), the way the
8
+ * usage-limit wall types its `continue` (`wall.ts`'s `doLimitContinue`): text and
9
+ * Return as two writes through the facade's `write`, a history row and a
10
+ * `sent.json` row. Never `deliver.ts`, never a queue bypass of the phone's own.
11
+ *
12
+ * Read off the LOG only (`readNetLog`), on the ONE end-of-turn path
13
+ * (`turn.ts`'s `settleStop`), and only where the give-up is FRESH — stamped
14
+ * inside the turn that just ended. Called off by anything that says the person
15
+ * or the account has taken over: a keystroke or prompt (`typed`), a turn
16
+ * starting that is not ours (`turnStarted`), a wall (`limit.blocked` outranks),
17
+ * the halt latch, the session ending (`clear`). A session that is busy — a box
18
+ * up, a dialog, output still arriving — is PARKED, never typed into. Past the
19
+ * cap it stops and says so (`state: "gaveup"`); there is no loop.
20
+ *
21
+ * State is memory only: a host restart forgets a pending retry, which is the
22
+ * safe direction (it types nothing).
23
+ *
24
+ * What the turn end MEANT travels on `turnEnded` (`TurnEndNet`): deferred work
25
+ * waiting on the turn (`intents/watch.ts`) must not complete off a turn that
26
+ * did not happen. `retrying` holds it, `gaveup` fails it, and `checking` (our
27
+ * `continue`'s turn ended before its log row landed) is answered once by
28
+ * `netTurnSettled` after the re-read. A person's keystroke cancels the retry
29
+ * and the next real turn end completes the work as ever.
30
+ */
31
+ import { type TurnEndNet } from "@waterplane/shared";
32
+ import type { Session, SessionCore } from "./core.js";
33
+ export declare class NetRetrySlice {
34
+ private readonly core;
35
+ constructor(core: SessionCore);
36
+ /**
37
+ * The turn just ended (`settleStop`). `retrying` ⇒ a retry is scheduled, and
38
+ * the turn-finished ping is held: the turn is not done, it is being tried
39
+ * again. Null ⇒ an ordinary turn end.
40
+ */
41
+ turnEnded(s: Session): TurnEndNet | null;
42
+ /** A turn started. Ours (just typed) keeps the ladder; anyone else's ends it. */
43
+ turnStarted(s: Session): void;
44
+ /** Someone typed into the session — our own `continue` excepted. */
45
+ typed(s: Session): void;
46
+ /** The phone's Cancel (`session.netRetryCancel`). */
47
+ cancelById(id: string): void;
48
+ /** The session is going (exit, detach, kill, remove): drop the timer. */
49
+ clear(s: Session): void;
50
+ private cancel;
51
+ private set;
52
+ /** Arm the next rung (`retrying`), or stop at the cap (`gaveup`); null ⇒ a wall outranks. */
53
+ private schedule;
54
+ private arm;
55
+ private recheckLater;
56
+ private park;
57
+ /** The rung is due: type `continue`, unless something says not to. */
58
+ private fire;
59
+ }