Panxo RTD Provider: initial release#14419
Conversation
Add Panxo RTD submodule that enriches OpenRTB bid requests with real-time AI traffic classification signals through device.ext.panxo and site.ext.data.panxo.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 320be81a4a
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| if (typeof impl !== 'object' || typeof impl.connect !== 'function') { | ||
| if (verbose) logWarn('onload', 'Unable to access the implementation script'); | ||
| return; |
There was a problem hiding this comment.
Fail open when Panxo bridge initialization fails
If the external script loads but does not register a valid panxo_<session> bridge (or it is blocked), onImplLoaded returns early and never marks the module ready or flushes queued callbacks. After that, every getBidRequestData call keeps enqueuing closures in pendingCallbacks and waits for RTD timeout, which adds avoidable auction delay on every auction and leaks request/callback references for the page lifetime.
Useful? React with 👍 / 👎.
modules/panxoRtdProvider.js
Outdated
| if (typeof msg !== 'object') { | ||
| return; | ||
| } | ||
|
|
||
| switch (msg.type) { |
There was a problem hiding this comment.
Handle null bridge messages before dereferencing type
onImplMessage only checks typeof msg !== 'object', but null passes that guard and then switch (msg.type) throws. A malformed/null payload from the external Panxo bridge would raise a runtime error in this callback path and skip normal readiness/callback handling for that signal.
Useful? React with 👍 / 👎.
- Flush pending auction callbacks when the implementation bridge cannot be reached, so auctions are never blocked indefinitely. - Guard against null bridge messages to prevent runtime errors. - Add tests for both scenarios.
|
@monis0395 Let me know any questions in order to merge into master ! Thanks ! |
Pull Request Test Coverage Report for Build 21942808941Details
💛 - Coveralls |
Type of change
Feature
Does this change affect user-facing APIs or examples documented on http://prebid.org?
Description of change
New RTD submodule for Panxo. This module detects visits originating from AI assistants and enriches OpenRTB bid requests with real-time AI traffic classification signals through
device.ext.panxoandsite.ext.data.panxo, enabling demand partners to apply differentiated bidding on AI-referred inventory.Maintainer: tech@panxo.ai
Module configuration
Other information
Related adapter: Panxo Bid Adapter (#14351)
Documentation PR: prebid/prebid.github.io#6424