Summary
Admin detail pages (events + announcements) currently join users.email to surface reviewer / comment-author identity. Display name is the right field for human-readable attribution; fall back to email only when display name is null.
Requirements
Context
Flagged in the Plan 3 review. Audit panel and review history will also benefit (same pattern).
Summary
Admin detail pages (events + announcements) currently join
users.emailto surface reviewer / comment-author identity. Display name is the right field for human-readable attribution; fall back to email only when display name is null.Requirements
profiles.displayName(joined onprofiles.userId = users.id) in:packages/api/src/routes/admin/events/byId.tspackages/api/src/routes/admin/announcements/byId.tsreviewerName/authorNamedirectly (no UI changes expected since fields are already optional)Context
Flagged in the Plan 3 review. Audit panel and review history will also benefit (same pattern).