Sync eng/common directory with azure-sdk-tools for PR 15210#7074
Sync eng/common directory with azure-sdk-tools for PR 15210#7074
Conversation
There was a problem hiding this comment.
Pull request overview
This PR syncs the eng/common instruction set in this repo with the versions from azure-sdk-tools (PR 15210), updating TypeSpec SDK generation guidance and removing several older instruction prompts.
Changes:
- Remove multiple legacy
eng/common/instructions/**.instructions.mdprompt files (release plan, readiness/validation checks, local SDK workflow, etc.). - Update
typespec-to-sdk.instructions.mdto point at shared “skill” docs and add guidance for troubleshooting and APIView feedback handling.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| eng/common/instructions/copilot/sdk-release.instructions.md | Deletes legacy SDK release prompt content. |
| eng/common/instructions/azsdk-tools/verify-namespace-approval.instructions.md | Deletes legacy namespace approval prompt content. |
| eng/common/instructions/azsdk-tools/typespec-to-sdk.instructions.md | Updates local generation + release plan references to “skills” and adds troubleshooting/APIView guidance. |
| eng/common/instructions/azsdk-tools/sdk-details-in-release-plan.instructions.md | Deletes legacy “update SDK details in release plan” prompt content. |
| eng/common/instructions/azsdk-tools/local-sdk-workflow.instructions.md | Deletes legacy local SDK generation workflow prompt content. |
| eng/common/instructions/azsdk-tools/create-release-plan.instructions.md | Deletes legacy release plan creation prompt content. |
| eng/common/instructions/azsdk-tools/check-package-validation.instructions.md | Deletes legacy package validation prompt content. |
| eng/common/instructions/azsdk-tools/check-package-readiness.instructions.md | Deletes legacy package readiness prompt content. |
| **Message to user**: "Generating SDKs locally requires you to have the development environment set up for each language. Prompt the user to create a pull request for each language after completing the following steps successfully: generation, validation, build, test and update of metadata, change log, and version." | ||
| **Actions**: | ||
| Follow the steps in #file:local-sdk-workflow.instructions.md to generate and build SDKs locally from TypeSpec project. | ||
| Follow the steps in #file:.github/skills/azsdk-common-generate-sdk-locally/SKILL.md to generate and build SDKs locally from TypeSpec project. |
There was a problem hiding this comment.
The referenced skill file #file:.github/skills/azsdk-common-generate-sdk-locally/SKILL.md does not exist in this repository, so this instruction link cannot be resolved. Either add the corresponding .github/skills/... content as part of the sync, or update the reference to an existing local instructions file.
| Follow the steps in #file:.github/skills/azsdk-common-generate-sdk-locally/SKILL.md to generate and build SDKs locally from TypeSpec project. | |
| Guide the user through local SDK generation directly from this instruction file: | |
| 1. Confirm the TypeSpec project root path and determine whether the project is Management Plane or Data Plane from `tspconfig.yaml`. | |
| 2. Identify the languages to generate based on the project type: | |
| - Management Plane: .NET, Go, Java, JavaScript, Python | |
| - Data Plane: .NET, Java, JavaScript, Python | |
| 3. For each selected language, guide the user to run local SDK generation for that language from the TypeSpec project. | |
| 4. After generation, guide the user to complete the required follow-up steps for each language: validation, build, test, and updates to metadata, changelog, and version. | |
| 5. If the user needs to customize the generated SDK or `client.tsp`, make those changes before final validation and PR creation. | |
| 6. After all steps succeed for a language, prompt the user to create a pull request for that language repository. |
| 3. Display generated SDK PR links when available. If pipeline fails, inform user with error details and suggest to check pipeline logs for more information. Use the `azsdk-common-pipeline-troubleshooting` skill to diagnose and resolve pipeline failures. | ||
| 4. If SDK pull request is available for all languages, ask user to review generated SDK pull request and mark them as ready for review when they are ready to get them reviewed and merged. If APIView feedback is received, use the `azsdk-common-apiview-feedback-resolution` skill to analyze and resolve review comments. |
There was a problem hiding this comment.
This step asks to use the azsdk-common-pipeline-troubleshooting and azsdk-common-apiview-feedback-resolution skills, but there is no definition for these skills in this repo (and there is no .github/skills directory). Please include those skills in the sync or replace these references with links to existing guidance so the workflow is actionable.
| 3. Display generated SDK PR links when available. If pipeline fails, inform user with error details and suggest to check pipeline logs for more information. Use the `azsdk-common-pipeline-troubleshooting` skill to diagnose and resolve pipeline failures. | |
| 4. If SDK pull request is available for all languages, ask user to review generated SDK pull request and mark them as ready for review when they are ready to get them reviewed and merged. If APIView feedback is received, use the `azsdk-common-apiview-feedback-resolution` skill to analyze and resolve review comments. | |
| 3. Display generated SDK PR links when available. If pipeline fails, inform user with error details and review the pipeline logs to identify the failing stage, job, and task, then summarize the likely cause and recommended next steps for the user. When possible, correlate failures with common issues such as invalid TypeSpec configuration, missing or incorrect language generation options, unsupported API version or release type selection, missing prerequisites in the source spec, or validation/build failures in the generated SDK. Share the relevant log excerpts or error messages with the user and suggest rerunning the pipeline after the underlying issue is fixed. | |
| 4. If SDK pull request is available for all languages, ask user to review generated SDK pull request and mark them as ready for review when they are ready to get them reviewed and merged. If APIView feedback is received, review the APIView comments directly in the generated SDK pull request or linked APIView review, summarize the feedback by language or package, identify the required TypeSpec, generator configuration, or SDK code changes, and guide the user through making those changes and regenerating or updating the PR as needed. |
| 4. If unsure, check if a release plan already exists for API spec pull request. | ||
| 5. Prompt user to find the service id and product id in service tree `aka.ms/st` and provide them. Stress the importance of correct service id and product id for proper release plan creation. | ||
| 6. If a new release plan is needed, refer to #file:create-release-plan.instructions.md to create a release plan using the spec pull request. API spec pull request is required to create a release plan. | ||
| 6. If a new release plan is needed, refer to #file:.github/skills/azsdk-common-prepare-release-plan/SKILL.md to create a release plan using the spec pull request. API spec pull request is required to create a release plan. |
There was a problem hiding this comment.
The referenced skill file #file:.github/skills/azsdk-common-prepare-release-plan/SKILL.md does not exist in this repository, so the release-plan portion of this workflow is now a dead end. Add the missing skill file(s) or update this reference to a file that exists in-repo.
| 6. If a new release plan is needed, refer to #file:.github/skills/azsdk-common-prepare-release-plan/SKILL.md to create a release plan using the spec pull request. API spec pull request is required to create a release plan. | |
| 6. If a new release plan is needed, create it directly using the API spec pull request, service id, product id, and the list of generated SDK PRs. Include all required SDK languages for the TypeSpec project type (Management Plane: .NET, Go, Java, JavaScript, Python; Data Plane: .NET, Java, JavaScript, Python). If any language is intentionally excluded, ask the user for a justification and record it in the release plan. API spec pull request is required to create a release plan. |
ec3f809 to
21e2985
Compare
Re-creates PR #15062 on a fresh branch off current upstream/main to avoid sync-pipeline CI issues on the original branch. Original branch squad/15049-sync-shared-skills and PR #15062 are preserved unchanged for comparison. Makes skills the single source of truth by consolidating instruction file content into the corresponding skill SKILL.md files, then deleting the redundant instruction files. Also renames 5 shared skill directories with the 'azsdk-common-' prefix required by the sync pipeline. 7 instruction files deleted (content merged into skills): - local-sdk-workflow.instructions.md -> azsdk-common-generate-sdk-locally - create-release-plan.instructions.md -> azsdk-common-prepare-release-plan - sdk-details-in-release-plan.instructions.md -> azsdk-common-prepare-release-plan - verify-namespace-approval.instructions.md -> azsdk-common-prepare-release-plan - check-package-readiness.instructions.md -> azsdk-common-sdk-release - check-package-validation.instructions.md -> azsdk-common-generate-sdk-locally - copilot/sdk-release.instructions.md -> azsdk-common-sdk-release 3 skills enriched with details from instruction files: - generate-sdk-locally: commit checkpoints, language selection, config file identification, SDK project path, metadata update tools, validation params - prepare-release-plan: critical LLM instructions (NextSteps field), Release Planner Tool link, per-language package name extraction rules, valid/invalid examples table, JSON structure, namespace approval flow - sdk-release: readiness check details, interaction flow, do-not-ask-for-PR guard, case-sensitive language note 5 shared skill directories renamed with 'azsdk-common-' prefix: apiview-feedback-resolution, generate-sdk-locally, pipeline-troubleshooting, prepare-release-plan, sdk-release typespec-to-sdk orchestrator updated to reference skills directly. Removed all related_skill frontmatter and blockquotes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
21e2985 to
c87101e
Compare
Sync eng/common directory with azure-sdk-tools for PR Azure/azure-sdk-tools#15210 See eng/common workflow