diff --git a/docs/planning/SERENITY_CLEANUP_WAVE_1.md b/docs/planning/SERENITY_CLEANUP_WAVE_1.md index c318041..73980ad 100644 --- a/docs/planning/SERENITY_CLEANUP_WAVE_1.md +++ b/docs/planning/SERENITY_CLEANUP_WAVE_1.md @@ -395,6 +395,27 @@ Definition of done: - Postgres collation-version warning captured as a post-import remediation item - final cutover note recorded: these pre-cutover dumps are not the authoritative final state; a last quiesced export must be taken after the Serenity app is stopped during cutover and imported to PD before PD goes live +Execution notes (2026-05-25): +- successful pre-cutover exports were captured and staged under PD backup storage: + - latest verified dump set: `/mnt/tank/docker/backups/db-dumps/serenity-wave2/20260525-184917/` + - `20260525-184917-serenity-gamevault.pgcustom` — 175290 bytes, sha256 `1ebd0286483e7f34dddc21076a7540c966a812d8891a8ed7a24247fe972d927d` + - `20260525-184917-serenity-romm.sql` — 8526126 bytes, sha256 `c74a2d9d715f6c0982d707ba9f41174e19ba681a1debebde865e94e63271302b` +- source runtime facts recorded during export validation: + - Serenity `postgresql15`: PostgreSQL 15.18, `gamevault` has 18 public tables and ~12 MB logical size + - Serenity `MariaDB-Official`: MariaDB 12.2.2, `romm` has 20 tables and ~12.41 MB logical size + - the existing Serenity Postgres collation-version mismatch warning is still present and should be remediated after final import on PD +- GameVault restore-path validation succeeded: + - the pre-cutover Postgres dump restored cleanly into PD shared-postgres + - PD `gamevault` target currently shows the expected 18 public tables +- RomM restore-path validation exposed a blocker on the planned PD shared-mariadb target: + - importing the Serenity RomM dump into PD shared-mariadb failed at line 167 while creating `device_save_sync` + - MariaDB returned `ERROR 1005 (HY000): Can't create table romm.device_save_sync (errno: 121 "Duplicate key on write or update")` + - PD shared-mariadb is currently MariaDB 11.4.11 while the Serenity RomM source dump was produced from MariaDB 12.2.2 + - treat this as a compatibility / target-selection issue, not a dump-corruption issue; the dump itself is populated and preserved in backup storage +- net result: + - D3 is complete for GameVault + - D3 is only partially complete for RomM until the MariaDB target strategy is revised and the restore path is proven + ### Card D4 — sync appdata for GameVault and RomM to PD staging paths Definition of done: - GameVault config/media/log paths copied to PD staging @@ -402,6 +423,9 @@ Definition of done: - large library mounts intentionally re-used from canonical storage instead of blindly duplicating data - ownership/permissions on PD staging paths verified +Note: +- do not advance RomM cutover assumptions until the MariaDB target mismatch found in D3 is resolved; RomM may need a different PD DB target than the original shared-mariadb assumption + ### Card D5 — cut over GameVault to PD Definition of done: - Serenity GameVault stopped only for the final cutover window