v0.1.4
A stale path that is only a link LABEL is a display name, not a claim (#11).
see [`docs/STATE-MD-LIFECYCLE.md`](reference/state-md.md) for the field reference
The label went stale, the target resolves, and nobody following that link lands anywhere wrong. docproof already skipped the reference form [label]: target on exactly this reasoning; judging the inline form while skipping the reference form was an inconsistency, and the inline form is the common one.
Measured before it was built, across 134 cloned repositories: 137,937 inline links, 7,426 with a path-shaped label, 5,529 where the label is not in the tree and the target resolves. 4,838 of those resolve to a URL and almost all are org/repo slugs used as labels (shadcn/ui, encode/broadcaster) which were never repository paths. 687 resolve to a file on disk, which is the real class, and 4 of the 217 corpus findings sit in it.
A URL target earns no skip, and that is the whole safety of the rule: docproof cannot fetch, and when a repository deletes a file the blob URL pointing at it dies too.
Only when the label does not resolve. Skipping every label whose target works turned 85 gsd-core claims into skips to remove 3 findings; the other 82 named real files being checked correctly. Tightened, gsd-core goes 34 broken / 1085 checked to 31 / 1082.
173 tests, 3 operating systems, Python 3.10 to 3.13.