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
Mathieu Moran and Copilot
690cf0a5d4
docs: record live Phase 25.5c deployment validation
...
- mark Phase 25.5c complete in PLAN
- record unraid migration/deploy and Pi API smoke tests
- note sync-ack metadata and temp provisioning helper validation
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:05:39 -04:00
Mathieu Moran and Copilot
ba682fbf3a
feat: add multi-device provisioning and local remote-config UI
...
- add multi-device portal device management, key rotation, and sync request APIs
- add Pi settings UI for remote server URL, device name, and API key
- add local test-connection and sync-now actions
- make upload and config sync reuse dynamic shared credentials
- add Phase 25.5c migration and docs updates
Co-authored-by: Copilot <[email protected] >
2026-08-10 18:02:09 -04:00
Mathieu Moran and Copilot
fbc41a5db5
docs: record live Phase 25.5b sync verification
...
- update plan with live portal route deployment status
- document fixed Pi sync blockers and successful round-trip test
- refresh passing test count after runtime sync coverage additions
Co-authored-by: Copilot <[email protected] >
2026-08-10 17:48:42 -04:00