20ddba4c5f556a7596c87ce80a1b5beedd899daa
Lands the Phase 1 + Phase 2 + multi-instancing migration as one mergepoint. Phase 1 — engine extraction (M1-M14): client's BattleManagerBase ported headless under SVSim.BattleEngine; deterministic emit; authoritative RNG seam (Q-RNG/F2); single-card resolution set proven. Phase 2 — headless conductor (M-HC-0..4 + M-HC-exit): receive conductor runs headless inside the battle node via no-op view shims + InstantVfx rule (zero Engine/*.cs edits, check_drift.py clean). Six structural shadow-vs-wire divergences resolved against live PvP traffic. Multi-instancing: per-battle engine statics now AsyncLocal-scoped via BattleAmbientContext (Mgr, GameMgr, ViewerId, IsForecast, IsRandomDraw, RealTimeNetworkAgent, BattleRecoveryInfo). EngineSessionGate deleted; SessionBattleEngine wraps all entry points; MultiInstanceEngineTests is the regression oracle. Parallelism hardening: Resources._loaded + GameObject._components shim Dictionaries -> ConcurrentDictionary; Wizard.LocalLog mutations gated by single static lock. SVSim.BattleEngine.Tests now runs under ParallelScope.Fixtures; StressN parallelizes Setup AND Drive. Pending: live two-pair PvP smoke (Task 10 of the multi-instancing plan). Suite: SVSim.UnitTests 1054/1054; SVSim.BattleEngine.Tests 59/2 (skips pre-existing). Audit script tools/engine-port/audit-static-writes.ps1 green. Co-Authored-By: Claude Opus 4.6 (1M context) <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%