Fix: Prevent Server Scope data leaking into other worlds
Corrects a memory leak where Server Scope notes and builds persisted in the client's static cache (ClientCache) after disconnecting from a dedicated server.
The issue occurred because the cache clearing logic was wrapped in client.execute(), which placed the cleanup task on the end of the Main Thread queue. When a user quickly disconnected and then loaded a Singleplayer world or joined a second server, the cache clearing was often delayed or discarded, allowing the old data to bleed into the new session.
The fix involves running ClientCache.clear() and ClientSession.leaveServer() synchronously on the Netty network thread during the ClientPlayConnectionEvents.DISCONNECT event, guaranteeing immediate memory cleanup.



