Commit Graph
1874 Commits
Author SHA1 Message Date
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 4ee78aebb2 feat: let a verified warmup arrival inside the arrival grace clear a recipient's unreachable result, and refuse an IMAP bare-envelope body fetch whose BODY[] section is missing 2026-10-15 19:30:27 +02:00
Matthew Meszaros 7d4c57cab3 feat: drop warmup recipients the pool cannot reach from partner selection, weight the draw by each recipient's verified arrival rate, and warn owners through the warmup_mail_not_arriving Advisor check 2026-10-15 19:08:54 +02:00
Matthew Meszaros b5891f3365 feat: keep IMAP sync running past RFC 6533 message/global bounces by stepping unreadable envelope fetches down to bare, single and skipped rungs with locally parsed MIME, and read global delivery-status parts as bounce reports on IMAP and Gmail 2026-10-15 19:08:54 +02:00
Matthew Meszaros 17a981ca3b feat: send warmup reply-backs across the free and paid tiers by reporting a mailbox outside the pool as not_in_pool in CanParticipate, and only let a healthy free mailbox answer a paid one 2026-10-15 19:08:48 +02:00
Matthew Meszaros 94f5ca195a Merge pull request #972 from warmbly/fix/recent-github-bug-reports
feat: keep unibox sends out of the campaign caps and report refusals, skip IMAP history on a MODSEQ bump, ignore mail from before a contact in reply processing
2026-10-15 14:09:48 +00:00
Matthew Meszaros 4b7b626230 Merge pull request #979 from warmbly/fix/reported-user-issue
feat: let the confirm-it-is-you prompt offer only the methods an account has, adding passkey, Google/Apple/SSO popup and native iOS Apple/Google re-authentication bound to the session and linked identity, across backend, dashboard, admin, iOS and docs
2026-10-15 13:52:33 +00:00
Matthew Meszaros eaa7956558 feat: judge each message in the reply opt-out recheck against the contact's creation date or our first send even when the suppression is attributed to a campaign, using the campaign only once the contact is gone 2026-10-15 15:50:30 +02:00
Matthew Meszaros 28b7603fdd feat: give the workspace-wide unibox plan allowance its own advisory lock namespace instead of sharing the warmup recipient lock's 2026-10-15 15:29:34 +02:00
Matthew Meszaros 0ca6e7e642 feat: let the confirm-it-is-you prompt offer only the methods an account has, adding passkey, Google/Apple/SSO popup and native iOS Apple/Google re-authentication bound to the session and linked identity, across backend, dashboard, admin, iOS and docs 2026-10-15 15:26:25 +02:00
Matthew Meszaros f63f459c73 feat: bound unibox sends across a workspace's mailboxes by a fair-use allowance of twice its plan's daily email limit with a floor of 100, resolved through the feature gate so overrides apply and self-hosted or unlimited plans stay unbounded 2026-10-15 14:59:09 +02:00
Matthew Meszaros e978cc65e1 feat: hold unibox sends to a fair-use allowance sized by provider and lowered by mailbox age, warmup standing and workspace risk with hourly, per-message and new-conversation bounds, require an earlier send before the opt-out recheck treats pre-contact mail as a reply, keep zero-date mail in the reply repair sweep, and retry a unibox refusal that could not be recorded 2026-10-15 12:33:33 +02:00
Matthew Meszaros 2040492cd3 Merge pull request #976 from warmbly/devin/1792038755-cloud-link-enrollment-conflicts
feat: isolate Cloud mailbox enrollment conflicts from other retries and standing updates
2026-10-15 10:27:35 +00:00
Matthew Meszaros 702d46adc3 Merge pull request #975 from warmbly/devin/1791979233-warmup-stop-queue-safety
feat: retire unstarted warmup sends on mailbox stop and alert on post-stop execution
2026-10-15 10:26:56 +00:00
Matthew Meszaros df6bca3608 Merge pull request #978 from warmbly/devin/1792044826-campaign-cpu
feat: reduce campaign scheduler database reads and new-lead ordering work
2026-10-15 10:26:07 +00:00
Matthew MeszarosandDevin AI 70038e6809 feat: give every synthetic mailbox an explicit UUID in the campaign scheduler pool batching regression fixture
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-15 06:26:13 +00:00
Matthew MeszarosandDevin AI 5bef598a69 feat: batch campaign scheduler mailbox budgets and health reads before routing and standalone placement, and replace per-lead history sorting with existence checks for new-lead priority
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-15 06:21:23 +00:00
Devin AI 6b3ca85e79 feat: persist no-action mailbox errors with valid database enums and retain realtime limits across workspace subscriptions 2026-10-15 04:40:18 +00:00
Matthew MeszarosandDevin AI 89c2c3949c feat: explain Cloud mailbox association conflicts and reconcile each pending mailbox independently while preserving standing updates
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-15 04:39:58 +00:00
Matthew MeszarosandDevin AI 43f344ad9b feat: model eligible warmup recipients in the delayed preparation duplicate regression
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-14 13:22:15 +00:00
Matthew MeszarosandDevin AI 1090284452 feat: cover warmup preparation recovery with eligible partners and accurate worker protocol
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-14 12:57:37 +00:00
Matthew MeszarosandDevin AI 665bd5cf22 feat: seed post-stop monitoring from existing disabled warmup mailboxes at upgrade
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-14 12:37:55 +00:00
Matthew MeszarosandDevin AI e8597e8af1 feat: retire unstarted warmup commands on mailbox stop and alert on post-stop execution
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-14 12:36:01 +00:00
Matthew Meszaros 2acacc87a7 feat: refresh the shared warmup seven-day snapshot on a detached context while serving the previous one, and derive the Emails tab status chunk layout from committed state instead of writing a ref during render 2026-10-14 12:39:53 +02:00
Matthew Meszaros 3d238f403d feat: cut database CPU by serving the warmup partner cap from a live today count plus a shared seven-day snapshot, batching the Emails tab status reads into a fixed query count per page, indexing the tasks and warmup scans, bounding the contact verification sweep, skipping existing leads in segment sync, and throttling pool-link and Graph cursor writes 2026-10-14 12:14:18 +02:00
Matthew Meszaros dbfc5b06f8 feat: keep unibox sends out of campaign, warmup and shared send caps with their own 500-recipient daily ceiling and report refused sends to the mailbox owner, skip IMAP history below the held UIDNEXT on a folder-wide MODSEQ bump, and stop treating mail received before its sender became a contact as a reply in reply processing, the repair sweep and the opt-out recheck 2026-10-14 06:38:34 +02:00
Matthew Meszaros df99a87994 Merge pull request #970 from warmbly/devin/1791947120-cpu-backend-ready
feat: reuse scheduler timezone parsing and Go PubSub publisher lifecycles
2026-10-14 04:10:14 +00:00
Matthew Meszaros 816a92904a Merge pull request #966 from warmbly/devin/1791947120-cpu-sql-ready
feat: reduce PostgreSQL history scans in task scheduling, warmup health and dashboard analytics
2026-10-14 04:09:31 +00:00
Devin AI ab193988c1 feat: reuse known Graph message mappings for legacy delta flag events without a second broker lookup 2026-10-14 03:35:28 +00:00
Devin AI 0559ddee09 feat: bound IMAP preview normalization while preserving whitespace quotes signatures and UTF-8 behavior 2026-10-14 03:35:28 +00:00
Devin AI effdf1a6f5 feat: cache raw task template sources so recipient rendering reuses custom-field preprocessing 2026-10-14 03:35:28 +00:00
Devin AI a8b095375b feat: reuse and stop PubSub topic publishers while preserving existence checks and delivery errors 2026-10-14 03:35:07 +00:00
Devin AI 0652590962 feat: reuse timezone parsing within behavior batches and campaign scheduling passes 2026-10-14 03:35:07 +00:00
Devin AI 4488078535 feat: bound dashboard overall aggregates to the requested campaign send window 2026-10-14 03:24:59 +00:00
Devin AI 90bfcce34b feat: share complaint bounce and tampering aggregate scans in warmup health counts 2026-10-14 03:24:59 +00:00
Devin AI 4ad2c1d02a feat: bound task daily ledgers and mailbox send clocks to existing time indexes 2026-10-14 03:24:59 +00:00
Matthew Meszaros 1c1f473774 Merge pull request #965 from warmbly/devin/1791907589-linked-warmup-main-compatible
feat: respect gateway warmup schedules with a main-compatible upgrade migration
2026-10-13 16:47:22 +00:00
Devin AI 71eb78ce31 feat: respect gateway warmup calendars and correct inherited defaults with a collision-free migration after the mailbox lookup indexes 2026-10-13 16:06:29 +00:00
Matthew Meszaros e98902a600 Merge pull request #964 from warmbly/devin/1791902898-poollink-recovery
feat: batch linked-instance mailbox status and warmup reads while preserving partner limits
2026-10-13 15:50:07 +00:00
Devin AI 38edfca0b5 feat: batch linked-instance mailbox analytics and warmup summaries with bounded detail reads and shared partner cohort scans 2026-10-13 14:59:52 +00:00
Matthew MeszarosandDevin AI 2b777463cb feat: integrate current warmup and Cloud mailbox changes while preserving batch sync and renumbering unreleased lookup indexes
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-13 14:50:05 +00:00
Matthew Meszaros 1e5504f8dd Merge pull request #961 from warmbly/devin/1791895737-stop-removed-cloud-warmup
feat: stop Cloud participation when individually removing managed mailbox links
2026-10-13 14:26:44 +00:00
Matthew MeszarosandDevin AI c59512d160 feat: batch IMAP message-map lookups and index normalized send identifiers and mailbox folder generations
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-13 13:27:39 +00:00
Matthew MeszarosandDevin AI d0571aa5a3 feat: stop Cloud warmup sending and receiving before individually removing managed mailbox links while preserving instance disconnect behavior
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-13 12:56:11 +00:00
Devin AI 17428c3c46 feat: verify concurrent warmup dispatch index upgrades preserve existing send evidence and recovery holds 2026-10-13 10:40:30 +00:00
Devin AI a0593552e2 feat: bound warmup dispatch budget queries and use indexed task message IDs for mailbox conversation checks 2026-10-13 10:29:29 +00:00
Matthew Meszaros 84bb630104 Merge pull request #953 from warmbly/devin/1791786834-restore-warmup-engagement
feat: restore receiving-authorized warmup spam rescue and engagement
2026-10-12 09:35:33 +00:00
Matthew Meszaros 8b667c2d29 feat: merge main into the mobile app redesign branch, keep both the apollo and appattest handler imports, and renumber the app_attest_keys migration to 000291 now that main holds 000290 2026-10-12 10:40:02 +02:00
Matthew Meszaros 8c06efc6e4 feat: ship the iOS app to TestFlight from GitHub Actions on merges touching ios/ (ios-release workflow with cloud-managed signing, shared Warmbly scheme, ExportOptions, iPhone-only 1.0.0, privacy manifest), add in-app account deletion and a read-only billing page, let admins exempt an existing account from the emailed login code for App Review, read Apple .p8 keys as PEM or base64 through one applekey parser for Sign in with Apple and APNs, and document the release flow and Apple web sign-in setup 2026-10-12 10:38:14 +02:00
Matthew MeszarosandDevin AI 5d0df66b11 feat: recheck receiving authorization after mailbox execution admission before dispatching provider warmup engagement
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-12 07:11:33 +00:00