While very powerful, I think it's worth calling out some pitfuls. A few things we've ran into
- long lived feature flags that are never cleaned up (which usually cause zombie or partially dead code)
- rollout drift where different environments or customers have different flags set and it's difficult to know who actually has the feature
- not flagging all connected functionality (i.e. one API is missing the flag that should have had it)
A good decom/cleanup strategy definitely helps