test(e2e): quarantine OIDC token-flow test - needs OP session cookie #110

Merged
nrupard merged 1 commit from fix/e2e-oidc-fixme into main 2026-06-05 19:02:02 +02:00
Owner

Summary

Last CI run: 6 passed, 2 skipped (auth-ui fixme + cross-tenant company canary optional), 1 failed (OIDC).

OIDC test failed at state mismatch because the redirected URL had no state param. Bunyip's /oauth2/authorize requires an OP session cookie to issue a code; the api project's request context only carries a Bearer header (PR #102 dropped storageState because mokosh PSA auth is Bearer-only). With no OP session, bunyip 302s /authorize to its own login screen, so neither state nor code come back.

This test exercises bunyip-OP behaviour, not mokosh-server's RS surface. Mokosh-server's bunyip-RS verifier (src/modules/auth/middleware.rs:69) is already covered indirectly by every passing api test - each one relies on it to accept the bunyip-issued bearer captured in setup.

Mark test.fixme for phase 1 with a comment naming the OP-cookie dependency so the next attempt either captures+replays cookies in setup or drives the OIDC flow through a real browser. Revisit alongside the auth-ui test.

README coverage row updated to reflect the quarantine.

Test plan

  • Post-merge run: 6 passed, 3 skipped (auth-ui fixme + OIDC fixme + cross-tenant company canary), 0 failed. Zero CI-red.
## Summary Last CI run: **6 passed**, 2 skipped (auth-ui fixme + cross-tenant company canary optional), **1 failed (OIDC)**. OIDC test failed at `state mismatch` because the redirected URL had no `state` param. Bunyip's `/oauth2/authorize` requires an OP session cookie to issue a code; the api project's request context only carries a Bearer header (PR #102 dropped storageState because mokosh PSA auth is Bearer-only). With no OP session, bunyip 302s `/authorize` to its own login screen, so neither `state` nor `code` come back. This test exercises bunyip-OP behaviour, not mokosh-server's RS surface. Mokosh-server's bunyip-RS verifier (`src/modules/auth/middleware.rs:69`) is already covered indirectly by every passing api test - each one relies on it to accept the bunyip-issued bearer captured in setup. Mark `test.fixme` for phase 1 with a comment naming the OP-cookie dependency so the next attempt either captures+replays cookies in setup or drives the OIDC flow through a real browser. Revisit alongside the auth-ui test. README coverage row updated to reflect the quarantine. ## Test plan - [ ] Post-merge run: 6 passed, 3 skipped (auth-ui fixme + OIDC fixme + cross-tenant company canary), 0 failed. Zero CI-red.
test(e2e): quarantine OIDC token-flow test - needs OP session cookie
All checks were successful
Create release / Create release from merged PR (pull_request) Has been skipped
Check / fmt + clippy + compile + tests (pull_request) Successful in 2m25s
bfa3945ec0
Last CI: 6 passed, 2 skipped (auth-ui fixme + cross-tenant company canary
optional), 1 failed (OIDC).

OIDC test failed at `state mismatch` because the redirected URL had no `state` param. Bunyip's `/oauth2/authorize` requires an OP session cookie to issue a code; the api project's request context only carries a Bearer header (PR #102 dropped storageState because mokosh PSA auth is Bearer-only). With no OP session, bunyip 302s `/authorize` to its own login screen, so neither `state` nor `code` come back.

This test exercises bunyip-OP behaviour, not mokosh-server's RS surface. Mokosh-server's bunyip-RS verifier (`src/modules/auth/middleware.rs:69`) is already covered indirectly by every passing api test - each one relies on it to accept the bunyip-issued bearer captured in setup.

Mark `test.fixme` for phase 1 with a comment naming the OP-cookie dependency so the next attempt either captures+replays cookies in setup or drives the flow through a real browser. Revisit alongside the auth-ui test.

README coverage row updated to reflect the quarantine. Expected next run: 6 passed, 3 skipped (auth-ui fixme + OIDC fixme + cross-tenant company canary), 0 failed. Zero CI-red.

#PMS-140
nrupard deleted branch fix/e2e-oidc-fixme 2026-06-05 19:02:03 +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!110
No description provided.