Commit Graph

  • 8a23147dc8 Add cache-busting version query to static assets master Bastian Wagner 2026-08-16 13:51:28 +02:00
  • 450e4e935f Mark live sync updates plan tasks complete Bastian Wagner 2026-08-16 13:32:13 +02:00
  • 13864a77f7 Auto-dismiss sync toasts after a few seconds Bastian Wagner 2026-08-16 13:32:03 +02:00
  • eb97374578 Live-update the account page status block after sync Bastian Wagner 2026-08-16 13:18:23 +02:00
  • 8d73dea7dd Live-update dashboard rows and show toasts after sync actions Bastian Wagner 2026-08-16 13:16:10 +02:00
  • cc69b3ebb6 Extract dashboard row and sync-all form into reusable partials Bastian Wagner 2026-08-16 13:14:08 +02:00
  • 59b39f10cb Vendor htmx and add toast/loading-state CSS Bastian Wagner 2026-08-16 13:12:49 +02:00
  • f70f511907 Add UserRepository.dashboard_row for single-row refresh Bastian Wagner 2026-08-16 13:11:29 +02:00
  • a0890126bc Add dashboard summary tiles Bastian Wagner 2026-08-16 12:48:44 +02:00
  • 9df6a619d2 Mark visual redesign plan tasks complete Bastian Wagner 2026-08-16 11:03:22 +02:00
  • a9a46e949f Turn the next-sync indicator into a live ticking countdown Bastian Wagner 2026-08-16 11:03:07 +02:00
  • aa9e289185 Fix unstyled number inputs on the system scheduling form Bastian Wagner 2026-08-16 11:03:07 +02:00
  • b6d4be97c1 Redesign UI with dark cockpit color and typography tokens Bastian Wagner 2026-08-16 10:59:58 +02:00
  • a74ab95f3f Show next scheduled sync time on every page Bastian Wagner 2026-08-16 10:58:53 +02:00
  • 5d75aa328d Add design spec for dark cockpit-style visual redesign Bastian Wagner 2026-08-16 10:48:43 +02:00
  • 722570c9d3 icon Bastian Wagner 2026-08-15 21:51:53 +02:00
  • ff5dab6f0d intervall Bastian Wagner 2026-08-15 21:44:13 +02:00
  • f7b04337ce auth für user Bastian Wagner 2026-08-15 21:34:40 +02:00
  • adfe14dfa8 logging Bastian Wagner 2026-08-15 21:05:55 +02:00
  • 420d089760 log Bastian Wagner 2026-08-15 20:54:35 +02:00
  • 2aba1265af mail notification Bastian Wagner 2026-08-15 20:47:02 +02:00
  • 7c9e19ba0b errors Bastian Wagner 2026-08-15 20:31:57 +02:00
  • 85b0d861b4 feat: restyle admin UI and add per-user sync run history Bastian Wagner 2026-08-15 20:19:31 +02:00
  • 990a55af14 fix: address final review findings for sync-scheduler-web plan Bastian Wagner 2026-08-15 17:09:55 +02:00
  • aed9d6bb48 test: cover multi-user sync acceptance Bastian Wagner 2026-08-15 16:43:45 +02:00
  • 6657124983 feat: handle Garmin MFA and activity retries Bastian Wagner 2026-08-15 16:33:16 +02:00
  • c2f13611b9 feat: add operational sync controls Bastian Wagner 2026-08-15 16:24:11 +02:00
  • fd50bbbab7 feat: schedule periodic user synchronization Bastian Wagner 2026-08-15 16:14:25 +02:00
  • 1d414d6298 feat: isolate concurrent user syncs Bastian Wagner 2026-08-15 16:08:00 +02:00
  • 4aaf490bc5 style: use SQLAlchemy 2.0 select() in sync test helpers Bastian Wagner 2026-08-15 15:54:52 +02:00
  • c4e986e3f8 feat: add resumable per-user sync pipeline Bastian Wagner 2026-08-15 15:53:27 +02:00
  • 1d5bbdb2a2 feat: add durable sync state transitions Bastian Wagner 2026-08-15 15:33:46 +02:00
  • 2f65c0178c fix: address final review findings for service clients plan Bastian Wagner 2026-08-15 15:23:14 +02:00
  • b48008c16e feat: import FIT activities into Garmin Bastian Wagner 2026-08-15 15:02:37 +02:00
  • 21074a35da feat: fetch MyWhoosh activities and FIT files Bastian Wagner 2026-08-15 14:52:03 +02:00
  • 01d2266c8e feat: add MyWhoosh API login Bastian Wagner 2026-08-15 14:45:19 +02:00
  • a28d06ffdd feat: add MyWhoosh token persistence Bastian Wagner 2026-08-15 14:38:50 +02:00
  • ef9ca9eeca fix: harden FIT patcher error boundary and verify patched metadata Bastian Wagner 2026-08-15 14:29:40 +02:00
  • 95aa8507f0 test: add big-endian round-trip coverage for FIT field patching Bastian Wagner 2026-08-15 14:15:05 +02:00
  • 475635936b test: verify FIT binary preservation Bastian Wagner 2026-08-15 10:49:13 +02:00
  • e1e57d9b6b test: cover product_name string field write path in FIT patcher Bastian Wagner 2026-08-15 10:41:20 +02:00
  • 5944ef364f feat: patch FIT creator as Edge 1030 Plus Bastian Wagner 2026-08-15 10:35:36 +02:00
  • a47ad77071 feat: parse and validate FIT containers Bastian Wagner 2026-08-15 10:27:05 +02:00
  • 4599b2b71c feat: add FIT CRC calculation Bastian Wagner 2026-08-15 10:21:09 +02:00
  • 49aba8efb4 fix: address final review findings for foundation plan Bastian Wagner 2026-08-15 10:14:26 +02:00
  • 5931a57f82 build: package local admin service Bastian Wagner 2026-08-15 09:56:50 +02:00
  • d2ac079870 fix: reject empty credential fields with 400 instead of 500 Bastian Wagner 2026-08-15 09:50:05 +02:00
  • b39842fe2c feat: add encrypted sync user management Bastian Wagner 2026-08-15 09:41:21 +02:00
  • da6b94ca2f feat: add local admin authentication Bastian Wagner 2026-08-15 09:33:27 +02:00
  • 93232a809e feat: encrypt stored service credentials Bastian Wagner 2026-08-15 09:26:40 +02:00
  • 318d7c8ddb feat: add SQLite persistence models Bastian Wagner 2026-08-15 09:18:57 +02:00
  • 91728cba86 feat: bootstrap FastAPI configuration Bastian Wagner 2026-08-15 09:14:33 +02:00
  • c7e834bf14 roadmap Bastian Wagner 2026-08-15 09:07:40 +02:00
  • a2387341bd reference Bastian Wagner 2026-08-15 09:04:38 +02:00
  • f6da346e18 plans + specs Bastian Wagner 2026-08-15 09:00:41 +02:00