v1.1.6
[1.1.6] — 2026-06-26
Correctness & robustness release. Hardens the plugin pipeline lifecycle, fixes OpenTelemetry span loss on shutdown, corrects response-cache and circuit-breaker behavior, and adds AWS Bedrock API-key (bearer) authentication. No public API breaks. Fixes #150, #151, #152, and #204.
Fixed
- Plugin pipeline robustness (issue #150, PR #234): a panicking plugin is now recovered and isolated (the request returns a clean error and the panic stack is logged, not leaked into the response),
RunOnErrorfires when a plugin rejects a request, andClose()was added to thePlugininterface and is called on every plugin instance (deduped) at config reload so resources like the request-logger's writer are released. A reference-countedAcquire/Closelifecycle ensures a reload never frees plugins out from under an in-flight request. - OTel span loss on shutdown (issue #151, PR #233): the span-exporter drain and the
TracerProviderflush shared a single shutdown deadline, so a slow exporter handed the provider an already-expired context and spans were silently dropped. Each stage now gets its own deadline (shutdown_graceper stage), and both errors are surfaced viaerrors.Join. - Response-cache & circuit-breaker correctness (issue #152, PR #169): the cache key now includes
logprobs/top_logprobs(so requests that differ only in those no longer cross-serve), in-memory eviction is now proper LRU (recency-based) instead of earliest-expiry, and the circuit-breaker half-open probe cap releases its slot on non-recorded outcomes (rate-limit / client cancellation) so a single ignored failure can no longer wedge the breaker open.
Added
- AWS Bedrock API-key (bearer) authentication (issue #204, PR #235): Bedrock can now authenticate with a short-term API key via
AWS_BEARER_TOKEN_BEDROCK, using the AWS SDK's nativehttpBearerAuthscheme. SigV4 (static credentials and the default credential chain) remains the default; bearer takes precedence when set. Abearer_tokenredaction policy keeps the key out of logs and error messages.
Contributors
Thanks to everyone who shipped this release:
- @Rachit-Gandhi — authored all four fixes/features in this release: plugin pipeline robustness (#234 → #150), OTel shutdown deadlines (#233 → #151), cache & circuit-breaker correctness (#169 → #152), and Bedrock bearer auth (#235 → #204). 🙌 Thank you!
- @MitulShah1 — release coordination & review (#236)
Full changelog: https://github.com/ferro-labs/ai-gateway/blob/v1.1.6/CHANGELOG.md