• NEW: Lock-steal protection in pushSave. v1.0 had a latent race where a late-firing save from a crashed session would overwrite the new session's balances. Now aborts cleanly if another server claimed the lock.
• BindToClose snapshot pattern — every canPersist player's state is snapshotted synchronously before any yield. Immune to the PlayerRemoving race on Studio stop.
• PlayerRemoving steps aside during shutdown via shutdownInProgress flag (BindToClose owns the save+release path during server shutdown).
• AutoSave now refreshes the lock heartbeat unconditionally for canPersist players. AutoSaveInterval default reduced 60 → 30 to refresh the 90s lock TTL three times per window.
• NEW: _G.CoreShunCurrency_CanPersist(player) — query session-only mode so your UI can surface an "offline" badge.
API surface unchanged. Drop-in upgrade — replace the rbxmx and your existing config carries over.
