Skip to content

Commit 7a33cd7

Browse files
test(e2e): W3 LIVE claim/conversion + deploy-lifecycle + env-switcher coverage (#173)
* test(e2e): W3 LIVE claim/conversion + deploy-lifecycle + env-switcher coverage Real-backend (E2E_LIVE=1-gated) cross-surface E2E for the W3 matrix wave, building on the WS1-P1 harness + W1/W2 specs (mirrors their gating, cohort tagging, cleanup-ledger + reaper patterns exactly). Brevo-free: accounts are minted via anon-provision → /claim (which returns a real session_token). Flows covered: - Claim/conversion (anon→claimed): anon provision → /claim → the resource is team-owned + visible in GET /api/v1/resources; claim-replay of the same token → 409 already_claimed (single-use JWT, rule 7). - Env switcher: provision dev vs prod → GET /api/v1/resources?env= returns only that env (the dashboard's per-env read), provision echoes the resolved env (rule 11). - Deploy lifecycle [STAGING-ONLY]: /deploy/new → 202 accepted contract (id/app_id/status/environment) → GET /api/v1/deployments/:id/events timeline surface → DELETE → gone. Tier elevation uses the DEV-ONLY /internal/set-tier (404s + skips loudly in prod — never crosses billing). Full Kaniko build→live-URL leg deferred (too slow/heavy for E2E). Each leg is a UI-action → backend-state-change → UI-read-surface assertion (the login-outage class). Named live-*.spec.ts so per-PR CI ignores it and the playwright.live.config.ts testMatch + the ledger reaper pick it up. Skips cleanly (5 skipped) without E2E_LIVE. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * test(e2e): drop unused STATUS_BAD_REQUEST const (code-quality) github-code-quality flagged the unused const in live-claim-deploy.spec.ts; required_conversation_resolution on main blocked the merge. Remove the dead constant. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 16ae02d commit 7a33cd7

1 file changed

Lines changed: 699 additions & 0 deletions

File tree

0 commit comments

Comments
 (0)