docs(safety): team notifications and digests follow a reader's blocks #407

Merged
whitlocktech merged 1 commits from docs/safety-team-notifications into main 2026-10-31 00:38:02 -05:00

View File

@@ -104,6 +104,17 @@ staff's.
blocks, and the reader's hides on this module's targets. **`ctx.safety.staffAmong(userIds)`**
answers which accounts are staff, for a module that marks lines `canBlock` (S13). Neither the
website nor the app holds a list of its own; each refetches after a block or a hide.
- **Team notifications follow the forum** (added 2026-10-31). A new thread or reply is not pushed,
put in the inbox or emailed to a member who blocks its author, or who blocks the member who started
the thread, since the forum would not let them open it. The recipients are worked out once
(`teamNotify.forumPost`, through `userSafety.blockersOf`), so push, the inbox and email skip the same
people. A staff author is blocked by nobody (S8). The daily digest is put together for each
recipient when it is sent, and applies that recipient's `forumFilter`: blocked authors, blocked
thread starters, and the threads and posts they hid. A game block that S14 has not rewritten yet
does not count for instant notifications until the member next reads the forum or their blocks,
which is when S14 rewrites it. The digest is not affected, because its filter rewrites first.
The Team activity feed needs nothing, because forum posts never appear in it. It carries
membership changes, renames and a module's game events.
- **Web UI.** The forum's thread and post menus gain *Hide for me* and *Block author*, beside the
existing *Report*. *Block author* is offered only where the read says `canBlock` (never your own,
a deleted account's or a staff member's), and asks to confirm. A new *Blocked* section on the