mirror of
https://github.com/launchdarkly/ai-tooling.git
synced 2026-09-14 20:00:40 +08:00
bfbcd29112
* 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>