|
19 | 19 | from flag_engine.identities.traits.types import ContextValue |
20 | 20 | from flag_engine.result.types import EvaluationResult, FlagResult, SegmentResult |
21 | 21 | from flag_engine.segments import constants |
22 | | -from flag_engine.segments.models import ( |
23 | | - SegmentModel, |
24 | | -) |
| 22 | +from flag_engine.segments.models import SegmentModel |
25 | 23 | from flag_engine.segments.types import ConditionOperator |
26 | 24 | from flag_engine.segments.utils import get_matching_function |
27 | 25 | from flag_engine.utils.hashing import get_hashed_percentage_for_object_ids |
@@ -89,21 +87,23 @@ def get_evaluation_result(context: EvaluationContext) -> EvaluationResult: |
89 | 87 | segment_feature_contexts[feature_key] = override_feature_context |
90 | 88 |
|
91 | 89 | flags: list[FlagResult] = [ |
92 | | - { |
93 | | - "enabled": segment_feature_context["enabled"], |
94 | | - "feature_key": segment_feature_context["feature_key"], |
95 | | - "name": segment_feature_context["name"], |
96 | | - "reason": f"TARGETING_MATCH; segment={segment_context['name']}", |
97 | | - "value": segment_feature_context.get("value"), |
98 | | - } |
99 | | - if ( |
100 | | - segment_feature_context := segment_feature_contexts.get( |
101 | | - feature_context["feature_key"], |
| 90 | + ( |
| 91 | + { |
| 92 | + "enabled": segment_feature_context["enabled"], |
| 93 | + "feature_key": segment_feature_context["feature_key"], |
| 94 | + "name": segment_feature_context["name"], |
| 95 | + "reason": f"TARGETING_MATCH; segment={segment_context['name']}", |
| 96 | + "value": segment_feature_context.get("value"), |
| 97 | + } |
| 98 | + if ( |
| 99 | + segment_feature_context := segment_feature_contexts.get( |
| 100 | + feature_context["feature_key"], |
| 101 | + ) |
| 102 | + ) |
| 103 | + else get_flag_result_from_feature_context( |
| 104 | + feature_context, |
| 105 | + get_context_value(context, "$.identity.key"), |
102 | 106 | ) |
103 | | - ) |
104 | | - else get_flag_result_from_feature_context( |
105 | | - feature_context, |
106 | | - get_context_value(context, "$.identity.key"), |
107 | 107 | ) |
108 | 108 | for feature_context in (context.get("features") or {}).values() |
109 | 109 | ] |
|
0 commit comments