"A price isn't a fact about the world. It's a fact about what one source said, at one moment. Store it that way."
Market data is observation data
It's tempting to think of a stock price as a number — the price. But there's no such thing as "the" price sitting in the world waiting to be read. There's what a particular provider reported, for a particular market date, at a particular fetch time. Keep encodes exactly that humility: every quote and FX row is an observation, and it records four things alongside the value — the market date it applies to, the fetch time it was retrieved, the source that provided it, and the provider ticker used. The number is never stored naked.
Why the metadata is not optional
Each piece of provenance answers a question you will eventually need:
- Market date — is this today's close, or last Friday's, because the market's been shut over a long weekend?
- Fetch time — how old is this observation right now? Was it pulled five seconds ago or five hours ago?
- Source — did this come from the primary provider, or from a confirmed fallback? Those may differ slightly, and you deserve to know which you're looking at.
- Provider ticker — which symbol at that provider produced it? Ticker conventions differ between sources, and a mismatch here is a whole class of subtle bug.
Strip any of these away and the value gets more trustworthy-looking and less trustworthy in fact.
The calm this buys
This ties straight back to the north star. Because every number carries its own provenance, Keep never has to pretend an old value is fresh or hide where something came from. It can simply show you: "this price, from this source, as of this date, this many minutes old." That honesty is what lets the surface stay calm — you're never being shown a confident number that's secretly stale, so you never get the nasty surprise that trains you to distrust the whole tool.