Add /me/language endpoint that bypasses SystemUserGuard

FixSecurityService
Shipped
May 12, 2026 at 7:02 AM UTC
Author
Kamo
Commit
29dd32c

The NavTop language picker did nothing for the System User signed into a sub-org: PUT **************** runs SystemUserGuard first, which 403s every System-User TeamMember mutation (provisioned in every org by SystemUserBackfillService). The frontend's silent catch swallowed the 403, so the locale cookie never updated. Mirror the /me/availability pattern: resolve the member from the session and skip the guard. Caller can only ever mutate their own language, so the guard's "tenants must not touch System User memberships" intent is preserved.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing