Locks the recover-vs-not classification — only a JobsApiError with status 400 drops to the offset fallback; a 500 must surface as a recorded error without resetting the cursor. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>