-- name: InsertContextualLike :exec INSERT INTO contextual_likes (user_id, track_id, session_vector, session_id) VALUES ($1, $2, $3, $4); -- name: SoftDeleteContextualLikesForUserTrack :exec -- Marks all currently-active rows for (user, track) as deleted. Idempotent — -- already-deleted rows aren't re-touched. UPDATE contextual_likes SET deleted_at = now() WHERE user_id = $1 AND track_id = $2 AND deleted_at IS NULL;