Skip to content

add per-route traffic policy configuration#372

Merged
kacy merged 5 commits intomainfrom
routing-v3-traffic-policy
Apr 1, 2026
Merged

add per-route traffic policy configuration#372
kacy merged 5 commits intomainfrom
routing-v3-traffic-policy

Conversation

@kacy
Copy link
Copy Markdown
Owner

@kacy kacy commented Apr 1, 2026

Summary

  • adds retry_on_5xx, circuit_breaker_threshold, and circuit_breaker_timeout_ms as configurable per-route fields through the full pipeline (manifest, db, registry, proxy runtime)
  • wires per-route circuit breaker policy into HTTP/1 and HTTP/2 enforcement, replacing the hardcoded global default_circuit_policy constant
  • exposes all three fields in service-level, per-route, and proxy status JSON APIs

Design notes

different routes sharing endpoints may have different circuit breaker thresholds — the calling route's policy governs the trip/half-open decision. all defaults match current hardcoded values so existing manifests behave identically.

kacy added 5 commits April 1, 2026 04:32
add retry_on_5xx, circuit_breaker_threshold, and circuit_breaker_timeout_ms
as configurable per-route fields through the full pipeline: manifest spec,
TOML parser with validation, database schema, store layer, service registry,
and proxy runtime route materialization
pass retry_on_5xx through RequestPolicy and per-route circuit breaker
policy through recordEndpointFailure, endpointAllowsRequestLocked, and
resolveUpstreamWithPolicy in both HTTP/1 and HTTP/2 proxy paths
add retry_on_5xx, circuit_breaker_threshold, and circuit_breaker_timeout_ms
to service-level, per-route, and proxy status JSON output
add tests for retry_on_5xx policy enforcement, custom circuit breaker
threshold trip behavior, and transport error retry independence from
retry_on_5xx setting
@kacy kacy merged commit 616db3b into main Apr 1, 2026
6 of 7 checks passed
@kacy kacy deleted the routing-v3-traffic-policy branch April 1, 2026 11:49
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