Feature Flag Rollout | Progressive Release
Progressive feature rollouts: start internal, expand to beta, then 5% to 25% to 50% to 100%. GitScrum tracks flag status and coordinates phases.
5 min read
Feature flags transform deployment from all-or-nothing events into controlled rollouts you can tune in real-time. GitScrum helps track feature flag status across tasks, coordinate flag-gated releases, and manage the lifecycle of flags from creation to cleanup.
Feature Flag Fundamentals
Flag Types
FEATURE FLAG CATEGORIES:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β RELEASE FLAGS (temporary): β
β Purpose: Control feature rollout β
β Lifespan: Days to weeks β
β Example: NEW_CHECKOUT_FLOW β
β Remove: After 100% rollout β
β β
β EXPERIMENT FLAGS (temporary): β
β Purpose: A/B testing β
β Lifespan: Duration of experiment β
β Example: PRICING_PAGE_VARIANT_B β
β Remove: When experiment concludes β
β β
β OPS FLAGS (long-lived): β
β Purpose: Operational control β
β Lifespan: Permanent β
β Example: ENABLE_RATE_LIMITING β
β Remove: Never (toggle on/off as needed) β
β β
β PERMISSION FLAGS (long-lived): β
β Purpose: Feature access control β
β Lifespan: Permanent β
β Example: ENTERPRISE_ANALYTICS β
β Remove: Never (controls entitlements) β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Flag Lifecycle
FLAG LIFECYCLE:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β CREATE β DEVELOP β ROLLOUT β STABILIZE β CLEANUP β
β β
β CREATE: β
β β’ Define flag name and type β
β β’ Document purpose and owner β
β β’ Set initial state (off) β
β β
β DEVELOP: β
β β’ Implement feature behind flag β
β β’ Test with flag on/off β
β β’ Ship to production (flag off) β
β β
β ROLLOUT: β
β β’ Enable for internal β beta β gradual % β
β β’ Monitor metrics at each stage β
β β’ Pause/rollback if issues β
β β
β STABILIZE: β
β β’ Reach 100% rollout β
β β’ Monitor for 1-2 weeks β
β β’ Confirm feature is stable β
β β
β CLEANUP: β
β β’ Remove flag checks from code β
β β’ Delete flag configuration β
β β’ Update documentation β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Rollout Strategies
Progressive Rollout
GRADUAL ROLLOUT PLAN:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Feature: NEW_PAYMENT_FLOW β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β STAGE 1: Internal (Day 1) β
β Target: Company employees only β
β Duration: 2 days β
β Success: No critical bugs β
β β
β STAGE 2: Beta (Day 3) β
β Target: Opted-in beta users (~500) β
β Duration: 3 days β
β Success: <1% error rate, positive feedback β
β β
β STAGE 3: 5% (Day 6) β
β Target: Random 5% of users β
β Duration: 2 days β
β Success: Metrics stable vs control β
β β
β STAGE 4: 25% (Day 8) β
β Target: Random 25% β
β Duration: 3 days β
β Success: Conversion rate maintained β
β β
β STAGE 5: 50% (Day 11) β
β Target: Random 50% β
β Duration: 3 days β
β Success: Performance metrics OK β
β β
β STAGE 6: 100% (Day 14) β
β Target: All users β
β Duration: 7 days monitoring β
β Success: Ready for cleanup β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Risk-Based Rollout
ROLLOUT DECISION MATRIX:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β FEATURE RISK β STRATEGY β
βββββββββββββββββββΌβββββββββββββββββββββββββββββββββββββββββββ
β LOW β Internal β 25% β 100% β
β (UI tweaks) β 3-day rollout β
β β β
β MEDIUM β Internal β Beta β 5% β 25% β 50% β 100% β
β (new features) β 2-week rollout β
β β β
β HIGH β Internal β Beta β 1% β 5% β 10% β β
β (payments, β 25% β 50% β 75% β 100% β
β auth, data) β 4-week rollout, extensive monitoring β
β β β
β CRITICAL β Manual approval at each stage β
β (compliance) β Stakeholder sign-off required β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Monitoring and Metrics
Rollout Dashboard
FLAG STATUS DASHBOARD:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β NEW_PAYMENT_FLOW - Stage 4 (25%) β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β ROLLOUT PROGRESS: β
β [βββββββββββββββββββββββββ] 25% β
β β
β METRICS (Flag ON vs OFF): β
β ON OFF DIFF β
β Conversion: 4.2% 4.1% +0.1% β
β
β Errors: 0.3% 0.3% 0.0% β
β
β Load time: 1.2s 1.1s +0.1s β οΈ β
β Completions: 89% 88% +1.0% β
β
β β
β ALERTS: β
β β οΈ Load time slightly elevated - monitoring β
β β
β ACTIONS: β
β [Advance to 50%] [Pause] [Rollback] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Incident Response
ROLLBACK PROCEDURE:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β TRIGGERS FOR ROLLBACK: β
β β’ Error rate > 2x baseline β
β β’ Conversion drop > 5% β
β β’ P0/P1 bug discovered β
β β’ Significant user complaints β
β β
β ROLLBACK STEPS: β
β 1. Disable flag (instant effect) β
β 2. Notify team in #incident channel β
β 3. Document issue β
β 4. Create task for fix β
β 5. Plan re-rollout β
β β
β POST-ROLLBACK: β
β β’ Review what went wrong β
β β’ Update monitoring if needed β
β β’ Consider smaller rollout steps β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ