Skip to content

[ci] Clarify dashboard cohort grouping for legacy v1 records#1613

Open
macthecadillac wants to merge 10 commits into
hao-ai-lab:mainfrom
macthecadillac:issue/1535-ci-dashboard-grouping-legacy-v1
Open

[ci] Clarify dashboard cohort grouping for legacy v1 records#1613
macthecadillac wants to merge 10 commits into
hao-ai-lab:mainfrom
macthecadillac:issue/1535-ci-dashboard-grouping-legacy-v1

Conversation

@macthecadillac

Copy link
Copy Markdown
Collaborator

Summary

  • Separate legacy v1, complete v2, and invalid/incomplete v2 benchmark cohorts.
  • Preserve v2 variant and software-profile grouping without merging legacy data.
  • Display canonical comparison and baseline statuses in the React and Plotly dashboards.
  • Add focused service, API, and Plotly regression coverage and update dashboard documentation.

Problem

The performance dashboards could present legacy v1 records alongside v2 benchmark records without clearly communicating their different comparison semantics. Incomplete v2 identities could also be mistaken for legacy data, making regression views and status labels ambiguous.

Solution

Dashboard ingestion now classifies records into complete v2, invalid v2, and legacy v1 cohorts using the canonical comparator identity-presence semantics.

Legacy records remain grouped by model and GPU as historical context. Complete v2 records retain workload, variant, benchmark, hardware, software, and recipe identity dimensions. Invalid v2 records remain isolated and show which identity fields are missing.

Both dashboard implementations now propagate and display comparison status, comparison reason, baseline status, schema version, and cohort kind.

Validation

  • Modal L40S focused dashboard suite: 34 passed, 16 warnings in 3.80s
  • React production build with Node v22.17.1: passed
  • uvx pre-commit run --all-files: passed
  • git diff --check upstream/main...HEAD: passed

The warnings were unrelated dependency deprecations.

Review

An independent reviewer identified an empty-identity-field edge case. An independent adjudicator accepted the finding, aligned both dashboard paths with the comparator, and added service and Plotly regressions. A fresh follow-up review found no actionable issues.

GPU Memory Impact

None. This changes CPU-side dashboard transformation, presentation, tests, and documentation only.

Remaining Risk

The React presentation changes have production-build coverage but no component-level rendering test.

Fixes #1535

Checklist

  • I ran pre-commit run --all-files and fixed all issues
  • I added or updated tests for my changes
  • I updated documentation if needed
  • I considered GPU memory impact of my changes

For model/pipeline changes, also check:

  • I verified targeted Wan T2V SSIM regression tests pass on L40S
  • I updated the support matrix if adding a new model

Not applicable: this change does not modify a model or pipeline.

@mergify mergify Bot added type: ci CI/CD infrastructure scope: infra CI, tests, Docker, build scope: docs Documentation labels Jul 16, 2026
@mergify

mergify Bot commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Merge Protections

🔴 1 of 1 protections blocking · waiting on 👀 reviews and 🤖 CI

Protection Waiting on
🔴 PR merge requirements 👀 reviews and 🤖 CI

🔴 PR merge requirements

Waiting for

  • #approved-reviews-by>=1
  • check-success=full-suite-passed
This rule is failing.
  • #approved-reviews-by>=1
  • check-success=full-suite-passed
  • check-success=fastcheck-passed
  • check-success~=pre-commit
  • title~=(?i)^\[(feat|feature|bugfix|fix|refactor|perf|ci|doc|docs|misc|chore|kernel|new.?model|skill|skills|infra)\]

@gemini-code-assist gemini-code-assist Bot 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.

Code Review

This pull request updates the performance dashboard to support v2 comparison identity, introducing explicit categorization for 'Legacy v1' and 'Invalid v2' records. It propagates comparison status, baseline status, and comparison reasons to the frontend, updating both the summary table and trend charts. The feedback focuses on improving the robustness of the frontend code in App.tsx by updating statusLabel, comparisonStatusLabel, and comparisonStatusClass to safely handle undefined or null values, which prevents potential runtime crashes when rendering legacy or incomplete records.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread apps/performance_dashboard/frontend/src/App.tsx
Comment thread apps/performance_dashboard/frontend/src/App.tsx
Comment thread apps/performance_dashboard/frontend/src/App.tsx
@macthecadillac
macthecadillac marked this pull request as ready for review July 16, 2026 14:43
@SolitaryThinker

Copy link
Copy Markdown
Collaborator

Maintainer follow-up: pandas promotes sparse result_schema_version=2 values to 2.0, so the Plotly path could merge a schema-only invalid-v2 record into Legacy v1. Commit 0a2fd25 fixes the numeric check and extends the existing grouping regression. An independent audit reproduced the bug; diff-check and py_compile passed. No local pytest ran on this Mac; automatic Fastcheck 4503 is the runtime gate.

@SolitaryThinker

Copy link
Copy Markdown
Collaborator

/test /performance

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

scope: docs Documentation scope: infra CI, tests, Docker, build type: ci CI/CD infrastructure

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ci] Dashboard Grouping And Legacy V1

2 participants