owpengram-server/cmd/telesrv-admin/web
Astra 2bdb1ecf37 usernames: operator reserved-username blocklist
A plain blocklist for names like @support - separate from the collectible
system, so a reservation has no owner, no price and no "bought on Fragment"
badge.

- reserved_usernames table + migration.
- Enforced in replacePeerUsernameTx (the single editable-username write point:
  account.updateUsername, channels.updateUsername, @BotFather /setusername) and
  in the collectible mint path; a reserved name returns USERNAME_OCCUPIED.
- admin.Service: ReserveUsername / UnreserveUsername (journalled commands) and
  the ReservedUsernames listing.
- adminapi: /v1/reserved-usernames{,/reserve,/unreserve}.
- telesrv-admin panel + a "Reserved Usernames" page in the web UI (dist rebuilt).
- Postgres and in-memory store implementations; the memory registry gains an
  optional reserved-name check so tests exercise the same rule.
2026-09-14 12:04:43 +01:00
..
dist added full access row to operator modal, plus a test for the last-manager guard 2026-09-11 15:48:07 +03:00
public updated admin panel style 2026-07-22 01:16:29 +03:00
src usernames: operator reserved-username blocklist 2026-09-14 12:04:43 +01:00
index.html Merge remote-tracking branch 'upstream/main' into merge-gramsrv-0e2fcdf9 2026-07-24 17:15:53 +03:00
package-lock.json merged from gramsrv upstream 2026-09-01 12:06:31 +03:00
package.json feat: sync collectible star gifts 2026-07-16 12:38:53 +08:00
tsconfig.json chore: refresh gramsrv public release 2026-06-30 14:37:43 +08:00
vite.config.ts config: sync admin and RTMP port defaults 2026-07-06 16:29:29 +08:00