Skip to content

[Test Infra] Tighten PR template + add CI enforcement for tests/docs #965

Closed

Description

@oxoxDev

Parent epic: #773

Summary

Add machine-checkable CI gate so PRs cannot merge with unchecked Submission Checklist boxes that lack N/A: <reason> justification, and so the test coverage matrix stays in sync with feature changes.

Scope

  • Tighten .github/PULL_REQUEST_TEMPLATE.md — every checkbox needs either [x] or [ ] N/A: <reason>. Add line for "coverage matrix updated" and "happy + failure/edge case covered".
  • Cross-link docs/TESTING-STRATEGY.md and docs/TEST-COVERAGE-MATRIX.md from the template.
  • New workflow .github/workflows/pr-quality.yml:
    • check-coverage-matrix — parses matrix, fails if any feature ID 0.1.1..13.5.3 missing (uses scripts/feature-ids.json).
    • pr-checklist-guard — parses PR body via gh api, fails on unchecked boxes without N/A:.
    • markdown-link-check over docs/*.md.
  • Soft-fail (continue-on-error: true) for first 2 weeks; flip to required after.
  • Label-based skip for docs / chore PRs.
  • scripts/check-coverage-matrix.mjs + scripts/check-pr-checklist.mjs + Vitest unit tests for parser (5 cases: all-checked pass, unchecked-no-N/A fail, unchecked-with-N/A pass, empty body fail, ignore code-block boxes).

Acceptance

  • CI fails (soft) on a PR with unchecked checklist + no N/A:.
  • CI fails on a PR that adds a feature without updating the matrix.
  • Parser unit tests green.
  • 2-week soft window documented in PR body.

Out of scope

  • Coverage thresholds (delta-coverage) — separate issue.

Activity

  1. added
    testTest additions, fixes, or harness work.
    on Apr 27, 2026
  2. moved this from In progress to Done in Team Openhumanon Apr 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

testTest additions, fixes, or harness work.

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions