orchestrator: Fold post-write readback into the Updatable contract - #444
Merged
Conversation
chrysh
force-pushed
the
updatable-readback
branch
from
August 27, 2026 20:27
49a609e to
ba07869
Compare
chrysh
marked this pull request as ready for review
August 27, 2026 20:29
leongross
approved these changes
Sep 2, 2026
rusty1968
reviewed
Sep 2, 2026
rusty1968
approved these changes
Sep 2, 2026
rusty1968
reviewed
Sep 2, 2026
Collaborator
|
@CourtneyDrant can you review as well? |
chrysh
force-pushed
the
updatable-readback
branch
from
September 3, 2026 11:24
ba07869 to
5681af3
Compare
CourtneyDrant
approved these changes
Sep 3, 2026
Ready now means the staged payload is verified to the archetype's discipline: a direct-flash adapter reads written pages back before reporting Ready, a PLDM device runs its own verify step after the transfer. This drops the planned ReadBack capability; a separate post-Ready check would leak archetype knowledge to the caller and PLDM devices cannot serve it at all. The commit bullet now points at the BootConfirmed gated flow instead of a TrialBoot capability. UpdateError gains ReadbackMismatch. Folding it into Device would hide the one device fault a caller can act on differently: the write path reported success and the storage still disagrees, so a slot that keeps mismatching is worth retiring rather than retrying. MockFlashDevice demonstrates the discipline: writes hold written still, readback advances it, and a mismatch fails the step. MockPldmDevice takes a verify step of its own once the transfer completes, so a finished transfer is not yet Ready. Assisted-by: Claude (Fable 5) Signed-off-by: Christina Quast <christina.quast@9elements.com>
chrysh
force-pushed
the
updatable-readback
branch
from
September 3, 2026 15:56
5681af3 to
86288f5
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Readynow means the staged payload is verified to the archetype's discipline: a direct-flash adapter reads written pages back before reportingReady, a PLDM device verifies inside its own transfer (PLDM Type 5 has no command to read a slot back; its Verify step runs before apply). This drops the plannedReadBackcapability: a post-Readycheck would leak archetype knowledge to the caller.MockFlashDevicedemonstrates the discipline: write steps holdwrittenstill, readback advances it, sowrittencounts verified bytes; a mismatch is a staging error.References 9elements#8.