Our solution
One place to set retry, timeout, and circuit breaker rules for every subgraph
Cosmo's traffic shaping is a router-level configuration layer that controls retries, timeouts, and circuit breakers for every subgraph: set once as global defaults, overridden per subgraph where needed, so one failing service can't take down your entire federated API.
What happens at request time
The all section sets defaults (retry attempts, timeout budgets, circuit breaker thresholds) applied to every subgraph.
The subgraphs section lets you override specific values for specific services.
Retries use exponential backoff with jitter; mutations are never retried.
Timeouts cover the full request lifecycle: dial, TLS handshake, response header, full request.
Circuit breakers use a time-based sliding window and open automatically when a subgraph fails consistently.
One YAML file, GraphQL-aware.

