Nativo: Add optional placementId parameter#4679
Nativo: Add optional placementId parameter#4679rafataveira wants to merge 3 commits intoprebid:masterfrom
Conversation
AGENT TESTINGPR #4679 Review: Nativo: Add optional placementId parameterAuthor: rafataveira | Type: Adapter Modification | CI: Clean (all 4 checks passed) Triage Manifest
File Routing
Issues FoundWARN: No test fixture without
|
| Check | Result | Evidence |
|---|---|---|
| Valid JSON Schema | PASS | Well-formed draft-04 schema |
| Property type | PASS | ["integer", "string"] — standard PBS pattern for IDs |
| Not in required array | PASS | No required field in schema; placementId is optional |
| Description present | PASS | "Placement ID" |
| Backward compatible | PASS | Empty {} still validates against the schema (no required fields) |
Adapter-Code: Test Data Changes
Exemplary fixtures (6 files modified)
| Check | Result | Evidence |
|---|---|---|
| banner-app.json | PASS | Added ext.bidder.placementId: 12345678 to mockBidRequest and expectedRequest |
| banner-web.json | PASS | Same pattern |
| native-app.json | PASS | Same pattern |
| native-web.json | PASS | Same pattern |
| video-app.json | PASS | Same pattern |
| video-web.json | PASS | Same pattern |
| Param preserved in expectedRequest | PASS | ext.bidder flows through since adapter marshals entire request |
Supplemental fixtures (4 files modified)
| Check | Result | Evidence |
|---|---|---|
| 200-different-impID-response | PASS | Changed "bidder": {} to "bidder": {"placementId": 12345678} |
| 204-response | PASS | Same change |
| 400-response | PASS | Same change |
| 500-response | PASS | Same change |
| Empty bidder ext test remaining | WARN | None — all supplemental tests now include placementId |
Recommendation: Comment / Request Minor Changes
This is a small, well-scoped PR that adds an optional placementId parameter to the Nativo adapter. The schema change is correct and backward-compatible. The main concern is test coverage:
- Should fix: Restore at least one test fixture with
"bidder": {}to maintain backward compatibility coverage - Should add: A
params_test.gofile to test the new schema parameter validation - Nice to have: An
imp_nativo.gostruct for the bidder params (not blocking)
Task Completion Summary
| Task # | Subject | Status |
|---|---|---|
| 14 | PR Triage: Classify PR #4679, route files, check CI | Completed |
| 15 | Bidder-params: Verify nativo.json schema change | Completed |
| 16 | Adapter-code: Verify test data changes for nativo | Completed |
| 17 | Produce final review summary for PR #4679 | Completed |
Skills Called
| Skill | Outcome |
|---|---|
pr-triage |
Executed inline — file categorization, CI check, cross-skill concerns |
bidder-params-pr-review |
Executed inline — schema verification, imp struct check, params_test check |
adapter-code-pr-review |
Executed inline — test data review, backward compatibility analysis |
Code / Commands Executed
| Command | Purpose | Result |
|---|---|---|
| (none) | No bash commands needed for this review | N/A |
WebFetch API Calls
| URL | Purpose |
|---|---|
api.github.com/.../pulls/4679 |
PR metadata |
api.github.com/.../pulls/4679/files |
File list + patches |
api.github.com/.../pulls/4679/commits |
Head SHA for CI check |
api.github.com/.../commits/{sha}/check-runs |
CI status (all passed) |
api.github.com/.../pulls/4679/comments |
Existing review comments (none) |
api.github.com/.../issues/4679/comments |
Existing PR comments (none) |
raw.githubusercontent.com/.../nativo.go |
Existing adapter code (to verify pass-through behavior) |
raw.githubusercontent.com/.../imp_nativo.go |
Check if imp struct exists (404 — doesn't exist) |
raw.githubusercontent.com/.../params_test.go |
Check if params test exists (404 — doesn't exist) |
Code coverage summaryNote:
nativoRefer here for heat map coverage report |
Code coverage summaryNote:
nativoRefer here for heat map coverage report |
This pull request updates the Nativo adapter's test and supplemental JSON files to include a
placementIdparameter in theext.bidderobject for all impression types (banner, native, and video) across both app and web examples. Additionally, the Nativo adapter's parameter schema (nativo.json) is updated to formally defineplacementIdas a supported parameter.Key changes:
Test and Example Data Updates:
placementIdfield (set to12345678) to theext.bidderobject in all impression objects within the Nativo adapter's exemplary and supplemental JSON files, covering banner, native, and video formats for both app and web. This ensures test coverage for the new parameter in all relevant scenarios. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20]Schema Definition:
static/bidder-params/nativo.jsonto defineplacementIdas an accepted parameter (integer or string) for the Nativo adapter, providing validation and documentation for this field.