Skip to content

Pulse

Three states, and why age is never evidence.

Pulse is the part of Staleless that decides whether a page still matches the product.

StateIndicatorMeaning
CurrentFilled dotIt matches the product.
ReviewHalf dotAge or a signal suggests checking.
OutdatedHollow ringThere is evidence it no longer matches.

The distinction between the last two is the whole design.

A five-year-old page that is still correct is still correct. Calling it outdated teaches people to ignore the indicator, and that is how every staleness tool that treats age as decay ends up unused.

So age raises a suspicion, and a suspicion can reach review. Only evidence reaches outdated.

evidenceweight

Something we can point at that is now wrong. A link to a page that no longer exists. An asset that is gone. An API change that breaks what the page documents.

suspicionweight

Nobody has checked recently enough to know. A review that is overdue. A page with no owner.

Every signal on a page names which it is, so you can disagree with the reasoning rather than only with the verdict.

  • your pages, and the links, anchors and assets in them;
  • your review schedules;
  • your code, where a repository is connected;
  • your OpenAPI documents, between syncs.

Pulse builds a graph between your pages and your code, so it can answer three questions:

  • this route is described on these two pages, at these lines;
  • this page describes these four things in the code;
  • this file changed, so look at these pages, and here is why.

The last one is why the graph exists. A diff names files, and nobody can turn a list of files into a list of pages by hand on a codebase of any size.

A route path such as /teams/{id}/invite and an environment variable name such as DATABASE_URL are matched anywhere on a page. Both are distinctive enough that a text hit means what it looks like.

Other names are matched more narrowly, because a common English word that happens to be a function name would match everything.

There are no confidence scores here. The rule either matched a name or it did not, and a number would only look like judgement.

SurfaceWhat it shows
The pageIts state, and every signal behind it.
Project healthThe aggregate, and the reasons.
The inboxWhat to do about it.
staleless checkThe same answer in your build.

Note

Pulse never edits a page and never publishes. It reports.