@@ -43,63 +43,13 @@ func MapHoldouts(holdouts []datafileEntities.Holdout, audienceMap map[string]ent
43
43
}
44
44
45
45
for _ , datafileHoldout := range holdouts {
46
- // Map variations similar to experiments
47
- variationMap := make (map [string ]entities.Variation )
48
- variationKeyToIDMap := make (map [string ]string )
49
-
50
- for _ , variation := range datafileHoldout .Variations {
51
- variableMap := make (map [string ]entities.VariationVariable )
52
- for _ , variable := range variation .Variables {
53
- variableMap [variable .ID ] = entities.VariationVariable {
54
- ID : variable .ID ,
55
- Value : variable .Value ,
56
- }
57
- }
58
-
59
- v := entities.Variation {
60
- ID : variation .ID ,
61
- Key : variation .Key ,
62
- FeatureEnabled : variation .FeatureEnabled ,
63
- Variables : variableMap ,
64
- }
65
- variationMap [variation .ID ] = v
66
- variationKeyToIDMap [variation .Key ] = variation .ID
67
- }
68
-
69
- // Map traffic allocation
70
- trafficAllocation := []entities.Range {}
71
- for _ , allocation := range datafileHoldout .TrafficAllocation {
72
- trafficAllocation = append (trafficAllocation , entities.Range {
73
- EntityID : allocation .EntityID ,
74
- EndOfRange : allocation .EndOfRange ,
75
- })
76
- }
77
-
78
- // Build audience condition tree
79
- var audienceConditionTree * entities.TreeNode
80
- if datafileHoldout .AudienceConditions != nil {
81
- audienceConditionTree , _ , _ = buildConditionTree (datafileHoldout .AudienceConditions )
82
- } else if len (datafileHoldout .AudienceIds ) > 0 {
83
- // Build from audience IDs similar to experiments
84
- audienceConditionTree , _ = buildAudienceConditionTree (datafileHoldout .AudienceIds )
85
- }
86
-
87
- // Convert status string to HoldoutStatus type
88
- status := entities .HoldoutStatus (datafileHoldout .Status )
89
-
90
- // Create the runtime holdout entity
46
+ // Create minimal runtime holdout entity - only what's needed for flag dependency
91
47
holdout := entities.Holdout {
92
- ID : datafileHoldout .ID ,
93
- Key : datafileHoldout .Key ,
94
- Status : status ,
95
- Variations : variationMap ,
96
- VariationKeyToIDMap : variationKeyToIDMap ,
97
- TrafficAllocation : trafficAllocation ,
98
- AudienceIds : datafileHoldout .AudienceIds ,
99
- AudienceConditions : datafileHoldout .AudienceConditions ,
100
- AudienceConditionTree : audienceConditionTree ,
101
- IncludedFlags : datafileHoldout .IncludedFlags ,
102
- ExcludedFlags : datafileHoldout .ExcludedFlags ,
48
+ ID : datafileHoldout .ID ,
49
+ Key : datafileHoldout .Key ,
50
+ Status : entities .HoldoutStatus (datafileHoldout .Status ),
51
+ IncludedFlags : datafileHoldout .IncludedFlags ,
52
+ ExcludedFlags : datafileHoldout .ExcludedFlags ,
103
53
}
104
54
105
55
// Add to ID map
0 commit comments