400 Bad Request error after searching the web prevents session to continue.
Resolved 💬 2 comments Opened Nov 22, 2025 by kirso Closed Nov 22, 2025
What version of Codex is running?
0.61.0
What subscription do you have?
Pro
Which model were you using?
gpt-5.1-codex-max
What platform is your computer?
Darwin 24.6.0 arm64 arm
What issue are you seeing?
Can't continue the session. After a few web searches for documentation, codex retries for connection and fails. Any additional retry results in the same error that renders the rest of the session unusable despite gathered context and blocking it.
unexpected status 400 Bad Request: {
"error": {
"message": "Invalid value: 'other'. Supported values are: 'search', 'open_page', and 'find_in_page'.",
"type": "invalid_request_error",
"param": "input[522].action.type",
"code": "invalid_value"
}
}
Convo log:
› Ok, can you fetch everything on this website? https://convex-better-auth.netlify.app/supported-plugins
Except for Next.js, React, Expo, Tanstack.
Only sveltekit is relevant.
🌐 Searched: convex better auth supported plugins sveltekit
─ Worked for 22s ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
• What the official Convex + Better Auth docs say (SvelteKit‑only)
- Supported plugins out of the box (no schema changes): Anonymous, Email OTP, Generic OAuth, JWT, Magic Link, One Tap, Passkey, Phone Number, Two Factor, Username. Incompatible: SSO (needs
Node APIs) (convex-better-auth.netlify.app (https://convex-better-auth.netlify.app/supported-plugins))
- SvelteKit install steps: keep functions in src/convex; add $convex alias; install @convex-dev/better-auth, @mmailaender/convex-better-auth-svelte, better-auth@1.3.34; register
component in convex/convex.config.ts; auth.config.ts provider = CONVEX_SITE_URL; envs: CONVEX_DEPLOYMENT, PUBLIC_CONVEX_URL, PUBLIC_CONVEX_SITE_URL, SITE_URL, BETTER_AUTH_SECRET;
createAuth uses baseURL: SITE_URL, plugins: [convex()]; auth client uses plugins: [convexClient()]; proxy /api/auth/[...all] with createSvelteKitHandler; hook sets locals.token =
await getToken(createAuth, cookies); use createSvelteAuthClient({ authClient }) in +layout.svelte; server loads call Convex with createConvexHttpClient({ token }). (convex-better-
auth.netlify.app (https://convex-better-auth.netlify.app/framework-guides/sveltekit))
Notes relevant to your codebase
- The docs do not mention crossDomain because they assume auth is effectively first‑party (Convex site and app share an origin). If your app runs on a different origin than *.convex.site,
you will need a cross‑domain bridge to get the cookie to your app domain; otherwise the documented flow will leave locals.token empty.
- Your extra auth files: src/lib/config/auth.ts (empty), src/lib/constants/auth.ts (password/rate-limit constants), src/lib/validations/auth.ts (Zod schemas), src/lib/server/better-auth.ts
(tiny helper), src/convex/lib/authorization.ts (Convex ACL helpers). Only keep those you actively import; the docs’ minimal path uses just convex/auth.ts, auth.config.ts, http.ts, lib/
auth-client.ts, hooks.server.ts.
Summary of requested pages (non‑React/Next/Expo/TanStack):
- Supported plugins list and incompatible list: see above. (convex-better-auth.netlify.app (https://convex-better-auth.netlify.app/supported-plugins))
- Full SvelteKit guide: install, env, createAuth, auth client, proxy handler, hook, layout, server usage. (convex-better-auth.netlify.app (https://convex-better-auth.netlify.app/framework-
guides/sveltekit))
› Continue with review
■ unexpected status 400 Bad Request: {
"error": {
"message": "Invalid value: 'other'. Supported values are: 'search', 'open_page', and 'find_in_page'.",
"type": "invalid_request_error",
"param": "input[522].action.type",
"code": "invalid_value"
}
}
Thread uploaded
What steps can reproduce the bug?
Uploaded thread: 019aa6af-dc58-7df3-abda-17bccdbe7f8e
What is the expected behavior?
Session continues instead of throwing:
unexpected status 400 Bad Request: {
"error": {
"message": "Invalid value: 'other'. Supported values are: 'search', 'open_page', and 'find_in_page'.",
"type": "invalid_request_error",
"param": "input[522].action.type",
"code": "invalid_value"
}
}
Additional information
_No response_
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗