mirror of
https://github.com/kuhyx/screen-locker.git
synced 2026-11-10 21:07:14 +01:00
The PC push aborted before it ever tried Firebase whenever the GitHub PAT
was missing ("Workouts NOT synced: no sync token"), so once the PAT was lost
this machine published nothing although Firebase was configured and live.
The phone has not written the GitHub repo since 2026-08-21.
- sync_client() / sync_client_or_reason(): firebase_client_for("screen_locker")
only, proven with can_access_remote(), healed once from a sibling app's
session, else a warning naming what will not sync (push AND pull) plus a
recorded degraded source. No config -> warning, no fallback.
- _manual_push and scripts/tombstone_sync_record.py take their client from
sync_client_or_reason(); the push result carries the reason.
- Deleted: read_sync_token, remote_client, the mirror client, _push_outcome
(the half-landed-push case no longer exists), SYNC_TOKEN_FILE and
SYNC_REPO_OWNER/NAME, the sync_token test fixture. Status backend is
"firebase" or "none".
- crdt-sync pinned to v0.9.2 in pyproject, requirements.txt and
install_systemd.sh (the installer still said v0.9.0).
kuhyx/syncs/screen-locker-sync is left untouched as an archive; no code
reads it.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018RHwVPyiiQMPh4M3JQwQku
|
||
|---|---|---|
| .. | ||
| __init__.py | ||
| _popup_form_check.py | ||
| _preview_sim.py | ||
| _xvfb_reexec.py | ||
| add_scheduled_skip.py | ||
| annotate_duplicate_credits.py | ||
| check_dependency_freshness.sh | ||
| check_enforcement_armed.py | ||
| check_file_length.py | ||
| check_flutter_coverage.sh | ||
| check_gate_stamp.sh | ||
| check_md_naming.sh | ||
| check_no_crdt_sync_override.sh | ||
| check_repo_contract.sh | ||
| check_requirements_sync.py | ||
| check_silent_failures_dart.py | ||
| check_silent_failures.py | ||
| ci_mirror.sh | ||
| demo_workout_handoff.py | ||
| disarm_guard.sh | ||
| finish_2026_08_24.sh | ||
| fix_2026_07_26_sport.py | ||
| migrate_scheduled_skips.py | ||
| pair_phone.sh | ||
| poke_selftest.py | ||
| preview_shutdown.py | ||
| refresh_refactor_todo.py | ||
| rekey_log_entry.py | ||
| restore_and_bonus.py | ||
| revoke_sick_day.py | ||
| runnerup_watch.sh | ||
| setup_mcp.sh | ||
| split_dart_test.py | ||
| test_changed.sh | ||
| tombstone_sync_record.py | ||
| verify_lock_popup_safety.py | ||
| verify_screen_fits.py | ||
| verify_workout_credited.py | ||
| workout_poke_keygen.sh | ||