docs.yml 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. # Documentation quality gate (task 48).
  2. #
  3. # Runs the local link checker over README.md, AGENTS.md, and docs/*.md so a
  4. # stale file or heading reference fails CI. This is the "markdown-link-check
  5. # equivalent" named by the task; it is deliberately offline (only relative
  6. # links are validated) so the job needs no network beyond checkout/setup.
  7. #
  8. # Task 42 owns the main CI workflow. This job is intentionally a separate
  9. # workflow file so it can be added to that pipeline as a required step
  10. # (`docs` job name) without a conflict, and it also runs standalone.
  11. name: docs
  12. on:
  13. push:
  14. paths:
  15. - "README.md"
  16. - "AGENTS.md"
  17. - "docs/**"
  18. - "scripts/check_doc_links.py"
  19. - ".github/workflows/docs.yml"
  20. pull_request:
  21. paths:
  22. - "README.md"
  23. - "AGENTS.md"
  24. - "docs/**"
  25. - "scripts/check_doc_links.py"
  26. - ".github/workflows/docs.yml"
  27. workflow_dispatch: {}
  28. permissions:
  29. contents: read
  30. jobs:
  31. link-check:
  32. name: docs link-check
  33. runs-on: ubuntu-24.04
  34. steps:
  35. - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
  36. - uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
  37. with:
  38. python-version: "3.x"
  39. - name: Check documentation links
  40. run: python3 scripts/check_doc_links.py