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
Mathieu Moran
0f76ae3f84
docs: Phase 26 updated — 10 closed, BUG-11/12 and GPS lat/lon fix documented
2026-08-11 16:43:06 -04:00
Mathieu Moran
e223a43170
docs: BUG-11 closed — GPS lat/lon from API, 30s staleness aligned across pages
2026-08-11 16:18:59 -04:00
Mathieu Moran
f6a50b6bc1
docs: BUG-06 closed — migration shifted 3593 rows +4h EDT, recomputed 43 trips, times now correct
2026-08-11 14:53:18 -04:00
Mathieu Moran
7ce2a1e5f5
fix: BUG-06 — convert naive Pi timestamps to TZ-aware before upload so Postgres TIMESTAMPTZ stores correct instant
2026-08-11 14:47:37 -04:00
Mathieu Moran
7a6de8b589
docs: BUG-07 closed — history.js rewrite verified on Pi and server
2026-08-11 14:33:38 -04:00
Mathieu Moran
fa93384a8e
Rewrite history.js: loading spinner, active-row highlight, unified state, 300ms debounce, signal guards throughout trip loader
2026-08-11 05:37:15 -04:00
Mathieu Moran
e6bc488e84
docs: update Phase 26 with dual-radio + trip fix details
2026-08-11 03:57:06 -04:00
Mathieu Moran
ae7f6358b2
docs: update BUG-01 dual-radio fix status
2026-08-11 03:46:18 -04:00
Mathieu Moran
f9d967e71c
docs: update Phase 26 bug count in PLAN.md
2026-08-11 03:02:02 -04:00
Mathieu Moran
f7d305a036
docs: update Phase 26, simplify readme project status, de-emoji
2026-08-11 02:57:01 -04:00
Mathieu Moran
e733ab1ac1
docs: update Phase 26 progress, de-emoji readme, refresh status
2026-08-11 02:50:57 -04:00
Mathieu Moran
786d5b8f3e
docs: close BUG-03/05, add Phase 27 features + renumber Android to Phase 28
2026-08-11 02:04:55 -04:00
Mathieu Moran
aa1f247d80
docs(bugs): record Phase 26 deploy/verify status for BUG-03 and BUG-05
...
Amend the Phase 26 progress note: BUG-03 was deployed to the Pi (pulled to
4f975ad , service active, /api/health ok) and real in-car behavior verification
is still pending; BUG-05 is code-ready but the unraid/server side is not yet
deployed (needs docker compose build api && docker compose up -d api).
2026-08-11 01:23:39 -04:00
Mathieu Moran
4f975ad079
docs(bugs): mark BUG-03 and BUG-05 FIXED ( e2f2314) + update PLAN Phase 26
...
BUGS.md: BUG-03 and BUG-05 status -> FIXED with commit ref and fix summary.
PLAN.md: Phase 26 items 3 and 5 marked FIXED; add progress note.
2026-08-11 00:48:05 -04:00
Mathieu Moran
3e626830d5
docs: sign off Phase 25 road test, add BUGS.md, renumber Android to Phase 27
2026-08-10 23:42:39 -04:00
Mathieu Moran and Copilot
d216aac97e
Refresh docs and reorder roadmap
...
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:48:59 -04:00
Mathieu Moran and Copilot
457e3dcc08
Record dashboard card order swap
...
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:43:46 -04:00
Mathieu Moran and Copilot
6ee6215662
Record status action verification
...
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:41:34 -04:00
Mathieu Moran and Copilot
8907c51016
Add status page quick actions
...
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:40:22 -04:00
Mathieu Moran and Copilot
ef38ec92b4
Record status page verification
...
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:38:16 -04:00
Mathieu Moran and Copilot
5406935bf5
Add Pi status page
...
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:37:26 -04:00
Mathieu Moran and Copilot
a7302229d1
Tighten Pi dashboard layout
...
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:25:30 -04:00
Mathieu Moran and Copilot
f6de658a88
docs: record live Pi GPS status check
...
- note that GPS thread is alive on the Pi but has no current fix
- clarify that missing live updates are currently due to absent GNSS fix data
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:18:50 -04:00
Mathieu Moran and Copilot
be40bbc15f
feat: add GPS status endpoint and dashboard indicator
...
- add /api/gps/status for thread/fix-age visibility
- surface GPS status in Pi health and live GPS cards
- add tests for app_gps status snapshots
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:18:14 -04:00
Mathieu Moran and Copilot
675bffb4a4
feat: add server-side device deletion
...
- add portal API and UI action to delete non-default devices
- protect the configured portal default device from deletion
- document that trip/history pages still scope to the single DEVICE_NAME
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:09:15 -04:00