Skip to content

Adjust client redirect handling - #1490

Draft
emostov wants to merge 1 commit into
mainfrom
swag/adjust-client-redirects
Draft

Adjust client redirect handling#1490
emostov wants to merge 1 commit into
mainfrom
swag/adjust-client-redirects

Conversation

@emostov

@emostov emostov commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Closes ENG-4593

@codesandbox-ci

codesandbox-ci Bot commented Aug 14, 2026

Copy link
Copy Markdown

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit 00c57ee:

Sandbox Source
@turnkey/example-react-components Configuration

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates SDK HTTP request behavior to block redirects by setting fetch(..., { redirect: "error" }) across server, browser, core, and http clients, with accompanying tests/config updates to validate the new redirect handling (ENG-4593).

Changes:

  • Switch request redirect mode from "follow" to "error" across generated clients and shared request helpers.
  • Add/adjust Jest tests to assert redirect blocking and prevent request body forwarding across redirects.
  • Add sdk-browser Jest configuration and a test script to run the new test suite.

Reviewed changes

Copilot reviewed 13 out of 17 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
packages/sdk-server/src/tests/request-test.ts Updates request tests to mock global.fetch and assert redirect: "error".
packages/sdk-server/src/generated/sdk-client-base.ts Sets redirect: "error" in the generated server SDK request.
packages/sdk-server/scripts/codegen.js Updates server SDK codegen template to emit redirect: "error".
packages/sdk-browser/src/sdk-client.ts Sets redirect: "error" for browser SDK server-sign requests.
packages/sdk-browser/src/tests/request-test.ts Adds new browser tests asserting redirect blocking behavior.
packages/sdk-browser/src/generated/sdk-client-base.ts Sets redirect: "error" in the generated browser SDK request.
packages/sdk-browser/scripts/codegen.js Updates browser SDK codegen template to emit redirect: "error".
packages/sdk-browser/package.json Adds a test script for sdk-browser.
packages/sdk-browser/jest.config.js Adds moduleNameMapper entries needed for running sdk-browser tests.
packages/http/src/base.ts Updates shared request options to use redirect: "error".
packages/http/src/tests/request-test.ts Extends HTTP package tests to assert redirect blocking in client requests.
packages/http/src/generated/services/coordinator/public/v1/public_api.client.ts Sets redirect: "error" in the generated HTTP client request.
packages/core/src/utils.ts Adds redirect-blocking assertions and sets redirect: "error" for auth proxy fetches.
packages/core/src/redirects.ts Adds a runtime capability assertion helper for redirect blocking support.
packages/core/src/tests/request-test.ts Adds core tests validating redirect blocking and unsupported-runtime behavior.
packages/core/src/generated/sdk-client-base.ts Adds redirect-blocking assertions and sets redirect: "error" for core requests.
packages/core/scripts/codegen.js Updates core codegen to emit redirect-blocking assertions and redirect: "error".
Files not reviewed (4)
  • packages/core/src/generated/sdk-client-base.ts: Generated file
  • packages/http/src/generated/services/coordinator/public/v1/public_api.client.ts: Generated file
  • packages/sdk-browser/src/generated/sdk-client-base.ts: Generated file
  • packages/sdk-server/src/generated/sdk-client-base.ts: Generated file

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread packages/sdk-browser/src/__tests__/request-test.ts Outdated
Comment thread packages/core/src/redirects.ts
@lreading-turnkey
lreading-turnkey force-pushed the swag/adjust-client-redirects branch from 85feb5b to fe0bff6 Compare August 14, 2026 22:19
@lreading-turnkey
lreading-turnkey marked this pull request as ready for review August 14, 2026 22:20

@lreading-turnkey lreading-turnkey left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@emostov
emostov force-pushed the swag/adjust-client-redirects branch from db845af to 00c57ee Compare August 14, 2026 22:41
@lreading-turnkey
lreading-turnkey marked this pull request as draft August 16, 2026 23:20
@lreading-turnkey

Copy link
Copy Markdown
Contributor

Wait on @r-n-o 's feedback on tkhq/rust-sdk#250
This implementation may not be the right one - it blocks all redirects not just cross-origin, I may need to walk it back a bit.

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.

3 participants