Originally created by: kristofferR
Problem
Carrier supports numeric badge modes and a binary choice around muted conversations, but it cannot express several useful policies:
- a privacy-preserving dot badge
- badge updates for muted conversations without native alerts
- quick testing of badge and notification appearance from Settings
The current mute toggle also conflates badge behavior with notification behavior.
Goal
Make badge presentation and muted-conversation behavior independently configurable and easy to verify.
Design
- Add a dot badge option alongside message-count and conversation-count modes.
- Replace the binary muted-conversation setting with explicit policies:
- respect mute: no badge contribution and no alert
- badge only: include in the badge, suppress native alerts
- ignore mute: include in the badge and allow alerts
- Migrate existing settings without surprising users.
- Add Settings actions to test the selected badge and notification presentation.
- Restore the actual current badge after a short test instead of leaving fabricated state behind.
- Keep unread reconciliation and alert deduplication centralized.
- Only add a Badging API compatibility shim if instrumentation confirms Messenger actually relies on it.
Verification
- Unit-test every badge-mode and mute-policy combination.
- Verify test controls restore real state after completion.
- Verify native alerts and badge counts remain independent.
- Test platform badge behavior on macOS, Windows, and Linux where supported.
- [#243] tracks correctness of muted-conversation detection and should be completed before or alongside this issue.
Notes from the November 2026 competitor review
- fMess's test-notification button shows the operating system's error when delivery is refused (v0.1.2). Do the same, so a denied permission or Focus mode is visible instead of a silent no-op.
- Messenger Next shipped a badge-only quiet mode in v1.9.0, and its users report broken test notifications ([rozsazoltan/messenger#47](https://github.com/rozsazoltan/messenger/issues/47)), so this is worth getting right.
Part of [#349].
Originally posted by: kristofferR
All three parts landed: dot-only badge in [#385], a muted-conversation policy (respect mute, badge only, ignore mute) in [#383], and a test notification in Settings in [#380]. The three mute policies were tested live, with notifications checked over D-Bus.
It is on
mainand ships in the next release.Related
Tickets:
#380Tickets:
#383Tickets:
#385Ticket changed by: kristofferR