# E8.M4 — ChatModerationAndReporting ## Summary | Field | Value | |--------|--------| | **Module ID** | E8.M4 | | **Epic** | [Epic 8 — Social / Guild](../epics/epic_08_social_guild.md) | | **Stage target** | Pre-production | | **Status** | Planned (see [dependency register](module_dependency_register.md)) | ## Purpose Channel chat with rate limits, player reports, and moderation action logs escalated to [E9.M4 — IntegrityAndAbuseResponse](E9_M4_IntegrityAndAbuseResponse.md). ## Responsibilities - Emit `ChatMessageEvent` with stable ids; accept `PlayerReport`; record `ModerationAction` for audit export. ## Key contracts | Contract | Role | |----------|------| | `ChatMessageEvent` | Message payload + channel + ids. | | `PlayerReport` | Reason codes and context. | | `ModerationAction` | Mute/ban/warn with actor and timestamp. | ## Module dependencies - **E9.M4** — IntegrityAndAbuseResponse. ## Dependents (by design) - Moderator tooling and compliance exports. ## Related implementation slices Epic 8 **Slice 3** — trace message id to action history in test; `chat_message_sent`, `moderation_action`. ## Source anchors - Master plan: [`neon_sprawl_vision.plan.md`](../../../neon_sprawl_vision.plan.md) — Epic 8. - [Module dependency register](module_dependency_register.md)