mirror of
https://github.com/austinried/subtracks.git
synced 2026-11-10 15:11:58 +01:00
Review follow-ups for the replay gain slice. `upsertChanged` never checked that its hand-maintained column list and the row values line up, and SQLite binds a missing trailing value as NULL without error: adding a column to `songColumns` but not to `Song.values()` would have written NULLs silently. It now asserts the sizes match before preparing, so that mistake fails the sync instead. The replay gain sync test also now re-syncs identical values and asserts no rows are rewritten, pinning the REAL change-detection clause; an update there rewrites the `song_search` FTS row for no reason.