2158d988f8
A read-through cache shared by the web app and the worker so reopening an artist/album (and repeat lookups during scans/discovery) stop re-hitting MusicBrainz. Postgres-only (Redis disregarded — PG is already shared across web + worker); keys on the logical operation so both processes share entries; serve-stale-on-outage; TTL-only invalidation. Four tasks: MbCache table → web read-through → worker CachingMbBrowser → client Map + pruning. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>