About this data
Liner Notes is Radio Milwaukee's airplay history, turned into an explorable map — with a receipt behind every connection.
Where the data comes from
Four stations — 88Nine, HYFIN, 414 Music, and Rhythm Lab — log every song they air, with real timestamps. That playout log is messy by nature: the same artist arrives spelled five ways, with no IDs attached. We never touch the source data; we read it and build something new next to it.
The steward agent cleans it
An autonomous agent works through that backlog in narrated sessions: it matches each raw artist name against MusicBrainz (with Discogs and Deezer cross-checks), applies confident matches automatically, asks Claude to adjudicate ambiguous ones — saving its reasoning — and routes anything still uncertain to a human review queue. Every artist you see here carries a record of how it was matched, with what confidence, on what evidence. That record is the trust chip on every artist page.
DataHub governs the whole pipeline
Every dataset, every cleaning session, and every quality check is documented in DataHub, an open-source data catalog. The agent reads its worklist from DataHub, then writes back what it did: quality assertions (resolution coverage, duplicates, enrichment coverage), lineage from raw plays to resolved artists to this graph, and a plain-English report of every session. Nothing here is a black box — a data steward can audit every step.
The graph is built from co-play
When a DJ plays two artists within the same hour on the same station, that's a curatorial judgment — these sounds belong together. Count those moments across ~170,000 plays and a graph appears: 600+ artists, ~40,000 weighted connections. Add documented MusicBrainz relationships (collaborations, band memberships) and the picture deepens. Communities emerge on their own — no genre labels as input — and Claude names them like city districts. The method follows the Stell-R artist-influence research, applied to a corpus its authors didn't have: human radio curation.
No listener data. None.
Recommendations here come from what DJs chose to play, documented journalism, and open music encyclopedias — not from tracking you. No accounts, no profiles, no behavioral data. That's the thesis: human curation is enough.
Read the receipts
Tap any connection in the explorer, any hop in the pathfinder, or any track in a generated playlist, and it will tell you exactly why it's there — down to the timestamped plays.