You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#1970 (opt-in federated fleet intelligence) calls for "a 'your gate precision vs peer median' benchmark in the dashboard when federation is enabled." Once export (#6478), the collector client (#6479), and import+validation (#6480) are landed, an opted-in instance has real local calibration data plus verified peer bundle data to compare against — this issue is the dashboard surface that renders that comparison. Blocked by #6478 and #6480 (needs both a working export path and a working, trust-gated import path to have real data to render against — building the view against fabricated data first would produce a UI nobody can verify against the real pipeline).
Shows this instance's own gate precision alongside the peer median computed from imported, trust-gated bundles only (never raw/unvalidated peer data).
Follows this repo's general preference for reusing existing dashboard chrome over adding new pages — place this as a new panel/section within the existing maintainer dashboard (see apps/loopover-ui/src/components/site/app-panels/maintainer-panel.tsx for the existing panel convention) rather than a standalone route, unless the data shape genuinely doesn't fit there.
Bearer-gated, maintainer-only visibility (this is an operator's own private dashboard, not a public surface) — matches the access model already used by other maintainer-only panels in this codebase.
No wallet/hotkey/reward/trust-score wording — matches this repo's existing public/private-surface wording constraints even though this view itself is private, for consistency with the rest of the dashboard's vocabulary.
Deliverables
A new dashboard panel/section rendering local-precision-vs-peer-median, gated on the federation opt-in toggle and bearer auth.
Loading/empty states for an opted-in instance with zero peer data yet (not an error state).
Tests covering the gated-visibility logic (opted-out renders nothing, opted-in-with-no-peers renders the empty state, opted-in-with-peers renders the comparison).
Test Coverage Requirements
This is UI work under apps/loopover-ui/**, outside coverage.include per this repo's convention — Codecov's patch gate does not apply to the UI component itself. If this issue adds any new src/** aggregation/query logic to compute the comparison server-side, that code inherits the normal 99%+ patch requirement.
Expected Outcome
An operator who has opted into federation sees a real, live comparison of their own gate precision against the peer median, sourced only from trust-gated, verified peer data.
Context
#1970 (opt-in federated fleet intelligence) calls for "a 'your gate precision vs peer median' benchmark in the dashboard when federation is enabled." Once export (#6478), the collector client (#6479), and import+validation (#6480) are landed, an opted-in instance has real local calibration data plus verified peer bundle data to compare against — this issue is the dashboard surface that renders that comparison. Blocked by #6478 and #6480 (needs both a working export path and a working, trust-gated import path to have real data to render against — building the view against fabricated data first would produce a UI nobody can verify against the real pipeline).
Requirements
.loopover.ymltoggle from Implement signed, anonymized signature-bundle export for federated fleet intelligence #6478/Opt-in collector client for federated fleet intelligence (push/pull transport) #6479/Implement signature-bundle import + trust-gating validation for federated fleet intelligence #6480) — an instance that hasn't opted in sees no new UI, not an empty/disabled version of it.apps/loopover-ui/src/components/site/app-panels/maintainer-panel.tsxfor the existing panel convention) rather than a standalone route, unless the data shape genuinely doesn't fit there.Deliverables
Test Coverage Requirements
This is UI work under
apps/loopover-ui/**, outsidecoverage.includeper this repo's convention — Codecov's patch gate does not apply to the UI component itself. If this issue adds any newsrc/**aggregation/query logic to compute the comparison server-side, that code inherits the normal 99%+ patch requirement.Expected Outcome
An operator who has opted into federation sees a real, live comparison of their own gate precision against the peer median, sourced only from trust-gated, verified peer data.
Links & Resources
apps/loopover-ui/src/components/site/app-panels/maintainer-panel.tsx(existing panel convention)