-- +goose Up CREATE TABLE IF NOT EXISTS recycle_bin ( id TEXT PRIMARY KEY, resource_type TEXT NOT NULL CHECK (resource_type IN ('source', 'collection', 'template')), resource_id TEXT NOT NULL, snapshot_json TEXT NOT NULL, deleted_at INTEGER NOT NULL ); CREATE INDEX IF NOT EXISTS idx_recycle_bin_deleted_at ON recycle_bin(deleted_at DESC);