Skip to content

Comments

Panxo RTD Provider: initial release#14419

Merged
monis0395 merged 3 commits intoprebid:masterfrom
css12s:panxo-rtd-provider
Feb 12, 2026
Merged

Panxo RTD Provider: initial release#14419
monis0395 merged 3 commits intoprebid:masterfrom
css12s:panxo-rtd-provider

Conversation

@css12s
Copy link
Contributor

@css12s css12s commented Feb 6, 2026

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.panxo and site.ext.data.panxo, enabling demand partners to apply differentiated bidding on AI-referred inventory.

Maintainer: tech@panxo.ai

Module configuration

pbjs.setConfig({
    realTimeData: {
        auctionDelay: 300,
        dataProviders: [{
            name: 'panxo',
            waitForIt: true,
            params: {
                siteId: 'a1b2c3d4e5f67890'
            }
        }]
    }
});

Other information

Related adapter: Panxo Bid Adapter (#14351)
Documentation PR: prebid/prebid.github.io#6424

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.
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 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".

Comment on lines 111 to 113
if (typeof impl !== 'object' || typeof impl.connect !== 'function') {
if (verbose) logWarn('onload', 'Unable to access the implementation script');
return;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge 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 👍 / 👎.

Comment on lines 128 to 132
if (typeof msg !== 'object') {
return;
}

switch (msg.type) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge 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.
@css12s
Copy link
Contributor Author

css12s commented Feb 10, 2026

@monis0395 Let me know any questions in order to merge into master ! Thanks !

Copy link
Collaborator

@monis0395 monis0395 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@coveralls
Copy link
Collaborator

Pull Request Test Coverage Report for Build 21942808941

Details

  • 231 of 231 (100.0%) changed or added relevant lines in 2 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.005%) to 96.252%

Totals Coverage Status
Change from base Build 21924324002: 0.005%
Covered Lines: 212335
Relevant Lines: 220603

💛 - Coveralls

@monis0395 monis0395 merged commit d31c344 into prebid:master Feb 12, 2026
102 checks passed
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.

3 participants