screen-locker/stronglift_replacement/workout_app/test/services
Krzysztof kuhy Rudnicki c1c73d43ba
Some checks failed
pre-commit / pre-commit (push) Has been cancelled
Tests / test (3.10) (push) Has been cancelled
Tests / test (3.11) (push) Has been cancelled
Tests / test (3.12) (push) Has been cancelled
Tests / lock-popup-safety (push) Has been cancelled
release-apk / release (APK) (push) Has been cancelled
Stop the relaxed-day popup from re-firing every 30 minutes after Skip
workout-locker.timer (added in e5db254) re-runs the full lock-decision
chain every 30 minutes, but is_relaxed_day() is a pure date check with
no memory of an earlier same-day dismissal. Clicking "Skip — No
Penalty" only closed the window without persisting anything, so the
next tick re-derived reason=relaxed_day and rebuilt the same popup.

Now the skip button writes a relaxed_day_skip marker to the log
(excluded from weekly counting and sync, same treatment as heat_skip),
and the startup chain checks for it before re-entering the relaxed-day
branch. Also renames workout_log.json to log.json throughout the repo,
tests, docs, and Dart comments, since the fix touches that file anyway.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014qH2hJ6mvCJd3ZXpAJSaF7
2026-08-18 21:55:59 +02:00
..
_progression_test_fixtures.dart Split progression_sync_service_test.dart (426) into three 2026-08-15 22:12:04 +02:00
_sync_test_fixtures.dart Move the workout-sync test helpers into _sync_test_fixtures.dart 2026-08-15 22:07:36 +02:00
backup_service_test.dart Mirror the in-progress session so an app-data wipe can't lose your set 2026-07-17 09:57:54 +02:00
github_device_auth_test.dart Add phone-workout GitHub sync via shared crdt_sync (Workstream C) 2026-07-11 00:06:59 +02:00
http_server_service_test.dart Cover services + app bootstrap toward 100% flutter coverage 2026-07-13 13:27:18 +02:00
progression_sync_push_test.dart Split progression_sync_service_test.dart (426) into three 2026-08-15 22:12:04 +02:00
progression_sync_service_test.dart Split progression_sync_service_test.dart (426) into three 2026-08-15 22:12:04 +02:00
storage_service_backup_test.dart Split storage_service_test.dart (759) into six by group 2026-08-15 21:28:02 +02:00
storage_service_history_test.dart Split storage_service_test.dart (759) into six by group 2026-08-15 21:28:02 +02:00
storage_service_lastsync_test.dart Split storage_service_test.dart (759) into six by group 2026-08-15 21:28:02 +02:00
storage_service_progression_test.dart Split storage_service_test.dart (759) into six by group 2026-08-15 21:28:02 +02:00
storage_service_restore_test.dart Split storage_service_test.dart (759) into six by group 2026-08-15 21:28:02 +02:00
storage_service_test.dart Split storage_service_test.dart (759) into six by group 2026-08-15 21:28:02 +02:00
sync_device_id_test.dart Push under a persisted per-install uuid, not a fixed role id 2026-08-09 17:31:15 +02:00
sync_service_test.dart Fix workout_app service tests on non-Android hosts 2026-07-13 12:47:55 +02:00
sync_settings_test.dart Recover the sync token from backup when the stored one is rejected 2026-07-17 09:45:12 +02:00
sync_state_factory_test.dart Sync workouts through Firebase, mirroring to GitHub during the cutover 2026-08-05 08:12:40 +02:00
sync_status_test.dart Add sync-status card and duration-threshold fixture 2026-08-15 18:41:31 +02:00
workout_sync_cutover_test.dart Split workout_sync_service_test.dart (740) into four 2026-08-15 22:09:54 +02:00
workout_sync_manual_survival_test.dart Split workout_sync_service_test.dart (740) into four 2026-08-15 22:09:54 +02:00
workout_sync_read_test.dart Stop the relaxed-day popup from re-firing every 30 minutes after Skip 2026-08-18 21:55:59 +02:00
workout_sync_service_test.dart Split workout_sync_service_test.dart (740) into four 2026-08-15 22:09:54 +02:00