-- AlterTable: add the tri-state review status. `approved` is kept as a
-- denormalized mirror (approved = status == APPROVED), so existing visibility
-- queries that filter on `approved` keep working unchanged.
ALTER TABLE `points_of_interest` ADD COLUMN `status` ENUM('PENDING', 'APPROVED', 'REJECTED') NOT NULL DEFAULT 'PENDING';

-- Backfill: previously-approved POIs become APPROVED. Rows that were merely
-- not-approved (whether never reviewed or rejected) cannot be told apart from
-- the boolean alone, so they remain PENDING.
UPDATE `points_of_interest` SET `status` = 'APPROVED' WHERE `approved` = true;
