--- name: feature-flags description: Use when implementing or debugging code that uses @suaveplan/feature-flags: Provider-agnostic feature flag evaluation with typed flag values, strategy chains, and deterministic bucketing. --- # @suaveplan/feature-flags Provider-agnostic feature flag evaluation engine for controlling feature rollout without code deploys. The package ships a `FlagManager` high-level façade, a `FlagRegistry` backed by any pluggable `FlagProvider`, and an `Evaluator` strategy chain. Five composable strategies cover the full rollout playbook: `PercentageStrategy` (deterministic FNV-1a bucketing for consistent user cohorts), `UserTargetStrategy` (allowlist), `AttributeStrategy` (10 comparison operators for segment targeting), `ScheduleStrategy` (time-window gating), and `CompositeStrategy` (AND/OR combinator). Built-in providers include `MemoryProvider` and `JsonProvider` for file-based flag definitions. Evaluation priority is: flag disabled → in-process override → first matching strategy → default value. This package is for runtime flag evaluation only — it is not a flag management UI or remote config service. ## When to use this skill - Implementing or debugging code that imports `@suaveplan/feature-flags`. - The task touches: see package README. - You need API guidance for this package's exports. ## Quick reference ```ts import { /* see API Reference below */ } from "@suaveplan/feature-flags"; ``` ## Dependencies Workspace dependencies: `@suaveplan/error`, `@suaveplan/events`, `@suaveplan/logger`, `@suaveplan/types` ## Where to read more This skill is intentionally short. The package's own documentation is the authoritative source — read these in order: 1. **`packages/platform/feature-flags/README.md`** — overview, install, quick-start, module index 2. **`packages/platform/feature-flags/src/**/*.md`** — co-located docs per implementation file (Purpose, Features, Basic + Advanced examples, full API reference, Implementation notes — all packages ship ≥200 words per module) 3. **`packages/platform/feature-flags/package.json`** `exports` map — every subpath you can import from When the user asks an API question, read the relevant co-located `.md` first; do not answer from training-data memory. ## See also - `@suaveplan/error` - `@suaveplan/events` - `@suaveplan/logger` - `@suaveplan/types` --- _This SKILL.md is auto-generated by `suaveplan-skills/scripts/generate-skills.ts` from the package's README. Do not edit by hand — re-run the generator after the README changes._