Field testing
We dogfood pedestrian routing on foot. The unit of work is a golden route: an O/D pair frozen server-side with all three product profiles (Fast, Calm, Safe) and one shared time bucket. Walkers open a golden on the phone, walk it, and annotate guidance nodes on the spot.
How to run a walk
- Open /golden-routes on desktop. Pick a saved route and hit Walk — a QR popover appears.
-
Scan the QR with your phone (or copy the link).
It opens
/field?golden=<routeId>. - On first run, enter the name you want attached to your walks. It's saved on this browser and reused across goldens (also used as the submitter name on /map).
- Walk the highlighted route. Tap a numbered node to annotate it. Hit Finish walk at the end to rate the walk.
First walk? Read the Annotating a node and During the walk sections below first.
Annotating a node
Numbered dots on the map mark guidance points (turns, arrivals, decision points). Tap one to open the annotation sheet. Pick any chips that apply, add a note, hit Save. Tap as many or as few as the walk needs.
| Chip | Use when |
|---|---|
| Couldn't walk it | The path the route used isn't accessible (closed, blocked, gated, doesn't exist on the ground). |
| Path doesn't match reality | You can walk it, but the geometry/way differs from what's actually there. |
| Wrong entrance / access | The route reaches a building or entry point through the wrong side, or misses a more natural entry. |
| Confusing / unneeded instruction | The guidance text here is misleading, wrong, or superfluous. |
| My location looked wrong | Your GPS dot jumped or sat well off the path — note where the engine thought you were vs. where you actually were. |
| Loop / backtrack | Route doubles back or loops unnecessarily. |
| Time/distance look wrong | The ETA or distance at this point is obviously off relative to what you experienced. |
| Calm-specific | Traffic/noise/crowds here, or a quieter street nearby that Calm missed. |
| Safe-specific | This spot feels dark/isolated/exposed, or a stressful crossing the route forces. |
| Fast-specific | Pointless detour here. |
| Other | Use the note to explain. |
During the walk
- The map keeps itself centered on you. Panning pauses that; the round button (bottom right) re-centers.
- The screen stays awake while the app is open. GPS stops when the phone is locked — that's fine, it re-acquires in a second or two when you pull the phone back out at the next decision point.
- GPS drifts near stations and tall buildings. Always tap the dot you mean — your blue position dot is a hint, not the anchor.
- For photos, just use the camera app. Tick the "I took photos" checkbox in the annotation sheet — we EXIF-join them by time + GPS later.
- Notes — keyboard mic is your friend. Dictate anything that doesn't fit a chip.
- Annotations queue locally and sync when you have connectivity. A dead spot never loses an annotation.
After the walk
Tap Finish walk to open the end-of-walk sheet. Rate each row once.
| Rating | Question |
|---|---|
| Route correctness | Was the route usable as the route — did the geometry, instructions, and turns hold up against reality? |
| Mode alignment | Did the route deliver what its mode promised? (Calm → calm; Safe → safe; Fast → fast and direct.) |
Why we test it this way
- Frozen routes. A golden route is the same geometry, the same edge attributes, the same instructions for every walker — so two annotations on the same node compare like with like. Live routing would let geometry drift between walkers and over time.
- Tap the node, not the GPS. Annotations attach to the node the walker taps, not to the GPS fix. GPS is recorded as evidence only — it's least reliable exactly where guidance defects cluster.
- Mode-specific chips. Calm-, Safe-, and Fast-specific chips force the question of whether the route is good for its mode, not just good in the abstract.
What this round will not tell us
- Night routing. Daytime walks only. Lights/darkness perception is a separate opt-in probe.
- Search clarity. Whether you can create a route and understand the options in the live app is a frontend signal — measured in a separate live-app session, not on the end-of-walk sheet.
- Inter-rater drift on unwalked modes. Walkers only rate the mode they actually walked — armchair ratings of the unwalked options aren't collected.
Ratings are descriptive health metrics — no decision hangs on a rating alone. Issue chips and their joins to the golden route are what drives fixes.