Skip to content

benchmark: complete production dashboard QA and accessibility gate - #113

Merged
TheHiddenObserver merged 25 commits into
feature/benchmark-frontend-dashboardfrom
agent/benchmark-production-qa-accessibility
Aug 7, 2026
Merged

benchmark: complete production dashboard QA and accessibility gate#113
TheHiddenObserver merged 25 commits into
feature/benchmark-frontend-dashboardfrom
agent/benchmark-production-qa-accessibility

Conversation

@TheHiddenObserver

@TheHiddenObserver TheHiddenObserver commented Aug 7, 2026

Copy link
Copy Markdown
Owner

Summary

Completes #92 with a reproducible product-level QA and accessibility gate for the deployed benchmark dashboard on top of the current PR #76 staging branch.

This PR adds:

  • production-path validation against the committed docs/assets/benchmarks/ bundle rather than only the Vite development server;
  • Chromium, Firefox, and WebKit coverage in CI;
  • full CV filter-cascade and deterministic upstream-reset checks;
  • keyboard/focus/accessibility enhancements for generated filter controls, scale chips, sortable table headers, skip navigation, and metric-panel disclosures;
  • filter-synchronized exact-value tables as an accessible alternative to ECharts canvas content;
  • chart role=img/accessible descriptions and explicit text-contrast checks;
  • production-path refresh, asset/JSON loading, metadata-link, empty-state, and failed-CV-backend checks;
  • documentation updates that point live counts to inventory while retaining a dated 2026-08-07 snapshot;
  • a documented production QA command under frontend/e2e-production/README.md.

No new benchmark family or unrelated statistical implementation is introduced.

Production deployment contract

The production Playwright server serves the repository root and opens the exact nested path:

/docs/assets/benchmarks/

The suite validates that the committed HTML, hashed JS/CSS, benchmark JSON, parse report, inventory, documentation links, and refresh behavior work from that location without relying on Vite dev-server routing.

Browser matrix

The production suite contains 5 product-level cases and runs them in:

  • Chromium/Chrome;
  • Firefox;
  • WebKit/Safari-compatible engine.

The validated materialization run completed 15/15 production cases successfully (5 cases × 3 browsers). The authoritative clean-head Benchmark Frontend CI #489 repeats the production suite and passes.

Interaction QA

The deployed-path suite exercises:

Environment → Category → Metric scope → Model → Variant → Penalty → Solver → Scale → Backend → External framework

It verifies context-derived controls, deterministic upstream reset, stable scale selection, statgpu backend filtering, external-reference visibility, current rows in the overview table, explicit empty states, and the canonical LogisticRegressionCV Torch failed disposition.

Existing Chromium regression coverage remains in place and runs separately; the production suite extends rather than replaces it.

Accessibility

Primary improvements include:

  • <html lang="en"> and a skip link to the main benchmark results;
  • <main id="dashboard-main"> as the primary landmark;
  • visible :focus-visible treatment;
  • accessible names for dynamically generated filter selects;
  • keyboard Enter/Space activation for scale chips and sortable overview headers;
  • aria-sort on sortable headers;
  • native button disclosures with aria-expanded / aria-controls for metric panels;
  • chart containers with accessible image semantics;
  • exact, filter-synchronized timing/speedup tables with full labels and values;
  • a reduced-motion fallback;
  • explicit text-contrast checks in the production browser matrix.

The accessibility enhancements are reapplied after each generated re-render, so newly created controls retain their keyboard/name contracts without accumulating handlers on removed DOM nodes.

Documentation

The English and Chinese benchmark guides now avoid treating mutable source/run counts as timeless prose. They point live counts to the generated inventory and retain the dated 2026-08-07 snapshot:

9 registered / available / parsed canonical sources
1,796 normalized runs

The dashboard guide documents the current canonical CV source, Cross-validation panel, accessible chart tables, keyboard behavior, and three-browser production QA procedure. The interactive dashboard was already linked from the repository documentation navigation and remains so.

Validation

Authoritative clean-head run on:

head: de46dc826846395c9f3d0088f15c6dfc4bf79cd5
Benchmark Frontend CI #489 — success

All six jobs pass:

python-data (3.9) — success
python-data (3.11) — success
frontend typecheck/build — success
staleness — success
frontend-e2e (Chromium dev-server regression) — success
production-qa (Chromium + Firefox + WebKit, nested deployed path) — success

The production QA test step itself completed successfully on the committed docs deployment. No temporary implementation/materialization/documentation workflow or helper script remains in the final diff.

Scope boundaries

  • no URL-persisted filter state;
  • no full mobile redesign;
  • no table virtualization or bundle partitioning without measured need;
  • no unrelated schema or statistical implementation change;
  • no screenshots are committed as unstable product artifacts.

Tracks and completes #92.

@TheHiddenObserver TheHiddenObserver left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

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

Fresh final review is complete on the current head. I rechecked the deployed-path server/base contract, progressive accessibility hooks, keyboard activation and focus semantics, metric-panel disclosure state, exact chart-data table fallback, generated asset materialization, production Playwright selectors, documentation/navigation integration, and CI wiring. No blocking correctness, accessibility, maintainability, or deployment-path findings remain. Benchmark Frontend CI #489 passes all six jobs, including the existing Chromium regression and the new production QA gate against the committed /docs/assets/benchmarks/ bundle in Chromium, Firefox, and WebKit. There are no unresolved review threads. Recommend squash merge into feature/benchmark-frontend-dashboard.

@TheHiddenObserver
TheHiddenObserver marked this pull request as ready for review August 7, 2026 11:12
Copilot AI lite review requested due to automatic review settings August 7, 2026 11:12
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@cursor

cursor Bot commented Aug 7, 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.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@TheHiddenObserver
TheHiddenObserver merged commit c815b89 into feature/benchmark-frontend-dashboard Aug 7, 2026
6 checks passed
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