Matthew Meszaros
69f2fef943
feat: move the flow canvas zoom controls to the bottom left, clear of the assistant launcher, in the app and the site mocks
2026-10-06 05:29:09 -07:00
Matthew Meszaros
705651e01a
Merge remote-tracking branch 'origin/main' into feat/flow-builder-redesign
...
# Conflicts:
# web/src/app/app/campaigns/[id]/steps/page.tsx
2026-10-06 05:24:33 -07:00
Matthew Meszaros
e05c22a761
feat: sync the site's automation and campaign builder mocks and campaigns page to the two-line cards, quiet lines, dot-grid canvas and toolbar row, and document canvas navigation
2026-10-06 05:23:57 -07:00
Matthew Meszaros
62674fdcc9
feat: animate flow edits so cards glide to their new places, new steps fade and grow in, removed ones fade out, lines morph between straight and branched, and pills, waits and add buttons travel with their lines, skipping animation on first paint
2026-10-06 03:32:47 -07:00
Matthew Meszaros
1bbc88b250
feat: make the flow builders a full-height design-tool canvas with two-finger and drag panning with momentum, pinch and Ctrl or Cmd wheel zoom toward the pointer, a moving dot grid, no scrollbars, fenced bounds, zoom shortcuts, and a campaign canvas that fills the window
2026-10-06 03:24:49 -07:00
Matthew Meszaros
3e627e3894
Merge pull request #851 from warmbly/devin/1791277779-test-workspace-sample-data
...
feat: add safe sample data provisioning for Test workspaces
v0.6.32
2026-10-06 09:40:26 +00:00
Matthew Meszaros and Devin AI
4bc92ba125
feat: use unversioned admin API paths in the Test workspace sample-data proof flow
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-06 09:31:09 +00:00
Matthew Meszaros and Devin AI
f52ef240b4
feat: add audited repeat-safe sample data provisioning for active dedicated Test workspaces in Admin Testers
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-06 09:23:31 +00:00
Matthew Meszaros
26b0333d87
feat: draw the flow builders as a plain scrolling page instead of a pan and zoom canvas, scroll a step into view only when needed, fade the panel and picker in, keep the campaign flow growing with the page beside a sticky panel, move stop on reply into a toolbar row, and drop React Flow and dagre
2026-10-06 02:07:47 -07:00
Matthew Meszaros
2d76c535c8
feat: quiet the flow canvas with two-line cards, a + that shows on hover, waits as plain text beside the line, pill-wide columns, an amber dot for steps needing setup and faded unconnected steps
2026-10-06 01:47:29 -07:00
Matthew Meszaros
302f874846
Merge pull request #850 from warmbly/devin/war-19-harden-dashboard-response-headers-and-request-input-handling
...
Reject unsupported request text and restrict dashboard resources with display-only image previews
v0.6.31
2026-10-06 08:34:00 +00:00
Matthew Meszaros and Devin AI
925e0edc31
feat: proxy dashboard and editor image previews with SSRF-safe bounded fetching while preserving original customer email URLs
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-06 07:28:25 +00:00
Matthew Meszaros and Devin AI
0f12b3b250
feat: preserve static CSP preview and runtime configuration cache rules with current main
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-06 06:05:17 +00:00
Matthew Meszaros and Devin AI
34fbbc3c54
feat: apply per-response development nonces after Vite finishes rendering HTML
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-06 05:57:08 +00:00
Matthew Meszaros and Devin AI
589bc823ed
feat: generate static dashboard CSP hashes and isolate email preview styling across Vite nginx and Pages
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-06 05:46:52 +00:00
Matthew Meszaros
91e031a41c
feat: confirm discarding unsaved step edits outside the selection state updater, and mint campaign branch ids with the plain-HTTP-safe fallback
2026-10-05 22:20:56 -07:00
Matthew Meszaros
aa63ed9a4f
feat: redraw the site's campaign builder mock, campaigns page builder and hero fragments as the self-laying tree canvas with wait chips, column pills and End terminals, and drop dot and drag wording from the switch step editor
2026-10-05 22:19:23 -07:00
Matthew Meszaros
8d8135c30c
feat: document the self-laying campaign and automation canvases in the sequences, campaigns, collaboration and realtime guides, correct the step position and empty-branch model comments, and add a campaign steps proof flow
2026-10-05 22:13:44 -07:00
Matthew Meszaros
d25055c122
feat: rebuild the campaign step builder on the shared tree canvas with conditions as columns, waits on the lines, a step picker, path and step side panels with unsaved-change guards, reconnect-on-delete, and switch cases that keep their paths through a rename
2026-10-05 22:10:23 -07:00
Matthew Meszaros
b553c61db1
feat: drop the automation canvas layout hook and client now that the builder derives positions from the flow's structure
2026-10-05 21:57:32 -07:00
Matthew Meszaros
63ae572345
feat: keep the connector + button under the pointer on hover, open the step picker beside the cards, top-anchor the first view, and update the automation docs, the site's builder demo and branching copy, and a proof flow for the tree builder
2026-10-05 21:56:30 -07:00
Matthew Meszaros and Devin AI
bb0b822cb0
feat: reject unsupported request text and secure local dashboard responses
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-06 04:45:36 +00:00
Matthew Meszaros
42205a6ade
feat: rebuild the automation builder as an auto-laid-out tree with + insertion, branch columns, a step picker, undo/redo, inline issues and a side panel on a shared flow canvas
2026-10-05 21:41:40 -07:00
Matthew Meszaros
c1606851d8
Merge pull request #845 from warmbly/devin/1791212676-structured-sender-variables
...
feat: add native Sender mailbox personalization to campaign emails
v0.6.30
2026-10-05 16:37:09 +00:00
Matthew Meszaros
db8efd04d7
Merge pull request #846 from warmbly/devin/1791216084-ready-test-workspaces
...
feat: provision ready-to-use Test workspaces for reviewer accounts
2026-10-05 16:35:33 +00:00
Matthew Meszaros and Devin AI
9d0f43780b
feat: provision onboarding-complete reviewer workspaces with expiring Test access, bounded credits and Test header labels
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 16:15:56 +00:00
Matthew Meszaros
d0a33f74b3
Merge pull request #844 from warmbly/fix/dashboard-config-no-cache
...
fix: dashboard survives a misconfigured API_URL, config.js is never cached on Pages
2026-10-05 15:22:57 +00:00
Matthew Meszaros and Devin AI
d807aa2852
feat: expose typed sender mailbox details in campaign templates, previews and email editor variables
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 15:15:12 +00:00
Matthew Meszaros
e19c55ebd6
feat: match the text/html media type case-insensitively in the dashboard client's web-page guard and cover a mixed-case Content-Type in Client.test.ts
2026-10-05 17:14:41 +02:00
Matthew Meszaros
0731a8c788
feat: refuse an HTML page as an API response in the dashboard client (api_url_not_api) so a missing or wrong API_URL falls back to the unreachable login state instead of crashing, and serve config.js with Cache-Control no-store from the dashboard and admin Pages _headers to match the nginx images
2026-10-05 17:04:05 +02:00
Matthew Meszaros
fc18d8c186
Merge pull request #842 from warmbly/devin/1791201936-google-oauth-frontend-flag
...
feat: configure Google mailbox OAuth and trusted multi-dashboard returns
v0.6.29
2026-10-05 13:31:17 +00:00
Matthew Meszaros and Devin AI
d6c8d9e54c
feat: document trusted dashboard origin refusals for Google and Microsoft mailbox OAuth under HTTP 400 errors
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 12:58:22 +00:00
Matthew Meszaros and Devin AI
849cf18f55
feat: bind password recovery, invitations, mailbox and integration OAuth, referral and billing returns to trusted initiating dashboards
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 12:51:37 +00:00
Matthew Meszaros
b2bde4ed92
Merge pull request #840 from warmbly/devin/1791198671-admin-health-notices
...
feat: correct admin setup and health notices and add safe invitation cleanup
2026-10-05 12:35:00 +00:00
Matthew Meszaros
940baf3ebf
Merge pull request #841 from warmbly/devin/1791198887-fleet-telemetry
...
feat: report accurate fleet resources, public IPv4 and workload shares
2026-10-05 12:34:44 +00:00
Matthew Meszaros and Devin AI
caa1633dac
feat: verify main and TAC assessment dashboard origins share configurable backend CORS and OAuth routing
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 12:24:11 +00:00
Matthew Meszaros and Devin AI
6a5d76004a
feat: cover Google reauthorization origin rejection and unchanged Microsoft routing with clearer error documentation
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 12:20:28 +00:00
Matthew Meszaros and Devin AI
f58a6c1ff9
feat: control Gmail mailbox OAuth per frontend deployment and bind callbacks to allowlisted dashboard origins
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 12:16:34 +00:00
Matthew Meszaros and Devin AI
1748ae3765
feat: preserve localhost fleet admin proof with isolated telemetry fixtures, resource-state and analytics assertions
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 12:11:35 +00:00
Matthew Meszaros and Devin AI
f56278488f
feat: keep worker farewell heartbeats independent of IP discovery and identify CPU-set resource scope accurately
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 11:43:16 +00:00
Matthew Meszaros and Devin AI
5ae09e0e15
feat: separate fleet mailbox targets from measured CPU and RAM, report node public egress IPv4 and add workload share analytics
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 11:24:32 +00:00
Matthew Meszaros and Devin AI
ded4e5f700
feat: correct split-host admin health checks and registration notices, distinguish informational context from problems, and add audited expired-invitation cleanup
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 11:17:13 +00:00
Matthew Meszaros
4e59bfd4d5
Merge pull request #839 from warmbly/feature/admin-redesign
...
feat: redesign the admin panel in a black and white dark-first theme with grouped sidebar sections, header tabs, a collapsible animated sidebar and a rebuilt sign-in, alert operators on admin sign-ins and admin access changes through opsnotify, and carry first-touch attribution from the marketing site to every dashboard link
v0.6.28
2026-10-05 10:26:14 +00:00
Matthew Meszaros
1de33d9f41
feat: guard configuration tab links against losing unsaved edits, keep the login captcha mounted for resend, confirm warmup appeal decisions by mailbox, show header tabs only on section pages, show the update pill in the mobile drawer, make admin sign-in alerts opt-in per channel, check the admin bit before loading the account, and alert on admin access only when it changes
2026-10-05 03:21:44 -07:00
Matthew Meszaros
d6533a4aa5
Merge pull request #838 from warmbly/devin/1791190573-release-pages-dashboard
...
feat: deploy configured Cloudflare Pages projects only after stable releases
2026-10-05 10:01:26 +00:00
Matthew Meszaros
e506544119
Merge origin/main into feature/admin-redesign
2026-10-05 03:01:22 -07:00
Matthew Meszaros
8910b02198
feat: redesign the admin panel in a black and white dark-first theme with grouped sidebar sections, header tabs, a collapsible animated sidebar and a rebuilt sign-in, alert operators on admin sign-ins and admin access changes through opsnotify, and carry first-touch attribution from the marketing site to every dashboard link
2026-10-05 03:01:22 -07:00
Matthew Meszaros
549a0f7293
Merge pull request #833 from warmbly/devin/1791173929-safari-oauth-popups
...
fix: open OAuth sign-in windows inside the click so Safari stops blocking them, and keep listening when one is blocked
2026-10-05 10:00:02 +00:00
Matthew Meszaros and Devin AI
a865db3386
feat: deploy configurable Cloudflare Pages project lists from exact releases with isolated dashboard, admin, site and docs builds
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 09:48:40 +00:00
Matthew Meszaros and Devin AI
94cd8b1692
feat: reuse Cloudflare Pages production configuration for exact-release dashboard builds and cover safe runtime imports in CI
...
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-05 09:14:37 +00:00