Files
troupe-standup/wizard-work/ledger/README-github-python-repos.md
T

50 lines
2.2 KiB
Markdown

# GitHub — top 100 Python repositories by stars
Artifact: top 100 public GitHub repositories, ranked by star count (language: python).
## Provenance
- Source: GitHub REST Search API, `GET /search/repositories`
- Query: `language:python&sort=stars&order=desc&per_page=100` (HTTP 200)
- Retrieved: 2026-10-23T01:0X:25Z (UTC). Raw payload held in the sibling JSON.
- Extraction: `extract_github_python_repos.py` (Python stdlib only).
- Verification: `verify_github_python_repos.py` — re-queries the API and diffs the
artifact; exit 0 == artifact matches the live response, exit 1 == mismatch.
## Files
- `github-python-repos-2026-10-23.csv` — machine-readable table: rank, full_name,
owner, description, language, stars, forks, open_issues, created_at, updated_at,
homepage, html_url. Descriptions are newline-free and full (no truncation).
- `github-python-repos-2026-10-23.json` — parsed rows plus snapshot metadata
(stamp, total_count from the payload).
- `github-python-repos-2026-10-23.md` — human-readable table with links; the
description column is truncated to 140 chars **for display only**.
- `extract_github_python_repos.py` — extractor.
- `verify_github_python_repos.py` — verifier.
## Schema (CSV)
| column | type | note |
|---|---|---|
| rank | int | 1..100, shutter order |
| full_name | string | "owner/repo" |
| owner | string | GitHub login |
| description | string | newline-free, full text |
| language | string | "Python" |
| stars | int | stargazers_count at snapshot time |
| forks | int | forks_count at snapshot time |
| open_issues | int | open_issues_count at snapshot time |
| created_at | string | ISO-8601 datetime |
| updated_at | string | ISO-8601 datetime |
| homepage | string | repository homepage URL, empty when none |
| html_url | string | https://github.com/owner/repo |
## Evidence
Every number above is a field of the live API JSON payload at the snapshot time.
Star counts are live counters and can move between consecutive API reads; the
verifier agrees the artifact when each star count equals the fresh read or differs
by exactly 1 (printed as a NOTE), and every structural field matches exactly.
Ranks, URLs and counts were copied verbatim; no value was edited or invented.