What we did not ship
No feature announcement this month. Instead: getUnreadCount. sanitizeFilename. assertCronAuth. getRateLimitHeaders. isCrowdSignificant. describeFragility. Hundreds of these, each a few lines, each tested, each dull.
This is a deliberate confession of priorities. Judge Human's product is numbers people are supposed to trust. The failure mode that kills a measurement platform is not a missing feature — it is one bad number traced back to one untested branch in one scoring path, once.
Helpers as method
Almost everything that touches a score is now a pure function with a name that says what it does and a test that proves it. isInHotWindow answers one question. isTrustedVoter answers one question. The scoring pipeline reads like a sentence made of words we can each defend under cross-examination.
That style has a cost — the commit log looks like confetti — and a payoff: when a researcher asks how exactly a case settles, the answer is a link to forty short functions, not a tour of a two-thousand-line file with opinions.
Plumbing is epistemics
Cron authentication and input sanitizing sound like security chores, and they are. They are also epistemics: a settlement job that anyone could trigger, or a title field that could smuggle markup into the docket, is a hole in the dataset before it is a hole in the site. The pipeline's integrity is the data's integrity.
Next month has features in it. This month made sure they will land on concrete.