dd231b081de1846c07239ed021ad3850a7c14407
InventoryService consolidation: replaces RewardGrantService, CurrencySpendService, ViewerEntitlements, and CardAcquisitionService with a single scoped-transaction facade IInventoryService. - BeginAsync loads viewer with canonical inventory graph + extras - TrySpendAsync/TryDebitAsync/GrantAsync queue ops; CommitAsync saves - Result carries RewardList (post-state, currency-collision-resolved) + Deltas (verbatim queued) for distinct wire fields - Freeplay logic folded into the tx surface - 14 callers ported (Load, BuildDeck, Pack, LeaderSkin, Sleeve, ItemPurchase, SpotCardExchange, Gift, Achievement, Puzzle, Story, BattlePass, ArenaTwoPick, GachaPoint); CardInventoryRepository.Create ported, Destruct deferred - 8 old service files + 4 test files deleted - 713/713 tests pass Spec: docs/superpowers/specs/2026-05-31-inventory-service-design.md Plan: docs/superpowers/plans/2026-05-31-inventory-service.md Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Description
The SV Simulator server code, including the DCG Engine, SVSim content, and an entrypoint for the official game client.
Languages
C#
100%