Skip to content

PMM-15308 Expect trimmed dashboard panel titles - #1173

Closed
claude[bot] wants to merge 1 commit into
mainfrom
claude/kind-meitner-o5ovf2
Closed

PMM-15308 Expect trimmed dashboard panel titles#1173
claude[bot] wants to merge 1 commit into
mainfrom
claude/kind-meitner-o5ovf2

Conversation

@claude

@claude claude Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Failures fixed (investigator)

  • source: Percona-Lab/pmm-submodules PR #4525 — run https://github.com/Percona-Lab/pmm-submodules/actions/runs/31632930410, check E2E / Percona Server for MySQL UI integration tests / e2e tests: @pmm-ps-integration
  • blocked-on: PMM-15308 Trim whitespace from dashboard titles pmm#5767DO NOT MERGE until that PR lands; these tests now expect titles that don't exist on main yet.
  • tests:
    • e2e_tests/tests/dashboards/mysql/mysqlDashboards.test.ts:77 — PMM-T324 Verify MySQL - MySQL User Details dashboard / @pmm-ps-integration
    • e2e_tests/tests/dashboards/mysql/mysqlDashboards.test.ts:130 — PMM-T430 Verify metrics on MySQL Group Replication Summary Dashboard / @pmm-ps-integration

What failed

Both tests failed in Dashboards.verifyMetricsPresent (pages/dashboards/dashboards.page.ts:160) — the panel titles rendered by the FB server no longer match the expected lists:

Expected: ArrayContaining [" ", "Active Users", "Lost Connections", …]
Received: ["Active Users", "Lost Connections", "Users Activity", …]

Root cause — the FB trims whitespace from dashboard titles

PR #4525 is the feature build for percona/pmm#5767 (PMM-15308), which strips leading/trailing whitespace from 39 dashboard titles. Three of the trimmed titles were hard-coded with their whitespace in pmm-qa's expected-panel lists:

Dashboard Title on main Title in the FB build
MySQL Group Replication Summary "Applied Transactions " "Applied Transactions"
MySQL Group Replication Summary "Sent Transactions " "Sent Transactions"
MySQL Group Replication Summary "Rolled Back Transactions " "Rolled Back Transactions"
MySQL User Details " " (spacer text panel) ""
HAProxy Instance Summary "Aborted Data Transfers " "Aborted Data Transfers"

Read back from the running FB server (/graph/api/dashboards/uid/mysql-group-replicaset-summary, …/uid/mysql-user), the titles are trimmed exactly as the diff says.

For MySQL User Details the panel is a title-less spacer: with title: "" Grafana renders no title text at all, so the panel contributes nothing to allTextContents() — asserting '' would be meaningless, so the entry is dropped rather than emptied.

Aborted Data Transfers is the same class of stale expectation but under @pmm-ps-pxc-haproxy-integration, which the FB suite doesn't run — it runs in the daily e2e-tests-matrix.yml, so without this it would go red the day #5767 merges. Fixed here in the same commit.

Verification

Throwaway Linode VM, PMM Server perconalab/pmm-server-fb:PR-4525-94197ef (the exact image the failing run used), client tarball pmm-client-PR-4525-94197ef.tar.gz, pmm-framework --database ps,SETUP_TYPE=replication,MY_ROCKS=true --database ps,SETUP_TYPE=gr,QUERY_SOURCE=slowlog — same WIZARD_ARGS as the failing job.

Test pmm-qa main this branch
PMM-T324 MySQL User Details ✘ failed (same expected/received as CI) ✓ passed
PMM-T430 Group Replication Summary ✘ failed (same expected/received as CI) ✓ passed
PMM-T2029, PMM-T2079 (same spec)
Rest of @pmm-ps-integration 9 passed, 1 environmental failure (below)

PMM-T2030 - Verify QAN for PS Replica Instance failed on the repro VM on both main and this branch (QAN showed no data — the replication setup on this box never generated replica query load), and passed in the CI run. Environmental, not related to this change, which only edits three panel-name lists.

@pmm-ps-pxc-haproxy-integration was not exercised (no HAProxy/PXC setup on the repro box); the HAProxy line is verified against the FB dashboard JSON only, so the next e2e-tests-matrix.yml run after #5767 merges is what confirms it end to end.

Pre-existing, untouched: npx tsc --noEmit reports the same 4 errors in tests/dashboards/valkey/valkeyDashboards.test.ts before and after this change. ESLint is clean on the three edited files.

Other red in that FB run (triaged, not fixed here)

Follow-up

Convert from draft to ready once percona/pmm#5767 merges.

The legacy CodeceptJS osNodesOverview.metrics list (codeceptjs-e2e/tests/pages/dashboardPage.js) also carries untrimmed Nodes Overview titles, but nothing asserts that list (only clearUrl is used), so it is left alone.


Generated by Claude Code

percona/pmm#5767 trims leading/trailing whitespace from dashboard
titles, which breaks three expected-panel lists that hard-coded the
untrimmed strings:

- MySQL Group Replication Summary: 'Applied Transactions ',
  'Sent Transactions ', 'Rolled Back Transactions '
- HAProxy Instance Summary: 'Aborted Data Transfers '
- MySQL User Details: the spacer text panel titled ' ', now '', whose
  header no longer renders a title at all -- drop the entry instead of
  asserting an empty name.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YGvF1XjQP42JbzU555BuRP
Signed-off-by: Claude <noreply@anthropic.com>
@travagliad travagliad closed this Aug 12, 2026
@travagliad
travagliad deleted the claude/kind-meitner-o5ovf2 branch August 12, 2026 21:31
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.

2 participants