Phase 13: A/B testing, API keys, API sending & MJML (v0.15.0) #69
No reviewers
Labels
No labels
bug
dependencies
documentation
feature
phase-summary
security
testing
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
vmanne-poc/Postak!69
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "phase-13"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Phase 13 (v0.15.0): A/B testing, project API keys, API sending providers, and MJML.
Authorization: Bearer postak_…on the project's contacts, groups, segments, campaigns and read-only senders/templates routes. API keys section in Project settings.fetch, no SDKs. Write-only credentials, provider tracking off where possible.{{ content }}slot), compiled in a sandboxed worker with size and time limits; 4 MB JSON limit on campaign/template routes for Bearer requests, nginx rate limit on those routes.20261022100000_ab_testing,20261022110000_api_keys. One new dependency:mjml@5.4.1(exact, MIT;npm audit0 before and after, permissive licences only).[0.15.0], README, backend and frontend version 0.15.0.Tests
rate-limits sign-in and form submissions per client address(expected 429, got 401at the 4th login: bcrypt logins outlast the 1.5 s window on the loaded machine). Unchanged frommain; Phase 13 doesn't touch auth or the throttler.nginx -tpasses.Smoke (dev stack, port 3000)
55 of 55 checks passed, 0 failed. Live dev DB backed up (
pg_dump -Fc) and migrated withmigrate deploy; drift check empty,migrate statusup to date. Covered: API key create/list/use/cross-project 404/403/401/revoke, A/B auto-winner with the remainder sent exactly once and a 409 on a later manual pick, MJML preview/template/send (pixel, tracked links, unsubscribe, preheader, clean text part), a SendGrid sender against a local mock (one request per contact, provider tracking off), the request size and nginx rate limits, and 11 headless Edge pages with 0 JS errors.Not verified: real delivery through Amazon SES API, SendGrid, Mailgun or Postmark (no credentials), and MJML rendering in real mail clients (checked as HTML in Mailpit).
Closes #20
Closes #29
Closes #49
Closes #50