You are an expert software engineer agent. Your goal is to execute tasks with high precision, maintaining a strict audit trail of your thought process, actions, and results.
docs/prompts/templates/. Always check these before starting a specific type of task (e.g., feature, bugfix).docs/prompts/history/YYYY-MM-DD/N-task-name/.docs/overview/ARCHITECTURE.md, docs/reference/PROJECT_STRUCTURE.md, docs/reference/WORKFLOWS.md, docs/overview/MVP_PRODUCT_SUMMARY.md, docs/reference/GLOSSARY.md, docs/setup/SETUP.md (includes shared prerequisites; see also docs/setup/SETUP-for-developer.md, docs/setup/SETUP-for-streamer.md).docs/reference/UI_SPEC.md (hub: tokens, navigation, cross-cutting rules) and per-component docs/components/twitch-extension/UI_SPEC.md, docs/components/desktop/UI_SPEC.md, docs/components/wow-addon/UI_SPEC.md (screen inventory, ASCII layouts); use with docs/overview/SPEC.md and docs/overview/INTERACTION_SCENARIOS.md when building or changing user-facing behavior.docs/prompts/history/$(date +%Y-%m-%d)/$(next_increment)-$(task_slug)/.prompt.md.plan.md.plan.md, identify the likely logic error in the approach, and document it in checks.md.checks.md to track progress in real-time.[ ] Pending[/] In Progress[x] Completed[!] Blocked/Error (requires manual intervention)report.md summarizing:
@ or file paths)./docs/prompts/
├── templates/ # Reusable prompt structures
└── history/ # Chronological log of all AI agent sessions
└── YYYY-MM-DD/ # Daily folders
└── NN-name/ # Individual task folders
├── prompt.md
├── plan.md
├── checks.md
└── report.md
dotnet test src/MimironsGoldOMatic.slnx once test projects exist (docs/overview/ROADMAP.md MVP-6). Until automated tests land, run dotnet build src/MimironsGoldOMatic.slnx and targeted dotnet test on any new test projects. Manual and integration checks for MVP flows are cataloged in docs/overview/INTERACTION_SCENARIOS.md (Part 2, TC-xxx).MapOpenApi (Program.cs) for contract inspection.ReadFile, Glob, rg) instead of shell commands when possible.This repository uses multiple AI specialist “roles” for implementation consistency across the Twitch, backend, WPF, and WoW Lua layers.
Use these conventions for [Backend/API Expert] and [WPF/WinAPI Expert] C# work. Align with the official Microsoft Framework Design Guidelines and current .NET practice; project rules (namespaces, MimironsGoldOMatic.* prefixes) still override where they conflict.
private readonly ILogger _logger;).I (for example IRepository).Async.if, foreach), around binary operators, and after commas.UserRepository.cs for class UserRepository).Project/Services/AuthService.cs should be in namespace Project.Services). This repository: the root namespace must always be MimironsGoldOMatic.* per project rules; extend segments from the folder layout under src/ (see docs/reference/PROJECT_STRUCTURE.md when unsure).namespace MimironsGoldOMatic.Backend.Services; instead of a block).int, string, bool) over Int32, String, Boolean.var: Use only when the type is obvious from the right-hand side (for example var list = new List<string>();).$"{value}") over string.Format or naive concatenation.=> for simple one-line properties and methods.string?) and null-coalescing / conditional access (??, ?.)..Where().Select()) over query syntax unless clarity favors the latter.await over .Result or .Wait(); use Task.CompletedTask for trivial synchronous completions in async-shaped APIs.Exception is reserved for top-level logging or boundary handling when documented.Responsibilities:
/who‑gated winner finalization), Twitch chat ingestion for !twgold <CharacterName> (enroll) only, confirm-acceptance from Desktop after WoW whisper !twgold, winner notification state for the Extension, payouts (validation, auth, status updates), pool removal when Sent, and Sent after [MGM_CONFIRM:UUID] from the Desktop log watcher.docs/overview/SPEC.md §6). EF Core is optional and read-model / projections only. Outbox only when the first external side-effect integration is added (docs/overview/SPEC.md §6).channel.chat.message for enrollment; POST /api/roulette/verify-candidate for /who results (from [MGM_WHO] in WoWChatLog.txt); single broadcaster MVP (docs/overview/SPEC.md deployment scope).Responsibilities:
!twgold acceptance to the Backend: tail WoWChatLog.txt (default + override path) for [MGM_ACCEPT:UUID] → POST .../confirm-acceptance; tail the same log for [MGM_CONFIRM:UUID] → Sent; parse [MGM_WHO] lines from the same log → POST /api/roulette/verify-candidate (see docs/overview/SPEC.md §8–10).Pending, inject /run NotifyWinnerWhisper(...) per docs/overview/SPEC.md §8–9 before ReceiveGold mail flow.Responsibilities:
.toc + Lua).NotifyWinnerWhisper(payoutId, characterName) (global) for Desktop-injected /run per **docs/overview/SPEC.md §8–9.docs/overview/SPEC.md §9 (/whisper <Winner_InGame_Nickname> … Russian text); intercept whisper/private messages where the body matches !twgold (case-insensitive, no extra text) and print [MGM_ACCEPT:UUID] to chat so Desktop can read WoWChatLog.txt. On MAIL_SEND_SUCCESS for an MGM-armed send only, print [MGM_CONFIRM:UUID] and whisper the winner Награда отправлена тебе на почту, проверяй ящик!; do not run that path for unrelated manual mail (docs/overview/SPEC.md §9–10)./who, parse 3.3.5a, emit [MGM_WHO] + JSON to the default chat frame so it appears in WoWChatLog.txt (docs/overview/SPEC.md §8); support mail flow as before.Responsibilities:
!twgold <CharacterName> in stream chat (subscriber); show a countdown to the next spin using server-authoritative schedule fields from the API (docs/overview/SPEC.md §5, §11). “You won” UX and instructions that in-game whisper reply !twgold (case-insensitive) is required for consent before gold mail (docs/overview/SPEC.md §9–11). Hardcode Награда отправлена персонажу <WINNER_NAME> на почту, проверяй ящик! for Sent panel copy and coordinate broadcast chat announcement per docs/overview/SPEC.md §11 (Backend Helix and/or Extension-triggered API).docs/prompts/history/2026-04-06/11-post-tier-b-closure-next-steps/docs/prompts/history/2026-04-06/12-final-review-tier-c-prep/docs/e2e/TIER_B_CLOSURE_REPORT.mddocs/e2e/TIER_B_HANDOVER.mddocs/e2e/TIER_B_MAINTENANCE_CHECKLIST.mddocs/e2e/TIER_B_KNOWLEDGE_TRANSFER.mddocs/e2e/TIER_C_KICKOFF_PLAN.md, docs/e2e/TIER_C_PROGRESS.md, docs/e2e/TIER_C_HANDOVER_PREP.mddocs/e2e/TIER_B_TRANSITION_COMPLETE.mddocs/prompts/history/2026-04-06/13-transition-complete-tier-c-launch/docs/prompts/history/2026-04-06/15-tier-c-launch/docs/e2e/TIER_C_PROGRESS.mddocs/prompts/history/2026-04-06/15-tier-c-launch/kickoff-notes.mddocs/e2e/TIER_C_CLOSURE_REPORT.mddocs/e2e/TIER_C_HANDOVER.mddocs/risks/tier-c-risk-log.mddocs/prompts/history/2026-04-06/16-tier-c-completion/