Skip to content

docs: routing pages and site facts for gateway v1.5.2 - #9

Merged
MitulShah1 merged 4 commits into
developmentfrom
docs/routing-v1.5.2
Sep 3, 2026
Merged

docs: routing pages and site facts for gateway v1.5.2#9
MitulShah1 merged 4 commits into
developmentfrom
docs/routing-v1.5.2

Conversation

@MitulShah1

Copy link
Copy Markdown
Contributor

Summary

Brings the site up to gateway v1.5.2 (routing depth, tagged 2026-09-03). Every routing page, the configuration reference, the API reference, the concept pages and the changelog now describe the v1.5.2 contract, and the site's version facts move to 1.5.2.

What changed

  • Routing pages — overview and all eight strategies: one ranker on every surface; targets[].timeout; the 429 park; the typed context-length failover class; strategy.failover_on_status_codes; sticky sessions (strategy.sticky) on load balance and A/B test; target_keys chains and the new user / stream / has_tools / metadata predicates on conditional; least-latency as time to first byte per model with expiring samples and a bounded exploration share; cost-optimized on input plus output with weighted tie-break; label required on A/B variants.
  • The one reversed statement — a one-target conditional or content-based rule no longer borrows a healthy sibling when its circuit is open; it answers 503, and target_keys is how a rule names a stand-in. Corrected on the routing pages, configuration, concepts, request lifecycle, architecture, FAQ and monitoring.
  • API reference — a new Attribution headers section (X-Gateway-Provider / -Target / -Model / -Attempts on every routed surface, before a stream's first chunk) and the X-Gateway-Metadata request header; streaming notes the headers precede the first chunk; observability marks ferro.routing.attempt as emitted.
  • Changelog — v1.5.2 section.
  • Version factsproduct.ts, JSON-LD softwareVersion, announcement bar (v152-released), CLI sample output, installer pin examples, providers matrix stamp; static/llms-full.txt regenerated.

Checks

  • node scripts/check-doc-accuracy.mjs — clean
  • node scripts/check-frontmatter.mjs — clean
  • tsc — clean
  • docusaurus build — passes, all links valid

Follows the v1.5.1 refresh (#8).

…ersion facts

The changelog page gains v1.4.2, v1.4.3, v1.4.4, v1.4.5, v1.5.0 and v1.5.1
sections, sourced from the gateway CHANGELOG and tag dates, in the page's
existing form; its description, keywords and "latest tag" line name v1.5.1.

Version facts that the site states once and repeats: PRODUCT.version and
the structured-data softwareVersion move to 1.5.1; the announcement bar
announces v1.5.1 (model_map, failover only when the provider is at fault,
the importable runtime) under a new id so it re-shows; the CLI reference's
sample "status" and "version" output, the providers endpoint matrix stamp,
and the installer's pin and archive-name examples follow.
…r-target timeouts, 429 cooldown, sticky sessions, rule target chains, bounded predicates, attribution headers

Every routing page, the configuration reference, the API reference, the
concept pages and the changelog now describe the v1.5.2 contract. The one
statement this release reverses — a one-target conditional or content-based
rule borrowing a healthy sibling when its circuit is open — is corrected on
each page that carried it. Site version facts move to 1.5.2.
@coderabbitai

coderabbitai Bot commented Sep 3, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Team

Run ID: 540e1b49-aaed-402f-a9cf-537dbcdc83da

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 3, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-03T06:21:14.547110Z 2d37b15 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2d37b152bb

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

---
title: Configuration
description: "Complete v1.4.x config reference for the Ferro Labs AI Gateway — targets, retry, circuit breakers, all 8 routing strategies, plugins, and MCP servers."
description: "Complete v1.5.x config reference for the Ferro Labs AI Gateway — targets, timeouts, retry, circuit breakers, all 8 routing strategies, plugins, and MCP servers."

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update the in-page schema-version notice

After this metadata bump, the visible callout on lines 19–20 still says the page documents the v1.4.x schema. Because the page now includes v1.5-only keys such as targets[].timeout, strategy.sticky, and target_keys, readers can reasonably conclude those options work with a v1.4 binary and receive startup validation errors. Update the callout to v1.5.x as part of this version change.

Useful? React with 👍 / 👎.

| system prompt mentions code, user message does not | system content is never inspected | OpenAI |

If the matched target fails, the client gets that failure; the gateway does not try the others.
A rule names one target or an ordered chain (`target_keys`). If the matched target fails because the provider was at fault, the next member of its chain is tried; the gateway never reaches for a target the rule did not name, and a rule with one target is exact.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Reconcile the target-chain behavior with the page summary

This new description says a failover-safe failure advances through target_keys, but the prominent “In plain words” callout immediately above still says the matched provider's answer is final, that another target is chosen only before the call, and never after a failure. For a multi-target rule those statements are opposites, so an operator reading the summary can misunderstand whether an outage triggers the configured stand-in; update the summary to describe chain-scoped failover.

Useful? React with 👍 / 👎.

Comment thread docusaurus.config.ts Outdated
id: 'v152-released',
content:
'🚀 <strong>v1.4.1 is out</strong> — embedded dashboard, one unified routing pipeline across all surfaces, and native rerank / moderations / audio / responses endpoints. <a href="/changelog/">See what changed →</a>',
'🚀 <strong>v1.5.2 is out</strong> — one ranker on every surface, per-target timeouts, 429 cooldown, sticky sessions, rule target chains, and attribution headers on every response. <a href="/changelog/">See what changed →</a>',

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Qualify the attribution-header announcement

The announcement claims attribution headers appear on every response, while the newly added endpoint reference explicitly says pre-target failures such as plugin denials and unknown models carry none, and pass-through responses emit only X-Gateway-Provider. Clients using the banner's claim to design diagnostics will therefore encounter missing headers on those responses; narrow this to routed responses that attempted a target rather than “every response.”

Useful? React with 👍 / 👎.

@MitulShah1
MitulShah1 merged commit 059fcf1 into development Sep 3, 2026
3 checks passed
@MitulShah1
MitulShah1 deleted the docs/routing-v1.5.2 branch September 3, 2026 06:35
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.

1 participant