Files
arah2/.planning/phases/06-turn-by-turn-guidance-live-driving/06-DISCUSSION-LOG.md
T

3.5 KiB
Raw Blame History

Phase 6: Turn-by-Turn Guidance (Live Driving) - Discussion Log

Audit trail only. Do not use as input to planning, research, or execution agents. Decisions captured in CONTEXT.md — this log preserves the analysis.

Date: 2026-10-24 Phase: 06-turn-by-turn-guidance-live-driving Mode: default (interactive)

Areas Discussed

Routing engine stack — THE PIVOT #2 (user-added area)

The user added: "The kind of tech (stack) used to achieve the hard $0 no-vps rule, eg. WASM (sql.js), lunr.js, if need to port valhalla so it's hostable on cloudflare pages as js, etc."

Straight answers given:

Claim Verdict
Port Valhalla to JS/WASM Infeasible — C++/Boost/protobuf, memory-mapped multi-GB tile stores; multi-month build-system surgery; recorded as D-02 so it is never re-proposed
geojson-path-finder Rejected — demo-grade (distance-only, no alternatives/one-ways)
Engine A: Worker + R2 graph + A* CHOSEN, built this phase — KL graph (~30–80MB) in R2, typed-array/WASM A* in the Worker; $0, no VPS, fork-uploads its own graph, privacy-preserving; RoutingSource backend #2
Engine B (fully client-side webview) Documented evolution of A, post-v1
Question Options presented Selection
Engine powering guidance rerouting Engine A in phase 6 / fixture-corridor now + engine next phase / quick engine C interim Engine A in phase 6 — GUID-02 gets TRUE rerouting; fixture-corridor compromise unnecessary

Reroute semantics

Question Options presented Selection
Trigger machine thresholds+grace (ON_ROUTE→OFF_ROUTE→REROUTING→ON_ROUTE, storm guard) / naive per-fix / research decides Thresholds + grace machine
Snapping authority router snaps / client pre-snap Router snaps

Guidance UX surface

Question Options presented Selection
Layout top banner + bottom guidance card / single bottom sheet Top banner + bottom guidance card
ETA smoothing EMA + deadband / raw per-fix EMA + deadband
Haptics + PX-03 approach+arrive haptics + confirm + swipe-disable / defer haptics Full set
Camera locked follow + user-unlock / free camera Locked follow + user-unlock

Backgrounded turn-cards

Question Options presented Selection
Push loop envelope + Cron push / app-queued sends Envelope + Cron push (60–120s)
Card rendering glyph+text card / bitmap map snapshot / pre-minimize client raster Glyph + text card (bitmaps deferred v1.x)

Replay verification + battery

Question Options presented Selection
GUID-02 verification scripted replays + 1 real drive / real drives only Scripted replays + 1 real drive
Battery cadence distance-throttled high-acc / adaptive accuracy Distance-throttled high-acc (≥10m or ≥5s)

Corrections Made

User's added stack area redirected the phase: the phase-5 deferral of the WASM-router was superseded by building engine A now. The reconciliation round from phase 5 (SC3 amendment) was extended, not reversed: fixtures remain backend #1 (demo path); engine A becomes a real backend #2; the router-pending state survives as graph-edge degradation.

Auto-Resolved

Not applicable.

External Research

Roadmap recommends /gsd-research-phase framing for "best-effort projection" + snapshots — resolved in-discussion (glyph+text cards; cron push loop). Remaining research surface for planning's light pass: graph build toolchain, A* in-Worker feasibility numbers, cron/rate limits.