Files
Ramon Niebla bfbcd29112 feat: add launchdarkly-flag-drift skill (#119)
* feat: add launchdarkly-flag-drift skill

Detect and reconcile drift between a feature flag's in-code SDK fallback
default and its LaunchDarkly default rule (fallthrough), updating only the
default argument without removing the flag or changing its evaluation.

Co-authored-by: Cursor <cursoragent@cursor.com>

* test(evals): add eval suite for launchdarkly-flag-drift

Add a promptfoo suite covering drift reconciliation, the no-drift
(no code change, no PR) case, and a registry-declared default, asserting
the agent resolves the fallthrough via get-flag and never mutates the flag.
Register the suite in the manifest and add npm scripts.

Co-authored-by: Cursor <cursoragent@cursor.com>

* feat(flag-drift): check fallthrough across all critical environments

Address review feedback that the skill only reconciled the in-code
default against a single environment. The in-code fallback default is a
single value that must stand in for every environment the build serves,
so the fallthrough is now resolved in each critical environment.

When critical environments agree, that shared value is the expected
default and reconciliation proceeds as before. When they disagree (e.g.
EU serves true but Federal serves false), the skill surfaces the
per-environment divergence and confirms which environment is
authoritative instead of silently reconciling to one. Updates the
prerequisites, workflow, edge cases, summary fields, and PR template
accordingly.

Co-authored-by: Ramon Niebla <nieblara@users.noreply.github.com>

* test(evals): cover cross-environment fallthrough divergence for flag-drift

Add a divergence eval where one build serves both production and federal
environments that disagree on the fallthrough. The mock now returns the
opposite default (variation 0) for any /federal/i environment key, so the
skill must query each critical environment and surface the divergence
rather than blindly reconciling. Adds mock unit tests for the hook.

Co-authored-by: Ramon Niebla <nieblara@users.noreply.github.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Ramon Niebla <nieblara@users.noreply.github.com>
2026-07-28 12:30:54 -07:00
..