| name | release-prep |
|---|---|
| description | Prepare a release for durabletask and durabletask.azuremanaged. Use when the user asks for release prep, version bumping, changelog updates, or release body drafting. Trigger phrases include: release prep, prepare vX.Y.Z, changelog for release, and draft GitHub release notes. |
This skill prepares a coordinated release for both packages in this repository:
durabletaskdurabletask.azuremanaged
The skill accepts a target version (for example 1.4.0) and performs the
required changes consistently.
version: Target semantic version (for example1.4.0)- Optional:
baseTagoverrides for comparison if tags are non-standard
If version is not provided, ask the user before continuing.
- Root package range:
v<previousVersion>..HEAD - Azure managed package range:
azuremanaged-v<previousVersion>..HEAD - Use commit subjects and touched files to classify each change as:
durabletaskonlydurabletask.azuremanagedonly- shared/infra/docs changes
Update both project versions:
pyproject.toml->version = "<version>"durabletask-azuremanaged/pyproject.toml->version = "<version>"
Update azuremanaged dependency floors:
durabletask>=<version>durabletask[azure-blob-payloads]>=<version>
- Add a new
## v<version>section directly under## Unreleasedin:CHANGELOG.mddurabletask-azuremanaged/CHANGELOG.md
- Ensure user-facing changes since the previous release tags are represented.
- Keep entries concise and grouped by type (
ADDED,CHANGED,FIXED,REMOVED) where applicable. - Exclude internal-only changes from changelogs (for example CI/workflow-only updates, test-only changes, and implementation refactors with no public behavior or API impact).
- Run diagnostics on changed markdown and TOML files.
- Fix formatting or heading issues introduced by release prep changes.
- Verify the final diff only contains release-prep updates.
Before creating draft releases in GitHub UI, require explicit user confirmation of both conditions:
- The version-bump/release-prep PR is merged
- Tags
v<version>andazuremanaged-v<version>already exist in the target repository
If either condition is not met, stop after preparing release body text and ask the user to confirm once merge and tags are complete.
Draft two release body texts for the GitHub Releases UI (do not add files to the repository):
- Tag:
v<version> - Tag:
azuremanaged-v<version>
Match existing release structure:
- Title (
# v<version>or# azuremanaged-v<version>) ## What's Changed## External Links### Contributors
Include:
- PyPI link for the exact release version
- Full changelog compare link
- Contributor handles from the commit range
- Keep drafts in the assistant response (or PR comment) so they can be pasted directly into the Releases section
- Keep the release body focused on user-facing changes and avoid internal-only details (CI/test updates or implementation-only notes)
Return a short summary with:
- Updated files
- Commit coverage confirmation
- Any manual follow-ups (for example, tag creation or publishing)