Area: Forums (audit p2) · Surface: POST reaction toggle (PostReaction), thread.php reaction strip · Dimension: existing-feature-improve · Severity: enhancement
Slack, Discord, and Circle all let communities add their own custom/branded reactions, which is a meaningful identity and engagement feature (inside jokes, brand emoji, channel-specific reactions). Our set is fixed and only changeable by editing PHP and redeploying. Given mobieusChat already supports custom emoji (per the chat-rooms feature notes), forum reactions feeling more limited than chat is an internal inconsistency, and tenant-brandable reactions are a low-cost differentiator.
Evidence
platform/src/Models/PostReaction.php:27-40 ALLOWED_TYPES is a hardcoded const array of exactly 12 types (thumbs-up, heart, laugh, wow, sad, angry, fire, mind-blown, clap, party, rocket, on-target). The model comment at :24 states 'Adding a new type here also requires an emoji entry in templates/forums/thread.php' — i.e. reactions are a code change, not configurable. No per-tenant custom-reaction table exists.
Suggested fix. Introduce a per-tenant reaction-set table (slug, emoji/image, label, sort_order, enabled) seeded with the current 12 defaults, and have PostReaction validate against the tenant set instead of the const. Render the strip from the configured set. Keeps current behaviour as the default seed.
Filed by the automated tenant-app audit and adversarially evidence-verified. Status: verified. Open — not yet actioned.
Patrick Bass
@mobieus