[FFL-2929] Add composable assignment request transport - #3693
Draft
leoromanovsky wants to merge 2 commits into
Draft
[FFL-2929] Add composable assignment request transport#3693leoromanovsky wants to merge 2 commits into
leoromanovsky wants to merge 2 commits into
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## develop #3693 +/- ##
===========================================
- Coverage 73.41% 73.41% -0.00%
===========================================
Files 999 999
Lines 36564 36589 +25
Branches 6181 6190 +9
===========================================
+ Hits 26842 26859 +17
+ Misses 8000 7996 -4
- Partials 1722 1734 +12
🚀 New features to boost your workflow:
|
|
✅ All CI checks and tests passed. Datadog automation helped this PR pass. 🎉 All green!🧪 All tests passed 🔄 Datadog retried 1 test - 1 passed on retry 🎯 Code Coverage (details) 🔗 Commit SHA: 482c5b4 | Docs | View more details | Give us feedback! |
Add opt-in assignment request timeout and retry controls plus an OkHttp Call.Factory transport seam. Preserve upgrade behavior with zero SDK timeout and zero retries by default. Environment: Datadog workspace
leoromanovsky
force-pushed
the
agent/ffe-precompute-timeout-retry
branch
from
August 28, 2026 23:20
1067781 to
fed07a5
Compare
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.
Motivation
Applications need opt-in assignment-request latency bounds and transient-failure retries without changing default request behavior. Advanced Android callers also need an idiomatic OkHttp transport seam for assignment-specific proxy, TLS, interceptor, and client policy.
Changes
FlagsConfiguration.Builder.assignmentRequestTimeout(timeoutMs)andassignmentRequestRetryCount(retryCount), both defaulting to0.FlagsConfiguration.Builder.assignmentRequestCallFactory(Call.Factory).Callper retry and cover the complete response body with an explicitly configured per-attempt timeout.Decisions
Call.Factoryaffects assignments only. Exposure and evaluation uploads retain SDK transports, and the caller owns factory resources.Retry-Afterplus full jitter.FlagsConfiguration.copyandcopy$defaultJVM descriptors. The additive generated copy includes new fields, while the legacy overload preserves new transport settings.Call.Factoryis public.Validation
newCall/execute, noCall.timeout()access, and no retry delay.javapdescriptor comparison, and a legacy binary consumer pass.0preserving custom client bounds, and successful delayed body with no SDK timeout.Jira
FFL-2929