createHTTPFeatureChecker creates a feature checker that resolves static CLI features plus per-request header features and insiders mode.
(enabledFeatures []string, insidersMode bool)
| 258 | // createHTTPFeatureChecker creates a feature checker that resolves static CLI |
| 259 | // features plus per-request header features and insiders mode. |
| 260 | func createHTTPFeatureChecker(enabledFeatures []string, insidersMode bool) inventory.FeatureFlagChecker { |
| 261 | return func(ctx context.Context, flag string) (bool, error) { |
| 262 | headerFeatures := ghcontext.GetHeaderFeatures(ctx) |
| 263 | features := make([]string, 0, len(enabledFeatures)+len(headerFeatures)) |
| 264 | features = append(features, enabledFeatures...) |
| 265 | features = append(features, headerFeatures...) |
| 266 | |
| 267 | effective := github.ResolveFeatureFlags(features, insidersMode || ghcontext.IsInsidersMode(ctx)) |
| 268 | return effective[flag], nil |
| 269 | } |
| 270 | } |