{"version":"2.1.281","anchor":"a-fetch-failure-retry-check-now-counts-more-4xx-statuses-as","canonical_anchor":"a-fetch-failure-retry-check-now-counts-more-4xx-statuses-as","heading":"A fetch-failure retry check now counts more 4xx statuses as transient","tier":null,"area":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.281\/e\/a-fetch-failure-retry-check-now-counts-more-4xx-statuses-as","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.281","markdown":"### A fetch-failure retry check now counts more 4xx statuses as transient\n\nA retry check now treats HTTP 408 and 409 as temporary failures, as well as 429\n\n**Unclear.** The finding does not say which request this is or what the saved result is used for.\n\n**What**\n\nWhen a network request fails with an HTTP error in the 400s, Claude Code decides whether the failure is temporary and worth retrying. HTTP status codes are the numbers a web server sends back to say how a request went. Codes in the 400s mean the request was refused. This check used to count only 429 (too many requests) as temporary. It now also counts:\n\n- 408 (request timed out)\n\n- 409 (conflict)\n\nAll other 400-range codes are still treated as final.\n\n**Why**\n\nClaude Code uses this answer to decide whether to record a result as settled when it never actually got one. A timeout or a conflict can now count as temporary, so it is less likely to be locked in as final."}