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
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
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
Matthew Meszaros
de4328b4cf
feat: let Unibox forwards reach suppressed recipients by exempting forward tasks from the send-admission suppression check, refuse suppressed replies and direct sends before queueing with a recipient_suppressed 400 naming the address and matching entry, report admission refusals as RECIPIENT_SUPPRESSED with the address, show the server reason in the reply composer, and document it
2026-10-16 06:56:52 +02:00
Matthew Meszaros
8b9c9b3b70
feat: carry the stored inbox-tagging verdict (ai_labels, ai_intent, ai_intent_confidence, ai_kind, ai_relevance, ai_needs_review) on campaign.reply_received, offer it in the automation condition picker, match list fields by whole item in contains conditions and the new has/join template helpers, and title Slack and Discord reply messages with the tagging labels
2026-10-16 06:56:45 +02:00
Matthew Meszaros
e240d8a0f0
feat: cover the IMAP MODSEQ bump end to end with tests that history spends no sync budget, records no throttled day and is searched once, and that a deferred arrival holds UIDNEXT so the retry keeps history out, and document the behavior in the mailboxes guide
2026-10-16 06:54:15 +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
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
6be59ae374
feat: state in the send-safety shared_daily_limit and rolling_recipient_limit rows that manual Unibox sends do not count toward them and are held to their own fair-use limits
2026-10-15 15:28:37 +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
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
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
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
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 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
Matthew Meszaros
c0e3856fc5
feat: start the iOS app in light mode by default and add an Appearance switch (light, dark, automatic) to the signed-out settings sheet behind the sign-in gear, now titled Settings, with the appearance guide and iOS README describing both places to change it
2026-10-12 12:39:19 +02: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
Matthew Meszaros and Devin AI
e0640539bb
feat: restore provider-supported warmup engagement for receiving-authorized existing mailboxes with consent rechecks and rollout disclosures
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-12 06:41:29 +00:00
Matthew Meszaros
2aedb7ea0c
Merge pull request #950 from warmbly/devin/1791718013-archive-send-preservation
...
feat: preserve destination-local send protection during workspace archive overwrites
2026-10-12 02:48:14 +00:00
Matthew Meszaros and Devin AI
c7f662b221
feat: publish persisted generic IMAP warnings without missing legacy user text or exposing private details
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-11 17:48:53 +00:00
Matthew Meszaros
ec46f57d22
feat: redesign the iOS app (inbox with inbox agent drafted replies edited in the full composer, Remie, home, analytics, CRM, contacts, settings hubs, mailbox connect flow covering every dashboard source) and replace Turnstile in the app with Apple App Attest (attested keys in app_attest_keys, challenge and key endpoints, verifyHuman gate on login, registration and password reset, auth config flag, docs and OpenAPI)
2026-10-11 19:00:50 +02:00
Matthew Meszaros
52fd0aaf49
feat: integrate current main dispatch and mailbox monitoring into generation-bound IMAP diagnostics
2026-10-11 16:55:17 +00:00
Matthew Meszaros
853318692a
feat: retain privacy-safe IMAP connection evidence only from current mailbox generation and publish persisted warning text
2026-10-11 16:55:13 +00:00
Matthew
ecf1e27644
feat: integrate current main dispatch fencing and active backfill rules into archive send preservation
2026-10-11 16:47:59 +00:00
Matthew Meszaros and Devin AI
5cc3cb4e4c
feat: preserve the operations documentation table around backfill and mailbox safety notes
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-11 14:41:47 +00:00
Matthew Meszaros and Devin AI
9ad9e05cb5
feat: scope backfill monitoring and admin stalled indicators to active unheld mailboxes while retaining history
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-11 14:39:36 +00:00
Matthew Meszaros and Devin AI
80ce00dfe6
feat: preserve destination-local send identity and recovery evidence during workspace archive overwrites while retaining portable source history
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-11 13:42:02 +00:00
Matthew Meszaros
f9a9163891
feat: record Apollo import outcomes with an uncancellable context, bound recurring runs and release interrupted ones so they rerun and sync on schedule, send the saved Clay auth token only to the connection's own table webhook, use typed routes for the Apollo, Clay and Salesforce page links, and document Clay HTTP API column retries
2026-10-11 12:59:05 +02:00
Matthew Meszaros
ebfd34fb84
Merge remote-tracking branch 'origin/main' into feature/third-party-data-provider-integrations
2026-10-11 12:41:57 +02:00