docs(modules): the presence fix - nothing names who is online by default
modules/rust/PLAN.md gains §23: the org lead's rule (2026-09-22) that nothing names who is online by default, the five decisions it needed (D42-D46), the fourth surface the rule reached (the leaderboard's lastSeen), the viewer re-read from the users row, and a defect four phases old that the walk found - every empty state in module-rust rendered as a blank box, because core's EmptyState renders children and the Integration Kit's template teaches title/message. rust-link/PROTOCOL.md reclassifies six §8.4 kinds from public to presence - public with an operator-chosen audience - with no wire change. android/PLAN.md records the app's half as an amendment to M14. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
This commit is contained in:
@@ -1511,6 +1511,23 @@ push, and Play (M6–M8) follow the designed app.
|
||||
Phase 10 is when it will matter, because a notification about an entitlement will want
|
||||
somewhere to land.
|
||||
|
||||
#### Amended 2026-09-22 — M14's Online tab and feed stop naming players by default
|
||||
|
||||
Not a milestone of its own: a correction to what M14 shipped, made on the website first
|
||||
([`../modules/rust/PLAN.md`](../modules/rust/PLAN.md) §23). **Nothing names who is online by
|
||||
default** — the module now withholds the Online list, and every feed item that says a named
|
||||
player was on, from anyone below an operator-chosen audience (staff unless widened), while the
|
||||
player **count** stays public.
|
||||
|
||||
The app's part is to never read that as *nobody is on*. `RustOnlineDto` carries `hidden`,
|
||||
`count` and `audience`, and `RustEventListDto` carries `presenceHidden` and `presenceAudience`;
|
||||
the repository and view model keep the whole answer rather than its rows. The Online tab says
|
||||
"2 players online" and who can see the names; the feed says once, above the rows, that joins,
|
||||
deaths and chat are not shown. An older module without the flags decodes as visible, as before.
|
||||
Walked on an emulator: the withheld panel at the default, and the names arriving on the next poll
|
||||
once the fleet was widened to signed-in — the app's bearer session reaching the module's viewer
|
||||
check. Branch `fix/rust-presence-visibility`.
|
||||
|
||||
### Deferred (not a milestone)
|
||||
|
||||
- **Platform Teams in the app** — **deferred 2026-08-17, no app work scheduled.** The website is
|
||||
|
||||
Reference in New Issue
Block a user