wulf-pulse/app/api/me
lorentz 55a80a07ad feat(09-02): GET + PUT /api/me/notification-subscriptions (matrix endpoint)
- GET returns { eventKeys, channelTypes, matrix } where matrix defaults to
  true when no row exists (D-15 opt-out model)
- PUT UPSERTs single row via composite PK ON CONFLICT
- Validates: event_key (non-empty, <=128 chars), channel_type via
  isPersonalChannelType, enabled as typeof boolean
- Write target always session.user.id (T-09-02-01, T-09-02-03)
2026-05-10 07:30:51 -04:00
..
channels feat(09-02): personal channels service + /api/me/channels routes 2026-05-10 07:30:05 -04:00
notification-subscriptions feat(09-02): GET + PUT /api/me/notification-subscriptions (matrix endpoint) 2026-05-10 07:30:51 -04:00
theme feat(09-02): GET + PUT /api/me/theme 2026-05-10 07:28:03 -04:00
timezone fix(07.1-02): allowlist UTC, Etc/UTC, GMT in IANA validator 2026-05-07 17:21:26 -04:00