feat: refactor lists to explicit media types and add notes support
Lists:
- Replace scoped mediaId strings (showId:season:1:episode:2) with explicit
mediaType enum (movie/show/season/episode) + seasonNumber/episodeNumber fields
- Update lexicon, Prisma schema, DTOs, service, controller, and mappers
- Add migration with data conversion for existing scoped IDs
- Remove list-media-id.util.ts
- Update frontend hooks (useListActions, useListItemStatus) and ProfileListsPage
Notes:
- Add xyz.opnshelf.note lexicon with AT Protocol PDS sync
- Create Note model, service, controller, and module
- Integrate notes into firehose ingester
- Add NotesSection UI component on movie, show, season, and episode pages
- Add useNotes hook with query invalidation
- Add repo:xyz.opnshelf.note to OAuth scope
Regenerate API client and update tests.