Mute and follow #153

Closed
opened 2026-10-19 10:09:13 +00:00 by littlefox · 1 comment
Owner

From the 0.4 roadmap ("Find your people"). Goal: tune out the noise, and keep track of what matters.

  • Mute a thread, a person or a subject. Muted posts are marked read quietly, or collapsed, as the user chooses.
  • Follow a thread to be notified about new replies in it (a notification kind next to replies and mentions, #103).
  • Manage it all in one place in Inställningar.

Stored in the shared user area. Where elisp's filter format (kom-filter-list, in the elisp block) can express a rule, NeoKOM reads and writes that format, so both clients agree. Rules elisp can't express go in our own block. First step: read the elisp filter code in lyskom-elisp-client/ and document the subset we can share in DESIGN.md.

Rule (roadmap): invisible to the old guard. Nothing about muting may change what others see.

e2e: muting a thread and a person, following a thread and getting its notification, and a rule that round-trips through the elisp format.

From the 0.4 roadmap ("Find your people"). Goal: tune out the noise, and keep track of what matters. - **Mute** a thread, a person or a subject. Muted posts are marked read quietly, or collapsed, as the user chooses. - **Follow** a thread to be notified about new replies in it (a notification kind next to replies and mentions, #103). - Manage it all in one place in Inställningar. Stored in the shared user area. Where elisp's filter format (`kom-filter-list`, in the elisp block) can express a rule, NeoKOM reads and writes that format, so both clients agree. Rules elisp can't express go in our own block. First step: read the elisp filter code in lyskom-elisp-client/ and document the subset we can share in DESIGN.md. Rule (roadmap): invisible to the old guard. Nothing about muting may change what others see. e2e: muting a thread and a person, following a thread and getting its notification, and a rule that round-trips through the elisp format.
Author
Owner

Merged in #170.

  • 'Tysta…' on a post: mute the author, the subject or the thread, or follow the thread.
  • People and subjects: go into elisp's kom-permanent-filter-list when you have an elisp block, otherwise into NeoKOM's own block. Threads are NeoKOM's.
  • Reading: muted posts are read unseen, with a count in the status line.
  • Notifications: followed threads notify. Muted posts never do.
  • Inställningar → Tystat och följt: lists everything, with undo.

Verified: unit tests for the Lisp and filter code; a devserver integration test against lyskomd (muted person, subject and thread skipped and read); mute.spec on desktop, Android and iPhone; the full suite; CI green.

Merged in #170. - **'Tysta…' on a post:** mute the author, the subject or the thread, or follow the thread. - **People and subjects:** go into elisp's kom-permanent-filter-list when you have an elisp block, otherwise into NeoKOM's own block. Threads are NeoKOM's. - **Reading:** muted posts are read unseen, with a count in the status line. - **Notifications:** followed threads notify. Muted posts never do. - **Inställningar → Tystat och följt:** lists everything, with undo. Verified: unit tests for the Lisp and filter code; a devserver integration test against lyskomd (muted person, subject and thread skipped and read); mute.spec on desktop, Android and iPhone; the full suite; CI green.
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
littlefox/neokom#153
No description provided.