The price of checked exceptions is an Open/Closed Principle violation.

If you throw a checked exception from a method in your code and the catch is three levels above, you must declare that exception in the signature of each method between you and the catch. This means that a change at a low level of the software can force signature changes on many higher levels.

Robert C. Martin, «Clean Code» page 107

Feature toggles require a robust engineering process, solid technical design and a mature toggle life-cycle management.

Feature toggles could make code more fragile and brittle, harder to test, harder to understand and maintain, harder to support, and less secure.

Feature Toggles Revisited
Proper implementation of feature toggles based on a categorisation of their longevity and dynamism helps dealing with their operational complexity according to Pete Hodgson, consultant at ThoughtWorks. In his post he expands Martin Fowler’s FeatureToggle pattern and proposes Release, Ops, Experiment and Permission Toggle implementation strategies.