Skip to content

✨ dashboard: pin label filters to the sidebar with a cross-repo filtered view - #12183

Merged
hivecommons-hive[bot] merged 3 commits into
v5from
feat/filter-sidebar-pins
Oct 15, 2026
Merged

hivecommons-hive[bot] merged 3 commits into
v5from
feat/filter-sidebar-pins

Conversation

@clubanderson

@clubanderson clubanderson commented Oct 15, 2026 •

Copy link
Copy Markdown
Member

Fixes #12172

PR 2 of 2 — follows #12181 (faceted filter + saved filters + Needs human preset, merged). Rebased on v5; the last commit only refreshes pre-existing api-reference.md citation drift from #12173/#12180 (CI gates on it).

What

  • Pin to sidebar toggle on every saved filter and preset (in the facet bar's manage row). Pin state is persisted with the saved filter in the existing hive-label-filters:<hiveId> store (saved[].pinned, presetPins).
  • Filters nav group at the bottom of the left navigation (before the system gauges), one oc-nav-item per pinned filter reusing the badge-count oc-nav-count pattern with a live count across all repos, recomputed on every status poll. Hidden when nothing is pinned (consistent with dashboardSortSidebar, which only touches [data-section] items so the dashboard section reorder is unaffected). No existing drag helper for arbitrary nav items → no reorder (order follows the store's order[], default = presets then saved filters).
  • Cross-repo filtered view: clicking a pinned entry navigates to Projects, opens the facet bar and replaces the card grid with one list of matching issues/PRs grouped by repository (collapsible groups persisted via the shared section collapse keys), same row rendering as inside the cards, total count badge, and a ← Project cards button. Any other sidebar navigation closes the view (ocNavigate → hfOnNavigate, a one-line hook).
  • Needs human is pinned by default; the user can unpin it.

Tests

TestDashboardLabelFilterPinnedSidebar (node, DOM shim) — default pin, cross-repo count, open/close/navigate-away, per-repo grouping, collapse persistence, unpin hides the group and persists.

Docs: dashboard-sections.md (Projects); changelog added-12172-pinned-filters-sidebar.md. No new inline styles / raw values.

@kubestellar-prow kubestellar-prow Bot added the dco-signoff: yes Indicates the PR's author has signed the DCO. label Oct 15, 2026
@kubestellar-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign clubanderson for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Open PR overlap check

Base branch: v5

Conflicts are checked with every PR merged onto the current tip of v5, so a PR that only needs a rebase is not reported as conflicting with its siblings.

PR Title Relation Files
#12158 ✨ review: add review.shadow to record would_have_held for the review gate same files src/pkg/dashboard/static/index.html
#12186 ✨ Hive-curated good first issues to attract contributors with their own coding agents same files src/pkg/dashboard/static/index.html
#12170 🐛 Settings modal: sticky-section gap, height, and section navigation same files src/pkg/dashboard/static/index.html
#12096 ✨ feat(evidence): add GET /api/evidence/summary same files src/docs/api-reference.md
#12182 ✨ intent: add intent.shadow to record would_have_blocked same files src/pkg/dashboard/static/index.html

Saved filters and presets gain a Pin to sidebar toggle. Pinned filters
render in a Filters nav group at the bottom of the left navigation, each
with a live count of matching issues/PRs across every project. Clicking
one swaps the Projects card grid for a cross-repo view: matches grouped by
repository (collapsible, state persisted via the shared section collapse
keys) with the facet bar on top for refine-and-resave. Needs human is
pinned by default; pin state persists with the saved filter.

Fixes #12172

Signed-off-by: Andrew Anderson <andy@clubanderson.com>
Signed-off-by: Andrew Anderson <andy@clubanderson.com>
Signed-off-by: Andrew Anderson <andy@clubanderson.com>
@clubanderson
clubanderson force-pushed the feat/filter-sidebar-pins branch from 3da9813 to 81fc242 Compare October 15, 2026 20:20
@kubestellar-prow kubestellar-prow Bot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Oct 15, 2026
@hivecommons-hive
hivecommons-hive Bot merged commit eb1d396 into v5 Oct 15, 2026
63 of 64 checks passed
@hivecommons-hive

Copy link
Copy Markdown
Contributor

merged by Hive trusted-author auto-merge: author @clubanderson holds role owner and GitHub permission admin on repo; CI green at 81fc242.

@kubestellar-prow
kubestellar-prow Bot deleted the feat/filter-sidebar-pins branch October 15, 2026 20:29
@github-actions

Copy link
Copy Markdown
Contributor

Thank you for your contribution! Your PR has been merged.

We'd love to hear how your experience was: share feedback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dco-signoff: yes Indicates the PR's author has signed the DCO. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

✨ dashboard: faceted label filter with saved filters, text terms, sidebar pins and a default "Needs human" preset in project cards

1 participant