Files
git.stella-ops.org/docs/features/unchecked/releaseorchestrator/canary-deployment-controller-with-auto-advance-statistical-analysis-and-auto-rol.md

2.1 KiB

Canary Deployment Controller with Auto-Advance, Statistical Analysis, and Auto-Rollback

Module

ReleaseOrchestrator

Status

IMPLEMENTED

Description

Canary controller for gradual traffic promotion through configurable steps (e.g., 5% -> 10% -> 25% -> 50% -> 100%) with multiple progression strategies (linear, exponential, fibonacci). Auto-advances based on statistical metrics analysis, auto-rolls back on metric threshold breaches, supports manual intervention and configurable promotion schedules.

Implementation Details

  • Modules: src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/, src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Canary/
  • Key Classes:
    • CanaryController (src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/CanaryController.cs) - canary controller with statistical analysis and auto-advance/rollback
    • CanaryController (src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Progressive/Canary/CanaryController.cs) - canary controller implementation
    • TrafficManager (src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.ProgressiveDelivery/TrafficManager.cs) - manages traffic distribution during canary phases
    • CanaryDeploymentStrategy (src/ReleaseOrchestrator/__Libraries/StellaOps.ReleaseOrchestrator.Deployment/Orchestrator/RollingDeploymentStrategy.cs) - canary deployment strategy implementation
  • Interfaces: ICanaryController, ITrafficManager, IDeploymentStrategy
  • Source: SPRINT_20260110_110_003_PROGDL_canary_controller.md

E2E Test Plan

  • Start a canary deployment with 5% initial traffic and verify only 5% of traffic goes to the canary
  • Verify auto-advance: metrics remain healthy and traffic automatically advances to the next step (10%)
  • Verify auto-rollback: inject a metric threshold breach and confirm traffic rolls back to 0% canary
  • Verify progression strategies: configure fibonacci progression and verify steps follow 5%, 8%, 13%, 21%, ...
  • Verify manual intervention: pause auto-advance and manually promote the canary