generated from coulomb/repo-seed
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:
@@ -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 }
|
||||
|
||||
Reference in New Issue
Block a user