40 lines
1.8 KiB
Markdown
40 lines
1.8 KiB
Markdown
---
|
|
type: User Story
|
|
title: Keep Discord nicknames synchronized
|
|
description: Preferred names and primary Minecraft usernames determine community guild nicknames.
|
|
tags: [player, admin, discord, identity]
|
|
timestamp: 2026-08-01T18:43:58Z
|
|
story_id: US-006
|
|
status: verified
|
|
---
|
|
|
|
# User Story
|
|
|
|
As a community member, I want my Discord nickname to reflect my preferred name and primary Minecraft account, so that other players can identify me consistently.
|
|
|
|
# Acceptance Criteria
|
|
|
|
- [x] Given a preferred name and primary account, then the nickname format is `First name (MinecraftUsername)`.
|
|
- [x] Given Discord's 32-character limit, then the preferred-name portion is shortened while preserving the Minecraft username.
|
|
- [x] Given no remaining Minecraft account, then administrative synchronization falls back to the preferred name.
|
|
- [x] User name and primary changes display the proposed nickname before confirmation.
|
|
- [x] Administrator name, primary, and primary-removal operations synchronize the nickname automatically.
|
|
- [x] Discord failures are reported without falsely claiming the requested profile change completed.
|
|
- [x] A protected administrative retry action can synchronize the current desired nickname.
|
|
|
|
# Implementation
|
|
|
|
- [`packages/minecraft/src/index.ts`](../packages/minecraft/src/index.ts)
|
|
- [`apps/web/src/app/account/actions.ts`](../apps/web/src/app/account/actions.ts)
|
|
- [`apps/web/src/app/admin/(console)/users/actions.ts`](../apps/web/src/app/admin/%28console%29/users/actions.ts)
|
|
|
|
# Validation
|
|
|
|
- [`packages/minecraft/test/discord.test.ts`](../packages/minecraft/test/discord.test.ts)
|
|
- Nickname length and fallback behavior are covered in [`packages/minecraft/test/minecraft.test.ts`](../packages/minecraft/test/minecraft.test.ts).
|
|
|
|
# Related Stories
|
|
|
|
- [Manage linked accounts](us-005-user-dashboard.md)
|
|
- [Administer users](us-013-admin-user-management.md)
|