Skip to content

feat: conversation mute/archive per-user settings#103

Open
cyberdocs120 wants to merge 1 commit into
codebestia:mainfrom
cyberdocs120:feature/conversation-mute-archive
Open

feat: conversation mute/archive per-user settings#103
cyberdocs120 wants to merge 1 commit into
codebestia:mainfrom
cyberdocs120:feature/conversation-mute-archive

Conversation

@cyberdocs120
Copy link
Copy Markdown

@cyberdocs120 cyberdocs120 commented Jun 1, 2026

Summary

Implements #17. Adds per-user mute and archive state for conversations.

Changes

  • Schema: Added is_muted and is_archived boolean columns (default false) to conversation_members
  • Migration: 0005_conversation_member_settings.sql
  • PATCH /conversations/:id/settings: Accepts { muted?: boolean, archived?: boolean }, updates the calling user's membership row, invalidates their Redis cache
  • GET /conversations: Excludes archived conversations by default; pass ?archived=true to include them. Response now includes isMuted and isArchived per conversation

Acceptance criteria

  • Muted/archived state is per-user, not per-conversation
  • Archived conversations hidden by default in list

Tested

All 54 tests pass.

Closes #17

- Add is_muted and is_archived boolean columns to conversation_members
- Migration: 0005_conversation_member_settings.sql
- PATCH /conversations/:id/settings to update muted/archived state
- GET /conversations excludes archived by default; pass ?archived=true to include
- Invalidate Redis cache on settings update
- Update test mocks to reflect new schema and imports
@drips-wave
Copy link
Copy Markdown

drips-wave Bot commented Jun 1, 2026

@cyberdocs120 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BACKEND] Add conversation mute/archive for a user

1 participant