system: validate installed rollback workflow
This commit is contained in:
@@ -30,6 +30,10 @@ Fruix currently has:
|
||||
- `/var/lib/fruix/system`
|
||||
- explicit installed-system retention roots under:
|
||||
- `/frx/var/fruix/gcroots`
|
||||
- a validated installed-system generation switch/rollback workflow via:
|
||||
- `fruix system status`
|
||||
- `fruix system switch`
|
||||
- `fruix system rollback`
|
||||
|
||||
Validated boot modes still are:
|
||||
|
||||
@@ -42,30 +46,35 @@ The validated Phase 18 installation work currently uses:
|
||||
|
||||
## Latest completed achievement
|
||||
|
||||
### 2026-04-04 — Phase 19.2 completed
|
||||
### 2026-04-04 — Phase 19.3 completed
|
||||
|
||||
Fruix now records an explicit installed-system generation layout and retention-root model instead of relying mainly on harness knowledge.
|
||||
Fruix now has a validated installed-system operator workflow for switching to a staged candidate generation and rolling back to the recorded previous generation.
|
||||
|
||||
Highlights:
|
||||
|
||||
- added explicit installed-system generation layout under:
|
||||
- `/var/lib/fruix/system`
|
||||
- added explicit installed-system retention roots under:
|
||||
- `/frx/var/fruix/gcroots`
|
||||
- installed targets now record a first-generation deployment directory containing:
|
||||
- `closure`
|
||||
- `metadata.scm`
|
||||
- `provenance.scm`
|
||||
- `install.scm`
|
||||
- `/run/current-system` remains the runtime boundary and still points directly at the active closure path
|
||||
- added Guix-oriented operator notes in:
|
||||
- `docs/GUIX_DIFFERENCES.md`
|
||||
- updated deployment workflow documentation to reflect the new explicit generation model
|
||||
- installed systems now ship an in-guest Fruix deployment helper at:
|
||||
- `/usr/local/bin/fruix`
|
||||
- validated in-guest command surface:
|
||||
- `fruix system status`
|
||||
- `fruix system switch /frx/store/...-fruix-system-...`
|
||||
- `fruix system rollback`
|
||||
- switching now records explicit rollback state under:
|
||||
- `/var/lib/fruix/system/rollback`
|
||||
- `/var/lib/fruix/system/rollback-generation`
|
||||
- switching now records explicit rollback GC roots under:
|
||||
- `/frx/var/fruix/gcroots/rollback-system`
|
||||
- the validated installed-system workflow now supports:
|
||||
- stage candidate closure in `/frx/store`
|
||||
- switch to generation 2
|
||||
- reboot into the candidate
|
||||
- rollback to generation 1
|
||||
- reboot into the restored current system
|
||||
|
||||
Validation:
|
||||
|
||||
- `PASS phase19-generation-layout-qemu`
|
||||
- regression re-check:
|
||||
- `PASS phase19-installed-system-rollback-qemu`
|
||||
- regression re-checks:
|
||||
- `PASS phase19-generation-layout-qemu`
|
||||
- `PASS phase18-installer-iso`
|
||||
|
||||
Reports:
|
||||
@@ -74,6 +83,7 @@ Reports:
|
||||
- `docs/GUIX_DIFFERENCES.md`
|
||||
- `docs/reports/phase19-deployment-workflow-freebsd.md`
|
||||
- `docs/reports/phase19-generation-layout-freebsd.md`
|
||||
- `docs/reports/phase19-installed-system-rollback-freebsd.md`
|
||||
|
||||
## Recent major milestones
|
||||
|
||||
@@ -99,6 +109,6 @@ Reports:
|
||||
|
||||
Per `docs/PLAN_4.md`, the next planned step is:
|
||||
|
||||
- **Phase 19.3** — validate installed-system rollback through the intended operator-facing workflow
|
||||
- **Phase 20.1** — validate a Fruix-managed development environment for native FreeBSD base work
|
||||
|
||||
Phase 19.2 is now complete: Fruix has an explicit installed-system generation layout and retention-root model on FreeBSD.
|
||||
Phase 19.3 is now complete: Fruix validates installed-system generation switching and rollback through the intended operator-facing workflow.
|
||||
|
||||
Reference in New Issue
Block a user