Loading...
Loading...
Compare original and translation side by side
check-removal-readinessget-flagarchive-flagdelete-flagcheck-removal-readinessget-flagarchive-flagdelete-flagnew-checkout-flowvariation()boolVariation()useFlags()truefalseifnew-checkout-flowvariation()boolVariation()useFlags()truefalseifcheck-removal-readinesssafecautionblockedcheck-removal-readinesssafecautionblockedget-flag| Scenario | Forward Value |
|---|---|
| All critical envs ON, same fallthrough, no rules/targets | Use |
| All critical envs OFF, same offVariation | Use |
| Critical envs differ in ON/OFF state | NOT SAFE — stop and inform the user |
| Critical envs serve different variations | NOT SAFE — stop and inform the user |
get-flag| 场景 | 目标值 |
|---|---|
| 所有关键环境开启,回退值相同,无规则/目标 | 使用 |
| 所有关键环境关闭,offVariation相同 | 使用 |
| 关键环境的开启/关闭状态不同 | 不安全 — 停止并通知用户 |
| 关键环境提供不同的变体 | 不安全 — 停止并通知用户 |
true// Before
const showNewCheckout = await ldClient.variation('new-checkout-flow', user, false);
if (showNewCheckout) {
return renderNewCheckout();
} else {
return renderOldCheckout();
}
// After
return renderNewCheckout();true// Before
const showNewCheckout = await ldClient.variation('new-checkout-flow', user, false);
if (showNewCheckout) {
return renderNewCheckout();
} else {
return renderOldCheckout();
}
// After
return renderNewCheckout();check-removal-readinesscheck-removal-readiness| Situation | Action |
|---|---|
| Flag not found in LaunchDarkly | Inform user, check for typos in the key |
| Flag already archived | Ask if code cleanup is still needed (flag is gone from LD but code may still reference it) |
| Multiple SDK patterns in codebase | Search all patterns: |
Dynamic flag keys ( | Warn that automated removal may be incomplete — manual review required |
| Different default values in code vs LD | Flag as inconsistency in the PR description |
| Orphaned exports/files remain after removal | Run unused-export checks and remove dead files |
| 情况 | 操作 |
|---|---|
| 在LaunchDarkly中未找到标志 | 通知用户,检查键是否有拼写错误 |
| 标志已归档 | 询问是否仍需要代码清理(标志已从LD中移除,但代码可能仍引用它) |
| 代码库中存在多种SDK模式 | 搜索所有模式: |
动态标志键( | 警告自动化移除可能不完整 — 需要人工审核 |
| 代码与LD中的默认值不同 | 在PR描述中标记为不一致 |
| 移除后仍存在孤立的导出/文件 | 运行未使用导出检查并移除废弃文件 |
archive-flagcheck-removal-readinessarchive-flagcheck-removal-readiness