Dashboard progressive rendering - #57
Merged
Merged
Conversation
…e widget queries
Dashboards now build visibly instead of showing a blank canvas for the
whole generation: the agent emits a shell block plus one verified widget
block at a time, each streamed to the UI and mounted into the live iframe
as soon as it's ready. The chat trace also translates raw tool calls into
plain-English progress ("Checking the numbers…") instead of showing SQL
or internal tool names.
Also fixes a real bug this surfaced: when a build/edit finished without
self-review changes, the canvas was reloading and re-running every
widget's query a second time, duplicating entries in the Queries panel.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…con rendering Wire the previously-unused folder/favorite/search backend endpoints into DashboardsHome.jsx, add dashboard clone/duplicate, and add version history with diff summaries, live preview, and restore (dashboard_versions table, V113 migration). Fix a Tailwind Preflight bug collapsing lucide-react icons to 0 width inside small flex buttons, dedupe identical version rows on restore, and clear the Queries panel on restore/Source-apply so it doesn't show stale entries from the previous config. Also fixes a pre-existing bug where AccessControlService leaked a raw RuntimeException as an uncaught 500 instead of a clean 404 when a dashboard's connection no longer exists (affected share/clone/version endpoints alike). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
notSumit25
requested review from
a team,
geekypunk and
venkateshsakamuri-lab
as code owners
August 15, 2026 08:29
…luated alerts Add manual + auto-refresh (30s/5m/1h) to the dashboard workspace and viewer, backed by a new reload() method on DashboardArtifact that forces a genuine iframe remount via a key bump. Add TV/kiosk mode to the public share route (?kiosk=1, chrome-less + auto-refresh) with multi-dashboard cycling (?tokens=...&advance=...) that skips password-protected dashboards rather than stalling on an unattended gate; ShareMenu surfaces a ready-made kiosk link once a dashboard is public. Add natural-language dashboard alerts (dashboard_alerts table, V114 migration): a per-dashboard condition evaluated on a schedule by a bounded DeepSQL agent session (fresh, tool-scoped, forced YES/NO + grounded reason), ticked every minute by one db-scheduler recurring task rather than one task per alert. Fired alerts dispatch through new EmailService/WebhookService methods with a per-alert cooldown, and run as whoever created them since there's no ambient "system" identity for a background job. Server-side validation rejects a blank condition on create/update. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
… title A brand-new dashboard now opens with the composer centered and no side panel/canvas chrome, docking smoothly into the left panel the instant the first message is sent instead of showing the docked layout from the start. Driven by whether a user message exists yet, so reopening any dashboard with prior history skips straight to the normal docked layout. The breadcrumb now reads "Untitled dashboard" (was "New dashboard") and is directly editable inline. A rename takes priority over both the agent's HTML-derived title and the saved row's name, and survives future builds — including a fix for the build-completion path, which persists its own HTML-derived name server-side and would otherwise silently revert a pending rename the moment a build finished. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Contributor
|
@notSumit25 Can you add some screenshots of the new changes? |
Collaborator
Author
Rebuilds the empty state, header, composer, message bubbles, and activity trace with the same purple-accent/material treatment already used across Dashboards, plus real error/boot states with icons and Apple-style press feedback and entrance animations throughout. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
140px cut off a realistic multi-line queued message (e.g. typed while a build is in progress) behind an internal scrollbar well before it filled the sidebar. Raised the cap to 280px so it keeps growing with the content instead.
…-rendering # Conflicts: # agent/skills/dashboard-design/SKILL.md
venkateshsakamuri-lab
approved these changes
Aug 15, 2026
geekypunk
pushed a commit
that referenced
this pull request
Aug 15, 2026
<!-- CURSOR_AGENT_PR_BODY_BEGIN --> ## Summary Prepares and documents the **v1.1.0** product cut from `main` since `v1.0.0`, and locks in a **weekly release cadence: Saturday 09:00 America/Los_Angeles**. ### Since v1.0.0 - Progressive dashboards (#57), dashboard improvements (#51) - Multi-schema UI (#55), Performance hub (#52) - CI CodeQL unblock (#56), cloud env caveats (#53) ### This PR - Bump `backend/pom.xml` → `1.1.0` - `CHANGELOG.md` + `docs/releases/RELEASE_NOTES-v1.1.0.md` - Cadence in `docs/oss-ux/RELEASE.md` - New `docs/oss-ux/WEEKLY_RELEASE_AUTOMATION.md` (cron + paste-ready prompt) - Daily triage doc clarified as optional (not the release cut) ### After merge 1. Tag `v1.1.0` on the merge commit and push → `.github/workflows/release.yml` publishes the GitHub Release. 2. Create the Cursor Automation once from `WEEKLY_RELEASE_AUTOMATION.md` (cannot be created via API). ### Pre-flight `scripts/self-host/e2e-agent-check.py` → `AGENT_OK True`, `DASH_OK True` on the current stack before this bump. <!-- CURSOR_AGENT_PR_BODY_END --> <div><a href="https://cursor.com/agents/bc-8ce91e70-c67b-48c6-84b3-05bb9d06231a?cursor_ref=pr_footer&cursor_cta=open_in_web"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-web-light.png"><img alt="Open in Web" width="114" height="28" src="https://cursor.com/assets/images/open-in-web-dark.png"></picture></a> <a href="https://cursor.com/background-agent?bcId=bc-8ce91e70-c67b-48c6-84b3-05bb9d06231a&cursor_ref=pr_footer&cursor_cta=open_in_cursor"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-cursor-light.png"><img alt="Open in Cursor" width="131" height="28" src="https://cursor.com/assets/images/open-in-cursor-dark.png"></picture></a> </div> Co-authored-by: Cursor Agent <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.










No description provided.