CI / Build & Quality Checks (pull_request) Successful in 1m49s
CI / Trigger Desktop Build (pull_request) Skipped
CI / Docker image build & smoke test (pull_request) Skipped
CI / Secret scan (gitleaks) (pull_request) Successful in 7s
CI / Playwright smoke (e2e) (pull_request) Successful in 13m31s
A passive read (just looking at the room) sent a threaded receipt for every unread thread you don't follow, so the Threads panel's Unread filter and Mark all read only ever worked for followed threads. Decision (2026-10-19): leave them unread until opened, but stop counting unfollowed threads toward the room's unread dot (getUnreadInfo subtracts them like muted threads; a mention makes a thread followed, so highlights are never hidden). isThreadFollowed moves to utils/room. Adds a Playwright regression. Fixes #314 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5