docs: add vulgar-word/fragment-sold reserved-username lists and CSVs, reserve script
Some checks are pending
CI / Grammy store bot (push) Waiting to run
CI / Docker main topology smoke (push) Waiting to run
CI / Go tests (push) Waiting to run
CI / Admin web build (push) Waiting to run

Extends the reserved-usernames doc with a vulgar/offensive section, adds
CSV exports (username,reason) for both the categorized reserved-usernames
list and a filtered snapshot of fragment.com's sold usernames, and adds a
scripts/reserve_usernames.py CLI to bulk-feed a CSV into the admin panel's
reserved-usernames blocklist via the real login -> CSRF -> reserve-username
API flow.
This commit is contained in:
Astra 2026-09-21 15:57:36 +01:00
parent 492bd9a934
commit 9b76ef4041
5 changed files with 1030 additions and 0 deletions

View file

@ -12,6 +12,12 @@ Organized by why each entry is worth blocking. Trim or extend per your own
deployment — none of this is enforced by the server itself, it's just a
starting list to feed into the env var.
The same entries, one per line as `username,reason`, are in
[reserved-usernames.csv](reserved-usernames.csv) — that's the format
`scripts/reserve_usernames.py` reads, for feeding this list straight into the
admin panel's reserved-usernames blocklist (a per-username admin action,
distinct from `TELESRV_RESERVED_USERNAMES`) instead of the env var.
## Official-sounding / staff-impersonation
Names that would read as "this account speaks for the operator" if a
@ -51,6 +57,20 @@ tesla, spacex, cryptosupport, walletsupport, tonsupport, binancesupport,
investment, investmentteam, forextrading, tradingbot, signals, cryptosignals
```
## Vulgar / offensive
Common profanity and slurs worth blocking outright, independent of any
impersonation angle. Limited to entries of 5+ characters, since anything
shorter is already unreachable through self-service `account.updateUsername`
/ `channels.updateUsername` (5-character length floor). Not included in the
`TELESRV_RESERVED_USERNAMES` suggestion below - add these separately if your
deployment wants them.
```text
fucker, fucking, motherfucker, bullshit, asshole, bitch, bastard, dickhead,
pussy, whore, nigger, nigga, faggot, retard, rapist, pedophile, hitler
```
## Suggested env var
Comma-separated, matching `envListOr`'s parsing: