FEATURE CONFIGURATION LAB

“25% rollout” should be a deterministic decision.

Flagrail evaluates ordered targeting rules before a stable hash-based rollout, then returns the exact reason for the decision. A global kill switch fails closed without rewriting every targeting rule.

Context + rollout policy

DECISIONOFF
WHY—STABLE BUCKET—

Ordered rules

Same config, different subjects

Evaluation order is explicit: kill switch → enabled state → first matching targeting rule → stable percentage rollout. This is a compact decision engine, not a hosted flag platform or security boundary. Source and tests ↗