deleteUserData function
Deletes all first-party shell data persisted for userId.
Caches only. Games this device played offline are deliberately not touched: they are the games themselves, not a copy of something the server holds, and a sign-out is not a decision to discard them. deleteLocalGamesFor is what account deletion calls.
Implementation
Future<void> deleteUserData(Ref ref, String userId) async {
if (!persistentApiCacheEnabled) return;
final storage = await ref.read(storageProvider.future);
await storage.delete(profileCacheKey(userId));
await storage.delete(friendshipsCacheKey(userId));
}