Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Domestique v3.3.0 | undefined | Python 3.12.10
- ============================================================
- 2026-07-09 07:07:07 INFO [db] EVENT=sync_start days=90
- 2026-07-09 07:07:07 INFO [domestique.profiles] _set_wprime: wprime_j=9138 J source=icu
- 2026-07-09 07:07:07 INFO [domestique.profiles] _set_pmax: pmax_w=417 W source=icu
- 2026-07-09 07:07:08 INFO [db] EVENT=sync_done status=ok wellness=91 activities=49
- 2026-07-09 07:07:08 INFO [db] Background sync completed
- 2026-07-09 07:07:08 INFO [app] EVENT=icu_push_daily pushed=0 updated=0 deleted=0 needs_reconnect=None error=http_422
- 2026-07-09 07:37:08 INFO [db] EVENT=sync_start days=90
- 2026-07-09 07:37:08 INFO [domestique.profiles] _set_wprime: wprime_j=9138 J source=icu
- 2026-07-09 07:37:08 INFO [domestique.profiles] _set_pmax: pmax_w=417 W source=icu
- 2026-07-09 07:37:08 INFO [db] EVENT=sync_done status=ok wellness=91 activities=49
- 2026-07-09 07:37:08 INFO [db] Background sync completed
- 2026-07-09 07:37:09 INFO [app] EVENT=icu_push_daily pushed=0 updated=0 deleted=0 needs_reconnect=None error=http_422
- 2026-07-09 08:07:09 INFO [db] EVENT=sync_start days=90
- 2026-07-09 08:07:09 INFO [domestique.profiles] _set_wprime: wprime_j=9138 J source=icu
- 2026-07-09 08:07:09 INFO [domestique.profiles] _set_pmax: pmax_w=417 W source=icu
- 2026-07-09 08:07:10 INFO [db] EVENT=sync_done status=ok wellness=91 activities=49
- 2026-07-09 08:07:10 INFO [db] Background sync completed
- 2026-07-09 08:07:11 INFO [app] EVENT=icu_push_daily pushed=0 updated=0 deleted=0 needs_reconnect=None error=http_422
- 2026-07-09 08:37:11 INFO [db] EVENT=sync_start days=90
- 2026-07-09 08:37:11 INFO [domestique.profiles] _set_wprime: wprime_j=9138 J source=icu
- 2026-07-09 08:37:11 INFO [domestique.profiles] _set_pmax: pmax_w=417 W source=icu
- 2026-07-09 08:37:11 INFO [db] EVENT=sync_done status=ok wellness=91 activities=49
- 2026-07-09 08:37:11 INFO [db] Background sync completed
- 2026-07-09 08:37:11 INFO [app] EVENT=icu_push_daily pushed=0 updated=0 deleted=0 needs_reconnect=None error=http_422
- 2026-07-09 08:54:39 WARNING [domestique.training] fetch_activity_intervals(19234107124) failed: HTTP 422 on activity/19234107124/intervals: Unprocessable Entity
- 2026-07-09 08:55:13 INFO [sleep_inhibit] sleep_inhibit: released
- 2026-07-09 08:55:41 INFO [migrate_profiles] AC2a archive migration: 1 icu + 1 wellness + 0 loose files; profiles=['default', 'emad2'] active=default
- 2026-07-09 08:55:41 INFO [migrate_profiles] AC2a archive migration done: {'ran': True, 'icu': 0, 'wellness': 0, 'loose': 0, 'unmatched': 0}
- 2026-07-09 08:55:41 INFO [domestique.profiles] Normalized C:\Users\emadm\.domestique\profiles\default\.env permissions 0o666 -> 0o600
- 2026-07-09 08:55:41 INFO [app] plan adoption decision: verdict=skip (profile stamp newer); root_stamp=2026-06-25 18:03:15.156564 prof_stamp=2026-07-03 09:58:30.087844 root_mtime=1783005809.9442081 prof_mtime=1783601707.2440035 multi_profile=True latch_present=False root=C:\Users\emadm\.domestique\plans\current_plan.json prof=C:\Users\emadm\.domestique\profiles\default\plans\current_plan.json
- 2026-07-09 08:55:41 INFO [db] EVENT=sync_start days=90
- 2026-07-09 08:55:41 INFO [domestique.profiles] _set_wprime: wprime_j=9138 J source=icu
- 2026-07-09 08:55:41 INFO [domestique.profiles] _set_pmax: pmax_w=417 W source=icu
- 2026-07-09 08:55:41 INFO [db] EVENT=sync_done status=ok wellness=91 activities=48
- 2026-07-09 08:55:41 INFO [db] Background sync completed
- 2026-07-09 08:55:42 INFO [app] EVENT=icu_push_daily pushed=0 updated=0 deleted=0 needs_reconnect=None error=http_422
- 2026-07-09 08:55:46 INFO [httpx] HTTP Request: GET https://api.github.com/repos/platypus45/domestique/releases/latest "HTTP/1.1 200 OK"
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:46 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:46 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:47 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 08:55:47 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 08:55:47 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 08:55:47 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 08:55:48 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-09 08:55:48 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-09 08:55:48 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:48 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:48 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:48 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 08:55:48 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:55:48 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 08:56:32 WARNING [training_planner] match_zwo: no candidates for session_type=recovery duration=60min target_if≈None primary_cat=recovery fallbacks=['recovery', 'endurance'] library_size=4255
- 2026-07-09 08:56:32 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='recovery' target_dur=60 primary_cat='recovery' library_size=4255
- 2026-07-09 08:56:59 WARNING [training_planner] match_zwo: no candidates for session_type=recovery duration=60min target_if≈None primary_cat=recovery fallbacks=['recovery', 'endurance'] library_size=4255
- 2026-07-09 08:56:59 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='recovery' target_dur=60 primary_cat='recovery' library_size=4255
- 2026-07-09 08:57:01 WARNING [training_planner] match_zwo: no candidates for session_type=recovery duration=60min target_if≈None primary_cat=recovery fallbacks=['recovery', 'endurance'] library_size=4255
- 2026-07-09 08:57:01 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='recovery' target_dur=60 primary_cat='recovery' library_size=4255
- 2026-07-09 08:57:03 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=1 updated=0 deleted=0 skipped=1 horizon=14d
- 2026-07-09 08:57:03 INFO [app] EVENT=icu_push_debounced pushed=1 updated=0 deleted=0
- 2026-07-09 08:59:15 WARNING [training_planner] match_zwo: no candidates for session_type=recovery duration=60min target_if≈None primary_cat=recovery fallbacks=['recovery', 'endurance'] library_size=4255
- 2026-07-09 08:59:15 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='recovery' target_dur=60 primary_cat='recovery' library_size=4255
- 2026-07-09 08:59:22 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:59:22 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 08:59:28 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:59:28 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 08:59:33 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:59:33 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 08:59:34 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:59:34 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 08:59:38 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 08:59:38 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 09:00:05 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=0 updated=0 deleted=0 skipped=1 horizon=14d
- 2026-07-09 09:00:05 INFO [app] EVENT=icu_push_debounced pushed=0 updated=0 deleted=0
- 2026-07-09 09:00:26 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:00:26 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:11 INFO [sleep_inhibit] sleep_inhibit: released
- 2026-07-09 09:01:21 INFO [migrate_profiles] AC2a archive migration: 1 icu + 1 wellness + 0 loose files; profiles=['default', 'emad2'] active=default
- 2026-07-09 09:01:21 INFO [migrate_profiles] AC2a archive migration done: {'ran': True, 'icu': 0, 'wellness': 0, 'loose': 0, 'unmatched': 0}
- 2026-07-09 09:01:21 INFO [domestique.profiles] Normalized C:\Users\emadm\.domestique\profiles\default\.env permissions 0o666 -> 0o600
- 2026-07-09 09:01:21 INFO [app] plan adoption decision: verdict=skip (profile stamp newer); root_stamp=2026-06-25 18:03:15.156564 prof_stamp=2026-07-03 09:58:30.087844 root_mtime=1783005809.9442081 prof_mtime=1783601974.6463244 multi_profile=True latch_present=False root=C:\Users\emadm\.domestique\plans\current_plan.json prof=C:\Users\emadm\.domestique\profiles\default\plans\current_plan.json
- 2026-07-09 09:01:21 INFO [db] EVENT=sync_start days=90
- 2026-07-09 09:01:21 INFO [domestique.profiles] Normalized C:\Users\emadm\.domestique\profiles\default\.env permissions 0o666 -> 0o600
- 2026-07-09 09:01:21 INFO [app] plan adoption decision: verdict=skip (profile stamp newer); root_stamp=2026-06-25 18:03:15.156564 prof_stamp=2026-07-03 09:58:30.087844 root_mtime=1783005809.9442081 prof_mtime=1783601974.6463244 multi_profile=True latch_present=False root=C:\Users\emadm\.domestique\plans\current_plan.json prof=C:\Users\emadm\.domestique\profiles\default\plans\current_plan.json
- 2026-07-09 09:01:21 INFO [db] EVENT=sync_start days=90
- 2026-07-09 09:01:21 INFO [domestique.profiles] _set_wprime: wprime_j=9138 J source=icu
- 2026-07-09 09:01:21 INFO [domestique.profiles] _set_pmax: pmax_w=417 W source=icu
- 2026-07-09 09:01:22 INFO [db] EVENT=sync_aborted days=90 reason=sync stop requested while waiting for write gate
- 2026-07-09 09:01:22 INFO [db] Background sync pass aborted: sync stop requested while waiting for write gate
- 2026-07-09 09:01:22 INFO [db] EVENT=sync_done status=ok wellness=91 activities=48
- 2026-07-09 09:01:22 INFO [db] Background sync completed
- 2026-07-09 09:01:22 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=0 updated=0 deleted=0 skipped=1 horizon=14d
- 2026-07-09 09:01:22 INFO [app] EVENT=icu_push_daily pushed=0 updated=0 deleted=0 needs_reconnect=None error=None
- 2026-07-09 09:01:25 INFO [httpx] HTTP Request: GET https://api.github.com/repos/platypus45/domestique/releases/latest "HTTP/1.1 200 OK"
- 2026-07-09 09:01:25 INFO [httpx] HTTP Request: GET https://api.github.com/repos/platypus45/domestique/releases/latest "HTTP/1.1 200 OK"
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:26 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-09 09:01:26 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-09 09:01:26 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:26 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:26 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:26 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:26 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:26 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:26 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-09 09:01:26 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-09 09:01:26 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:26 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:26 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:26 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:26 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:26 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:28 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 09:01:28 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 09:01:28 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 09:01:28 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 09:01:28 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 09:01:28 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 09:01:28 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 09:01:28 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-09 09:01:28 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-09 09:01:28 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-09 09:01:28 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:28 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:28 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:28 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:28 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:28 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:28 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-09 09:01:28 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-09 09:01:28 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:28 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:28 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:28 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:01:28 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-09 09:01:28 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-09 09:03:15 INFO [sleep_inhibit] sleep_inhibit: released
- 2026-07-09 15:01:37 INFO [sleep_inhibit] sleep_inhibit: released
- 2026-07-10 09:39:00 INFO [migrate_profiles] AC2a archive migration: 1 icu + 1 wellness + 0 loose files; profiles=['default', 'emad2'] active=default
- 2026-07-10 09:39:00 INFO [migrate_profiles] AC2a archive migration done: {'ran': True, 'icu': 0, 'wellness': 0, 'loose': 0, 'unmatched': 0}
- 2026-07-10 09:39:00 INFO [domestique.profiles] Normalized C:\Users\emadm\.domestique\profiles\default\.env permissions 0o666 -> 0o600
- 2026-07-10 09:39:00 INFO [app] plan adoption decision: verdict=skip (profile stamp newer); root_stamp=2026-06-25 18:03:15.156564 prof_stamp=2026-07-03 09:58:30.087844 root_mtime=1783005809.9442081 prof_mtime=1783601974.6463244 multi_profile=True latch_present=False root=C:\Users\emadm\.domestique\plans\current_plan.json prof=C:\Users\emadm\.domestique\profiles\default\plans\current_plan.json
- 2026-07-10 09:39:00 INFO [db] EVENT=sync_start days=90
- 2026-07-10 09:39:01 INFO [domestique.profiles] _set_wprime: wprime_j=9138 J source=icu
- 2026-07-10 09:39:01 INFO [domestique.profiles] _set_pmax: pmax_w=417 W source=icu
- 2026-07-10 09:39:01 INFO [db] EVENT=sync_done status=ok wellness=91 activities=47
- 2026-07-10 09:39:01 INFO [db] Background sync completed
- 2026-07-10 09:39:02 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=1 updated=0 deleted=0 skipped=0 horizon=14d
- 2026-07-10 09:39:02 INFO [app] EVENT=icu_push_daily pushed=1 updated=0 deleted=0 needs_reconnect=None error=None
- 2026-07-10 09:39:05 INFO [httpx] HTTP Request: GET https://api.github.com/repos/platypus45/domestique/releases/latest "HTTP/1.1 200 OK"
- 2026-07-10 09:39:05 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 09:39:05 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 09:39:05 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:05 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:05 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:05 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:05 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:05 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:05 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-10 09:39:05 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 09:39:05 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 09:39:05 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:05 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:05 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:05 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:05 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:05 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:05 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 09:39:05 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 09:39:05 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:05 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:06 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:06 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:06 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:06 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:06 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 09:39:06 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 09:39:06 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:06 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:06 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:06 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:39:06 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:39:06 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:40:10 WARNING [training_planner] match_zwo: no candidates for session_type=vo2max duration=60min target_if≈None primary_cat=vo2max fallbacks=['vo2max', 'vo2_short', 'vo2_ladder', 'anaerobic'] library_size=4255
- 2026-07-10 09:40:10 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='vo2max' target_dur=60 primary_cat='vo2max' library_size=4255
- 2026-07-10 09:40:12 WARNING [training_planner] match_zwo: no candidates for session_type=vo2max duration=60min target_if≈None primary_cat=vo2max fallbacks=['vo2max', 'vo2_short', 'vo2_ladder', 'anaerobic'] library_size=4255
- 2026-07-10 09:40:12 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='vo2max' target_dur=60 primary_cat='vo2max' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=50min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=50 primary_cat='threshold' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:40:19 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 09:40:19 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 09:40:49 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=0 updated=0 deleted=0 skipped=1 horizon=14d
- 2026-07-10 09:40:49 INFO [app] EVENT=icu_push_debounced pushed=0 updated=0 deleted=0
- 2026-07-10 10:09:02 INFO [db] EVENT=sync_start days=90
- 2026-07-10 10:09:02 INFO [domestique.profiles] _set_wprime: wprime_j=9119 J source=icu
- 2026-07-10 10:09:02 INFO [domestique.profiles] _set_pmax: pmax_w=416 W source=icu
- 2026-07-10 10:09:02 INFO [db] EVENT=sync_done status=ok wellness=91 activities=47
- 2026-07-10 10:09:02 INFO [db] Background sync completed
- 2026-07-10 10:20:07 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:20:07 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:20:09 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:20:09 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:20:10 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:20:10 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:20:11 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:20:11 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:20:31 WARNING [training_planner] match_zwo: no candidates for session_type=overunder duration=60min target_if≈None primary_cat=over_under fallbacks=['over_under', 'threshold'] library_size=4255
- 2026-07-10 10:20:31 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='overunder' target_dur=60 primary_cat='over_under' library_size=4255
- 2026-07-10 10:20:41 WARNING [training_planner] match_zwo: no candidates for session_type=overunder duration=60min target_if≈None primary_cat=over_under fallbacks=['over_under', 'threshold'] library_size=4255
- 2026-07-10 10:20:41 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='overunder' target_dur=60 primary_cat='over_under' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 10:20:42 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=53min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:20:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=53 primary_cat='endurance' library_size=4255
- 2026-07-10 10:20:50 WARNING [training_planner] match_zwo: no candidates for session_type=overunder duration=60min target_if≈None primary_cat=over_under fallbacks=['over_under', 'threshold'] library_size=4255
- 2026-07-10 10:20:50 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='overunder' target_dur=60 primary_cat='over_under' library_size=4255
- 2026-07-10 10:20:52 WARNING [training_planner] match_zwo: no candidates for session_type=overunder duration=60min target_if≈None primary_cat=over_under fallbacks=['over_under', 'threshold'] library_size=4255
- 2026-07-10 10:20:52 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='overunder' target_dur=60 primary_cat='over_under' library_size=4255
- 2026-07-10 10:20:53 WARNING [training_planner] match_zwo: no candidates for session_type=overunder duration=60min target_if≈None primary_cat=over_under fallbacks=['over_under', 'threshold'] library_size=4255
- 2026-07-10 10:20:53 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='overunder' target_dur=60 primary_cat='over_under' library_size=4255
- 2026-07-10 10:21:10 WARNING [training_planner] match_zwo: no candidates for session_type=overunder duration=60min target_if≈None primary_cat=over_under fallbacks=['over_under', 'threshold'] library_size=4255
- 2026-07-10 10:21:10 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='overunder' target_dur=60 primary_cat='over_under' library_size=4255
- 2026-07-10 10:21:12 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=0 updated=0 deleted=0 skipped=1 horizon=14d
- 2026-07-10 10:21:12 INFO [app] EVENT=icu_push_debounced pushed=0 updated=0 deleted=0
- 2026-07-10 10:21:15 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:15 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:20 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:20 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:21 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:21 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:25 WARNING [training_planner] match_zwo: no candidates for session_type=recovery duration=60min target_if≈None primary_cat=recovery fallbacks=['recovery', 'endurance'] library_size=4255
- 2026-07-10 10:21:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='recovery' target_dur=60 primary_cat='recovery' library_size=4255
- 2026-07-10 10:21:31 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:31 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:34 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:34 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=44min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=44 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=34min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=34 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=tempo duration=60min target_if≈None primary_cat=tempo fallbacks=['tempo', 'tempo_intervals', 'tempo_ladder', 'sweet_spot'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='tempo' target_dur=60 primary_cat='tempo' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=tempo duration=60min target_if≈None primary_cat=tempo fallbacks=['tempo', 'tempo_intervals', 'tempo_ladder', 'sweet_spot'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='tempo' target_dur=60 primary_cat='tempo' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=50min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=50 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=55min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=55 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=42min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=42 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=42min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=42 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=tempo duration=60min target_if≈None primary_cat=tempo fallbacks=['tempo', 'tempo_intervals', 'tempo_ladder', 'sweet_spot'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='tempo' target_dur=60 primary_cat='tempo' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=51min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=51 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=55min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=55 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=tempo duration=60min target_if≈None primary_cat=tempo fallbacks=['tempo', 'tempo_intervals', 'tempo_ladder', 'sweet_spot'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='tempo' target_dur=60 primary_cat='tempo' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=tempo duration=60min target_if≈None primary_cat=tempo fallbacks=['tempo', 'tempo_intervals', 'tempo_ladder', 'sweet_spot'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='tempo' target_dur=60 primary_cat='tempo' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=48min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=48 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=48min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=48 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=51min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=51 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=48min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=48 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:37 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:37 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:42 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:21:42 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:21:54 WARNING [training_planner] match_zwo: no candidates for session_type=tempo duration=60min target_if≈None primary_cat=tempo fallbacks=['tempo', 'tempo_intervals', 'tempo_ladder', 'sweet_spot'] library_size=4255
- 2026-07-10 10:21:54 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='tempo' target_dur=60 primary_cat='tempo' library_size=4255
- 2026-07-10 10:21:59 WARNING [training_planner] match_zwo: no candidates for session_type=tempo duration=60min target_if≈None primary_cat=tempo fallbacks=['tempo', 'tempo_intervals', 'tempo_ladder', 'sweet_spot'] library_size=4255
- 2026-07-10 10:21:59 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='tempo' target_dur=60 primary_cat='tempo' library_size=4255
- 2026-07-10 10:22:04 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:22:04 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:22:07 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:22:07 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:22:34 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=0 updated=1 deleted=0 skipped=5 horizon=14d
- 2026-07-10 10:22:34 INFO [app] EVENT=icu_push_debounced pushed=0 updated=1 deleted=0
- 2026-07-10 10:39:02 INFO [db] EVENT=sync_start days=90
- 2026-07-10 10:39:02 INFO [domestique.profiles] _set_wprime: wprime_j=9119 J source=icu
- 2026-07-10 10:39:02 INFO [domestique.profiles] _set_pmax: pmax_w=416 W source=icu
- 2026-07-10 10:39:02 INFO [db] EVENT=sync_done status=ok wellness=91 activities=47
- 2026-07-10 10:39:02 INFO [db] Background sync completed
- 2026-07-10 10:42:00 INFO [sleep_inhibit] sleep_inhibit: released
- 2026-07-10 10:42:12 INFO [migrate_profiles] AC2a archive migration: 1 icu + 1 wellness + 0 loose files; profiles=['default', 'emad2'] active=default
- 2026-07-10 10:42:12 INFO [migrate_profiles] AC2a archive migration done: {'ran': True, 'icu': 0, 'wellness': 0, 'loose': 0, 'unmatched': 0}
- 2026-07-10 10:42:12 INFO [domestique.profiles] Normalized C:\Users\emadm\.domestique\profiles\default\.env permissions 0o666 -> 0o600
- 2026-07-10 10:42:12 INFO [app] plan adoption decision: verdict=skip (profile stamp newer); root_stamp=2026-06-25 18:03:15.156564 prof_stamp=2026-07-03 09:58:30.087844 root_mtime=1783005809.9442081 prof_mtime=1783693324.3939116 multi_profile=True latch_present=False root=C:\Users\emadm\.domestique\plans\current_plan.json prof=C:\Users\emadm\.domestique\profiles\default\plans\current_plan.json
- 2026-07-10 10:42:12 INFO [db] EVENT=sync_start days=90
- 2026-07-10 10:42:12 INFO [domestique.profiles] _set_wprime: wprime_j=9119 J source=icu
- 2026-07-10 10:42:12 INFO [domestique.profiles] _set_pmax: pmax_w=416 W source=icu
- 2026-07-10 10:42:12 INFO [db] EVENT=sync_done status=ok wellness=91 activities=47
- 2026-07-10 10:42:12 INFO [db] Background sync completed
- 2026-07-10 10:42:13 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=0 updated=0 deleted=0 skipped=5 horizon=14d
- 2026-07-10 10:42:13 INFO [app] EVENT=icu_push_daily pushed=0 updated=0 deleted=0 needs_reconnect=None error=None
- 2026-07-10 10:42:16 INFO [httpx] HTTP Request: GET https://api.github.com/repos/platypus45/domestique/releases/latest "HTTP/1.1 200 OK"
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:16 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:16 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:17 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-10 10:42:17 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-10 10:42:17 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-10 10:42:17 WARNING [training_planner] content_classification cache stale (workouts dir has changed since last classification) — rerun `python3 scripts/classify_library_content.py --all`
- 2026-07-10 10:42:18 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-10 10:42:18 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-10 10:42:18 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:18 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:18 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:18 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:42:18 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:42:18 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:45:11 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:45:11 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:45:33 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:45:33 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:45:36 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=0 updated=0 deleted=0 skipped=5 horizon=14d
- 2026-07-10 10:45:36 INFO [app] EVENT=icu_push_debounced pushed=0 updated=0 deleted=0
- 2026-07-10 10:45:52 WARNING [training_planner] match_zwo: no candidates for session_type=threshold duration=60min target_if≈None primary_cat=threshold fallbacks=['threshold', 'threshold_ladder', 'sweet_spot', 'over_under'] library_size=4255
- 2026-07-10 10:45:52 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='threshold' target_dur=60 primary_cat='threshold' library_size=4255
- 2026-07-10 10:47:15 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=0 updated=0 deleted=0 skipped=5 horizon=14d
- 2026-07-10 10:47:15 INFO [app] EVENT=icu_push_debounced pushed=0 updated=0 deleted=0
- 2026-07-10 10:47:23 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-10 10:47:23 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-10 10:47:23 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:47:23 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:47:23 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:47:23 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:47:23 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:47:23 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:47:23 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-10 10:47:23 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-10 10:47:23 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:47:23 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:47:23 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:47:23 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:47:23 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:47:23 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:47:47 WARNING [training_planner] match_zwo: no candidates for session_type=recovery duration=60min target_if≈None primary_cat=recovery fallbacks=['recovery', 'endurance'] library_size=4255
- 2026-07-10 10:47:47 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='recovery' target_dur=60 primary_cat='recovery' library_size=4255
- 2026-07-10 10:48:00 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:48:00 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:48:03 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:48:03 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:48:10 WARNING [training_planner] match_zwo: no candidates for session_type=recovery duration=60min target_if≈None primary_cat=recovery fallbacks=['recovery', 'endurance'] library_size=4255
- 2026-07-10 10:48:10 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='recovery' target_dur=60 primary_cat='recovery' library_size=4255
- 2026-07-10 10:48:25 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-10 10:48:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-10 10:48:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:48:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:48:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:48:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:48:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:48:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:48:25 WARNING [training_planner] match_zwo: no candidates for session_type=sweetspot duration=60min target_if≈None primary_cat=sweet_spot fallbacks=['sweet_spot', 'sweet_spot_ladder', 'threshold', 'tempo'] library_size=4255
- 2026-07-10 10:48:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='sweetspot' target_dur=60 primary_cat='sweet_spot' library_size=4255
- 2026-07-10 10:48:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:48:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:48:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:48:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:48:25 WARNING [training_planner] match_zwo: no candidates for session_type=z2 duration=60min target_if≈None primary_cat=endurance fallbacks=['endurance', 'endurance_intervals', 'recovery'] library_size=4255
- 2026-07-10 10:48:25 WARNING [app] E_MATCH_ZWO_NO_CANDIDATES session_type='z2' target_dur=60 primary_cat='endurance' library_size=4255
- 2026-07-10 10:48:41 INFO [domestique.icu_push] EVENT=icu_calendar_push pushed=0 updated=0 deleted=0 skipped=5 horizon=14d
- 2026-07-10 10:48:41 INFO [app] EVENT=icu_push_debounced pushed=0 updated=0 deleted=0
Advertisement
Add Comment
Please, Sign In to add comment