@maudecode/talaria-web 1.13.0 → 1.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (268) hide show
  1. package/_release.json +4 -4
  2. package/dist/api/automation-router.d.ts +102 -0
  3. package/dist/api/automation-router.js +2 -0
  4. package/dist/api/automation-router.js.map +1 -1
  5. package/dist/api/chat-router.d.ts +589 -52
  6. package/dist/api/chat-router.js +111 -121
  7. package/dist/api/chat-router.js.map +1 -1
  8. package/dist/api/router.d.ts +2 -1
  9. package/dist/api/router.js +3 -1
  10. package/dist/api/router.js.map +1 -1
  11. package/dist/api/sessions-router.d.ts +1918 -299
  12. package/dist/api/sessions-router.js +39 -24
  13. package/dist/api/sessions-router.js.map +1 -1
  14. package/dist/api/settings-router.d.ts +45 -8
  15. package/dist/api/settings-router.js +14 -10
  16. package/dist/api/settings-router.js.map +1 -1
  17. package/dist/api/sse-routes.js +1 -1
  18. package/dist/api/sse-routes.js.map +1 -1
  19. package/dist/app.d.ts +2728 -416
  20. package/dist/config/agent-config.js +20 -15
  21. package/dist/config/agent-config.js.map +1 -1
  22. package/dist/http/context.d.ts +4 -2
  23. package/dist/http/context.js.map +1 -1
  24. package/dist/onboarding.d.ts +1 -1
  25. package/dist/onboarding.js +2 -1
  26. package/dist/onboarding.js.map +1 -1
  27. package/dist/providers/catalog.d.ts +11 -0
  28. package/dist/providers/catalog.js +32 -1
  29. package/dist/providers/catalog.js.map +1 -1
  30. package/dist/runtime.js +56 -17
  31. package/dist/runtime.js.map +1 -1
  32. package/dist/server.js +3 -0
  33. package/dist/server.js.map +1 -1
  34. package/dist/sessions/background-tasks.d.ts +137 -0
  35. package/dist/sessions/background-tasks.js +349 -0
  36. package/dist/sessions/background-tasks.js.map +1 -0
  37. package/dist/sessions/background-updates.d.ts +56 -0
  38. package/dist/sessions/background-updates.js +152 -0
  39. package/dist/sessions/background-updates.js.map +1 -0
  40. package/dist/sessions/cli-sessions.d.ts +6 -0
  41. package/dist/sessions/cli-sessions.js +20 -7
  42. package/dist/sessions/cli-sessions.js.map +1 -1
  43. package/dist/sessions/completions.d.ts +17 -1
  44. package/dist/sessions/completions.js +83 -12
  45. package/dist/sessions/completions.js.map +1 -1
  46. package/dist/sessions/compress.d.ts +33 -0
  47. package/dist/sessions/compress.js +66 -0
  48. package/dist/sessions/compress.js.map +1 -0
  49. package/dist/sessions/journal.d.ts +27 -12
  50. package/dist/sessions/journal.js +115 -40
  51. package/dist/sessions/journal.js.map +1 -1
  52. package/dist/sessions/list.d.ts +14 -0
  53. package/dist/sessions/list.js +89 -16
  54. package/dist/sessions/list.js.map +1 -1
  55. package/dist/sessions/merge.d.ts +19 -1
  56. package/dist/sessions/merge.js +75 -7
  57. package/dist/sessions/merge.js.map +1 -1
  58. package/dist/sessions/relay.d.ts +17 -1
  59. package/dist/sessions/relay.js +74 -13
  60. package/dist/sessions/relay.js.map +1 -1
  61. package/dist/sessions/service.d.ts +61 -3
  62. package/dist/sessions/service.js +244 -16
  63. package/dist/sessions/service.js.map +1 -1
  64. package/dist/sessions/session.d.ts +16 -0
  65. package/dist/sessions/session.js +23 -2
  66. package/dist/sessions/session.js.map +1 -1
  67. package/dist/sessions/source-kind.d.ts +22 -0
  68. package/dist/sessions/source-kind.js +54 -0
  69. package/dist/sessions/source-kind.js.map +1 -0
  70. package/dist/sessions/state-db.d.ts +10 -1
  71. package/dist/sessions/state-db.js +48 -17
  72. package/dist/sessions/state-db.js.map +1 -1
  73. package/dist/sessions/store.d.ts +2 -0
  74. package/dist/sessions/store.js +23 -4
  75. package/dist/sessions/store.js.map +1 -1
  76. package/dist/sessions/streams.d.ts +3 -0
  77. package/dist/sessions/streams.js +0 -5
  78. package/dist/sessions/streams.js.map +1 -1
  79. package/dist/sessions/titles.d.ts +4 -0
  80. package/dist/sessions/titles.js +16 -0
  81. package/dist/sessions/titles.js.map +1 -1
  82. package/dist/sessions/turn-context.d.ts +1 -0
  83. package/dist/sessions/turn-context.js +3 -0
  84. package/dist/sessions/turn-context.js.map +1 -1
  85. package/dist/sessions/turn.d.ts +66 -6
  86. package/dist/sessions/turn.js +306 -63
  87. package/dist/sessions/turn.js.map +1 -1
  88. package/dist/settings.d.ts +2 -0
  89. package/dist/settings.js +6 -0
  90. package/dist/settings.js.map +1 -1
  91. package/dist/tools/crons.d.ts +34 -3
  92. package/dist/tools/crons.js +271 -31
  93. package/dist/tools/crons.js.map +1 -1
  94. package/dist/tools/hygiene.d.ts +11 -3
  95. package/dist/tools/hygiene.js +32 -14
  96. package/dist/tools/hygiene.js.map +1 -1
  97. package/package.json +2 -2
  98. package/sidecar/talaria_sidecar/__init__.py +1 -1
  99. package/sidecar/talaria_sidecar/methods/chat.py +233 -6
  100. package/sidecar/talaria_sidecar/methods/cron.py +22 -14
  101. package/sidecar/talaria_sidecar/methods/process.py +318 -0
  102. package/static/dist/FILES.txt +120 -119
  103. package/static/dist/assets/AppShell-orat1s43.js +1 -0
  104. package/static/dist/assets/ChatPage-ojhka3hy.js +22 -0
  105. package/static/dist/assets/HubRoute-gxgw1t33.js +2 -0
  106. package/static/dist/assets/{Markdown-bx4n7qs4.js → Markdown-dy8t4dy7.js} +7 -7
  107. package/static/dist/assets/{RightPanel-ds4majj3.js → RightPanel-c66ani1s.js} +1 -1
  108. package/static/dist/assets/Select-fswf66up.js +1 -0
  109. package/static/dist/assets/SessionListPanel-goh5mtt8.js +1 -0
  110. package/static/dist/assets/{SettingsLayout-oigbg9rl.js → SettingsLayout-n5d4wq4m.js} +1 -1
  111. package/static/dist/assets/States-kxyu50at.js +1 -0
  112. package/static/dist/assets/Toaster-6zmbcqgg.js +1 -0
  113. package/static/dist/assets/_app-fowyruiu.js +1 -0
  114. package/static/dist/assets/_app.ext._extensionId-nvjyrwhy.js +1 -0
  115. package/static/dist/assets/_app.index-c9zv4y7w.js +1 -0
  116. package/static/dist/assets/_app.insights-jf12nofo.js +1 -0
  117. package/static/dist/assets/_app.kanban-lri5a4yu.js +1 -0
  118. package/static/dist/assets/_app.logs-md1p0zqo.js +1 -0
  119. package/static/dist/assets/_app.memory-bzvf2e28.js +1 -0
  120. package/static/dist/assets/_app.profiles-jpg7zmbn.js +1 -0
  121. package/static/dist/assets/{_app.session._sessionId-ciix6itb.js → _app.session._sessionId-gyoh5ylx.js} +1 -1
  122. package/static/dist/assets/_app.settings-mpuwlx4j.js +1 -0
  123. package/static/dist/assets/_app.settings._section-knz8rwoj.js +1 -0
  124. package/static/dist/assets/_app.skills-fwu1dkir.js +1 -0
  125. package/static/dist/assets/_app.tasks-h9gphtl3.js +2 -0
  126. package/static/dist/assets/_app.todos-hd1dnvrh.js +1 -0
  127. package/static/dist/assets/_app.workspaces-l8toyn5f.js +1 -0
  128. package/static/dist/assets/{abnfDiagram-VCTEODGH-krt0yaru.js → abnfDiagram-VCTEODGH-cjqletra.js} +1 -1
  129. package/static/dist/assets/architecture-7GRP2DOG-cavnusaw.js +1 -0
  130. package/static/dist/assets/{architectureDiagram-5GKGNRK7-i54t9ywl.js → architectureDiagram-5GKGNRK7-k5a7v36n.js} +1 -1
  131. package/static/dist/assets/back-e4m6nsnm.js +1 -0
  132. package/static/dist/assets/{blockDiagram-I7D4REHJ-fevbz4mz.js → blockDiagram-I7D4REHJ-b195z021.js} +1 -1
  133. package/static/dist/assets/{c4Diagram-7LVT6UL2-np8eclmc.js → c4Diagram-7LVT6UL2-olu212k1.js} +1 -1
  134. package/static/dist/assets/channel-gozy3dp3.js +1 -0
  135. package/static/dist/assets/{chunk-4HAMMTFA-owoi036m.js → chunk-4HAMMTFA-b8o1nufs.js} +1 -1
  136. package/static/dist/assets/{chunk-75Z2AOVW-md44zf1n.js → chunk-75Z2AOVW-l1seddto.js} +1 -1
  137. package/static/dist/assets/{chunk-DU6HZSFF-ka3rw8d6.js → chunk-DU6HZSFF-lo5zg15v.js} +3 -3
  138. package/static/dist/assets/{chunk-F27PBJKO-iasnjsky.js → chunk-F27PBJKO-dsdzrp16.js} +1 -1
  139. package/static/dist/assets/{chunk-GMAD6QVW-ex1up6tz.js → chunk-GMAD6QVW-f3fxqq8b.js} +1 -1
  140. package/static/dist/assets/{chunk-GVQU2GXP-d4kmmg9p.js → chunk-GVQU2GXP-h8egxtf6.js} +1 -1
  141. package/static/dist/assets/{chunk-IMKFNOWR-mwy42t85.js → chunk-IMKFNOWR-iolwd8s0.js} +1 -1
  142. package/static/dist/assets/{chunk-L3NEJ4N5-fv7ry213.js → chunk-L3NEJ4N5-b88bbtwi.js} +1 -1
  143. package/static/dist/assets/{chunk-OSK3NFVY-jg9ir8ac.js → chunk-OSK3NFVY-e3e7nr6s.js} +1 -1
  144. package/static/dist/assets/{chunk-P2QGCYS3-pe9ms3ua.js → chunk-P2QGCYS3-mdc46rt1.js} +1 -1
  145. package/static/dist/assets/{chunk-POPQ4Y6H-dimsjrn1.js → chunk-POPQ4Y6H-kqlllrrm.js} +1 -1
  146. package/static/dist/assets/{chunk-PWAF6VOD-m4hv98dy.js → chunk-PWAF6VOD-he585k2x.js} +1 -1
  147. package/static/dist/assets/{chunk-SHT3W25Y-gkjgl6qe.js → chunk-SHT3W25Y-gh94y9a4.js} +1 -1
  148. package/static/dist/assets/{chunk-SVP7TREG-bc8qss5l.js → chunk-SVP7TREG-euxp9y7e.js} +1 -1
  149. package/static/dist/assets/{chunk-TICWLB2K-k9wzw38w.js → chunk-TICWLB2K-c8cxes1q.js} +1 -1
  150. package/static/dist/assets/classDiagram-ZZMXUADV-n0vs2f2q.js +1 -0
  151. package/static/dist/assets/classDiagram-v2-VYDZK3BY-n0vs2f2q.js +1 -0
  152. package/static/dist/assets/{copied-d5joolw7.js → copied-kq0u3ht7.js} +1 -1
  153. package/static/dist/assets/{cynefin-OW5HDTMX-hueklikk.js → cynefin-OW5HDTMX-lxd44ux4.js} +1 -1
  154. package/static/dist/assets/{cynefinDiagram-5FMLGOSQ-e83o1wr1.js → cynefinDiagram-5FMLGOSQ-njpiwat8.js} +1 -1
  155. package/static/dist/assets/{dagre-GXQ25YYZ-ir1tj2ar.js → dagre-GXQ25YYZ-nvgy6yju.js} +1 -1
  156. package/static/dist/assets/{diagram-S7CK7UJ4-o5218p2q.js → diagram-S7CK7UJ4-g98nyv72.js} +1 -1
  157. package/static/dist/assets/{diagram-UQ7AKVKN-ciad4o1i.js → diagram-UQ7AKVKN-ovgm6lvv.js} +1 -1
  158. package/static/dist/assets/{diagram-VSXAHHWV-oharqjbt.js → diagram-VSXAHHWV-pb2bn2e4.js} +1 -1
  159. package/static/dist/assets/{diagram-VX7I27RA-wkwy62iv.js → diagram-VX7I27RA-6j4mvfqo.js} +1 -1
  160. package/static/dist/assets/{diagram-Z3DM3KII-bl252i7r.js → diagram-Z3DM3KII-dqmb982r.js} +1 -1
  161. package/static/dist/assets/{ebnfDiagram-PWID7BFC-nm0rcly7.js → ebnfDiagram-PWID7BFC-ozbpzb6d.js} +1 -1
  162. package/static/dist/assets/endpoints-k8agnro8.js +9 -0
  163. package/static/dist/assets/{erDiagram-RLTQ6QDP-m1w0vta2.js → erDiagram-RLTQ6QDP-hl7m8vua.js} +1 -1
  164. package/static/dist/assets/eventmodeling-NTZA5JFV-j1y2ekec.js +1 -0
  165. package/static/dist/assets/flowDiagram-HODETNUW-g2cvcbm5.js +1 -0
  166. package/static/dist/assets/{ganttDiagram-EL5Y4UJY-czxo6iew.js → ganttDiagram-EL5Y4UJY-ompixqmh.js} +1 -1
  167. package/static/dist/assets/{gitGraph-4MIJSDKK-ip9j1rph.js → gitGraph-4MIJSDKK-b6vxwp9q.js} +1 -1
  168. package/static/dist/assets/{gitGraphDiagram-WWUBYQGX-kalxdole.js → gitGraphDiagram-WWUBYQGX-k98f57on.js} +1 -1
  169. package/static/dist/assets/{highlighted-body-KPVGNVTW-lgsj6fsk.js → highlighted-body-KPVGNVTW-cd3ff6ge.js} +1 -1
  170. package/static/dist/assets/index-nfy0ezs6.css +2 -0
  171. package/static/dist/assets/index-nqed3oum.js +11 -0
  172. package/static/dist/assets/{info-A6RAGUB7-fv4fbc5m.js → info-A6RAGUB7-hjcwjami.js} +1 -1
  173. package/static/dist/assets/{infoDiagram-27XIBGKW-kinx5jsl.js → infoDiagram-27XIBGKW-fm06rj36.js} +1 -1
  174. package/static/dist/assets/{ishikawaDiagram-5VMMS53U-kozvlqdv.js → ishikawaDiagram-5VMMS53U-bxak4mwu.js} +1 -1
  175. package/static/dist/assets/{journeyDiagram-3NMN7TZE-lgpouxoe.js → journeyDiagram-3NMN7TZE-khmihclr.js} +1 -1
  176. package/static/dist/assets/{kanban-definition-UXKFOSKX-b320wo7b.js → kanban-definition-UXKFOSKX-h1r32wdx.js} +1 -1
  177. package/static/dist/assets/{lazyRouteComponent-hy8doeye.js → lazyRouteComponent-b2eg0fws.js} +1 -1
  178. package/static/dist/assets/{line-gxfwyhjq.js → line-friyjof3.js} +1 -1
  179. package/static/dist/assets/link-m90ahx3n.js +1 -0
  180. package/static/dist/assets/login-bw7m2fzo.js +1 -0
  181. package/static/dist/assets/mermaid-HWGCJPDP-njwcl62n.js +1 -0
  182. package/static/dist/assets/{mermaid-parser.core-loxeqsu3.js → mermaid-parser.core-f1gvpwrt.js} +3 -3
  183. package/static/dist/assets/{mindmap-definition-YA3MSWOX-edi534gc.js → mindmap-definition-YA3MSWOX-mt2oxwue.js} +1 -1
  184. package/static/dist/assets/onboarding-ret37j1e.js +1 -0
  185. package/static/dist/assets/{packet-AYTQ26CC-gmb3yy71.js → packet-AYTQ26CC-jik4ixlf.js} +1 -1
  186. package/static/dist/assets/{pegDiagram-XKGWAZYB-fxy5j8cx.js → pegDiagram-XKGWAZYB-erxlv6cc.js} +1 -1
  187. package/static/dist/assets/{pie-WAS4IAKB-do2pm4s6.js → pie-WAS4IAKB-mnkoldfl.js} +1 -1
  188. package/static/dist/assets/{pieDiagram-E7YTZNPT-mgjvb365.js → pieDiagram-E7YTZNPT-i7lwrada.js} +1 -1
  189. package/static/dist/assets/{quadrantDiagram-AXDQQJYC-dhok6m1j.js → quadrantDiagram-AXDQQJYC-fr8ejdoy.js} +1 -1
  190. package/static/dist/assets/{radar-RG4KPBEZ-n5giw3vb.js → radar-RG4KPBEZ-otarjte2.js} +1 -1
  191. package/static/dist/assets/{railroad-74A4TZTK-h6nfs9bj.js → railroad-74A4TZTK-lw362oto.js} +1 -1
  192. package/static/dist/assets/railroad-abnf-HS5TGJTU-m741owar.js +1 -0
  193. package/static/dist/assets/railroad-ebnf-LZEXJU2U-noa4fbia.js +1 -0
  194. package/static/dist/assets/railroad-peg-WCYAUIDC-o4bpw4nb.js +1 -0
  195. package/static/dist/assets/{railroadDiagram-O6MQD6OU-lfwg92r4.js → railroadDiagram-O6MQD6OU-esyn75pw.js} +1 -1
  196. package/static/dist/assets/{refresh-cw-bg6oc499.js → refresh-cw-k66keho6.js} +1 -1
  197. package/static/dist/assets/{requirementDiagram-BXWQKSXE-c5k5pg07.js → requirementDiagram-BXWQKSXE-cyhi5u29.js} +1 -1
  198. package/static/dist/assets/{sankeyDiagram-P5KCCOFB-o9auio4y.js → sankeyDiagram-P5KCCOFB-jljpbo0h.js} +1 -1
  199. package/static/dist/assets/{saved-j5wyhbik.js → saved-do49si3v.js} +1 -1
  200. package/static/dist/assets/{search-ipa17zlr.js → search-j5ki6a9o.js} +1 -1
  201. package/static/dist/assets/{sequenceDiagram-WJ2MYXX4-pfgodnmk.js → sequenceDiagram-WJ2MYXX4-fz0dhlu7.js} +1 -1
  202. package/static/dist/assets/{settings_section_extensions_title-fcfjf6l8.js → settings_section_extensions_title-b7lojn0o.js} +1 -1
  203. package/static/dist/assets/share._token-kg8w647b.js +2 -0
  204. package/static/dist/assets/{sliders-horizontal-bfrh4rch.js → sliders-horizontal-c4wya4dy.js} +1 -1
  205. package/static/dist/assets/{stateDiagram-D77RDMKH-m1y2cr3q.js → stateDiagram-D77RDMKH-kdnithdx.js} +1 -1
  206. package/static/dist/assets/stateDiagram-v2-MP3YSRHH-k2wg2645.js +1 -0
  207. package/static/dist/assets/{swimlanes-42K2YHIH-hzai6fwo.js → swimlanes-42K2YHIH-esd6gmz3.js} +1 -1
  208. package/static/dist/assets/swimlanesDiagram-VR7AAH4N-n5kvjtgr.js +8 -0
  209. package/static/dist/assets/tabBuild-bjmyvmn5.js +56 -0
  210. package/static/dist/assets/{timeline-definition-24CTP7MA-gwefy9gi.js → timeline-definition-24CTP7MA-g0qygccv.js} +1 -1
  211. package/static/dist/assets/todoStore-kjk5l0sy.js +1 -0
  212. package/static/dist/assets/{treeView-Q6P3EWNA-7q91p0dn.js → treeView-Q6P3EWNA-ndchzkuu.js} +1 -1
  213. package/static/dist/assets/{treemap-WGGIJYW6-occom39a.js → treemap-WGGIJYW6-hwjxj0zz.js} +1 -1
  214. package/static/dist/assets/{untitled-cgw2enra.js → untitled-mbr6tuhu.js} +1 -1
  215. package/static/dist/assets/useForm-ocxu460f.js +1 -0
  216. package/static/dist/assets/useLocale-fzy5jhg6.js +1 -0
  217. package/static/dist/assets/{useParams-gpbjxj8s.js → useParams-lo9u33d1.js} +1 -1
  218. package/static/dist/assets/{useSearch-bhdptos7.js → useSearch-lq1mr090.js} +1 -1
  219. package/static/dist/assets/{vennDiagram-4TSXK5OY-ew4bhldi.js → vennDiagram-4TSXK5OY-gubovd1r.js} +1 -1
  220. package/static/dist/assets/{wardley-WFR3VGLG-njdacy0u.js → wardley-WFR3VGLG-ir3om65j.js} +1 -1
  221. package/static/dist/assets/{wardleyDiagram-VM6X3IG4-mkvxx7u9.js → wardleyDiagram-VM6X3IG4-ce0or1ie.js} +1 -1
  222. package/static/dist/assets/{xychartDiagram-S5SC5T6Z-8uriotdw.js → xychartDiagram-S5SC5T6Z-dexylcjg.js} +1 -1
  223. package/static/dist/index.html +1 -1
  224. package/static/dist/sw.js +1 -1
  225. package/static/dist/assets/AppShell-irdqom6e.js +0 -1
  226. package/static/dist/assets/ChatPage-ldhqevjn.js +0 -20
  227. package/static/dist/assets/HubRoute-hq24vhj8.js +0 -2
  228. package/static/dist/assets/Select-gpqmt6x1.js +0 -1
  229. package/static/dist/assets/SessionListPanel-hkvipik4.js +0 -1
  230. package/static/dist/assets/States-fn4o2wdf.js +0 -1
  231. package/static/dist/assets/Toaster-cwnut53k.js +0 -1
  232. package/static/dist/assets/_app-h6ago6y6.js +0 -1
  233. package/static/dist/assets/_app.ext._extensionId-erqnfff5.js +0 -1
  234. package/static/dist/assets/_app.index-cq2fxmda.js +0 -1
  235. package/static/dist/assets/_app.insights-nzhld9gu.js +0 -1
  236. package/static/dist/assets/_app.kanban-m5uggety.js +0 -1
  237. package/static/dist/assets/_app.logs-d2kk9lza.js +0 -1
  238. package/static/dist/assets/_app.memory-gcmop1e7.js +0 -1
  239. package/static/dist/assets/_app.profiles-e9b2my7x.js +0 -1
  240. package/static/dist/assets/_app.settings-kcjum3c1.js +0 -1
  241. package/static/dist/assets/_app.settings._section-bi4jjex0.js +0 -1
  242. package/static/dist/assets/_app.skills-e4e61l23.js +0 -1
  243. package/static/dist/assets/_app.tasks-f1evdhbl.js +0 -2
  244. package/static/dist/assets/_app.todos-o7ijtk42.js +0 -1
  245. package/static/dist/assets/_app.workspaces-o18voh0w.js +0 -1
  246. package/static/dist/assets/architecture-7GRP2DOG-notdhmpv.js +0 -1
  247. package/static/dist/assets/channel-jpk1nas2.js +0 -1
  248. package/static/dist/assets/classDiagram-ZZMXUADV-hld301gc.js +0 -1
  249. package/static/dist/assets/classDiagram-v2-VYDZK3BY-hld301gc.js +0 -1
  250. package/static/dist/assets/endpoints-d8n28yf3.js +0 -64
  251. package/static/dist/assets/eventmodeling-NTZA5JFV-eaqs19mj.js +0 -1
  252. package/static/dist/assets/flowDiagram-HODETNUW-eli5764n.js +0 -1
  253. package/static/dist/assets/index-l08181vr.js +0 -11
  254. package/static/dist/assets/index-pdtcl20t.css +0 -2
  255. package/static/dist/assets/link-ib4prsn5.js +0 -1
  256. package/static/dist/assets/login-llplsuey.js +0 -1
  257. package/static/dist/assets/mermaid-HWGCJPDP-f3scrlds.js +0 -1
  258. package/static/dist/assets/onboarding-n1xhlgym.js +0 -1
  259. package/static/dist/assets/railroad-abnf-HS5TGJTU-d5gaaud9.js +0 -1
  260. package/static/dist/assets/railroad-ebnf-LZEXJU2U-ihudnbec.js +0 -1
  261. package/static/dist/assets/railroad-peg-WCYAUIDC-lgpvhel7.js +0 -1
  262. package/static/dist/assets/share._token-i339gqj4.js +0 -2
  263. package/static/dist/assets/stateDiagram-v2-MP3YSRHH-hehvfv55.js +0 -1
  264. package/static/dist/assets/swimlanesDiagram-VR7AAH4N-nfk9mtst.js +0 -8
  265. package/static/dist/assets/todoStore-fhvdsen0.js +0 -1
  266. package/static/dist/assets/useForm-jwbfla68.js +0 -1
  267. package/static/dist/assets/useLocale-gieo1fn7.js +0 -1
  268. package/static/dist/assets/useSelector-f2aak1ol.js +0 -1
@@ -1,18 +1,54 @@
1
+ /** Cron jobs across profiles through the sidecar `cron.*` namespace (Python `api/routes.py` cron section). */
2
+ import { join } from 'node:path';
1
3
  import { HttpFailure } from '../sessions/service.js';
2
4
  import { SidecarError } from '../sidecar/client.js';
5
+ import { latestCronSessionInfo } from '../sessions/state-db.js';
3
6
  import { str } from '../util.js';
4
7
  const JOB_ID_RE = /^[A-Za-z0-9_-][A-Za-z0-9_.-]{0,63}$/;
5
8
  const PASSTHROUGH_FIELDS = ['script', 'no_agent', 'context_from', 'reasoning_effort'];
6
- /** Python `_cron_job_for_api`. */
7
- export function jobForApi(job) {
9
+ /** Python `_cron_job_for_api`, plus the derived status every client renders (TAL-296). */
10
+ export function jobForApi(job, running = false) {
8
11
  const payload = { ...job };
9
12
  if (!('profile' in payload))
10
13
  payload.profile = null;
11
14
  payload.toast_notifications = payload.toast_notifications !== false;
12
15
  payload.monitor = str(payload.monitor_url) || str(payload.monitor_script) || '';
13
16
  payload.continuity = (Array.isArray(payload.context_from) ? payload.context_from : []).some((r) => str(r).trim().toLowerCase() === 'self');
17
+ const state = cronDerivedState(job);
18
+ payload.derived_state = state;
19
+ payload.needs_attention = state === 'needs_attention' || state === 'schedule_error';
20
+ payload.resumable = payload.needs_attention || state === 'paused' || state === 'off';
21
+ payload.running = running || job.running === true;
14
22
  return payload;
15
23
  }
24
+ /** `repeat.times == null` means "forever" in the store; a missing record is not unlimited. */
25
+ function hasUnlimitedRepeat(job) {
26
+ return !!job.repeat && typeof job.repeat === 'object' && job.repeat.times == null;
27
+ }
28
+ function isRecurring(job) {
29
+ const schedule = job.schedule;
30
+ if (typeof schedule === 'object' && schedule)
31
+ return schedule.kind === 'cron' || schedule.kind === 'interval';
32
+ // Legacy string schedules carry no kind; an unlimited repeat record marks the job recurring (a one-shot has times: 1).
33
+ return typeof schedule === 'string' && hasUnlimitedRepeat(job);
34
+ }
35
+ /** Older agents report `paused` / `status` / `next_run` instead of `state` / `last_status` / `next_run_at`; all stay supported. */
36
+ function cronDerivedState(job) {
37
+ const errored = job.state === 'error' || completionOutcome(job.last_status) === 'failed' || job.status === 'error';
38
+ const nextRun = job.next_run_at ?? (typeof job.next_run === 'number' || typeof job.next_run === 'string' ? job.next_run : null);
39
+ if (isRecurring(job) && hasUnlimitedRepeat(job) && job.enabled === false && job.state === 'completed' && !nextRun)
40
+ return 'needs_attention';
41
+ // A paused job keeps the last run's error and has no next run; that is not a schedule failure.
42
+ if (job.state === 'paused' || job.paused)
43
+ return 'paused';
44
+ if (isRecurring(job) && !nextRun && errored)
45
+ return 'schedule_error';
46
+ if (job.enabled === false)
47
+ return 'off';
48
+ if (errored)
49
+ return 'error';
50
+ return 'active';
51
+ }
16
52
  function monitorStorage(monitor) {
17
53
  const value = str(monitor).trim();
18
54
  if (!value)
@@ -53,6 +89,50 @@ export function jobFieldUpdates(body, currentContextFrom = null) {
53
89
  export function validJobId(id) {
54
90
  return JOB_ID_RE.test(id) && id !== '.' && id !== '..';
55
91
  }
92
+ const PY_FLOAT_RE = /^[+-]?(\d+\.?\d*|\.\d+)([eE][+-]?\d+)?$/;
93
+ /** Python `float(since)` with its ValueError mapped to 0: a malformed `since` means "from the epoch", never a 500. */
94
+ export function parseSince(raw) {
95
+ const t = (raw ?? '').trim();
96
+ const n = PY_FLOAT_RE.test(t) ? Number(t) : 0;
97
+ return Number.isFinite(n) ? n : 0;
98
+ }
99
+ const ISO_RE = /^(\d{4})-(\d{2})-(\d{2})(?:[T ](\d{2})(?::(\d{2})(?::(\d{2})(?:\.(\d{1,6}))?)?)?)?(Z|[+-]\d{2}(?::?\d{2})?)?$/;
100
+ /**
101
+ * Python `_handle_cron_recent`'s `last_run_at` read (`datetime.fromisoformat` after `Z` → `+00:00`, or a number).
102
+ * Only ISO-shaped strings count, so `Date.parse` leniency ("Jan 2 2026") never invents a completion; a time without
103
+ * an offset is server-local, as in Python. Anything else is skipped.
104
+ */
105
+ export function completedAtSeconds(value) {
106
+ if (typeof value === 'number')
107
+ return value && Number.isFinite(value) ? value : null;
108
+ if (typeof value !== 'string')
109
+ return null;
110
+ const m = ISO_RE.exec(value);
111
+ if (!m)
112
+ return null;
113
+ const [y, mo, d, h, mi, sec] = [1, 2, 3, 4, 5, 6].map((i) => Number(m[i] ?? 0));
114
+ const ms = Number((m[7] ?? '').padEnd(3, '0').slice(0, 3));
115
+ if (mo < 1 || mo > 12 || d < 1 || new Date(Date.UTC(y, mo - 1, d)).getUTCDate() !== d || h > 23 || mi > 59 || sec > 59)
116
+ return null;
117
+ const offset = m[8];
118
+ if (offset === undefined)
119
+ return new Date(y, mo - 1, d, h, mi, sec, ms).getTime() / 1000;
120
+ let offsetMinutes = 0;
121
+ if (offset !== 'Z') {
122
+ const digits = offset.slice(1).replace(':', '');
123
+ offsetMinutes = (offset.startsWith('-') ? -1 : 1) * (Number(digits.slice(0, 2)) * 60 + Number(digits.slice(2) || 0));
124
+ }
125
+ return (Date.UTC(y, mo - 1, d, h, mi, sec, ms) - offsetMinutes * 60_000) / 1000;
126
+ }
127
+ /** The one place a job's `last_status` becomes the success/failure the clients render. */
128
+ export function completionOutcome(status) {
129
+ const s = str(status).trim().toLowerCase();
130
+ if (s === 'error' || s === 'failed')
131
+ return 'failed';
132
+ if (s === 'ok' || s === 'success' || s === 'completed')
133
+ return 'succeeded';
134
+ return 'unknown';
135
+ }
56
136
  export class CronService {
57
137
  deps;
58
138
  constructor(deps) {
@@ -72,6 +152,8 @@ export class CronService {
72
152
  names.push(n);
73
153
  } };
74
154
  add(active);
155
+ if (this.deps.isolatedProfileMode())
156
+ return names;
75
157
  for (const row of await this.deps.profileNames())
76
158
  if (row.visible || this.deps.profilesMatch(row.name, active))
77
159
  add(row.name);
@@ -97,41 +179,178 @@ export class CronService {
97
179
  throw new HttpFailure(400, `Unknown profile: ${profile}`);
98
180
  return profile;
99
181
  }
100
- /** Python `/api/crons`: the active profile's rows plus foreign rows (hidden unless `all_profiles`). */
101
- async list(active, allProfiles) {
102
- const sidecar = this.sidecar();
103
- const activeJobs = [];
104
- const otherJobs = [];
105
- const seenHomes = new Set();
106
- for (const owner of await this.profileNames(active)) {
107
- const home = this.deps.profileHome(owner);
108
- if (seenHomes.has(home))
182
+ async profileForHome(home) {
183
+ const names = this.deps.isolatedProfileMode() ? (await this.deps.profileNames()).map((row) => row.name) : await this.availableProfileNames();
184
+ for (const profile of names)
185
+ if (this.deps.profileHome(profile) === home)
186
+ return profile;
187
+ throw new HttpFailure(403, 'Unknown cron profile home');
188
+ }
189
+ /** The physical store owns execution. Additive owner_profile metadata lets the creator manage a new job there. */
190
+ async storedJobs(active) {
191
+ // ponytail: scan visible stores per request; add an index only if profile/job counts make this expensive.
192
+ const rows = [];
193
+ const seen = new Set();
194
+ for (const profile of await this.profileNames(active)) {
195
+ const home = this.deps.profileHome(profile);
196
+ if (seen.has(home))
109
197
  continue;
110
- seenHomes.add(home);
111
- const isActive = this.deps.profilesMatch(owner, active);
198
+ seen.add(home);
199
+ const local = this.deps.profilesMatch(profile, active);
112
200
  let jobs;
113
201
  try {
114
- jobs = (await sidecar.call('cron.list', { profile_home: home })).jobs.map((j) => jobForApi(j));
202
+ jobs = (await this.sidecar().call('cron.list', { profile_home: home })).jobs;
115
203
  }
116
204
  catch (error) {
117
- if (!isActive)
118
- continue;
119
- if (error instanceof SidecarError && error.condition === 'cron_unavailable')
120
- return { jobs: [], cron_unavailable: true };
121
- throw error;
205
+ if (local)
206
+ throw error;
207
+ continue;
208
+ }
209
+ for (const job of jobs) {
210
+ const creator = str(job.owner_profile).trim();
211
+ rows.push({ home, profile, job, managed: local || Boolean(creator && this.deps.profilesMatch(creator, active)) });
122
212
  }
123
- for (const job of jobs)
124
- (isActive ? activeJobs : otherJobs).push({ ...job, owner_profile: owner, read_only: !isActive });
213
+ }
214
+ return rows;
215
+ }
216
+ view(row) {
217
+ return { ...jobForApi(row.job, this.deps.runningJobs?.has(str(row.job.id)) ?? false), profile: str(row.job.profile).trim() || row.profile, owner_profile: row.profile, read_only: !row.managed };
218
+ }
219
+ requireExecutionStore(row) {
220
+ const profile = str(row.job.profile).trim();
221
+ if (profile && !this.deps.profilesMatch(profile, row.profile))
222
+ throw new HttpFailure(409, 'This legacy task must be recreated in its execution profile before it can run or resume');
223
+ }
224
+ async validateContext(home, fields) {
225
+ const refs = continuityRefs(fields.context_from, false);
226
+ if (!refs.length)
227
+ return;
228
+ const ids = new Set((await this.sidecar().call('cron.list', { profile_home: home })).jobs.map((job) => job.id));
229
+ if (refs.some((ref) => !ids.has(str(ref))))
230
+ throw new HttpFailure(400, 'Context jobs must belong to the execution profile');
231
+ }
232
+ async resolveStore(home, ref) {
233
+ const active = await this.profileForHome(home);
234
+ const allRows = await this.storedJobs(active);
235
+ const rows = allRows.filter((row) => row.managed);
236
+ const exact = rows.filter((row) => row.job.id === ref);
237
+ const matches = exact.length ? exact : rows.filter((row) => row.job.name === ref);
238
+ if (!matches.length)
239
+ throw new HttpFailure(404, 'Job not found');
240
+ if (matches.length !== 1)
241
+ throw new HttpFailure(409, 'Ambiguous cron job reference');
242
+ const match = matches[0];
243
+ if (allRows.filter((row) => row.home === match.home && row.job.id === match.job.id).length !== 1)
244
+ throw new HttpFailure(409, 'Ambiguous cron job reference');
245
+ return match;
246
+ }
247
+ async contextSources(home, input) {
248
+ const active = await this.profileForHome(home);
249
+ const editing = input.editing_job_id ? await this.resolveStore(home, input.editing_job_id) : null;
250
+ const profile = await this.normalizeProfile(input.profile);
251
+ if (profile && !(await this.profileNames(active)).some((name) => this.deps.profilesMatch(name, profile)))
252
+ throw new HttpFailure(403, 'Execution profile is not accessible');
253
+ const executionHome = profile ? this.deps.profileHome(profile) : editing?.home ?? home;
254
+ const rows = await this.storedJobs(active);
255
+ const inStore = rows.filter((row) => row.home === executionHome);
256
+ const excludeId = editing ? str(editing.job.id) : input.exclude_job_id;
257
+ const counts = new Map();
258
+ for (const row of inStore)
259
+ counts.set(str(row.job.id), (counts.get(str(row.job.id)) ?? 0) + 1);
260
+ const sources = [];
261
+ const included = new Set();
262
+ for (const row of inStore) {
263
+ const id = str(row.job.id).trim();
264
+ if (!row.managed || !id || id === excludeId || counts.get(id) !== 1)
265
+ continue;
266
+ sources.push({ job_id: id, label: str(row.job.name).trim() || id, selectable: true });
267
+ included.add(id);
268
+ }
269
+ for (const raw of input.selected_refs ?? []) {
270
+ const id = raw.trim();
271
+ if (!id || id.toLowerCase() === 'self' || included.has(id))
272
+ continue;
273
+ const owned = rows.find((row) => row.managed && row.job.id === id);
274
+ sources.push({ job_id: id, label: str(owned?.job.name).trim() || id, selectable: false });
275
+ included.add(id);
276
+ }
277
+ return { profile: profile ?? editing?.profile ?? active, sources };
278
+ }
279
+ /** Python `/api/crons`: the active profile's rows plus foreign rows (hidden unless `all_profiles`). */
280
+ async list(active, allProfiles) {
281
+ const activeJobs = [];
282
+ const otherJobs = [];
283
+ try {
284
+ for (const row of await this.storedJobs(active))
285
+ (row.managed ? activeJobs : otherJobs).push(this.view(row));
286
+ }
287
+ catch (error) {
288
+ if (error instanceof SidecarError && error.condition === 'cron_unavailable')
289
+ return { jobs: [], cron_unavailable: true };
290
+ throw error;
125
291
  }
126
292
  const all = allProfiles && !this.deps.isolatedProfileMode();
127
293
  return { jobs: all ? [...activeJobs, ...otherJobs] : activeJobs, all_profiles: all, active_profile: active, other_profile_count: all ? 0 : otherJobs.length };
128
294
  }
295
+ /**
296
+ * Python `/api/crons/recent`: each active-profile job's latest completion after `since`, newest first (ties by
297
+ * `job_id`), with the server's `outcome` and the newest cron session for that job. One row per job, not a run archive.
298
+ */
299
+ async recent(home, rawSince) {
300
+ const since = parseSince(rawSince);
301
+ let rows;
302
+ try {
303
+ rows = (await this.storedJobs(await this.profileForHome(home))).filter((row) => row.managed);
304
+ }
305
+ catch (error) {
306
+ if (error instanceof SidecarError && error.condition === 'cron_unavailable')
307
+ return { completions: [], since };
308
+ throw error;
309
+ }
310
+ const completions = [];
311
+ for (const { job } of rows) {
312
+ const jobId = str(job.id).trim();
313
+ const completedAt = completedAtSeconds(job.last_run_at);
314
+ if (!jobId || completedAt === null || completedAt <= since)
315
+ continue;
316
+ const status = 'last_status' in job ? (job.last_status === null ? null : str(job.last_status)) : 'unknown';
317
+ completions.push({
318
+ job_id: jobId,
319
+ name: 'name' in job ? (job.name === null ? null : str(job.name)) : 'Unknown',
320
+ status,
321
+ outcome: completionOutcome(status),
322
+ completed_at: completedAt,
323
+ toast_notifications: job.toast_notifications !== false,
324
+ session_id: '',
325
+ });
326
+ }
327
+ completions.sort((a, b) => b.completed_at - a.completed_at || (a.job_id < b.job_id ? -1 : a.job_id > b.job_id ? 1 : 0));
328
+ for (const storeHome of new Set(rows.map((row) => row.home))) {
329
+ const ids = rows.filter((row) => row.home === storeHome).map((row) => str(row.job.id));
330
+ const sessions = latestCronSessionInfo(join(storeHome, 'state.db'), ids, completions.filter((c) => ids.includes(c.job_id)).map((c) => c.job_id));
331
+ for (const completion of completions) {
332
+ if (!ids.includes(completion.job_id))
333
+ continue;
334
+ const info = sessions.get(completion.job_id);
335
+ if (!info)
336
+ continue;
337
+ completion.session_id = info.session_id;
338
+ if (info.message_count !== null)
339
+ completion.message_count = info.message_count;
340
+ }
341
+ }
342
+ return { completions, since };
343
+ }
129
344
  async create(home, body) {
130
345
  if (!('schedule' in body) || body.schedule === null || body.schedule === undefined)
131
346
  throw new HttpFailure(400, 'Missing required field(s): schedule');
132
347
  if (!body.prompt && !body.script && !body.skills)
133
348
  throw new HttpFailure(400, 'Missing required field(s): prompt');
134
349
  const profile = await this.normalizeProfile(body.profile);
350
+ const active = await this.profileForHome(home);
351
+ if (profile && !(await this.profileNames(active)).some((name) => this.deps.profilesMatch(name, profile)))
352
+ throw new HttpFailure(403, 'Execution profile is not accessible');
353
+ const executionHome = profile ? this.deps.profileHome(profile) : home;
135
354
  const job = { prompt: body.prompt ?? '', schedule: body.schedule, name: body.name ?? null, deliver: body.deliver ?? 'local', skills: body.skills ?? [], model: body.model ?? null, provider: body.provider ?? null, ...jobFieldUpdates(body) };
136
355
  if (body.repeat !== null && body.repeat !== undefined)
137
356
  job.repeat = body.repeat;
@@ -139,9 +358,11 @@ export class CronService {
139
358
  job.profile = profile;
140
359
  if (body.toast_notifications === false)
141
360
  job.toast_notifications = false;
361
+ job.owner_profile = active;
362
+ await this.validateContext(executionHome, job);
142
363
  try {
143
- const result = await this.sidecar().call('cron.create', { profile_home: home, job, execution_home: profile ? this.deps.profileHome(profile) : null });
144
- return { ok: true, job: jobForApi(result.job) };
364
+ const result = await this.sidecar().call('cron.create', { profile_home: executionHome, job, execution_home: profile ? executionHome : null });
365
+ return { ok: true, job: this.view({ home: executionHome, profile: profile ?? active, job: result.job, managed: true }) };
145
366
  }
146
367
  catch (error) {
147
368
  throw new HttpFailure(400, str(error.message));
@@ -151,12 +372,19 @@ export class CronService {
151
372
  const jobId = str(body.job_id);
152
373
  if (!jobId)
153
374
  throw new HttpFailure(400, 'Missing required field(s): job_id');
375
+ const store = await this.resolveStore(home, jobId);
376
+ const storedId = str(store.job.id);
377
+ home = store.home;
154
378
  const updates = {};
155
379
  for (const [k, v] of Object.entries(body)) {
156
- if (k === 'job_id')
380
+ if (k === 'job_id' || k === 'id' || k === 'owner_profile')
157
381
  continue;
158
- if (k === 'profile')
159
- updates.profile = await this.normalizeProfile(v);
382
+ if (k === 'profile') {
383
+ const profile = await this.normalizeProfile(v);
384
+ if (profile && !this.deps.profilesMatch(profile, store.profile))
385
+ throw new HttpFailure(400, 'To change the execution profile, duplicate the task in that profile and delete the old task');
386
+ updates.profile = profile;
387
+ }
160
388
  else if (k === 'model' || k === 'provider')
161
389
  updates[k] = v ? v : null;
162
390
  else if (k === 'monitor' || k === 'continuity' || k === 'repeat')
@@ -167,16 +395,17 @@ export class CronService {
167
395
  let currentContextFrom = null;
168
396
  if ('continuity' in body && !('context_from' in body)) {
169
397
  try {
170
- currentContextFrom = (await this.sidecar().call('cron.get', { profile_home: home, job_id: jobId })).job?.context_from ?? null;
398
+ currentContextFrom = (await this.sidecar().call('cron.get', { profile_home: home, job_id: storedId })).job?.context_from ?? null;
171
399
  }
172
400
  catch {
173
401
  currentContextFrom = null;
174
402
  }
175
403
  }
176
404
  Object.assign(updates, jobFieldUpdates(body, currentContextFrom));
405
+ await this.validateContext(home, updates);
177
406
  try {
178
- const result = await this.sidecar().call('cron.update', { profile_home: home, job_id: jobId, updates });
179
- return { ok: true, job: jobForApi(result.job) };
407
+ const result = await this.sidecar().call('cron.update', { profile_home: home, job_id: storedId, updates });
408
+ return { ok: true, job: this.view({ ...store, job: result.job }) };
180
409
  }
181
410
  catch (error) {
182
411
  if (error instanceof SidecarError && error.condition === 'not_found')
@@ -187,10 +416,13 @@ export class CronService {
187
416
  async simple(method, home, jobId, extra = {}) {
188
417
  if (!jobId)
189
418
  throw new HttpFailure(400, method === 'cron.delete' ? 'Missing required field(s): job_id' : 'job_id required');
419
+ const store = await this.resolveStore(home, jobId);
420
+ if (method === 'cron.resume')
421
+ this.requireExecutionStore(store);
190
422
  try {
191
- const result = await this.sidecar().call(method, { profile_home: home, job_id: jobId, ...extra });
423
+ const result = await this.sidecar().call(method, { profile_home: store.home, job_id: str(store.job.id), ...extra });
192
424
  // Python returned the raw `pause_job`/`resume_job` record and `{ok, job_id}` for delete.
193
- return 'job' in result ? { ok: true, job: result.job } : { ok: true, job_id: jobId };
425
+ return 'job' in result ? { ok: true, job: this.view({ ...store, job: result.job }) } : { ok: true, job_id: jobId };
194
426
  }
195
427
  catch (error) {
196
428
  if (error instanceof SidecarError && error.condition === 'not_found')
@@ -216,6 +448,11 @@ export class CronService {
216
448
  running?.set(jobId, Date.now() / 1000);
217
449
  try {
218
450
  const sidecar = this.sidecar();
451
+ const store = await this.resolveStore(home, jobId);
452
+ if (store.job.id !== jobId)
453
+ throw new HttpFailure(404, 'Job not found');
454
+ this.requireExecutionStore(store);
455
+ home = store.home;
219
456
  let job;
220
457
  try {
221
458
  job = (await sidecar.call('cron.get', { profile_home: home, job_id: jobId })).job;
@@ -287,6 +524,7 @@ export class CronService {
287
524
  const l = pyInt(limit, 50);
288
525
  if (!Number.isFinite(o) || !Number.isFinite(l))
289
526
  throw new HttpFailure(400, 'offset and limit must be integers');
527
+ home = (await this.resolveStore(home, jobId)).home;
290
528
  return this.sidecar().call('cron.history', { profile_home: home, job_id: jobId, offset: Math.max(0, o), limit: Math.max(1, Math.min(500, l)) });
291
529
  }
292
530
  async runDetail(home, jobId, filename) {
@@ -296,6 +534,7 @@ export class CronService {
296
534
  throw new HttpFailure(400, 'invalid job_id');
297
535
  if (filename.includes('/') || filename.includes('\\') || filename === '..')
298
536
  throw new HttpFailure(400, 'invalid filename');
537
+ home = (await this.resolveStore(home, jobId)).home;
299
538
  try {
300
539
  return await this.sidecar().call('cron.run_detail', { profile_home: home, job_id: jobId, filename });
301
540
  }
@@ -311,6 +550,7 @@ export class CronService {
311
550
  if (!JOB_ID_RE.test(jobId))
312
551
  throw new HttpFailure(400, 'invalid job_id');
313
552
  const l = Number.parseInt(limit ?? '5', 10);
553
+ home = (await this.resolveStore(home, jobId)).home;
314
554
  return this.sidecar().call('cron.output', { profile_home: home, job_id: jobId, limit: Number.isFinite(l) ? Math.max(1, Math.min(500, l)) : 5 });
315
555
  }
316
556
  async deliveryOptions() {
@@ -1 +1 @@
1
- {"version":3,"file":"crons.js","sourceRoot":"","sources":["../../src/tools/crons.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crons.js","sourceRoot":"","sources":["../../src/tools/crons.ts"],"names":[],"mappings":"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"}
@@ -21,9 +21,17 @@ export declare class HygieneTicker {
21
21
  private readonly deps;
22
22
  private timer;
23
23
  private retentionLastRun;
24
+ private retention;
25
+ private abort;
24
26
  constructor(deps: HygieneDeps);
25
27
  start(intervalMs?: number): void;
26
- stop(): void;
27
- /** Python `_run_process_hygiene`: every step is best effort. */
28
- tick(): void;
28
+ /** Stops the schedule; an in-flight retention sweep stops at its next yield, and the result settles when it has. */
29
+ stop(): Promise<void>;
30
+ /**
31
+ * Python `_run_process_hygiene`: every step is best effort. Retention runs in
32
+ * the background, one sweep at a time; the returned promise settles when the
33
+ * current sweep (if any) does.
34
+ */
35
+ tick(): Promise<void>;
36
+ private warn;
29
37
  }
@@ -74,39 +74,57 @@ export class HygieneTicker {
74
74
  deps;
75
75
  timer = null;
76
76
  retentionLastRun = null;
77
+ retention = null;
78
+ abort = new AbortController();
77
79
  constructor(deps) {
78
80
  this.deps = deps;
79
81
  }
80
82
  start(intervalMs = HYGIENE_INTERVAL_MS) {
81
83
  if (this.timer)
82
84
  return;
83
- this.timer = setInterval(() => { this.tick(); }, intervalMs);
85
+ if (this.abort.signal.aborted)
86
+ this.abort = new AbortController();
87
+ this.timer = setInterval(() => { void this.tick(); }, intervalMs);
84
88
  this.timer.unref();
85
89
  }
86
- stop() { if (this.timer) {
87
- clearInterval(this.timer);
88
- this.timer = null;
89
- } }
90
- /** Python `_run_process_hygiene`: every step is best effort. */
90
+ /** Stops the schedule; an in-flight retention sweep stops at its next yield, and the result settles when it has. */
91
+ stop() {
92
+ if (this.timer) {
93
+ clearInterval(this.timer);
94
+ this.timer = null;
95
+ }
96
+ this.abort.abort();
97
+ return this.retention ?? Promise.resolve();
98
+ }
99
+ /**
100
+ * Python `_run_process_hygiene`: every step is best effort. Retention runs in
101
+ * the background, one sweep at a time; the returned promise settles when the
102
+ * current sweep (if any) does.
103
+ */
91
104
  tick() {
92
105
  const step = (label, run) => { try {
93
106
  run();
94
107
  }
95
108
  catch (error) {
96
- this.deps.log(`[webui] WARNING: ${label} failed: ${error.message}`);
109
+ this.warn(label, error);
97
110
  } };
98
111
  step('WebUI log rotation', () => { rotateWebuiLog(webuiLogPaths(this.deps.env, this.deps.stateDir, this.deps.port()), webuiLogMaxBytes(this.deps.env), this.deps.log); });
99
112
  for (const sweep of this.deps.sweeps ?? [])
100
113
  step('hygiene sweep', sweep);
114
+ if (this.retention)
115
+ return this.retention;
101
116
  const now = this.deps.now();
102
- if (this.retentionLastRun !== null && now - this.retentionLastRun < RETENTION_INTERVAL_S)
103
- return;
117
+ const { signal } = this.abort;
118
+ if (signal.aborted || (this.retentionLastRun !== null && now - this.retentionLastRun < RETENTION_INTERVAL_S))
119
+ return Promise.resolve();
104
120
  this.retentionLastRun = now;
105
- step('run-journal retention', () => {
106
- const result = this.deps.journal.pruneSettled({ now, isActive: (path) => this.deps.activeJournalPaths().has(path) });
107
- if (result.pruned)
108
- this.deps.log(`[webui] run-journal retention pruned ${String(result.pruned)} files (${String(result.bytes_reclaimed)} bytes)`);
109
- });
121
+ this.retention = this.deps.journal.pruneSettled({ now, signal, isActive: (path) => this.deps.activeJournalPaths().has(path) })
122
+ .then((result) => { if (result.pruned)
123
+ this.deps.log(`[webui] run-journal retention pruned ${String(result.pruned)} files (${String(result.bytes_reclaimed)} bytes)`); })
124
+ .catch((error) => { this.warn('run-journal retention', error); })
125
+ .finally(() => { this.retention = null; });
126
+ return this.retention;
110
127
  }
128
+ warn(label, error) { this.deps.log(`[webui] WARNING: ${label} failed: ${error.message}`); }
111
129
  }
112
130
  //# sourceMappingURL=hygiene.js.map