Skip to content

Fix Worker redirects breaking OAuth login - #6

Merged
ostenbom merged 1 commit into
mainfrom
codex/fix-worker-oauth-redirects
Sep 29, 2026
Merged

ostenbom merged 1 commit into
mainfrom
codex/fix-worker-oauth-redirects

Conversation

@ostenbom

Copy link
Copy Markdown
Contributor

PR #5 rebuilt upstream requests with the default redirect mode (follow), causing the Worker to follow OAuth callback redirects itself. The browser received the final response instead of the redirect and its authentication cookies, breaking SSO through Linkup.

Set the upstream redirect mode to Manual while preserving streamed bodies. Add a Worker integration test that verifies the 303 status, Location header, and both Set-Cookie headers reach the client. Update Wrangler entry points and CI placeholder artifacts to the worker-build 0.8 output paths so CI runs the current Worker.

Validation:

  • The new regression test failed before the fix (200 instead of 303) and passed afterward.
  • All 11 server integration tests passed with the local Worker running (cargo test -p linkup-server-tests -- --include-ignored).
  • worker-build --release, cargo fmt --all --check, and git diff --check passed.

The Worker needs redeploying for the fix to take effect; live Google SSO has not been retested.

@ostenbom
ostenbom merged this pull request into main Sep 29, 2026
6 checks passed
augustoccesar pushed a commit that referenced this pull request Oct 8, 2026
PR #5 rebuilt upstream requests with the default redirect mode
(`follow`), causing the Worker to follow OAuth callback redirects
itself. The browser received the final response instead of the redirect
and its authentication cookies, breaking SSO through Linkup.

Set the upstream redirect mode to `Manual` while preserving streamed
bodies. Add a Worker integration test that verifies the 303 status,
Location header, and both Set-Cookie headers reach the client. Update
Wrangler entry points and CI placeholder artifacts to the worker-build
0.8 output paths so CI runs the current Worker.

Validation:
- The new regression test failed before the fix (200 instead of 303) and
passed afterward.
- All 11 server integration tests passed with the local Worker running
(`cargo test -p linkup-server-tests -- --include-ignored`).
- `worker-build --release`, `cargo fmt --all --check`, and `git diff
--check` passed.

The Worker needs redeploying for the fix to take effect; live Google SSO
has not been retested.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant