[AI-FSSDK] (DO NOT REVIEW) [FSSDK-12262] Exclude CMAB from UserProfileService#2
Closed
[AI-FSSDK] (DO NOT REVIEW) [FSSDK-12262] Exclude CMAB from UserProfileService#2
Conversation
This reverts commit f98886a.
…474)" This reverts commit eadf141.
CMAB experiments now skip UserProfileService (UPS) for sticky bucketing. This ensures CMAB makes dynamic decisions that consider TTL and user attributes, rather than using stale stored decisions. Changes: - Modified get_variation to skip get_stored_variation for CMAB experiments - Modified get_variation to skip update_user_profile for CMAB experiments - Added test to verify UPS is not used for CMAB experiments - All 49 decision service tests pass Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Excludes CMAB (Contextual Multi-Armed Bandit) experiments from UserProfileService (UPS) sticky bucketing logic. CMAB requires dynamic decisions that consider TTL and user attributes, which contradicts UPS's static decision persistence.
Related Jira Ticket
FSSDK-12262
Changes
get_variationindecision_service.pyto skipget_stored_variationfor CMAB experimentsget_variationindecision_service.pyto skipupdate_user_profilefor CMAB experimentstest_get_variation_cmab_experiment_ignores_user_profile_serviceto verify UPS exclusionQuality Assurance
Test Results
Code Review
Test Plan
pytest tests/test_decision_service.py -k cmabpytest tests/test_decision_service.py🤖 Generated with AI assistance