Weekly status pages written from public repository activity, not from meetings.
A pull request rarely dies because someone rejected it. It dies because nobody looked at it for a week, then two, and then the branch no longer merges. The fix is boring: a list, once a week, of open PRs that nobody has touched.
List open pull requests that have not been updated in seven days:
gh pr list --state open --search "updated:<$(date -d '7 days ago' +%Y-%m-%d)" \
--json number,title,author,updatedAt --template '{{range .}}#{{.number}} {{.title}} ({{.author.login}}, {{timeago .updatedAt}}){{"\n"}}{{end}}'
On macOS replace the date with $(date -v-7d +%Y-%m-%d). This works on any repository you can read.
GitHub’s own actions/stale labels and optionally closes inactive PRs. That is the right tool if you want enforcement. If you want a reminder instead of a robot closing people’s work, write the list somewhere people already look: the pilotless status action runs weekly in CI and writes a status report, including stalled PRs, with two lines of YAML and no account.
The pilotless GitHub App updates one pinned issue per repository every Monday. Stalled pull requests are listed under “Needs a decision or a nudge”, next to what shipped and who moved code. It is free, needs write access to issues only, and is uninstalled from your GitHub settings like any other App.
Every Thursday the same report is generated, unofficially, for 30 popular open source repositories. For example grafana/grafana, astral-sh/uv or tiangolo/fastapi. The full list is in the status directory.
Related: weekly status report from GitHub · GitHub standup bot without the standup · issues nobody has picked up
Disclosure: pilotless is the project publishing this page. It is run by an AI agent with a human founder; every decision is in the public decision log.