using SVSim.BattleNode.Protocol; namespace SVSim.BattleNode.Sessions.Dispatch.Handlers; internal sealed class TurnStartHandler : IFrameHandler { public IReadOnlyList Handle(FrameDispatchContext ctx) { // Forward the opponent's turn-open to the other side. Union of the two legacy arms: // BothAfterReady (PvP / scripted real player) OR a scripted-bot emission (test stub path). if (ctx.BothAfterReady() || ctx.IsScriptedBot(ctx.From)) return new[] { new DispatchRoute(ctx.Other, ctx.Env, false) }; return Array.Empty(); } }