Skip to content

Conversation

@joheredi
Copy link
Member

This PR adds scenario tier categorization to TypeSpec HTTP specs to enable better test coverage management and dashboard filtering.

Changes:

Dashboard Enhancement:

  • Added tier-based filtering dropdown to the spec coverage dashboard
  • Scenarios can now be filtered by "core" or "extended" tiers
  • UI shows tier selection status and filtered scenario counts

Spec Categorization:

  • Added @scenarioTier decorator to 56 TypeSpec spec files across all HTTP spec categories
  • Core tier (essential scenarios): Authentication, basic Parameters, Routes, Server, Type operations, Versioning, etc.
  • Extended tier (advanced scenarios): Complex routing expansions, XML payloads, discriminated unions, streaming, etc.
  • Applied decorators strategically at namespace, interface, or operation level based on scenario groupings

Impact:

  • Enables focused testing and development by allowing teams to run core scenarios first, then extended ones
  • Improves dashboard usability for large test suites
  • Maintains backward compatibility - no breaking changes to existing specs

The tier classification follows the pattern: core scenarios cover fundamental HTTP/REST functionality while extended scenarios test advanced features and edge cases.

@pkg-pr-new
Copy link

pkg-pr-new bot commented Nov 19, 2025

Open in StackBlitz

npm i https://pkg.pr.new/microsoft/typespec/@typespec/http@9040
npm i https://pkg.pr.new/microsoft/typespec/@typespec/http-specs@9040
npm i https://pkg.pr.new/microsoft/typespec/@typespec/spec-coverage-sdk@9040
npm i https://pkg.pr.new/microsoft/typespec/@typespec/spector@9040

commit: 3e22ab8

@github-actions
Copy link
Contributor

github-actions bot commented Nov 19, 2025

All changed packages have been documented.

  • @typespec/http-specs
  • @typespec/spec-coverage-sdk
  • @typespec/spector
Show changes

@typespec/http-specs - feature ✏️

Add scenario tier support to categorize scenarios as "core" or "extended",> ,> - Add @scenarioTier decorator to TypeSpec HTTP specs for better test organization,> - Update spec dashboard to support tier-based filtering of scenarios,> - Enable teams to focus on core functionality testing before extended features

@typespec/spec-coverage-sdk - feature ✏️

Add scenario tier support to categorize scenarios as "core" or "extended",> ,> - Add @scenarioTier decorator to TypeSpec HTTP specs for better test organization,> - Update spec dashboard to support tier-based filtering of scenarios,> - Enable teams to focus on core functionality testing before extended features

@typespec/spector - feature ✏️

Add scenario tier support to categorize scenarios as "core" or "extended",> ,> - Add @scenarioTier decorator to TypeSpec HTTP specs for better test organization,> - Update spec dashboard to support tier-based filtering of scenarios,> - Enable teams to focus on core functionality testing before extended features

@joheredi joheredi force-pushed the joheredi/spector-tiers branch from 4c2b481 to eaa3e17 Compare November 19, 2025 21:58
@azure-sdk
Copy link
Collaborator

azure-sdk commented Nov 19, 2025

You can try these changes here

🛝 Playground 🌐 Website 🛝 VSCode Extension

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