I3178 — A self update killed at any stage leaves a usable installation
Drive the installer that self update runs through an interrupted download, a kill at each stage (download, verify, stage, swap, health check), a failed post-update readiness and two concurrent updates, and hold that each ends with the previous or the new version runnable and saying which.
BLOKOVÁNO wave 2 · p2 · verification profile · parallel safe
Blocked. This issue cannot start until I2720, I2722 are done. The status is derived from that, not declared.
Cíl
Drive the installer that self update runs through an interrupted download, a kill at each stage (download, verify, stage, swap, health check), a failed post-update readiness and two concurrent updates, and hold that each ends with the previous or the new version runnable and saying which.
Proč
ADR 0161 makes the installer the single implementation of the risky part; I2720 wraps it and I2722 rolls a hub back. The 10-08 pack required stage-by-stage fault injection (U04-U14); nothing exercises those paths today. Sources: chatgpt-majordomus:c200#2.
Aktuální stav
Verified: case 85_installer tests the installer's happy path; I2720 READY and I2722 BLOCKED on it (majordomus plan show, 2026-10-18); no case kills install.sh mid-stage.
Cílový stav
One case per stage under a disposable prefix, run by the rust or structure job.
Rozsah
- share/install/install.sh.in
- scripts/ci/install-check
Mimo rozsah
- Rewriting the installer in Rust (refused by ADR 0161)
Závislosti
- I2720PŘIPRAVENO majordomus self update znovu spustí publikovaný instalátor a nikdy jej nereimplementuje
- I2722BLOKOVÁNO Hub aktivuje novou verzi pod svým správcem služeb, zkontroluje její zdraví a sám se vrátí zpět
Kritéria přijetí
- Every stage kill leaves a launcher that runs and names its version
- Two concurrent updates end with one winner and no torn prefix
Validace
- majordomus plan validate
- bash test/run.sh 85_installer
Požadované důkazy
- case_an_interrupted_update_recovers
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.
Canonical record: .ai/repo/project/issues/I3178.yaml. Read it back with majordomus plan show I3178.