Equativ Bid Adapter: address upstream PR review comments - #7
Closed
web-rendering-cd[bot] wants to merge 52 commits into
Closed
Equativ Bid Adapter: address upstream PR review comments#7web-rendering-cd[bot] wants to merge 52 commits into
web-rendering-cd[bot] wants to merge 52 commits into
Conversation
Per WR-1983, callerId=169 was generating ~2,200 invalid model errors and ~50 null body errors per 24h in SSB. Root causes: - imp[] could be empty when all impressions were filtered by prepareSplitImps (e.g. no recognised media type after floor grouping, or when a feature flag disables the relevant processor) - request id could be absent if bidderRequest.auctionId was missing - POST body could be null if converter.toORTB returned nothing Fix: add three guards in buildRequests after converter.toORTB: 1. Skip bid if data is null/undefined (null body) 2. Skip bid if data.id is falsy (missing required oRTB id field) 3. Skip bid if data.imp is empty (no valid impressions) Each guard logs a warning and omits the request rather than sending an invalid oRTB payload to SSB. Also fix pre-existing test issues exposed by the new guards: - ortb2 publisher-id tests used which caused the imp hook to throw (destructuring undefined); use instead - video missing-properties test was not guarded by FEATURES.VIDEO; with video disabled the imp is not built so the guard fires - native missing-assets test callCount updated from 4 to 5 to account for the guard warn (native processor skips imps with no assets, leaving imp[] empty)
On every push to github-sharethrough-prebidjs (i.e. after an MR is merged): 1. Uses CI_JOB_TOKEN to look up the merged MR by its merge commit SHA 2. Bails out silently if the MR carries the 'no-upstream' label 3. Mints a GitHub App installation token via RS256 JWT + openssl 4. Force-pushes the source branch to sharethrough/Prebid.js 5. Opens a PR against prebid/Prebid.js, or skips if one is already open (the force-push already updates the existing PR's branch) The job is allow_failure: true so a GitHub outage never blocks the GitLab pipeline. Requires CI/CD variables (masked + protected): GH_APP_ID - GitHub App numeric ID GH_APP_PRIVATE_KEY - RSA private key PEM NOTE: this MR must be merged with the 'no-upstream' label so this CI config is not shipped to prebid/Prebid.js.
test: WR-2017 e2e verification See merge request smartadserver/private/be/prebid.js!6
test: WR-2017 e2e verification (attempt 2) See merge request smartadserver/private/be/prebid.js!7
GitHub App token minting and push to sharethrough/Prebid.js confirmed working. Temporary validation job no longer needed. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Keep the cleaned-up version without the temporary test-gh-token job. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…h-prebidjs' feat(ci): add ship-to-upstream job (WR-2017) See merge request smartadserver/private/be/prebid.js!5
After pushing the source branch to the fork, automatically open a pull request against the fork's default branch so changes are visible for review on GitHub. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…h-prebidjs' ci: open PR on sharethrough/Prebid.js after branch push (WR-2017) See merge request smartadserver/private/be/prebid.js!8
…ough-prebidjs' fix(equativBidAdapter): skip invalid bid requests before sending to SSB See merge request smartadserver/private/be/prebid.js!4
…-2017) Feature branches are based on github-sharethrough-prebidjs which carries .gitlab-ci.yml and ci/ — files that must not appear in PRs on the public GitHub fork. Instead of pushing the full branch, identify the two parents of the merge commit (PARENT1 = previous target-branch tip, PARENT2 = MR source-branch head), cherry-pick PARENT1..PARENT2 onto a fresh copy of prebid/Prebid.js master, and push that. Falls back to a full push if cherry-pick conflicts. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…prebidjs' ci: cherry-pick MR commits onto prebid master to exclude CI files (WR-2017) See merge request smartadserver/private/be/prebid.js!10
test: WR-2017 e2e verification (attempt 4 — CI files excluded) See merge request smartadserver/private/be/prebid.js!11
CI runner has no default git user configured; cherry-pick fails with "unable to auto-detect email address" and falls back to the full push (which includes CI files). Fix by setting a bot identity before the cherry-pick step. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…bidjs' ci: set git identity before cherry-pick (WR-2017) See merge request smartadserver/private/be/prebid.js!12
test: WR-2017 e2e verification (attempt 5 — git identity fix) See merge request smartadserver/private/be/prebid.js!13
Using prebid-upstream/master as the base caused PRs to show 100+ extra commits (those that sharethrough/Prebid.js:master hadn't synced yet). Fix: fetch github-fork/master and cherry-pick MR commits onto that instead. The PR diff then shows only our changes, regardless of fork sync state. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…bidjs' ci: base cherry-pick on fork master, not prebid upstream (WR-2017) See merge request smartadserver/private/be/prebid.js!14
test: WR-2017 e2e verification (attempt 6 — fork master base) See merge request smartadserver/private/be/prebid.js!15
* Changed version modules * AGT-938 Prebid modules saving data (prebid#81) * AGT-938 Prebid modules saving data * Fix arguments for storeCounters --------- Co-authored-by: Alex <alex@MacBook-Pro-Alex.local> * AGT-940 Remove BLACK_LIST constant (prebid#82) Co-authored-by: Alex <alex@MacBook-Pro-Alex.local> --------- Co-authored-by: Alex <alex@MacBook-Pro-Alex.local>
* CI: scan for contributed domain blacklists * Add permission
* Apply suggested fix to test/spec/modules/apsBidAdapter_spec.js from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> * Apply suggested fix to test/spec/modules/apsBidAdapter_spec.js from Copilot Autofix Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com> Co-authored-by: Demetrio Girardi <dgirardi@prebid.org>
* prebid server adapter safe renderer support * refactor * adds pbs converter_spec
Floxis is registered with IAB Europe TCF as Vendor ID 1609; declare it via spec.gvlid so the adapter is gated under TCF consent. Docs updated. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
* Fix for Useless conditional Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Fix timestamp comparison logic in jixieIdSystem.js --------- Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Merges prebid/Prebid.js master into github-sharethrough-prebidjs so the long-lived branch keeps tracking upstream (the source of truth). Runs on a scheduled pipeline and can be triggered manually from the GitLab UI. Merge preserves branch-only files (ci/, .gitlab-ci.yml, equativ adapter); fails without pushing on conflict; pushes with -o ci.skip so the sync merge does not trigger ship-to-upstream. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add a placementuuid bidder parameter forwarded in imp.ext.bidder. When provided it takes precedence over the now-deprecated siteId, pageId and formatId parameters, which are kept to support the inventory-structure ramp-up. Adds TypeScript types and docs marking the legacy params as deprecated, plus unit tests for passthrough and precedence. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…'github-sharethrough-prebidjs' [WR-2026] Equativ Bid Adapter: add placementuuid param, deprecate site/page/format See merge request smartadserver/private/be/prebid.js!16
- Log bid.bidId instead of full bid object in skip warnings (avoids
exposing sensitive request metadata in logs)
- Move per-bid isValid check before converter.toORTB to avoid
module-level side effects (networkId, feedbackArray) for invalid bids
- Guard bidRequest.params destructure with || {} to handle undefined params
- Fix video properties test: use this.skip() when FEATURES.VIDEO is off
and deepClone to avoid mutating the shared DEFAULT_VIDEO_BID_REQUESTS
- Replace manual sinon.stub().restore() with sandBox.stub() so cleanup
is guaranteed in afterEach even when assertions throw
- Add test for mixed valid/invalid bid scenario
…through-prebidjs' Equativ Bid Adapter: address upstream PR review comments See merge request smartadserver/private/be/prebid.js!18
Collaborator
|
Closing in favor of a clean PR with only the adapter commits (no CI files). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
GitLab MR !18: Equativ Bid Adapter: address upstream PR review comments