From a4ce72ceef75df3dc10466f530dbe0e774e50f0c Mon Sep 17 00:00:00 2001 From: Summer Warren Date: Wed, 15 Oct 2025 15:49:54 -0700 Subject: [PATCH 1/2] Allow forced creation when release plans already exist --- .../create-release-plan.instructions.md | 26 ++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/eng/common/instructions/azsdk-tools/create-release-plan.instructions.md b/eng/common/instructions/azsdk-tools/create-release-plan.instructions.md index 4f8b66b967..b6abf06a77 100644 --- a/eng/common/instructions/azsdk-tools/create-release-plan.instructions.md +++ b/eng/common/instructions/azsdk-tools/create-release-plan.instructions.md @@ -12,14 +12,7 @@ Follow these steps in order to create or manage a release plan for an API specif - If no pull request is available, prompt the user to provide the API spec pull request link - Validate that the provided pull request link is accessible and valid -## Step 2: Check Existing Release Plan -- Use `azsdk_get_release_plan_for_spec_pr` to check if a release plan already exists for the API spec pull request -- If a release plan exists: - - Display the existing release plan details to the user - - Skip to Step 5 (Link SDK Pull Requests) -- If no release plan exists, proceed to Step 3 - -## Step 3: Gather Release Plan Information +## Step 2: Gather Release Plan Information Collect the following required information from the user. Do not create a release plan with temporary values. Confirm the values with the user before proceeding to create the release plan. If any details are missing, prompt the user accordingly: @@ -31,25 +24,34 @@ If any details are missing, prompt the user accordingly: - "beta" for preview API versions - "stable" for GA API versions -## Step 4: Create Release Plan +## Step 3: Create Release Plan - If the user doesn't know the required details, direct them to create a release plan using the release planner - Provide this resource: [Release Plan Creation Guide](https://eng.ms/docs/products/azure-developer-experience/plan/release-plan-create) - Once all information is gathered, use `azsdk_create_release_plan` to create the release plan +- If existing release plans are found, follow the instructions under Step 3a - Handle Existing Release Plans - Display the newly created release plan details to the user for confirmation - Refer to #file:sdk-details-in-release-plan.instructions.md to identify languages configured in the TypeSpec project and add them to the release plan -## Step 5: Update SDK Details in Release Plan +### Step 3a: Handle Existing Release Plans +- When `azsdk_create_release_plan` returns existing release plans. + - Extract and display key information: Release Plan ID, status, associated languages, SDK PRs + - Present the three options: + 1. **Work with the existing release plan** - Use the current release plan and make any needed updates + 2. **Force create a new release plan** - Create a completely new release plan even though one already exists + 3. **Cancel** - Don't proceed with release plan creation + +## Step 4: Update SDK Details in Release Plan - Refer to #file:sdk-details-in-release-plan.instructions.md to add languages and package names to the release plan - If the TypeSpec project is for a management plane, refer to #file:verify-namespace-approval.instructions.md if this is first release of SDK. -## Step 6: Link SDK Pull Requests (if applicable) +## Step 5: Link SDK Pull Requests (if applicable) - Ask the user if they have already created SDK pull requests locally for any programming language - If SDK pull requests exist: - Collect the pull request links from the user - Use `azsdk_link_sdk_pull_request_to_release_plan` to link each SDK pull request to the release plan - Confirm successful linking for each SDK pull request -## Step 7: Summary +## Step 6: Summary - Display a summary of the completed actions: - Release plan status (created or existing) - Linked SDK pull requests (if any) From d65802cce24ed8583262aeb3f2cbe695471bf7a2 Mon Sep 17 00:00:00 2001 From: Summer Warren Date: Wed, 29 Oct 2025 00:11:48 -0700 Subject: [PATCH 2/2] Update creation instructions --- .../create-release-plan.instructions.md | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/eng/common/instructions/azsdk-tools/create-release-plan.instructions.md b/eng/common/instructions/azsdk-tools/create-release-plan.instructions.md index b6abf06a77..e4d71c2d22 100644 --- a/eng/common/instructions/azsdk-tools/create-release-plan.instructions.md +++ b/eng/common/instructions/azsdk-tools/create-release-plan.instructions.md @@ -1,7 +1,8 @@ -> **Important Note for LLM** -> Backend processes may use Azure DevOps work item data as needed. However, do **not** mention or display the work item link/URL, or any reference to Azure DevOps work item resources directly in conversation with the user. -> All manual updates to an existing release plan must be made through the [Release Planner Tool](https://aka.ms/sdk-release-planner) to ensure proper tracking and validation. -> Only provide release plan details such as **Release Plan Link** and **Release Plan ID** to the user +> **CRITICAL INSTRUCTIONS FOR LLM*** +> 1. Backend processes may use Azure DevOps work item data as needed. However, do **not** mention or display the work item link/URL, or any reference to Azure DevOps work item resources directly in conversation with the user. +> 2. All manual updates to an existing release plan must be made through the [Release Planner Tool](https://aka.ms/sdk-release-planner) to ensure proper tracking and validation. +> 3. Only provide release plan details such as **Release Plan Link** and **Release Plan ID** to the user +> 4. Always check the `NextSteps` field in the tool response and follow any additional prompts provided. Do NOT proceed to other steps until the NextSteps are completed. # Release Plan Creation Process Your goal is to create a valid release plan. You must prompt user to provide all required information and all input must match the format and requirement mentioned in step 3 below. @@ -28,18 +29,10 @@ If any details are missing, prompt the user accordingly: - If the user doesn't know the required details, direct them to create a release plan using the release planner - Provide this resource: [Release Plan Creation Guide](https://eng.ms/docs/products/azure-developer-experience/plan/release-plan-create) - Once all information is gathered, use `azsdk_create_release_plan` to create the release plan -- If existing release plans are found, follow the instructions under Step 3a - Handle Existing Release Plans +- If existing release plans are found, extract and display key information: Release Plan ID, status, associated languages, SDK PRs - Display the newly created release plan details to the user for confirmation - Refer to #file:sdk-details-in-release-plan.instructions.md to identify languages configured in the TypeSpec project and add them to the release plan -### Step 3a: Handle Existing Release Plans -- When `azsdk_create_release_plan` returns existing release plans. - - Extract and display key information: Release Plan ID, status, associated languages, SDK PRs - - Present the three options: - 1. **Work with the existing release plan** - Use the current release plan and make any needed updates - 2. **Force create a new release plan** - Create a completely new release plan even though one already exists - 3. **Cancel** - Don't proceed with release plan creation - ## Step 4: Update SDK Details in Release Plan - Refer to #file:sdk-details-in-release-plan.instructions.md to add languages and package names to the release plan - If the TypeSpec project is for a management plane, refer to #file:verify-namespace-approval.instructions.md if this is first release of SDK.