Add is_muted and is_archived boolean columns to conversation_members. Expose PATCH /conversations/:id/settings accepting { muted?: boolean, archived?: boolean }. Archived conversations should be excluded from GET /conversations by default unless ?archived=true is passed.
Acceptance criteria:
- Muted/archived state is per-user, not per-conversation
- Archived conversations hidden by default in list
Add
is_mutedandis_archivedboolean columns toconversation_members. ExposePATCH /conversations/:id/settingsaccepting{ muted?: boolean, archived?: boolean }. Archived conversations should be excluded fromGET /conversationsby default unless?archived=trueis passed.Acceptance criteria: