feat(P6/T07): adapter compatibility validation dashboard (AutoRefresh)

AdapterCompatibilityDashboardAction added to HubsController (AutoRefresh).
Five panels: adapter summary KPIs (active/draft/deprecated), widget coverage
bar (adapter-backed vs native IHP, breakdown per spec), active contracts in use,
unassigned widgets, active adapter spec table with widget counts. Linked from
hub Show page and global nav.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-29 21:21:21 +00:00
parent 803376b09a
commit ae81dfd484
4 changed files with 212 additions and 1 deletions

View File

@@ -9,6 +9,7 @@ import Web.View.Hubs.TriageDashboard
import Web.View.Hubs.GovernanceDashboard
import Web.View.Hubs.AntifragilityDashboard
import Web.View.Hubs.AgentAuditDashboard
import Web.View.Hubs.AdapterCompatibilityDashboard
import Generated.Types
import IHP.Prelude
import IHP.ControllerPrelude
@@ -228,3 +229,11 @@ instance Controller HubsController where
reviews <- query @AgentReviewRecord |> fetch
widgets <- query @Widget |> fetch
render AgentAuditDashboardView { hub, proposals, reviews, widgets }
action AdapterCompatibilityDashboardAction { hubId } = autoRefresh do
hub <- fetch hubId
specs <- query @WidgetAdapterSpec |> orderByAsc #name |> fetch
widgets <- query @Widget |> filterWhere (#hubId, hubId) |> fetch
envelopes <- query @EnvelopeEmissionContract |> filterWhere (#status, "active") |> fetch
reportings <- query @InteractionReportingContract |> filterWhere (#status, "active") |> fetch
render AdapterCompatibilityDashboardView { hub, specs, widgets, envelopes, reportings }