Skip to content

v0.17.0 — Policy Rollout Controls

Choose a tag to compare

@Alajmah Alajmah released this 21 Jun 00:49
· 191 commits to master since this release

GitWire v0.17.0 turns policy preview into a controlled rollout workflow with approval, promotion, and rollback evidence.

This release adds a governed lifecycle for moving policy from proposed → dry-run → live → rolled back, with full audit trail.

Highlights

  • Policy rollout plan model (8-state lifecycle)
  • Rollout approval workflow (evidence + critical recommendation acknowledgement required)
  • Dry-run-to-live promotion (the only path that writes policy)
  • Rollback evidence (config hashes, replaced-config snapshot)
  • Rollout dashboard (/rollouts) with lifecycle timeline and state-driven actions
  • Non-mutating safety model preserved for preview/simulation

Why it matters

v0.16.0 answered: "What would this policy do?"

v0.17.0 answers: "How do I safely move this policy from proposed → dry-run → live → monitored, with approval and rollback?"

Operators can now:

  • Create a rollout plan with proposed policy
  • Attach validation, simulation, diff, and recommendations evidence
  • Request review and get explicit approval (with critical risk acknowledgement)
  • Promote the approved policy to live (with previous policy snapshot for rollback)
  • Roll back safely if needed (with full audit evidence)

Safety guarantees

  • Promotion is the only path that writes policy — generic transitions blocked
  • Write-before-transition — if policy write fails, state does not change
  • Previous policy snapshot captured before every promotion
  • Rollback evidence includes config hashes for audit proof
  • Approval requires critical recommendation acknowledgement
  • All 4 evidence types required before approval

Included PRs

  • #39 — Policy rollout plan model
  • #40 — Rollout approval workflow
  • #41 — Dry-run-to-live promotion
  • #42 — Rollback evidence
  • #43 — Rollout dashboard
  • #44 — Documentation + release

New API endpoints

Endpoint Purpose
POST /api/rollouts Create rollout plan
GET /api/rollouts List plans with filters
GET /api/rollouts/:id Get plan detail
PATCH /api/rollouts/:id/evidence Attach evidence
POST /api/rollouts/:id/approve Approve plan
POST /api/rollouts/:id/reject Reject plan
POST /api/rollouts/:id/promote Promote to live policy
POST /api/rollouts/:id/rollback Roll back to previous policy

Test status

  • 42 suites
  • 1104 tests
  • CI green: syntax-check, rules-tests, web-tests
  • CodeQL green
  • Protected-branch flow with admin enforcement
  • Deploy workflow passing on self-hosted runner

Release line

v0.14.0-public-baseline → v0.14.1 → v0.15.0 → v0.16.0 → v0.17.0