3cfa7d37

By: Michael Lynch <git@mtlynch.io>

Persist emoji reactions from the media page (m7-2)

Replace the provisional 501 response with real reaction persistence. Any signed-in
user can react to a media item by clicking an emoji, and clicking a different
emoji replaces their prior reaction: the reactions table now enforces one
reaction per user per media item, and SetReaction upserts against that
constraint.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>