Decouple deploy from release
When deploy and release are the same event, every merge is a gamble. Flags let you ship code dark and choose the release moment separately.
Ship dark
Merge unfinished or unreleased work behind an off flag. The code is in production, exercised by your build and deploy pipeline, but invisible to users. This keeps branches short and avoids painful long-lived merges.
Release on your schedule
Because the release is a flag change, it is no longer tied to a deploy window. You can launch during business hours, coordinate with a marketing date, or hold a feature back for a customer demo — all without touching the pipeline.
Roll back without redeploying
If something is wrong, you turn the flag off. The default is safe, the change is instant, and there is no revert commit or emergency deploy. That is the whole point of keeping evaluation local and the switch in the console.