The Corpus Entry We Trusted for Its Age
The entry had been in the corpus longer than any other. We had built the corpus incrementally — a few records at a time, over seasons that blurred into each other — and this one had survived every reorganization, every schema change, every moment when we sat down to prune and found ourselves reluctant. Age felt like proof. It felt like the entry had earned its place by simply outlasting everything around it.
That is not how evidence works, and we knew that. We had written it down somewhere, even. Sample size beats recency; a proven performer outranks a hot streak. What we had never written down, because it seemed too obvious to need saying, was the corollary: a large old sample can be just as wrong as a small new one, and it will be wrong with much more authority.
The entry in question was a basketball player's per-game production record, assembled across what we estimated at the time was the most complete longitudinal stretch we held for any individual. It had survived our gates. It had survived our shrinkage pass. It had survived, we eventually understood, because nobody wanted to be the one to question the oldest thing in the room.
A free online course in data analytics with Python: statistics, visualization and finding the signal in the numbers.
Why the oldest entry in the corpus carried the most unexamined weight
The entry covered roughly nine seasons of production data for a single player. We had collected it in pieces, from different source formats, and stitched it into a single longitudinal record. The stitching was the problem, though we did not see that yet. What we saw was nine seasons, which felt like bedrock.
Our standard minimum at the time was forty appearances before we would score a player at all. This entry cleared that threshold in its first two seasons alone. So the corpus treated it as highly reliable — the internal flag we use for entries above a certain sample depth was set, and once that flag is set, the entry tends to move through the rest of the process without much friction. That is by design. The friction is supposed to happen earlier.
What the flag did not capture was that three of those nine seasons had been collected under a different statistical convention. The counting method for one of the key production categories had changed between the fourth and fifth season on record, and the earlier figures had never been restated. We had not noticed because we had never looked at the entry critically — we had only looked at it admiringly, the way you look at something old that has not broken yet.
How we tried to use the entry's depth as a stabilizing anchor
Our shrinkage pass pulls confident estimates back toward the base rate. The more data behind an entry, the less it gets pulled — which is the correct behavior when the data is clean. For this entry, the shrinkage coefficient was near its minimum. We were, in effect, trusting the entry almost fully.
We used it as a reference point for a cluster of similar players we were evaluating that week. When a newer entry diverged from what we expected, we checked it against this one as a sanity test. It was functioning as a kind of anchor — the stable old record that told us whether a newer record looked plausible. Nadia pointed this out during a review session, not as a criticism at the time, just as an observation about how the workflow had developed.
"We're using it as ground truth," she said. "That's different from using it as data."
She was right, and we noted it, and then we kept doing it anyway because the alternative — treating the oldest entry in the corpus as uncertain — felt like pulling a load-bearing wall. This is one of the places where the corpus looking full does real damage. Fullness is not the same as correctness, but it reads that way from the inside.
What the miscount in the early seasons actually cost us
The counting discrepancy across the statistical convention change meant that the player's production in seasons one through four was systematically overstated by a margin we later estimated at roughly twelve percent for the affected category. Twelve percent is not enormous in isolation. Compounded across nine seasons and used as an anchor for a cluster of evaluations, it was enough to pull our ratings for the whole group in a consistent direction.
We caught it during a calibration review, which is the correct place to catch things and also the most expensive place to catch them — by then, several ratings had already been graded. The graded ratings showed a coherent pattern of overestimation that we had initially attributed to market efficiency in that stat category. It was not market efficiency. It was a stitching error in a record we had never questioned because it was old.
There is a version of this failure that is about process — we should have restated the early seasons when the convention changed, we should have flagged mixed-convention entries differently. All of that is true. But the more uncomfortable version is about psychology: we trusted the entry because trusting it was comfortable, and we had been trusting it long enough that the trust had stopped feeling like a choice. This is related to a problem we have written about separately — entries we stopped trusting without being able to articulate why are the mirror image of entries we kept trusting without being able to articulate why. Both are the same failure of examination.
The calibration gap from that review period was the widest we had recorded for basketball in two years. We had stated high confidence, and our observed accuracy did not match it. That is the definition of miscalibration, and it was entirely self-inflicted.
What the entry looked like after we went back through the stitching
We restated the first four seasons using the later convention's counting method, where we could reconstruct the figures. Where we could not reconstruct them cleanly, we flagged the season as imputed and reduced its weight in the aggregate. The entry shrank. Not in the number of appearances — those were accurate — but in the effective confidence the corpus assigned to it. It went from near-minimum shrinkage to something closer to the middle of the range.
It is still in the corpus. It is still one of the longer records we hold. But it no longer functions as an anchor, because we added a convention-consistency check to the intake process that flags any entry assembled across a known counting-method change. That check now runs before the sample-depth flag is set, which means the flag cannot confer high confidence on a record that has not cleared the consistency review.
We also changed how we talk about old entries internally. The word "established" used to mean something like "trustworthy by virtue of age." We retired that usage. An entry is now described as established only if it is both large and internally consistent — and those are checked separately, because they are separate things. There is a related lesson in entries that aged well without teaching us anything: longevity in the corpus is a neutral fact, not a credential.
Nadia's comment about ground truth versus data is now written on the wall near the calibration dashboard. Not as a rule — we do not post rules — but as a question we want to keep asking.
I am still not certain how long an entry has to sit in a corpus before it starts to feel load-bearing. Nine seasons was enough for us. I suspect four would have been, given the right conditions. The age itself may be almost irrelevant — it might be that any record you have never seriously challenged will eventually start to function as ground truth, and the only variable is how long before someone notices.
Note: PlayerGem is a fictional analytics shop and these accounts are invented. Nothing here is a pick, a recommendation, or betting or investment advice, and the players, teams and competitions described do not exist.