Skip to content
13 changes: 13 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,19 @@ Version 2.3.2

To be released.

### @fedify/fedify

- Fixed the outbound delivery circuit breaker retaining per-host state in the
configured key–value store forever when a remote host never recovered.
Circuit breaker state now receives a TTL on writes made with the default
failure policy, custom failure policies can opt in with the new `stateTtl`
option, and stale state written by earlier 2.3 releases is cleared
automatically on CAS-backed stores after upgrade, with another sweep after a
grace window to cover rolling deployments. [[#916], [#917]]

[#916]: https://github.com/fedify-dev/fedify/issues/916
[#917]: https://github.com/fedify-dev/fedify/pull/917


Version 2.3.1
-------------
Expand Down
12 changes: 12 additions & 0 deletions packages/fedify/src/federation/circuit-breaker-test-utils.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import type { KvStore } from "./kv.ts";

export function markCircuitBreakerLegacySweepDone(
kv: Pick<KvStore, "set">,
): Promise<void> {
return kv.set([
"_fedify",
"circuit",
"__fedify_meta",
"circuit_breaker_state_ttl_sweep_v1",
], { state: "final" });
}
Loading
Loading