feat(cli): add HTML leaderboard generator#57
Conversation
Self-contained static HTML page from Arbiter scores with dark theme, HUMMBL branding (#166534 forest green), responsive layout, color-coded score badges, and XSS-safe escaping. 12 new tests. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4702db3ec4
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| grade = _grade_score(score, loc) | ||
| grade_color = _GRADE_COLORS.get(grade, "#6b7280") | ||
| sc = _score_color(score) |
There was a problem hiding this comment.
Use neutral score color for unscorable repos
When total_loc is 0, _grade_score returns "N/A", but the score badge color is still computed from _score_color(score), so these rows render as a failing red score even though they are intentionally unscored. In datasets with non-analyzable repos, this visually misclassifies N/A entries as low quality and can mislead readers comparing leaderboard results; the score badge should use a neutral color when the grade is N/A.
Useful? React with 👍 / 👎.
Summary
src/arbiter/leaderboard_html.pywithgenerate_leaderboard_html()-- self-contained HTML page (inline CSS, dark theme, HUMMBL #166534 accent, responsive, XSS-safe)--htmlflag toarbiter leaderboardsubcommand (arbiter leaderboard --html -o leaderboard.html)Test plan
tests/test_leaderboard_html.pyall passarbiter leaderboard --html -o out.html && open out.htmlwith a populated DB🤖 Generated with Claude Code