Fix #117: owners page repos + intro #127

Merged
crueber merged 2 commits from fix/issue-117 into main 2026-09-05 06:07:30 +00:00
Owner

The owners (/) page was a bare owner-name list. It now renders a short intro card (what walhub is / does / how) plus one section per owner with that owner's repos, newest-first both levels, capped at MAX_OWNERS 50 / MAX_REPOS_PER_OWNER 10 with overflow links to /:owner.

No new endpoint, SDK method, or npm dep: reuses core GET /api/v1/owners + /{owner}/repos (07 8) via owners.list()/repos() under the owners / repos:{owner} cache keys. Ordering key is reverse of server order (bucket stores no creation timestamps) - documented in web/src/lib/owners.js, 01 8.1, 08 Decisions, 12 2.3.1. Git archaeology: no prior per-owner implementation found in history (vanilla owners.js and the SolidJS port both listed names only), so built fresh.

Tests: node --test web/test/unit/*.test.js 264/264 green (incl. new owners.test.js 7 tests); real-browser CDP drive of / populated (3 owners, 5 repos) in dark+light, zero console/page errors; screenshots in scratch notes. No Go files touched (CAS/round-trips untouched), go vet clean.

The owners (`/`) page was a bare owner-name list. It now renders a short intro card (what walhub is / does / how) plus one section per owner with that owner's repos, newest-first both levels, capped at MAX_OWNERS 50 / MAX_REPOS_PER_OWNER 10 with overflow links to /:owner. No new endpoint, SDK method, or npm dep: reuses core GET /api/v1/owners + /{owner}/repos (07 8) via owners.list()/repos() under the owners / repos:{owner} cache keys. Ordering key is reverse of server order (bucket stores no creation timestamps) - documented in web/src/lib/owners.js, 01 8.1, 08 Decisions, 12 2.3.1. Git archaeology: no prior per-owner implementation found in history (vanilla owners.js and the SolidJS port both listed names only), so built fresh. Tests: node --test web/test/unit/*.test.js 264/264 green (incl. new owners.test.js 7 tests); real-browser CDP drive of / populated (3 owners, 5 repos) in dark+light, zero console/page errors; screenshots in scratch notes. No Go files touched (CAS/round-trips untouched), go vet clean.
Sign in to join this conversation.
No description provided.