Skip to content

feat(spec-dashboard): support explicit emitter coverage groups - #11962

Open
Timothee Guerin (timotheeguerin) wants to merge 2 commits into
microsoft:mainfrom
timotheeguerin:feat/spec-dashboard-emitter-categories
Open

Timothee Guerin (timotheeguerin) wants to merge 2 commits into
microsoft:mainfrom
timotheeguerin:feat/spec-dashboard-emitter-categories

Conversation

@timotheeguerin

@timotheeguerin Timothee Guerin (timotheeguerin) commented Sep 14, 2026

Copy link
Copy Markdown
Member

The coverage overview gives data-plane and management-plane implementations separate cards even when they represent the same language. Grouping implicitly by display name would mix presentation with coverage identity.

Add explicit groups, with scenario-level union coverage and compact per-emitter percentages underneath:

groupEmitters: [
  {
    name: "C#",
    emitters: [
      "@azure-typespec/http-client-csharp",
      "@azure-typespec/http-client-csharp-mgmt",
    ],
  },
]

A scenario counts once per table and is covered if any member covers it. Grouping leaves table columns, report loading, and display names independent; ungrouped emitters retain their own cards.

Alternative to #11709 for the overview grouping in #11699. The Azure dashboard will need to opt into groupEmitters separately.

Coverage overview with the C# emitters grouped into one card and individual data-plane and management-plane percentages underneath

@github-actions

Copy link
Copy Markdown
Contributor

No changes needing a change description found.

@azure-sdk-automation

azure-sdk-automation Bot commented Sep 14, 2026

Copy link
Copy Markdown

You can try these changes here

🛝 Playground 🌐 Website 🛝 VSCode Extension

Copilot AI 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.

🟡 Changes recommended

The new public feature lacks the required @typespec/spec-dashboard feature changeset.

Get a fresh assessment by requesting another Copilot review.

Pull request overview

Adds explicit emitter grouping to Spec Dashboard coverage overviews, enabling union coverage across related emitters while preserving individual metrics.

Changes:

  • Adds the public groupEmitters configuration.
  • Computes scenario-level union coverage and per-emitter percentages.
  • Adds comprehensive tests, styling, and documentation.
File summaries
File Description
packages/spec-dashboard/src/apis.ts Defines emitter-group configuration.
packages/spec-dashboard/src/index.ts Exports EmitterGroup.
packages/spec-dashboard/src/components/dashboard.tsx Passes groups to the overview.
packages/spec-dashboard/src/components/dashboard-az-storage.tsx Supports groups in storage-backed dashboards.
packages/spec-dashboard/src/components/coverage-overview.tsx Implements grouped union coverage cards.
packages/spec-dashboard/src/components/coverage-overview.test.tsx Tests grouping and coverage calculations.
packages/spec-dashboard/src/components/coverage-overview.module.css Styles grouped emitter details.
packages/spec-dashboard/src/utils/coverage-utils.ts Shares completed-status detection.
packages/spec-dashboard/README.md Documents grouping behavior and usage.
cspell.yaml Adds the CSS term to spelling configuration.
Review details
  • Files reviewed: 10/10 changed files
  • Comments generated: 1
  • Review effort level: Balanced

💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread packages/spec-dashboard/src/apis.ts
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