• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

prisma-risk / tsoracle / 26429948399
95%

Build:
DEFAULT BRANCH: main
Ran 26 May 2026 03:14AM UTC
Jobs 1
Files 87
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

26 May 2026 03:07AM UTC coverage: 95.49% (+0.08%) from 95.407%
26429948399

push

github

web-flow
feat(driver-openraft): apply-keyed activation barrier with subset gate (#464)

Adds the committed activation barrier that flips the cluster's active
write version. A new `SetFormatVersion` log command carries the gated
member set; the state-machine apply re-validates that the membership
committed AS OF the bump's own log position is a subset of `gated_members`
and — only on a successful (non-no-op) apply — sets the process-shared
`ActiveWriteVersion` cell to `target`. The leader observes that
successful apply through a new `ApplyOutcome` field on the
`AppDataResponse` and treats the cell update as "the flip"; a no-op
(membership grew an un-gated member between gate and commit) surfaces as
a distinct, operator-actionable error.

There is **no meta key** — durability rides the raft log (deterministic
replay re-runs the subset check) and the snapshot's leading frame byte.

**New command (`log_entry.rs`).**

- `SetFormatVersionPayload { target: u8, gated_members: BTreeSet<u64> }`
  carries the exact member set the leader's activation gate observed as
  capable of reading `target` at proposal time.
- `HighWaterCommand::SetFormatVersion(SetFormatVersionPayload)` is the
  new variant. `Display` and three postcard round-trip tests cover it.

**Apply outcome (`type_config.rs`).**

- `ApplyOutcome { Advanced, FormatActivated { target }, FormatActivationNoop { target } }`
  is the semantic discriminant on every apply response. A bare `Ok` from
  `client_write` proves the entry committed and applied, but not that
  the subset check passed; the leader's activation flip is keyed off
  observing `FormatActivated` — apply-keyed, never commit-keyed.
- `HighWaterApplied` gains an `outcome: ApplyOutcome` field.

**Apply arm (`state_machine.rs`).**

The `SetFormatVersion` arm reads `core.last_membership.membership().nodes()`
— exactly the membership committed at the bump's own log position, since
apply folds the log in index order — and unions voters AND learners. On
a s... (continued)

309 of 312 new or added lines in 4 files covered. (99.04%)

12766 of 13369 relevant lines covered (95.49%)

360207.78 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
95.95
0.73% crates/tsoracle-driver-openraft/src/state_machine.rs
1
98.97
-0.32% crates/tsoracle-driver-openraft/src/standalone.rs
Jobs
ID Job ID Ran Files Coverage
1 26429948399.1 26 May 2026 03:14AM UTC 87
95.49
GitHub Action Run
Source Files on build 26429948399
  • Tree
  • List 87
  • Changed 5
  • Source Changed 5
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26429948399
  • 3f5bd686 on github
  • Prev Build on main (#26429349642)
  • Next Build on main (#26430322726)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc