Skip to content

fix: reveal whole muted thread (note + replies) in one click#10

Merged
DocNR merged 2 commits into
mainfrom
fix/muted-thread-reveal
Jun 14, 2026
Merged

fix: reveal whole muted thread (note + replies) in one click#10
DocNR merged 2 commits into
mainfrom
fix/muted-thread-reveal

Conversation

@DocNR

@DocNR DocNR commented Jun 14, 2026

Copy link
Copy Markdown
Owner

Summary

Opening a muted thread and clicking reveal showed the note but none of its replies — you couldn't read the conversation. This makes the reveal cover the whole thread, scoped per-column so it behaves like a temporary peek (distinct from unmute).

Root cause: the reveal was note-scopedshowMuted lived on each Note, so revealing the root un-collapsed only that one note, while useFilteredReplies kept hard-hiding the replies (and each reply renders through Content, not Note, so it had no reveal of its own).

Fix: make the reveal thread-scoped and per-column via MutedThreadRevealProvider, mounted once inside every <Column>.

  • The Note muted-thread collapse and both reply filters (useFilteredReplies + useFilteredAllReplies) read the same per-column reveal set, keyed by getThreadRootId.
  • One click on "Reveal muted thread" reveals the note and its replies together.
  • Because the provider is per-column, closing the thread's detail column drops the reveal — reopening the thread starts collapsed again, since it's still muted. This keeps Reveal (a temporary, per-view peek) clearly distinct from Unmute (permanent: removes it from your mute list, returns it to feeds, resumes notifications).

Also fixes a parity-commit inconsistency where useFilteredAllReplies carried muteEventIdSet as an unused dependency but never applied the hide — both reply hooks now behave identically.

Threads stay muted in feeds and notifications regardless. Thread button copy: "Temporarily display this note" → "Reveal muted thread".

Ships as v26.13.1.

Test plan

  • Open a muted thread → collapsed "Reveal muted thread" placeholder
  • Click reveal → the note AND its replies appear
  • Close the detail column, reopen the thread → it's collapsed again (still muted; reveal didn't stick)
  • The thread stays hidden in feeds and Notifications
  • Unmute (from the row or note menu) → it leaves the Muted column, returns to feeds, notifications resume
  • A muted thread embedded inside some other thread you open still collapses (embed-collapse preserved)
  • Arabic (RTL): placeholder + button render correctly

npm run build clean, 857 tests pass, lint clean.

🤖 Generated with Claude Code

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jun 14, 2026

Copy link
Copy Markdown

Deploying jank with  Cloudflare Pages  Cloudflare Pages

Latest commit: 9720017
Status: ✅  Deploy successful!
Preview URL: https://46522317.jank-4ii.pages.dev
Branch Preview URL: https://fix-muted-thread-reveal.jank-4ii.pages.dev

View logs

DocNR and others added 2 commits June 14, 2026 07:15
Opening a muted thread showed the note but hid every reply: the reveal was
note-scoped (showMuted on each Note), so clicking reveal un-collapsed only
the root while useFilteredReplies kept hard-hiding the replies.

Make the reveal thread-scoped AND per-column via MutedThreadRevealProvider
(mounted once per <Column>). The Note collapse and the reply filters
(useFilteredReplies + useFilteredAllReplies) both read it, keyed by thread
root, so one click on 'Reveal muted thread' shows the note and all its
replies together. Being per-column, closing the thread's detail column drops
the reveal: reopening starts collapsed again, so a still-muted thread never
looks unmuted (reveal = temporary peek, unmute = permanent).

Also fixes a parity-commit inconsistency where useFilteredAllReplies carried
muteEventIdSet as an unused dep but never applied the hide. Threads stay
muted in feeds/notifications regardless. Thread button copy:
'Temporarily display this note' -> 'Reveal muted thread'.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@DocNR DocNR force-pushed the fix/muted-thread-reveal branch from d1edda4 to 9720017 Compare June 14, 2026 11:16
@DocNR DocNR merged commit 685bdf3 into main Jun 14, 2026
2 checks passed
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.

1 participant