Files
zeekay 438b8644f3 rewards: /leaderboard and /bounty on the one points ledger
Every page that names points reads the cloud's rewards: the board
(GET /v1/rewards), the reader's standing, badges and history
(/v1/rewards/me), the listing (/v1/rewards/optin) and the rules table
(/v1/rewards/rules), snapshotted at build into
lib/data/rewards-rules.json and asked again when a page opens.  The
hard-coded RULES tiles, POINTS, the client-side score and
lib/hanzo/board.ts are gone; /beta and /referral draw the same Rules and
board and link to /leaderboard.

/leaderboard is the home: tabs by source and period, Your standing,
badges earned and locked, the rules, token milestones and levels, Link
GitHub through the existing per-person connection (the page completes
the grant GitHub returns), and Share your rank with a leaderboard card.
/bounty prints the contribution kinds and cap, three steps, the open
issues labelled bounty or good first issue in Hanzo's orgs (searched at
build with a token only), My contributions and the rules.  A star now
counts for the linked GitHub account, so Earn more offers Link GitHub.

The cards, nav, footer, llms.txt and sitemap carry both pages; /founder
no longer says points go nowhere.

Claude-Session: https://claude.ai/code/session_017vrVus6PPBgP5YRzKV1iqW
2026-10-27 01:56:45 -07:00

11 lines
509 B
TypeScript

/**
* Whether a GitHub org is Hanzo's own, for what hanzo.ai lists.
*
* The rewards rules count work in every org the platform's GitHub App is
* installed on, Lux's and Zoo's among them. hanzo.ai names only Hanzo's: Lux
* and Zoo publish under their own brands, and a page here does not list them
* (the same rule scripts/sync-oss.ts keeps). Hanzo's are the `hanzo*` orgs and
* zenlm, where Zen is published.
*/
export const ours = (org: string): boolean => org.startsWith('hanzo') || org === 'zenlm'