Repository navigation
feat(hardware): filter the hardware page by the registry - #7
alanpeixinho wants to merge 2 commits into
Conversation
* Filter the listing and the revision listing by architecture, processor, platform vendor, silicon vendor, platform, system module, form factor, and board type * Treat values in one field as OR and different fields as AND * Match a board that is missing from the registry only for a lone platform id * Read hardware_daily_builds and hardware_daily_tests, and offer dropdown values from that same window or checkout * Keep the selection in the URL and document the parameters in the schema Part of kernelci#2166 Assisted-by: Cursor Grok 4.7 Signed-off-by: Alan Peixinho <alan.peixinho@profusion.mobi>
* Show the hardware registry filters in the shared filters drawer * Use compact checkbox chips, and a searchable multi-select once a section has more than 8 options * Clear a multi-select with one control * Drop the repeated select prompts and put duration min and max on one line Part of kernelci#2161 Part of kernelci#2166 Assisted-by: Cursor Grok 4.7 Signed-off-by: Alan Peixinho <alan.peixinho@profusion.mobi>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Want reviews to match your repository better? Bugbot Learning can learn team-specific rules from PR activity. A team admin can enable Learning in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 93d6528. Configure here.
| FROM {table} daily | ||
| {checkout_join} | ||
| WHERE daily.{origin_column} = %(origin)s | ||
| {day_filter} |
There was a problem hiding this comment.
Cross-origin listing drops build counts
Medium Severity
The daily listing filters builds by build_origin and tests by test_origin independently. Origins such as aspeed and ti attach tests to another origin's builds, so the hardware page keeps test counts but shows zero builds. The previous hardware_status path keyed rows by test_origin and kept those associated build totals.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit 93d6528. Configure here.
| choices.map(choice => [choice, selected.has(choice)]), | ||
| ), | ||
| }, | ||
| ]; |
There was a problem hiding this comment.
Hidden filters cannot be cleared
Medium Severity
Filter sections render only values returned by the options query. A selected value that is missing from those options stays in draft and the URL but never appears as a chip, and a field with no options is omitted entirely. After a revision, origin, or date change, an applied registry filter can empty the list with no control left to clear it.
Reviewed by Cursor Bugbot for commit 93d6528. Configure here.
|
Opened against kernelci/dashboard main instead: kernelci#2192 |


What it is
Part of kernelci#1886. Closes kernelci#2166. Part of kernelci#2161. Depends on kernelci#2181, so base this on
feat/hardware-daily-aggregates.The hardware page filters by the shared registry. The fields are architecture, processor, platform vendor, silicon vendor, platform, system module, form factor, and board type. They open from Filters. A section with 8 options or fewer is a row of checkbox chips. A longer section is a searchable multi-select. The selection stays in the URL.
Values in one field are OR. Different fields are AND. A board missing from the registry still appears, and it matches only a platform id, and only when that is the only field set.
The window listing and the revision listing both read
hardware_daily_buildsandhardware_daily_tests. The options use those same rows, either the day window or the pinned checkout.The same drawer is tighter on tree details, hardware details, and issue listing. Titles and chips are smaller, the repeated select lines are gone, and duration min and max sit on one line.
How to test
/hardware, open Filters and selectarm. The list narrows, and a reload keeps the selection.Made with Cursor
Note
Medium Risk
Changes core hardware listing query paths and aggregation semantics (daily tables vs prior status/revision SQL), so regressions could affect row counts or which platforms appear when filters mix registry and non-registry boards.
Reviewed by Cursor Bugbot for commit 93d6528. Bugbot is set up for automated code reviews on this repo. Configure here.