9c314ee7d4
The README embedded star-history.com with a sealed_token that expired periodically (403 "GitHub restricted starred-data access"), breaking the chart. Replace it with self-hosted SVGs generated from the GitHub API: - .github/scripts/gen_star_history.py: fetches the stargazer timeline (authenticated, so no rate limit / no sealed token) and renders light + dark cumulative-stars SVGs (stdlib only, no pip deps). - .github/workflows/star-history.yml: regenerates weekly (+ manual dispatch) using the repo's own token and commits the SVGs only when they change. - README embeds the committed SVGs via <picture> (relative paths) — no third-party embed to rate-limit or expire. Initial charts committed (6,621 stars). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>