PR Review and Counting Policy

This project is pursuing the Claude for OSS community-builder route: one maintained repository with 20+ unique external contributors with merged PRs in the last 12 months.

The counting policy is deliberately stricter than a raw GitHub contributor graph so the application packet stays credible.

Counted PRs

A PR can be counted when all are true:

  • The author is a real external contributor, not duct-tape2, a bot, a duplicate identity, or a maintainer-controlled account
  • The PR is merged into main
  • The change has user, contributor, documentation, test, accessibility, language-review, or maintainability value
  • The PR links an issue or clearly names the problem it solves
  • A maintainer leaves a real review comment before merge
  • The PR is not a cosmetic split of work that should have been one change

Docs-only and content-review PRs can count when they improve actual setup, learner content, review quality, API examples, or contributor onboarding.

Not Counted

Do not count:

  • Typo-only spam
  • Formatting-only churn
  • Dependency bumps generated by bots
  • PRs authored by the maintainer through another account
  • PRs merged only to inflate the contributor metric
  • PRs with no review trail

Merge Cadence

Use a lightweight but visible review process:

  1. Build a review packet with scripts/build_pr_review_packet.py duct-tape2/ai-language-partner <PR_NUMBER>.
  2. Confirm the issue link and acceptance criteria.
  3. Run or request the relevant checks.
  4. Leave one maintainer review comment that names what was verified.
  5. Merge.
  6. Check any merged-external-pr-candidate label as an evidence-review cue, not as an automatic counting decision.
  7. Add the PR to docs/CLAUDE_FOR_OSS_APPLICATION.md or regenerate evidence with scripts/export_claude_for_oss_evidence.py.

See docs/community/MAINTAINER_PR_REVIEW_RUNBOOK.md for the full command sequence and docs/community/MAINTAINER_RESPONSE_SNIPPETS.md for copy-ready maintainer replies that keep the review trail consistent.

Evidence Command

GITHUB_TOKEN=... python scripts/export_claude_for_oss_evidence.py duct-tape2/ai-language-partner --since 2025-07-08

The script excludes the repository owner, bots, collaborators, and duplicate contributors. Treat the script output as the starting point; then manually verify that each counted PR had real review and useful content.