MimironsGoldOMatic

MimironsGoldOMatic.Shared (.NET 10)

High-level patterns

Low-level Patterns

Core Entities

Validation / Logic

Shared validation for CharacterName enforces length 2–12 (after trim) and letters-only input in Latin/Cyrillic Unicode script blocks (no digits, punctuation, or spaces), implemented in CharacterNameRules and FluentValidation (docs/overview/SPEC.md §4).

PayoutEconomics.MvpWinningPayoutGold: fixed 1,000g per winning payout on PayoutDto (SPEC §2); validated in PayoutDtoValidator.

Other MVP business rules (lifetime caps, concurrency limits, roulette gating) are enforced in Backend domain/application layers.

Status and API semantics are normative in docs/overview/SPEC.md:

Field labels and validation-driven UX are aligned with docs/reference/UI_SPEC.md (hub) and client docs/components/*/UI_SPEC.md. Enrollment is primarily via Twitch chat !twgold <CharacterName>; optional CreatePayoutRequest / EnrollmentRequestId applies to Extension/Dev Rig paths only (see docs/overview/SPEC.md).