@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
@@ -1 +1 @@
1
- {"version":3,"file":"imapflow-client.js","sourceRoot":"","sources":["../../src/imap/imapflow-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imapflow-client.js","sourceRoot":"","sources":["../../src/imap/imapflow-client.ts"],"names":[],"mappings":"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"}
@@ -324,6 +324,48 @@ export declare function triagePrompt(input: {
324
324
  export declare const MAX_FUTURE_SKEW_MS: number;
325
325
  /** Clamp a header date to at most one day ahead of `now`. Null passes through. */
326
326
  export declare function clampFutureDate(date: Date | null, now: Date): Date | null;
327
+ /** The domain of an address, lowercased; '' when there is none. */
328
+ export declare function domainOf(raw: string): string;
329
+ /** Same organisation, relaxed: one is the other or a subdomain of it, and neither is a bare TLD. */
330
+ export declare function alignedDomains(a: string, b: string): boolean;
331
+ /**
332
+ * The From domain, when the receiving server's `Authentication-Results` says
333
+ * the message really came from it — or null.
334
+ *
335
+ * Passes, in order of strength: DMARC for the From domain itself; DKIM signed
336
+ * by a domain aligned with it (`header.d`, or `header.i`'s domain); SPF for an
337
+ * envelope sender aligned with it (`smtp.mailfrom`). Alignment is relaxed
338
+ * (`accounts.google.com` and `google.com` are one organisation). Anything
339
+ * else — a fail, a neutral, a pass for some unrelated relay's domain — is
340
+ * null. The header passed in must be the owner's own receiving server's
341
+ * (`trustedAuthResults`): a sender can write any number of forged ones.
342
+ */
343
+ export declare function authenticatedDomain(authResults: string | null | undefined, from: string): string | null;
344
+ /**
345
+ * The authserv-id of one `Authentication-Results` header (RFC 8601): the
346
+ * token before the first `;`, comments and the version number aside,
347
+ * lowercased. '' when the header carries none — Microsoft's, for one, starts
348
+ * straight with `spf=pass`.
349
+ */
350
+ export declare function authservIdOf(header: string): string;
351
+ /**
352
+ * Is `id` the authserv-id of the mailbox's own receiving server? A known
353
+ * provider's table entry when the IMAP host is one of theirs; otherwise the
354
+ * IMAP host's own organisation domain (`mx1.example.org` for
355
+ * `imap.example.org`). Nothing else — not a relay, not a sender.
356
+ */
357
+ export declare function authservMatches(id: string, imapHost: string): boolean;
358
+ /**
359
+ * The `Authentication-Results` header the owner's own receiving server wrote,
360
+ * or null. Of the message's headers, in order from the top, the first whose
361
+ * authserv-id is that server's (`authservMatches`): a border server writes its
362
+ * verdict on top and removes any older copy of its own id (RFC 8601 §5), so a
363
+ * header with another id — a relay's, or one the sender wrote — is never read,
364
+ * and a forged copy of the right id sits below the real one. No such header
365
+ * (Microsoft writes none with an id) means unauthenticated: the watchers then
366
+ * warn more, never less.
367
+ */
368
+ export declare function trustedAuthResults(headers: readonly string[], imapHost: string): string | null;
327
369
  /** A message as ingest stores it, derived once from what the port returned. */
328
370
  export interface IngestedMessage extends FetchedMessage {
329
371
  threadKey: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../src/mail.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../src/mail.ts"],"names":[],"mappings":"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"}
@@ -445,6 +445,122 @@ export function clampFutureDate(date, now) {
445
445
  const limit = now.getTime() + MAX_FUTURE_SKEW_MS;
446
446
  return date.getTime() > limit ? new Date(limit) : date;
447
447
  }
448
+ /** The domain of an address, lowercased; '' when there is none. */
449
+ export function domainOf(raw) {
450
+ const address = normalizeAddress(raw);
451
+ const at = address.lastIndexOf('@');
452
+ return at < 0 ? '' : address.slice(at + 1).replace(/\.$/, '');
453
+ }
454
+ /** Same organisation, relaxed: one is the other or a subdomain of it, and neither is a bare TLD. */
455
+ export function alignedDomains(a, b) {
456
+ if (a === '' || b === '' || !a.includes('.') || !b.includes('.'))
457
+ return false;
458
+ return a === b || a.endsWith(`.${b}`) || b.endsWith(`.${a}`);
459
+ }
460
+ /**
461
+ * The From domain, when the receiving server's `Authentication-Results` says
462
+ * the message really came from it — or null.
463
+ *
464
+ * Passes, in order of strength: DMARC for the From domain itself; DKIM signed
465
+ * by a domain aligned with it (`header.d`, or `header.i`'s domain); SPF for an
466
+ * envelope sender aligned with it (`smtp.mailfrom`). Alignment is relaxed
467
+ * (`accounts.google.com` and `google.com` are one organisation). Anything
468
+ * else — a fail, a neutral, a pass for some unrelated relay's domain — is
469
+ * null. The header passed in must be the owner's own receiving server's
470
+ * (`trustedAuthResults`): a sender can write any number of forged ones.
471
+ */
472
+ export function authenticatedDomain(authResults, from) {
473
+ const fromDomain = domainOf(from);
474
+ if (!authResults || fromDomain === '')
475
+ return null;
476
+ const text = authResults.toLowerCase();
477
+ const results = [...text.matchAll(/\b(dkim|spf|dmarc)\s*=\s*([a-z]+)([^;]*)/g)];
478
+ for (const [, method, verdict, rest] of results) {
479
+ if (verdict !== 'pass')
480
+ continue;
481
+ const prop = (name) => {
482
+ const m = new RegExp(`\\b${name.replace('.', '\\.')}\\s*=\\s*"?([^\\s;"]+)`).exec(rest ?? '');
483
+ return m?.[1] ?? '';
484
+ };
485
+ const domain = method === 'dmarc'
486
+ ? prop('header.from')
487
+ : method === 'dkim'
488
+ ? prop('header.d') || prop('header.i').replace(/^.*@/, '')
489
+ : prop('smtp.mailfrom').replace(/^.*@/, '');
490
+ if (alignedDomains(domain.replace(/\.$/, ''), fromDomain))
491
+ return fromDomain;
492
+ }
493
+ return null;
494
+ }
495
+ /**
496
+ * The authserv-id of one `Authentication-Results` header (RFC 8601): the
497
+ * token before the first `;`, comments and the version number aside,
498
+ * lowercased. '' when the header carries none — Microsoft's, for one, starts
499
+ * straight with `spf=pass`.
500
+ */
501
+ export function authservIdOf(header) {
502
+ const head = (header.split(';')[0] ?? '').replace(/\([^)]*\)/g, ' ').trim().toLowerCase();
503
+ const token = head.split(/\s+/)[0] ?? '';
504
+ return token.includes('=') ? '' : token.replace(/\.$/, '');
505
+ }
506
+ /**
507
+ * The receiving servers of the big providers, by IMAP host. `exact` ids are
508
+ * matched whole (Gmail always writes `mx.google.com`), `suffixes` match the
509
+ * domain or any subdomain of it (Fastmail's `mx6.messagingengine.com`).
510
+ */
511
+ const KNOWN_RECEIVERS = [
512
+ { hosts: ['imap.gmail.com', 'imap.googlemail.com'], exact: ['mx.google.com'] },
513
+ { hosts: ['outlook.office365.com', 'imap-mail.outlook.com', 'imap.outlook.com'], suffixes: ['outlook.com'] },
514
+ { hosts: ['imap.fastmail.com'], suffixes: ['messagingengine.com', 'fastmail.com'] },
515
+ { hosts: ['imap.mail.me.com'], suffixes: ['icloud.com', 'me.com'] },
516
+ { hosts: ['imap.mail.yahoo.com', 'export.imap.mail.yahoo.com'], suffixes: ['yahoo.com'] },
517
+ { hosts: ['imap.aol.com'], suffixes: ['aol.com', 'yahoo.com'] },
518
+ { hosts: ['imap.zoho.com', 'imap.zoho.eu'], suffixes: ['zoho.com', 'zoho.eu'] },
519
+ { hosts: ['127.0.0.1', 'localhost'], suffixes: [] },
520
+ ];
521
+ /** Second-level labels under which a registrable domain takes three labels (`example.co.uk`). */
522
+ const SHORT_SECOND_LEVEL = new Set(['co', 'com', 'net', 'org', 'ac', 'gov', 'edu', 'ne', 'or']);
523
+ /** The organisation's domain of a host: `imap.example.org` → `example.org`. */
524
+ function registrableDomain(host) {
525
+ const labels = host.toLowerCase().replace(/\.$/, '').split('.').filter(Boolean);
526
+ if (labels.length <= 2)
527
+ return labels.join('.');
528
+ const second = labels[labels.length - 2];
529
+ const take = SHORT_SECOND_LEVEL.has(second) && labels[labels.length - 1].length === 2 ? 3 : 2;
530
+ return labels.slice(-take).join('.');
531
+ }
532
+ /**
533
+ * Is `id` the authserv-id of the mailbox's own receiving server? A known
534
+ * provider's table entry when the IMAP host is one of theirs; otherwise the
535
+ * IMAP host's own organisation domain (`mx1.example.org` for
536
+ * `imap.example.org`). Nothing else — not a relay, not a sender.
537
+ */
538
+ export function authservMatches(id, imapHost) {
539
+ if (id === '' || !id.includes('.'))
540
+ return false;
541
+ const host = imapHost.toLowerCase().replace(/\.$/, '');
542
+ const known = KNOWN_RECEIVERS.find((r) => r.hosts.includes(host));
543
+ const exact = known ? known.exact ?? [] : [];
544
+ const suffixes = known ? known.suffixes ?? [] : [registrableDomain(host)].filter((d) => d.includes('.'));
545
+ return exact.includes(id) || suffixes.some((d) => id === d || id.endsWith(`.${d}`));
546
+ }
547
+ /**
548
+ * The `Authentication-Results` header the owner's own receiving server wrote,
549
+ * or null. Of the message's headers, in order from the top, the first whose
550
+ * authserv-id is that server's (`authservMatches`): a border server writes its
551
+ * verdict on top and removes any older copy of its own id (RFC 8601 §5), so a
552
+ * header with another id — a relay's, or one the sender wrote — is never read,
553
+ * and a forged copy of the right id sits below the real one. No such header
554
+ * (Microsoft writes none with an id) means unauthenticated: the watchers then
555
+ * warn more, never less.
556
+ */
557
+ export function trustedAuthResults(headers, imapHost) {
558
+ for (const header of headers) {
559
+ if (authservMatches(authservIdOf(header), imapHost))
560
+ return header;
561
+ }
562
+ return null;
563
+ }
448
564
  export function prepareForIngest(message, now = new Date()) {
449
565
  return {
450
566
  ...message,
@@ -1 +1 @@
1
- {"version":3,"file":"mail.js","sourceRoot":"","sources":["../src/mail.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mail.js","sourceRoot":"","sources":["../src/mail.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,12 @@ export interface SelectCriteria {
19
19
  policyId?: string;
20
20
  /** true: unread only; false: read only. */
21
21
  unread?: boolean;
22
+ /**
23
+ * true: only messages in conversations that need the owner, by the one rule
24
+ * (`needs-you.ts`); false: only messages in conversations that do not —
25
+ * notifications, newsletters, mail nobody expects an answer to.
26
+ */
27
+ needsReply?: boolean;
22
28
  /** A folder or Gmail label by its server name; 'any' for every folder. Default: the inbox. */
23
29
  folder?: string;
24
30
  /** Words in the subject, the sender or the body. */
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../src/mailbox/select.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAOjD,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEhC,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,8FAA8F;IAC9F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4FAA4F;IAC5F,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,0DAA0D;IAC1D,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,2EAA2E;AAC3E,wBAAgB,aAAa,CAAC,CAAC,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAa7E;AAED,wBAAsB,cAAc,CAClC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,aAAa,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,EACxD,CAAC,EAAE,cAAc,EACjB,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,SAAS,CAAC,CAoGpB"}
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../src/mailbox/select.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAQjD,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEhC,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8FAA8F;IAC9F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4FAA4F;IAC5F,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,0DAA0D;IAC1D,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,2EAA2E;AAC3E,wBAAgB,aAAa,CAAC,CAAC,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAe7E;AAED,wBAAsB,cAAc,CAClC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,aAAa,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,EACxD,CAAC,EAAE,cAAc,EACjB,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,SAAS,CAAC,CA4GpB"}
@@ -2,6 +2,7 @@ import { normalizeAddress, normalizeListId, UNREAD_SQL } from '../mail.js';
2
2
  import { domainOf } from '../policies/gate.js';
3
3
  import { findPolicy } from '../policies/store.js';
4
4
  import { likeNeedle } from '../search.js';
5
+ import { attentionJoin, needsYouPrefilter } from '../needs-you.js';
5
6
  import { MAX_PER_CALL, MailboxRefusal, plural, SAMPLE_SIZE } from './actions.js';
6
7
  /** The criteria in words, for the agent to repeat and the card to show. */
7
8
  export function criteriaWords(c, policyWords) {
@@ -11,6 +12,10 @@ export function criteriaWords(c, policyWords) {
11
12
  if (c.unread === false)
12
13
  parts.push('read');
13
14
  parts.push('messages');
15
+ if (c.needsReply === true)
16
+ parts.push('in conversations waiting on you');
17
+ if (c.needsReply === false)
18
+ parts.push('in conversations not waiting on you');
14
19
  if (c.from)
15
20
  parts.push(`from ${c.from.trim()}`);
16
21
  if (policyWords)
@@ -81,6 +86,12 @@ export async function selectMessages(db, accounts, c, now) {
81
86
  where.push(UNREAD_SQL.replace('flags', 'm.flags'));
82
87
  if (c.unread === false)
83
88
  where.push(`not (${UNREAD_SQL.replace('flags', 'm.flags')})`);
89
+ if (c.needsReply !== undefined) {
90
+ const when = add(now);
91
+ const needing = `exists (select 1 from email.threads t ${attentionJoin('t', when)}` +
92
+ ` where t.id = m.thread_id and ${needsYouPrefilter('t', when)} and att.needs_you)`;
93
+ where.push(c.needsReply ? needing : `not ${needing}`);
94
+ }
84
95
  const at = `coalesce(m.internal_date, m.date, m.fetched_at)`;
85
96
  if (c.olderThanDays !== undefined) {
86
97
  where.push(`${at} < ${add(new Date(now.getTime() - c.olderThanDays * 86_400_000))}`);
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/mailbox/select.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/mailbox/select.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@
3
3
  *
4
4
  * One, for now: how many conversations are waiting on the owner. It is the
5
5
  * `email.waiting-on-me` watcher's own query with `count(*)` where its findings
6
- * would be — the same waiting age, the same "you have written to them before",
7
- * the same silenced senders, the same thirty-day ceiling, the same enabled
6
+ * would be — the same waiting age, the same needs-you rule (`needs-you.ts`:
7
+ * no notifications, no silenced senders, thirty days at most), the same enabled
8
8
  * mailboxes — because an owner working the pile down must be counting what the
9
9
  * watcher wakes him about. Two definitions would be two different weeks.
10
10
  *
@@ -32,10 +32,9 @@ export declare function stalestSync(ctx: ToolContext, accountIds: readonly strin
32
32
  * How many conversations are waiting on the owner.
33
33
  *
34
34
  * Exactly what the `email.waiting-on-me` watcher counts, from the watcher's
35
- * own query and the owner's own `waitingDays`: threads whose last message came
36
- * in, older than the setting and newer than a month, from somebody the owner
37
- * has written to before, in a mailbox that is switched on, with no live ignore
38
- * policy on the sender.
35
+ * own query and the owner's own `waitingDays`: threads that need the owner by
36
+ * the one rule (`needs-you.ts`), waiting longer than the setting, in a mailbox
37
+ * that is switched on.
39
38
  */
40
39
  export declare const waitingOnMe: MetricDefinition;
41
40
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAOxE;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAYtB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,EAAE,gBA2BzB,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,OAAO,CAAC,MAAM,CAAC,CAejB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,EAAE,gBA6BzB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,gBAAgB,EAA+B,CAAC"}
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAOxE;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAYtB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,EAAE,gBA2BzB,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,OAAO,CAAC,MAAM,CAAC,CAejB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,EAAE,gBA6BzB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,gBAAgB,EAA+B,CAAC"}
@@ -27,15 +27,14 @@ export async function stalestSync(ctx, accountIds) {
27
27
  * How many conversations are waiting on the owner.
28
28
  *
29
29
  * Exactly what the `email.waiting-on-me` watcher counts, from the watcher's
30
- * own query and the owner's own `waitingDays`: threads whose last message came
31
- * in, older than the setting and newer than a month, from somebody the owner
32
- * has written to before, in a mailbox that is switched on, with no live ignore
33
- * policy on the sender.
30
+ * own query and the owner's own `waitingDays`: threads that need the owner by
31
+ * the one rule (`needs-you.ts`), waiting longer than the setting, in a mailbox
32
+ * that is switched on.
34
33
  */
35
34
  export const waitingOnMe = {
36
35
  id: 'email.waiting_on_me',
37
36
  description: 'How many conversations have been waiting on you longer than your setting — the same ones the ' +
38
- 'email.waiting-on-me watcher reports, from people you have written to before. As of the last time ' +
37
+ 'email.waiting-on-me watcher reports: from people you have written to before, or asking you something. As of the last time ' +
39
38
  'your mail was synced, which may not be now.',
40
39
  unit: 'count',
41
40
  direction: 'down',
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Whether a conversation needs the owner: the one rule (docs/email.md §2).
3
+ *
4
+ * `threads.state` is a fact — who wrote last — and stays one. A security
5
+ * alert from `no-reply@` and a client's question both leave a thread
6
+ * `waiting-on-me`; only one of them is waiting on anybody. This is the
7
+ * judgement made over the fact, and it lives in one SQL function,
8
+ * `email.thread_attention(thread, now)` (migration 023), so that the Mail
9
+ * page, the "Waiting on you" widget, the watcher, the metric and the agents'
10
+ * tools cannot disagree about which conversations they mean.
11
+ *
12
+ * For a `waiting-on-me` thread, read off its newest inbound message, the
13
+ * first of these that holds is its reason:
14
+ *
15
+ * 1. `no-reply` — the sender is an address nobody reads (`no-reply@`,
16
+ * `…-noreply@`, `notifications@`, `mailer-daemon@`, `@noreply.host`);
17
+ * 2. `bulk` — it was sent to many: `List-Unsubscribe`, `Precedence: bulk`,
18
+ * or a `List-Id`;
19
+ * 3. `ignored` — a live ignore rule the owner kept covers its sender, domain,
20
+ * list or thread;
21
+ * 4. `stale` — it arrived more than 30 days ago (or its messages aged out);
22
+ * 5. `known` — the owner has written to this sender before, from this mailbox;
23
+ * 6. `asked` — the latest triage verdict on it is `reply-needed`;
24
+ * 7. `stranger` — somebody wrote, and nothing says a reply is expected.
25
+ *
26
+ * **Needs you = `known` or `asked`.** Every other state answers its own name.
27
+ * The sender's headers only ever count *against* needing the owner — a forged
28
+ * `List-Unsubscribe` can at worst make a message look like a newsletter.
29
+ */
30
+ import type { ThreadState } from './threads.js';
31
+ export declare const ATTENTION_REASONS: readonly ["known", "asked", "no-reply", "bulk", "ignored", "stale", "stranger", "waiting-on-them", "muted", "closed"];
32
+ export type AttentionReason = (typeof ATTENTION_REASONS)[number];
33
+ /** What the page shows for a conversation: the state as the owner reads it. */
34
+ export type AttentionView = 'needs-you' | 'notification' | 'they-wrote' | 'waiting-on-them' | 'muted' | 'closed';
35
+ export declare const ATTENTION_LABELS: Record<AttentionView, string>;
36
+ /** Why, in a few words, as the detail's State row finishes its sentence. */
37
+ export declare const ATTENTION_WHY: Record<AttentionReason, string>;
38
+ export declare function isAttentionReason(value: unknown): value is AttentionReason;
39
+ /** The reason, or one derived from the state alone when there was none to read. */
40
+ export declare function reasonOf(raw: unknown, state: ThreadState): AttentionReason;
41
+ export declare function needsYou(reason: AttentionReason): boolean;
42
+ export declare function viewOf(reason: AttentionReason): AttentionView;
43
+ /** The detail's State row: "Waiting on you — you’ve written to them before." */
44
+ export declare function attentionLine(reason: AttentionReason): string;
45
+ export declare function isNotificationAddress(raw: string): boolean;
46
+ /**
47
+ * The lateral join that gives a thread aliased `t` its `att.needs_you`,
48
+ * `att.reason`, `att.inbound_id` and `att.inbound_at`, as of `now` (a
49
+ * placeholder such as `$2`).
50
+ */
51
+ export declare function attentionJoin(t: string, now: string): string;
52
+ /**
53
+ * What every needing thread already is, cheap to test before the function
54
+ * runs: inbound last, and moved inside the window. A filter for a query that
55
+ * only wants needing threads, ahead of `att.needs_you`.
56
+ */
57
+ export declare function needsYouPrefilter(t: string, now: string): string;
58
+ //# sourceMappingURL=needs-you.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"needs-you.d.ts","sourceRoot":"","sources":["../src/needs-you.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,iBAAiB,uHAWpB,CAAC;AACX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,+EAA+E;AAC/E,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,cAAc,GAAG,YAAY,GAAG,iBAAiB,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEjH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAO1D,CAAC;AAEF,4EAA4E;AAC5E,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAWzD,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E;AAED,mFAAmF;AACnF,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,GAAG,eAAe,CAG1E;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAEzD;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,eAAe,GAAG,aAAa,CAe7D;AAED,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAE7D;AAUD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO1D;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAKhE"}