Skip to content

Floxis: validate bid impression against outbound request - #4676

Open
floxis-admin wants to merge 1 commit into
prebid:masterfrom
floxis-admin:codex/java-floxis-impid
Open

floxis-admin wants to merge 1 commit into
prebid:masterfrom
floxis-admin:codex/java-floxis-impid

Conversation

@floxis-admin

Copy link
Copy Markdown

Type of change

  • Bugfix
  • Bid adapter update

Context

Floxis splits requests by seat and routing host. A response to one outbound request could return a bid for another group's impression because bid parsing used the original request's full impression list. A supplied mtype also bypassed impression lookup. The later response validator checks the overall auction, so it does not enforce this outbound-request boundary.

Change

Validate each response bid's impid against httpCall.getRequest().getPayload().getImp() before resolving its media type. Invalid bids use the existing bad_server_response error and are skipped; valid bids in the same response remain accepted.

Only the Floxis adapter and its unit tests change. Request grouping and configuration are unchanged.

Test plan

At aa72a579a7f00914e72524682ce87f1b53ac3c97:

  • Compiled the changed adapter and test sources targeting Java 25, using cached unchanged project classes/dependencies from the same upstream master ancestor.
  • ./mvnw -B checkstyle:check surefire:test -Dtest=FloxisBidderTest -DargLine=-Xmx256m: 30 tests passed, zero skipped, zero Checkstyle violations. Maven heap was limited to 512MiB.
  • New tests exercise an actual split request, keep the valid own-group bid, and reject another seat's impression for mtype 1 and 0. Unknown-impression cases cover both values; existing media-type cases still pass.
  • The unchanged adapter fails three of these regressions. Independently restoring either faulty behavior makes its corresponding regression tests fail.
  • JaCoCo: 100% Floxis line coverage (97/97), 36/37 branches covered. Both changed methods have 100% line coverage, and media-type resolution has all 17 branches covered.
  • git diff --check passed.

The full project build/test suite was not rerun. Upstream CI must run on this PR.

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.

1 participant