feat(lab): unblock claude-p lane + typed terminal failures
Audit fix wave A5:
- The default-tier and session-prompt-cache receipt gates now exempt the
claude-p lane alongside deepseek (flatRateLane): the CLI envelope reports
no service tier and no prompt-cache key, and the tier gate killed every
claude-p arm run of the last wave ("requires the provider-reported default
tier; received no tier receipt").
- Removed MIKE_DEEPSEEK_MAX_TOKENS=65536 from the index arm env - an
uncontrolled second delta vs every other arm (triple audit D2).
- claudeP.ts classifies deterministic CLI failures as typed
ClaudePFatalError: context_overflow ("Prompt is too long"/blocking_limit)
and quota_exhausted (weekly limit). Both rethrow immediately instead of
burning the 3-attempt retry loop.
- The arm script's failure handler records the typed status + error into
run-state.json. A context overflow on a 200K-class model is the MEASURED
RESULT of a whole-read arm on a no-fit task, not a crash; the results tree
previously kept a permanent provider_call_pending stub.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011pfUVhNFTRvhYGXBwoKNj6
| Repository | eliziff/Beaver |
|---|---|
| Author | Eli Ziff <eliasziff@gmail.com> |
| Authored | |
| Parents | 248e864e |
| Stats | 2 files changed , +99 , -15 |
| Part of | claude-p transport: alternative LLM backend via the Claude CLI |
Capture this commit into my fork
Download a Markdown prompt that tells Claude how to port this
exact commit into your working tree. Run it via
claude -p < capture-commit-e14b83b8.md
from inside the repo you want the change in.