docs(rust): phase 17 plan of record — BetterChat and popups (PLAN.md §33, M19)

The optional-integration tier (R15), with the org lead's decisions D134-D143:
BetterChat titles from operator rules (also on the web and in the app), all
twelve chat fields on a site-authored group under R2's drift posture, that
style as the voice of news and event lines, and PopupNotifications made
optional as a delivery choice. Protocol 12.

The uMod Clans adapter is dropped (D134). R5's claim that the plugin has no
read API is corrected (a second grep artefact), and D54's promised
leadership sharpening is withdrawn: OnClanUpdate is the plugin's own clans.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
This commit is contained in:
2026-09-25 14:53:07 -05:00
parent 1ddd397158
commit 06c06e7bcb
2 changed files with 333 additions and 1 deletions

View File

@@ -1619,6 +1619,21 @@ push, and Play (M6–M8) follow the designed app.
Excluded: editing the schedule, which is operator configuration.
20. **M19 — chat titles on a Rust leaderboard** (post-v1; planned 2026-09-25,
`feat/rust-phase-17-titles` into `edge`). `module-rust` phase 17. **Design of record:
[`../modules/rust/PLAN.md`](../modules/rust/PLAN.md) §33**, D135–D137. The phase is mostly
in-game BetterChat work. The app's part is one field.
- **`titles: [{ text, color }]`** on each row of `GET /servers/:id/leaderboard`. These are the
titles the game shows in chat, after the server's mode (first, all or up to N). The operator
sets the rules.
- **Each title is a chip beside the player's name** on the leaderboard, coloured from `color`,
with its text colour chosen for contrast.
- **Against an older module the field is absent**, so the DTO defaults it to empty and nothing
is drawn.
Excluded: the rules, the mode and group styles, which are all operator configuration.
### Deferred (not a milestone)
- **Platform Teams in the app** — **deferred 2026-08-17, no app work scheduled.** The website is