optable-targeting: Enhance Optable Targeting: Non-blocking network calls and granular traffic controls#2
Draft
softcoder594 wants to merge 19 commits into
Draft
Conversation
added 8 commits
May 4, 2026 23:29
return early from the hook if (hasRawAuctionRequestHook && hasBidderRequestHook) - the new mode
random is 0-99, percentage is 0-100. enrich when random < (strictly less than) percentage. so if we specify percentage 0 we never enrich, if we specify percentage 100 we always enrich.
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.
Type of changes
What's the context?
This update reduces auction latency by initiating the Optable API call at the earliest hook stage (
raw-auction-request) and deferring the wait to the per-bidder stage (bidder-request), where the enrichment data is actually injected. It also adds granular controls over which traffic and which bidders receive enrichment.New Features
raw-auction-requestand runs in parallel with other auction processing. The result is consumed per-bidder inbidder-request, avoiding pipeline blocking.enrich-web/enrich-appflags to select which traffic sources are enriched.Backwards Compatibility
The
processed-auction-requesthook is retained as a legacy fallback. If operators have not migrated to the new execution plan, the module behaves as before — enrichment happens synchronously in the processed hook.New Configuration (recommended)
Legacy Configuration (to be migrated)
The following execution plan fragment should be removed once migrated to the new configuration above:
The
processed-auction-requesthook detects whether the new hooks (raw-auction-requestandbidder-request) are present in the execution plan. If both are active, it passes through immediately without blocking the pipeline. If the new hooks are absent, it falls back to the legacy synchronous behavior. This means the legacy fragment can be kept during migration without negating the latency benefit of the new configuration.Test plan
Quality check