Skip to content

feat: app-driven liveness policy with per-lever toggles#5

Open
seemenkina wants to merge 2 commits into
mainfrom
feat/app-driven-liveness-policy
Open

feat: app-driven liveness policy with per-lever toggles#5
seemenkina wants to merge 2 commits into
mainfrom
feat/app-driven-liveness-policy

Conversation

@seemenkina

Copy link
Copy Markdown
Collaborator

The reference gateway now drives de-mls's timer-free branch: after each poll_conversation it runs drive_liveness_policy, replaying the commit / propose / sync / reelection / recovery timing on the app's own clock.

A per-node LivenessPolicy makes each lever independently auto (timer) or manual, toggled from the UI — so a demo can, for example, keep proposing on a timer while driving recovery by hand. The Recover button manually triggers the reelection takeover, and a stall notice surfaces when a commit isn't landing in manual mode.

The demo config keeps consensus_timeout long enough for a steward election to resolve on real votes over lossy Waku rather than the splitting silent-vote fallback.

Depends on de-mls refactor/externalize-liveness-timers (vacp2p/de-mls#135) — merge that first, then bump the pin.

Track de-mls's timer-free branch and drive commit / propose / sync /
reelection / recovery from the gateway's own polling loop. A per-node
LivenessPolicy makes each lever independently auto (timer) or manual,
toggled from the UI. Recover manually triggers the reelection takeover,
and a stall notice surfaces when a commit isn't landing in manual mode.
Demo config keeps consensus_timeout long enough to resolve over Waku.
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