Expose persistent update metadata and safe UI dismissals
All checks were successful
review/safety-opus Delta PASS: B1 closed; seams keep install invariants
All checks were successful
review/safety-opus Delta PASS: B1 closed; seams keep install invariants
This commit is contained in:
parent
383802611c
commit
51799669e7
6 changed files with 181 additions and 35 deletions
|
|
@ -145,6 +145,16 @@ explicit check/download/cancel/install/retry/resume actions. Its capture fake
|
|||
does not perform real operations. Classic Opt update controls use that same
|
||||
controller; the old package retains its original updater.
|
||||
|
||||
`release: StateFlow<UpdateUiState.Available?>` retains version, size, localized
|
||||
date and release notes through download, Ready and installation cancellation.
|
||||
Verified records persist notes as an optional `releaseNotes` field alongside
|
||||
the manifest; existing manifest-only records remain readable. `Failed.operation`
|
||||
is `UpdateOperation.Check`, `Download` or `Install`, never inferred from message text.
|
||||
Permission and handoff dismissals restore verified Ready without discarding its
|
||||
APK. Installer ownership is tracked separately from the visible state, so a
|
||||
dismissed but active system session still blocks a duplicate handoff. Calling
|
||||
`install()` from PermissionNeeded resolves and opens the permission settings again.
|
||||
|
||||
The client uses a dedicated anonymous OkHttp client, validating every redirect:
|
||||
HTTPS, no URL user-info, no cookies/Jellyfin token/repository credential.
|
||||
Loopback HTTP is available only through the test transport constructor flag.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue