From cfa323331d660e735c898fcbc20c1e84c5c7a924 Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Sat, 23 May 2026 15:47:11 +0200 Subject: [PATCH] [codex] Clarify dashboard widget integration contract (#7532) * Clarify dashboard widget integration contract * Clarify Studio widget contributors * Assign runtime dashboard widget ownership --- specs/009-operational-dashboard/prd.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/specs/009-operational-dashboard/prd.md b/specs/009-operational-dashboard/prd.md index c82a18baa..4fe1a2101 100644 --- a/specs/009-operational-dashboard/prd.md +++ b/specs/009-operational-dashboard/prd.md @@ -458,17 +458,17 @@ Where exact aggregation is not available, response models should include metadat ## UX Contract With Studio -Studio should be able to render: +Studio should be able to render an extensible dashboard where `Elsa.Studio.Dashboard` hosts widgets contributed by installed Studio modules. The backend API should provide dashboard-shaped data and capability metadata, but it should not assume that Studio hard-codes every panel in the dashboard module. -- Metric cards for running, completed, faulted, suspended, average duration, and warnings. -- Execution trend chart. -- Needs-attention list. -- Recent workflow activity table. -- Diagnostics snapshot. -- Runtime status chip and source status summary. -- Quick links to workflow instances, structured logs, and console logs. +Expected Studio-side widget contributors: -The backend should return link target metadata where possible, but Studio remains responsible for actual route generation. +- `Elsa.Studio.Dashboard` can render backend/runtime status widgets from the overview response, including runtime acceptance state, active execution cycle count, and ingress source status summaries. +- `Elsa.Studio.Workflows` can render metric cards, execution trends, needs-attention findings, recent activity, and workflow hotspots. +- `Elsa.Studio.Diagnostics.StructuredLogs` can render structured log health widgets when the corresponding backend diagnostics capability is installed and authorized. +- `Elsa.Studio.Diagnostics.ConsoleLogs` can render console log health widgets when the corresponding backend diagnostics capability is installed and authorized. +- Future Studio modules can contribute additional widgets through Studio dashboard abstractions without requiring backend contract changes unless they need new server data. + +The backend should return link target metadata where possible, but Studio remains responsible for actual route generation. Capability metadata must be explicit enough for widget providers to decide whether to render, omit, or show unavailable/unauthorized states for optional module data. ## Edge Cases