Every CONTRIBUTING.md guide on the first page of results is the same checklist of sections: a setup guide, a pull request workflow, a code of conduct, a link to issue templates. GitHub's own documentation explains what the file mechanically does, surface a link to it when someone opens an issue or a pull request, and stops there. None of it says anything about which of those sections actually stops a real pull request from getting closed without merging on your specific project.
A mixed-methods study of ten large, mature open-source projects curated 265,325 pull requests. An industrial report it cites put the baseline at 8 percent of pull requests wasted, meaning rejected or abandoned, industry-wide. Reading 354 abandoned ones by hand, the researchers found difficulty addressing a maintainer's comments, lack of review, and unresolved CI failures each present in more than 20 percent of them. This pack sorts your own closed-without-merging history into the same kind of categories, then marks each one preventable by a document, partially addressable, or a genuine judgment call no checklist fixes.
Loomwork, the open-source validation library in the worked example, ran that sort against twelve months of history: 240 external pull requests, 185 merged, 55 wasted at 22.9 percent, 2.9 times the industry baseline. Missing or failing tests was the single largest category at 14. 9 of those 14 traced back to one cause invisible from the pull request alone: an integration test dependency on a local Postgres extension that the setup documentation never named. The Setup Failure Log sheet is what surfaced it.