MimironsGoldOMatic

Project Roadmap: Mimiron’s Gold-o-Matic

This roadmap reflects the finalized MVP specification and serves as the implementation sequence reference.

Current stage: The project has completed the MVP implementation track (MVP-0..MVP-6 with split verification) and is now in Beta readiness hardening. Core components (EBS, WoW addon, WPF Desktop, Twitch Extension viewer panel) are implemented; CI E2E Tier A+B is in place, with operational real-stack validation tracked separately.

Canonical implementation contracts live in:

Interaction scenarios & test cases (for implementation / verification): When executing MVP steps below, agents should use docs/overview/INTERACTION_SCENARIOS.md for scenario IDs (SC-001, …), paired test cases (TC-001, …), and the Component Contracts section at each boundary.

UI/UX (screens, element inventory, flows): Hub docs/reference/UI_SPEC.md (tokens, navigation); implement against docs/components/twitch-extension/UI_SPEC.md, docs/components/desktop/UI_SPEC.md, and docs/components/wow-addon/UI_SPEC.md for UI-1xx–UI-4xx (Twitch ~318px panel, WPF windows, WoW frames) while building MVP-3 / MVP-4 / MVP-5.

Implementation snapshot (repository): The steps below describe the target MVP sequence. For current repo parity versus MVP-6 (tests, E2E harness) and residual risks, see docs/reference/IMPLEMENTATION_READINESS.md (Source code parity (MVP track)). For manual vs automated E2E mapping, see Automated E2E Scenarios (MVP-6) in docs/overview/INTERACTION_SCENARIOS.md.

Mandatory checklist (every roadmap step)

Each step is executed with a checklist supplied by the project owner (often inline in the prompt). Agents must:

Payout model note: see MVP_PRODUCT_SUMMARY.md (digest) and docs/overview/SPEC.md (normative).

MVP (End-to-end happy path)

MVP-0: Repo skeleton

Status — implemented: MimironsGoldOMatic.slnx lists the three .NET projects. MimironsGoldOMatic.TwitchExtension (Vite/React) and MimironsGoldOMatic.WoWAddon (30300 addon) exist under src/ with their own tooling and are not MSBuild projects in the solution file (see docs/reference/IMPLEMENTATION_READINESS.md).

Spec links:

MVP-1: Shared contracts (MimironsGoldOMatic.Shared)

Status — implemented: src/MimironsGoldOMatic.Shared (.NET 10), namespace MimironsGoldOMatic.Shared: PayoutStatus, PayoutDto (incl. IsRewardSentAnnouncedToChat), CreatePayoutRequest, PayoutEconomics.MvpWinningPayoutGold (1,000g per SPEC §2), CharacterNameRules + FluentValidation (PayoutDtoValidator, CreatePayoutRequestValidator). Details: docs/components/shared/ReadME.md.

Spec links:

Step-by-step prompt (MVP-1)

Acting as [EBS/API Expert]:

MVP-2: EBS API + persistence (MimironsGoldOMatic.Backend.Api + Backend.*)

Status — implemented (code): src/MimironsGoldOMatic.Backend/MimironsGoldOMatic.Backend.Api (and Backend.*) — Marten + PostgreSQL (ConnectionStrings:PostgreSQL), MVP HTTP routes (Extension JWT + Desktop X-MGM-ApiKey), EventSub channel.chat.message at POST /api/twitch/eventsub, MediatR handlers, roulette sync + payout expiration hosted services, Helix §11 inline retry after Sent, global rate limiter (EventSub exempt). Configure Mgm, Twitch, and Postgres before running; see docs/components/backend/ReadME.md and appsettings*.json. Runtime E2E against Twitch/Helix not verified in CI.

Spec links:

Step-by-step prompt (MVP-2)

Acting as [EBS/API Expert]:

MVP-3: WoW Addon (MimironsGoldOMatic.WoWAddon)

Status — implemented (code): src/MimironsGoldOMatic.WoWAddonNotifyWinnerWhisper, ReceiveGold, MGM_RunWhoForSpin(spinCycleId, characterName) (Desktop /run with currentSpinCycleId from EBS), mail queue panel on MAIL_SHOW, Prepare Mail, [MGM_WHO] / [MGM_ACCEPT] / [MGM_CONFIRM] per docs/overview/SPEC.md §8–10. /mgm + minimap button. Runtime verification on a live 3.3.5a client is manual.

Spec links:

Step-by-step prompt (MVP-3)

Acting as [WoW Addon/Lua Expert]:

MVP-4: Desktop WPF utility (MimironsGoldOMatic.Desktop)

Status — implemented (code): src/MimironsGoldOMatic.Desktop — MVVM main window + settings (API URL, DPAPI ApiKey, WoW log path, poll interval, PostMessage vs SendInput preference), GET /api/payouts/pending poll, auto NotifyWinnerWhisper for new Pending rows when WoW is foreground (persisted ids), Sync/InjectPATCH InProgress + chunked /run ReceiveGold, single WoWChatLog.txt tail → verify-candidate / confirm-acceptance / PATCH Sent, Polly retries on HttpClient. Runtime WinAPI behavior on real 3.3.5a clients is manual.

Spec links:

Step-by-step prompt (MVP-4)

Acting as [WPF/WinAPI Expert]:

MVP-5: Twitch Extension (MimironsGoldOMatic.TwitchExtension)

Status — implemented (MVP): Viewer panel lives in src/MimironsGoldOMatic.TwitchExtension. UI inventory and copy: docs/components/twitch-extension/UI_SPEC.md; hub tokens and cross-client rules: docs/reference/UI_SPEC.md.

Spec links:

Step-by-step prompt (MVP-5)

Acting as [Frontend/Twitch Expert]:

MVP-6: End-to-end demo & verification

Status — MVP-6 (verification split):

Next steps (MVP-6):

For details on the automation approach, see E2E Automation Plan. Actionable work items: E2E Automation Tasks.

E2E Automation Progress

Solution layout: MimironsGoldOMatic.slnx includes MimironsGoldOMatic.Backend.UnitTests; Twitch Extension and WoW addon stay non-MSBuild trees (same as MVP-0).

Spec links:

Step-by-step prompt (MVP-6)

Acting as [Senior Architect]:

Beta (Reliability & streamer UX)

Production milestone (Security hardening)