@rubytech/create-maxy-code 0.1.279 → 0.1.281

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 (299) hide show
  1. package/package.json +1 -1
  2. package/payload/platform/lib/mcp-spawn-tee/dist/index.d.ts +31 -43
  3. package/payload/platform/lib/mcp-spawn-tee/dist/index.d.ts.map +1 -1
  4. package/payload/platform/lib/mcp-spawn-tee/dist/index.js +112 -85
  5. package/payload/platform/lib/mcp-spawn-tee/dist/index.js.map +1 -1
  6. package/payload/platform/lib/mcp-spawn-tee/src/__tests__/spawn-tee.test.ts +111 -0
  7. package/payload/platform/lib/mcp-spawn-tee/src/index.ts +113 -84
  8. package/payload/platform/lib/mcp-spawn-tee/tsconfig.json +2 -1
  9. package/payload/platform/plugins/admin/PLUGIN.md +1 -0
  10. package/payload/platform/plugins/admin/hooks/__tests__/prompt-optimiser-directive.test.sh +42 -0
  11. package/payload/platform/plugins/admin/hooks/prompt-optimiser-directive.sh +60 -15
  12. package/payload/platform/plugins/admin/mcp/dist/__tests__/e-sign-discoverable.test.d.ts +2 -0
  13. package/payload/platform/plugins/admin/mcp/dist/__tests__/e-sign-discoverable.test.d.ts.map +1 -0
  14. package/payload/platform/plugins/admin/mcp/dist/__tests__/e-sign-discoverable.test.js +54 -0
  15. package/payload/platform/plugins/admin/mcp/dist/__tests__/e-sign-discoverable.test.js.map +1 -0
  16. package/payload/platform/plugins/admin/mcp/dist/content-producer-authoring-skills.d.ts +2 -0
  17. package/payload/platform/plugins/admin/mcp/dist/content-producer-authoring-skills.d.ts.map +1 -0
  18. package/payload/platform/plugins/admin/mcp/dist/content-producer-authoring-skills.js +19 -0
  19. package/payload/platform/plugins/admin/mcp/dist/content-producer-authoring-skills.js.map +1 -0
  20. package/payload/platform/plugins/admin/mcp/dist/skill-resolution.d.ts.map +1 -1
  21. package/payload/platform/plugins/admin/mcp/dist/skill-resolution.js +2 -5
  22. package/payload/platform/plugins/admin/mcp/dist/skill-resolution.js.map +1 -1
  23. package/payload/platform/plugins/admin/skills/a4-print-documents/SKILL.md +2 -0
  24. package/payload/platform/plugins/admin/skills/access-manager/SKILL.md +2 -0
  25. package/payload/platform/plugins/admin/skills/admin-user-management/SKILL.md +2 -0
  26. package/payload/platform/plugins/admin/skills/business-profile/SKILL.md +2 -0
  27. package/payload/platform/plugins/admin/skills/capabilities-here/SKILL.md +2 -0
  28. package/payload/platform/plugins/admin/skills/datetime/SKILL.md +2 -0
  29. package/payload/platform/plugins/admin/skills/deck-pages/SKILL.md +2 -0
  30. package/payload/platform/plugins/admin/skills/file-presentation/SKILL.md +2 -0
  31. package/payload/platform/plugins/admin/skills/investigate/SKILL.md +2 -0
  32. package/payload/platform/plugins/admin/skills/plainly/SKILL.md +2 -0
  33. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +5 -1
  34. package/payload/platform/plugins/admin/skills/plugin-management/SKILL.md +2 -0
  35. package/payload/platform/plugins/admin/skills/professional-document/SKILL.md +2 -0
  36. package/payload/platform/plugins/admin/skills/public-agent-manager/SKILL.md +2 -0
  37. package/payload/platform/plugins/admin/skills/qr-code/SKILL.md +2 -0
  38. package/payload/platform/plugins/admin/skills/session-management/SKILL.md +2 -0
  39. package/payload/platform/plugins/admin/skills/skill-builder/SKILL.md +2 -0
  40. package/payload/platform/plugins/admin/skills/specialist-management/SKILL.md +2 -0
  41. package/payload/platform/plugins/admin/skills/stream-log-review/SKILL.md +2 -0
  42. package/payload/platform/plugins/admin/skills/superpowers-sprint/SKILL.md +2 -0
  43. package/payload/platform/plugins/admin/skills/task/SKILL.md +2 -0
  44. package/payload/platform/plugins/admin/skills/update-knowledge/SKILL.md +2 -0
  45. package/payload/platform/plugins/admin/skills/upgrade/SKILL.md +2 -0
  46. package/payload/platform/plugins/aeo/skills/structured-answer/SKILL.md +2 -0
  47. package/payload/platform/plugins/business-assistant/PLUGIN.md +2 -1
  48. package/payload/platform/plugins/business-assistant/{references/e-sign.md → skills/e-sign/SKILL.md} +9 -2
  49. package/payload/platform/plugins/cloudflare/skills/cloudflare/SKILL.md +2 -0
  50. package/payload/platform/plugins/deep-research/skills/academic-verify/SKILL.md +2 -0
  51. package/payload/platform/plugins/deep-research/skills/book-mirror/SKILL.md +2 -0
  52. package/payload/platform/plugins/deep-research/skills/data-research/SKILL.md +2 -0
  53. package/payload/platform/plugins/deep-research/skills/deep-research/SKILL.md +2 -0
  54. package/payload/platform/plugins/deep-research/skills/strategic-reading/SKILL.md +2 -0
  55. package/payload/platform/plugins/docs/references/platform.md +2 -0
  56. package/payload/platform/plugins/email/PLUGIN.md +2 -0
  57. package/payload/platform/plugins/email/mcp/dist/__tests__/attachment-resolve.test.d.ts +2 -0
  58. package/payload/platform/plugins/email/mcp/dist/__tests__/attachment-resolve.test.d.ts.map +1 -0
  59. package/payload/platform/plugins/email/mcp/dist/__tests__/attachment-resolve.test.js +68 -0
  60. package/payload/platform/plugins/email/mcp/dist/__tests__/attachment-resolve.test.js.map +1 -0
  61. package/payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.d.ts +2 -0
  62. package/payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.d.ts.map +1 -0
  63. package/payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.js +55 -0
  64. package/payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.js.map +1 -0
  65. package/payload/platform/plugins/email/mcp/dist/__tests__/providers.test.d.ts +2 -0
  66. package/payload/platform/plugins/email/mcp/dist/__tests__/providers.test.d.ts.map +1 -0
  67. package/payload/platform/plugins/email/mcp/dist/__tests__/providers.test.js +110 -0
  68. package/payload/platform/plugins/email/mcp/dist/__tests__/providers.test.js.map +1 -0
  69. package/payload/platform/plugins/email/mcp/dist/__tests__/recipient-filter.test.d.ts +2 -0
  70. package/payload/platform/plugins/email/mcp/dist/__tests__/recipient-filter.test.d.ts.map +1 -0
  71. package/payload/platform/plugins/email/mcp/dist/__tests__/recipient-filter.test.js +57 -0
  72. package/payload/platform/plugins/email/mcp/dist/__tests__/recipient-filter.test.js.map +1 -0
  73. package/payload/platform/plugins/email/mcp/dist/index.js +8 -1
  74. package/payload/platform/plugins/email/mcp/dist/index.js.map +1 -1
  75. package/payload/platform/plugins/email/mcp/dist/lib/attachment-resolve.d.ts +5 -0
  76. package/payload/platform/plugins/email/mcp/dist/lib/attachment-resolve.d.ts.map +1 -1
  77. package/payload/platform/plugins/email/mcp/dist/lib/attachment-resolve.js +35 -5
  78. package/payload/platform/plugins/email/mcp/dist/lib/attachment-resolve.js.map +1 -1
  79. package/payload/platform/plugins/email/mcp/dist/lib/imap.d.ts +50 -14
  80. package/payload/platform/plugins/email/mcp/dist/lib/imap.d.ts.map +1 -1
  81. package/payload/platform/plugins/email/mcp/dist/lib/imap.js +143 -66
  82. package/payload/platform/plugins/email/mcp/dist/lib/imap.js.map +1 -1
  83. package/payload/platform/plugins/email/mcp/dist/lib/ingest-batch.d.ts +8 -0
  84. package/payload/platform/plugins/email/mcp/dist/lib/ingest-batch.d.ts.map +1 -1
  85. package/payload/platform/plugins/email/mcp/dist/lib/ingest-batch.js.map +1 -1
  86. package/payload/platform/plugins/email/mcp/dist/lib/providers.d.ts +16 -5
  87. package/payload/platform/plugins/email/mcp/dist/lib/providers.d.ts.map +1 -1
  88. package/payload/platform/plugins/email/mcp/dist/lib/providers.js +120 -13
  89. package/payload/platform/plugins/email/mcp/dist/lib/providers.js.map +1 -1
  90. package/payload/platform/plugins/email/mcp/dist/tools/email-fetch.js +3 -3
  91. package/payload/platform/plugins/email/mcp/dist/tools/email-fetch.js.map +1 -1
  92. package/payload/platform/plugins/email/mcp/dist/tools/email-otp-extract.d.ts.map +1 -1
  93. package/payload/platform/plugins/email/mcp/dist/tools/email-otp-extract.js +4 -2
  94. package/payload/platform/plugins/email/mcp/dist/tools/email-otp-extract.js.map +1 -1
  95. package/payload/platform/plugins/email/mcp/dist/tools/email-read.d.ts.map +1 -1
  96. package/payload/platform/plugins/email/mcp/dist/tools/email-read.js +18 -8
  97. package/payload/platform/plugins/email/mcp/dist/tools/email-read.js.map +1 -1
  98. package/payload/platform/plugins/email/mcp/dist/tools/email-reply.d.ts.map +1 -1
  99. package/payload/platform/plugins/email/mcp/dist/tools/email-reply.js +5 -3
  100. package/payload/platform/plugins/email/mcp/dist/tools/email-reply.js.map +1 -1
  101. package/payload/platform/plugins/email/mcp/dist/tools/email-search.d.ts.map +1 -1
  102. package/payload/platform/plugins/email/mcp/dist/tools/email-search.js +18 -8
  103. package/payload/platform/plugins/email/mcp/dist/tools/email-search.js.map +1 -1
  104. package/payload/platform/plugins/email/mcp/dist/tools/email-send.d.ts.map +1 -1
  105. package/payload/platform/plugins/email/mcp/dist/tools/email-send.js +6 -3
  106. package/payload/platform/plugins/email/mcp/dist/tools/email-send.js.map +1 -1
  107. package/payload/platform/plugins/email/mcp/dist/tools/email-setup.d.ts.map +1 -1
  108. package/payload/platform/plugins/email/mcp/dist/tools/email-setup.js +22 -4
  109. package/payload/platform/plugins/email/mcp/dist/tools/email-setup.js.map +1 -1
  110. package/payload/platform/plugins/email/mcp/package.json +4 -2
  111. package/payload/platform/plugins/email/mcp/vitest.config.ts +9 -0
  112. package/payload/platform/plugins/email/references/email-reference.md +22 -5
  113. package/payload/platform/plugins/email/skills/email-composition/SKILL.md +3 -1
  114. package/payload/platform/plugins/email/skills/email-ingest/SKILL.md +2 -0
  115. package/payload/platform/plugins/graph/PLUGIN.md +2 -0
  116. package/payload/platform/plugins/graph-viewer/skills/render-graph/SKILL.md +2 -0
  117. package/payload/platform/plugins/linkedin-extension/skills/linkedin-extension/SKILL.md +2 -0
  118. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/kd-classify-account-dir.test.d.ts +2 -0
  119. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/kd-classify-account-dir.test.d.ts.map +1 -0
  120. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/kd-classify-account-dir.test.js +31 -0
  121. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/kd-classify-account-dir.test.js.map +1 -0
  122. package/payload/platform/plugins/memory/mcp/dist/tools/kd-classify.d.ts +5 -0
  123. package/payload/platform/plugins/memory/mcp/dist/tools/kd-classify.d.ts.map +1 -1
  124. package/payload/platform/plugins/memory/mcp/dist/tools/kd-classify.js +21 -2
  125. package/payload/platform/plugins/memory/mcp/dist/tools/kd-classify.js.map +1 -1
  126. package/payload/platform/plugins/memory/skills/archive-crawler/SKILL.md +2 -0
  127. package/payload/platform/plugins/memory/skills/challenge/SKILL.md +2 -0
  128. package/payload/platform/plugins/memory/skills/concept-synthesis/SKILL.md +2 -0
  129. package/payload/platform/plugins/memory/skills/connect/SKILL.md +2 -0
  130. package/payload/platform/plugins/memory/skills/conversational-memory/SKILL.md +2 -0
  131. package/payload/platform/plugins/memory/skills/emerge/SKILL.md +2 -0
  132. package/payload/platform/plugins/outlook/skills/outlook/SKILL.md +2 -0
  133. package/payload/platform/plugins/prompt-optimiser/skills/prompt-optimiser/SKILL.md +3 -1
  134. package/payload/platform/plugins/prompt-optimiser/skills/prompt-optimiser/__tests__/restatement-ladder.test.sh +21 -0
  135. package/payload/platform/plugins/scheduling/skills/briefing/SKILL.md +2 -0
  136. package/payload/platform/plugins/scheduling/skills/daily-prep/SKILL.md +2 -0
  137. package/payload/platform/plugins/slides/skills/deck-system/SKILL.md +2 -0
  138. package/payload/platform/plugins/url-get/mcp/dist/tools/url-get.js +5 -5
  139. package/payload/platform/plugins/url-get/mcp/dist/tools/url-get.js.map +1 -1
  140. package/payload/platform/plugins/whatsapp/skills/connect-whatsapp/SKILL.md +2 -0
  141. package/payload/platform/plugins/whatsapp/skills/manage-whatsapp-config/SKILL.md +2 -0
  142. package/payload/platform/plugins/work/skills/execute-task/SKILL.md +2 -0
  143. package/payload/platform/plugins/workflows/skills/workflow-manager/SKILL.md +2 -0
  144. package/payload/platform/scripts/lib/__tests__/admin-skills-bootstrap.test.sh +64 -0
  145. package/payload/platform/scripts/lib/admin-skills-bootstrap.sh +109 -0
  146. package/payload/platform/scripts/setup-account.sh +8 -0
  147. package/payload/platform/services/claude-session-manager/dist/fs-watcher.d.ts.map +1 -1
  148. package/payload/platform/services/claude-session-manager/dist/fs-watcher.js +43 -11
  149. package/payload/platform/services/claude-session-manager/dist/fs-watcher.js.map +1 -1
  150. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
  151. package/payload/platform/services/claude-session-manager/dist/http-server.js +74 -1
  152. package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
  153. package/payload/platform/services/claude-session-manager/dist/index.js +48 -2
  154. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  155. package/payload/platform/services/claude-session-manager/dist/liveness-divergence.d.ts +19 -0
  156. package/payload/platform/services/claude-session-manager/dist/liveness-divergence.d.ts.map +1 -0
  157. package/payload/platform/services/claude-session-manager/dist/liveness-divergence.js +38 -0
  158. package/payload/platform/services/claude-session-manager/dist/liveness-divergence.js.map +1 -0
  159. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +8 -0
  160. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  161. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +19 -1
  162. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  163. package/payload/platform/services/claude-session-manager/dist/scope-record.d.ts +11 -0
  164. package/payload/platform/services/claude-session-manager/dist/scope-record.d.ts.map +1 -0
  165. package/payload/platform/services/claude-session-manager/dist/scope-record.js +81 -0
  166. package/payload/platform/services/claude-session-manager/dist/scope-record.js.map +1 -0
  167. package/payload/platform/services/whatsapp-channel/dist/notification.d.ts +10 -7
  168. package/payload/platform/services/whatsapp-channel/dist/notification.d.ts.map +1 -1
  169. package/payload/platform/services/whatsapp-channel/dist/notification.js +14 -14
  170. package/payload/platform/services/whatsapp-channel/dist/notification.js.map +1 -1
  171. package/payload/platform/templates/agents/admin/IDENTITY.md +2 -6
  172. package/payload/server/public/assets/AdminShell-FO766lOW.js +1 -0
  173. package/payload/server/public/assets/{Checkbox-2reCESkb.js → Checkbox-syHoU9nY.js} +1 -1
  174. package/payload/server/public/assets/{admin-xRCXEFNW.js → admin-0_VxffD5.js} +1 -1
  175. package/payload/server/public/assets/{arc-BgelqC_3.js → arc-BW1WhwmV.js} +1 -1
  176. package/payload/server/public/assets/architecture-YZFGNWBL-xHbVjatf.js +1 -0
  177. package/payload/server/public/assets/{architectureDiagram-Q4EWVU46-BabnAZJm.js → architectureDiagram-Q4EWVU46-DsionCio.js} +1 -1
  178. package/payload/server/public/assets/{blockDiagram-DXYQGD6D-BJzZqNsy.js → blockDiagram-DXYQGD6D-NOG5yVZk.js} +1 -1
  179. package/payload/server/public/assets/{browser-DT2XfRpL.js → browser-Cxjkhtsk.js} +1 -1
  180. package/payload/server/public/assets/{c4Diagram-AHTNJAMY-By-xuh9F.js → c4Diagram-AHTNJAMY-DwFV1k9I.js} +1 -1
  181. package/payload/server/public/assets/channel-D8Go_zJk.js +1 -0
  182. package/payload/server/public/assets/{chunk-2KRD3SAO-Gj2dSpBl.js → chunk-2KRD3SAO-CKn-bEkI.js} +1 -1
  183. package/payload/server/public/assets/{chunk-336JU56O-2PXVPCUA.js → chunk-336JU56O-iJ4ISPCi.js} +2 -2
  184. package/payload/server/public/assets/chunk-426QAEUC-sWe0Iexz.js +1 -0
  185. package/payload/server/public/assets/{chunk-4BX2VUAB-9XIBlnC2.js → chunk-4BX2VUAB-B2mSmC97.js} +1 -1
  186. package/payload/server/public/assets/{chunk-4TB4RGXK-Cr3mXPnI.js → chunk-4TB4RGXK-kKNYi2_i.js} +1 -1
  187. package/payload/server/public/assets/{chunk-55IACEB6-Ccg46J3A.js → chunk-55IACEB6-JLT9m7Hd.js} +1 -1
  188. package/payload/server/public/assets/{chunk-5FUZZQ4R-Cz9MvPKc.js → chunk-5FUZZQ4R-Car3r0he.js} +1 -1
  189. package/payload/server/public/assets/{chunk-5PVQY5BW-BleOdlgO.js → chunk-5PVQY5BW-DR9EfLvj.js} +1 -1
  190. package/payload/server/public/assets/{chunk-67CJDMHE-CyCYCQWy.js → chunk-67CJDMHE-CCdP3Pdx.js} +1 -1
  191. package/payload/server/public/assets/{chunk-7N4EOEYR-KpT3uHzH.js → chunk-7N4EOEYR-bXgVzdM9.js} +1 -1
  192. package/payload/server/public/assets/{chunk-AA7GKIK3-BfOzbuxq.js → chunk-AA7GKIK3-CYeDvY8B.js} +1 -1
  193. package/payload/server/public/assets/{chunk-BSJP7CBP-Bq0M3wlv.js → chunk-BSJP7CBP-U0Fi-Ers.js} +1 -1
  194. package/payload/server/public/assets/{chunk-CIAEETIT-CR-2dNaL.js → chunk-CIAEETIT-C8QrV6Gg.js} +1 -1
  195. package/payload/server/public/assets/{chunk-EDXVE4YY-egUGMTOS.js → chunk-EDXVE4YY-DLUWVRZV.js} +1 -1
  196. package/payload/server/public/assets/{chunk-ENJZ2VHE-CQohBEFw.js → chunk-ENJZ2VHE-B4bNJo6C.js} +1 -1
  197. package/payload/server/public/assets/{chunk-FMBD7UC4-DIxBUbLP.js → chunk-FMBD7UC4-DxAQS3UB.js} +1 -1
  198. package/payload/server/public/assets/{chunk-FOC6F5B3-C2694Zoq.js → chunk-FOC6F5B3-CyIK3zeY.js} +1 -1
  199. package/payload/server/public/assets/{chunk-ICPOFSXX-DpXZKHyn.js → chunk-ICPOFSXX-Qzl8Ki0l.js} +2 -2
  200. package/payload/server/public/assets/{chunk-K5T4RW27-CUicG0Rp.js → chunk-K5T4RW27-7GcDzjyJ.js} +1 -1
  201. package/payload/server/public/assets/{chunk-KGLVRYIC-B5mPJhOr.js → chunk-KGLVRYIC-B7pAr9hf.js} +1 -1
  202. package/payload/server/public/assets/{chunk-LIHQZDEY-q81QhuMs.js → chunk-LIHQZDEY-DEoU2jrz.js} +1 -1
  203. package/payload/server/public/assets/{chunk-ORNJ4GCN-DgurdFZs.js → chunk-ORNJ4GCN-BwMFuN24.js} +1 -1
  204. package/payload/server/public/assets/{chunk-OYMX7WX6-CxqMRu2d.js → chunk-OYMX7WX6-BenBO6O_.js} +1 -1
  205. package/payload/server/public/assets/chunk-QZHKN3VN-CHE_iZO7.js +1 -0
  206. package/payload/server/public/assets/{chunk-U2HBQHQK-BSLctJC9.js → chunk-U2HBQHQK-DewM8R0D.js} +1 -1
  207. package/payload/server/public/assets/{chunk-X2U36JSP--0AUeeFl.js → chunk-X2U36JSP-C22Q6Ea4.js} +1 -1
  208. package/payload/server/public/assets/{chunk-XPW4576I-D-hf9Bcn.js → chunk-XPW4576I-BA0a8Ygs.js} +1 -1
  209. package/payload/server/public/assets/{chunk-YZCP3GAM-PvOhSwI9.js → chunk-YZCP3GAM-DfUUNTnA.js} +1 -1
  210. package/payload/server/public/assets/{chunk-ZZ45TVLE-1zPUlNWz.js → chunk-ZZ45TVLE-CUT6zma2.js} +1 -1
  211. package/payload/server/public/assets/classDiagram-6PBFFD2Q-BLb1mzrT.js +1 -0
  212. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-Ctj5qYTS.js +1 -0
  213. package/payload/server/public/assets/clone-DGZ2vydA.js +1 -0
  214. package/payload/server/public/assets/{cose-bilkent-S5V4N54A-Cvo-gkBd.js → cose-bilkent-S5V4N54A-Df_JmB8E.js} +1 -1
  215. package/payload/server/public/assets/{dagre-CMHsNfjP.js → dagre-CYXRIdv0.js} +1 -1
  216. package/payload/server/public/assets/{dagre-KV5264BT-CM1DSx4E.js → dagre-KV5264BT-D4EGb60h.js} +1 -1
  217. package/payload/server/public/assets/{data-Dr7XUvAx.js → data-BOgwOWnw.js} +1 -1
  218. package/payload/server/public/assets/{diagram-5BDNPKRD-VDHiHwEI.js → diagram-5BDNPKRD-BzieCEfT.js} +1 -1
  219. package/payload/server/public/assets/{diagram-G4DWMVQ6-OKdufoeW.js → diagram-G4DWMVQ6-DDbO71XD.js} +1 -1
  220. package/payload/server/public/assets/{diagram-MMDJMWI5-Yg6QdCA1.js → diagram-MMDJMWI5-DqQ_UXDA.js} +1 -1
  221. package/payload/server/public/assets/{diagram-TYMM5635-CpEMZQDu.js → diagram-TYMM5635-CFyxA1aZ.js} +1 -1
  222. package/payload/server/public/assets/{dist-811BIK0R.js → dist-BmvZ8OaX.js} +1 -1
  223. package/payload/server/public/assets/{erDiagram-SMLLAGMA-Dw5gAkFM.js → erDiagram-SMLLAGMA-BMaEBbOK.js} +1 -1
  224. package/payload/server/public/assets/{flatten-BsWEYbBB.js → flatten-Bo6YRmWl.js} +1 -1
  225. package/payload/server/public/assets/{flowDiagram-DWJPFMVM-Cy_R1XHz.js → flowDiagram-DWJPFMVM-De5ChZQP.js} +1 -1
  226. package/payload/server/public/assets/{ganttDiagram-T4ZO3ILL-BYARP_eH.js → ganttDiagram-T4ZO3ILL-CXEMPVaK.js} +1 -1
  227. package/payload/server/public/assets/gitGraph-7Q5UKJZL-CmHdoS27.js +1 -0
  228. package/payload/server/public/assets/{gitGraphDiagram-UUTBAWPF-BGOe0unY.js → gitGraphDiagram-UUTBAWPF-OZedr_6y.js} +1 -1
  229. package/payload/server/public/assets/{graph-DOEjjQHD.js → graph-BqD2GjQd.js} +2 -2
  230. package/payload/server/public/assets/{graph-labels-eOrWYy0R.js → graph-labels-DSDTSBfM.js} +1 -1
  231. package/payload/server/public/assets/{graphlib-DaefxCga.js → graphlib-CN4nhD2U.js} +1 -1
  232. package/payload/server/public/assets/info-OMHHGYJF-DTA9msO-.js +1 -0
  233. package/payload/server/public/assets/infoDiagram-42DDH7IO-CSqg4nRL.js +2 -0
  234. package/payload/server/public/assets/{isEmpty-BWl67LAZ.js → isEmpty-D6Kr-M1M.js} +1 -1
  235. package/payload/server/public/assets/{ishikawaDiagram-UXIWVN3A-YrGuzpiI.js → ishikawaDiagram-UXIWVN3A-ChlzrZyx.js} +1 -1
  236. package/payload/server/public/assets/{journeyDiagram-VCZTEJTY-EIykOcqg.js → journeyDiagram-VCZTEJTY-DsrK55ZO.js} +1 -1
  237. package/payload/server/public/assets/{kanban-definition-6JOO6SKY-BR0TC6Je.js → kanban-definition-6JOO6SKY-DYF-_Rym.js} +1 -1
  238. package/payload/server/public/assets/{line-DPGcT5IM.js → line-3zmwI8XK.js} +1 -1
  239. package/payload/server/public/assets/{linear-CPN03uSh.js → linear-COm19-p7.js} +1 -1
  240. package/payload/server/public/assets/{mermaid-parser.core-D7Iu4c9M.js → mermaid-parser.core-BrcX8-cl.js} +2 -2
  241. package/payload/server/public/assets/{mermaid.core-krXRpXn9.js → mermaid.core-CBdz3b1N.js} +3 -3
  242. package/payload/server/public/assets/{mindmap-definition-QFDTVHPH-HwiCtPzN.js → mindmap-definition-QFDTVHPH-BqCqlYZb.js} +1 -1
  243. package/payload/server/public/assets/{ordinal-krseTxxN.js → ordinal-BDi6f4xk.js} +1 -1
  244. package/payload/server/public/assets/packet-4T2RLAQJ-6GjqIKgu.js +1 -0
  245. package/payload/server/public/assets/pie-ZZUOXDRM-T72DJ5JR.js +1 -0
  246. package/payload/server/public/assets/{pieDiagram-DEJITSTG-xodxyWLe.js → pieDiagram-DEJITSTG-D5LiILuM.js} +1 -1
  247. package/payload/server/public/assets/{public-xVaPcg6i.js → public-udi_Z7la.js} +3 -3
  248. package/payload/server/public/assets/{quadrantDiagram-34T5L4WZ-DuYYY4ZZ.js → quadrantDiagram-34T5L4WZ-C3iuI5l_.js} +1 -1
  249. package/payload/server/public/assets/radar-PYXPWWZC-x-6xW1dE.js +1 -0
  250. package/payload/server/public/assets/{reduce-tk-xY6Fv.js → reduce-CGi9ik8i.js} +1 -1
  251. package/payload/server/public/assets/{requirementDiagram-MS252O5E-D0ta3kru.js → requirementDiagram-MS252O5E-CTPOw5qQ.js} +1 -1
  252. package/payload/server/public/assets/{sankeyDiagram-XADWPNL6-KdHdlzvT.js → sankeyDiagram-XADWPNL6-D_5aVlYp.js} +1 -1
  253. package/payload/server/public/assets/{sequenceDiagram-FGHM5R23-DoSFUTQZ.js → sequenceDiagram-FGHM5R23-D7h5vocM.js} +1 -1
  254. package/payload/server/public/assets/{src-Cpl1JzME.js → src-DLEIsjER.js} +1 -1
  255. package/payload/server/public/assets/{stateDiagram-FHFEXIEX-BLW0KiSA.js → stateDiagram-FHFEXIEX-DyZjuwPj.js} +1 -1
  256. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-BiW9pGXy.js +1 -0
  257. package/payload/server/public/assets/{timeline-definition-GMOUNBTQ-8QAzhYz1.js → timeline-definition-GMOUNBTQ-BqpVYJz_.js} +1 -1
  258. package/payload/server/public/assets/treeView-SZITEDCU-5-6wEryJ.js +1 -0
  259. package/payload/server/public/assets/treemap-W4RFUUIX-DF48Cc86.js +1 -0
  260. package/payload/server/public/assets/{useSelectionMode-DlJsX-_X.js → useSelectionMode-BPzPjKP_.js} +1 -1
  261. package/payload/server/public/assets/{vennDiagram-DHZGUBPP-BKvfScOi.js → vennDiagram-DHZGUBPP-Czflml0e.js} +1 -1
  262. package/payload/server/public/assets/wardley-RL74JXVD-duKIa6Hq.js +1 -0
  263. package/payload/server/public/assets/{wardleyDiagram-NUSXRM2D-DaMfDpJ3.js → wardleyDiagram-NUSXRM2D-Cqz3pSTK.js} +1 -1
  264. package/payload/server/public/assets/{xychartDiagram-5P7HB3ND-BIkNQlLa.js → xychartDiagram-5P7HB3ND-CS5dEuUO.js} +1 -1
  265. package/payload/server/public/browser.html +4 -4
  266. package/payload/server/public/data.html +5 -5
  267. package/payload/server/public/graph.html +6 -6
  268. package/payload/server/public/index.html +5 -5
  269. package/payload/server/public/public.html +4 -4
  270. package/payload/server/server.js +339 -482
  271. package/payload/server/public/assets/AdminShell-DnH3kou-.js +0 -1
  272. package/payload/server/public/assets/architecture-YZFGNWBL-YM-TtgPY.js +0 -1
  273. package/payload/server/public/assets/channel-BRPH0atd.js +0 -1
  274. package/payload/server/public/assets/chunk-426QAEUC-QhauxjvK.js +0 -1
  275. package/payload/server/public/assets/chunk-QZHKN3VN-BDAQvtxz.js +0 -1
  276. package/payload/server/public/assets/classDiagram-6PBFFD2Q-BJv89PB6.js +0 -1
  277. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-DNUszH5M.js +0 -1
  278. package/payload/server/public/assets/clone-CREg9jLM.js +0 -1
  279. package/payload/server/public/assets/gitGraph-7Q5UKJZL-CtOPqykB.js +0 -1
  280. package/payload/server/public/assets/info-OMHHGYJF-Jba5enA8.js +0 -1
  281. package/payload/server/public/assets/infoDiagram-42DDH7IO-Df9BlkPA.js +0 -2
  282. package/payload/server/public/assets/packet-4T2RLAQJ-D_eWzeAP.js +0 -1
  283. package/payload/server/public/assets/pie-ZZUOXDRM-BDiy1Ob2.js +0 -1
  284. package/payload/server/public/assets/radar-PYXPWWZC-C5mlfmtg.js +0 -1
  285. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-C5zlCV4X.js +0 -1
  286. package/payload/server/public/assets/treeView-SZITEDCU-CM-9m-cS.js +0 -1
  287. package/payload/server/public/assets/treemap-W4RFUUIX-DDHPB-Xh.js +0 -1
  288. package/payload/server/public/assets/wardley-RL74JXVD-CUb3Br4q.js +0 -1
  289. package/payload/server/public/assets/whatsapp-cDxgZkbM.js +0 -1
  290. package/payload/server/public/whatsapp.html +0 -18
  291. /package/payload/server/public/assets/{_baseFor-BHtDrjIo.js → _baseFor-Cam2PbSt.js} +0 -0
  292. /package/payload/server/public/assets/{array-DetWRiSa.js → array-DYRGGQae.js} +0 -0
  293. /package/payload/server/public/assets/{chunk-CWOGyPgy.js → chunk-CnGqDkHZ.js} +0 -0
  294. /package/payload/server/public/assets/{cytoscape.esm-C9yNhe1u.js → cytoscape.esm-nWsJMTNI.js} +0 -0
  295. /package/payload/server/public/assets/{defaultLocale-_WRwicXn.js → defaultLocale-Du1XY3Dp.js} +0 -0
  296. /package/payload/server/public/assets/{init-sTEcj9YX.js → init-B5BXBRcm.js} +0 -0
  297. /package/payload/server/public/assets/{katex-s61Rgv6l.js → katex-HOUACuRw.js} +0 -0
  298. /package/payload/server/public/assets/{path-B0Ik7Tu9.js → path-CNO468J-.js} +0 -0
  299. /package/payload/server/public/assets/{rough.esm-DKRO8IF-.js → rough.esm-DRO6hWPh.js} +0 -0
@@ -320,16 +320,49 @@ const TO_OVERFETCH_MULTIPLIER = 3;
320
320
  // ─── Default since floor for unbounded alias searches ───────────────
321
321
  const DEFAULT_SINCE_DAYS = 7;
322
322
  /**
323
- * Check whether an IMAP envelope's TO field contains the target address.
324
- * Case-insensitive comparison. Strict: if the server didn't return TO
325
- * addresses, the message is excluded — we cannot confirm it was addressed
326
- * to the target.
323
+ * Check whether an IMAP envelope's TO or Cc field contains any of the target
324
+ * addresses. Case-insensitive comparison. Strict: if the server returned
325
+ * neither TO nor Cc addresses, the message is excluded — we cannot confirm it
326
+ * was addressed to any target. Both the TO and Cc fields are inspected.
327
+ *
328
+ * Accepts a single address or a set of acceptable addresses; a message
329
+ * matches when its TO or Cc contains at least one of them.
327
330
  */
328
- export function matchesRecipient(envelope, targetAddress) {
329
- if (!envelope.to || envelope.to.length === 0)
331
+ export function matchesRecipient(envelope, target) {
332
+ const fields = [...(envelope.to ?? []), ...(envelope.cc ?? [])];
333
+ if (fields.length === 0)
330
334
  return false;
331
- const target = targetAddress.toLowerCase();
332
- return envelope.to.some((addr) => addr.address?.toLowerCase() === target);
335
+ const targets = (Array.isArray(target) ? target : [target]).map((t) => t.toLowerCase());
336
+ return fields.some((addr) => {
337
+ const a = addr.address?.toLowerCase();
338
+ return a !== undefined && targets.includes(a);
339
+ });
340
+ }
341
+ /**
342
+ * Resolve the implicit recipient-filter set for read/search when no explicit
343
+ * `to` is supplied. The mailbox always owns its IMAP login (`config.email`),
344
+ * and `config.agentAddress` is an additional alias to surface. When an alias
345
+ * is configured (truthy and different from the login) both addresses are
346
+ * returned, so replies that arrive at the login address are not hidden.
347
+ *
348
+ * When no distinct alias is configured, returns `undefined` — no recipient
349
+ * filter is applied at all, preserving the pre-existing behaviour for plain
350
+ * (non-alias) mailboxes.
351
+ */
352
+ export function resolveDefaultRecipients(config) {
353
+ if (config.agentAddress && config.agentAddress !== config.email) {
354
+ return [config.email, config.agentAddress];
355
+ }
356
+ return undefined;
357
+ }
358
+ /**
359
+ * Render the operator-facing recipient-filter signal line. Returns null when
360
+ * nothing was hidden, so a fully-matched window emits no misleading line.
361
+ */
362
+ export function formatRecipientFilterLine(stats) {
363
+ if (!stats || stats.hidden <= 0)
364
+ return null;
365
+ return `Recipient filter: kept ${stats.kept}, hid ${stats.hidden} (to ∈ {${stats.recipients.join(", ")}}); pass to="…" to change.`;
333
366
  }
334
367
  /**
335
368
  * Build IMAP SEARCH criteria for fetchRecent.
@@ -338,6 +371,7 @@ export function matchesRecipient(envelope, targetAddress) {
338
371
  */
339
372
  export function buildFetchRecentCriteria(options) {
340
373
  const { sender, since, before, to, limit = 20 } = options;
374
+ const recipients = to ? (Array.isArray(to) ? to : [to]) : undefined;
341
375
  const criteria = {};
342
376
  if (sender)
343
377
  criteria.from = sender;
@@ -351,8 +385,8 @@ export function buildFetchRecentCriteria(options) {
351
385
  }
352
386
  return {
353
387
  criteria,
354
- clientSideTo: to,
355
- fetchLimit: to ? limit * TO_OVERFETCH_MULTIPLIER : limit,
388
+ clientSideRecipients: recipients,
389
+ fetchLimit: recipients ? limit * TO_OVERFETCH_MULTIPLIER : limit,
356
390
  };
357
391
  }
358
392
  /**
@@ -363,6 +397,7 @@ export function buildFetchRecentCriteria(options) {
363
397
  */
364
398
  export function buildSearchCriteria(options) {
365
399
  const { sender, subject, body, since, before, to } = options;
400
+ const recipients = to ? (Array.isArray(to) ? to : [to]) : undefined;
366
401
  const criteria = {};
367
402
  if (sender)
368
403
  criteria.from = sender;
@@ -375,9 +410,9 @@ export function buildSearchCriteria(options) {
375
410
  if (before)
376
411
  criteria.before = before;
377
412
  // TO is intentionally excluded — filtered client-side after fetch
378
- // When TO was the only effective filter (nothing else bounds the search),
379
- // inject a date floor to prevent unbounded full-mailbox scans
380
- if (to && Object.keys(criteria).length === 0) {
413
+ // When recipient filtering was the only effective filter (nothing else
414
+ // bounds the search), inject a date floor to prevent unbounded full-mailbox scans
415
+ if (recipients && Object.keys(criteria).length === 0) {
381
416
  const sinceFloor = new Date();
382
417
  sinceFloor.setDate(sinceFloor.getDate() - DEFAULT_SINCE_DAYS);
383
418
  criteria.since = sinceFloor;
@@ -387,7 +422,7 @@ export function buildSearchCriteria(options) {
387
422
  }
388
423
  return {
389
424
  criteria,
390
- clientSideTo: to,
425
+ clientSideRecipients: recipients,
391
426
  };
392
427
  }
393
428
  /**
@@ -408,11 +443,11 @@ export async function fetchRecent(config, password, options = {}) {
408
443
  }
409
444
  catch { /* invalid — ignore */ }
410
445
  }
411
- const { criteria, clientSideTo, fetchLimit } = buildFetchRecentCriteria({
446
+ const { criteria, clientSideRecipients, fetchLimit } = buildFetchRecentCriteria({
412
447
  sender, since, before, to, limit,
413
448
  });
414
449
  const t0 = Date.now();
415
- diag("fetchRecent", "start", `folder=${folder} criteria=${JSON.stringify(criteria)} fetchLimit=${fetchLimit} clientSideTo=${clientSideTo ?? "none"} beforeUid=${beforeUid ?? "none"}`);
450
+ diag("fetchRecent", "start", `folder=${folder} criteria=${JSON.stringify(criteria)} fetchLimit=${fetchLimit} clientSideRecipients=${clientSideRecipients ? `[${clientSideRecipients.join(",")}]` : "none"} beforeUid=${beforeUid ?? "none"}`);
416
451
  try {
417
452
  await client.connect();
418
453
  diag("fetchRecent", "connected", `${Date.now() - t0}ms`);
@@ -441,6 +476,8 @@ export async function fetchRecent(config, password, options = {}) {
441
476
  const uidList = recentUids.map(String).join(",");
442
477
  diag("fetchRecent", "fetching envelopes", `UIDs=[${uidList}]`);
443
478
  let envelopeCount = 0;
479
+ let recipientKept = 0;
480
+ let recipientHidden = 0;
444
481
  for await (const msg of client.fetch(uidList, {
445
482
  envelope: true,
446
483
  uid: true,
@@ -449,9 +486,14 @@ export async function fetchRecent(config, password, options = {}) {
449
486
  }, { uid: true })) {
450
487
  envelopeCount++;
451
488
  diag("fetchRecent", `envelope #${envelopeCount}`, `uid=${msg.uid} from=${msg.envelope?.from?.[0]?.address ?? "?"} at ${Date.now() - t2}ms`);
452
- // Client-side TO filter (replaces IMAP SEARCH TO)
453
- if (clientSideTo && !matchesRecipient(msg.envelope ?? {}, clientSideTo))
454
- continue;
489
+ // Client-side recipient filter (replaces IMAP SEARCH TO), with kept-vs-hidden accounting
490
+ if (clientSideRecipients) {
491
+ if (!matchesRecipient(msg.envelope ?? {}, clientSideRecipients)) {
492
+ recipientHidden++;
493
+ continue;
494
+ }
495
+ recipientKept++;
496
+ }
455
497
  const fromAddr = msg.envelope?.from?.[0]?.address ?? "(unknown)";
456
498
  const subject = msg.envelope?.subject ?? "(no subject)";
457
499
  const date = msg.envelope?.date?.toISOString() ?? "(unknown date)";
@@ -459,30 +501,39 @@ export async function fetchRecent(config, password, options = {}) {
459
501
  const inReplyTo = msg.envelope?.inReplyTo ?? null;
460
502
  if (subjectRegex && !subjectRegex.test(subject))
461
503
  continue;
462
- // Stop once we have enough matches
463
- if (messages.length >= limit)
464
- break;
465
- const bodyPreview = extractBodyFromFetch(msg);
466
- diag("fetchRecent", `body #${envelopeCount}`, `uid=${msg.uid} preview=${bodyPreview.length}chars type=${msg.bodyStructure?.type ?? "?"}`);
467
- const attachments = walkAttachmentMetadata(msg.bodyStructure);
468
- messages.push({
469
- uid: msg.uid,
470
- messageId,
471
- inReplyTo,
472
- from: fromAddr,
473
- subject,
474
- date,
475
- bodyPreview,
476
- attachments,
477
- });
504
+ // Collect up to `limit` messages for display, but keep iterating past
505
+ // that point so the recipient kept/hidden accounting covers the whole
506
+ // fetched window — the envelopes are already fetched, so the extra
507
+ // iterations cost nothing on the wire and we skip body extraction.
508
+ if (messages.length < limit) {
509
+ const bodyPreview = extractBodyFromFetch(msg);
510
+ diag("fetchRecent", `body #${envelopeCount}`, `uid=${msg.uid} preview=${bodyPreview.length}chars type=${msg.bodyStructure?.type ?? "?"}`);
511
+ const attachments = walkAttachmentMetadata(msg.bodyStructure);
512
+ messages.push({
513
+ uid: msg.uid,
514
+ messageId,
515
+ inReplyTo,
516
+ from: fromAddr,
517
+ subject,
518
+ date,
519
+ bodyPreview,
520
+ attachments,
521
+ });
522
+ }
478
523
  }
479
524
  diag("fetchRecent", "fetch done", `${envelopeCount} envelopes, ${messages.length} messages in ${Date.now() - t2}ms (total ${Date.now() - t0}ms)`);
525
+ if (clientSideRecipients) {
526
+ diag("fetchRecent", "filter applied", `kept=${recipientKept} hidden=${recipientHidden} recipients=[${clientSideRecipients.join(",")}]`);
527
+ }
480
528
  // Return newest first
481
529
  messages.reverse();
482
530
  // Calculate pagination cursor: use the oldest UID in the *fetched* set
483
531
  // (not the filtered set) to avoid skipping messages between filtered-out
484
- // and kept messages when client-side TO/subject filtering is active
532
+ // and kept messages when client-side recipient/subject filtering is active
485
533
  const result = { messages };
534
+ if (clientSideRecipients) {
535
+ result.recipientFilter = { kept: recipientKept, hidden: recipientHidden, recipients: clientSideRecipients };
536
+ }
486
537
  if (totalAfterCursor > fetchLimit && recentUids.length > 0) {
487
538
  const oldestFetchedUid = recentUids[0]; // UIDs are sorted ascending
488
539
  result.nextBeforeUid = oldestFetchedUid;
@@ -511,13 +562,13 @@ export async function fetchRecent(config, password, options = {}) {
511
562
  export async function searchMessages(config, password, query) {
512
563
  const { sender, subject, body, since, before, limit = 20, to, folder = "inbox", beforeUid } = query;
513
564
  const client = createClient(config, password);
514
- // When client-side TO filtering is active, overfetch to compensate for non-matching messages
515
- const fetchLimit = to ? limit * TO_OVERFETCH_MULTIPLIER : limit;
516
- const { criteria, clientSideTo } = buildSearchCriteria({
565
+ const { criteria, clientSideRecipients } = buildSearchCriteria({
517
566
  sender, subject, body, since, before, to,
518
567
  });
568
+ // When client-side recipient filtering is active, overfetch to compensate for non-matching messages
569
+ const fetchLimit = clientSideRecipients ? limit * TO_OVERFETCH_MULTIPLIER : limit;
519
570
  const t0 = Date.now();
520
- diag("searchMessages", "start", `folder=${folder} criteria=${JSON.stringify(criteria)} clientSideTo=${clientSideTo ?? "none"} beforeUid=${beforeUid ?? "none"}`);
571
+ diag("searchMessages", "start", `folder=${folder} criteria=${JSON.stringify(criteria)} clientSideRecipients=${clientSideRecipients ? `[${clientSideRecipients.join(",")}]` : "none"} beforeUid=${beforeUid ?? "none"}`);
521
572
  try {
522
573
  await client.connect();
523
574
  diag("searchMessages", "connected", `${Date.now() - t0}ms`);
@@ -542,6 +593,8 @@ export async function searchMessages(config, password, query) {
542
593
  const messages = [];
543
594
  const t2 = Date.now();
544
595
  let envelopeCount = 0;
596
+ let recipientKept = 0;
597
+ let recipientHidden = 0;
545
598
  for await (const msg of client.fetch(recentUids.map(String).join(","), {
546
599
  envelope: true,
547
600
  uid: true,
@@ -549,33 +602,47 @@ export async function searchMessages(config, password, query) {
549
602
  bodyParts: [{ key: "1", start: 0, maxLength: BODY_MAX_BYTES }],
550
603
  }, { uid: true })) {
551
604
  envelopeCount++;
552
- // Client-side TO filter (replaces IMAP SEARCH TO)
553
- if (clientSideTo && !matchesRecipient(msg.envelope ?? {}, clientSideTo))
554
- continue;
605
+ // Client-side recipient filter (replaces IMAP SEARCH TO), with kept-vs-hidden accounting
606
+ if (clientSideRecipients) {
607
+ if (!matchesRecipient(msg.envelope ?? {}, clientSideRecipients)) {
608
+ recipientHidden++;
609
+ continue;
610
+ }
611
+ recipientKept++;
612
+ }
555
613
  const fromAddr = msg.envelope?.from?.[0]?.address ?? "(unknown)";
556
614
  const subj = msg.envelope?.subject ?? "(no subject)";
557
615
  const date = msg.envelope?.date?.toISOString() ?? "(unknown date)";
558
616
  const messageId = msg.envelope?.messageId ?? null;
559
617
  const inReplyTo = msg.envelope?.inReplyTo ?? null;
560
- // Stop once we have enough matches
561
- if (messages.length >= limit)
562
- break;
563
- const bodyPreview = extractBodyFromFetch(msg);
564
- const attachments = walkAttachmentMetadata(msg.bodyStructure);
565
- messages.push({
566
- uid: msg.uid,
567
- messageId,
568
- inReplyTo,
569
- from: fromAddr,
570
- subject: subj,
571
- date,
572
- bodyPreview,
573
- attachments,
574
- });
618
+ // Collect up to `limit` messages for display, but keep iterating past
619
+ // that point so the recipient kept/hidden accounting covers the whole
620
+ // fetched window — the envelopes are already fetched, so the extra
621
+ // iterations cost nothing on the wire and we skip body extraction.
622
+ if (messages.length < limit) {
623
+ const bodyPreview = extractBodyFromFetch(msg);
624
+ const attachments = walkAttachmentMetadata(msg.bodyStructure);
625
+ messages.push({
626
+ uid: msg.uid,
627
+ messageId,
628
+ inReplyTo,
629
+ from: fromAddr,
630
+ subject: subj,
631
+ date,
632
+ bodyPreview,
633
+ attachments,
634
+ });
635
+ }
575
636
  }
576
637
  diag("searchMessages", "fetch done", `${envelopeCount} envelopes, ${messages.length} messages in ${Date.now() - t2}ms (total ${Date.now() - t0}ms)`);
638
+ if (clientSideRecipients) {
639
+ diag("searchMessages", "filter applied", `kept=${recipientKept} hidden=${recipientHidden} recipients=[${clientSideRecipients.join(",")}]`);
640
+ }
577
641
  messages.reverse();
578
642
  const result = { messages };
643
+ if (clientSideRecipients) {
644
+ result.recipientFilter = { kept: recipientKept, hidden: recipientHidden, recipients: clientSideRecipients };
645
+ }
579
646
  if (totalAfterCursor > fetchLimit && recentUids.length > 0) {
580
647
  const oldestFetchedUid = recentUids[0]; // UIDs are sorted ascending
581
648
  result.nextBeforeUid = oldestFetchedUid;
@@ -605,15 +672,15 @@ export async function searchMessages(config, password, query) {
605
672
  * When sinceUid is 0 (first poll), fetches emails from the last 7 days
606
673
  * to avoid pulling the entire mailbox on large accounts.
607
674
  *
608
- * Client-side TO filtering is applied when recipientAddress differs
609
- * from the auth email (alias/catchall scenarios).
675
+ * Client-side To/Cc filtering is applied when a recipient set is supplied
676
+ * (alias/catchall scenarios); when the set is undefined no filter runs and
677
+ * every message in the UID window is returned.
610
678
  */
611
- export async function fetchSinceUid(config, password, sinceUid, recipientAddress) {
679
+ export async function fetchSinceUid(config, password, sinceUid, recipients) {
612
680
  const client = createClient(config, password);
613
681
  const t0 = Date.now();
614
682
  const isFirstPoll = sinceUid === 0;
615
- const filterTo = recipientAddress.toLowerCase() !== config.email.toLowerCase();
616
- diag("fetchSinceUid", "start", `sinceUid=${sinceUid} firstPoll=${isFirstPoll} filterTo=${filterTo ? recipientAddress : "none"}`);
683
+ diag("fetchSinceUid", "start", `sinceUid=${sinceUid} firstPoll=${isFirstPoll} recipients=${recipients ? `[${recipients.join(",")}]` : "none"}`);
617
684
  try {
618
685
  await client.connect();
619
686
  diag("fetchSinceUid", "connected", `${Date.now() - t0}ms`);
@@ -644,6 +711,8 @@ export async function fetchSinceUid(config, password, sinceUid, recipientAddress
644
711
  }
645
712
  const emails = [];
646
713
  let maxUid = sinceUid;
714
+ let kept = 0;
715
+ let hidden = 0;
647
716
  const t2 = Date.now();
648
717
  const uidList = uids.map(String).join(",");
649
718
  for await (const msg of client.fetch(uidList, {
@@ -656,9 +725,14 @@ export async function fetchSinceUid(config, password, sinceUid, recipientAddress
656
725
  const uid = Number(msg.uid);
657
726
  if (uid > maxUid)
658
727
  maxUid = uid;
659
- // Client-side TO filter for alias/catchall accounts
660
- if (filterTo && !matchesRecipient(msg.envelope ?? {}, recipientAddress))
661
- continue;
728
+ // Client-side To/Cc filter for alias/catchall accounts
729
+ if (recipients) {
730
+ if (!matchesRecipient(msg.envelope ?? {}, recipients)) {
731
+ hidden++;
732
+ continue;
733
+ }
734
+ kept++;
735
+ }
662
736
  const fromAddr = msg.envelope?.from?.[0]?.address ?? "(unknown)";
663
737
  const fromName = msg.envelope?.from?.[0]?.name ?? null;
664
738
  const subject = msg.envelope?.subject ?? "(no subject)";
@@ -672,6 +746,9 @@ export async function fetchSinceUid(config, password, sinceUid, recipientAddress
672
746
  emails.push({ uid, messageId, inReplyTo, toAddresses, ccAddresses, fromAddress: fromAddr, fromName, subject, date, bodyPreview, attachments });
673
747
  }
674
748
  diag("fetchSinceUid", "fetch done", `${emails.length} emails (maxUid=${maxUid}) in ${Date.now() - t2}ms (total ${Date.now() - t0}ms)`);
749
+ if (recipients) {
750
+ diag("fetchSinceUid", "filter applied", `kept=${kept} hidden=${hidden} recipients=[${recipients.join(",")}]`);
751
+ }
675
752
  return { uidValidity, emails, maxUid };
676
753
  }
677
754
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"imap.js","sourceRoot":"","sources":["../../src/lib/imap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imap.js","sourceRoot":"","sources":["../../src/lib/imap.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,14 @@ import type { FetchedEmail } from "./imap.js";
14
14
  export interface PendingBatch {
15
15
  uidValidity: number;
16
16
  maxUid: number;
17
+ /**
18
+ * The login owned representative (`config.email`) the fetched batch is
19
+ * attributed to. The `{login, alias}` recipient set is applied as the fetch
20
+ * filter inside `email-fetch`/`fetchSinceUid`; this field records the single
21
+ * owned address relayed onto `EmailData.recipientAddress`. No graph writer
22
+ * currently persists that field (the conversation-archive dispatcher derives
23
+ * participants from from/to/cc), so this is an in-memory contract only.
24
+ */
17
25
  recipientAddress: string;
18
26
  messages: FetchedEmail[];
19
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ingest-batch.d.ts","sourceRoot":"","sources":["../../src/lib/ingest-batch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAID,wBAAgB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,CAErE;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAKhE;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAEhE"}
1
+ {"version":3,"file":"ingest-batch.d.ts","sourceRoot":"","sources":["../../src/lib/ingest-batch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;OAOG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAID,wBAAgB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,CAErE;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAKhE;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAEhE"}
@@ -1 +1 @@
1
- {"version":3,"file":"ingest-batch.js","sourceRoot":"","sources":["../../src/lib/ingest-batch.ts"],"names":[],"mappings":"AAqBA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;AAEhD,MAAM,UAAU,QAAQ,CAAC,SAAiB,EAAE,KAAmB;IAC7D,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,SAAiB;IACzC,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC1B,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,SAAiB;IACzC,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"ingest-batch.js","sourceRoot":"","sources":["../../src/lib/ingest-batch.ts"],"names":[],"mappings":"AA6BA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;AAEhD,MAAM,UAAU,QAAQ,CAAC,SAAiB,EAAE,KAAmB;IAC7D,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,SAAiB;IACzC,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACjC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC1B,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,SAAiB;IACzC,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;AACxC,CAAC"}
@@ -20,20 +20,25 @@ export interface ProviderDefaults {
20
20
  notes?: string;
21
21
  }
22
22
  /**
23
- * Look up provider defaults from an email address domain.
24
- * Returns null for unknown domains the agent must ask the user for hosts.
23
+ * Look up provider defaults from an email address domain. Static map first,
24
+ * then a Google-MX fallback for custom domains. Returns null for unknown
25
+ * domains and for Microsoft addresses (no usable IMAP defaults — they route to
26
+ * the outlook Graph plugin); the agent must ask the user for hosts only in the
27
+ * genuinely-unknown case.
25
28
  */
26
- export declare function inferProvider(email: string): ProviderDefaults | null;
29
+ export declare function inferProvider(email: string): Promise<ProviderDefaults | null>;
27
30
  /**
28
31
  * Get provider-specific setup notes for an email domain.
29
32
  * Returns null for unknown domains or providers without notes.
30
33
  */
31
- export declare function getProviderNotes(email: string): string | null;
34
+ export declare function getProviderNotes(email: string): Promise<string | null>;
32
35
  /**
33
36
  * Result of classifying an email address before any password is requested.
34
37
  *
35
38
  * known → hosts inferred; `notes` carries the app-password / IMAP-enable
36
39
  * requirement to relay first (may be undefined for hosts with no gotcha).
40
+ * redirect → a Microsoft address; the email-plugin IMAP path is dead, so
41
+ * connect via the `outlook` Graph plugin's `registerTool`.
37
42
  * unsupported → the provider blocks IMAP/SMTP entirely; `reason` explains why.
38
43
  * unknown → no host mapping; the operator must supply hosts explicitly.
39
44
  */
@@ -42,6 +47,12 @@ export type ProviderInfo = {
42
47
  domain: string;
43
48
  defaults: ProviderDefaults;
44
49
  notes?: string;
50
+ } | {
51
+ status: "redirect";
52
+ domain: string;
53
+ plugin: string;
54
+ registerTool: string;
55
+ reason: string;
45
56
  } | {
46
57
  status: "unsupported";
47
58
  domain: string;
@@ -56,5 +67,5 @@ export type ProviderInfo = {
56
67
  * app-password / trusted-application requirement from the provider map, never
57
68
  * from the model's training memory of each provider.
58
69
  */
59
- export declare function describeProvider(email: string): ProviderInfo;
70
+ export declare function describeProvider(email: string): Promise<ProviderInfo>;
60
71
  //# sourceMappingURL=providers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/lib/providers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,KAAK,GAAG,UAAU,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,KAAK,GAAG,UAAU,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA+rBD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAIpE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG7D;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,gBAAgB,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/E;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACzD;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAEjD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAW5D"}
1
+ {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/lib/providers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,KAAK,GAAG,UAAU,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,KAAK,GAAG,UAAU,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA4zBD;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAKnF;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAG5E;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,gBAAgB,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/E;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC5F;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACzD;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAEjD;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAoB3E"}