Commit Graph
131 Commits
Author SHA1 Message Date
Mathieu Moran 5039b90bc6 feat(android): release signing + R8-verified signed APK (Phase 28.8) 2026-08-15 20:44:45 -04:00
Mathieu Moran ce7c7c63b4 docs: note system back handling in trip replay 2026-08-15 20:38:32 -04:00
Mathieu Moran 699ce16dab feat(android): UI redesign — light web-matching theme, dark top bar + bottom nav (Phase 28.7) 2026-08-15 20:18:53 -04:00
Mathieu Moran 0cb89596b0 feat(android): remote portal access — login, stats, trips, dashcam (Phase 28.6) 2026-08-15 20:11:26 -04:00
Mathieu Moran a40fced666 feat(android): trip history list + route replay map (Phase 28.5) 2026-08-15 19:51:06 -04:00
Mathieu Moran cadde5aeee feat(android): live dashboard screen (Phase 28.4) 2026-08-15 19:40:47 -04:00
Mathieu Moran b6f8416b5c feat(android): upload all + per-file retry (Phase 28.3 complete) 2026-08-15 19:32:05 -04:00
Mathieu Moran bb7623211e docs: add DS3231 RTC to Hardware section (BUG-18) 2026-08-15 18:46:51 -04:00
Mathieu Moran 7a9be9d63f docs: BUG-25 security hardening + Phase 9.5 notes 2026-08-15 18:29:35 -04:00
Mathieu Moran bfc5ee1615 docs: add BUG-24 (OBD stall reconnect) + GPS replay jitter fix notes 2026-08-15 17:48:23 -04:00
Mathieu Moran ff49609f2a docs: note Pi checkbox batch trip delete in Phase 29 2026-08-15 16:56:28 -04:00
Mathieu Moran c9d36cca33 docs: close BUG-23 + record fix in Phase 29
Move BUG-23 to Resolved with commit 78aea2d and verification (Pi trips
57 -> 49 after rebuild). Add matching entry to PLAN.md Phase 29.
2026-08-15 16:08:29 -04:00
Mathieu Moran 90cfd7bd04 docs: close BUG-22 (smoothed GPS max verified) 2026-08-14 23:04:42 -04:00
Mathieu Moran d9314969d8 fix: BUG-22 include GPS-derived speeds in trip max (Pi + server) 2026-08-14 22:56:37 -04:00
Mathieu Moran 7c8f27b84d docs: close BUG-21 (GPS-speed fallback verified) 2026-08-14 22:37:21 -04:00
Mathieu Moran 2fee2de357 fix: BUG-21 GPS-speed fallback in server route replay 2026-08-14 22:34:29 -04:00
Mathieu Moran 0fa6cc4988 docs: add BUG-21 — OBD speed dropout mid-drive, GPS-only replay 2026-08-14 22:22:16 -04:00
Mathieu Moran 9af71e2395 docs: close BUG-20 (trip IDs renumbered 1..10, sequence clamped) 2026-08-14 22:05:09 -04:00
Mathieu Moran 01c7fdf0c4 fix: BUG-20 clamp trips sequence after recompute + renumber migration 2026-08-14 21:45:26 -04:00
Mathieu Moran 25f57603c6 feat: FEAT-14 dual T3U — wlan2 uplink, wlan1 AP, onboard wlan0 fallback 2026-08-14 21:32:30 -04:00
Mathieu Moran c7329186f4 docs: note SIM868 RTC set via AT+CCLK (BUG-18 follow-up) 2026-08-14 19:03:09 -04:00
Mathieu Moran bf4f3d377e docs: close BUG-17 + BUG-18 — DS3231 RTC verified across power loss 2026-08-14 18:35:10 -04:00
Mathieu Moran bfdd1c2285 docs: BUG-18 DS3231 installed + working (I²C 0x68), pending power-cycle test 2026-08-14 18:05:17 -04:00
Mathieu Moran c44026e511 docs: BUG-18 plan — DS3231 (I²C) + SIM868 CR1220 RTC backup 2026-08-13 16:13:51 -04:00
Mathieu Moran f94c50b2ee docs: close BUG-16 (fixed + verified), update Phase 29 status 2026-08-13 15:53:52 -04:00
Mathieu Moran 2172de6055 docs: add Phase 29 — round-2 road-test bug fixes (2026-08-13) 2026-08-13 15:11:53 -04:00
Mathieu Moran 2e8e42a165 android: byte-level upload progress + debug logging; document 28.3
- UploadWorker: ProgressRequestBody (okio ForwardingSink) tracks real bytes
  sent including already-received chunks, instead of chunk count
- Robust chunk reads (loop skip/read) + Log.d/Log.e debug logging
- DashcamViewModel: upload state/progress debug logging
- android/plan.md + PLAN.md: 28.3 marked in progress with built items
2026-08-12 19:00:00 -04:00
Mathieu Moran e8746e5d69 docs: FEAT-03 extended — simulated odometer in trip replay + trip list 2026-08-12 17:12:45 -04:00
Mathieu Moran 14981c066b docs: WiFi role swap + hotspot settings feature (FEAT-11)
- PLAN.md: Hardware section + Architecture #2/#5 updated for wlan1=AP(5GHz), wlan0=uplink
- FEATURES.md: FEAT-11 SHIPPED (hotspot SSID/password UI + 5GHz role swap)
- readme.md: hardware table + hotspot feature line updated
- deploy/readme.md: profile names/bands updated (home-wifi on wlan0, Hotspot-local 5GHz on wlan1)
2026-08-12 16:25:16 -04:00
Mathieu Moran f4b93006e3 docs: finalize UI branding section — sidebar, logo, mobile dark theme 2026-08-12 05:39:30 -04:00
Mathieu Moran b69ae3a229 docs: UI branding — dark sidebar + YARIS-OBD Racing Sans One logo 2026-08-12 04:33:46 -04:00
Mathieu Moran 78cd05c4cb docs: add BUG-14 (Nominatim slowness), update PLAN.md Phase 26 (14 bugs)
- BUG-14: Nominatim replaced with offline reverse_geocoder — instant, no network
- PLAN.md Phase 26: 13 → 14 bugs resolved, updated result summary
2026-08-12 03:31:50 -04:00
Mathieu Moran ad10a873b4 docs: close BUG-13, update PLAN.md Phase 26 (13 bugs resolved)
- BUG-13 moved from Open to Resolved with fix summary
- PLAN.md Phase 26: 12 → 13 bugs, added BUG-13 entry
- deploy memory: Unraid SSH deploy key + updated rebuild command
2026-08-12 03:08:57 -04:00
Mathieu Moran 7a6c1750c9 docs: update Phase 28.1/28.2 status in PLAN.md + android/plan.md
- PLAN.md: Phase 28 header now shows 28.1 ✅, 28.2 ✅, 28.3–28.7 pending
- PLAN.md: added 28.1 gate-pass + 28.2 dashcam browser/download summaries
- android/plan.md: 28.2 rewritten from NOT STARTED to DONE with real
  implementation details (PiApi, DashcamScreen, DashcamViewModel,
  WorkManager DownloadWorker, Coil thumbnails, bottom nav)
2026-08-12 02:29:22 -04:00
Mathieu Moran e30b85d218 feat: portal-wide device selector — session-based, all pages now use selected device
- _portal_device_id() reads from session, falls back to DEVICE_NAME env var
- GET/POST /api/v1/portal/select-device for selector data + set
- Dropdown in server base.html topbar, JS populates from API, page reloads on change
- All portal pages (overview, trips, dashcam, DTC, device settings) now use selected device
2026-08-12 01:40:51 -04:00
Mathieu Moran 13cb8b4361 docs: Phase 27 DONE (3 shipped) — odometer sync, trip ID, hotspot docs; FEAT-08 shipped, FEAT-09 wontfix 2026-08-12 01:16:53 -04:00
Mathieu Moran 79222c8bb5 fix: disabling sync via settings page no longer returns spurious error 400 2026-08-12 00:02:54 -04:00
Mathieu Moran 0fea9718bc fix: prevent sync from overwriting Pi odometer — odometer is Pi→Server only 2026-08-11 23:53:42 -04:00
Mathieu Moran 7de8948e08 docs: update Hardware and Architecture sections — dual-radio, GPIO power, 4G modem, phone hotspot uplink 2026-08-11 22:06:05 -04:00
Mathieu Moran 34253b3ffb feat: manual odometer baseline — Settings field computes baseline + trip distance, Dashboard shows (manual) label 2026-08-11 18:51:11 -04:00
Mathieu Moran 887a001723 docs: Phase 27 started — 7 feature candidates ready 2026-08-11 18:40:35 -04:00
Mathieu Moran 19c538389b docs: Phase 26 rewritten — all 12 bugs documented consistently. Phase 27/28 cleaned up. 2026-08-11 18:29:03 -04:00
Mathieu Moran f017a301f3 docs: Phase 26 complete, Phase 27 ready — 7 feature candidates 2026-08-11 18:20:07 -04:00
Mathieu Moran 341437c2d4 docs: Phase 26 COMPLETE — BUG-02 closed, all 12 bugs resolved. GPS has 7 sats, needs clear sky for fix. 2026-08-11 18:17:31 -04:00
Mathieu Moran 0f6d9b20a2 docs: Phase 26 DONE — BUG-01 closed, all 11 bugs resolved. BUG-06/12 moved to Resolved. 2026-08-11 17:19:42 -04:00
Mathieu Moran e54391b5c9 docs: FEAT-06/07/08/09 — trip ID column, hotspot auto-connect, predictable IP, mDNS 2026-08-11 17:17:12 -04:00
Mathieu Moran b4d622827a docs: revert BUG-01 — AP tested but phone-hotspot uplink not yet verified 2026-08-11 17:06:39 -04:00
Mathieu Moran ea47cff489 docs: BUG-01 closed — tested on iOS + Android, yaris.local resolves, Phase 26 DONE 2026-08-11 17:04:20 -04:00
Mathieu Moran 675ee67260 docs: revert BUG-01 to IN PROGRESS — needs owner test before closing 2026-08-11 16:47:58 -04:00
Mathieu Moran dc1c1e5f06 docs: BUG-01 closed — dual-radio bench-verified, Phase 26 DONE (11 closed, 1 hardware) 2026-08-11 16:46:57 -04:00