-
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