Skip to content

feat(ui): merge Slow Queries and Workload Analysis into Performance - #52

Merged
geekypunk merged 4 commits into
mainfrom
cursor/performance-tab-merge-c497
Aug 15, 2026
Merged

feat(ui): merge Slow Queries and Workload Analysis into Performance#52
geekypunk merged 4 commits into
mainfrom
cursor/performance-tab-merge-c497

Conversation

@venkateshsakamuri-lab

@venkateshsakamuri-lab venkateshsakamuri-lab commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Summary

Merges Slow Queries and Workload Analysis into a single Performance sidebar section, and extends demo seeding so that section actually has data after seed-demo-data.sh.

UI

  • One Performance nav item (aliases: slow-queries, workload-analysisperformance)
  • Sub-tabs: Query Trends, By Customer, Workload, Settings
  • If no slow-query log source is configured → empty state with Configure slow queries CTA that opens SlowQuerySourceModal

Demo seed gap (fixed)

Previously Step 6 only wrote slow_query_history JSON + index/actions. That does not unlock Query Trends (needs slow_log_source_config + query_fingerprints / slow_query_run / samples).

Seed now also inserts:

  • Dummy S3 log-source row (schedule off) so Performance unlocks
  • Multi-day fingerprint/run timeline + regressions
  • Samples + per-customer rollups for By Customer
  • A short demo_shop workload simulation matching those patterns

Verification (Demo Shop)

  • Analytics APIs: 4 queries, 2 regressions, 3 customers
  • POST /workload-analysis/.../run completed: 4 candidates, 10 index recs, 4 rewrites
  • UI walkthrough:

Query Trends with seeded regressions
By Customer with acme/globex/initech
Workload report completed
performance_seeded_workload_walkthrough.mp4

How to try

  1. Select Demo Shop (E-commerce)
  2. Open Performance → Query Trends / By Customer / Workload
  3. On Workload, use the completed report or Analyze workload again

To show artifacts inline, enable in settings.

Open in Web Open in Cursor 

cursoragent and others added 3 commits August 14, 2026 08:00
One sidebar destination with Query Trends, By Customer, Workload, and
Settings. If no slow-query log source is attached, the page shows a
Configure slow queries empty state that opens SlowQuerySourceModal.

Co-authored-by: Venkat SF <venkatesh.sakamuri@stayflexi.com>
Move HelpTooltip off the heading so it cannot cover the CTA, and add
data-testid for the log-source button.

Co-authored-by: Venkat SF <venkatesh.sakamuri@stayflexi.com>
Seed slow-log source config, fingerprints, multi-day runs, samples, and
customer rollups so Slow Queries / Workload Analysis unlock after demo
seed. Also simulate matching demo_shop query patterns.

Co-authored-by: Venkat SF <venkatesh.sakamuri@stayflexi.com>
@venkateshsakamuri-lab
venkateshsakamuri-lab marked this pull request as ready for review August 14, 2026 18:18
@venkateshsakamuri-lab
venkateshsakamuri-lab requested a review from a team as a code owner August 14, 2026 18:18
@cursor

cursor Bot commented Aug 14, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@geekypunk geekypunk left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Coherent consolidation. features.js adds slow-queries/workload-analysisperformance to resolveSectionAlias, so persisted nav state from older sessions still routes — same pattern already established for schema-docscompany-knowledge. Role gating collapses to a single performance: ROLES.ADMIN entry, preserving the previous ADMIN requirement on both merged sections.

The seed-demo-data.sh addition is in scope rather than drive-by: the merged tab reads slow_log_source_config + query_fingerprints + slow_query_run, which the legacy slow_query_history JSON alone does not populate, so without it the tab renders empty in a demo install. Inserts are idempotent (ON CONFLICT ... DO UPDATE/DO NOTHING).

@geekypunk
geekypunk merged commit 9bf3856 into main Aug 15, 2026
11 of 17 checks passed
@geekypunk
geekypunk deleted the cursor/performance-tab-merge-c497 branch August 15, 2026 15:47
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>&nbsp;<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>&nbsp;</div>

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants