Skip to content

orchestrator: Add the SvnFloor anti-rollback capability trait - #28

Open
chrysh wants to merge 3 commits into
mainfrom
add-svn-floor
Open

orchestrator: Add the SvnFloor anti-rollback capability trait#28
chrysh wants to merge 3 commits into
mainfrom
add-svn-floor

Conversation

@chrysh

@chrysh chrysh commented Aug 18, 2026

Copy link
Copy Markdown
Collaborator

SvnFloor is the anti-rollback capability seam: one managed device's durable SVN floor. advance(to) is monotonic (at-or-below is an Ok no-op) and durable on return; storage encoding (OTP fuses, protected flash, mocks) stays behind the trait.

Trait only — implementations and the orchestrator commit path follow in separate PRs.

Part of #18

chrysh added 3 commits August 17, 2026 19:35
One device's durable SVN floor behind the capability seam: floor() and
advance(), monotonic and idempotent so a replayed commit is harmless,
durable when advance returns. Storage encoding (OTP fuse counters,
protected flash) stays behind the trait; PLDM devices that commit
internally simply have no eRoT-side floor. Trait only — the OTP-backed
adapter and the driver's commit_svn_floor executor follow separately.

Assisted-by: Claude:claude-fable-5
Signed-off-by: Christina Quast <christina.quast@9elements.com>
Per review: reading the floor does not require exclusive access.

Assisted-by: Claude:claude-fable-5
Signed-off-by: Christina Quast <christina.quast@9elements.com>
The trait cannot enforce it: one-way encodings get it for free, any
other storage must check itself.

Assisted-by: Claude:claude-fable-5
Signed-off-by: Christina Quast <christina.quast@9elements.com>
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