RootCause
Per-player stacks keyed by SteamId. MaxUndoSteps=128 prevents unbounded memory growth. RemovePlayer() must be called on disconnect or stacks leak. Remove(GameObject) removes from ALL stacks — From UndoSystem.cs. Tension: can't undo it out of someone's hands. Outcome: Rpc.FilterInclude sends the undo notice only to the owning player.
00699b76-cb61-4d9a-8bb9-4123abdb7c39
Per-player stacks keyed by SteamId. MaxUndoSteps=128 prevents unbounded memory growth. RemovePlayer() must be called on disconnect or stacks leak. Remove(GameObject) removes from ALL stacks — From UndoSystem.cs. Tension: can't undo it out of someone's hands. Outcome: Rpc.FilterInclude sends the undo notice only to the owning player.