mirror of
https://github.com/kuhyx/screen-locker.git
synced 2026-07-04 10:03:38 +02:00
The screen locker skipped enforcement on 2026-07-03 without ever showing a lock: a banked skip credit (earned from a prior 5+/week streak) was consumed automatically with no confirmation and no visible log. Reworked the whole reward mechanic instead of just gating it, since banking a "skip a future workout" credit works against maximizing weekly workouts: - Removed skip credits entirely (has_skip_credit/consume_skip_credit and the confirmation dialog built to gate them). The only same-day skip paths left are heat_skip and sick_day, both requiring a genuine reason. - Extra workouts (5+/week) now bank shutdown-time-later hours for the following week instead — comfort, not reduced enforcement. Reuses the existing _adjust_shutdown_time_by and reset_to_base_if_new_day's previously-discarded return value as the once-per-day gate. - early_bird and sick_day no longer pollute workout_log.json. early_bird is a same-day pending marker now stored in its own self-expiring, HMAC-signed file; sick_day is sourced entirely from sick_history.json (already the real source of truth). Fixes an accidental-safety gap where "already took a sick day today" only halted startup by luck. - Cleaned up 3 stale non-workout entries already in workout_log.json. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QdTccgbK7624kfoaV6CtXS |
||
|---|---|---|
| .. | ||
| tests | ||
| __init__.py | ||
| _auto_upgrade.py | ||
| _constants.py | ||
| _early_bird.py | ||
| _extra_benefits.py | ||
| _heat_skip.py | ||
| _log_mixin.py | ||
| _phone_verification.py | ||
| _runnerup_db.py | ||
| _runnerup_verification.py | ||
| _shutdown_base.py | ||
| _shutdown.py | ||
| _sick_dialog.py | ||
| _sick_tracker.py | ||
| _status.py | ||
| _temperature.py | ||
| _time_check.py | ||
| _ui_flows_relaxed.py | ||
| _ui_flows.py | ||
| _ui_widgets.py | ||
| _wake_state.py | ||
| _weekly_check.py | ||
| _window_setup.py | ||
| adjust_shutdown_schedule.sh | ||
| extra_benefits_state.json | ||
| scheduled_skips.json | ||
| screen_lock.py | ||
| shutdown_base.json | ||
| sick_history.json | ||
| workout_log.json | ||