Claude code web: 400 "Invalid high surrogate" on every message, persists across new sessions, repo is clean.
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Every message in any new session on my repo returns:
API Error: 400 The request body is not valid JSON: invalid high surrogate in string: line 1 column 3170 (char 3169)
Started after copy-pasting text between two separate account browser sessions (two accounts on same repo). Entire repo scanned programmatically — 337 files, zero lone surrogates found. New sessions also fail immediately on first message.
What Should Happen?
Sessions on this repo should work normally. Typing any message should not produce a 400 error.
Error Messages/Logs
API Error: 400 The request body is not valid JSON: invalid high surrogate in string: line 1 column 3120 (char 3119)
Steps to Reproduce
- Open Claude Code web on repo GGGP-Test/warlord-platform
- Start a new session
- Type any message (even "hello")
- Error appears immediately
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
web (claude.ai/code)
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
Windows Terminal
Additional Information
Using Claude Code on the web, not CLI. Two accounts both push to same repo. Bad character introduced via cross-account copy-paste, but repo is now fully clean.