docs: refresh AGENTS.md source-of-truth and entry rules wording

AGENTS.md called README.md the single source of content truth though category intros live in website/data/category_intros/, and it repeated wording CONTRIBUTING.md already holds.

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Vinta Chen
2026-10-19 13:17:14 +08:00
co-authored by Claude
parent 50a304c9aa
commit abb48989d8
+3 -3
View File
@@ -2,13 +2,13 @@
An opinionated guide to the best Python frameworks, libraries, and tools.
[README.md](README.md) is the single source of content truth; `website/` renders it into the static site: [awesome-python.com](https://awesome-python.com/).
[README.md](README.md) is the source of truth for entries, and `website/data/category_intros/` holds the category page intros; `website/` renders both into [awesome-python.com](https://awesome-python.com/).
## Entry Rules
[CONTRIBUTING.md](CONTRIBUTING.md) holds the admission rules, quality requirements, rejection rules, entry format, and ordering. Apply it whenever adding, removing, or rewording an entry — direct commits included, not only PR reviews.
Apply [CONTRIBUTING.md](CONTRIBUTING.md) (admission, entry format, ordering) whenever adding, removing, or rewording an entry, direct commits included.
- Every keep/drop reason must be verified against current online data at decision time — download counts, repo activity and archived status, PyPI metadata, project docs. Judging tiers — obvious choice vs challenger — also requires WebSearch evidence (adoption trajectory, community sentiment), not download counts alone. Training-data recollections are not evidence; label anything unverifiable as a judgment call.
- Verify every keep/drop reason against current online data at decision time: download counts, repo activity and archived status, PyPI metadata, project docs. Tier calls (obvious choice vs challenger) also need WebSearch evidence of adoption trajectory and community sentiment. Training-data recollections are not evidence; label anything unverifiable as a judgment call.
- Checks stay read-only: judge whether a listed project installs or works from its PyPI metadata (`requires_python`, classifiers, wheel tags) and issue tracker, never by installing or running it, since that runs untrusted code.
- A download count is not automatically independent demand. When one listed entry depends on another, check `requires_dist` on PyPI before citing the depended-on entry's count: mkdocs-material hard-depends on mkdocs, so mkdocs' figure exceeded mkdocs-material's by only about one percent and nearly all of it was mkdocs-material pulling it in.
- One entry per commit when adding or deleting entries. Exceptions: a prune sweep is one commit per section, its body listing each removal with its reason; format, wording, or categorization changes may be bundled. Cross-section re-homes ride the originating audit's commit (both sides of the move in one diff).