Problem
A hung registry hangs the Worker: the MCP fetch has no signal/AbortSignal.timeout, so a never-resolving upstream pends forever.
Where
src/worker/mcp.ts (bare fetch; sibling Casebook-MCP/src/data.ts already uses AbortSignal.timeout(5000)).
Acceptance
Add a failing test first with a never-resolving fetch, expecting rejection/"Registry unreachable" within ~5s instead of pending forever. Then fix.
Problem
A hung registry hangs the Worker: the MCP
fetchhas nosignal/AbortSignal.timeout, so a never-resolving upstream pends forever.Where
src/worker/mcp.ts(barefetch; siblingCasebook-MCP/src/data.tsalready usesAbortSignal.timeout(5000)).Acceptance
Add a failing test first with a never-resolving fetch, expecting rejection/
"Registry unreachable"within ~5s instead of pending forever. Then fix.