Managing your flag plan
The Flag Plan page tracks every feature flag in your codebase — its purpose, lifecycle, owner, and cleanup schedule.
Why manage flags
Feature flags accumulate. A flag added for a launch stays in the code long after the feature ships. Over time, the codebase fills with dead branches that confuse readers, slow tests, and occasionally cause bugs when someone flips a forgotten flag.
The flag plan makes this visible: every flag has a lifecycle and a cleanup date. The plan tells you which flags are stale and need removal.
Flag statuses
| Status | Meaning |
|---|---|
| Implemented | In the plan AND in the code, aligned |
| Planned | In the plan, not yet in code (will be added) |
| Stale | In code but marked for cleanup |
| Missing | Was in the plan as implemented, now gone from code |
| Undocumented | In code but not in the plan |
Flag lifecycles
| Lifecycle | When to use |
|---|---|
| Temporary | Launch flags, rollout gates — should be removed after full rollout |
| Permanent | Configuration that stays: per-customer toggles, plan-gated features |
| Experiment | A/B test flags — remove when the experiment concludes |
| Ops | Operational controls: circuit breakers, maintenance mode |
| Kill switch | Emergency disable for a feature — stays permanently |
Working with the plan
Documenting undocumented flags
After a scan, flags found in code but not in the plan show as "undocumented." Click the check icon to add them to the plan with a default lifecycle of "temporary."
Setting cleanup dates
For temporary flags, set a cleanup date. When the date passes, the flag shows a warning: "Cleanup overdue since {date}." This makes tech debt visible.
Creating maintenance tickets
The "Create ticket" button generates a Linear ticket for:
- Flags to implement (planned but not coded)
- Flags to clean up (stale or overdue) — includes the gate site count so the developer knows how much code to remove
- Undocumented flags to decide on (add to plan or remove from code)
Providers detected
The scanner identifies: LaunchDarkly, Unleash, GrowthBook, PostHog, Statsig, Flagsmith, environment variables.