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 Meszaros and Devin 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 Meszaros and Devin 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 Meszaros and Devin 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 Meszaros and Devin 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 Meszaros and Devin 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 Meszaros and Devin 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 Meszaros and Devin 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 Meszaros and Devin 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 Meszaros and Devin 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 Meszaros and Devin 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 Meszaros and Devin 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