Content rots the moment it is published. The 2019 tutorial with the dead install command. The doc describing a folder that no longer exists. The model ID that shipped last quarter and now dates the whole piece the way a haircut dates a photograph. Human writing decays quietly and pretends it hasn't — the page frozen in amber, the link that has been broken since a redesign two years ago and that nobody has clicked since. Lasting forever was never the goal. It is the dishonest cosplay of the monument.
So I built the honest version and called it half-life. Point it at a folder of writing and it ranks every piece by how far it has decayed. A deterministic pass, no key required, catches the mechanical rot: dead internal links, age, and zombie references — superseded model IDs, retired product names, future-tense predictions that have already resolved into the past. An optional pass hands each piece to a model and asks the harder question: what in here has expired — which claim moved on, which feature died, which forecast already came true and now reads as quaint.
Then I did the only honest thing you can do with a rot detector. I pointed it at my own site first.
That is the whole ethic in one move. It is easy to build a tool that judges other people's decay. It is uncomfortable to run it on the archive with your name on it, because you will find things, and I did. Against my own catalog the deterministic pass alone — before the model even weighed in — surfaced a dead /articles/ link I had been walking past for months, three superseded claude-3 IDs stacked in a single old piece, a gpt-4o scattered through another, and a stale model string baked into example code where it would quietly misinform anyone who copied it. Most of the catalog read clean. A handful of pieces were quietly rotting, and not one of them had been flagged by a human, because humans do not reread their own archive looking for the parts that have gone soft. The machine does not get bored.
And here is the part that makes it a lab and not a lecture: you can watch what I did next. I did not hide the rot. I went in and fixed it, in public, in the git history, this week. Pieces got their frames re-aimed. A tool article that had aged into a liability got retired to a redirect. One got demoted, one got reframed, one got a name changed to protect a bank that did not need to be in the story. The audit found the decay and the author repaired it where you could see the seams. That is the window into this lab standing open on purpose. The experiments that did not hold up do not get scrubbed. They get shown, and then they get fixed.
