Lachlan here from the shed, with James--this episode of the Claude Code Changelog is
brought to you by Jellypod AI.
Now, mate, you know when you're deep in a massive, one-million-token streaming
session, and you're just, like, staring at the terminal waiting for this beautiful,
complex script to finish writing, and then--bam!
Your Wi-Fi drops for a split second, and the whole bloody thing vanishes into the
ether.
It's enough to make you chuck a wobbly.
Oh, absolutely.
That total loss of partial code outputs during a network flicker is a massive
developer pain point.
But in Claude Code v2.1.199, they finally fixed this.
If the API stream drops mid-flight now, it actually preserves whatever partial code
was already written, and it prints this explicit "incomplete-response" notice right
there in your terminal.
You don't lose the whole chunk anymore.
Wait, fair dinkum?
So, let's say it's ninety percent done writing some massive backend refactor,
and the packet drops.
I actually get to keep that ninety percent?
Yes!
Exactly.
You keep the ninety percent.
Because in previous versions, if that HTTP connection timed out or hit a transient
rate limit, the tool would basically panic, throw an unhandled error,
and discard the entire response.
Now, you get that incomplete-response notice.
You can inspect the partial code, see exactly where the connection choked,
and just ask Claude to pick up right from that line.
It saves you from burning through another massive context window just to regenerate
what you already had on screen.
That is huge for the wallet.
But, look, what if I'm running some massive background task?
Like, we talked yesterday about those hands-off background agents.
If those things are running headless and the network drops for more than a few
minutes, does it just die?
Well, it used to, because of the hard cap of fifteen retries.
But v2.1.199 introduces a new environment variable called
CLAUDE_CODE_RETRY_WATCHDOG.
If you set that, it raises the transient retry limit all the way up to three
hundred, and it completely lifts that fifteen-retry cap.
It basically tells the agent, "Hey, don't give up.
Keep knocking on the door."
Three hundred retries!
That's proper stubborn.
That means if my home internet decides to take a five-minute nap,
the agent just, uh, keeps on trying in the background until the line's clear.
And speaking of keeping things alive, this version also fixes a really nasty Linux
daemon crash loop.
Before this update, background agents on Linux were literally self-killing every
fifty seconds due to unhandled signal cleanups.
Now, that daemon loop is completely stable.
Plus, they added proactive system memory warnings, so if your machine is starving
for RAM, Claude will warn you before it tries to spin up a subagent and crashes your
terminal.
No worries about the machine blowing up, then.
But what about the corporate crowd?
You know, the guys behind those massive, soul-crushing corporate TLS firewalls where
everything gets intercepted?
Yeah, those corporate TLS-inspecting proxies are notorious for throwing SSL
handshake errors and burning through your API retries instantly.
In this update, if Claude Code detects a custom certificate issue,
it doesn't just crash.
It actually intercept-diagnoses the error and prints a direct,
actionable hint telling you to use the NODE_EXTRA_CA_CERTS environment variable
pointing to your company's custom CA bundle.
It bypasses the proxy headache entirely.
And once you're in, you can even stack your slash-commands in a single run--like
chaining slash-bug-hunt right into slash-explain--without the parser getting
confused by the stacked slash-skills.
Beautiful.
So, if you're hitting those TLS walls, make sure you set NODE_EXTRA_CA_CERTS to your
local CA bundle path, and that'll keep your streams clean and your retries from
burning out.