# Database V2 Read-only Parser ## Problem Crates and files do not explain every orange track in Serato. The legacy `database V2` contains Serato's library-level track paths and metadata, so it must be inspected independently from crate references. ## Architecture The parser reads the file as a big-endian tag-length-value stream. Top-level `otrk` records contain nested fields including `pfil` (path), `tsng` (title), `tart` (artist), `talb` (album), and `tgen` (genre). Text is UTF-16 big-endian. Analysis reports total database entries, entries whose filenames occur in the selected music scan, entries outside that scan, scanned tracks absent from the database, and duplicate database paths. “Outside scan” is deliberately not called missing because Serato databases can include samples and tracks from other roots. ## Safety The parser calls only `read_bytes`; it never opens the database for writing. No metadata values or personal paths are sent to logs or the dashboard. ## Verification Synthetic TLV fixtures cover version, paths, metadata, incomplete records, and health integration. The sample library includes a generated ten-entry database.