mirror of
https://github.com/kuhyx/screen-locker.git
synced 2026-11-11 13:27:41 +01:00
First phase of syncing phone-logged manual/off-app workouts to the PC so they count toward the unlock. This phase only establishes the cross-language wire contract; no behavior change to existing flows. - _manual_workout.py: build_sync_payload(draft, date) = build_entry fields + a `kind="manual_workout"` discriminator + the workout's own `date`; and manual_sync_record_id(date, start) -> stable `manual:<date>T<HH:MM>` id. A StrongLifts session payload has no `kind`, so an ingesting PC can route on it and never mistake a manual for a verified session. - test_manual_workout.py: TestSyncWireFormat pins the exact literal payload as the cross-language contract (the Dart workout_app test will reproduce the same literal byte-for-byte; neither side's own round-trip test catches drift from the other). - workout_app/lib/models/manual_workout_constants.dart: hand-maintained mirror of the 7 MANUAL_WORKOUT_* constants + the kind value (Python stays source of truth; the shared fixture is the drift tripwire). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PM3auNTifaVgcXWDizZrjH |
||
|---|---|---|
| .. | ||
| android | ||
| assets/sounds | ||
| lib | ||
| test | ||
| .gitignore | ||
| .metadata | ||
| analysis_options.yaml | ||
| CONTEXT.md | ||
| pubspec.lock | ||
| pubspec.yaml | ||
| README.md | ||
workout_app
A new Flutter project.
Getting Started
This project is a starting point for a Flutter application.
A few resources to get you started if this is your first Flutter project:
For help getting started with Flutter development, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.