Same issue as KnowledgeBaseService — NestJS can't resolve ContentSafetyService in RagChatModule without @Optional(). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- ChatSession/ChatMessage/ChatCitation Prisma models - CAPI: create/list sessions, send message, get history, delete - Admin AAPI: view user sessions and messages - Content safety integration on user input - Placeholder RAG pipeline (real pipeline in M3) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>