@withbuddi/buddi 0.1.0-pre.44 → 0.1.0-pre.46
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.
- package/extension/background.js +157 -1
- package/extension/manifest.json +5 -2
- package/extension/popup.html +4 -0
- package/extension/popup.js +18 -0
- package/node_modules/@buddi/cli/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/cli/dist/mcp/tools.d.ts +3 -8
- package/node_modules/@buddi/cli/dist/mcp/tools.d.ts.map +1 -1
- package/node_modules/@buddi/cli/dist/mcp/tools.js +22 -4
- package/node_modules/@buddi/cli/dist/mcp/tools.js.map +1 -1
- package/node_modules/@buddi/core/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/core/dist/artifacts/orphans.d.ts +6 -4
- package/node_modules/@buddi/core/dist/artifacts/orphans.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/artifacts/orphans.js +10 -3
- package/node_modules/@buddi/core/dist/artifacts/orphans.js.map +1 -1
- package/node_modules/@buddi/core/dist/groups.d.ts +0 -9
- package/node_modules/@buddi/core/dist/groups.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/groups.js +13 -1
- package/node_modules/@buddi/core/dist/groups.js.map +1 -1
- package/node_modules/@buddi/core/dist/pages.d.ts +24 -1
- package/node_modules/@buddi/core/dist/pages.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/pages.js +61 -1
- package/node_modules/@buddi/core/dist/pages.js.map +1 -1
- package/node_modules/@buddi/core/dist/pending-input.d.ts +13 -2
- package/node_modules/@buddi/core/dist/pending-input.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/pending-input.js +57 -12
- package/node_modules/@buddi/core/dist/pending-input.js.map +1 -1
- package/node_modules/@buddi/core/dist/plugin/version.d.ts +1 -1
- package/node_modules/@buddi/core/dist/plugin/version.js +1 -1
- package/node_modules/@buddi/core/dist/tools.d.ts +6 -1
- package/node_modules/@buddi/core/dist/tools.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/tools.js.map +1 -1
- package/node_modules/@buddi/core/dist/web-settings.d.ts +8 -0
- package/node_modules/@buddi/core/dist/web-settings.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/web-settings.js +14 -0
- package/node_modules/@buddi/core/dist/web-settings.js.map +1 -1
- package/node_modules/@buddi/core/migrations/078_pending_input_files.sql +8 -0
- package/node_modules/@buddi/gateway/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/gateway/dist/agents/agent-intro.d.ts +31 -0
- package/node_modules/@buddi/gateway/dist/agents/agent-intro.d.ts.map +1 -0
- package/node_modules/@buddi/gateway/dist/agents/agent-intro.js +116 -0
- package/node_modules/@buddi/gateway/dist/agents/agent-intro.js.map +1 -0
- package/node_modules/@buddi/gateway/dist/agents/delegation.d.ts +10 -0
- package/node_modules/@buddi/gateway/dist/agents/delegation.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/agents/delegation.js +18 -1
- package/node_modules/@buddi/gateway/dist/agents/delegation.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/agents/platform.d.ts +14 -1
- package/node_modules/@buddi/gateway/dist/agents/platform.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/agents/platform.js +44 -11
- package/node_modules/@buddi/gateway/dist/agents/platform.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/bootstrap.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/bootstrap.js +2 -0
- package/node_modules/@buddi/gateway/dist/bootstrap.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/browser-host.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/browser-host.js +1 -0
- package/node_modules/@buddi/gateway/dist/browser-host.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/edition-origin.d.ts +57 -0
- package/node_modules/@buddi/gateway/dist/edition-origin.d.ts.map +1 -0
- package/node_modules/@buddi/gateway/dist/edition-origin.js +156 -0
- package/node_modules/@buddi/gateway/dist/edition-origin.js.map +1 -0
- package/node_modules/@buddi/gateway/dist/system-context.d.ts +9 -0
- package/node_modules/@buddi/gateway/dist/system-context.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/system-context.js +28 -2
- package/node_modules/@buddi/gateway/dist/system-context.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/telegram/approvals.d.ts +6 -0
- package/node_modules/@buddi/gateway/dist/telegram/approvals.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/telegram/approvals.js +10 -2
- package/node_modules/@buddi/gateway/dist/telegram/approvals.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/telegram/main.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/telegram/main.js +10 -3
- package/node_modules/@buddi/gateway/dist/telegram/main.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/telegram/outbound.d.ts +9 -0
- package/node_modules/@buddi/gateway/dist/telegram/outbound.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/telegram/outbound.js +43 -0
- package/node_modules/@buddi/gateway/dist/telegram/outbound.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/telegram/surface.d.ts +2 -0
- package/node_modules/@buddi/gateway/dist/telegram/surface.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/telegram/surface.js +2 -1
- package/node_modules/@buddi/gateway/dist/telegram/surface.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/tips/engine.d.ts +32 -0
- package/node_modules/@buddi/gateway/dist/tips/engine.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/tips/engine.js +69 -0
- package/node_modules/@buddi/gateway/dist/tips/engine.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/tips/route.d.ts +1 -3
- package/node_modules/@buddi/gateway/dist/tips/route.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/tips/route.js +54 -30
- package/node_modules/@buddi/gateway/dist/tips/route.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/agent-offers.d.ts +10 -1
- package/node_modules/@buddi/gateway/dist/web/agent-offers.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/agent-offers.js +14 -1
- package/node_modules/@buddi/gateway/dist/web/agent-offers.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/api-routes.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/api-routes.js +38 -7
- package/node_modules/@buddi/gateway/dist/web/api-routes.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/approval-ask.d.ts +16 -0
- package/node_modules/@buddi/gateway/dist/web/approval-ask.d.ts.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/approval-ask.js +51 -0
- package/node_modules/@buddi/gateway/dist/web/approval-ask.js.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/attention.d.ts +37 -0
- package/node_modules/@buddi/gateway/dist/web/attention.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/attention.js +54 -10
- package/node_modules/@buddi/gateway/dist/web/attention.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/canvas-tabs.d.ts +41 -0
- package/node_modules/@buddi/gateway/dist/web/canvas-tabs.d.ts.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/canvas-tabs.js +68 -0
- package/node_modules/@buddi/gateway/dist/web/canvas-tabs.js.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/chat.d.ts +6 -9
- package/node_modules/@buddi/gateway/dist/web/chat.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/chat.js +37 -19
- package/node_modules/@buddi/gateway/dist/web/chat.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/extension.d.ts +11 -1
- package/node_modules/@buddi/gateway/dist/web/extension.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/extension.js +51 -0
- package/node_modules/@buddi/gateway/dist/web/extension.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/live.d.ts +7 -0
- package/node_modules/@buddi/gateway/dist/web/live.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/live.js +12 -0
- package/node_modules/@buddi/gateway/dist/web/live.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/pages.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/pages.js +10 -1
- package/node_modules/@buddi/gateway/dist/web/pages.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/server.d.ts +0 -4
- package/node_modules/@buddi/gateway/dist/web/server.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/server.js +102 -7
- package/node_modules/@buddi/gateway/dist/web/server.js.map +1 -1
- package/node_modules/@buddi/install/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/runtime/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/runtime/dist/codex-direct.d.ts +1 -1
- package/node_modules/@buddi/runtime/dist/codex-direct.js +1 -1
- package/node_modules/@buddi/runtime/dist/grounding.d.ts +54 -0
- package/node_modules/@buddi/runtime/dist/grounding.d.ts.map +1 -0
- package/node_modules/@buddi/runtime/dist/grounding.js +158 -0
- package/node_modules/@buddi/runtime/dist/grounding.js.map +1 -0
- package/node_modules/@buddi/runtime/dist/index.d.ts +1 -0
- package/node_modules/@buddi/runtime/dist/index.d.ts.map +1 -1
- package/node_modules/@buddi/runtime/dist/index.js +1 -0
- package/node_modules/@buddi/runtime/dist/index.js.map +1 -1
- package/node_modules/@buddi/runtime/dist/loop.d.ts +19 -0
- package/node_modules/@buddi/runtime/dist/loop.d.ts.map +1 -1
- package/node_modules/@buddi/runtime/dist/loop.js +123 -13
- package/node_modules/@buddi/runtime/dist/loop.js.map +1 -1
- package/node_modules/@buddi/tool-artifacts/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-artifacts/dist/extract.d.ts +6 -0
- package/node_modules/@buddi/tool-artifacts/dist/extract.d.ts.map +1 -1
- package/node_modules/@buddi/tool-artifacts/dist/extract.js +6 -0
- package/node_modules/@buddi/tool-artifacts/dist/extract.js.map +1 -1
- package/node_modules/@buddi/tool-artifacts/dist/tools/artifacts.d.ts +1 -0
- package/node_modules/@buddi/tool-artifacts/dist/tools/artifacts.d.ts.map +1 -1
- package/node_modules/@buddi/tool-artifacts/dist/tools/artifacts.js +30 -8
- package/node_modules/@buddi/tool-artifacts/dist/tools/artifacts.js.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-browser/dist/controller.d.ts +25 -0
- package/node_modules/@buddi/tool-browser/dist/controller.d.ts.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/controller.js +25 -1
- package/node_modules/@buddi/tool-browser/dist/controller.js.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/downloads.d.ts +138 -0
- package/node_modules/@buddi/tool-browser/dist/downloads.d.ts.map +1 -0
- package/node_modules/@buddi/tool-browser/dist/downloads.js +529 -0
- package/node_modules/@buddi/tool-browser/dist/downloads.js.map +1 -0
- package/node_modules/@buddi/tool-browser/dist/driver.d.ts +17 -1
- package/node_modules/@buddi/tool-browser/dist/driver.d.ts.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/driver.js +48 -0
- package/node_modules/@buddi/tool-browser/dist/driver.js.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/extension.d.ts +23 -0
- package/node_modules/@buddi/tool-browser/dist/extension.d.ts.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/extension.js +20 -0
- package/node_modules/@buddi/tool-browser/dist/extension.js.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/host.d.ts +3 -1
- package/node_modules/@buddi/tool-browser/dist/host.d.ts.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/host.js +9 -2
- package/node_modules/@buddi/tool-browser/dist/host.js.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/index.d.ts +7 -3
- package/node_modules/@buddi/tool-browser/dist/index.d.ts.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/index.js +5 -3
- package/node_modules/@buddi/tool-browser/dist/index.js.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/service.d.ts +28 -0
- package/node_modules/@buddi/tool-browser/dist/service.d.ts.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/service.js +58 -1
- package/node_modules/@buddi/tool-browser/dist/service.js.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/settings.d.ts +8 -0
- package/node_modules/@buddi/tool-browser/dist/settings.d.ts.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/settings.js +9 -0
- package/node_modules/@buddi/tool-browser/dist/settings.js.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/types.d.ts +31 -24
- package/node_modules/@buddi/tool-browser/dist/types.d.ts.map +1 -1
- package/node_modules/@buddi/tool-browser/dist/types.js.map +1 -1
- package/node_modules/@buddi/tool-email/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-email/dist/agent.d.ts +6 -1
- package/node_modules/@buddi/tool-email/dist/agent.d.ts.map +1 -1
- package/node_modules/@buddi/tool-email/dist/agent.js +6 -1
- package/node_modules/@buddi/tool-email/dist/agent.js.map +1 -1
- package/node_modules/@buddi/tool-email/dist/imap/fake.d.ts +8 -0
- package/node_modules/@buddi/tool-email/dist/imap/fake.d.ts.map +1 -1
- package/node_modules/@buddi/tool-email/dist/imap/fake.js +15 -0
- package/node_modules/@buddi/tool-email/dist/imap/fake.js.map +1 -1
- package/node_modules/@buddi/tool-email/dist/imap/imapflow-client.d.ts.map +1 -1
- package/node_modules/@buddi/tool-email/dist/imap/imapflow-client.js +26 -17
- package/node_modules/@buddi/tool-email/dist/imap/imapflow-client.js.map +1 -1
- package/node_modules/@buddi/tool-email/dist/index.d.ts +5 -1
- package/node_modules/@buddi/tool-email/dist/index.d.ts.map +1 -1
- package/node_modules/@buddi/tool-email/dist/index.js +11 -3
- package/node_modules/@buddi/tool-email/dist/index.js.map +1 -1
- package/node_modules/@buddi/tool-email/dist/mail.d.ts.map +1 -1
- package/node_modules/@buddi/tool-email/dist/mail.js +4 -1
- package/node_modules/@buddi/tool-email/dist/mail.js.map +1 -1
- package/node_modules/@buddi/tool-email/dist/pages/index.d.ts +2 -1
- package/node_modules/@buddi/tool-email/dist/pages/index.d.ts.map +1 -1
- package/node_modules/@buddi/tool-email/dist/pages/index.js +2 -2
- package/node_modules/@buddi/tool-email/dist/pages/index.js.map +1 -1
- package/node_modules/@buddi/tool-email/dist/pages/queries.d.ts +3 -2
- package/node_modules/@buddi/tool-email/dist/pages/queries.d.ts.map +1 -1
- package/node_modules/@buddi/tool-email/dist/pages/queries.js +19 -7
- package/node_modules/@buddi/tool-email/dist/pages/queries.js.map +1 -1
- package/node_modules/@buddi/tool-email/dist/ports.d.ts +15 -0
- package/node_modules/@buddi/tool-email/dist/ports.d.ts.map +1 -1
- package/node_modules/@buddi/tool-email/dist/ports.js.map +1 -1
- package/node_modules/@buddi/tool-email/dist/sources/inbox-poll.d.ts +9 -1
- package/node_modules/@buddi/tool-email/dist/sources/inbox-poll.d.ts.map +1 -1
- package/node_modules/@buddi/tool-email/dist/sources/inbox-poll.js +1 -0
- package/node_modules/@buddi/tool-email/dist/sources/inbox-poll.js.map +1 -1
- package/node_modules/@buddi/tool-email/dist/text-cleanup.d.ts +69 -0
- package/node_modules/@buddi/tool-email/dist/text-cleanup.d.ts.map +1 -0
- package/node_modules/@buddi/tool-email/dist/text-cleanup.js +96 -0
- package/node_modules/@buddi/tool-email/dist/text-cleanup.js.map +1 -0
- package/node_modules/@buddi/tool-email/dist/text.d.ts +29 -0
- package/node_modules/@buddi/tool-email/dist/text.d.ts.map +1 -0
- package/node_modules/@buddi/tool-email/dist/text.js +153 -0
- package/node_modules/@buddi/tool-email/dist/text.js.map +1 -0
- package/node_modules/@buddi/tool-email/dist/worker.d.ts +64 -0
- package/node_modules/@buddi/tool-email/dist/worker.d.ts.map +1 -0
- package/node_modules/@buddi/tool-email/dist/worker.js +123 -0
- package/node_modules/@buddi/tool-email/dist/worker.js.map +1 -0
- package/node_modules/@buddi/tool-email/migrations/028_reading.sql +5 -2
- package/node_modules/@buddi/tool-host/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-mcp/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-memory/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-web/dist/.tsbuildinfo +1 -1
- package/node_modules/marked/bin/main.js +1 -1
- package/node_modules/marked/lib/marked.d.ts +7 -0
- package/node_modules/marked/lib/marked.esm.js +14 -14
- package/node_modules/marked/lib/marked.esm.js.map +3 -3
- package/node_modules/marked/lib/marked.umd.js +19 -19
- package/node_modules/marked/lib/marked.umd.js.map +3 -3
- package/node_modules/marked/man/marked.1 +1 -1
- package/node_modules/marked/package.json +1 -1
- package/node_modules/nanoid/README.md +3 -3
- package/node_modules/nanoid/index.browser.js +4 -5
- package/node_modules/nanoid/index.d.ts +3 -3
- package/node_modules/nanoid/index.js +2 -3
- package/node_modules/nanoid/nanoid.js +1 -1
- package/node_modules/nanoid/package.json +2 -2
- package/node_modules/nanoid/url-alphabet/index.js +1 -1
- package/package.json +2 -2
- package/packages/cli/dist/.tsbuildinfo +1 -1
- package/packages/cli/dist/mcp/tools.d.ts +3 -8
- package/packages/cli/dist/mcp/tools.d.ts.map +1 -1
- package/packages/cli/dist/mcp/tools.js +22 -4
- package/packages/cli/dist/mcp/tools.js.map +1 -1
- package/packages/core/dist/.tsbuildinfo +1 -1
- package/packages/core/dist/artifacts/orphans.d.ts +6 -4
- package/packages/core/dist/artifacts/orphans.d.ts.map +1 -1
- package/packages/core/dist/artifacts/orphans.js +10 -3
- package/packages/core/dist/artifacts/orphans.js.map +1 -1
- package/packages/core/dist/groups.d.ts +0 -9
- package/packages/core/dist/groups.d.ts.map +1 -1
- package/packages/core/dist/groups.js +13 -1
- package/packages/core/dist/groups.js.map +1 -1
- package/packages/core/dist/pages.d.ts +24 -1
- package/packages/core/dist/pages.d.ts.map +1 -1
- package/packages/core/dist/pages.js +61 -1
- package/packages/core/dist/pages.js.map +1 -1
- package/packages/core/dist/pending-input.d.ts +13 -2
- package/packages/core/dist/pending-input.d.ts.map +1 -1
- package/packages/core/dist/pending-input.js +57 -12
- package/packages/core/dist/pending-input.js.map +1 -1
- package/packages/core/dist/plugin/version.d.ts +1 -1
- package/packages/core/dist/plugin/version.js +1 -1
- package/packages/core/dist/tools.d.ts +6 -1
- package/packages/core/dist/tools.d.ts.map +1 -1
- package/packages/core/dist/tools.js.map +1 -1
- package/packages/core/dist/web-settings.d.ts +8 -0
- package/packages/core/dist/web-settings.d.ts.map +1 -1
- package/packages/core/dist/web-settings.js +14 -0
- package/packages/core/dist/web-settings.js.map +1 -1
- package/packages/core/migrations/078_pending_input_files.sql +8 -0
- package/packages/gateway/dist/.tsbuildinfo +1 -1
- package/packages/gateway/dist/agents/agent-intro.d.ts +31 -0
- package/packages/gateway/dist/agents/agent-intro.d.ts.map +1 -0
- package/packages/gateway/dist/agents/agent-intro.js +116 -0
- package/packages/gateway/dist/agents/agent-intro.js.map +1 -0
- package/packages/gateway/dist/agents/delegation.d.ts +10 -0
- package/packages/gateway/dist/agents/delegation.d.ts.map +1 -1
- package/packages/gateway/dist/agents/delegation.js +18 -1
- package/packages/gateway/dist/agents/delegation.js.map +1 -1
- package/packages/gateway/dist/agents/platform.d.ts +14 -1
- package/packages/gateway/dist/agents/platform.d.ts.map +1 -1
- package/packages/gateway/dist/agents/platform.js +44 -11
- package/packages/gateway/dist/agents/platform.js.map +1 -1
- package/packages/gateway/dist/bootstrap.d.ts.map +1 -1
- package/packages/gateway/dist/bootstrap.js +2 -0
- package/packages/gateway/dist/bootstrap.js.map +1 -1
- package/packages/gateway/dist/browser-host.d.ts.map +1 -1
- package/packages/gateway/dist/browser-host.js +1 -0
- package/packages/gateway/dist/browser-host.js.map +1 -1
- package/packages/gateway/dist/edition-origin.d.ts +57 -0
- package/packages/gateway/dist/edition-origin.d.ts.map +1 -0
- package/packages/gateway/dist/edition-origin.js +156 -0
- package/packages/gateway/dist/edition-origin.js.map +1 -0
- package/packages/gateway/dist/system-context.d.ts +9 -0
- package/packages/gateway/dist/system-context.d.ts.map +1 -1
- package/packages/gateway/dist/system-context.js +28 -2
- package/packages/gateway/dist/system-context.js.map +1 -1
- package/packages/gateway/dist/telegram/approvals.d.ts +6 -0
- package/packages/gateway/dist/telegram/approvals.d.ts.map +1 -1
- package/packages/gateway/dist/telegram/approvals.js +10 -2
- package/packages/gateway/dist/telegram/approvals.js.map +1 -1
- package/packages/gateway/dist/telegram/main.d.ts.map +1 -1
- package/packages/gateway/dist/telegram/main.js +10 -3
- package/packages/gateway/dist/telegram/main.js.map +1 -1
- package/packages/gateway/dist/telegram/outbound.d.ts +9 -0
- package/packages/gateway/dist/telegram/outbound.d.ts.map +1 -1
- package/packages/gateway/dist/telegram/outbound.js +43 -0
- package/packages/gateway/dist/telegram/outbound.js.map +1 -1
- package/packages/gateway/dist/telegram/surface.d.ts +2 -0
- package/packages/gateway/dist/telegram/surface.d.ts.map +1 -1
- package/packages/gateway/dist/telegram/surface.js +2 -1
- package/packages/gateway/dist/telegram/surface.js.map +1 -1
- package/packages/gateway/dist/tips/engine.d.ts +32 -0
- package/packages/gateway/dist/tips/engine.d.ts.map +1 -1
- package/packages/gateway/dist/tips/engine.js +69 -0
- package/packages/gateway/dist/tips/engine.js.map +1 -1
- package/packages/gateway/dist/tips/route.d.ts +1 -3
- package/packages/gateway/dist/tips/route.d.ts.map +1 -1
- package/packages/gateway/dist/tips/route.js +54 -30
- package/packages/gateway/dist/tips/route.js.map +1 -1
- package/packages/gateway/dist/web/agent-offers.d.ts +10 -1
- package/packages/gateway/dist/web/agent-offers.d.ts.map +1 -1
- package/packages/gateway/dist/web/agent-offers.js +14 -1
- package/packages/gateway/dist/web/agent-offers.js.map +1 -1
- package/packages/gateway/dist/web/api-routes.d.ts.map +1 -1
- package/packages/gateway/dist/web/api-routes.js +38 -7
- package/packages/gateway/dist/web/api-routes.js.map +1 -1
- package/packages/gateway/dist/web/approval-ask.d.ts +16 -0
- package/packages/gateway/dist/web/approval-ask.d.ts.map +1 -0
- package/packages/gateway/dist/web/approval-ask.js +51 -0
- package/packages/gateway/dist/web/approval-ask.js.map +1 -0
- package/packages/gateway/dist/web/attention.d.ts +37 -0
- package/packages/gateway/dist/web/attention.d.ts.map +1 -1
- package/packages/gateway/dist/web/attention.js +54 -10
- package/packages/gateway/dist/web/attention.js.map +1 -1
- package/packages/gateway/dist/web/canvas-tabs.d.ts +41 -0
- package/packages/gateway/dist/web/canvas-tabs.d.ts.map +1 -0
- package/packages/gateway/dist/web/canvas-tabs.js +68 -0
- package/packages/gateway/dist/web/canvas-tabs.js.map +1 -0
- package/packages/gateway/dist/web/chat.d.ts +6 -9
- package/packages/gateway/dist/web/chat.d.ts.map +1 -1
- package/packages/gateway/dist/web/chat.js +37 -19
- package/packages/gateway/dist/web/chat.js.map +1 -1
- package/packages/gateway/dist/web/extension.d.ts +11 -1
- package/packages/gateway/dist/web/extension.d.ts.map +1 -1
- package/packages/gateway/dist/web/extension.js +51 -0
- package/packages/gateway/dist/web/extension.js.map +1 -1
- package/packages/gateway/dist/web/live.d.ts +7 -0
- package/packages/gateway/dist/web/live.d.ts.map +1 -1
- package/packages/gateway/dist/web/live.js +12 -0
- package/packages/gateway/dist/web/live.js.map +1 -1
- package/packages/gateway/dist/web/pages.d.ts.map +1 -1
- package/packages/gateway/dist/web/pages.js +10 -1
- package/packages/gateway/dist/web/pages.js.map +1 -1
- package/packages/gateway/dist/web/server.d.ts +0 -4
- package/packages/gateway/dist/web/server.d.ts.map +1 -1
- package/packages/gateway/dist/web/server.js +102 -7
- package/packages/gateway/dist/web/server.js.map +1 -1
- package/packages/install/dist/.tsbuildinfo +1 -1
- package/packages/runtime/dist/.tsbuildinfo +1 -1
- package/packages/runtime/dist/codex-direct.d.ts +1 -1
- package/packages/runtime/dist/codex-direct.js +1 -1
- package/packages/runtime/dist/grounding.d.ts +54 -0
- package/packages/runtime/dist/grounding.d.ts.map +1 -0
- package/packages/runtime/dist/grounding.js +158 -0
- package/packages/runtime/dist/grounding.js.map +1 -0
- package/packages/runtime/dist/index.d.ts +1 -0
- package/packages/runtime/dist/index.d.ts.map +1 -1
- package/packages/runtime/dist/index.js +1 -0
- package/packages/runtime/dist/index.js.map +1 -1
- package/packages/runtime/dist/loop.d.ts +19 -0
- package/packages/runtime/dist/loop.d.ts.map +1 -1
- package/packages/runtime/dist/loop.js +123 -13
- package/packages/runtime/dist/loop.js.map +1 -1
- package/packages/tools/artifacts/dist/.tsbuildinfo +1 -1
- package/packages/tools/artifacts/dist/extract.d.ts +6 -0
- package/packages/tools/artifacts/dist/extract.d.ts.map +1 -1
- package/packages/tools/artifacts/dist/extract.js +6 -0
- package/packages/tools/artifacts/dist/extract.js.map +1 -1
- package/packages/tools/artifacts/dist/tools/artifacts.d.ts +1 -0
- package/packages/tools/artifacts/dist/tools/artifacts.d.ts.map +1 -1
- package/packages/tools/artifacts/dist/tools/artifacts.js +30 -8
- package/packages/tools/artifacts/dist/tools/artifacts.js.map +1 -1
- package/packages/tools/browser/dist/.tsbuildinfo +1 -1
- package/packages/tools/browser/dist/controller.d.ts +25 -0
- package/packages/tools/browser/dist/controller.d.ts.map +1 -1
- package/packages/tools/browser/dist/controller.js +25 -1
- package/packages/tools/browser/dist/controller.js.map +1 -1
- package/packages/tools/browser/dist/downloads.d.ts +138 -0
- package/packages/tools/browser/dist/downloads.d.ts.map +1 -0
- package/packages/tools/browser/dist/downloads.js +529 -0
- package/packages/tools/browser/dist/downloads.js.map +1 -0
- package/packages/tools/browser/dist/driver.d.ts +17 -1
- package/packages/tools/browser/dist/driver.d.ts.map +1 -1
- package/packages/tools/browser/dist/driver.js +48 -0
- package/packages/tools/browser/dist/driver.js.map +1 -1
- package/packages/tools/browser/dist/extension.d.ts +23 -0
- package/packages/tools/browser/dist/extension.d.ts.map +1 -1
- package/packages/tools/browser/dist/extension.js +20 -0
- package/packages/tools/browser/dist/extension.js.map +1 -1
- package/packages/tools/browser/dist/host.d.ts +3 -1
- package/packages/tools/browser/dist/host.d.ts.map +1 -1
- package/packages/tools/browser/dist/host.js +9 -2
- package/packages/tools/browser/dist/host.js.map +1 -1
- package/packages/tools/browser/dist/index.d.ts +7 -3
- package/packages/tools/browser/dist/index.d.ts.map +1 -1
- package/packages/tools/browser/dist/index.js +5 -3
- package/packages/tools/browser/dist/index.js.map +1 -1
- package/packages/tools/browser/dist/service.d.ts +28 -0
- package/packages/tools/browser/dist/service.d.ts.map +1 -1
- package/packages/tools/browser/dist/service.js +58 -1
- package/packages/tools/browser/dist/service.js.map +1 -1
- package/packages/tools/browser/dist/settings.d.ts +8 -0
- package/packages/tools/browser/dist/settings.d.ts.map +1 -1
- package/packages/tools/browser/dist/settings.js +9 -0
- package/packages/tools/browser/dist/settings.js.map +1 -1
- package/packages/tools/browser/dist/types.d.ts +31 -24
- package/packages/tools/browser/dist/types.d.ts.map +1 -1
- package/packages/tools/browser/dist/types.js.map +1 -1
- package/packages/tools/email/dist/.tsbuildinfo +1 -1
- package/packages/tools/email/dist/agent.d.ts +6 -1
- package/packages/tools/email/dist/agent.d.ts.map +1 -1
- package/packages/tools/email/dist/agent.js +6 -1
- package/packages/tools/email/dist/agent.js.map +1 -1
- package/packages/tools/email/dist/imap/fake.d.ts +8 -0
- package/packages/tools/email/dist/imap/fake.d.ts.map +1 -1
- package/packages/tools/email/dist/imap/fake.js +15 -0
- package/packages/tools/email/dist/imap/fake.js.map +1 -1
- package/packages/tools/email/dist/imap/imapflow-client.d.ts.map +1 -1
- package/packages/tools/email/dist/imap/imapflow-client.js +26 -17
- package/packages/tools/email/dist/imap/imapflow-client.js.map +1 -1
- package/packages/tools/email/dist/index.d.ts +5 -1
- package/packages/tools/email/dist/index.d.ts.map +1 -1
- package/packages/tools/email/dist/index.js +11 -3
- package/packages/tools/email/dist/index.js.map +1 -1
- package/packages/tools/email/dist/mail.d.ts.map +1 -1
- package/packages/tools/email/dist/mail.js +4 -1
- package/packages/tools/email/dist/mail.js.map +1 -1
- package/packages/tools/email/dist/pages/index.d.ts +2 -1
- package/packages/tools/email/dist/pages/index.d.ts.map +1 -1
- package/packages/tools/email/dist/pages/index.js +2 -2
- package/packages/tools/email/dist/pages/index.js.map +1 -1
- package/packages/tools/email/dist/pages/queries.d.ts +3 -2
- package/packages/tools/email/dist/pages/queries.d.ts.map +1 -1
- package/packages/tools/email/dist/pages/queries.js +19 -7
- package/packages/tools/email/dist/pages/queries.js.map +1 -1
- package/packages/tools/email/dist/ports.d.ts +15 -0
- package/packages/tools/email/dist/ports.d.ts.map +1 -1
- package/packages/tools/email/dist/ports.js.map +1 -1
- package/packages/tools/email/dist/sources/inbox-poll.d.ts +9 -1
- package/packages/tools/email/dist/sources/inbox-poll.d.ts.map +1 -1
- package/packages/tools/email/dist/sources/inbox-poll.js +1 -0
- package/packages/tools/email/dist/sources/inbox-poll.js.map +1 -1
- package/packages/tools/email/dist/text-cleanup.d.ts +69 -0
- package/packages/tools/email/dist/text-cleanup.d.ts.map +1 -0
- package/packages/tools/email/dist/text-cleanup.js +96 -0
- package/packages/tools/email/dist/text-cleanup.js.map +1 -0
- package/packages/tools/email/dist/text.d.ts +29 -0
- package/packages/tools/email/dist/text.d.ts.map +1 -0
- package/packages/tools/email/dist/text.js +153 -0
- package/packages/tools/email/dist/text.js.map +1 -0
- package/packages/tools/email/dist/worker.d.ts +64 -0
- package/packages/tools/email/dist/worker.d.ts.map +1 -0
- package/packages/tools/email/dist/worker.js +123 -0
- package/packages/tools/email/dist/worker.js.map +1 -0
- package/packages/tools/email/migrations/028_reading.sql +5 -2
- package/packages/tools/host/dist/.tsbuildinfo +1 -1
- package/packages/tools/mcp/dist/.tsbuildinfo +1 -1
- package/packages/tools/memory/dist/.tsbuildinfo +1 -1
- package/packages/tools/web/dist/.tsbuildinfo +1 -1
- package/packages/web/dist/assets/index-C2yWZED2.css +1 -0
- package/packages/web/dist/assets/index-CIhME8Ui.js +150 -0
- package/packages/web/dist/assets/{lottie_light-DnYl9yaP.js → lottie_light-CVXFbeEK.js} +1 -1
- package/packages/web/dist/build.json +1 -1
- package/packages/web/dist/index.html +2 -2
- package/packages/web/dist/precache.json +4 -4
- package/packages/web/dist/assets/index-C1sRt7zd.js +0 -149
- package/packages/web/dist/assets/index-CdZpSJ4_.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbox-poll.js","sourceRoot":"","sources":["../../src/sources/inbox-poll.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"inbox-poll.js","sourceRoot":"","sources":["../../src/sources/inbox-poll.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The text of messages synced before pre.44, cleaned once in the background.
|
|
3
|
+
*
|
|
4
|
+
* Until pre.44 an HTML-only message was turned into text by a few regular
|
|
5
|
+
* expressions that decoded five entities (`text.ts` says what replaced them),
|
|
6
|
+
* so older rows still carry ` `, `‌`, `&` and the invisible
|
|
7
|
+
* padding newsletters put in their preview line — in `body_text`, which is
|
|
8
|
+
* what agents and search read, and in `snippet`, which is the list's preview.
|
|
9
|
+
* There is no HTML left to read them again from, so the stored text itself is
|
|
10
|
+
* decoded and tidied (`cleanText`), and the snippet is cut again from it.
|
|
11
|
+
*
|
|
12
|
+
* Only text that came from HTML is touched. A genuine plain-text message
|
|
13
|
+
* that says `©` or is indented means it, and has no HTML to recover the
|
|
14
|
+
* original from, so a row is rewritten only when it carries a mark of HTML:
|
|
15
|
+
*
|
|
16
|
+
* - its message has an HTML part kept (`body_html` holds HTML), or
|
|
17
|
+
* - its text carries the invisible preview-line padding, as characters
|
|
18
|
+
* (`PADDING_PATTERN`) or as the entities the old regexes left behind
|
|
19
|
+
* (`PADDING_ENTITY_PATTERN`: `‌`, ` `…), which only an HTML
|
|
20
|
+
* mailer writes.
|
|
21
|
+
*
|
|
22
|
+
* A row whose `body_html` is `''` — checked, the message has no HTML part —
|
|
23
|
+
* is never touched, padding or not; nor is a row with no HTML kept and no
|
|
24
|
+
* padding (text-only mail synced before pre.44 looks exactly like that). The
|
|
25
|
+
* cost: an older HTML-only message with entities but no padding keeps them.
|
|
26
|
+
*
|
|
27
|
+
* Bounded and out of the owner's way: it starts once per plugin start (the
|
|
28
|
+
* first poll, `worker.ts`), walks the table in id order a batch at a time,
|
|
29
|
+
* yields between batches, and records where it got to in `email.settings`, so
|
|
30
|
+
* a restart carries on from there and a finished pass never runs again.
|
|
31
|
+
*
|
|
32
|
+
* Decoding is not idempotent (`©` → `©` → `©`), so a row is
|
|
33
|
+
* decoded once and never again: each batch's rewrites and the cursor past
|
|
34
|
+
* them commit in one transaction, so a crash leaves both or neither, and the
|
|
35
|
+
* cursor means no row is read twice — neither one it rewrote nor one it could
|
|
36
|
+
* not improve (`AT&T;`). The batch's rows are locked while it runs, and the
|
|
37
|
+
* update only lands on a row that is not purged and still holds the text
|
|
38
|
+
* that was read, so retention purging a body meanwhile is never undone.
|
|
39
|
+
*/
|
|
40
|
+
import type { DbArea } from '@buddi/core/plugin';
|
|
41
|
+
type Db = Pick<DbArea, 'query' | 'transaction'>;
|
|
42
|
+
/** Where the pass got to. Lives in `email.settings`. */
|
|
43
|
+
export declare const TEXT_CLEANUP_KEY = "text_cleanup";
|
|
44
|
+
/** Rows read per statement. */
|
|
45
|
+
export declare const TEXT_CLEANUP_BATCH = 200;
|
|
46
|
+
export interface TextCleanupOutcome {
|
|
47
|
+
/** Rows rewritten by this call. */
|
|
48
|
+
cleaned: number;
|
|
49
|
+
/** Whether the pass is finished (by this call or an earlier one). */
|
|
50
|
+
done: boolean;
|
|
51
|
+
/** False when an earlier start had already finished it, and nothing was read. */
|
|
52
|
+
ran: boolean;
|
|
53
|
+
/** Rows rewritten over the whole pass, across restarts. */
|
|
54
|
+
total: number;
|
|
55
|
+
}
|
|
56
|
+
export interface TextCleanupOptions {
|
|
57
|
+
batchSize?: number;
|
|
58
|
+
/** What runs between batches. Defaults to giving the event loop a turn. */
|
|
59
|
+
pause?: () => Promise<void>;
|
|
60
|
+
/** At most this many batches in this call (tests); the rest waits for the next start. */
|
|
61
|
+
maxBatches?: number;
|
|
62
|
+
now?: () => Date;
|
|
63
|
+
}
|
|
64
|
+
/** Clean what is left to clean, from where the last start stopped. */
|
|
65
|
+
export declare function cleanOlderText(db: Db, opts?: TextCleanupOptions): Promise<TextCleanupOutcome>;
|
|
66
|
+
/** The one line the pass leaves in the log when it finishes. */
|
|
67
|
+
export declare function textCleanupLogLine(cleaned: number): string;
|
|
68
|
+
export {};
|
|
69
|
+
//# sourceMappingURL=text-cleanup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-cleanup.d.ts","sourceRoot":"","sources":["../src/text-cleanup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAIjD,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,aAAa,CAAC,CAAC;AAGhD,wDAAwD;AACxD,eAAO,MAAM,gBAAgB,iBAAiB,CAAC;AAC/C,+BAA+B;AAC/B,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAQtC,MAAM,WAAW,kBAAkB;IACjC,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,IAAI,EAAE,OAAO,CAAC;IACd,iFAAiF;IACjF,GAAG,EAAE,OAAO,CAAC;IACb,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,yFAAyF;IACzF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAsBD,sEAAsE;AACtE,wBAAsB,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAwEvG;AAED,gEAAgE;AAChE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE1D"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { snippetOf } from './mail.js';
|
|
2
|
+
import { cleanText, ENTITY_PATTERN, PADDING_ENTITY_PATTERN, PADDING_PATTERN } from './text.js';
|
|
3
|
+
/** Where the pass got to. Lives in `email.settings`. */
|
|
4
|
+
export const TEXT_CLEANUP_KEY = 'text_cleanup';
|
|
5
|
+
/** Rows read per statement. */
|
|
6
|
+
export const TEXT_CLEANUP_BATCH = 200;
|
|
7
|
+
async function loadProgress(db) {
|
|
8
|
+
const { rows } = await db.query(`select value from email.settings where key = $1`, [TEXT_CLEANUP_KEY]);
|
|
9
|
+
const raw = rows[0]?.value;
|
|
10
|
+
return {
|
|
11
|
+
after: typeof raw?.after === 'string' ? raw.after : null,
|
|
12
|
+
cleaned: typeof raw?.cleaned === 'number' ? raw.cleaned : 0,
|
|
13
|
+
done: raw?.done === true,
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
async function saveProgress(db, progress, now) {
|
|
17
|
+
await db.query(`insert into email.settings (key, value, updated_at) values ($1, $2::jsonb, $3)
|
|
18
|
+
on conflict (key) do update set value = excluded.value, updated_at = excluded.updated_at`, [TEXT_CLEANUP_KEY, JSON.stringify(progress), now]);
|
|
19
|
+
}
|
|
20
|
+
const breathe = () => new Promise((resolve) => setTimeout(resolve, 25));
|
|
21
|
+
/** Clean what is left to clean, from where the last start stopped. */
|
|
22
|
+
export async function cleanOlderText(db, opts = {}) {
|
|
23
|
+
const batch = Math.max(1, opts.batchSize ?? TEXT_CLEANUP_BATCH);
|
|
24
|
+
const pause = opts.pause ?? breathe;
|
|
25
|
+
const now = opts.now ?? (() => new Date());
|
|
26
|
+
const progress = await loadProgress(db);
|
|
27
|
+
if (progress.done)
|
|
28
|
+
return { cleaned: 0, done: true, ran: false, total: progress.cleaned };
|
|
29
|
+
let cleaned = 0;
|
|
30
|
+
let batches = 0;
|
|
31
|
+
for (;;) {
|
|
32
|
+
if (opts.maxBatches !== undefined && batches >= opts.maxBatches)
|
|
33
|
+
return { cleaned, done: false, ran: true, total: progress.cleaned };
|
|
34
|
+
batches += 1;
|
|
35
|
+
const next = await db.transaction(async (tx) => {
|
|
36
|
+
const { rows } = await tx.query(`select id::text as id, body_text, snippet
|
|
37
|
+
from email.messages
|
|
38
|
+
where ($1::uuid is null or id > $1::uuid)
|
|
39
|
+
and body_purged_at is null
|
|
40
|
+
and coalesce(body_html, 'unknown') <> ''
|
|
41
|
+
and (body_html is not null or body_text ~ $3 or snippet ~ $3 or body_text ~* $5 or snippet ~* $5)
|
|
42
|
+
and (body_text ~* $2 or body_text ~ $3 or snippet ~* $2 or snippet ~ $3)
|
|
43
|
+
order by id
|
|
44
|
+
limit $4
|
|
45
|
+
for update`, [progress.after, ENTITY_PATTERN, PADDING_PATTERN, batch, PADDING_ENTITY_PATTERN]);
|
|
46
|
+
const ids = [];
|
|
47
|
+
const bodies = [];
|
|
48
|
+
const snippets = [];
|
|
49
|
+
const readBodies = [];
|
|
50
|
+
const readSnippets = [];
|
|
51
|
+
for (const row of rows) {
|
|
52
|
+
const body = row.body_text === null ? null : cleanText(row.body_text);
|
|
53
|
+
// The snippet is cut again from the cleaned body: the old one was cut
|
|
54
|
+
// from padded text, and cleaning it alone would leave it nearly empty.
|
|
55
|
+
const snippet = body !== null ? snippetOf(body) : row.snippet === null ? null : snippetOf(cleanText(row.snippet));
|
|
56
|
+
if (body === row.body_text && snippet === row.snippet)
|
|
57
|
+
continue;
|
|
58
|
+
ids.push(row.id);
|
|
59
|
+
bodies.push(body);
|
|
60
|
+
snippets.push(snippet);
|
|
61
|
+
readBodies.push(row.body_text);
|
|
62
|
+
readSnippets.push(row.snippet);
|
|
63
|
+
}
|
|
64
|
+
let written = 0;
|
|
65
|
+
if (ids.length > 0) {
|
|
66
|
+
const { rowCount } = await tx.query(`update email.messages m
|
|
67
|
+
set body_text = v.body, snippet = coalesce(v.snippet, m.snippet)
|
|
68
|
+
from unnest($1::uuid[], $2::text[], $3::text[], $4::text[], $5::text[]) as v(id, body, snippet, read_body, read_snippet)
|
|
69
|
+
where m.id = v.id
|
|
70
|
+
and m.body_purged_at is null
|
|
71
|
+
and m.body_text is not distinct from v.read_body
|
|
72
|
+
and m.snippet is not distinct from v.read_snippet`, [ids, bodies, snippets, readBodies, readSnippets]);
|
|
73
|
+
written = rowCount ?? 0;
|
|
74
|
+
}
|
|
75
|
+
const last = rows[rows.length - 1];
|
|
76
|
+
const after = last ? last.id : progress.after;
|
|
77
|
+
const saved = { after, cleaned: progress.cleaned + written, done: rows.length < batch };
|
|
78
|
+
// The cursor moves past this batch in the same transaction as its
|
|
79
|
+
// rewrites: a crash keeps both or neither, so nothing is decoded twice.
|
|
80
|
+
await saveProgress(tx, saved, now());
|
|
81
|
+
return { saved, written };
|
|
82
|
+
});
|
|
83
|
+
progress.after = next.saved.after;
|
|
84
|
+
progress.cleaned = next.saved.cleaned;
|
|
85
|
+
progress.done = next.saved.done;
|
|
86
|
+
cleaned += next.written;
|
|
87
|
+
if (progress.done)
|
|
88
|
+
return { cleaned, done: true, ran: true, total: progress.cleaned };
|
|
89
|
+
await pause();
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/** The one line the pass leaves in the log when it finishes. */
|
|
93
|
+
export function textCleanupLogLine(cleaned) {
|
|
94
|
+
return `mail: cleaned the text of ${cleaned} older message${cleaned === 1 ? '' : 's'}`;
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=text-cleanup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-cleanup.js","sourceRoot":"","sources":["../src/text-cleanup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Invisible characters used as preview-line padding: zero-width space, non-
|
|
3
|
+
* joiner and joiner, word joiner, byte-order mark, soft hyphen, combining
|
|
4
|
+
* grapheme joiner, hair space and thin space.
|
|
5
|
+
*/
|
|
6
|
+
export declare const INVISIBLE: RegExp;
|
|
7
|
+
/**
|
|
8
|
+
* What a stored text that still needs cleaning looks like, as Postgres
|
|
9
|
+
* patterns (`text-cleanup.ts`): an entity (case-insensitive), or padding.
|
|
10
|
+
*/
|
|
11
|
+
export declare const ENTITY_PATTERN = "&(#[0-9]+|#x[0-9a-f]+|[a-z][a-z0-9]*);";
|
|
12
|
+
export declare const PADDING_PATTERN = "[\u200B-\u200D\u2060\uFEFF\u200A\u2009]";
|
|
13
|
+
/**
|
|
14
|
+
* The same padding written as entities, as the regexes before pre.44 left it
|
|
15
|
+
* in the text of an HTML-only message (`‌`, ` `, `​`…).
|
|
16
|
+
* Only an HTML mailer writes these, so `text-cleanup.ts` takes them, like the
|
|
17
|
+
* padding characters, as the mark of text that came from HTML. A Postgres
|
|
18
|
+
* pattern, matched case-insensitively.
|
|
19
|
+
*/
|
|
20
|
+
export declare const PADDING_ENTITY_PATTERN = "&(zwn?j|shy|hairsp|thinsp|zerowidthspace|verythinspace|thinspace|nobreak|#(820[1-5]|8288|847|173|65279)|#x0*(200[9a-d]|2060|34f|ad|feff));";
|
|
21
|
+
/** The readable text of an HTML body. */
|
|
22
|
+
export declare function htmlToText(html: string): string;
|
|
23
|
+
/**
|
|
24
|
+
* Stored text, decoded and tidied: every `&name;`, `&#n;` and `&#xh;` an HTML
|
|
25
|
+
* reader would decode (only with its semicolon, so `?a=1©=2` is left
|
|
26
|
+
* alone), the padding dropped and the spaces collapsed.
|
|
27
|
+
*/
|
|
28
|
+
export declare function cleanText(text: string): string;
|
|
29
|
+
//# sourceMappingURL=text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"AA8CA;;;;GAIG;AACH,eAAO,MAAM,SAAS,QAAiB,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,cAAc,2CAA2C,CAAC;AACvE,eAAO,MAAM,eAAe,4CAA4C,CAAC;AAEzE;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,+IAC2G,CAAC;AAuB/I,yCAAyC;AACzC,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAkC/C;AAsBD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The words of a message, as agents, search, the list's previews and the
|
|
3
|
+
* reading pane's text fallback read them (`messages.body_text`, `snippet`).
|
|
4
|
+
*
|
|
5
|
+
* An HTML-only message is turned into text here at sync. It used to be a few
|
|
6
|
+
* regular expressions that decoded five entities, so a newsletter arrived as
|
|
7
|
+
* ` ‌ …` padding and `Q&A`. Now it is parsed by `parse5`
|
|
8
|
+
* (the HTML standard's own algorithm, the same parser `html.ts` sanitises
|
|
9
|
+
* with), which decodes every entity, and only text nodes are kept:
|
|
10
|
+
*
|
|
11
|
+
* - skipped with their content: scripts, styles, the head, templates, and
|
|
12
|
+
* elements hidden inline (`display:none`, `hidden`);
|
|
13
|
+
* - block elements and `<br>` become line breaks, table cells a space;
|
|
14
|
+
* - the invisible characters newsletters pad their preview line with —
|
|
15
|
+
* zero-width spaces and joiners, word joiners, byte-order marks, soft
|
|
16
|
+
* hyphens, the combining grapheme joiner, hair and thin spaces — are
|
|
17
|
+
* dropped, a no-break space is a space, runs of spaces collapse, and no
|
|
18
|
+
* more than one blank line is kept in a row.
|
|
19
|
+
*
|
|
20
|
+
* `cleanText` is the same clean-up for text that was stored before this
|
|
21
|
+
* existed and has no HTML left to re-read (`text-cleanup.ts`, which runs it
|
|
22
|
+
* only on text that came from HTML: plain-text mail is left as written).
|
|
23
|
+
*/
|
|
24
|
+
import { parse, parseFragment } from 'parse5';
|
|
25
|
+
/** Elements whose content is never words a reader sees. */
|
|
26
|
+
const SKIP = new Set(['script', 'style', 'head', 'template', 'title', 'noscript', 'svg', 'math', 'iframe', 'object']);
|
|
27
|
+
/** Elements that start and end a line. */
|
|
28
|
+
const BLOCK = new Set([
|
|
29
|
+
'address', 'article', 'aside', 'blockquote', 'center', 'dd', 'div', 'dl', 'dt', 'figcaption', 'figure',
|
|
30
|
+
'footer', 'form', 'header', 'hr', 'li', 'main', 'nav', 'ol', 'pre', 'section', 'table', 'tbody', 'thead',
|
|
31
|
+
'tfoot', 'tr', 'ul', 'caption',
|
|
32
|
+
]);
|
|
33
|
+
/** Elements that stand apart by a blank line. */
|
|
34
|
+
const PARAGRAPH = new Set(['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6']);
|
|
35
|
+
/**
|
|
36
|
+
* Invisible characters used as preview-line padding: zero-width space, non-
|
|
37
|
+
* joiner and joiner, word joiner, byte-order mark, soft hyphen, combining
|
|
38
|
+
* grapheme joiner, hair space and thin space.
|
|
39
|
+
*/
|
|
40
|
+
export const INVISIBLE = /[-͏ ]/g;
|
|
41
|
+
/**
|
|
42
|
+
* What a stored text that still needs cleaning looks like, as Postgres
|
|
43
|
+
* patterns (`text-cleanup.ts`): an entity (case-insensitive), or padding.
|
|
44
|
+
*/
|
|
45
|
+
export const ENTITY_PATTERN = '&(#[0-9]+|#x[0-9a-f]+|[a-z][a-z0-9]*);';
|
|
46
|
+
export const PADDING_PATTERN = '[\u200B-\u200D\u2060\uFEFF\u200A\u2009]';
|
|
47
|
+
/**
|
|
48
|
+
* The same padding written as entities, as the regexes before pre.44 left it
|
|
49
|
+
* in the text of an HTML-only message (`‌`, ` `, `​`…).
|
|
50
|
+
* Only an HTML mailer writes these, so `text-cleanup.ts` takes them, like the
|
|
51
|
+
* padding characters, as the mark of text that came from HTML. A Postgres
|
|
52
|
+
* pattern, matched case-insensitively.
|
|
53
|
+
*/
|
|
54
|
+
export const PADDING_ENTITY_PATTERN = '&(zwn?j|shy|hairsp|thinsp|zerowidthspace|verythinspace|thinspace|nobreak|#(820[1-5]|8288|847|173|65279)|#x0*(200[9a-d]|2060|34f|ad|feff));';
|
|
55
|
+
function hidden(node) {
|
|
56
|
+
for (const { name, value } of node.attrs ?? []) {
|
|
57
|
+
if (name === 'hidden')
|
|
58
|
+
return true;
|
|
59
|
+
if (name === 'style' && /display\s*:\s*none/i.test(value))
|
|
60
|
+
return true;
|
|
61
|
+
}
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
/** Spaces tidied, invisible padding gone, at most one blank line in a row. */
|
|
65
|
+
function tidy(text) {
|
|
66
|
+
return text
|
|
67
|
+
.replace(INVISIBLE, '')
|
|
68
|
+
.replace(/ /g, ' ')
|
|
69
|
+
.replace(/\r\n?/g, '\n')
|
|
70
|
+
.split('\n')
|
|
71
|
+
.map((line) => line.replace(/[ \t\f\v]+/g, ' ').trim())
|
|
72
|
+
.join('\n')
|
|
73
|
+
.replace(/\n{3,}/g, '\n\n')
|
|
74
|
+
.trim();
|
|
75
|
+
}
|
|
76
|
+
/** The readable text of an HTML body. */
|
|
77
|
+
export function htmlToText(html) {
|
|
78
|
+
if (html.trim() === '')
|
|
79
|
+
return '';
|
|
80
|
+
let root;
|
|
81
|
+
try {
|
|
82
|
+
root = parse(html);
|
|
83
|
+
}
|
|
84
|
+
catch {
|
|
85
|
+
return tidy(html.replace(/<[^>]*>/g, ' '));
|
|
86
|
+
}
|
|
87
|
+
const out = [];
|
|
88
|
+
const walk = (node, pre) => {
|
|
89
|
+
if (node.nodeName === '#text') {
|
|
90
|
+
const value = node.value ?? '';
|
|
91
|
+
out.push(pre ? value : value.replace(/[ \t\n\r\f]+/g, ' '));
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
if (node.nodeName.startsWith('#') && node.nodeName !== '#document' && node.nodeName !== '#document-fragment')
|
|
95
|
+
return;
|
|
96
|
+
const tag = node.nodeName;
|
|
97
|
+
if (SKIP.has(tag) || hidden(node))
|
|
98
|
+
return;
|
|
99
|
+
if (tag === 'br') {
|
|
100
|
+
out.push('\n');
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
const block = BLOCK.has(tag);
|
|
104
|
+
const paragraph = PARAGRAPH.has(tag);
|
|
105
|
+
if (paragraph)
|
|
106
|
+
out.push('\n\n');
|
|
107
|
+
else if (block)
|
|
108
|
+
out.push('\n');
|
|
109
|
+
else if (tag === 'td' || tag === 'th')
|
|
110
|
+
out.push(' ');
|
|
111
|
+
for (const child of node.childNodes ?? [])
|
|
112
|
+
walk(child, pre || tag === 'pre');
|
|
113
|
+
if (paragraph)
|
|
114
|
+
out.push('\n\n');
|
|
115
|
+
else if (block)
|
|
116
|
+
out.push('\n');
|
|
117
|
+
else if (tag === 'td' || tag === 'th')
|
|
118
|
+
out.push(' ');
|
|
119
|
+
};
|
|
120
|
+
walk(root, false);
|
|
121
|
+
return tidy(out.join(''));
|
|
122
|
+
}
|
|
123
|
+
const decoded = new Map();
|
|
124
|
+
/** One `&…;` as HTML reads it in text, or itself when it names nothing. */
|
|
125
|
+
function decodeEntity(entity) {
|
|
126
|
+
const known = decoded.get(entity);
|
|
127
|
+
if (known !== undefined)
|
|
128
|
+
return known;
|
|
129
|
+
let value = entity;
|
|
130
|
+
try {
|
|
131
|
+
const fragment = parseFragment(entity);
|
|
132
|
+
const text = (fragment.childNodes ?? []).map((n) => n.value ?? '').join('');
|
|
133
|
+
// A whole entity consumes its semicolon; `¬athing;` decodes only its
|
|
134
|
+
// `¬` prefix, which is not what was written, so it is left alone.
|
|
135
|
+
if (text !== '' && !text.endsWith(';'))
|
|
136
|
+
value = text;
|
|
137
|
+
}
|
|
138
|
+
catch {
|
|
139
|
+
// Left as written.
|
|
140
|
+
}
|
|
141
|
+
if (decoded.size < 2_000)
|
|
142
|
+
decoded.set(entity, value);
|
|
143
|
+
return value;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Stored text, decoded and tidied: every `&name;`, `&#n;` and `&#xh;` an HTML
|
|
147
|
+
* reader would decode (only with its semicolon, so `?a=1©=2` is left
|
|
148
|
+
* alone), the padding dropped and the spaces collapsed.
|
|
149
|
+
*/
|
|
150
|
+
export function cleanText(text) {
|
|
151
|
+
return tidy(text.replace(/&(?:#[0-9]{1,7}|#[xX][0-9a-fA-F]{1,6}|[A-Za-z][A-Za-z0-9]{1,31});/g, decodeEntity));
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The plugin's background hand: work that needs to write, or to log in to a
|
|
3
|
+
* mailbox, on behalf of a page that may only read.
|
|
4
|
+
*
|
|
5
|
+
* A page query is handed a pool that refuses anything but a `select`, and a
|
|
6
|
+
* mailbox password is an owner secret whose every use core records — so a
|
|
7
|
+
* query can neither store nor log in (`pages/queries.ts`). The inbox poll can
|
|
8
|
+
* do both: it runs on core's schedule with a full context. The first poll of
|
|
9
|
+
* each plugin start hands that context here (`attach`), and two things use it:
|
|
10
|
+
*
|
|
11
|
+
* - **the text clean-up** of messages synced before pre.44, started once, in
|
|
12
|
+
* the background, never awaited by anybody (`text-cleanup.ts`);
|
|
13
|
+
* - **the HTML of an older message**, when the reading pane opens one
|
|
14
|
+
* (docs/email.md, "Reading mail"). Messages synced before pre.44 have no
|
|
15
|
+
* `body_html`; the pane asks for it here, and this fetches that message's
|
|
16
|
+
* HTML part once — peeked, so nothing is marked read — runs it through the
|
|
17
|
+
* same sanitiser and cap as the sync (`html.ts`), stores it, and returns
|
|
18
|
+
* it. A message found to have no HTML part (or one the sanitiser refuses)
|
|
19
|
+
* is stored as `''`, as the sync stores text-only mail, so it is never
|
|
20
|
+
* asked for again; only a null `body_html` is fetched. The pane waits at most `LAZY_HTML_WAIT_MS`; on a timeout or any
|
|
21
|
+
* failure it draws the text as before, and the message is not tried again
|
|
22
|
+
* for `LAZY_HTML_RETRY_MS`, so opening it again does not wait again. A
|
|
23
|
+
* fetch that finishes after the wait still stores what it got, and the
|
|
24
|
+
* next open reads that. Remote pictures in the HTML are kept as addresses
|
|
25
|
+
* and never fetched, as at the sync.
|
|
26
|
+
*
|
|
27
|
+
* Until the first poll there is no context, and the pane draws the text.
|
|
28
|
+
*/
|
|
29
|
+
import type { EnvLike } from './config.js';
|
|
30
|
+
import type { ImapClientFactory } from './ports.js';
|
|
31
|
+
import { type TextCleanupOptions, type TextCleanupOutcome } from './text-cleanup.js';
|
|
32
|
+
import type { SourceContext } from './types.js';
|
|
33
|
+
/** How long the reading pane waits for an older message's HTML. */
|
|
34
|
+
export declare const LAZY_HTML_WAIT_MS = 6000;
|
|
35
|
+
/** How long a message whose HTML could not be had is left alone. */
|
|
36
|
+
export declare const LAZY_HTML_RETRY_MS: number;
|
|
37
|
+
export interface MailWorkerOptions {
|
|
38
|
+
connect: ImapClientFactory;
|
|
39
|
+
env?: EnvLike;
|
|
40
|
+
waitMs?: number;
|
|
41
|
+
retryMs?: number;
|
|
42
|
+
cleanup?: TextCleanupOptions;
|
|
43
|
+
/** The clock failures are remembered by. Tests only. */
|
|
44
|
+
now?: () => number;
|
|
45
|
+
}
|
|
46
|
+
/** What the reading pane needs of the worker. */
|
|
47
|
+
export interface HtmlFetcher {
|
|
48
|
+
htmlFor(messageId: string): Promise<string | null>;
|
|
49
|
+
}
|
|
50
|
+
export declare class MailWorker implements HtmlFetcher {
|
|
51
|
+
#private;
|
|
52
|
+
constructor(opts: MailWorkerOptions);
|
|
53
|
+
/** The poll's context, handed over on every poll; the first one also starts the clean-up. */
|
|
54
|
+
attach(ctx: SourceContext): void;
|
|
55
|
+
/** The clean-up this start began, for a caller that wants to wait on it (tests). */
|
|
56
|
+
cleanupSettled(): Promise<TextCleanupOutcome | null>;
|
|
57
|
+
/**
|
|
58
|
+
* An older message's HTML, sanitised and stored, or null: when there is
|
|
59
|
+
* none, when it cannot be had within the wait, or when it failed within
|
|
60
|
+
* the last hour. Never throws.
|
|
61
|
+
*/
|
|
62
|
+
htmlFor(messageId: string): Promise<string | null>;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=worker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAsC,KAAK,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEzH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,mEAAmE;AACnE,eAAO,MAAM,iBAAiB,OAAQ,CAAC;AACvC,oEAAoE;AACpE,eAAO,MAAM,kBAAkB,QAAiB,CAAC;AAIjD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,iBAAiB,CAAC;IAC3B,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,iDAAiD;AACjD,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CACpD;AAED,qBAAa,UAAW,YAAW,WAAW;;gBAOhC,IAAI,EAAE,iBAAiB;IAInC,6FAA6F;IAC7F,MAAM,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI;IAiBhC,oFAAoF;IACpF,cAAc,IAAI,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAIpD;;;;OAIG;IACG,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAgFzD"}
|