1190 Commits
Author SHA1 Message Date
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 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
Matthew MeszarosandDevin 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 MeszarosandDevin 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 MeszarosandDevin 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 MeszarosandDevin 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 MeszarosandDevin 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
Matthew Meszaros 19d8d24fac feat: add Apollo integration (API key connect, list imports with hourly sync, contact enrichment) and two-way Clay integration (inbound row URL creating contacts, outbound event rows, automation action) with dashboard pages, brand logos, Discover ranking, org transfer registration and docs 2026-10-11 12:41:56 +02:00
Matthew Meszaros c7c6679f3b Merge pull request #944 from warmbly/fix/shared-pool-campaign-wakeup-throttling
feat: stop campaigns sharing a mailbox pool from throttling each other, and hold the per-mailbox gap across campaigns with an atomic send claim
2026-10-11 08:50:04 +00:00
Matthew Meszaros c7352bac97 feat: stop campaigns sharing a mailbox pool from throttling each other by ignoring parked campaign wake-ups in slot conflict resolution, add an atomic per-mailbox send claim (email_accounts.send_claimed_at) so concurrent campaigns cannot send inside one mailbox's gap, and break rotation ties per campaign 2026-10-11 10:35:17 +02:00
devin-ai-integration[bot] 065e4c28ba Merge pull request #946 from warmbly/devin/1791705885-monitoring-source-clock
feat: compare monitoring evidence against a statement-local database clock
2026-10-11 08:21:38 +00:00
Matthew MeszarosandDevin AI 1bd1719b20 feat: compare monitoring predicates and evidence windows against one database observation clock
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-11 08:08:13 +00:00
Matthew Meszaros 457cefa345 feat: scope mailbox transport reports and automatic recovery to current-generation sync and send evidence while preserving archive history and send safety holds 2026-10-11 07:04:46 +00:00
devin-ai-integration[bot] 14c5ce2b1b Merge pull request #941 from warmbly/devin/1791690444-arrival-stage-diagnostics
feat: measure arrival delivery stages without changing durable queue behavior
2026-10-11 04:38:47 +00:00
Devin AI 943a61af09 feat: add bounded payload-free arrival stage timing and flush returned-pass diagnostics on shutdown 2026-10-11 03:53:54 +00:00
Matthew Meszaros 9d92216846 feat: retain authoritative send conflict holds and reset imported recovery provenance with migration 287 2026-10-11 03:25:52 +00:00
Matthew Meszaros 67ddf5774a Merge remote-tracking branch 'origin/main' into devin/1791675445-send-audit-parent-review 2026-10-11 03:15:45 +00:00
devin-ai-integration[bot] 6704813341 Merge pull request #940 from warmbly/devin/1791674507-pending-dispatch-fairness
feat: yield successful pending local dispatches so old no-ops cannot monopolize due batches
2026-10-11 02:44:08 +00:00
Devin AI 009fca6e27 feat: yield successful pending local dispatches so old no-ops cannot monopolize due batches 2026-10-10 23:34:51 +00:00
Matthew MeszarosandDevin AI 9ab0c1f589 feat: preserve retired scheduled-job history without active scheduling or monitoring
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-10 18:29:46 +00:00
Matthew MeszarosandDevin AI 04ae441619 feat: preserve unresolved send outcome conflicts when unstarted outbound commands cancel or defer
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-10 18:15:13 +00:00
Matthew Meszaros 255c7172d4 Merge remote-tracking branch 'origin/main' into feature/dashboard-onboarding-tour 2026-10-10 19:13:35 +02:00
Matthew Meszaros ab932bc08e Merge remote-tracking branch 'origin/main' into feature/dashboard-onboarding-tour 2026-10-10 18:52:21 +02:00
Matthew Meszaros 3ba5913569 feat: add a skippable chaptered dashboard product tour narrated by Remie with sample-data scenes, plan comparison and selection (hosted links and Warmbly Cloud on self-host), saved per account via PUT /auth/me/product-tour 2026-10-10 18:52:21 +02:00
devin-ai-integration[bot] 0e48957ae8 Merge pull request #936 from warmbly/devin/1791649374-consistent-worker-heartbeats
feat: keep worker heartbeat monitoring consistent within one database observation
2026-10-10 16:42:46 +00:00
Matthew MeszarosandDevin AI 21eac105f5 feat: collect worker heartbeat warnings from one database snapshot and preserve source observation clocks
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-10 16:30:34 +00:00
Matthew MeszarosandDevin AI c0e721f92e feat: retain native warmup filing provider retry deadlines across workers and admission retries
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-10 16:22:04 +00:00
devin-ai-integration[bot] 2cf079c379 Merge pull request #933 from warmbly/devin/1791640207-authoritative-send-result-recovery
feat: reconcile authoritative dead-letter send results without replaying uncertain sends
2026-10-10 15:43:04 +00:00
devin-ai-integration[bot] 0e3ed53ede Merge pull request #934 from warmbly/devin/1791643401-graph-delete-lookup-authority
feat: preserve Graph mail and local bodies when warmup deletion lookup is uncertain
2026-10-10 15:30:30 +00:00
Matthew Meszaros d73d8f4bb4 feat: integrate hosted accounting regressions and proof-gated failed dead-letter repair with merged provider fixes 2026-10-10 15:19:42 +00:00
Devin AI 3888a2e719 feat: repair already applied warmup failure dead letters only with durable refunded charge proof without replaying callbacks or mailbox holds and cover exact task regressions in PostgreSQL CI 2026-10-10 15:16:02 +00:00
Matthew Meszaros 8340b37e3d feat: integrate merged provider folder and duplicate arrival hardening before accounting provenance rollout 2026-10-10 15:10:58 +00:00
Devin AI 2e4dfa4d87 feat: require complete terminal Graph message lookups before warmup retention cleanup and reject malformed identities or continuation metadata with bounded native retryable uncertainty 2026-10-10 15:10:05 +00:00
Matthew Meszaros 8473980722 feat: preserve original warmup completion and require atomic UTC charge provenance for one-time failure and cancellation refunds 2026-10-10 15:00:07 +00:00
Matthew Meszaros ac55199a84 feat: integrate authorized migration 282 baseline before adding atomic warmup charge provenance 2026-10-10 14:54:06 +00:00
devin-ai-integration[bot] ae54f970e9 Merge pull request #931 from warmbly/devin/1791640209-provider-sync-recovery
feat: preserve IMAP folders on incomplete status and honor Graph sync retry windows
2026-10-10 14:53:43 +00:00
Devin AI accd6c0ed5 feat: stop Graph warmup retention deletes on failed or ambiguous stable message lookups while preserving provider error evidence, stored bodies and idempotent cleanup retries 2026-10-10 14:47:28 +00:00
devin-ai-integration[bot] d3b5ee42f9 Merge pull request #932 from warmbly/devin/1791640255-sync-arrival-protocol-regressions
feat: reconcile same-batch IMAP duplicates through canonical arrival mappings
2026-10-10 14:44:58 +00:00
Devin AI 44cd8f8254 feat: preserve complete IMAP folder presence across bounded sync and stop Graph passes on authoritative provider retry deadlines 2026-10-10 14:42:21 +00:00
Matthew Meszaros 78da37dfca Merge pull request #930 from warmbly/devin/1791639319-protect-legacy-dlq-replay
feat: protect legacy send dead letters and expose unverified recovery evidence
2026-10-10 14:41:43 +00:00