← Help & Docs

Release Management

Bundle change requests into coordinated deployments with rollout + rollback plans and a deployment log. Last updated 2026-05-17

A Release groups multiple ChangeRequests into a single coordinated deployment with shared rollout/rollback plans, success criteria, and a chronological deployment log. ITIL Release & Deployment Management.

How end users experience a release

Most end users never directly interact with a Release — but they DO feel the effects. Here's what shows up on the user side:

For most users, the Release layer is invisible plumbing — you just see your task resolve when the deploy ships. The visibility is there for users who want to know when their request will be fulfilled.

Status lifecycle

planned → approved → scheduled → in-progress → deployed | rolled-back | cancelled

Designing a release

POST /api/releases (Admin) or MCP create_release. Fields:

Deployment log

Every release has a chronological deploymentLog[] for capturing notes during execution.

Transitioning status

POST /api/releases/:id/status (Admin) or MCP transition_release_status. Body: status (required), note (optional), rollback_reason (required when status=rolled-back).

Auto-stamped timestamps:

Every transition auto-appends a log entry. Don't manually post a "status changed" log entry — the transition handler does it.

Managing linked changes

POST /api/releases/:id/add-changes (Admin) — bulk add or remove ChangeRequest ids. Up to 100 per call. Idempotent. Use to compose the release from approved CRs, or to drop a CR that got rejected at CAB.

Note: the release's get_release response enriches with linked change summaries (controlId, controlTitle, changeType, cabDecision, approvalStatus, scheduledStart) so you can see at a glance which CRs are CAB-approved vs. pending.

REST endpoints

MCP tools (5, HTTP + stdio parity)

Recommended patterns

Pitfalls