{"version":"2.1.292","anchor":"compaction-accepts-the-cache-sharing-response-once-api-attem","canonical_anchor":"compaction-accepts-the-cache-sharing-response-once-api-attem","heading":"Compaction stops retrying once its API attempt budget is spent","tier":"notice","area":"Compaction","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.292\/e\/compaction-accepts-the-cache-sharing-response-once-api-attem","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.292","markdown":"### Compaction stops retrying once its API attempt budget is spent\n\nCompaction now stops or accepts its last response when compactionApiAttemptsLeft reaches zero, and lists a new compact_larger_model reason\n\n**What**\n\nCompaction is when Claude Code shortens a long conversation by summarising older parts. It now tracks how many requests to the model it has left, through `compactionApiAttemptsLeft.count`, and acts when that reaches 0:\n\n- If the cache-sharing response has no text and the count is 0, the response is returned. Before, it always fell back with the warning `Compact cache sharing: no text in response, falling back.`\n\n- The compaction loop returns `{ ok: !1, reason: \"exhausted\" }` when the count is 0.\n\n- A new compaction reason, `compact_larger_model`, is also listed.\n\n**Why**\n\nCompaction no longer keeps making requests after its attempt budget is used up, which avoids extra calls to the model during compaction retries.\n\n- Area: Compaction\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}