Azure / Azure/azure-sdk-tools

Add release-time verification that package name exists on azure-rest-api-specs main

Open
#16,617 2 comments 0 reactions 1 assignee Claimed by @tjprescott View on GitHub
AzSDK Tools Agent
Dominant language
C#
Stars
135
Forks
260
Avg merge
3d 1h
Merged PRs (30d)
144

Description

## Context

With package name approval moved upstream to the spec PR phase (azure-rest-api-specs), we removed the release-time ADO field check (PR #16607). However, there is no hard verification at release time that the package's spec actually exists on the main branch of azure-rest-api-specs.

Service teams that release from non-main branches (e.g. RPaasMaster) or use skip flags could potentially bypass the approval process.

## Proposal

Add a small step in the release pipeline that:

1. Looks up the package being released in `azure-rest-api-specs` main branch
2. Runs the typespec-metadata emitter or reads `tspconfig.yaml` to get the approved package name
3. Compares it to the package name being released
4. Fails the release if the package name is missing or mismatched

This is a lightweight safety net - one API call to verify the spec exists on main, no ADO fields, no label lookups.

## Why

- Main branch of azure-rest-api-specs is the source of truth for package name approval
- Some teams release from non-main branches where the approval workflow may not have run
- Pipeline skip flags and workarounds exist that could bypass process assumptions
- A proactive check prevents all edge cases

## References

- PR #16607 - removed the old release-time check
- PR #44931 - new spec PR approval workflow
- Discussion with @tjprescott on PR #16607

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.