Commit Graph
13 Commits
Author SHA1 Message Date
Vinta ChenandClaude c39e4d6bf5 docs: restrict sub-items to awesome-* also-see links
Removed the companion-project clause from the Sub-item definition in
CONTEXT.md's vocabulary. Its examples (aws-sdk-pandas under pandas,
flower under celery) went stale this sitting: those companions were
promoted, re-homed, or deleted. Per the maintainer's 2026-08-16 policy
decision, sub-items are now reserved for awesome-* also-see links only
- a companion project must earn a full Entry in its proper Use Case or
not be listed.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-16 16:47:34 +08:00
Vinta ChenandClaude deae0e0b72 docs: broaden Obvious Choice signal and note Cap has no floor
Extend the known failure-mode list for PyPI download counts beyond
model weights to any project consumed outside pip (SDK downloads like
renpy, deployed services like thumbor). Also clarify that the per-Use-
Case Cap is a ceiling, not a floor: a freshly minted Use Case may hold
a single entry.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-16 15:57:29 +08:00
Vinta ChenandClaude 194b386d06 docs: codify the Override rule in CONTRIBUTING and CONTEXT
Resolves decision 10's reservation on maintainer word: the 3+2/5 cap
numbers stay as written — across the full prune they held everywhere
except a handful of explicit overrides — and the override practice
itself becomes a written rule: the maintainer may exceed any limit
for a specific entry or use case by explicit decision, case-by-case,
carrying no weight for submissions. CONTEXT.md gains the matching
Override vocabulary entry.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-16 15:25:15 +08:00
Vinta ChenandClaude 5f6f1f020e docs: clarify that standard-library modules lead the use case outright
Maintainer correction to the previous amendment: stdlib sorts at the
top of the whole use case, not merely first within its tier. No README
movement results — the stdlib admission rule (a standard-library
module is listed only where it is itself the obvious choice) means
every stdlib entry already sits in the first tier, so tier-top and
use-case-top coincide; the rule text now states the intent directly.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-16 13:39:31 +08:00
Vinta ChenandClaude 15c4064ee1 docs: amend Entry Ordering so standard-library modules sort first in tier
Maintainer rule change: built-ins lead their tier instead of sorting
last with the other no-signal entries — a stdlib module that earns a
slot is the default answer, so it reads first. Several stdlib modules
in one tier stay alphabetical. Non-stdlib no-signal entries (agent
skill packs, projects distributed outside PyPI) still sort last in
tier. README reorder of already-audited sections follows in a style
commit; unaudited sections pick the rule up at their own audit.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-16 13:36:30 +08:00
Vinta ChenandClaude 5da1d16de1 docs: define Second Tier in CONTEXT.md
The 2026-08-16 Database & Storage audit exposed a vocabulary gap: four adjudicated entries (clickhouse-driver, dogpile.cache, django-cacheops, django-haystack) are neither Obvious Choices nor trajectory-backed Challengers but demoted incumbents occupying Challenger slots, and the sitting had to improvise the term. The maintainer ratified it during review. A demoted incumbent counts against the two Challenger slots, but the adoption-trajectory bar gates only new admissions, not demotions.

Also from the same sitting: psycopg2 was deliberately left unlisted under Database Drivers > PostgreSQL (282M downloads/month as psycopg2-binary, pepy 2026-08-16) because psycopg 3 is the new-work answer and v2 is legacy install base. Recorded here so the next PostgreSQL audit knows it was a decision, not an oversight.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-16 02:40:44 +08:00
Vinta ChenandClaude 5ece46f262 docs: cover awesome-* links in the Sub-item definition
Follow-up to d07440f: the definition's placement clause described only
companion projects (flower/celery), but awesome-* also-see lists are
Sub-items too.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-16 01:39:14 +08:00
Vinta ChenandClaude 7447549805 docs: define Sub-item in CONTEXT.md
The device now has two precedents (aws-sdk-pandas under pandas, flower
under celery in the 2026-08-16 Web Development Audit) plus the awesome-*
links; future Audits need the term - an indented link that holds no slot
and rides its parent outside the Cap.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-16 01:35:17 +08:00
Vinta ChenandClaude 83f6cebd93 feat: add audit-the-list skill for recurring section audits
Packages the audit process proven across the shortlist-reform sweeps
as a reusable skill: resolve scope from the arguments (AskUserQuestion
when ambiguous or absent), fetch live evidence for every entry
(BigQuery downloads, repo state, PyPI metadata), draft verdicts with
restructure-before-cap and tier promotions/demotions, review through
the verdict-preview page, execute one commit per section on explicit
go, and record durable conclusions into CONTRIBUTING.md, CLAUDE.md,
AGENTS.md, and CONTEXT.md. CONTEXT.md gains the Audit glossary term
(the reform sweeps were the first Audits). Rules stay single-sourced in
CONTRIBUTING.md — the skill carries process only.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-16 00:39:29 +08:00
Vinta ChenandClaude 846a6bdb91 docs: order entries by downloads/month within tiers, not alphabetically
Maintainer decision 2026-08-16, amending the ordering half of the
Challenger-marking rule: within a use case, obvious choices still come
first and challengers still follow (position stays the marker), but
each tier now orders by PyPI downloads per month descending instead of
alphabetically. Entries without a download signal (stdlib modules,
agent skill packs) sort last within their tier, alphabetically.
Updated in CONTRIBUTING.md (Entry Ordering), CONTEXT.md (Challenger),
and CLAUDE.md (Key Rules).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-16 00:02:30 +08:00
Vinta ChenandClaude 663fad0baf docs: mark Challengers by ordering, not description text
A 2026-08-15 grilling round replaced the Challenger marking
convention: within a Use Case, Obvious Choices are listed first
(alphabetically), then Challengers (alphabetically), with no marker
in the entry text. Update the Challenger definition in CONTEXT.md.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-15 13:43:21 +08:00
Vinta ChenandClaude c413b8f1f6 docs: fix stale and inaccurate definitions in CONTEXT.md
CONTEXT.md review found several definitions had drifted from the
settled shortlist-reform decisions:
- Entry: pypi-name placeholder contradicted the serves-Python-developers
  scope test, which explicitly treats implementation language and
  packaging as irrelevant; now named by PyPI package name when one
  exists, else repository name
- Subcategory: example referenced a name that no longer matches the
  current README structure (Mock, not Mocking)
- Thematic Group: referenced elsewhere in the doc but never defined;
  added
- Use Case, Obvious Choice, Split: updated to match the settled
  cap/evidence/restructure decisions (maintainer-only structure
  changes, PyPI-download judgment with known failure modes noted,
  Split considered before trimming)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-15 13:12:28 +08:00
Vinta ChenandClaude 63146cc863 docs: capture shortlist-reform decisions on shortlist-reform branch
Records the outcome of a grilling session with the maintainer that
settled the redesign of awesome-python from a catalog into a curated
shortlist of Obvious Choices per Use Case. Execution is held pending
maintainer go-ahead, so these files let a fresh agent resume without
re-litigating settled decisions:

- CONTEXT.md: glossary of the editorial vocabulary (Use Case, Obvious
  Choice, Challenger, Displacement, Split, etc).
- docs/adr/0001-shortlist-not-catalog.md: the ADR recording the
  decision, considered options, and consequences (status: proposed).
- .gitignore: docs/ was wholesale-ignored; carve out docs/adr/ so the
  ADR can be tracked.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-15 13:00:16 +08:00