github 0xPolygon/cometbft v0.3.12-polygon

2 hours ago

Release of the Polygon CometBFT fork following v0.3.11-polygon. Adds native serving-policy hooks for the Heimdall-v2-owned serving budgets and observational reputation in heimdall-v2#666.

What's changed

  • Adds request admission and validation-outcome hooks for block sync, state sync and historical consensus catch-up. Admission happens before reads or encoding. Reservations remain held until local write completion.
  • Adds bounded retries for budget-limited block requests. Compatible requesters can receive a deferred-response notice and wait up to two minutes from the original assignment. Repeated notices cannot extend that deadline.
  • Preserves sync progress under serving backpressure without introducing a new timeout jail or invalid-data penalty.
  • Fixes event-listener registration/removal races. Includes regression tests and a duplicate workflow-key cleanup.

Changes: cometbft#49.

Integration notes

Heimdall-v2 supplies the policy through an in-process interface. Standalone CometBFT without an injected policy retains its existing serving behavior. Current-round consensus is unchanged. There is no sidecar, extra listener or IPC.

Both ends must support the optional deferred-response exchange to benefit from it. Legacy peers retain their existing timeout behavior. Waiting is bounded and does not guarantee progress under sustained overload. Reputation scoring and its observation-only rollout are owned by Heimdall.

Validation

The release commit 3b586f466e4fb11e60857ac1789a88a2223fdcd7 has the identical source tree to PR head 94f6bed65a0d31279adc0818bb59bf08a5de55bf, whose 19 GitHub checks passed. Local Kurtosis native-reactor tests against Heimdall cometbft#666 passed 26 assertions covering normal downloads, repeated downloads, malformed messages, reconnects and score expiry. The Kurtosis test used synthetic storage and does not replace operator-scale calibration.

Full changelog: v0.3.11-polygon...v0.3.12-polygon

Don't miss a new cometbft release

NewReleases is sending notifications on new releases.