Commit Graph
1264 Commits
Author SHA1 Message Date
Matthew Meszaros 494ed2c06f feat: re-place parked warmup and campaign wakeups when mailbox behaviour, warmup hours, timezone, caps, tags, campaign pacing or the workspace timezone change, retire stranded warmup preparations with refunded charges or unsent tokens so they stop blocking mailboxes, spread window-opening reply-backs and deferred sends, and show the next queued warmup send in the mailbox list and drawer 2026-10-21 10:34:22 +02:00
Matthew Meszaros 2fcc56518e feat: log and leave to the warmup reconciler a failed reschedule after a warmup thread closes, and describe recovery replies in the warmup guide as a 60 percent chance when the recipient's next send is free 2026-10-21 07:34:06 +02:00
Matthew Meszaros 43112e5c4d feat: keep recovery spam rescue at a 95 percent floor through each mailbox's persona bias instead of rescuing every landing, so no pool mailbox rescues a recovering sender's mail every single time 2026-10-21 07:32:47 +02:00
Matthew Meszaros dbed87ce55 feat: keep watch-band mailboxes warming at full volume with recovery replies, spam rescue and importance from the pool, hold one pending warmup task per mailbox so replies stop stacking and crowding out new threads, close expired replies on first fire, cancel existing duplicate schedules in migration 000319, and count slowed mailboxes as warming rather than needing attention on Emails 2026-10-21 07:32:47 +02:00
Matthew Meszaros f8fbca7cbb feat: adopt the linked Cloud workspace's own SMTP/IMAP mailbox on self-hosted enrollment when the server presents its exact stored credentials and no active Cloud campaign sends from it, instead of answering pool_link_mailbox_conflict, with tests and Warmbly Cloud and error code docs 2026-10-21 06:20:14 +02:00
Devin AI 7e19faa5e9 feat: incorporate released warmup retirement migration before reconciling Unibox search versions 2026-10-20 07:45:04 +00:00
Devin AI 52a4df2f1a feat: permanently retire uncertain warmup sends without replay or refund and automatically resume eligible mailbox schedules 2026-10-20 06:36:25 +00:00
Devin AI acbb701a82 feat: index Unibox participant searches, propagate interrupted reads and page conversations before aggregating thread state 2026-10-20 05:57:27 +00:00
Matthew MeszarosandDevin AI bf6a450aa9 feat: recover abandoned warmup preparations and expose durable send safety holds in mailbox health
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-20 03:50:35 +00:00
Matthew Meszaros b2a89f8ce4 feat: stamp cloud_link_mailboxes.settings_observed_at before mirroring Warmbly Cloud warmup settings so an older report cannot overwrite a newer one, give each cloud link its own deadline in the settings sync, keep drawer edits made during a save or reverted to the stored value, and correct the cloud_warmup_not_applied docs 2026-10-19 11:48:47 +02:00
geetansh 4f926b3efc feat: make Warmbly Cloud the owner of an enrolled mailbox's warmup ramp, window and days by relaying PATCH /emails/:id and warmup lifecycle edits to Cloud, mirroring Cloud's reported settings into the local columns on enroll, listing and a 15-minute consumer sync, keeping re-enrollment from overwriting them, and showing the Cloud-managed state on the Warmup tab 2026-10-19 10:53:05 +02:00
devin-ai-integration[bot] e31d2ec479 Merge pull request #1000 from geetansh/warmup-cleanup-progress
feat: keep warmup inbox cleanup moving when one mailbox's Cloud checks fail or run slow
2026-10-19 07:29:58 +00:00
devin-ai-integration[bot] f2304c0d0a Merge pull request #1004 from 555aaditya/fix/orgtransfer-register-transfer-jobs
feat: register org_export_jobs and org_import_jobs as excluded from workspace archives, and check in CI that every org table is registered
2026-10-19 07:27:57 +00:00
devin-ai-integration[bot] 5f70e3821e Merge pull request #1008 from warmbly/devin/1792390038-cloud-standing-fallback
feat: keep unavailable Cloud reports as sending holds without misclassifying them as reputation rests, including scheduler fallback reads
2026-10-19 06:54:43 +00:00
devin-ai-integration[bot] 5a1619da9d Merge pull request #1009 from warmbly/devin/1792390038-graph-complaint-retries
feat: detect Microsoft Graph complaint reports from bounded raw MIME and retry temporary provider failures before admitting messages
2026-10-19 06:50:58 +00:00
Devin AI a2e81c2ef5 feat: keep Graph complaint reports retryable across temporary raw message failures and bound MIME depth, parts and decoded content before admitting an arrival 2026-10-19 06:19:42 +00:00
Devin AI 5f1ff79387 feat: align integration create and update contracts with actual import side effects and Clay clearing semantics while preserving the existing OpenAPI layout 2026-10-19 06:12:22 +00:00
555aaditya 3386052ce8 feat: detect spam-complaint feedback reports on Microsoft Graph mailboxes by reading the report parts from the message's raw MIME when the synced rendered body cannot name the send, and drop the deliverability docs callout saying Graph complaints are not detected 2026-10-19 01:52:36 +05:30
555aaditya 4c0df6762d feat: list org_export_jobs and org_import_jobs in the workspace archive's ExcludedTables, and add the live check (run in CI with the other spec checks) that every table with an organization_id is registered or excluded 2026-10-19 01:44:51 +05:30
geetansh aafcb4f759 feat: treat a missing Warmbly Cloud report as a send hold only, never a rest, while every real hold still applies in full and the send gate stays closed until a current report arrives 2026-10-18 10:13:00 +00:00
geetansh 2050fcf23e feat: keep warmup inbox cleanup moving when one mailbox's Cloud checks fail or run slow, retry each held mailbox on its own progress-aware schedule and keep it visible in the job panel 2026-10-18 10:12:59 +00:00
Claude e41855d01f feat: split the Apollo import source create and update request schemas, type the enrichment selection fields and list limit, and document the 409 import_running response on Salesforce and Apollo import runs in the OpenAPI document 2026-10-18 02:21:34 +00:00
Claude 49f325d225 feat: describe the Salesforce, Apollo and Clay integration routes in the OpenAPI document, note the recent-confirmation requirement on webhook secret routes, and point openapi.mdx at the official SDKs 2026-10-18 02:09:10 +00:00
devin-ai-integration[bot] 169376ef9e Merge pull request #995 from warmbly/devin/1792205408-mailbox-recovery
feat: automatically clear recovered legacy mailbox and provider-limit warnings
2026-10-17 18:14:01 +00:00
Devin AI edd1060e3e feat: synchronize recovered mailbox warnings with current main and reserve migration 313 after the new performance indexes 2026-10-17 17:50:09 +00:00
devin-ai-integration[bot] 3e0f5302dd Merge pull request #998 from warmbly/devin/1792255623-grant-delete-reauth-layer
feat: keep grant-removal identity confirmation above the pending confirmation dialog
2026-10-17 17:48:45 +00:00
devin-ai-integration[bot] 2fa359a3b5 Merge pull request #997 from warmbly/devin/1792207123-remie-tool-limit
feat: keep Remie within OpenAI tool limits without losing built-in or MCP capabilities
2026-10-17 17:48:44 +00:00
Matthew MeszarosandDevin AI 0ba1acf583 feat: keep identity confirmation above pending admin grant removal and cover secure retry and cancellation
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-17 16:48:52 +00:00
Matthew MeszarosandDevin AI 04cd135503 feat: keep Remie OpenAI requests within the tool limit using permission-scoped discovery for built-in and MCP capabilities
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-17 03:27:56 +00:00
Matthew Meszaros ae9eca5c7e feat: cut database load from issue 993 with placement, sweep and unibox indexes, redundant index drops, identical-result rewrites of contact facets, dashboard stats, campaign progress, advisor bounces and routing pre-filter, bounded delivery evidence, cold-ramp skip, held advisor sections, ANALYZE after restore and hidden-tab realtime deferral 2026-10-17 05:18:45 +02:00
Devin AI 6b8c66c249 feat: clear recovered legacy mailbox connection and provider-limit errors using confirmed send and sync evidence 2026-10-17 02:57:14 +00:00
Matthew MeszarosandDevin AI 9af270a533 feat: add production image-only Coolify Compose deployment with domain, secret, backup and setup instructions
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-16 11:47:52 +00:00
devin-ai-integration[bot] 10cdecefd7 Merge pull request #991 from warmbly/devin/1792134927-linked-mailbox-status
feat: keep cold rests visible and explain repeated mailbox connection reports
2026-10-16 08:24:03 +00:00
devin-ai-integration[bot] 4890945ea1 Merge pull request #990 from warmbly/devin/1792133264-contacts-empty-campaign-steps
feat: prevent the contact activity drawer from crashing for campaigns without steps
2026-10-16 08:24:02 +00:00
devin-ai-integration[bot] 2f18278b9e Merge pull request #983 from warmbly/devin/1792124822-mailbox-health-recovery
feat: align mailbox health severity and volume recovery with displayed placement
2026-10-16 08:24:01 +00:00
devin-ai-integration[bot] 3b1c50b9ec Merge pull request #988 from warmbly/fix/reply-processing-stale-stored-mail
feat: withdraw reply intents and untouched follow-up tasks left by mail from before its sender's contact, and credit unthreaded mail only to an earlier send (#960)
2026-10-16 07:52:00 +00:00
devin-ai-integration[bot] bb1b93255d Merge pull request #987 from warmbly/fix/worker-send-deadline
feat: give worker sends a deadline that covers the SMTP budget and add ordered mailbox lanes on NATS
2026-10-16 07:51:59 +00:00
devin-ai-integration[bot] 3d7372142a Merge pull request #986 from warmbly/fix/unibox-forward-suppression
feat: let Unibox forwards reach suppressed recipients and name the suppressed address on every refusal
2026-10-16 07:51:58 +00:00
devin-ai-integration[bot] bdc9d38e1a Merge pull request #985 from warmbly/feature/reply-received-tagging-verdict
feat: carry the inbox-tagging verdict on campaign.reply_received so automations can filter on AI labels
2026-10-16 07:51:58 +00:00
Devin AI 776ec6dcc7 feat: label stored mailbox error report times without claiming all error categories refresh their latest observation 2026-10-16 07:35:57 +00:00
Matthew Meszaros 67a2077ce0 feat: align advisor throttling guidance and campaign hold actions with automatic placement recovery 2026-10-16 07:31:11 +00:00
Matthew Meszaros a54b50a971 feat: clarify placement standing recovery without promising to bypass independent ramp limits 2026-10-16 07:31:11 +00:00
Matthew Meszaros e1167f9a61 feat: align mailbox placement health with displayed UTC dates and preserve measured scores for reduced-volume warnings 2026-10-16 07:31:11 +00:00
Matthew Meszaros ed76eb5ac0 feat: show cold rests without campaigns and explain deduplicated mailbox connection reports 2026-10-16 07:30:19 +00:00
Matthew Meszaros a4d9ca5f20 feat: require exact message and CRM task provenance for historical reply cleanup, preserve unlinked legacy effects and retry failed pages idempotently 2026-10-16 07:30:17 +00:00
Matthew Meszaros 7943d9c390 feat: document all-backend upgrade and old-replica drain requirements for suppressed-recipient Unibox forwards in send safety and self-host install docs 2026-10-16 07:30:13 +00:00
Matthew Meszaros 0004215fbe feat: clarify reply webhook identifiers and verdict presence and label confidence conditions with their selected operator 2026-10-16 07:30:11 +00:00
Devin AI b7a564eac9 feat: keep contact campaign activity usable when a campaign has no flow steps and return empty step arrays 2026-10-16 06:52:47 +00:00
Matthew Meszaros fa6c935b12 feat: withdraw the reply intents and untouched follow-up tasks that mail from before its sender's contact produced through a one-time consumer cleanup, and credit an unthreaded contact message only to a campaign email sent before it arrived (#960) 2026-10-16 06:59:40 +02:00
Matthew Meszaros 46bd956229 feat: give worker SEND_EMAIL commands a 120s deadline that covers the SMTP client's 90s budget, run the worker command subscription under a 195s bus budget (NATS ack wait and Kafka handler context via eventbus.WithHandlerTimeout), and add ordered per-mailbox command lanes on NATS with in-progress heartbeats 2026-10-16 06:57:14 +02:00