Two-task TDD plan: (1) serde-derive the library structs + library_snapshot
table with save/load + unit tests; (2) desktop wiring to seed self.library at
launch and write the snapshot after every scan.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>