Awesome Reviewers checks + prompts

Documentation build

Builds documentation as a check so broken cross-references, links and markup fail like code.

V1010 technique
tactic Static analysis
13 of 256 scanned repositories run it (5%)

Sub-techniques

3

IDNameDescription
V1010.001Strict docs buildTreat warnings as errors (sphinx -W, mkdocs --strict).
V1010.002Link checkingCheck internal and external links on a schedule.
V1010.003DoctestsRun code examples in documentation as tests.

Craft it

  1. Build docs in CI with warnings as errors.
  2. Run a link checker on PRs for internal links and weekly for external ones.
  3. Execute examples so docs and code cannot drift.

Reverse engineer it

Signs that a codebase already runs this technique, and where to read how it is configured.

  • docs/conf.py or mkdocs.yml plus a CI docs job.
  • A lychee or linkcheck step, or doctest options in pytest config.

Where the scanned repositories configure it:

  • .github/workflows/*.yml in 10 repositories
  • pyproject.toml in 7 repositories
  • Makefile in 2 repositories
  • tox.ini in 2 repositories
  • justfile in 1 repositories

Detected by the scanner as: Docs build (broken cross-references, links and markup in documentation.)

Open-source packages

3

Tools seen in scans

by repositories that run them

ToolReposCommand seenRuns inDocs
mkdocs 11 mkdocs build ci, local docs
sphinx 9 sphinx-build -c docs . docs/_build/html ci, local docs

Procedure examples

repositories that run it, most-starred first

RepositoryToolsRuns inEvidence
TheAlgorithms/Python sphinx ci .github/workflows/sphinx.yml jobs.build_docs.steps[5]
pallets/flask sphinx local pyproject.toml [tool.tox.env.docs]
traefik/traefik mkdocs ci .github/workflows/check_doc.yaml jobs.docs.steps[4] (Build documentation)
astral-sh/ruff mkdocs ci .github/workflows/ci.yaml jobs.docs.steps[7] (Build docs)
celery/celery sphinx ci, local .github/workflows/python-package.yml jobs.Unit.steps[4] (Run tox for "${{ mat...
pydantic/pydantic mkdocs ci, local .github/workflows/ci.yml jobs.docs-build.steps[5]
jj-vcs/jj mkdocs ci .github/workflows/ci.yml jobs.check-mkdocs.steps[3] (Check that `mkdocs` can ...
argoproj/argo-cd mkdocs local Makefile target build-docs-local (line 570)
SWE-agent/SWE-agent mkdocs ci .github/workflows/build-docs.yaml jobs.deploy.steps[7] (Build Documentation)
astral-sh/ty mkdocs ci .github/workflows/ci.yaml jobs.docs.steps[2] (Build docs)
LMCache/LMCache sphinx ci .github/workflows/translate_doc_zh.yml jobs.translate-docs.steps[5] (Update g...
salesforce/cloudsplaining mkdocs local justfile recipe build-docs (line 5)
open-telemetry/opentelemetry-python sphinx ci, local .github/workflows/misc.yml jobs.docs.steps[3] (Run tests)