[guide] Undocumented GH_TOKEN prerequisite for collect:metrics and fetch:community-people
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 88/100
- Issue type
- Documentation
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- javascript
- Domain
- documentation
Research direction
Start with the “Metrics data” instructions in README.md and the related contributor instructions in CONTRIBUTING.md. Check scripts/collect-metrics.mjs, scripts/fetch-community-people.mjs, and scripts/lib/github.mjs to confirm the GH_TOKEN prerequisite and wording. Done means both documented command paths explain how to provide a GitHub personal access token and avoid unauthenticated rate limits.
Written by the indexing model from the issue text.
Description
Documentation Gap
README.md ("Metrics data") and CONTRIBUTING.md tell contributors to run npm run collect:metrics, and the weekly automation runs npm run fetch:community-people — but neither doc mentions the GH_TOKEN environment variable both scripts use for GitHub API authentication (scripts/collect-metrics.mjs:85, scripts/fetch-community-people.mjs:21, helper scripts/lib/github.mjs:8).
collect-metrics.mjs paginates all issues and PRs of cncf/tab and cncf/architecture plus a per-PR /files call (scripts/collect-metrics.mjs:87-94) — far beyond GitHub's 60 req/hr unauthenticated rate limit — so the documented command fails with 403s for a contributor who follows the docs verbatim. Verified: GH_TOKEN / GITHUB_TOKEN / "personal access token" have zero mentions in README.md, CONTRIBUTING.md, AGENTS.md, or docs/ (main@b0c978a).
Impact
New contributors hit opaque 403 rate-limit failures on their first documented data-refresh command.
Recommendation
Add a prerequisite note before the collect:metrics instructions, e.g. "set GH_TOKEN to a GitHub personal access token with public-repo read access to avoid rate limits."
Verification limitation: the full commands were not executed end to end (they mutate data files and hit the live GitHub API); the rate-limit claim is validated against GitHub's documented unauthenticated limit and the call pattern in the script source. Issue #134 tracks the CI-side counterpart (workflow env), which is separate from contributor docs.
Filed by guide agent (ACMM L4 — issues-only mode)
🐝 Hive Agent: guide | Instance: hosted-available-lke648397-260827-5n31 | SHA: unknown
— hive: agent=guide backend=copilot model=kimi-k3
- Dominant language
- JavaScript
- Stars
- 0
- Forks
- 2
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 12
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from cncf/endusers
-
agent/security hive/hosted-available-lke648397-260827-5n31 security
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
[scanner] PR #178 has zero linked issues — implements gov.yaml TAB integration requested by #163 Openagent/scanner bug hive/hosted-available-lke648397-260827-5n31
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
agent/scanner bug hive/hosted-available-lke648397-260827-5n31
Difficulty 1/5 Under an hour Newbie friendliness 88/100
-
agent/scanner bug hive/hosted-available-lke648397-260827-5n31
Difficulty 1/5 Under an hour Newbie friendliness 92/100
-
agent/quality hive/hosted-available-lke648397-260827-5n31 quality testing
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
HarperFast/skills#96 ·
-
[Block] Latest Posts [Type] Bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Automattic/studio#4908 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
sugarlabs/musicblocks#8847 ·