Commit Graph
1255 Commits
Author SHA1 Message Date
Matthew Meszaros 6c689575e8 Merge pull request #913 from warmbly/devin/1791604886-campaign-send-recovery
Fix campaign stalls and unresolved send-recovery outcomes (#907)
2026-10-10 04:37:49 +00:00
Matthew MeszarosandDevin AI 44bb752482 feat: keep campaign mailboxes sending around durable recovery holds and reconcile uncertain outcomes
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-10 04:20:12 +00:00
Devin AI d69ec96868 feat: complete invited signup in the dashboard and atomically provision accounts with workspace roles and resource grants 2026-10-10 04:11:45 +00:00
Devin AI 4758216dbf feat: integrate current monitoring and member access changes with durable mailbox synchronization 2026-10-09 16:56:53 +00:00
Matthew Meszaros 1c325b7a87 Merge pull request #903 from warmbly/devin/1791559441-admin-monitoring-final
feat: show evidence-based admin monitoring and truthful mailbox refresh states
2026-10-09 16:38:53 +00:00
Matthew Meszaros 62df88133a Merge pull request #900 from warmbly/feature/member-resource-access-scope
feat: resource-scoped member access (campaign folders, campaigns and mailboxes, read-only)
2026-10-09 16:37:57 +00:00
Matthew Meszaros 5a542e1222 feat: show failed or partial Accounts mailbox inventory as unavailable instead of measured zero counts or an empty list 2026-10-09 16:27:20 +00:00
Matthew Meszaros a8ddfc65ec feat: isolate admin sign-in caches, retain cached probe outcomes and clear recovered mailbox issues per measured source 2026-10-09 16:27:20 +00:00
Matthew Meszaros 2033fb8a36 feat: retain recent mailbox issues as dated historical evidence during refresh and remove misleading aggregate monitoring links 2026-10-09 16:27:20 +00:00
Matthew Meszaros 0e4c056d37 feat: preserve unavailable Cloud status on failed connection lookup without hiding reported errors or showing cached warmup counts 2026-10-09 16:27:20 +00:00
Matthew Meszaros 7ff3829f3f feat: keep Cloud lookup dependencies explicit in measured mailbox summary statistics 2026-10-09 16:27:20 +00:00
Matthew Meszaros cdb102ca56 feat: keep mailbox health and usage unknown until Cloud and account status checks finish with refresh and incomplete-data regressions 2026-10-09 16:27:20 +00:00
Devin AI 445e014b5e feat: recover mailbox synchronization across Gmail Outlook and IMAP with encrypted arrival replay and safe worker lifecycle 2026-10-09 14:24:10 +00:00
Matthew Meszaros 09ffccca80 feat: show out-of-scope sidebar pages to restricted members as locked rows that explain their access scope instead of hiding them 2026-10-09 15:07:29 +02:00
Matthew Meszaros 640753221a Merge pull request #901 from warmbly/fix/mobile-layout
feat: make the Accounts page readable on phones
2026-10-09 12:14:48 +00:00
Matthew Meszaros fa6797e12b feat: make the Accounts page readable on phones with container-sized mailbox columns, a labelled warmup, inbox and health line under each address, touch-sized row actions, one-row search and filter, banners that stack their buttons under the copy, and tighter mobile stat tiles 2026-10-09 13:44:39 +02:00
Matthew Meszaros 1f928de78f feat: record member access proof with a per-flow account option in the qa harness, and hide inbox compose and out-of-scope mailbox tags from restricted members 2026-10-09 13:42:09 +02:00
Matthew Meszaros bb4156cc6a feat: add resource-scoped member access that restricts a member to selected campaign folders, campaigns and mailboxes read-only, enforced in the API route gate, SQL filters, permission trigger, realtime channels and dashboard 2026-10-09 13:34:05 +02:00
Matthew Meszaros a4f22675df Merge pull request #897 from warmbly/devin/1791534337-visible-profile-notification-menus
feat: keep the notification feed visible outside dashboard overflow
2026-10-09 11:29:49 +00:00
Matthew MeszarosandDevin AI f6c1c64520 feat: preserve complete tag-set grouping and explicit mailbox ordering when filtering Accounts by a tag
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-09 10:54:39 +00:00
Matthew MeszarosandDevin AI 55cf83d8cf feat: portal the notification feed through the shared floating panel with viewport-safe scrolling and protect profile-menu placement outside clipped sidebars
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-09 08:34:13 +00:00
Devin AI 4cad34c84a feat: retain signup attribution through same-path marketing query navigation and reject cross-origin landing paths 2026-10-09 07:36:25 +00:00
Devin AI 5d641b3ebe feat: cover nested onboarding acquisition redirects through the parent route guard in frontend regressions 2026-10-09 07:20:04 +00:00
Devin AI 6af3ba910c feat: preserve cookieless first-touch signup attribution through marketing and app redirects and expose admin referrer hosts 2026-10-09 07:19:23 +00:00
Matthew MeszarosandDevin AI d7a9563e3f feat: expire stale warmup failure warnings and alert persistent fleet stalls while safely retrying blocked dispatches
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-09 05:37:56 +00:00
Matthew Meszaros 676445a6ee Merge pull request #888 from warmbly/devin/1791517488-campaign-mailbox-admission
feat: enforce per-mailbox campaign caps and configurable variable sending defaults
2026-10-09 04:56:33 +00:00
Matthew Meszaros b95655c358 Merge remote-tracking branch 'origin/main' into fix888 2026-10-09 06:40:54 +02:00
Matthew Meszaros c513fd2d93 Merge pull request #893 from warmbly/fix/oauth-dynamic-client-registration
feat: mark unverified OAuth apps as not affiliated with Warmbly and reserve the Warmbly name in app names
2026-10-09 04:30:25 +00:00
Matthew Meszaros 1386dac607 Merge pull request #892 from warmbly/feature/campaign-positive-reply-analytics
feat: positive replies, positive reply rate and interested leads in campaign analytics
2026-10-09 04:28:22 +00:00
Matthew Meszaros db32f2347d feat: mark unverified OAuth apps as not affiliated with Warmbly on the consent screen, reserve the Warmbly name in third-party app names (registration, edit, import, and self-registered clients), and show no website for self-registered clients 2026-10-09 06:19:09 +02:00
Matthew Meszaros b9cc87db1a feat: enable configurable 28–32 daily mailbox sending plans with admission rechecks, clear limit controls and consistent UTC placement budgets 2026-10-09 04:18:52 +00:00
Matthew Meszaros fd1c333402 feat: add positive replies, positive reply rate, interested leads and a reply-class breakdown to campaign analytics (summary, per-step, daily series, AI tool, OpenAPI, Zapier/Make samples), show them on the campaign overview with a reply quality card, positive chart series and step column, mirror them in the iOS models, document them, and seed classified replies plus a proof flow 2026-10-09 06:08:28 +02:00
Matthew Meszaros 6d88588350 feat: filter the Analytics dashboard by campaigns and campaign folders (campaign_ids/folder_ids on GET /analytics/dashboard, resolved server-side to one deduplicated org-scoped set), with a picker on web, a filter sheet on iOS, CLI flags, an AI tool argument, and API, OpenAPI and guide docs 2026-10-09 06:04:31 +02:00
Matthew Meszaros acbd79e3bf Merge pull request #884 from warmbly/devin/1791468189-dashboard-domexception
feat: handle already-registered passkeys without dashboard crash reports
2026-10-08 14:58:04 +00:00
Matthew MeszarosandDevin AI dd56447c73 feat: classify duplicate passkey enrollment separately from sign-in cancellation and keep known already-registered authenticator refusals out of dashboard error tracking
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 14:15:54 +00:00
Matthew MeszarosandDevin AI eef3ea356c feat: make shared notification text readable in both themes and document Google Sheets OAuth credentials and contact sync setup
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 14:06:32 +00:00
Matthew Meszaros d22893ca65 Merge pull request #881 from warmbly/devin/1791458091-mailbox-tag-sets
feat: group mailbox accounts by their complete unordered tag sets
2026-10-08 12:27:24 +00:00
Matthew Meszaros f6f46b1647 Merge pull request #880 from warmbly/devin/1791456836-worker-startup-recovery
feat: retry worker startup reload requests and show provider-specific warmup failure guidance
2026-10-08 12:27:14 +00:00
Matthew MeszarosandDevin AI c28097cafd feat: keep mailbox accounts with identical unordered tag sets together in the default list order
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 11:18:15 +00:00
Matthew MeszarosandDevin AI c687b6fd78 feat: retry unacknowledged worker startup heartbeats and show provider-specific warmup failure guidance
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 10:57:15 +00:00
Matthew MeszarosandDevin AI add3d31050 feat: keep existing Warmbly Cloud connections fully usable and remove the legacy migration settings flow
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 10:10:33 +00:00
Matthew MeszarosandDevin AI e6bd3491b2 feat: document dashboard browsing preferences, consolidate scoped search debouncing, and prevent signed-out pages from restoring saved filters after logout or token expiry
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 07:48:58 +00:00
Matthew Meszaros af371bbe1b feat: persist user and workspace scoped browsing filters, searches, sorting and resource history views across forms, templates, automations, audit, integrations, API keys and settings while preserving URL intent and transient editor state 2026-10-08 07:37:36 +00:00
Matthew Meszaros efb092fbfe feat: persist workspace-scoped mailbox domain analytics deliverability placement and import browsing controls with strict schemas and resource navigation restoration regressions 2026-10-08 07:37:36 +00:00
Matthew Meszaros f3f4e8cafd feat: persist user and workspace scoped inbox filters search sort and nested browsing controls while recomposing URL scopes tag membership and relative dates across refreshes 2026-10-08 07:37:36 +00:00
Matthew Meszaros 097c56c2aa feat: persist CRM task filters and views, independent deal board and table browsing choices, and meeting searches with workspace-safe pipeline fallback and remount regression coverage 2026-10-08 07:37:36 +00:00
Matthew Meszaros f7757a03c7 feat: persist user and workspace scoped contacts and campaign browsing filters, resource-specific activity and import views, contact drawer tabs and analytics periods while preserving URL intent, saved sorting and intentional resets with regression coverage 2026-10-08 07:37:36 +00:00
Matthew MeszarosandDevin AI acc3d62ba3 feat: add validated browser-tab browsing preferences scoped to the signed-in user and workspace, restore destination filters before rendering, preserve explicit navigation intent, and clear saved browsing state on logout or session expiry
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 07:17:34 +00:00
Matthew MeszarosandDevin AI c7144c1502 feat: restore the destination workspace mailbox tag filter before saving route state when switching organizations, preserve other query parameters, and cover the mounted Accounts transition without clearing either workspace selection
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 07:06:25 +00:00
Matthew MeszarosandDevin AI b4ef37fe82 feat: restore existing self-host realtime connections through normalized legacy gateway URLs and an authenticated API-origin WebSocket proxy, preserve ticket-bound client IP limits and direct retry fallback, and remember workspace mailbox tag filters across navigation with deterministic default account grouping
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-08 06:57:48 +00:00