44 lines
1.3 KiB
Markdown
44 lines
1.3 KiB
Markdown
# 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)
|