Skip to content

Consolidate ParametersObject into Settings on FeatureFilterEvaluationContext#599

Merged
zhiyuanliang-ms merged 1 commit intomainfrom
user/jimmyca/parametersObject
Apr 23, 2026
Merged

Consolidate ParametersObject into Settings on FeatureFilterEvaluationContext#599
zhiyuanliang-ms merged 1 commit intomainfrom
user/jimmyca/parametersObject

Conversation

@jimmyca15
Copy link
Copy Markdown
Member

Removes the ParametersObject property from FeatureFilterEvaluationContext and unifies its functionality into the existing Settings property.

Motivation

ParametersObject and Settings served overlapping roles on the evaluation context — both carried a pre-resolved settings object for filters. Consolidating them into a single property simplifies the API surface and the fallback logic in

Changes:

  • FeatureFilterEvaluationContext: Removed ParametersObject. The Settings property now serves both purposes — receiving pre-provided parameter objects (via FeatureFilterConfiguration.ParametersObject) and pre-bound settings from IFilterParametersBinder.
  • FeatureManager: Assigns FeatureFilterConfiguration.ParametersObject directly to Settings on the evaluation context. Skips BindSettings when Settings is already populated.
  • Built-in filters (PercentageFilter, TimeWindowFilter, ContextualTargetingFilter): Simplified from a three-way fallback (ParametersObject ?? Settings ?? BindParameters) to a two-way fallback (Settings ?? BindParameters).
  • Tests: Updated assertions and removed references to the deleted property.

…ttings.

Co-authored-by: Copilot <copilot@github.com>
@zhiyuanliang-ms zhiyuanliang-ms merged commit d8ab807 into main Apr 23, 2026
5 checks passed
zhiyuanliang-ms added a commit that referenced this pull request Apr 23, 2026
* Remove FeatureFilterEvaluationContext.ParametersObject in favor of Settings. (#599)

Co-authored-by: Copilot <copilot@github.com>

* Skip parameter binding if ParamemtersObject provided (#597)

* Skip parameter binding if the provider has already supplied a parameters object

* update

* update

---------

Co-authored-by: Zhiyuan Liang <zhiyuanliang@microsoft.com>

---------

Co-authored-by: Jimmy Campbell <jimmyca@microsoft.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: linglingye001 <143174321+linglingye001@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants