You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With apiProxy.maxAiCredits active (the default), the api-proxy rejects every request for claude-fable-5 with HTTP 400 unknown_model_ai_credits, so any gh-aw workflow pinned to that model fails with 0 agent turns. The model is missing from both pricing sources the AI-credits guard consults, while the rest of the stack already knows the model.
Root cause
containers/api-proxy/guards/ai-credits-guard.js resolves pricing in this order: curated table (ai-credits-pricing.js) → canonical/prefix match → bundled catalog (models.dev.catalog.json) → AWF_DEFAULT_AI_CREDITS_PRICING → reject. For claude-fable-5, every step misses:
containers/api-proxy/ai-credits-pricing.js — the Claude entries stop at claude-opus-4-8; no Fable/Mythos rows.
containers/api-proxy/models.dev.catalog.json — vendored on 2026-06-09 (Bundle models.dev catalog for AI credits model resolution #4589) and not re-synced since; it predates the Claude Fable 5 release. The upstream models.dev catalog carries claude-fable-5 now.
No prefix match is possible (claude-fable-* shares no prefix with any priced key).
Meanwhile the model is already recognized elsewhere:
So the firewall's vendored pricing snapshot is the last component in the stack that still rejects the model.
Impact
Workflows on engine: copilot with model: claude-fable-5 fail 100% at the first inference call unless the operator disables the credits budget (max-ai-credits: -1 frontmatter, or GH_AW_DEFAULT_MAX_AI_CREDITS=0) — which throws away cost enforcement precisely on the most expensive model.
Summary
With
apiProxy.maxAiCreditsactive (the default), the api-proxy rejects every request forclaude-fable-5with HTTP 400unknown_model_ai_credits, so any gh-aw workflow pinned to that model fails with 0 agent turns. The model is missing from both pricing sources the AI-credits guard consults, while the rest of the stack already knows the model.Root cause
containers/api-proxy/guards/ai-credits-guard.jsresolves pricing in this order: curated table (ai-credits-pricing.js) → canonical/prefix match → bundled catalog (models.dev.catalog.json) →AWF_DEFAULT_AI_CREDITS_PRICING→ reject. Forclaude-fable-5, every step misses:containers/api-proxy/ai-credits-pricing.js— the Claude entries stop atclaude-opus-4-8; no Fable/Mythos rows.containers/api-proxy/models.dev.catalog.json— vendored on 2026-06-09 (Bundle models.dev catalog for AI credits model resolution #4589) and not re-synced since; it predates the Claude Fable 5 release. The upstream models.dev catalog carriesclaude-fable-5now.claude-fable-*shares no prefix with any priced key).Meanwhile the model is already recognized elsewhere:
src/copilot-model.tsincludesclaude-fable-5in the Copilot model allowlist (synced 2026-07-01, Sync Copilot model allowlist with model API mapping #5756).github/gh-aw'sactions/setup/js/models.jsongainedclaude-fable-5pricing on 2026-07-03 (feat(models): 2026-07-03 model inventory update — new models, alias additions, mirror sync gh-aw#43063) — but that file feeds cost reporting only, not this guard.So the firewall's vendored pricing snapshot is the last component in the stack that still rejects the model.
Impact
Workflows on
engine: copilotwithmodel: claude-fable-5fail 100% at the first inference call unless the operator disables the credits budget (max-ai-credits: -1frontmatter, orGH_AW_DEFAULT_MAX_AI_CREDITS=0) — which throws away cost enforcement precisely on the most expensive model.Suggested fix
Either (ideally both):
models.dev.catalog.json(it has been frozen for ~4 weeks; a periodic re-bundle would prevent this class of failure for every future model launch — same class as the Smoke Geminigemini-3.1-flash-tts-previewfailure, [aw-failures] P1: Smoke Gemini uses TTS preview modelgemini-3.1-flash-tts-preview→ unknown_model_ai_credits, 100% agent fail [Content truncated due to length] gh-aw#39172).(input $10, output $50, cache read 0.1x, cache write 1.25x — per https://platform.claude.com/docs/en/about-claude/models/overview)
Reproduction
Any gh-aw workflow with:
and
maxAiCreditsleft at its default fails its first model call with:Observed with AWF v0.27.2 through v0.27.26 (current); the pricing files on
maintoday still lack the model.🤖 Filed with the help of Claude Code