-
-
Notifications
You must be signed in to change notification settings - Fork 80.7k
Dashboard: preview widget — live URL embed, dev-server preview, browser-backed inspection #101138
Copy link
Copy link
Open
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.ClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:needs-security-reviewClawSweeper marked this issue as needing security-sensitive review.ClawSweeper marked this issue as needing security-sensitive review.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.impact:securitySecurity boundary, credential, authz, sandbox, or sensitive-data risk.Security boundary, credential, authz, sandbox, or sensitive-data risk.impact:ux-frictionUser-facing flow adds avoidable confusion or support burden without fully blocking progress.User-facing flow adds avoidable confusion or support burden without fully blocking progress.issue-rating: 🌊 off-meta tidepoolIssue quality rating does not apply to this item.Issue quality rating does not apply to this item.maturity:stableIssue affects a taxonomy feature currently scored M4/M5.Issue affects a taxonomy feature currently scored M4/M5.staleMarked as stale due to inactivityMarked as stale due to inactivity
Description
Metadata
Metadata
Assignees
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.ClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:needs-security-reviewClawSweeper marked this issue as needing security-sensitive review.ClawSweeper marked this issue as needing security-sensitive review.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.impact:securitySecurity boundary, credential, authz, sandbox, or sensitive-data risk.Security boundary, credential, authz, sandbox, or sensitive-data risk.impact:ux-frictionUser-facing flow adds avoidable confusion or support burden without fully blocking progress.User-facing flow adds avoidable confusion or support burden without fully blocking progress.issue-rating: 🌊 off-meta tidepoolIssue quality rating does not apply to this item.Issue quality rating does not apply to this item.maturity:stableIssue affects a taxonomy feature currently scored M4/M5.Issue affects a taxonomy feature currently scored M4/M5.staleMarked as stale due to inactivityMarked as stale due to inactivity
Type
Fields
Priority
None yet
Part of the Modular Dashboard roadmap — see the tracker #101136. Builds on Wave 1 (#101093; PRs #101094 / #101097 / #101098).
Problem
Operators and maintainers have asked for a browser/preview panel in the dashboard for a long time (#27574). And agents that build UIs need to see what they built to iterate — today they're flying blind. Both want the same thing: a live, embeddable preview surface that's part of the workspace.
What this adds
builtin:previewwidget that renders a URL (a running dev server or a deployed preview) with reload + viewport / device-frame controls.preview_*capability, as a widget).How it'd be built
Start from the existing
builtin:iframe-embedwidget (ui/src/lib/dashboard/widgets/iframe-embed.ts:renderIframeEmbed,evaluateEmbedUrl,resolveEmbedSandbox), register a newbuiltin:previewkind viaBUILTIN_WIDGET_RENDERERS(ui/src/lib/dashboard/widgets/index.ts) +BUILTIN_KIND_PATTERN(extensions/dashboard/src/schema.ts), and add reload + viewport chrome around the frame. This is a trusted builtin — not a sandboxed custom widget — precisely because phases 2–3 need capabilities we'd never grant agent-authored code (spawn a process, read console). Phase 1 (this issue) is the embed + chrome; phases 2–3 are follow-on issues.References
Tier 1 — high-value builtins. Pairs with the "dashboard-design" skill (screenshot-and-iterate).