mtg: Self-Rename of an Account
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 30/100
- Issue type
- Feature
- Clarity
- Clearly specified
- Activity status
- Stale
- Tech stack
- typescript, web-dev
- Domain
- authentication, full-stack
Research direction
Read services/mtg/GLOSSARY.md for the Rename terminology, then trace the profile, signup validation, and authentication flows. The issue requires HTTP tests, an updated API spec and client, and i18n keys; done means the listed acceptance criteria pass, including best-effort PublicKeyCredential.signalCurrentUserDetails. An open linked pull request (#140) indicates work is already underway.
Written by the indexing model from the issue text.
Description
What to build
An Account changes its own username (a Rename, see services/mtg/GLOSSARY.md) from its profile.
- The new username follows the same rules as at signup. Uniqueness is checked on the normalized username and ignores the Account's own, so a case-only change (
alice→Alice) is allowed. - A locked Account cannot Rename itself.
- The old username is free for anyone at once: its profile URL answers 404, with no redirect and no reservation. Deck links and the current session keep working, and Login works with the new username.
- No confirmation beyond the session. No limit on how often.
- A Rename by the Account itself is not recorded anywhere (no Admin log entry).
- After a successful Rename the frontend calls
PublicKeyCredential.signalCurrentUserDetailsbest-effort, so password managers that support the WebAuthn Signal API show the new username on the Passkey. Missing support or a failure there never fails the Rename.
Acceptance criteria
- Rename to a free username succeeds; profile and public pages show the new username
- Case-only Rename of the own username succeeds
- Rename to a username taken by another Account (case ignored) is refused
- Invalid usernames (charset, length) are refused like at signup
- A locked Account's Rename is refused
- Old profile URL answers 404; deck links unaffected; session stays valid
- Login with the new username works, with the old one it does not
- Signal API is called after a Rename where available and silently skipped otherwise
- HTTP tests cover the cases above; API spec and client regenerated; i18n keys added
- Dominant language
- TypeScript
- Stars
- 0
- Forks
- 1
- Avg merge
- 11h 20m
- Merged PRs (30d)
- 31
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from myOmikron/code
-
ready-for-agent
Difficulty 2/5 1-3 hours Newbie friendliness 77/100
Maintainers usually reply within 1 day
-
wayfinder:task
Difficulty 1/5 Under an hour Newbie friendliness 90/100
Maintainers usually reply within 1 day
-
wayfinder:task
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
myOmikron/code#102 · 2 comments ·
Maintainers usually reply within 1 day
-
ready-for-agent
Difficulty 4/5 3-5 days Newbie friendliness 52/100
Maintainers usually reply within 1 day
-
ready-for-agent
Difficulty 3/5 1-2 days Newbie friendliness 66/100
Maintainers usually reply within 1 day
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
mobile-next/mobile-mcp#526 ·
Maintainers usually reply within 1 day
-
e2e-failure ready-to-code
Difficulty 1/5 Under an hour Newbie friendliness 73/100
redhat-developer/rhdh-plugin-export-overlays#4470 · 1 comment ·
Maintainers usually reply within 1 day