refactor: update app initialization for new OAuth flow

Wire up VoteService with the new session getter and auth callbacks
for the backend-delegated OAuth architecture.

Key changes:
- VoteService now uses sessionGetter instead of direct OAuthSession
- Add tokenRefresher callback for automatic 401 recovery
- Add signOutHandler callback for failed refresh cleanup
- Remove OAuthService initialization (deleted)

The new flow ensures votes go through the Coves backend which
has the DPoP keys needed to write to user PDSs.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

Changed files
+5 -3
lib
+5 -3
lib/main.dart
···
final authProvider = AuthProvider();
await authProvider.initialize();
-
// Initialize vote service with auth callbacks for direct PDS writes
-
// Uses DPoP authentication (not Bearer tokens!)
+
// Initialize vote service with auth callbacks
+
// Votes go through the Coves backend (which proxies to PDS with DPoP)
+
// Includes token refresh and sign-out handlers for automatic 401 recovery
final voteService = VoteService(
sessionGetter: () async => authProvider.session,
didGetter: () => authProvider.did,
-
pdsUrlGetter: authProvider.getPdsUrl,
+
tokenRefresher: authProvider.refreshToken,
+
signOutHandler: authProvider.signOut,
);
runApp(