utils/crdt-sync/tool
Krzysztof kuhy Rudnicki 9d638fb919 Seed a Firebase session for todo as well
todo used to be grouped with the Flutter-only apps that authenticate in-app
on the phone and therefore need no desktop session. That stopped being true
when it grew a desktop wrapper (lib/desktop/wrapper_server.dart) with its own
Firebase REST client, which needs a seeded session exactly like the Python
daemons do.

Both files the new comment cites were confirmed present today. The credential
cache at ~/.config/todo/firebase_auth.json has the same shape as every other
entry -- FirebaseCredentials.fromJson in crdt_sync_dart parses the same
{id_token, refresh_token, expires_at} that credential_store_for writes -- so
the only thing that was missing is the DEFAULT_APPS entry.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CFSGeWxHPY5rHUGrPqhcmG
2026-08-22 16:17:06 +02:00
..
__init__.py crdt_sync: add the one-shot GitHub -> Firebase data migration 2026-08-03 18:31:18 +02:00
_oauth_callback.py crdt-sync: clear the ruff 0.15.2 findings CI reported 2026-08-22 15:56:08 +02:00
google_id_token.py Fix the cap hook in CI, and the re-exports its --all-files run exposed 2026-08-22 15:52:59 +02:00
interop_seed.py Group sync_log's 11 arguments into three bundles 2026-08-21 14:22:25 +02:00
link_google.py Sign in with Google, and stop trusting a revoked session 2026-08-11 23:58:02 +02:00
migrate_github_to_firebase.py crdt_sync: add the one-shot GitHub -> Firebase data migration 2026-08-03 18:31:18 +02:00
preflight_firebase.py crdt_sync 0.5.0: the shared config and the cutover seam 2026-08-04 22:59:48 +02:00
seed_session.py Seed a Firebase session for todo as well 2026-08-22 16:17:06 +02:00