Docs-only. The PyPI Summary cited a superseded benchmark score (0.905) while the long description said 0.903 — the package page contradicted itself on the line most developers read first. The reproduced result for the current engine is 0.903 overall: #2 of all tools, #1 free on opendataloader-bench (reading order 0.920, tables 0.911, headings 0.847).
scripts/release-gate.sh
Runs against the built wheel before upload and fails on:
- banned claims or dead links, in the metadata or the shipped code
- a superseded benchmark score presented as pdfmux's
- a Summary whose score disagrees with the canonical one
- a hardcoded
__version__
Every check exists because that exact defect already shipped: an unverified benchmark claim (1.8.1), version drift into signed manifests (1.8.3), a superseded score in the Summary (1.8.4). It is deliberately context-aware, so it doesn't fire on competitors' legitimate scores — a gate that cries wolf is the prose gate it replaces.