feat: capture native homepage skill shelf demand - #3716
Patrick-Erichsen merged 1 commit into
Conversation
|
🦞👀 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.
|
ClawHub UI ProofStatus:
Raw proof files: https://github.com/openclaw/clawhub/tree/qa-artifacts/clawhub-ui-proof/pr-3716/native-skill-shelf-demand |
|
Codex review: needs changes before merge. Reviewed September 15, 2026, 4:24 PM ET / 20:24 UTC. ClawSweeper reviewWhat this changesRecord settled searches on the homepage New, Featured, and Official skill shelves in staff search intelligence, using counts from the returned results. Merge readiness⛔ Needs changes before merge - 2 items remain Keep open: current main lacks this homepage capture path, and the open prerequisite explicitly leaves it for follow-up. The runtime implementation has convincing paired browser/backend evidence. Priority: P2 Review scores
Verification
How this fits togetherHomepage skill shelves send searches to a native Convex action. The change feeds anonymous, scoped observations into the existing staff search-intelligence store and reports. flowchart TD
A[Manual homepage search] --> B[Consume settled search intent]
B --> C{Selected shelf}
C -->|Trending| D[Filter existing feed]
C -->|New Featured Official| E[Native skill search]
E --> F[Return skill results]
E --> G[Record bounded shelf observation]
G --> H[Staff search intelligence]
Before merge
Findings
Agent review detailsSecurityNone. Review metrics
Technical reviewBest possible solution: Keep response-owned shelf attribution and preserve its one-shot intent, scope, and native cancellation semantics in the durable specification. Do we have a high-confidence way to reproduce the issue? Not applicable as a new capture capability; the supplied paired browser/backend run nevertheless demonstrates the missing baseline observations and their appearance after the change. Is this the best way to solve the issue? Yes: recording at the native response owner preserves the exact shelf results and reuses existing privacy controls; client-computed counts or routing through full-catalog search would weaken those guarantees. Full review comments:
Overall correctness: patch is correct AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning medium; reviewed against 22cc45be4fc3. LabelsLabel changes:
Label justifications:
EvidenceAcceptance criteria:
What I checked:
Likely related people:
Rank-up movesOptional improvements that raise the rating; they are not merge blockers.
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
|
|
The durable-contract finding and rank-up move are addressed in the coordinated follow-up #3717, head The runtime head here remains |






What Problem This Solves
Manual searches on the native homepage New, Featured and Official skill shelves are missing from staff search intelligence.
User Impact
Each settled manual shelf search now contributes one scoped observation with counts from the actual native response. Shelf demand remains separate from full-catalog gaps. Existing ranking, tabs, defaults, badges and public search results are unchanged; Trending still filters its local feed without recording a catalog search.
Why This Change Was Made
The existing native search action owns its returned results and derives shelf scope from its required filters. It now uses the same privacy-preserving observation builder and recorder as HTTP searches. The homepage consumes one ephemeral intent per artifact kind and clears pending intent on navigation, category changes, pagination and clear.
Native Convex actions have no Request abort signal: a completed marked server search can be recorded after browser navigation. Input canceled before dispatch stays uncounted. This does not claim the HTTP path's cancellation behavior.
Evidence
bun run ci:staticpasses with audit 0;bun run ci:unitpasses 6,849 tests with three skips;bun run ci:types-buildpasses.Real paired screenshots and the detailed disposable-fixture report are attached in the UI proof comment. This PR builds on #3714.