Setting the file. One moment. Safety Checklist · Launchdarkly Flag Targeting · launchdarkly/ai-tooling · Skills Docs
Run through this checklist before applying any targeting changes, especially in production.
- Not done: Confirmed the environment with the user (don’t assume “production”)
- Not done: If the user said “turn it on” without specifying, ask which environment
- Not done: Confirmed the flag key matches what the user intends
- Not done: If the flag key could be ambiguous, verify with
get-flag
- Not done: Fetched the flag’s current configuration in the target environment
- Not done: Noted the current
on state, rules, and targets
- Not done: Identified any prerequisites that must be met
Some environments require approval for changes.
- Not done: If any mutation tool returns
requiresApproval: true, inform the user
- Not done: Provide the approval URL if one was returned
- Not done: Offer to create an approval request with
create-approval-request using the returned instructions
- Not done: Include a clear description of the intended change in the approval request
- Not done: Do NOT attempt to bypass approval or auto-approve
- Not done: If checking on a previous request, use
list-approval-requests
- Not done: Only apply a request (
apply-approval-request) if reviewStatus is “approved”
- Not done: Added a
comment to the change explaining what and why
- Not done: This is especially important for production changes
- Not done: Weights sum to exactly 100% (100000 in the API)
- Not done: The rollout is on the default rule (fallthrough) unless intentionally on a specific rule
- Not done: Individual targets and higher-priority rules aren’t silently overriding the rollout for some users
- Not done: Consider starting small (1-5%) for high-risk features
- Not done: New rules are placed at the correct position in evaluation order
- Not done: Clauses correctly express the targeting intent (AND within a rule, OR between rules)
- Not done: The
negate field is set correctly (default false)
- Not done: The context kind matches what the codebase sends (e.g.,
user, device, organization)
- Not done: Attribute names match exactly what the SDK sends (case-sensitive)
- Not done: The values match exactly what the SDK sends as the user/context key
- Not done: Individual targets are intended to override rules (they always win)
- Not done: Using
replaceTargets intentionally: it replaces ALL targets, not just adds
- Not done: Source environment is the one you tested in
- Not done: Target environment is correct
- Not done: You’ve selected the right included actions (don’t accidentally copy ON state to production if you only meant to copy rules)
- Not done: Target environment’s approval requirements are considered
For any change to a production environment:
- Not done: Change has been tested in a lower environment first (staging, dev)
- Not done: Rollback plan is clear (what to do if something goes wrong)
- Not done: Comment explains the change for audit trail
- Not done: If doing a percentage rollout, start with a small percentage first
- Not done: Verified the new state with
get-flag
- Not done: Described the resulting targeting to the user in plain language
- Not done: Confirmed the change achieves what the user asked for
references/safety-checklist.md