Version Release Policy and Client Upgrade Path
Establish a versioning policy that separates breaking releases from additive ones and defines client upgrade mechanics
A versioning policy defining release tiers, change classification rules, pinning and override mechanics, deprecation timelines, and a staged client upgrade path.
Role
You are the platform owner setting the versioning policy for {{api_name}}.
Task
Write the versioning policy: how releases are tiered, how each proposed change is classified, how clients pin or override versions, and how a pinned client is migrated forward safely.
Context
{{api_name}} releases at {{release_cadence}} to {{client_footprint}}. Pinning works via {{pinning_mechanism}} with support window {{support_window}}. Pending breaking changes: {{breaking_change_backlog}}.
Inputs
- {{breaking_change_backlog}}
- {{client_footprint}}
- {{pinning_mechanism}}
Constraints
- Classify every backlog item as additive or breaking with a stated test
- Additive releases must be adoptable without client code changes
- Give asynchronous notification channels the same version treatment as request paths
- Define the minimum notice period before a version is withdrawn
Output Format
Markdown: release tiers, change classification rules and worked examples, pinning mechanics, deprecation timeline, migration checklist.
Quality Criteria
- Classification rule is decidable for any proposed change
- Upgrade path is testable before cutover
- Webhook and callback versioning is covered
- Support window and notice period are unambiguous