Files
ota-reference-design/diagrams/plantuml/ab-installation-sequence.puml
T
2026-10-20 12:27:04 -04:00

49 lines
1.6 KiB
Plaintext

@startuml
title A/B preparation and activation
skinparam shadowing false
skinparam monochrome true
participant "OTA manager" as Manager
participant Installer
database "Slot B" as B
database "OTA progress" as Progress
participant "Boot control" as Boot
note over Manager, Boot
A is confirmed. B is inactive. No earlier trial is pending.
One installer owns B. A and shared data are preserved.
end note
Manager -> Progress : Save intent: release and target B
Manager -> Installer : Prepare B
Installer -> B : Write release
Installer -> B : Complete required storage operations
Installer -> B : Read and verify installed contents
Installer --> Manager : Verified expected release
note over Manager, Boot
Reset before activation: boot A.
Inspect B and verify again before a new activation request.
end note
Manager -> Progress : Save prepared release B
Manager -> Boot : Save trial request for B
Boot -> Boot : Persist target and attempt limit
note right of Boot
Interrupted state write:
read valid old or new state,
or enter defined recovery.
end note
Boot --> Manager : Trial request saved
note over Manager, Boot
Reset here: boot control may start B.
Old OTA progress must not cause a rewrite or fresh attempts.
end note
Manager -> Progress : Save trial-requested result
Manager -> Boot : Restart into trial
ref over Manager, Boot
Existing A/B trial boot, checks, and confirmation diagram
end ref
legend bottom
Success path only. Any error stops forward progress and requires state inspection.
Arrows assume completed durable operations under the platform storage contract.
A saved trial request is not confirmation.
endlegend
@enduml