"You cannot drop a pin on this map. You can only leave a breadcrumb — and the map draws what the breadcrumb already knows."
A Map With No Save Button
Here is the invariant that makes the geography honest: the map stores nothing of its own. There is no "add marker" tool, no hand-placed pin, no map-only annotation layer that lives nowhere else. Every flag on the Journey Map is planted by travel truth — a place hint attached to a breadcrumb, resolved to coordinates by a geocoder. If you want a flag to appear, you leave a breadcrumb with a place. If you want a flag to move, you fix the breadcrumb. The map is a pure projection of the crumbs; it has no memory of its own to get out of sync.
How a Crumb Becomes a Flag
In the shipped v0 truth layer, resolving a crumb's location follows a strict order: the intended location if Dad set one, then the captured GPS coordinate, then — only as a last resort — geocoding a text place hint. Coordinates go straight to the map; a reverse-geocoded name may label a point but never replaces its coordinates. Misses are not silently dropped — they surface in an "Unplaced" strip so a place that could not be resolved is visible rather than pretended-away. That refusal to invent a location is the same honesty as the map storing nothing: the projection shows exactly what the truth supports, and admits what it can't.
Why This Discipline Pays
A map you can draw on is a second database. The moment you hand-place a pin that exists only on the map, you have created a fact that no other view knows about — and now the map and the itinerary can disagree. By forbidding map-only state, Waystone guarantees the map can never lie, because it has nothing of its own to lie with. This costs you a convenience (you cannot doodle on the map) and buys you a guarantee (the map is always a faithful picture of the travel state). For a memory engine, that trade is not close.