namespace SVSim.BattleEngine.Tests { // Shared base for every network-emit test fixture (M13 EmitPathReadOracleTests, the // construction-probe's OnEmit seam test, and any M14+ network fixture to come). // // POST-TASK-8 (multi-instancing migration): now empty. The historical hygiene gap this class // closed (HeadlessEngineEnv.NewNetworkEmitBattle leaving IsForecast=false + a stray injected // agent visible to a later solo fixture) was a PROCESS-GLOBAL leak via the now-deleted // BattleManagerBase._isForecastFallback + ToolboxGame._realTimeNetworkAgentFallback statics. // Both fields are gone: IsForecast/RealTimeNetworkAgent live on the per-test ambient context // (TestBattleScope's BattleAmbientContext), so scope Dispose drops them. A later fixture's // new TestBattleScope starts a fresh ctx with IsForecast=true and a null NetworkAgent by // default — exactly the EnsureInitialized invariant the old TearDown manually restored. // // Kept as a marker base class so derived fixtures don't churn; can be deleted in Task 9. public abstract class NetworkEmitFixtureBase { } }