← ClaudeAtlas

principle-release-engineeringlisted

Release engineering — semver discipline, rollout strategy, rollback planning, expand-contract for breaking changes, kill-switch, idempotent release automation, post-release verification. Auto-load when cutting a release, planning a breaking API change, writing release notes, choosing a version bump, using a feature flag as a kill-switch, or building release automation scripts.
lugassawan/swe-workbench · ★ 2 · AI & Automation · score 68
Install: claude install-skill lugassawan/swe-workbench
<!-- preload-canary: SWB-PRELOAD-PRINCIPLE-RELEASE-ENGINEERING --> # Release Engineering A release is a promise: a specific artifact, at a specific version, reachable at a specific address, forever. Every discipline here protects that promise. ## Semver discipline `MAJOR.MINOR.PATCH` — each level communicates an intent to callers. | Bump | Meaning | Example | |------|---------|---------| | PATCH | Backward-compatible bug fix only | `1.2.3 → 1.2.4` | | MINOR | New capability, backward-compatible | `1.2.3 → 1.3.0` | | MAJOR | Breaking change — callers must adapt | `1.2.3 → 2.0.0` | Never skip levels to signal "importance" (`1.0.0 → 3.0.0`). Pre-1.0 (`0.x.y`) still communicates intent: MINOR adds capability, PATCH fixes bugs, and a MAJOR bump to `1.0.0` signals API stability. If you're unsure between MINOR and MAJOR, default to MAJOR — over-caution is safe, under-caution breaks callers. ## Expand-contract for breaking changes Never atomically break a public contract. Ship in three independent deployments: 1. **Expand** — add the new interface alongside the old one. Both work. 2. **Migrate** — update all callers to the new interface. Old interface idle. 3. **Contract** — remove the old interface once callers are migrated. Each phase ships and bakes before the next begins. A rollback at any phase is safe because the old path still exists. For *schema* expand-contract mechanics — column backfills, dual-write windows, index swaps — defer to `swe-workbench:principle-data-mo