# Collapse a feature flag that has been fully rolled out

A flag at full rollout for a quarter, removed along with the branch nobody takes.

Category: Tech debt and deprecations
Source: https://letsship.ai/use-cases/collapse-a-rolled-out-feature-flag
Published: 2026-08-25

## Goal

Remove a feature flag that has been fully rolled out and delete the unused branch.

## Acceptance criteria

- Rollout evidence covering a stated period is attached
- The flag and its dead branch are removed everywhere
- Tests covering the removed branch are deleted with it
- The flag definition is removed from the flag service too

## What lands as proof

Rollout evidence plus a diff that removes both the flag and the branch it guarded.

## Prompt

Copy this to an agent to open the ticket:

```text
Create a Linear issue in my team and assign it to the SHIP agent.

Title: Collapse the {flag} feature flag

Description: Remove a feature flag that has been fully rolled out and delete the unused branch.

Acceptance criteria:
- Rollout evidence covering a stated period is attached
- The flag and its dead branch are removed everywhere
- Tests covering the removed branch are deleted with it
- The flag definition is removed from the flag service too

Before you create the issue, list this repository's flags at full rollout for over a quarter and replace {flag}.
```

## Questions

### What does the agent actually change?

The ticket is scoped to one outcome: remove a feature flag that has been fully rolled out and delete the unused branch. Work that serves that outcome is in scope, and anything outside it is left for a separate ticket, so the pull request stays reviewable.

### How do I know the work is done?

The pull request carries the evidence, not only the diff. Here that means both branches accounted for, the dead branch removed, so a reviewer can confirm the result without reproducing the work locally.

### How much oversight does this need?

The run stops once the plan is written. Somebody reads the approach and approves it before any code exists, which is the cheapest moment to redirect the work.
