-- Relax cover-art and artist-art source CHECK constraints so the new
-- Deezer and Last.fm providers (next slice) can persist their IDs as
-- accepted source values. Also add the
-- last_registered_providers_hash column to cover_art_sources_meta for
-- boot-time auto-bump detection (when the registered-provider set
-- changes, we bump current_version once so 'none' rows get
-- re-eligibled).

ALTER TABLE artists DROP CONSTRAINT IF EXISTS artists_artist_art_source_check;
ALTER TABLE artists
    ADD CONSTRAINT artists_artist_art_source_check
    CHECK (artist_art_source IS NULL
           OR artist_art_source IN ('theaudiodb','deezer','lastfm','none'));

ALTER TABLE albums DROP CONSTRAINT IF EXISTS albums_cover_art_source_check;
ALTER TABLE albums
    ADD CONSTRAINT albums_cover_art_source_check
    CHECK (cover_art_source IS NULL
           OR cover_art_source IN ('embedded','sidecar','mbcaa','theaudiodb','deezer','lastfm','none'));

ALTER TABLE cover_art_sources_meta
    ADD COLUMN IF NOT EXISTS last_registered_providers_hash text NOT NULL DEFAULT '';
