Repository navigation
improve: lead the homepage with Plugins and Featured - #3794
Conversation
Co-authored-by: Patrick-Erichsen <20157849+Patrick-Erichsen@users.noreply.github.com>
|
🦞👀 Pull request received. I will update this pull request when review starts. ClawSweeper review completeClawSweeper finished reviewing this revision. The review result is being finalized. |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Found 1 test failure on Blacksmith runners: Failure
|
ClawHub UI ProofStatus:
Raw proof files: https://github.com/openclaw/clawhub/tree/qa-artifacts/clawhub-ui-proof/pr-3794/plugins-first-proof |
|
Implemented the requested homepage defaults and ordering. LOC: +57/-21 (6 files). No blocking implementation findings after scoped manual review and real desktop/mobile before-after proof. Best-fix verdict: best. Both server initial data and client fallback select Featured plugins; DOM order matches visual order, and switching to Skills still selects Featured. Alternatives rejected: client-only default leaves SSR/hydration on Skills; CSS-only ordering leaves keyboard/accessibility order unchanged; editing dedicated browse routes would broaden scope. Code read: root route loader, HomeListingSection state/cache/kind/tab handlers, homeListingData skill/plugin fetch paths, package API, adjacent component/data tests, and dedicated Skills route options. Verification: 56 focused tests; static; full TypeScript/build including schema and CLI; CI unit/packages/types/static/e2e/local-auth; real-browser proof. Landing held: Remaining uncertainty: production not deployed/verified. Host-local full-unit limitations are documented in the PR; CI unit is green. GitHub rendered proof HTML contains all six images; interactive GitHub browser inspection timed out on this host. Maintainer edits note: this is a same-repository branch, so maintainers already have normal branch access; GitHub rejects the fork-only |
|
Codex review: needs maintainer review before merge. Reviewed September 21, 2026, 7:56 PM ET / 23:56 UTC. ClawSweeper reviewWhat this changesThe homepage initially loads Featured plugins, places Plugins before Skills, and orders Featured before Trending in the Skills tabs. Merge readiness✅ Ready for maintainer review No blocking findings. Current main still opens on Skills, so this PR remains useful; the inspected browser screenshots support the intended visible changes. Priority: P3 Review scores
Verification
How this fits togetherClawHub’s homepage catalog receives initial listings from its route loader, then supports client-side catalog switching and filtering. The selected catalog determines which plugin or skill cards visitors see. flowchart TD
A[Homepage visit] --> B[Route loader]
B --> C[Featured plugin catalog]
C --> D[Initial listing]
B --> E[Client fallback if loading fails]
E --> C
D --> F[Catalog controls]
F --> G[Plugin or skill cards]
Before mergeNone. Agent review detailsSecurityNone. Review metrics
Technical reviewBest possible solution: Keep the server-loaded catalog, client fallback, and DOM order aligned while preserving existing catalog switching and dedicated browse routes. Do we have a high-confidence way to reproduce the issue? Not applicable as a bug reproduction: this changes presentation defaults; current source and inspected before/after images establish the existing and proposed behavior. Is this the best way to solve the issue? Yes—best for the stated scope. Reusing the existing plugin loader avoids duplication; changing only client state would leave server rendering on Skills, and CSS-only reordering would leave DOM order inconsistent. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning medium; reviewed against f0cbe329da45. LabelsLabel changes:
Label justifications:
EvidenceWhat I checked:
Likely related people:
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
|
|
Patrick renewed the landing instruction in the original discussion after the pre-existing smoke failure was disclosed. Proceeding with normal, exact-head squash merge of The only failing CI job remains the previously documented baseline |






What Problem This Solves
The homepage opens on Skills and places Trending before the selected Featured view, rather than leading with Plugins and the default view.
User Impact
Plugins is now first and selected on arrival. Switching to Skills still selects Featured, which now appears before Trending. Dedicated browse routes and header navigation are unchanged.
Why This Change Was Made
Align the server-loaded catalog, client fallback, and visible tab order with the requested landing-page defaults.
Requested by Patrick; implemented by RoboClaw.
Work sessions
Evidence
bun run ci:staticandbun run ci:types-buildpassed (including schema and CLI TypeScript checks).f0cbe329on port 4338 and candidate on port 4337; live public catalog, light theme, desktop and mobile. Before/after proof gallery.Local full-suite environment limitations
Ran
bun run ci:unitand repeated with--maxWorkers=8: bounded run had 7,152 passing, 18 failing, and 3 skipped tests. Seventeen failures reproduce on unchanged baseline: loopback HTTP requests refused by the host egress proxy, deep workspace socket paths, and native CLI environment. The remaining large-file test timeout passed in its isolated 381-test suite. CI unit coverage subsequently passed.Chromium lacks the host egress proxy authentication, so the proof runner forwards public Convex HTTP queries through its normal managed fetch without changing response data. Unrelated external artwork/WebSocket subscriptions may be unavailable. No backend writes or production deployment.
Landing page
Before
After
Skills view
Before
After