-- Backfill `date_taken_source` for rows that pre-date the canonical-date -- pipeline. Before the resolver landed, `image_exif.date_taken` could -- only be populated via `exif::extract_exif_from_path` (kamadak-exif) -- on the file-watcher, upload, or GPS-write paths. The resolver column -- migration added `date_taken_source` defaulting to NULL, so every -- historical row with a date is currently unlabelled — and the -- per-tick drain skips them because its eligibility predicate is -- `date_taken IS NULL OR date_taken_source = 'fs_time'`. -- -- Label them `'exif'` once and let the drain take over from here. Safe -- because every code path that wrote `date_taken` prior to the -- resolver was a kamadak-exif read — there was no other source. -- -- Idempotent: re-running this migration on a DB that has already been -- backfilled is a no-op (the WHERE clause matches nothing the second -- time around). UPDATE image_exif SET date_taken_source = 'exif' WHERE date_taken IS NOT NULL AND date_taken_source IS NULL;