feature-flags-architect · v1.1.0 · 2026-06-17 · sha256 1c5a08f44882aff7
feature-flags-architect v1.1.0A
Immutable. This exact content is served forever at /api/v1/blob/1c5a08f44882aff7.
--- name: feature-flags-architect description: > Feature flag strategy, lifecycle, and operations. Use when designing a flag taxonomy, planning a gradual rollout, building kill switches, auditing flag debt, defining governance, running progressive delivery, or rolling back via flags. license: MIT + Commons Clause metadata: version: 1.1.0 author: borghei category: engineering domain: engineering updated: 2026-06-17 tags: [feature-flags, progressive-delivery, rollouts, kill-switches, release-engineering, experimentation, flag-governance] --- # Feature Flags Architect End-to-end feature flag design, rollout, and lifecycle management. Covers flag taxonomy (release vs ops vs experiment vs permission), gradual rollout patterns with blast-radius math, kill-switch runbooks, governance (who can flip what), and the flag-debt cleanup loop that keeps a codebase from drowning in stale flags. This skill is provider-agnostic: the patterns work whether you run LaunchDarkly, Statsig, Unleash, Flagsmith, ConfigCat, GrowthBook, OpenFeature, or a homegrown system backed by Redis/DynamoDB/Postgres. ## Core Capabilities - **Flag taxonomy** — classify every flag as one of four types (release, ops, experiment, permission); the type sets lifetime, who flips it, and auto-expiry. - **Rollout ramps** — dogfood → canary → 100% schedules with per-step blast-radius math and ramp templates by change type. - **Kill switches** — ops-flag pattern with fail-open/closed decisions, runbooks, and alerting for risky dependencies or code paths. - **Governance** — role-based who-can-flip-what matrix plus audit-log/retention requirements, mappable onto any flag system. - **Flag debt cleanup** — quarterly inventory → classify → decide → execute → measure loop to keep flag count flat or shrinking. - **End-to-end workflows** — add a release flag, build a kill switch, audit flag debt, flag-based rollback after a bad release. ## Flag taxonomy — the four types Every flag belongs to exactly one of these four types. The type determines the lifecycle, who can flip it, and whether it should auto-expire. Mixing types in one flag is a root cause of flag debt. | Type | Purpose | Lifetime | Who flips | Auto-expire? | |------|---------|----------|-----------|--------------| | **Release** | Decouple deploy from release. Ship code dark, ramp to users. | Days to weeks | Engineer who owns the feature | Yes — remove after 100% rollout + 1 release | | **Ops** | Kill switches, circuit breakers, throttles. Turn off risky behavior fast. | Permanent or long-lived | Oncall / SRE / platform team | No — but review quarterly | | **Experiment** | A/B test, multi-arm bandit, hold-out group. Measure causal impact. | Weeks to months (test duration) | Product / data / growth | Yes — remove after winner is shipped | | **Permission** | Entitle users to features based on plan, role, beta-list. | Permanent | Product / billing | No — but consolidate into entitlement system | **Decision rule when adding a flag:** name the type. If you can't, the flag shouldn't exist yet — clarify intent first. ## When to Use - Designing a flag system from scratch — start with the **flag taxonomy**. - Planning a risky release (DB migration, payment-provider swap, framework upgrade) — use the **rollout ramp** + **kill switch**. - Auditing a codebase with hundreds of growing flags — use **flag debt cleanup** + `scripts/flag_audit.py`. - Setting up an A/B test or hold-out — covers the flag side; pair with `engineering/experiment-design` for statistics. - Building a kill switch for a third-party dependency outage — use the **kill switch runbook** generator. - Defining who in the org can flip production flags — use the **governance** matrix. - Building entitlements / paid-tier gating — use this for flag mechanics; `business-growth/paywall-upgrade-cro` for the UX. ## Tools | Tool | Purpose | Command | |------|---------|---------| | `flag_audit.py` | Scan a codebase for flag references, age, classification, and recommended action (optionally cross-reference a control-plane export) | `python scripts/flag_audit.py --path . --format markdown` | | `rollout_simulator.py` | Model a rollout: per-step blast radius, time-to-detect, recommended schedule | `python scripts/rollout_simulator.py --users 500000 --profile standard` | | `kill_switch_runbook.py` | Generate a kill-switch runbook (default state, flip procedure, validation, escalation) | `python scripts/kill_switch_runbook.py --flag ops.recs.kill_switch --feature Recommendations --dependency recs-svc` | All scripts: standard library only, argparse CLI, JSON + human-readable output. Run `--help` for full usage. ## References Load the reference that matches the task — keep this file lean and pull detail on demand: - **[references/flag-types-and-patterns.md](references/flag-types-and-patterns.md)** — the four flag types in depth, code patterns per type, evaluation-context schema, naming conventions, server-vs-client trade-offs, and storage models. Read when designing a flag system or writing the gating code. - **[references/operations-governance-and-workflows.md](references/operations-governance-and-workflows.md)** — the standard ramp table, blast-radius math, kill-switch design, the governance matrix + audit-log requirements, the flag-debt cleanup loop, all four end-to-end workflows, the anti-patterns list, and the tooling input/output reference. Read when running a rollout, defining governance, or executing a workflow. - **[references/rollout-and-kill-switch-playbook.md](references/rollout-and-kill-switch-playbook.md)** — rollout decision tree, ramp templates by change type, cohort/segment selection, kill-switch design, and monitoring/alerting hookup. Read when planning a specific ramp or wiring kill-switch alerting. - **[references/flag-debt-and-cleanup.md](references/flag-debt-and-cleanup.md)** — what flag debt costs, the cleanup cadence, dead-code detection, safe removal procedures, PR templates, and governance for flag count. Read when paying down stale flags. ## Scope & Limitations **This skill covers:** flag taxonomy and lifecycle, rollout ramps with blast-radius math, kill-switch design and runbooks, governance/audit requirements, and flag-debt cleanup — provider-agnostic across LaunchDarkly, Statsig, Unleash, Flagsmith, ConfigCat, GrowthBook, OpenFeature, and homegrown systems. **This skill does NOT cover:** the statistical design of A/B tests (pair with `product-team/experiment-design`), the paywall/upgrade UX for entitlements (`business-growth/paywall-upgrade-cro`), or the metric instrumentation needed to make ramp decisions (`engineering/observability-designer`). ## Related skills - `engineering/observability-designer` — wire the metrics needed to make ramp decisions - `engineering/incident-commander` — flag-based rollback during incidents - `engineering/chaos-engineering` — verify kill switches actually work under fault injection - `product-team/experiment-design` (if available) — statistical design of A/B tests behind flags