77ba81f75f
BEDROCK_CONTEXT_LENGTHS was missing entries for current 1M-context Claude models, and the resolution path in get_model_context_length() short-circuits to that table (step 1b) before DEFAULT_CONTEXT_LENGTHS is ever consulted, so the catalog's correct values could never apply on Bedrock: - claude-fable-5 (no entry at all) fell through to BEDROCK_DEFAULT_CONTEXT_LENGTH and reported 128K for a 1M model. - opus-4-7 / opus-4-8 substring-matched the generic 'anthropic.claude-opus-4' key and reported 200K. - opus-4-6 / sonnet-4-6 had explicit 200K entries predating their 1M windows. The practical symptom: the agent compresses context prematurely (at ~128K or ~200K of a 1M window) on every Bedrock-hosted current Claude model. Fixing the table alone is not enough for existing installs: a previously persisted 128K/200K value in the context-length cache wins at step 1 and masks the corrected table forever. Step 1 now reconciles Bedrock-context cache hits against the static table (the table is authoritative for Bedrock — there is no live probe to reconcile against), invalidating stale entries so existing users converge to the right window without manual cache surgery. Tests cover the new table entries (incl. inference-profile and versioned ID forms), the 128K-default regression for Fable, the stale-cache invalidation path, and that pre-4.6 models keep their 200K entries.