distribution: add ViewTop to the laptop body
Record update delivery as a per-body offer and local candidate activation after a live shell push killed an active conversation.
This commit is contained in:
parent
74e3bc5233
commit
d8820da557
4 changed files with 49 additions and 5 deletions
|
|
@ -158,6 +158,34 @@ live sysfs + D-Bus backend, so a battery/charge page can be honest today.
|
|||
So: package the surfaces → expose what already actuates (charge, existing
|
||||
pages) → add state-machine controls as TASK-15/08 wire them up.
|
||||
|
||||
### 2026-08-11 — an update is offered to a body, not pushed through its glass
|
||||
|
||||
Observed on the Pixel daily driver: `deploy.sh --phone` passed its lock check,
|
||||
snapshotted the tree, and still replaced the live QuickShell composition while
|
||||
Casey was using it. The reload killed an active Souveraine conversation. A
|
||||
rollback makes the files recoverable; it does not make destroying live session
|
||||
state an acceptable delivery protocol.
|
||||
|
||||
Casey's required development shape is now explicit:
|
||||
|
||||
1. CI publishes a signed, immutable surface candidate. The laptop never rsyncs
|
||||
that candidate directly over a live body's active tree.
|
||||
2. A connected-device channel may announce that a development update is
|
||||
available and safe to evaluate. USB Signaller is a possible transport for
|
||||
that offer; it is not the update authority and attachment is not consent.
|
||||
3. Each body answers independently. Its local updater acquires the durable
|
||||
maintenance lease, verifies the package and target profile, stages beside
|
||||
the running candidate, and reports what would change.
|
||||
4. Activation is an explicit local transition with conversation/session state
|
||||
preserved or deliberately quiesced, a health check, and an automatic return
|
||||
to the last working candidate. One connected device accepting must not make
|
||||
every connected device switch.
|
||||
|
||||
`deploy.sh --phone` remains a recovery/developer instrument for an explicitly
|
||||
quiesced target. It is no longer the ordinary update path. TASK-08 owns the
|
||||
lease and state projection; the updater owns retrieval and candidate
|
||||
activation; USB Signaller can carry presence and offers only.
|
||||
|
||||
## The actual inventory (measured 2026-07-25)
|
||||
|
||||
379,153 files under `/usr /etc /opt /boot`; **5,624 owned by nothing**. The
|
||||
|
|
|
|||
Loading…
Reference in a new issue