@withbuddi/buddi 0.1.0-pre.29 → 0.1.0-pre.30

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 (455) hide show
  1. package/extension/manifest.json +2 -2
  2. package/node_modules/@buddi/cli/dist/.tsbuildinfo +1 -1
  3. package/node_modules/@buddi/cli/dist/args.d.ts +6 -1
  4. package/node_modules/@buddi/cli/dist/args.d.ts.map +1 -1
  5. package/node_modules/@buddi/cli/dist/args.js +7 -2
  6. package/node_modules/@buddi/cli/dist/args.js.map +1 -1
  7. package/node_modules/@buddi/cli/dist/commands.d.ts.map +1 -1
  8. package/node_modules/@buddi/cli/dist/commands.js +13 -3
  9. package/node_modules/@buddi/cli/dist/commands.js.map +1 -1
  10. package/node_modules/@buddi/cli/dist/doctor-probes.d.ts.map +1 -1
  11. package/node_modules/@buddi/cli/dist/doctor-probes.js +2 -1
  12. package/node_modules/@buddi/cli/dist/doctor-probes.js.map +1 -1
  13. package/node_modules/@buddi/cli/dist/jobs-cmd.d.ts +4 -0
  14. package/node_modules/@buddi/cli/dist/jobs-cmd.d.ts.map +1 -1
  15. package/node_modules/@buddi/cli/dist/jobs-cmd.js +53 -4
  16. package/node_modules/@buddi/cli/dist/jobs-cmd.js.map +1 -1
  17. package/node_modules/@buddi/cli/dist/main.d.ts.map +1 -1
  18. package/node_modules/@buddi/cli/dist/main.js +5 -1
  19. package/node_modules/@buddi/cli/dist/main.js.map +1 -1
  20. package/node_modules/@buddi/core/dist/.tsbuildinfo +1 -1
  21. package/node_modules/@buddi/core/dist/lock.d.ts +8 -2
  22. package/node_modules/@buddi/core/dist/lock.d.ts.map +1 -1
  23. package/node_modules/@buddi/core/dist/lock.js +20 -5
  24. package/node_modules/@buddi/core/dist/lock.js.map +1 -1
  25. package/node_modules/@buddi/core/dist/pages.d.ts +3 -1
  26. package/node_modules/@buddi/core/dist/pages.d.ts.map +1 -1
  27. package/node_modules/@buddi/core/dist/pages.js +6 -1
  28. package/node_modules/@buddi/core/dist/pages.js.map +1 -1
  29. package/node_modules/@buddi/core/dist/plugin/index.d.ts +1 -1
  30. package/node_modules/@buddi/core/dist/plugin/index.d.ts.map +1 -1
  31. package/node_modules/@buddi/core/dist/plugin/index.js.map +1 -1
  32. package/node_modules/@buddi/core/dist/plugin/version.d.ts +1 -1
  33. package/node_modules/@buddi/core/dist/plugin/version.js +1 -1
  34. package/node_modules/@buddi/core/dist/queue/failures.d.ts +84 -0
  35. package/node_modules/@buddi/core/dist/queue/failures.d.ts.map +1 -0
  36. package/node_modules/@buddi/core/dist/queue/failures.js +195 -0
  37. package/node_modules/@buddi/core/dist/queue/failures.js.map +1 -0
  38. package/node_modules/@buddi/core/dist/queue/index.d.ts +1 -0
  39. package/node_modules/@buddi/core/dist/queue/index.d.ts.map +1 -1
  40. package/node_modules/@buddi/core/dist/queue/index.js +1 -0
  41. package/node_modules/@buddi/core/dist/queue/index.js.map +1 -1
  42. package/node_modules/@buddi/core/dist/queue/jobs.d.ts +39 -3
  43. package/node_modules/@buddi/core/dist/queue/jobs.d.ts.map +1 -1
  44. package/node_modules/@buddi/core/dist/queue/jobs.js +54 -4
  45. package/node_modules/@buddi/core/dist/queue/jobs.js.map +1 -1
  46. package/node_modules/@buddi/core/dist/queue/types.d.ts +20 -0
  47. package/node_modules/@buddi/core/dist/queue/types.d.ts.map +1 -1
  48. package/node_modules/@buddi/core/dist/queue/types.js +17 -0
  49. package/node_modules/@buddi/core/dist/queue/types.js.map +1 -1
  50. package/node_modules/@buddi/core/dist/secrets/settings.d.ts.map +1 -1
  51. package/node_modules/@buddi/core/dist/secrets/settings.js +23 -3
  52. package/node_modules/@buddi/core/dist/secrets/settings.js.map +1 -1
  53. package/node_modules/@buddi/core/dist/sentinels/digest.d.ts +8 -1
  54. package/node_modules/@buddi/core/dist/sentinels/digest.d.ts.map +1 -1
  55. package/node_modules/@buddi/core/dist/sentinels/digest.js +10 -3
  56. package/node_modules/@buddi/core/dist/sentinels/digest.js.map +1 -1
  57. package/node_modules/@buddi/core/dist/sentinels/index.d.ts +1 -0
  58. package/node_modules/@buddi/core/dist/sentinels/index.d.ts.map +1 -1
  59. package/node_modules/@buddi/core/dist/sentinels/index.js +1 -0
  60. package/node_modules/@buddi/core/dist/sentinels/index.js.map +1 -1
  61. package/node_modules/@buddi/core/dist/sentinels/mutes.d.ts +51 -0
  62. package/node_modules/@buddi/core/dist/sentinels/mutes.d.ts.map +1 -0
  63. package/node_modules/@buddi/core/dist/sentinels/mutes.js +86 -0
  64. package/node_modules/@buddi/core/dist/sentinels/mutes.js.map +1 -0
  65. package/node_modules/@buddi/core/dist/sentinels/run.d.ts +14 -4
  66. package/node_modules/@buddi/core/dist/sentinels/run.d.ts.map +1 -1
  67. package/node_modules/@buddi/core/dist/sentinels/run.js +64 -20
  68. package/node_modules/@buddi/core/dist/sentinels/run.js.map +1 -1
  69. package/node_modules/@buddi/core/dist/sentinels/types.d.ts +152 -2
  70. package/node_modules/@buddi/core/dist/sentinels/types.d.ts.map +1 -1
  71. package/node_modules/@buddi/core/dist/sentinels/types.js +126 -2
  72. package/node_modules/@buddi/core/dist/sentinels/types.js.map +1 -1
  73. package/node_modules/@buddi/core/dist/views.d.ts +112 -112
  74. package/node_modules/@buddi/core/dist/views.d.ts.map +1 -1
  75. package/node_modules/@buddi/core/dist/views.js +2 -0
  76. package/node_modules/@buddi/core/dist/views.js.map +1 -1
  77. package/node_modules/@buddi/core/migrations/066_alert_decisions.sql +45 -0
  78. package/node_modules/@buddi/core/migrations/067_job_acknowledged.sql +21 -0
  79. package/node_modules/@buddi/gateway/dist/.tsbuildinfo +1 -1
  80. package/node_modules/@buddi/gateway/dist/chat/conversations.d.ts.map +1 -1
  81. package/node_modules/@buddi/gateway/dist/chat/conversations.js +8 -2
  82. package/node_modules/@buddi/gateway/dist/chat/conversations.js.map +1 -1
  83. package/node_modules/@buddi/gateway/dist/missions/execute.d.ts.map +1 -1
  84. package/node_modules/@buddi/gateway/dist/missions/execute.js +36 -2
  85. package/node_modules/@buddi/gateway/dist/missions/execute.js.map +1 -1
  86. package/node_modules/@buddi/gateway/dist/missions/goals.d.ts +12 -1
  87. package/node_modules/@buddi/gateway/dist/missions/goals.d.ts.map +1 -1
  88. package/node_modules/@buddi/gateway/dist/missions/goals.js +21 -1
  89. package/node_modules/@buddi/gateway/dist/missions/goals.js.map +1 -1
  90. package/node_modules/@buddi/gateway/dist/missions/sentinel-wake.d.ts +3 -0
  91. package/node_modules/@buddi/gateway/dist/missions/sentinel-wake.d.ts.map +1 -1
  92. package/node_modules/@buddi/gateway/dist/missions/sentinel-wake.js +4 -1
  93. package/node_modules/@buddi/gateway/dist/missions/sentinel-wake.js.map +1 -1
  94. package/node_modules/@buddi/gateway/dist/surfaces/offered-actions.d.ts +17 -0
  95. package/node_modules/@buddi/gateway/dist/surfaces/offered-actions.d.ts.map +1 -1
  96. package/node_modules/@buddi/gateway/dist/surfaces/offered-actions.js +27 -0
  97. package/node_modules/@buddi/gateway/dist/surfaces/offered-actions.js.map +1 -1
  98. package/node_modules/@buddi/gateway/dist/web/alerts.d.ts +179 -0
  99. package/node_modules/@buddi/gateway/dist/web/alerts.d.ts.map +1 -0
  100. package/node_modules/@buddi/gateway/dist/web/alerts.js +363 -0
  101. package/node_modules/@buddi/gateway/dist/web/alerts.js.map +1 -0
  102. package/node_modules/@buddi/gateway/dist/web/api-routes.d.ts.map +1 -1
  103. package/node_modules/@buddi/gateway/dist/web/api-routes.js +45 -6
  104. package/node_modules/@buddi/gateway/dist/web/api-routes.js.map +1 -1
  105. package/node_modules/@buddi/gateway/dist/web/chat.d.ts +1 -0
  106. package/node_modules/@buddi/gateway/dist/web/chat.d.ts.map +1 -1
  107. package/node_modules/@buddi/gateway/dist/web/chat.js +4 -3
  108. package/node_modules/@buddi/gateway/dist/web/chat.js.map +1 -1
  109. package/node_modules/@buddi/gateway/dist/web/lock.d.ts +7 -4
  110. package/node_modules/@buddi/gateway/dist/web/lock.d.ts.map +1 -1
  111. package/node_modules/@buddi/gateway/dist/web/lock.js +20 -14
  112. package/node_modules/@buddi/gateway/dist/web/lock.js.map +1 -1
  113. package/node_modules/@buddi/gateway/dist/web/plugins.d.ts.map +1 -1
  114. package/node_modules/@buddi/gateway/dist/web/plugins.js +17 -3
  115. package/node_modules/@buddi/gateway/dist/web/plugins.js.map +1 -1
  116. package/node_modules/@buddi/gateway/dist/web/read.d.ts +52 -26
  117. package/node_modules/@buddi/gateway/dist/web/read.d.ts.map +1 -1
  118. package/node_modules/@buddi/gateway/dist/web/read.js +52 -36
  119. package/node_modules/@buddi/gateway/dist/web/read.js.map +1 -1
  120. package/node_modules/@buddi/gateway/dist/web/secrets.d.ts +61 -1
  121. package/node_modules/@buddi/gateway/dist/web/secrets.d.ts.map +1 -1
  122. package/node_modules/@buddi/gateway/dist/web/secrets.js +111 -3
  123. package/node_modules/@buddi/gateway/dist/web/secrets.js.map +1 -1
  124. package/node_modules/@buddi/gateway/dist/web/server.d.ts.map +1 -1
  125. package/node_modules/@buddi/gateway/dist/web/server.js +125 -9
  126. package/node_modules/@buddi/gateway/dist/web/server.js.map +1 -1
  127. package/node_modules/@buddi/gateway/dist/web/widgets.d.ts +1 -0
  128. package/node_modules/@buddi/gateway/dist/web/widgets.d.ts.map +1 -1
  129. package/node_modules/@buddi/gateway/dist/web/widgets.js +6 -1
  130. package/node_modules/@buddi/gateway/dist/web/widgets.js.map +1 -1
  131. package/node_modules/@buddi/gateway/dist/web/write.d.ts +23 -0
  132. package/node_modules/@buddi/gateway/dist/web/write.d.ts.map +1 -1
  133. package/node_modules/@buddi/gateway/dist/web/write.js +46 -1
  134. package/node_modules/@buddi/gateway/dist/web/write.js.map +1 -1
  135. package/node_modules/@buddi/install/dist/.tsbuildinfo +1 -1
  136. package/node_modules/@buddi/runtime/dist/.tsbuildinfo +1 -1
  137. package/node_modules/@buddi/runtime/dist/anthropic.d.ts +6 -0
  138. package/node_modules/@buddi/runtime/dist/anthropic.d.ts.map +1 -1
  139. package/node_modules/@buddi/runtime/dist/anthropic.js.map +1 -1
  140. package/node_modules/@buddi/runtime/dist/openai.d.ts +34 -1
  141. package/node_modules/@buddi/runtime/dist/openai.d.ts.map +1 -1
  142. package/node_modules/@buddi/runtime/dist/openai.js +66 -12
  143. package/node_modules/@buddi/runtime/dist/openai.js.map +1 -1
  144. package/node_modules/@buddi/tool-artifacts/dist/.tsbuildinfo +1 -1
  145. package/node_modules/@buddi/tool-browser/dist/.tsbuildinfo +1 -1
  146. package/node_modules/@buddi/tool-email/dist/.tsbuildinfo +1 -1
  147. package/node_modules/@buddi/tool-email/dist/agent.js +1 -1
  148. package/node_modules/@buddi/tool-email/dist/imap/imapflow-client.d.ts +8 -0
  149. package/node_modules/@buddi/tool-email/dist/imap/imapflow-client.d.ts.map +1 -1
  150. package/node_modules/@buddi/tool-email/dist/imap/imapflow-client.js +59 -4
  151. package/node_modules/@buddi/tool-email/dist/imap/imapflow-client.js.map +1 -1
  152. package/node_modules/@buddi/tool-email/dist/mail.d.ts +42 -0
  153. package/node_modules/@buddi/tool-email/dist/mail.d.ts.map +1 -1
  154. package/node_modules/@buddi/tool-email/dist/mail.js +116 -0
  155. package/node_modules/@buddi/tool-email/dist/mail.js.map +1 -1
  156. package/node_modules/@buddi/tool-email/dist/mailbox/select.d.ts +6 -0
  157. package/node_modules/@buddi/tool-email/dist/mailbox/select.d.ts.map +1 -1
  158. package/node_modules/@buddi/tool-email/dist/mailbox/select.js +11 -0
  159. package/node_modules/@buddi/tool-email/dist/mailbox/select.js.map +1 -1
  160. package/node_modules/@buddi/tool-email/dist/metrics.d.ts +5 -6
  161. package/node_modules/@buddi/tool-email/dist/metrics.d.ts.map +1 -1
  162. package/node_modules/@buddi/tool-email/dist/metrics.js +4 -5
  163. package/node_modules/@buddi/tool-email/dist/metrics.js.map +1 -1
  164. package/node_modules/@buddi/tool-email/dist/needs-you.d.ts +58 -0
  165. package/node_modules/@buddi/tool-email/dist/needs-you.d.ts.map +1 -0
  166. package/node_modules/@buddi/tool-email/dist/needs-you.js +97 -0
  167. package/node_modules/@buddi/tool-email/dist/needs-you.js.map +1 -0
  168. package/node_modules/@buddi/tool-email/dist/pages/descriptors.d.ts.map +1 -1
  169. package/node_modules/@buddi/tool-email/dist/pages/descriptors.js +110 -78
  170. package/node_modules/@buddi/tool-email/dist/pages/descriptors.js.map +1 -1
  171. package/node_modules/@buddi/tool-email/dist/pages/drafts-tools.d.ts +2 -2
  172. package/node_modules/@buddi/tool-email/dist/pages/queries.d.ts +7 -0
  173. package/node_modules/@buddi/tool-email/dist/pages/queries.d.ts.map +1 -1
  174. package/node_modules/@buddi/tool-email/dist/pages/queries.js +31 -3
  175. package/node_modules/@buddi/tool-email/dist/pages/queries.js.map +1 -1
  176. package/node_modules/@buddi/tool-email/dist/ports.d.ts +8 -0
  177. package/node_modules/@buddi/tool-email/dist/ports.d.ts.map +1 -1
  178. package/node_modules/@buddi/tool-email/dist/ports.js.map +1 -1
  179. package/node_modules/@buddi/tool-email/dist/sentinels/suspicious-sender.d.ts.map +1 -1
  180. package/node_modules/@buddi/tool-email/dist/sentinels/suspicious-sender.js +4 -1
  181. package/node_modules/@buddi/tool-email/dist/sentinels/suspicious-sender.js.map +1 -1
  182. package/node_modules/@buddi/tool-email/dist/sentinels/waiting-on-me.d.ts +18 -21
  183. package/node_modules/@buddi/tool-email/dist/sentinels/waiting-on-me.d.ts.map +1 -1
  184. package/node_modules/@buddi/tool-email/dist/sentinels/waiting-on-me.js +39 -63
  185. package/node_modules/@buddi/tool-email/dist/sentinels/waiting-on-me.js.map +1 -1
  186. package/node_modules/@buddi/tool-email/dist/sources/inbox-poll.d.ts.map +1 -1
  187. package/node_modules/@buddi/tool-email/dist/sources/inbox-poll.js +3 -2
  188. package/node_modules/@buddi/tool-email/dist/sources/inbox-poll.js.map +1 -1
  189. package/node_modules/@buddi/tool-email/dist/suspicions-store.d.ts +6 -0
  190. package/node_modules/@buddi/tool-email/dist/suspicions-store.d.ts.map +1 -1
  191. package/node_modules/@buddi/tool-email/dist/suspicions-store.js +16 -1
  192. package/node_modules/@buddi/tool-email/dist/suspicions-store.js.map +1 -1
  193. package/node_modules/@buddi/tool-email/dist/threads.d.ts +17 -2
  194. package/node_modules/@buddi/tool-email/dist/threads.d.ts.map +1 -1
  195. package/node_modules/@buddi/tool-email/dist/threads.js +35 -14
  196. package/node_modules/@buddi/tool-email/dist/threads.js.map +1 -1
  197. package/node_modules/@buddi/tool-email/dist/tools/mailbox.d.ts +3 -0
  198. package/node_modules/@buddi/tool-email/dist/tools/mailbox.d.ts.map +1 -1
  199. package/node_modules/@buddi/tool-email/dist/tools/mailbox.js +5 -0
  200. package/node_modules/@buddi/tool-email/dist/tools/mailbox.js.map +1 -1
  201. package/node_modules/@buddi/tool-email/dist/tools/threads.d.ts +7 -3
  202. package/node_modules/@buddi/tool-email/dist/tools/threads.d.ts.map +1 -1
  203. package/node_modules/@buddi/tool-email/dist/tools/threads.js +18 -5
  204. package/node_modules/@buddi/tool-email/dist/tools/threads.js.map +1 -1
  205. package/node_modules/@buddi/tool-email/dist/watchers.d.ts +91 -7
  206. package/node_modules/@buddi/tool-email/dist/watchers.d.ts.map +1 -1
  207. package/node_modules/@buddi/tool-email/dist/watchers.js +164 -1
  208. package/node_modules/@buddi/tool-email/dist/watchers.js.map +1 -1
  209. package/node_modules/@buddi/tool-email/dist/widgets.d.ts +3 -2
  210. package/node_modules/@buddi/tool-email/dist/widgets.d.ts.map +1 -1
  211. package/node_modules/@buddi/tool-email/dist/widgets.js +2 -2
  212. package/node_modules/@buddi/tool-email/dist/widgets.js.map +1 -1
  213. package/node_modules/@buddi/tool-email/migrations/023_attention.sql +100 -0
  214. package/node_modules/@buddi/tool-email/migrations/024_auth_domain.sql +9 -0
  215. package/node_modules/@buddi/tool-email/migrations/025_thread_ignore.sql +77 -0
  216. package/node_modules/@buddi/tool-email/package.json +1 -1
  217. package/node_modules/@buddi/tool-host/dist/.tsbuildinfo +1 -1
  218. package/node_modules/@buddi/tool-mcp/dist/.tsbuildinfo +1 -1
  219. package/node_modules/@buddi/tool-memory/dist/.tsbuildinfo +1 -1
  220. package/node_modules/@buddi/tool-web/dist/.tsbuildinfo +1 -1
  221. package/node_modules/ip-address/README.md +34 -34
  222. package/node_modules/ip-address/dist/ipv4.js +7 -0
  223. package/node_modules/ip-address/dist/ipv4.js.map +1 -1
  224. package/node_modules/ip-address/package.json +1 -1
  225. package/package.json +2 -2
  226. package/packages/cli/dist/.tsbuildinfo +1 -1
  227. package/packages/cli/dist/args.d.ts +6 -1
  228. package/packages/cli/dist/args.d.ts.map +1 -1
  229. package/packages/cli/dist/args.js +7 -2
  230. package/packages/cli/dist/args.js.map +1 -1
  231. package/packages/cli/dist/commands.d.ts.map +1 -1
  232. package/packages/cli/dist/commands.js +13 -3
  233. package/packages/cli/dist/commands.js.map +1 -1
  234. package/packages/cli/dist/doctor-probes.d.ts.map +1 -1
  235. package/packages/cli/dist/doctor-probes.js +2 -1
  236. package/packages/cli/dist/doctor-probes.js.map +1 -1
  237. package/packages/cli/dist/jobs-cmd.d.ts +4 -0
  238. package/packages/cli/dist/jobs-cmd.d.ts.map +1 -1
  239. package/packages/cli/dist/jobs-cmd.js +53 -4
  240. package/packages/cli/dist/jobs-cmd.js.map +1 -1
  241. package/packages/cli/dist/main.d.ts.map +1 -1
  242. package/packages/cli/dist/main.js +5 -1
  243. package/packages/cli/dist/main.js.map +1 -1
  244. package/packages/core/dist/.tsbuildinfo +1 -1
  245. package/packages/core/dist/lock.d.ts +8 -2
  246. package/packages/core/dist/lock.d.ts.map +1 -1
  247. package/packages/core/dist/lock.js +20 -5
  248. package/packages/core/dist/lock.js.map +1 -1
  249. package/packages/core/dist/pages.d.ts +3 -1
  250. package/packages/core/dist/pages.d.ts.map +1 -1
  251. package/packages/core/dist/pages.js +6 -1
  252. package/packages/core/dist/pages.js.map +1 -1
  253. package/packages/core/dist/plugin/index.d.ts +1 -1
  254. package/packages/core/dist/plugin/index.d.ts.map +1 -1
  255. package/packages/core/dist/plugin/index.js.map +1 -1
  256. package/packages/core/dist/plugin/version.d.ts +1 -1
  257. package/packages/core/dist/plugin/version.js +1 -1
  258. package/packages/core/dist/queue/failures.d.ts +84 -0
  259. package/packages/core/dist/queue/failures.d.ts.map +1 -0
  260. package/packages/core/dist/queue/failures.js +195 -0
  261. package/packages/core/dist/queue/failures.js.map +1 -0
  262. package/packages/core/dist/queue/index.d.ts +1 -0
  263. package/packages/core/dist/queue/index.d.ts.map +1 -1
  264. package/packages/core/dist/queue/index.js +1 -0
  265. package/packages/core/dist/queue/index.js.map +1 -1
  266. package/packages/core/dist/queue/jobs.d.ts +39 -3
  267. package/packages/core/dist/queue/jobs.d.ts.map +1 -1
  268. package/packages/core/dist/queue/jobs.js +54 -4
  269. package/packages/core/dist/queue/jobs.js.map +1 -1
  270. package/packages/core/dist/queue/types.d.ts +20 -0
  271. package/packages/core/dist/queue/types.d.ts.map +1 -1
  272. package/packages/core/dist/queue/types.js +17 -0
  273. package/packages/core/dist/queue/types.js.map +1 -1
  274. package/packages/core/dist/secrets/settings.d.ts.map +1 -1
  275. package/packages/core/dist/secrets/settings.js +23 -3
  276. package/packages/core/dist/secrets/settings.js.map +1 -1
  277. package/packages/core/dist/sentinels/digest.d.ts +8 -1
  278. package/packages/core/dist/sentinels/digest.d.ts.map +1 -1
  279. package/packages/core/dist/sentinels/digest.js +10 -3
  280. package/packages/core/dist/sentinels/digest.js.map +1 -1
  281. package/packages/core/dist/sentinels/index.d.ts +1 -0
  282. package/packages/core/dist/sentinels/index.d.ts.map +1 -1
  283. package/packages/core/dist/sentinels/index.js +1 -0
  284. package/packages/core/dist/sentinels/index.js.map +1 -1
  285. package/packages/core/dist/sentinels/mutes.d.ts +51 -0
  286. package/packages/core/dist/sentinels/mutes.d.ts.map +1 -0
  287. package/packages/core/dist/sentinels/mutes.js +86 -0
  288. package/packages/core/dist/sentinels/mutes.js.map +1 -0
  289. package/packages/core/dist/sentinels/run.d.ts +14 -4
  290. package/packages/core/dist/sentinels/run.d.ts.map +1 -1
  291. package/packages/core/dist/sentinels/run.js +64 -20
  292. package/packages/core/dist/sentinels/run.js.map +1 -1
  293. package/packages/core/dist/sentinels/types.d.ts +152 -2
  294. package/packages/core/dist/sentinels/types.d.ts.map +1 -1
  295. package/packages/core/dist/sentinels/types.js +126 -2
  296. package/packages/core/dist/sentinels/types.js.map +1 -1
  297. package/packages/core/dist/views.d.ts +112 -112
  298. package/packages/core/dist/views.d.ts.map +1 -1
  299. package/packages/core/dist/views.js +2 -0
  300. package/packages/core/dist/views.js.map +1 -1
  301. package/packages/core/migrations/066_alert_decisions.sql +45 -0
  302. package/packages/core/migrations/067_job_acknowledged.sql +21 -0
  303. package/packages/gateway/dist/.tsbuildinfo +1 -1
  304. package/packages/gateway/dist/chat/conversations.d.ts.map +1 -1
  305. package/packages/gateway/dist/chat/conversations.js +8 -2
  306. package/packages/gateway/dist/chat/conversations.js.map +1 -1
  307. package/packages/gateway/dist/missions/execute.d.ts.map +1 -1
  308. package/packages/gateway/dist/missions/execute.js +36 -2
  309. package/packages/gateway/dist/missions/execute.js.map +1 -1
  310. package/packages/gateway/dist/missions/goals.d.ts +12 -1
  311. package/packages/gateway/dist/missions/goals.d.ts.map +1 -1
  312. package/packages/gateway/dist/missions/goals.js +21 -1
  313. package/packages/gateway/dist/missions/goals.js.map +1 -1
  314. package/packages/gateway/dist/missions/sentinel-wake.d.ts +3 -0
  315. package/packages/gateway/dist/missions/sentinel-wake.d.ts.map +1 -1
  316. package/packages/gateway/dist/missions/sentinel-wake.js +4 -1
  317. package/packages/gateway/dist/missions/sentinel-wake.js.map +1 -1
  318. package/packages/gateway/dist/surfaces/offered-actions.d.ts +17 -0
  319. package/packages/gateway/dist/surfaces/offered-actions.d.ts.map +1 -1
  320. package/packages/gateway/dist/surfaces/offered-actions.js +27 -0
  321. package/packages/gateway/dist/surfaces/offered-actions.js.map +1 -1
  322. package/packages/gateway/dist/web/alerts.d.ts +179 -0
  323. package/packages/gateway/dist/web/alerts.d.ts.map +1 -0
  324. package/packages/gateway/dist/web/alerts.js +363 -0
  325. package/packages/gateway/dist/web/alerts.js.map +1 -0
  326. package/packages/gateway/dist/web/api-routes.d.ts.map +1 -1
  327. package/packages/gateway/dist/web/api-routes.js +45 -6
  328. package/packages/gateway/dist/web/api-routes.js.map +1 -1
  329. package/packages/gateway/dist/web/chat.d.ts +1 -0
  330. package/packages/gateway/dist/web/chat.d.ts.map +1 -1
  331. package/packages/gateway/dist/web/chat.js +4 -3
  332. package/packages/gateway/dist/web/chat.js.map +1 -1
  333. package/packages/gateway/dist/web/lock.d.ts +7 -4
  334. package/packages/gateway/dist/web/lock.d.ts.map +1 -1
  335. package/packages/gateway/dist/web/lock.js +20 -14
  336. package/packages/gateway/dist/web/lock.js.map +1 -1
  337. package/packages/gateway/dist/web/plugins.d.ts.map +1 -1
  338. package/packages/gateway/dist/web/plugins.js +17 -3
  339. package/packages/gateway/dist/web/plugins.js.map +1 -1
  340. package/packages/gateway/dist/web/read.d.ts +52 -26
  341. package/packages/gateway/dist/web/read.d.ts.map +1 -1
  342. package/packages/gateway/dist/web/read.js +52 -36
  343. package/packages/gateway/dist/web/read.js.map +1 -1
  344. package/packages/gateway/dist/web/secrets.d.ts +61 -1
  345. package/packages/gateway/dist/web/secrets.d.ts.map +1 -1
  346. package/packages/gateway/dist/web/secrets.js +111 -3
  347. package/packages/gateway/dist/web/secrets.js.map +1 -1
  348. package/packages/gateway/dist/web/server.d.ts.map +1 -1
  349. package/packages/gateway/dist/web/server.js +125 -9
  350. package/packages/gateway/dist/web/server.js.map +1 -1
  351. package/packages/gateway/dist/web/widgets.d.ts +1 -0
  352. package/packages/gateway/dist/web/widgets.d.ts.map +1 -1
  353. package/packages/gateway/dist/web/widgets.js +6 -1
  354. package/packages/gateway/dist/web/widgets.js.map +1 -1
  355. package/packages/gateway/dist/web/write.d.ts +23 -0
  356. package/packages/gateway/dist/web/write.d.ts.map +1 -1
  357. package/packages/gateway/dist/web/write.js +46 -1
  358. package/packages/gateway/dist/web/write.js.map +1 -1
  359. package/packages/install/dist/.tsbuildinfo +1 -1
  360. package/packages/runtime/dist/.tsbuildinfo +1 -1
  361. package/packages/runtime/dist/anthropic.d.ts +6 -0
  362. package/packages/runtime/dist/anthropic.d.ts.map +1 -1
  363. package/packages/runtime/dist/anthropic.js.map +1 -1
  364. package/packages/runtime/dist/openai.d.ts +34 -1
  365. package/packages/runtime/dist/openai.d.ts.map +1 -1
  366. package/packages/runtime/dist/openai.js +66 -12
  367. package/packages/runtime/dist/openai.js.map +1 -1
  368. package/packages/tools/artifacts/dist/.tsbuildinfo +1 -1
  369. package/packages/tools/browser/dist/.tsbuildinfo +1 -1
  370. package/packages/tools/email/dist/.tsbuildinfo +1 -1
  371. package/packages/tools/email/dist/agent.js +1 -1
  372. package/packages/tools/email/dist/imap/imapflow-client.d.ts +8 -0
  373. package/packages/tools/email/dist/imap/imapflow-client.d.ts.map +1 -1
  374. package/packages/tools/email/dist/imap/imapflow-client.js +59 -4
  375. package/packages/tools/email/dist/imap/imapflow-client.js.map +1 -1
  376. package/packages/tools/email/dist/mail.d.ts +42 -0
  377. package/packages/tools/email/dist/mail.d.ts.map +1 -1
  378. package/packages/tools/email/dist/mail.js +116 -0
  379. package/packages/tools/email/dist/mail.js.map +1 -1
  380. package/packages/tools/email/dist/mailbox/select.d.ts +6 -0
  381. package/packages/tools/email/dist/mailbox/select.d.ts.map +1 -1
  382. package/packages/tools/email/dist/mailbox/select.js +11 -0
  383. package/packages/tools/email/dist/mailbox/select.js.map +1 -1
  384. package/packages/tools/email/dist/metrics.d.ts +5 -6
  385. package/packages/tools/email/dist/metrics.d.ts.map +1 -1
  386. package/packages/tools/email/dist/metrics.js +4 -5
  387. package/packages/tools/email/dist/metrics.js.map +1 -1
  388. package/packages/tools/email/dist/needs-you.d.ts +58 -0
  389. package/packages/tools/email/dist/needs-you.d.ts.map +1 -0
  390. package/packages/tools/email/dist/needs-you.js +97 -0
  391. package/packages/tools/email/dist/needs-you.js.map +1 -0
  392. package/packages/tools/email/dist/pages/descriptors.d.ts.map +1 -1
  393. package/packages/tools/email/dist/pages/descriptors.js +110 -78
  394. package/packages/tools/email/dist/pages/descriptors.js.map +1 -1
  395. package/packages/tools/email/dist/pages/drafts-tools.d.ts +2 -2
  396. package/packages/tools/email/dist/pages/queries.d.ts +7 -0
  397. package/packages/tools/email/dist/pages/queries.d.ts.map +1 -1
  398. package/packages/tools/email/dist/pages/queries.js +31 -3
  399. package/packages/tools/email/dist/pages/queries.js.map +1 -1
  400. package/packages/tools/email/dist/ports.d.ts +8 -0
  401. package/packages/tools/email/dist/ports.d.ts.map +1 -1
  402. package/packages/tools/email/dist/ports.js.map +1 -1
  403. package/packages/tools/email/dist/sentinels/suspicious-sender.d.ts.map +1 -1
  404. package/packages/tools/email/dist/sentinels/suspicious-sender.js +4 -1
  405. package/packages/tools/email/dist/sentinels/suspicious-sender.js.map +1 -1
  406. package/packages/tools/email/dist/sentinels/waiting-on-me.d.ts +18 -21
  407. package/packages/tools/email/dist/sentinels/waiting-on-me.d.ts.map +1 -1
  408. package/packages/tools/email/dist/sentinels/waiting-on-me.js +39 -63
  409. package/packages/tools/email/dist/sentinels/waiting-on-me.js.map +1 -1
  410. package/packages/tools/email/dist/sources/inbox-poll.d.ts.map +1 -1
  411. package/packages/tools/email/dist/sources/inbox-poll.js +3 -2
  412. package/packages/tools/email/dist/sources/inbox-poll.js.map +1 -1
  413. package/packages/tools/email/dist/suspicions-store.d.ts +6 -0
  414. package/packages/tools/email/dist/suspicions-store.d.ts.map +1 -1
  415. package/packages/tools/email/dist/suspicions-store.js +16 -1
  416. package/packages/tools/email/dist/suspicions-store.js.map +1 -1
  417. package/packages/tools/email/dist/threads.d.ts +17 -2
  418. package/packages/tools/email/dist/threads.d.ts.map +1 -1
  419. package/packages/tools/email/dist/threads.js +35 -14
  420. package/packages/tools/email/dist/threads.js.map +1 -1
  421. package/packages/tools/email/dist/tools/mailbox.d.ts +3 -0
  422. package/packages/tools/email/dist/tools/mailbox.d.ts.map +1 -1
  423. package/packages/tools/email/dist/tools/mailbox.js +5 -0
  424. package/packages/tools/email/dist/tools/mailbox.js.map +1 -1
  425. package/packages/tools/email/dist/tools/threads.d.ts +7 -3
  426. package/packages/tools/email/dist/tools/threads.d.ts.map +1 -1
  427. package/packages/tools/email/dist/tools/threads.js +18 -5
  428. package/packages/tools/email/dist/tools/threads.js.map +1 -1
  429. package/packages/tools/email/dist/watchers.d.ts +91 -7
  430. package/packages/tools/email/dist/watchers.d.ts.map +1 -1
  431. package/packages/tools/email/dist/watchers.js +164 -1
  432. package/packages/tools/email/dist/watchers.js.map +1 -1
  433. package/packages/tools/email/dist/widgets.d.ts +3 -2
  434. package/packages/tools/email/dist/widgets.d.ts.map +1 -1
  435. package/packages/tools/email/dist/widgets.js +2 -2
  436. package/packages/tools/email/dist/widgets.js.map +1 -1
  437. package/packages/tools/email/migrations/023_attention.sql +100 -0
  438. package/packages/tools/email/migrations/024_auth_domain.sql +9 -0
  439. package/packages/tools/email/migrations/025_thread_ignore.sql +77 -0
  440. package/packages/tools/email/package.json +1 -1
  441. package/packages/tools/host/dist/.tsbuildinfo +1 -1
  442. package/packages/tools/mcp/dist/.tsbuildinfo +1 -1
  443. package/packages/tools/memory/dist/.tsbuildinfo +1 -1
  444. package/packages/tools/web/dist/.tsbuildinfo +1 -1
  445. package/packages/web/dist/assets/earth-2560-Ce3xs8Cb.webp +0 -0
  446. package/packages/web/dist/assets/earth-phone-BqC7cDhk.webp +0 -0
  447. package/packages/web/dist/assets/index-WS4UjGsy.js +129 -0
  448. package/packages/web/dist/assets/index-Zrt_o2UG.css +1 -0
  449. package/packages/web/dist/assets/{lottie_light-Cdn77Osu.js → lottie_light-Ls7i1ATS.js} +1 -1
  450. package/packages/web/dist/build.json +1 -1
  451. package/packages/web/dist/index.html +2 -2
  452. package/packages/web/dist/precache.json +4 -4
  453. package/packages/web/dist/sw.js +3 -2
  454. package/packages/web/dist/assets/index-D8_tmf2k.js +0 -131
  455. package/packages/web/dist/assets/index-DYQyioa6.css +0 -1
@@ -0,0 +1,195 @@
1
+ import { describeFailure } from '../failures/owner-message.js';
2
+ import { listJobs } from './jobs.js';
3
+ const HOUR = 3_600_000;
4
+ /** The provider a message is about, when it says. */
5
+ function providerOf(message) {
6
+ if (/gemini|generativelanguage|ai\.google\.dev|googleapis/i.test(message))
7
+ return 'Gemini';
8
+ if (/anthropic|claude/i.test(message))
9
+ return 'Claude';
10
+ if (/openrouter/i.test(message))
11
+ return 'OpenRouter';
12
+ if (/chatgpt|codex/i.test(message))
13
+ return 'ChatGPT';
14
+ if (/openai|gpt-/i.test(message))
15
+ return 'OpenAI';
16
+ if (/ollama/i.test(message))
17
+ return 'Ollama';
18
+ return null;
19
+ }
20
+ /** The HTTP status, from the policy's line ("the provider answered 429") or the message's start. */
21
+ function statusOf(message, reason) {
22
+ const fromReason = /answered (\d{3})\b/.exec(reason)?.[1];
23
+ if (fromReason)
24
+ return Number(fromReason);
25
+ const lead = /^\s*(?:Error:\s*)?(\d{3})\b/.exec(message)?.[1];
26
+ if (lead && Number(lead) >= 400 && Number(lead) < 600)
27
+ return Number(lead);
28
+ const coded = /"code"\s*:\s*(\d{3})\b/.exec(message)?.[1];
29
+ return coded ? Number(coded) : null;
30
+ }
31
+ const slug = (s) => s.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '');
32
+ /**
33
+ * The first line with what varies between occurrences taken out: ids, numbers,
34
+ * quoted values, URLs. Two failures with the same shape have the same text.
35
+ */
36
+ export function failureShape(message) {
37
+ const first = (message.split('\n').find((l) => l.trim() !== '') ?? '').trim();
38
+ return first
39
+ .replace(/https?:\/\/\S+/g, '<url>')
40
+ .replace(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/gi, '<id>')
41
+ .replace(/(["'`“])[^"'`”]{0,200}(["'`”])/g, '<value>')
42
+ .replace(/\b[0-9a-f]{12,}\b/gi, '<id>')
43
+ .replace(/\d+(?:\.\d+)?/g, '#')
44
+ .replace(/\s+/g, ' ')
45
+ .slice(0, 120);
46
+ }
47
+ /** What broke one failed job. Total: it never throws. */
48
+ export function failureCause(input) {
49
+ const message = input.lastError ?? '';
50
+ const reason = input.failureReason ?? '';
51
+ const age = input.now.getTime() - input.diedAt.getTime();
52
+ const status = statusOf(message, reason);
53
+ const provider = providerOf(message);
54
+ const who = provider ?? 'The provider';
55
+ if (/thought_signature/i.test(message)) {
56
+ return {
57
+ key: 'gemini-thought-signature',
58
+ label: 'Gemini thought_signature (400)',
59
+ reason: 'Gemini refused the turn after a tool call because buddi did not send back the signature Google attaches to each call. ' +
60
+ 'That was a defect in buddi, fixed since, so running them again should work.',
61
+ likelyFixed: true,
62
+ };
63
+ }
64
+ if (/^no handler for job kind/i.test(message)) {
65
+ const kind = /"([^"]+)"/.exec(message)?.[1] ?? 'this kind';
66
+ return {
67
+ key: `no-handler-${slug(kind)}`,
68
+ label: `Nothing runs ${kind} jobs`,
69
+ reason: 'Nothing in this buddi runs this kind of job, usually because the plugin that did was removed. A retry helps only once it is back.',
70
+ likelyFixed: false,
71
+ };
72
+ }
73
+ const daily = /per ?day|daily|PerDay|requests a day/i.test(message);
74
+ if (status === 429 || /exceeded your current quota|resource[_ ]exhausted|rate.?limit|too many requests|quota/i.test(message)) {
75
+ const label = `${provider ?? 'Provider'} quota (429)`;
76
+ return {
77
+ key: `${slug(provider ?? 'provider')}-quota`,
78
+ label,
79
+ reason: daily
80
+ ? `${who} said the account had used up its allowance for the day. Daily quotas reset on their own (Google's at midnight Pacific), so once a day has passed these can run.`
81
+ : `${who} refused because the account had used up its quota or was sending too fast. That passes on its own, usually within a day; if it keeps happening, give the agent another account in Settings → Model accounts.`,
82
+ likelyFixed: age > 24 * HOUR,
83
+ };
84
+ }
85
+ if (status === 401 || status === 403 || /api key|x-api-key|unauthori[sz]ed|authentication|permission denied|credential|environment variable [A-Z0-9_]+ is (not set|empty)/i.test(message)) {
86
+ return {
87
+ key: `${slug(provider ?? 'provider')}-credential`,
88
+ label: `${provider ?? 'Provider'} refused the key${status ? ` (${status})` : ''}`,
89
+ reason: `${who} refused the key or sign-in the agent uses. Change it in Settings → Model accounts first; until then a retry fails the same way.`,
90
+ likelyFixed: false,
91
+ };
92
+ }
93
+ if (/fetch failed|ECONNRESET|ECONNREFUSED|ETIMEDOUT|ENOTFOUND|EAI_AGAIN|UND_ERR|socket hang up|network|timed? ?out/i.test(message) || /connection failed/.test(reason)) {
94
+ return {
95
+ key: 'connection',
96
+ label: 'Connection failed',
97
+ reason: 'buddi could not reach the provider, try after try, until it gave up. That is a network or provider outage, and those pass.',
98
+ likelyFixed: age > HOUR,
99
+ };
100
+ }
101
+ if (/^lease expired$/i.test(message.trim())) {
102
+ return {
103
+ key: 'interrupted',
104
+ label: 'Interrupted',
105
+ reason: 'buddi stopped while these were running, more times than they are allowed to start over.',
106
+ likelyFixed: true,
107
+ };
108
+ }
109
+ // Anything else: grouped by status and shape, said the way a chat turn would say it.
110
+ const shape = failureShape(message) || 'no error recorded';
111
+ const described = describeFailure(Object.assign(new Error(message || 'failed'), status ? { status } : {}), { now: input.now });
112
+ const first = (message.split('\n').find((l) => l.trim() !== '') ?? '').trim();
113
+ const title = first.length > 64 ? `${first.slice(0, 63).trimEnd()}…` : first || 'Failed without an error';
114
+ return {
115
+ key: `other-${status ?? 'x'}-${slug(shape).slice(0, 80)}`,
116
+ label: status ? `${title} (${status})` : title,
117
+ reason: described.text,
118
+ likelyFixed: described.class === 'transient' || (input.failureClass === 'transient'),
119
+ };
120
+ }
121
+ /** Group failed jobs by cause, the most recent group first. Pure. */
122
+ export function groupFailures(jobs, now) {
123
+ const groups = new Map();
124
+ for (const item of jobs) {
125
+ const cause = failureCause({
126
+ lastError: item.job.lastError,
127
+ failureReason: item.failureReason ?? null,
128
+ failureClass: item.failureClass ?? null,
129
+ diedAt: item.job.updatedAt,
130
+ now,
131
+ });
132
+ const { failureReason: _r, failureClass: _c, ...failed } = item;
133
+ const group = groups.get(cause.key);
134
+ if (!group) {
135
+ groups.set(cause.key, { ...cause, jobs: [failed], count: 1, firstAt: item.job.updatedAt, lastAt: item.job.updatedAt, agentIds: [] });
136
+ continue;
137
+ }
138
+ group.jobs.push(failed);
139
+ group.count += 1;
140
+ if (item.job.updatedAt < group.firstAt)
141
+ group.firstAt = item.job.updatedAt;
142
+ if (item.job.updatedAt > group.lastAt)
143
+ group.lastAt = item.job.updatedAt;
144
+ // Worth retrying only if every job's cause says so: one recent failure
145
+ // means the cause may still be there.
146
+ if (!cause.likelyFixed)
147
+ group.likelyFixed = false;
148
+ }
149
+ for (const group of groups.values()) {
150
+ group.jobs.sort((a, b) => b.job.updatedAt.getTime() - a.job.updatedAt.getTime());
151
+ const tally = new Map();
152
+ for (const j of group.jobs)
153
+ if (j.agentId)
154
+ tally.set(j.agentId, (tally.get(j.agentId) ?? 0) + 1);
155
+ group.agentIds = [...tally].sort((a, b) => b[1] - a[1]).map(([id]) => id);
156
+ }
157
+ return [...groups.values()].sort((a, b) => b.lastAt.getTime() - a.lastAt.getTime());
158
+ }
159
+ const str = (v) => (typeof v === 'string' && v.trim() !== '' ? v : null);
160
+ /**
161
+ * The failed jobs, grouped: the ones still asking for the owner (`open`), or
162
+ * the ones he dismissed and the ones quiet by age (`dismissed`). Bounded.
163
+ */
164
+ export async function listFailureGroups(pool, input) {
165
+ const jobs = await listJobs(pool, { state: 'failed', failed: input.which, limit: input.limit ?? 500 });
166
+ if (jobs.length === 0)
167
+ return [];
168
+ const ids = jobs.map((j) => j.id);
169
+ const { rows: events } = await pool.query(`select distinct on (payload->>'jobId') payload->>'jobId' as job_id,
170
+ payload->>'failureReason' as reason, payload->>'failureClass' as class
171
+ from core.events
172
+ where kind = 'job.failed' and payload->>'jobId' = any($1::text[])
173
+ order by payload->>'jobId', id desc`, [ids]);
174
+ const why = new Map(events.map((e) => [e.job_id, e]));
175
+ const missionIds = [...new Set(jobs.map((j) => str(j.payload?.missionId)).filter((v) => v !== null))];
176
+ const { rows: missions } = missionIds.length === 0
177
+ ? { rows: [] }
178
+ : await pool.query(`select id, name, agent_id from core.missions where id = any($1::text[])`, [missionIds]);
179
+ const mission = new Map(missions.map((m) => [m.id, m]));
180
+ return groupFailures(jobs.map((job) => {
181
+ const payload = (job.payload ?? {});
182
+ const missionId = str(payload.missionId);
183
+ const m = missionId ? mission.get(missionId) : undefined;
184
+ const e = why.get(job.id);
185
+ return {
186
+ job,
187
+ agentId: str(payload.agentId) ?? m?.agent_id ?? null,
188
+ missionId,
189
+ missionName: m?.name ?? null,
190
+ failureReason: e?.reason ?? null,
191
+ failureClass: e?.class ?? null,
192
+ };
193
+ }), input.now);
194
+ }
195
+ //# sourceMappingURL=failures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"failures.js","sourceRoot":"","sources":["../../src/queue/failures.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ export * from './flags.js';
3
3
  export * from './retry-policy.js';
4
4
  export * from './jobs.js';
5
5
  export * from './worker.js';
6
+ export * from './failures.js';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC"}
@@ -3,4 +3,5 @@ export * from './flags.js';
3
3
  export * from './retry-policy.js';
4
4
  export * from './jobs.js';
5
5
  export * from './worker.js';
6
+ export * from './failures.js';
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC"}
@@ -135,8 +135,17 @@ export declare function getJobByDedupKey(pool: Pool, dedupKey: string): Promise<
135
135
  export type ListJobsInput = {
136
136
  state?: JobState;
137
137
  kind?: string;
138
- limit?: number; /** Skip this many, for the next page. */
138
+ limit?: number;
139
+ /** Skip this many, for the next page. */
139
140
  offset?: number;
141
+ /**
142
+ * Failed jobs only: `open` is the ones still asking for the owner (the
143
+ * footer's count), `dismissed` the ones he dismissed or that went quiet by
144
+ * age. Omitted: both.
145
+ */
146
+ failed?: 'open' | 'dismissed';
147
+ /** Leave out the dismissed failed jobs — the default view, which asks nothing of them. */
148
+ hideDismissed?: boolean;
140
149
  };
141
150
  /** The inspection path: newest first, bounded. */
142
151
  export declare function listJobs(pool: Pool, input?: ListJobsInput): Promise<Job[]>;
@@ -175,7 +184,34 @@ export declare function retryJobs(pool: Pool, input?: {
175
184
  state?: JobState;
176
185
  kind?: string;
177
186
  limit?: number;
187
+ /** Only these jobs (still only failed, cancelled or suspended ones). */
188
+ ids?: readonly string[];
189
+ /** Failed jobs only: the ones still asking, or the dismissed ones. Omitted: both. */
190
+ failed?: 'open' | 'dismissed';
191
+ }): Promise<Job[]>;
192
+ /**
193
+ * How many jobs sit in each state — `buddi doctor` prints exactly this.
194
+ *
195
+ * `failed` is the failed jobs still asking for the owner: the footer's count,
196
+ * Home's, the doctor's. The ones he dismissed, or that went quiet by age, are
197
+ * `dismissed` — still failed, still listed under history, asking nothing.
198
+ */
199
+ export type JobCounts = Record<JobState, number> & {
200
+ dismissed: number;
201
+ };
202
+ export declare function countJobsByState(pool: Pool): Promise<JobCounts>;
203
+ /**
204
+ * Dismiss failed jobs: they stop asking for the owner and stay on record.
205
+ *
206
+ * By ids, or every failed job still asking (`all`). Only failed jobs move;
207
+ * one already dismissed keeps the moment it was dismissed. Returns the jobs
208
+ * this call dismissed, so a surface can offer Undo for exactly those.
209
+ */
210
+ export declare function dismissJobs(pool: Pool, input: {
211
+ ids?: readonly string[];
212
+ all?: boolean;
213
+ by?: string;
178
214
  }): Promise<Job[]>;
179
- /** How many jobs sit in each state — `buddi doctor` prints exactly this. */
180
- export declare function countJobsByState(pool: Pool): Promise<Record<JobState, number>>;
215
+ /** Take a dismissal back (Undo): the jobs ask for the owner again. */
216
+ export declare function undismissJobs(pool: Pool, ids: readonly string[]): Promise<Job[]>;
181
217
  //# sourceMappingURL=jobs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../../src/queue/jobs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../../src/queue/jobs.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { appendEvent } from '../events.js';
2
2
  import { PAUSED_SQL } from './flags.js';
3
3
  import { retryProfileFor, UNATTENDED_JOB_KINDS, UNATTENDED_RETRY_PROFILE, } from './retry-policy.js';
4
- import { JOB_COLUMNS, RETRY_BASE_MS, RETRY_FACTOR, toJob, } from './types.js';
4
+ import { ACKNOWLEDGED_FAILED_SQL, JOB_COLUMNS, UNACKNOWLEDGED_FAILED_SQL, RETRY_BASE_MS, RETRY_FACTOR, toJob, } from './types.js';
5
5
  /** Put work on the queue. Idempotent when `dedupKey` is given. */
6
6
  export async function enqueue(pool, input) {
7
7
  if (!input.kind || input.kind.trim() === '')
@@ -108,6 +108,8 @@ export async function failJob(pool, jobId, worker, error, input = { retry: true
108
108
  else run_after end,
109
109
  lease_owner = null,
110
110
  lease_until = null,
111
+ acknowledged_at = null,
112
+ acknowledged_by = null,
111
113
  updated_at = now()
112
114
  where id = $1::uuid and state = 'leased' and lease_owner = $2
113
115
  returning ${JOB_COLUMNS}`, [jobId, worker, input.retry, error, input.backoffMs === undefined ? null : input.backoffMs / 1000]);
@@ -229,6 +231,8 @@ export async function retryJob(pool, jobId) {
229
231
  lease_owner = null,
230
232
  lease_until = null,
231
233
  suspended_reason = null,
234
+ acknowledged_at = null,
235
+ acknowledged_by = null,
232
236
  updated_at = now()
233
237
  where id = $1::uuid and state in ('failed', 'cancelled', 'suspended')
234
238
  returning ${JOB_COLUMNS}`, [jobId, [...UNATTENDED_JOB_KINDS], UNATTENDED_RETRY_PROFILE.maxAttempts]);
@@ -248,9 +252,13 @@ export async function getJobByDedupKey(pool, dedupKey) {
248
252
  }
249
253
  /** The inspection path: newest first, bounded. */
250
254
  export async function listJobs(pool, input = {}) {
255
+ const failed = input.failed === 'open' ? UNACKNOWLEDGED_FAILED_SQL
256
+ : input.failed === 'dismissed' ? ACKNOWLEDGED_FAILED_SQL
257
+ : input.hideDismissed ? `not ${ACKNOWLEDGED_FAILED_SQL}` : 'true';
251
258
  const { rows } = await pool.query(`select ${JOB_COLUMNS} from core.jobs
252
259
  where ($1::text is null or state = $1)
253
260
  and ($2::text is null or kind = $2)
261
+ and ${failed}
254
262
  order by created_at desc, id
255
263
  limit $3 offset $4`, [input.state ?? null, input.kind ?? null, Math.max(1, Math.min(input.limit ?? 50, 500)), Math.max(0, input.offset ?? 0)]);
256
264
  return rows.map(toJob);
@@ -291,6 +299,7 @@ export async function listDeadJobs(pool, input) {
291
299
  * written, because the queue's history is how anyone reconstructs an evening.
292
300
  */
293
301
  export async function retryJobs(pool, input = {}) {
302
+ const failed = input.failed === 'open' ? UNACKNOWLEDGED_FAILED_SQL : input.failed === 'dismissed' ? ACKNOWLEDGED_FAILED_SQL : 'true';
294
303
  const { rows } = await pool.query(`update core.jobs
295
304
  set state = 'pending',
296
305
  attempts = 0,
@@ -300,12 +309,16 @@ export async function retryJobs(pool, input = {}) {
300
309
  lease_owner = null,
301
310
  lease_until = null,
302
311
  suspended_reason = null,
312
+ acknowledged_at = null,
313
+ acknowledged_by = null,
303
314
  updated_at = now()
304
315
  where id in (
305
316
  select id from core.jobs
306
- where state = coalesce($1::text, 'failed')
317
+ where ($6::uuid[] is not null or state = coalesce($1::text, 'failed'))
318
+ and ($6::uuid[] is null or id = any($6::uuid[]))
307
319
  and ($2::text is null or kind = $2::text)
308
320
  and state in ('failed', 'cancelled', 'suspended')
321
+ and ${failed}
309
322
  order by updated_at
310
323
  limit $5
311
324
  )
@@ -315,6 +328,7 @@ export async function retryJobs(pool, input = {}) {
315
328
  [...UNATTENDED_JOB_KINDS],
316
329
  UNATTENDED_RETRY_PROFILE.maxAttempts,
317
330
  Math.max(1, Math.min(input.limit ?? 500, 1000)),
331
+ input.ids ? [...input.ids] : null,
318
332
  ]);
319
333
  const jobs = rows.map(toJob);
320
334
  for (const job of jobs) {
@@ -322,9 +336,10 @@ export async function retryJobs(pool, input = {}) {
322
336
  }
323
337
  return jobs;
324
338
  }
325
- /** How many jobs sit in each state — `buddi doctor` prints exactly this. */
326
339
  export async function countJobsByState(pool) {
327
- const { rows } = await pool.query(`select state, count(*)::text as n from core.jobs group by state`);
340
+ const { rows } = await pool.query(`select case when ${ACKNOWLEDGED_FAILED_SQL} then 'dismissed' else state end as state,
341
+ count(*)::text as n
342
+ from core.jobs group by 1`);
328
343
  const counts = {
329
344
  pending: 0,
330
345
  leased: 0,
@@ -332,9 +347,44 @@ export async function countJobsByState(pool) {
332
347
  failed: 0,
333
348
  suspended: 0,
334
349
  cancelled: 0,
350
+ dismissed: 0,
335
351
  };
336
352
  for (const row of rows)
337
353
  counts[row.state] = Number(row.n);
338
354
  return counts;
339
355
  }
356
+ /**
357
+ * Dismiss failed jobs: they stop asking for the owner and stay on record.
358
+ *
359
+ * By ids, or every failed job still asking (`all`). Only failed jobs move;
360
+ * one already dismissed keeps the moment it was dismissed. Returns the jobs
361
+ * this call dismissed, so a surface can offer Undo for exactly those.
362
+ */
363
+ export async function dismissJobs(pool, input) {
364
+ if (!input.all && (!input.ids || input.ids.length === 0))
365
+ return [];
366
+ const { rows } = await pool.query(`update core.jobs
367
+ set acknowledged_at = now(), acknowledged_by = $2
368
+ where ${UNACKNOWLEDGED_FAILED_SQL}
369
+ and ($1::uuid[] is null or id = any($1::uuid[]))
370
+ returning ${JOB_COLUMNS}`, [input.all ? null : [...(input.ids ?? [])], input.by ?? 'owner']);
371
+ const jobs = rows.map(toJob);
372
+ if (jobs.length > 0) {
373
+ await appendEvent(pool, 'job.dismissed', { jobIds: jobs.map((j) => j.id), by: input.by ?? 'owner' });
374
+ }
375
+ return jobs;
376
+ }
377
+ /** Take a dismissal back (Undo): the jobs ask for the owner again. */
378
+ export async function undismissJobs(pool, ids) {
379
+ if (ids.length === 0)
380
+ return [];
381
+ const { rows } = await pool.query(`update core.jobs
382
+ set acknowledged_at = null, acknowledged_by = null
383
+ where state = 'failed' and acknowledged_at is not null and id = any($1::uuid[])
384
+ returning ${JOB_COLUMNS}`, [[...ids]]);
385
+ const jobs = rows.map(toJob);
386
+ if (jobs.length > 0)
387
+ await appendEvent(pool, 'job.undismissed', { jobIds: jobs.map((j) => j.id) });
388
+ return jobs;
389
+ }
340
390
  //# sourceMappingURL=jobs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../src/queue/jobs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../src/queue/jobs.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,14 @@ export type Job = {
22
22
  conversationId: string | null;
23
23
  dedupKey: string | null;
24
24
  suspendedReason: string | null;
25
+ /**
26
+ * When a failed job stopped asking for the owner: dismissed by him, or
27
+ * quiet on its own once it is AUTO_QUIET_DAYS old. Null for every job that
28
+ * is not failed, and for a failed one still in the footer's count.
29
+ */
30
+ acknowledgedAt: Date | null;
31
+ /** `owner` when dismissed, `auto` when it went quiet by age. */
32
+ acknowledgedBy: string | null;
25
33
  createdAt: Date;
26
34
  updatedAt: Date;
27
35
  };
@@ -41,10 +49,22 @@ export type JobRow = {
41
49
  conversation_id: string | null;
42
50
  dedup_key: string | null;
43
51
  suspended_reason: string | null;
52
+ acknowledged_at: Date | null;
53
+ acknowledged_by: string | null;
44
54
  created_at: Date;
45
55
  updated_at: Date;
46
56
  };
47
57
  export declare function toJob(row: JobRow): Job;
58
+ /**
59
+ * A failed job older than this stops asking for the owner on its own: it
60
+ * leaves the footer's count and the Jobs page's list of decisions, and stays
61
+ * in the history. Read, not written — no sweeper has to have run.
62
+ */
63
+ export declare const AUTO_QUIET_DAYS = 14;
64
+ /** A failed job that still asks for the owner: not dismissed, not quiet by age. */
65
+ export declare const UNACKNOWLEDGED_FAILED_SQL = "(state = 'failed' and acknowledged_at is null and not (updated_at < now() - interval '14 days'))";
66
+ /** A failed job that no longer asks: dismissed, or quiet by age. */
67
+ export declare const ACKNOWLEDGED_FAILED_SQL = "(state = 'failed' and (acknowledged_at is not null or updated_at < now() - interval '14 days'))";
48
68
  export declare const JOB_COLUMNS: string;
49
69
  /**
50
70
  * Bounded retry with exponential backoff: 1m, 5m, 25m.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/queue/types.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,eAAO,MAAM,UAAU,iFAOb,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,EAAE,SAAS,QAAQ,EAAyC,CAAC;AAE7F,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,QAAQ,CAE3D;AAED,MAAM,MAAM,GAAG,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,IAAI,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,sEAAsE;IACtE,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,IAAI,CAAC;IACjB,UAAU,EAAE,IAAI,CAAC;CAClB,CAAC;AAEF,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAoBtC;AAED,eAAO,MAAM,WAAW,QAGE,CAAC;AAE3B;;;;;GAKG;AACH,eAAO,MAAM,aAAa,QAAS,CAAC;AACpC,eAAO,MAAM,YAAY,IAAI,CAAC;AAE9B,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAgB,GAAG,MAAM,CAG3E"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/queue/types.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,eAAO,MAAM,UAAU,iFAOb,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,EAAE,SAAS,QAAQ,EAAyC,CAAC;AAE7F,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,QAAQ,CAE3D;AAED,MAAM,MAAM,GAAG,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,IAAI,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,sEAAsE;IACtE,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;;OAIG;IACH,cAAc,EAAE,IAAI,GAAG,IAAI,CAAC;IAC5B,gEAAgE;IAChE,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,eAAe,EAAE,IAAI,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,IAAI,CAAC;IACjB,UAAU,EAAE,IAAI,CAAC;CAClB,CAAC;AAEF,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAsBtC;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,KAAK,CAAC;AAIlC,mFAAmF;AACnF,eAAO,MAAM,yBAAyB,qGACsC,CAAC;AAE7E,oEAAoE;AACpE,eAAO,MAAM,uBAAuB,oGACuC,CAAC;AAE5E,eAAO,MAAM,WAAW,QAOE,CAAC;AAE3B;;;;;GAKG;AACH,eAAO,MAAM,aAAa,QAAS,CAAC;AACpC,eAAO,MAAM,YAAY,IAAI,CAAC;AAE9B,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAgB,GAAG,MAAM,CAG3E"}
@@ -29,12 +29,29 @@ export function toJob(row) {
29
29
  conversationId: row.conversation_id,
30
30
  dedupKey: row.dedup_key,
31
31
  suspendedReason: row.suspended_reason,
32
+ acknowledgedAt: row.acknowledged_at ?? null,
33
+ acknowledgedBy: row.acknowledged_by ?? null,
32
34
  createdAt: row.created_at,
33
35
  updatedAt: row.updated_at,
34
36
  };
35
37
  }
38
+ /**
39
+ * A failed job older than this stops asking for the owner on its own: it
40
+ * leaves the footer's count and the Jobs page's list of decisions, and stays
41
+ * in the history. Read, not written — no sweeper has to have run.
42
+ */
43
+ export const AUTO_QUIET_DAYS = 14;
44
+ const QUIET_BY_AGE = `updated_at < now() - interval '${AUTO_QUIET_DAYS} days'`;
45
+ /** A failed job that still asks for the owner: not dismissed, not quiet by age. */
46
+ export const UNACKNOWLEDGED_FAILED_SQL = `(state = 'failed' and acknowledged_at is null and not (${QUIET_BY_AGE}))`;
47
+ /** A failed job that no longer asks: dismissed, or quiet by age. */
48
+ export const ACKNOWLEDGED_FAILED_SQL = `(state = 'failed' and (acknowledged_at is not null or ${QUIET_BY_AGE}))`;
36
49
  export const JOB_COLUMNS = 'id, kind, payload, state, priority, run_after, attempts, max_attempts, lease_owner, ' +
37
50
  'lease_until, last_error, result, conversation_id, dedup_key, suspended_reason, ' +
51
+ `case when state <> 'failed' then null when acknowledged_at is not null then acknowledged_at ` +
52
+ `when ${QUIET_BY_AGE} then updated_at + interval '${AUTO_QUIET_DAYS} days' end as acknowledged_at, ` +
53
+ `case when state <> 'failed' then null when acknowledged_at is not null then acknowledged_by ` +
54
+ `when ${QUIET_BY_AGE} then 'auto' end as acknowledged_by, ` +
38
55
  'created_at, updated_at';
39
56
  /**
40
57
  * Bounded retry with exponential backoff: 1m, 5m, 25m.
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/queue/types.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,SAAS;IACT,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,WAAW;IACX,WAAW;CACH,CAAC;AAIX,4CAA4C;AAC5C,MAAM,CAAC,MAAM,mBAAmB,GAAwB,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;AAE7F,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAQ,UAAgC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC3D,CAAC;AA4CD,MAAM,UAAU,KAAK,CAAC,GAAW;IAC/B,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,IAAI;QAC5B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,QAAQ,EAAE,GAAG,CAAC,SAAS;QACvB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI;QAC1B,cAAc,EAAE,GAAG,CAAC,eAAe;QACnC,QAAQ,EAAE,GAAG,CAAC,SAAS;QACvB,eAAe,EAAE,GAAG,CAAC,gBAAgB;QACrC,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GACtB,sFAAsF;IACtF,iFAAiF;IACjF,wBAAwB,CAAC;AAE3B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC;AACpC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC;AAE9B,MAAM,UAAU,UAAU,CAAC,QAAgB,EAAE,MAAM,GAAG,aAAa;IACjE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAChC,OAAO,MAAM,GAAG,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/queue/types.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,SAAS;IACT,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,WAAW;IACX,WAAW;CACH,CAAC;AAIX,4CAA4C;AAC5C,MAAM,CAAC,MAAM,mBAAmB,GAAwB,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;AAE7F,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAQ,UAAgC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC3D,CAAC;AAsDD,MAAM,UAAU,KAAK,CAAC,GAAW;IAC/B,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,IAAI;QAC5B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,QAAQ,EAAE,GAAG,CAAC,SAAS;QACvB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI;QAC1B,cAAc,EAAE,GAAG,CAAC,eAAe;QACnC,QAAQ,EAAE,GAAG,CAAC,SAAS;QACvB,eAAe,EAAE,GAAG,CAAC,gBAAgB;QACrC,cAAc,EAAE,GAAG,CAAC,eAAe,IAAI,IAAI;QAC3C,cAAc,EAAE,GAAG,CAAC,eAAe,IAAI,IAAI;QAC3C,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAElC,MAAM,YAAY,GAAG,kCAAkC,eAAe,QAAQ,CAAC;AAE/E,mFAAmF;AACnF,MAAM,CAAC,MAAM,yBAAyB,GACpC,0DAA0D,YAAY,IAAI,CAAC;AAE7E,oEAAoE;AACpE,MAAM,CAAC,MAAM,uBAAuB,GAClC,yDAAyD,YAAY,IAAI,CAAC;AAE5E,MAAM,CAAC,MAAM,WAAW,GACtB,sFAAsF;IACtF,iFAAiF;IACjF,8FAA8F;IAC9F,QAAQ,YAAY,gCAAgC,eAAe,iCAAiC;IACpG,8FAA8F;IAC9F,QAAQ,YAAY,uCAAuC;IAC3D,wBAAwB,CAAC;AAE3B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC;AACpC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC;AAE9B,MAAM,UAAU,UAAU,CAAC,QAAgB,EAAE,MAAM,GAAG,aAAa;IACjE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAChC,OAAO,MAAM,GAAG,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/secrets/settings.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAkB,eAAe,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAa7D,4DAA4D;AAC5D,UAAU,UAAU;IAClB,KAAK,EAAE,QAAQ,GAAG,UAAU,GAAG,cAAc,GAAG,oBAAoB,CAAC;IACrE,KAAK,EAAE,MAAM,CAAC;CACf;AAiQD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA1FL,eAAe;;;;;;;;;;;;;;;;;;;;;;YAqBf,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAgBf,eAAe;;;;;;;;;;;;;;;;;YAoBf,eAAe;;;;;;;;;;;;;;;;;YAiBf,eAAe;;;;IAgBoC,CAAC;AAChF,yFAAyF;AACzF,eAAO,MAAM,eAAe,EAAE,SAAS,EAAiB,CAAC;AAEzD,4EAA4E;AAC5E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA/FP,eAAe;;;;;;;;;;;;;;;;;;;;;;YAqBf,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAgBf,eAAe;;;;;;;;;;;;;;;;;YAoBf,eAAe;;;;;;;;;;;;;;;;;YAiBf,eAAe;;;;IAqBsC,CAAC"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/secrets/settings.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAkB,eAAe,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAa7D,4DAA4D;AAC5D,UAAU,UAAU;IAClB,KAAK,EAAE,QAAQ,GAAG,UAAU,GAAG,cAAc,GAAG,oBAAoB,CAAC;IACrE,KAAK,EAAE,MAAM,CAAC;CACf;AAuRD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA1FL,eAAe;;;;;;;;;;;;;;;;;;;;;;YAqBf,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAgBf,eAAe;;;;;;;;;;;;;;;;;YAoBf,eAAe;;;;;;;;;;;;;;;;;YAiBf,eAAe;;;;IAgBoC,CAAC;AAChF,yFAAyF;AACzF,eAAO,MAAM,eAAe,EAAE,SAAS,EAAiB,CAAC;AAEzD,4EAA4E;AAC5E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA/FP,eAAe;;;;;;;;;;;;;;;;;;;;;;YAqBf,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAgBf,eAAe;;;;;;;;;;;;;;;;;YAoBf,eAAe;;;;;;;;;;;;;;;;;YAiBf,eAAe;;;;IAqBsC,CAAC"}