Skip to content

Managing Stale Flags

Feature flags are meant to be temporary. Once a feature is fully rolled out, the flag (and the conditional branches around it in your code) becomes technical debt. RocketFlag’s Caretaker automatically watches your flags, flags the ones that look ready to retire, and helps you remove them from your codebase.

Availability: Caretaker is available for projects that belong to an Organisation on the Teams tier or above. Personal/legacy projects without an Organisation don’t have Caretaker.

RocketFlag periodically evaluates every flag and assigns it a Caretaker status:

StatusMeaning
HealthyEvaluated recently with normal usage patterns. No action needed.
StaleFully rolled out (pinned at a fixed traffic percentage) and unchanged for 30+ days, while still receiving high traffic. It’s probably safe to remove.
DormantHas received no evaluations for 60+ days. The flag may already be gone from your code, or it’s dead code.
SnoozedYou’ve chosen to ignore this flag for a period (see Snoozing).

Healthy flags are left alone. When a flag becomes stale or dormant, RocketFlag surfaces it so you can act.

When a flag is stale or dormant, a Caretaker badge appears next to its name in the flags table. Hover the badge for a short explanation of why the flag was flagged.

To act on a flagged flag:

  1. Open the flag’s detail view (click the flag in the table).
  2. Select the Caretaker tab. (This tab only appears when the flag is stale or dormant.)

The tab shows the current status, an explanation, and the available actions.

The Caretaker tab can generate a tailored removal prompt for the flag — context about the flag, its configuration, and its history, written as instructions for an AI coding agent.

  1. In the Caretaker tab, click Generate prompt.
  2. Click Copy.
  3. Paste it into your AI coding agent (Cursor, GitHub Copilot, Claude, etc.).

The agent uses the prompt to find and remove the flag’s conditional branches from your codebase, leaving only the “feature on” path. Review the change as you would any other pull request, then delete the flag in RocketFlag once it’s no longer referenced.

Not ready to remove a flag yet? Snooze it so it stops appearing as needing attention:

  • In the Caretaker tab, choose Snooze 30 days, Snooze 60 days, or Snooze 90 days.
  • The flag’s status becomes Snoozed until the date you chose, and the Caretaker badge is hidden.
  • When the snooze expires, the Caretaker will re-evaluate and re-flag the flag if it’s still stale or dormant.

To bring a snoozed flag back early, open its Caretaker tab and click Unsnooze.

  1. Once a week, scan your projects for Caretaker badges.
  2. For each flagged flag, decide: remove, or snooze if there’s a reason to keep it.
  3. To remove, generate the prompt, run it through your coding agent, merge the cleanup, then delete the flag.

Keeping on top of stale flags reduces conditional branches in your code, simplifies your logic, and keeps your flag list meaningful. See also Best Practices & Workflow.