How it works out where I am, and what it refuses to look at.
A short film about this is coming.
For a week in Provincetown my planner kept prescribing a gym 250 miles away. Upper B — push, downstairs, every morning, while I was on Cape Cod. It had two ways to know I had left and both were blind: Provincetown sits inside my home timezone, and my calendar entry for the trip is one word, ptown. The old check scanned calendar titles for words like vacation, travel, flight, away, and that title had none of them. A line in my own notes had said where I was since August. Nothing read it. The fix was not a longer word list. Five sources each cast a vote now. The answer carries how sure it is. When they disagree, it asks me one question — and that is the only thing it is allowed to ask.
Nothing is trusted alone. Each source votes with its own evidence, the votes are reconciled into one place, and the confidence that comes out of that decides what anything downstream is permitted to do with it.
The same five sources, on three real shapes of day. Nothing here is live — these are worked examples.
Nothing on any calendar. The ring is on the home timezone.
Home. high · 0.85
Saturday 5 September 2026 — the verdict on the day this shipped.
Provincetown, until Tuesday 8 September. high · 0.85
Saturday 12 September 2026.
Away, place unknown, until Saturday 12 September. medium · 0.60
These are not a policy I wrote down. They are in the module, at the top, above the code that does the work.
NEVER inferred: GPS, Find My, network beacons, photo EXIF, IP geolocation, or another person’s calendar read as his location. the first lines of the module
I share a calendar with my husband. An event on it that the owner check attributes to him is his trip, and it is dropped rather than read as where I am. An event it cannot settle is kept and flagged, never quietly discarded — dropping the ambiguous ones once cost me my own dance class.
It does not geocode either. The place names come from a short list inside the system, eight places so far, each with its coordinates and timezone; a new one is added before a trip. A geocoder that turns “Stay at a bed & breakfast” into a plausible wrong point is exactly the confident wrong answer this thing exists to stop. A miss is honest: it records that I am away, that it does not know where, and it asks.
Three things it will never ask. It never asks whether I am home — home is where I already am, and being wrong about that costs one line of text. It never asks about a trip more than a day out. And it asks once per trip: the question is stamped with the place and the dates, and a window that has been asked about is never asked about again.
The system has a constitution — a short list of constraints, each one recovered from something I actually said. A design that breaks one is wrong even if it works. Six of them decided the shape of this.
No source is trusted alone, and the confidence is written onto the answer at the moment it is made — so nothing downstream has to work out for itself how much to believe.
When two sources name two different places it does not pick the prettier one. It takes the majority, calls the answer low, and asks me.
A low answer changes what the day says about itself. It never changes what the day asks me to do. A wrong away day costs me the session — go for a swim, in a New York February. A wrong home day costs one sentence. The cost runs one way, so the hedge does too.
One question for a whole trip, and only when an answer would change what happens. Anything that is allowed to ask has to be stingy about it, or I stop reading.
What leaves the machine is a town and a pair of coordinates rounded to about a kilometre, and only when the answer is high or confirmed. Below that, the public feed says nothing at all.
It runs every hour and files a receipt each time, carrying the confidence and how many sources stood behind it. A failed feed is itself a source, so a dead calendar shows up as a dead calendar instead of quietly reading as a week at home.
This page does not say where I am. It is about how the answer gets made. The rest of the tools are on the home page.