fix(e2e): make the setup onboarding PUT best-effort, not fatal (PMS-645) #437

Merged
nrupard merged 1 commit from fix/PMS-645-onboard-best-effort into main 2026-07-09 17:46:46 +02:00
Owner

What

Make the PMS-641 onboarding PUT /me in e2e/tests/global.setup.ts best-effort: warn on a non-OK response instead of throwing.

Why

A failed setup project makes Playwright SKIP every dependent spec (it does not fail them). So the previous throw meant a transient /me failure would:

  • skip all ~23 API specs, which need no onboarding at all - total coverage loss for the run, and
  • report the browser specs as "did not run" instead of letting them FAIL with the /onboarding/profile bounce - hiding PMS-641's own signal.

Onboarding is only a precondition for the browser specs, so its failure should not gate the API specs and should let the browser specs surface the real bounce.

Change

On a non-OK PUT /me, console.error a clear warning (status + body) and continue; the successful-onboarding happy path is unchanged.

Validation

TS-only change mirroring the surrounding code; no Rust touched (the pre-commit Rust hook passed). Local TS typecheck not available (no lockfile / offline tsc), same as #436. The E2E run exercises it against staging.

Fixes PMS-645. Follow-up to PMS-641 (#436).

## What Make the PMS-641 onboarding `PUT /me` in `e2e/tests/global.setup.ts` best-effort: warn on a non-OK response instead of throwing. ## Why A failed **setup** project makes Playwright SKIP every dependent spec (it does not fail them). So the previous `throw` meant a transient `/me` failure would: - skip all ~23 API specs, which need no onboarding at all - total coverage loss for the run, and - report the browser specs as "did not run" instead of letting them FAIL with the `/onboarding/profile` bounce - hiding PMS-641's own signal. Onboarding is only a precondition for the browser specs, so its failure should not gate the API specs and should let the browser specs surface the real bounce. ## Change On a non-OK `PUT /me`, `console.error` a clear warning (status + body) and continue; the successful-onboarding happy path is unchanged. ## Validation TS-only change mirroring the surrounding code; no Rust touched (the pre-commit Rust hook passed). Local TS typecheck not available (no lockfile / offline tsc), same as #436. The E2E run exercises it against staging. Fixes PMS-645. Follow-up to PMS-641 (#436).
fix(e2e): make the setup onboarding PUT best-effort, not fatal
All checks were successful
E2E / Playwright against staging (pull_request) Successful in 40s
Check / fmt + clippy + build + tests (pull_request) Successful in 1m21s
Integration / integration tests (pull_request) Successful in 5m11s
Create release / Gate (release-branch merges only) (pull_request) Successful in 1s
Create release / Create release from merged PR (pull_request) Has been skipped
3c42e55e4b
PMS-641's onboarding PUT /me threw on a non-OK response. A failed setup project makes Playwright SKIP every dependent spec, so a transient /me failure would skip all ~23 API specs (which need no onboarding) and report the browser specs as "did not run" instead of failing with the /onboarding/profile bounce that is the real signal. Warn loudly and continue instead: API coverage survives, and a genuine onboarding failure still surfaces as the browser bounce. The happy path is unchanged.

#PMS-645
nrupard deleted branch fix/PMS-645-onboard-best-effort 2026-07-09 17:46:46 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
psa-systems/mokosh-server!437
No description provided.