fix: migrate desktop routing to React Router 8.3.0 - #10971
Merged
Conversation
Abhijay007
approved these changes
Aug 5, 2026
lifeizhou-ap
added a commit
that referenced
this pull request
Aug 6, 2026
* main: (32 commits) fix: keep turn-context in place for OpenAI Responses-stack models so prompt caching works (#10993) fix(developer): byte-bound the shell truncation preview (#10992) fix(openrouter): stop silently ignoring thinking effort off (#10991) fix: dispatch edited queued messages (#10933) fix: contain recipe template paths (#10930) fix: make shell approval titles faithful (#10986) fix: block MCP app form submissions (#10985) fix: migrate desktop routing to React Router 8.3.0 (#10971) fix: sanitize Bedrock tool errors (#10934) fix implicit OAuth during model discovery (#10929) fix: update React Router to 7.18.2 (#10967) test: early-exit code-exec smoke tests once tool invocation is observed (#10954) fix: keep ACP session naming out of live conversations (#10963) Bind MCP apps to trusted ownership metadata (#10747) tests: add recursion_limit attribute to remaining ACP test files (#10559) Sanitize Unicode tags in MCP resources (#10746) fix(oauth): preserve RFC 9207 iss from MCP OAuth callback (#10678) feat(installer): detect Termux and select musl portable build (#10568) feat: add Celeris provider (#10714) fix: shell ACP providers on desktop (#10907) ...
lifeizhou-ap
added a commit
that referenced
this pull request
Aug 6, 2026
* main: (101 commits) fix: keep turn-context in place for OpenAI Responses-stack models so prompt caching works (#10993) fix(developer): byte-bound the shell truncation preview (#10992) fix(openrouter): stop silently ignoring thinking effort off (#10991) fix: dispatch edited queued messages (#10933) fix: contain recipe template paths (#10930) fix: make shell approval titles faithful (#10986) fix: block MCP app form submissions (#10985) fix: migrate desktop routing to React Router 8.3.0 (#10971) fix: sanitize Bedrock tool errors (#10934) fix implicit OAuth during model discovery (#10929) fix: update React Router to 7.18.2 (#10967) test: early-exit code-exec smoke tests once tool invocation is observed (#10954) fix: keep ACP session naming out of live conversations (#10963) Bind MCP apps to trusted ownership metadata (#10747) tests: add recursion_limit attribute to remaining ACP test files (#10559) Sanitize Unicode tags in MCP resources (#10746) fix(oauth): preserve RFC 9207 iss from MCP OAuth callback (#10678) feat(installer): detect Termux and select musl portable build (#10568) feat: add Celeris provider (#10714) fix: shell ACP providers on desktop (#10907) ...
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
react-router-dompackage with a directreact-routerdependency and update all 18 desktop source/test references and router mocks@types/react-router-domand the now-unreferenced legacy@types/react-routerlockfile entriesScope
Goose Desktop remains on its existing declarative
HashRouter/Routes/Routearchitecture. This does not change route hierarchy or navigation semantics, and it does not add Data Router, Framework Mode, RSC APIs, future flags,RouterProvider, orHydratedRouter.React Router 8 removes
react-router-dom, so the declarative routing APIs Goose already uses now come directly fromreact-router. React and ReactDOM move to 19.2.8 to satisfy React Router 8.3.0's>=19.2.7peer requirement; Goose's Node^24.10.0target already satisfies the new>=22.22.0engine requirement.Security applicability
Repository inspection found no use of the unstable React Router RSC APIs affected by
GHSA-qwww-vcr4-c8h2, so the vulnerable path was not reachable in Goose. Moving to 8.3.0 nevertheless removes the version-based advisory from the shipped desktop dependency graph.Addresses #10964.
Verification
react-router@7.18.2:pnpm run typecheckpassed andpnpm run test:runpassed (64 files, 602 tests)pnpm install --frozen-lockfile --lockfile-only --ignore-scriptsfromui: passedpnpm --filter @aaif/goose-sdk run build: passedpnpm run lint:checkfromui/desktop: passed, including TypeScript, ESLint, and i18n validationpnpm run test:runfromui/desktop: passed (64 files, 602 tests)pnpm --filter goose-app list react react-dom react-router --depth 1: resolved React 19.2.8, ReactDOM 19.2.8, and React Router 8.3.0react-router-dom,@types/react-router-dom, legacy@types/react-router, or unstable RSC API occurrences remainpnpm audit --prod:GHSA-qwww-vcr4-c8h2is absent and there are noreact-routerfindings; the audit is not otherwise clean and still reports 44 unrelated findings (11 high, 31 moderate, 2 low)pnpm run package: passed, including the Vite production renderer bundle and Electron Forge arm64 macOS package, validating the ESM-only production build pathContents/Resources/bin/goosenorContents/Resources/gooseexists, so the route matrix could not be exercised in this environmentcargo fmt --check: passedgit diff --check: passedThe lockfile's large first-commit churn is the expected React 19.2.4 to 19.2.8 peer-context rewrite. The 8.3.0 commit is limited to React Router and its own cookie dependency change.