Flag statuses and lifecycle stages
Read time: 4 minutes
Last edited: Oct 02, 2024
Overview
This topic explains what the different flag statuses are, and how they relate to a flag's lifecycle. It also describes how to view this information in the LaunchDarkly user interface (UI).
The Flags list shows, for each environment, how many flag evaluations have taken place for each flag.
You can use a project-level filter to filter the list by flag lifecycle stage.
You can use an environment-level filter to filter the list by flag status in that environment.
Flag lifecycle stages
A flag may go through several stages over the course of its lifecycle. The lifecycle stage is based on what is happening across all environments. Not all flags will go through all lifecycle stages.
The following table explains the flag lifecycle stages:
Lifecycle stage | Definition |
---|---|
Live | A flag that was created in the last 30 days, or is permanent, or has a New or Active status. LaunchDarkly automatically indicates that flags are in this stage. |
Ready for code removal | A flag that is temporary, has a "Launched" or "Inactive" status, is older than 30 days, has code references, and is not a prerequisite for any other flags. LaunchDarkly automatically indicates that flags are in this stage. |
Ready to archive | A flag that is temporary, and has no code references, has a "Launched" or "Inactive" status, and is not a prerequisite for any other flags, and is older than 30 days. LaunchDarkly automatically indicates that flags are in this stage. |
Deprecated | A flag that is still being served to customers, but is only being served in older or deprecated versions of your application, and has been manually deprecated. You must specifically deprecate a flag in order for it be in this stage. To learn more, read Deprecating flags. |
Archived | A flag that is no longer being served to customers, and is not a prerequisite of other flags, and has been manually archived. You must specifically archive a flag in order for it to be in this stage. To learn more, read Archiving flags. |
Deleted | A flag that is completely removed from LaunchDarkly. You must specifically delete a flag, and you can only delete a flag after you have archived it. To learn more, read Deleting flags. |
In the Display menu on the Flags list, select Archive checks to display whether a flag is "Ready for code removal" or "Ready to archive." Then, click the indicator to remove the flag from your code, or to archive it. To learn more, read Edit list columns, Code references, and Archiving flags.
Flag status definitions
The flag status lets you know when a flag is new, active, launched, or inactive. It's important to understand flag statuses so you know which flags are safe to remove from your code.
Every feature flag has a status that reflects the state of a flag in each environment. The status is specific to an environment. Use the project-level filters on the Flags list to find flags in a specific status.
The following table explains the flag status definitions:
Status | Definition |
---|---|
New | You created the flag fewer than seven days ago and it has never been evaluated. |
Active | The flag is being evaluated, and either there are either multiple variations configured, you have made changes to its configuration in the past seven days, or the flag is toggled off. |
Launched | The flag is being evaluated, there is only one variation configured, you have made no changes to its configuration in the past seven days, and the flag is toggled on. Launched, temporary flags that are older than 30 days are considered ready for code removal. They are considered ready for archive after you have removed their code references. You can find these flags by filtering your Flags list by flag lifecycle. |
Inactive | The flag has not been evaluated for at least seven days. Inactive, temporary flags that are older than 30 days are considered ready for code removal. They are considered ready for archive after you have removed their code references. You can find these flags by filtering your Flags list by flag lifecycle. |
If you have access to engineering insights, be aware that engineering insights uses more granular definitions of flag status. You can view the flag status on the flag health page.
To learn more, read Flag health.