Skip to content

docs: llm-gateway and API reference drop the 424 myth (issue #53) - #62

Merged
SebConejo merged 4 commits into
mainfrom
fix/issue-53-llm-gateway
Aug 17, 2026
Merged

SebConejo merged 4 commits into
mainfrom
fix/issue-53-llm-gateway

Conversation

@SebConejo

@SebConejo SebConejo commented Aug 15, 2026 •

Copy link
Copy Markdown
Member

Applies the recommended options of #53 (batch pass, 2026-08-15):

  1. A direct model ID is a direct route on all three endpoints, /v1/messages included.
  2. Fallback triggers on any status >= 400, no exception; exhaustion keeps the primary model's real error status and signals via X-Manifest-Fallback-Exhausted: true + body code fallback_exhausted. The 424 keyword is gone.
  3. The hard-limit block is an HTTP 200 assistant message (consistent with docs: error catalog tells the truth about HTTP statuses (issues #52, #58) #61).
  4. The M302 absolute softened to the connected-provider-route condition (option 2).
  5. IMAGE finding (Routing page screenshot) deferred — needs a dashboard capture.

Also consumes the two backlog echoes of findings 2 and 3 on reference/api.mdx and reference/headers.mdx (never-halfway rule): real auth error envelope as the example, status table without 424, 429 reassigned to the rate-limit codes.

Coherence: GREEN. Closes #53.

… (issue #53)

A direct model ID is a direct route on all three endpoints, /v1/messages
included. Fallback triggers on any >=400 with no exception; exhaustion
keeps the primary model's real status and signals via the header and
body code, never 424. The hard-limit block is an HTTP 200 assistant
message, not a 429. The M302 absolute is softened to the connected-route
condition.
Same falsehoods as issue #53 findings 2 and 3, echoed on reference/api
and reference/headers and parked in the backlog. The error-envelope
example is now a real auth envelope, the status table drops 424 and
reassigns 429 to the rate-limit codes, and exhaustion is described by
header and body code.
decisions.md keeps both sides (this branch's consumed-backlog note plus
main's #67/#68/#69 audit lines); backlog.md takes main's version, whose
CONSUMED annotations supersede this branch's plain deletions.
…only as default

The #68 audit caveat: the body code on an exhausted chain is
providerCode ?? 'fallback_exhausted', so the two sentences stop
promising the literal constant.
@SebConejo
SebConejo merged commit 26ba0fc into main Aug 17, 2026
1 check passed
@SebConejo
SebConejo deleted the fix/issue-53-llm-gateway branch August 17, 2026 12:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Docs audit — llm gateway (routing, tiers, fallbacks) — 2026-08-09

1 participant