Scans
A scan is a single analysis run. You can trigger scans manually or configure a schedule so they run automatically. Manual scans let you run cleanup on demand—for example, after a feature ships or at the end of a sprint. Scheduled scans run on a recurring interval without manual intervention. Use scheduled scans to keep flag debt from accumulating.Signal Types
Each scan looks for three signals:Inactive Flags
Flags that haven’t seen any apply or resolve call in the last 30 days. Because no client is using them, they’re safe to remove from code and archive.Archived Flags in Code
Flags you’ve already archived in Confidence. Clients can no longer resolve them, but their references can remain in your codebase as dead code. A scan finds those lingering references so you can remove them.Single Variant Flags
Flags that have returned only one variant to clients over the last 7 days. Because they’re no longer splitting traffic, they behave like a constant—you can replace each reference with the value the flag has been serving.What Happens to Detected Flags
Cleanup behavior depends on whether the flag appears in your connected repositories.Automatic Archive
If an inactive flag has no references in your connected repositories, there’s nothing to remove from code. With Auto archive enabled, Confidence archives the flag for you automatically. Automatic archiving only applies to inactive flags with no code references. It does not archive flags that are still referenced, or single variant flags.Cleanup Pull Request
If a stale flag is still referenced in code, a coding agent opens a pull request that removes the flag and replaces each reference with the appropriate constant value:- Single variant flag: replaced with the variant’s value
- Inactive or archived flag: replaced with the call-site default
The Confidence home page also shows a Clean up your workspace card when
any of your flags haven’t been applied in over a week. It’s a quick way to
archive individual flags without running a full scan.
Run a Manual Scan
1
Go to Flag Cleanup
Select Flags > Cleanup in the sidebar.
2
Click Run scan
The scan analyzes your flags and any connected repositories. Results appear
when the scan completes.
3
Review the results
Each row shows the flag name, the signal type (inactive, archived in code,
or single variant), and any code references found.
- For flags without code references, click Archive to archive the flag directly, or Dismiss to skip it.
- For flags with code references, click Open PR to have a coding agent open a cleanup pull request in the affected repository.
Set a Scan Schedule
1
Go to Flag Cleanup
Select Flags > Cleanup in the sidebar.
2
Open Schedule settings
Click Schedule in the top right.
3
Set the frequency
Choose how often the scan runs—daily, weekly, or monthly—and click
Save.
Enable Auto Archive
With auto archive enabled, Confidence automatically archives inactive flags that have no references in your connected repositories. You don’t need to review and manually archive each one.1
Go to Flag Cleanup
Select Flags > Cleanup in the sidebar.
2
Open settings
Click Settings in the top right.
3
Turn on auto archive
Enable Auto archive inactive flags and click Save.
Auto archive only applies to inactive flags with no code references. Flags
that are still referenced in code are never archived automatically—they appear
in scan results for you to review.
Integrations
Scans work without any integrations. Without a GitHub connection, Confidence detects stale flags and—with automatic archiving enabled—archives inactive ones automatically. Connecting a GitHub repository adds code analysis, so scans can find references in your source code and trigger cleanup pull requests. Opening those pull requests requires a coding agent.Related Resources
Archive a flag
Manually archive a flag that’s no longer needed
Flags reference
Flag schemas, variants, and lifecycle

