Skip to content

Conversation

@bTimor
Copy link

@bTimor bTimor commented Dec 21, 2025

Type of change

  • New bidder adapter

Description

This PR adds the Scalibur bidder adapter to Prebid Server.

Features:

  • Supports Banner and Video media types.
  • Implements User Sync via iframe.
  • Automated tests include standard unit tests and JSON data-driven samples.

Verification:

  • End-to-end user sync flow verified using a private Scalibur sync server.
  • Successfully verified that PBS maps the uids cookie to user.buyeruid in outgoing requests.
  • All tests in adapters/scalibur passed.
  • Root ./validate.sh passed (ignoring unrelated global config/hook test timeouts).

Checklist

  • I have performed a self-review of my code
  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works

@github-actions
Copy link

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, a87ab09

scalibur

Refer here for heat map coverage report

github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:23:	Builder			75.0%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:35:	MakeRequests		93.0%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:170:	MakeBids		71.1%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:257:	parseScaliburExt	77.8%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:282:	getBidMediaType		40.0%
total:									(statements)		82.7%

@github-actions
Copy link

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, c4e7220

scalibur

Refer here for heat map coverage report

github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:23:	Builder			75.0%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:35:	MakeRequests		86.2%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:186:	MakeBids		71.1%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:273:	parseScaliburExt	77.8%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:298:	getBidMediaType		40.0%
total:									(statements)		79.4%

@github-actions
Copy link

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, 088c807

scalibur

Refer here for heat map coverage report

github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:23:	Builder			75.0%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:35:	MakeRequests		86.2%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:186:	MakeBids		71.1%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:273:	parseScaliburExt	77.8%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:298:	getBidMediaType		40.0%
total:									(statements)		79.4%

@github-actions
Copy link

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, 60a0c74

scalibur

Refer here for heat map coverage report

github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:23:	Builder			75.0%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:35:	MakeRequests		86.2%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:186:	MakeBids		71.1%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:273:	parseScaliburExt	77.8%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:298:	getBidMediaType		37.5%
total:									(statements)		78.4%

@bTimor
Copy link
Author

bTimor commented Dec 23, 2025

I've updated the media type logic to follow the recommended pattern and resolved the bot feedback. Ready for review and workflow approval.

@github-actions
Copy link

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, 09d4885

scalibur

Refer here for heat map coverage report

github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:24:	Builder			71.4%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:40:	MakeRequests		84.7%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:196:	MakeBids		89.5%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:284:	parseScaliburExt	77.8%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:309:	getBidMediaType		50.0%
total:									(statements)		82.6%

@bTimor
Copy link
Author

bTimor commented Jan 12, 2026

@ccorbo
Updated the PR to address all feedback, including currency conversion, VAST extraction, and test file placement. Ready for another look.

@github-actions
Copy link

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, 98d3567

scalibur

Refer here for heat map coverage report

github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:24:	Builder			75.0%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:36:	MakeRequests		92.9%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:192:	MakeBids		92.1%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:284:	parseScaliburExt	77.8%
github.com/prebid/prebid-server/v3/adapters/scalibur/scalibur.go:309:	getBidMediaType		70.0%
total:									(statements)		89.7%

@bTimor
Copy link
Author

bTimor commented Jan 14, 2026

Hi @ccorbo,

I've addressed the feedback from your review:

  1. Code Improvements:

    • Removed the redundant endpoint check in Builder as requested.
    • Updated MakeBids to return a BadServerResponse error instead of silently skipping bids when an ImpID is not found or when the media type cannot be determined.
  2. Enhanced Test Coverage:

    • Added gpid.json to verify gpid preservation.
    • Added debug.json and debug_prebid.json to cover both request.test == 1 and request.ext.prebid.debug == true scenarios.
    • Added mtype.json to cover media type determination via bid.mtype.
    • Added manual Go tests in scalibur_test.go (TestMakeBids_ImpNotFound and TestGetBidMediaType_Error) to specifically cover the new error paths.

All tests are passing. Let me know if there's anything else.
Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants