Changelog entry
Alliance onboarding and role-permission clarity flow
2026-03-12
- Alliance onboarding failures in create/join/leave now return stable server reason codes (for example `ALLIANCE_ALREADY_MEMBER`, `ALLIANCE_WORLD_MISMATCH`, `ALLIANCE_NOT_A_MEMBER`) so UI messaging remains deterministic and explainable.
- Added clearer onboarding and role-permission guidance on the alliances directory, plus current-role context badges, to make first alliance actions and role boundaries easier to understand.
- Alliance member-role update failures now return standardized API error envelopes with explicit reason codes (including permission-denied outcomes) for consistent client handling.