Skip to content

Core: cache outstream VAST when renderer needs a URL - #15715

Merged
patmmccann merged 1 commit into
prebid:masterfrom
aleksUIX:codex/11353-renderer-vast-cache
Oct 5, 2026
Merged

patmmccann merged 1 commit into
prebid:masterfrom
aleksUIX:codex/11353-renderer-vast-cache

Conversation

@aleksUIX

@aleksUIX aleksUIX commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor

Type of change

  • Feature
  • Bugfix
  • Does this change affect user-facing APIs or examples documented on prebid.org?

Description of change

Add requiresVastUrl to top window and Safe Renderer configuration. For XML-only outstream video bids, Prebid caches VAST when the selected renderer needs a URL. Bids that already contain vastUrl bypass this new cache path. Existing mediaTypes.video.useCacheKey behavior remains available.

The selected top window renderer carries the option through Renderer.install (src/Renderer.ts:126, src/auction.ts:832). The cache decision uses Safe Renderer precedence and completes the auction callback when a URL-required bid cannot be served (src/videoCache.ts:276). Tests cover renderer selection, remote and local caching, existing URLs, inline XML renderers, and cache-disabled rejection.

Closes #11353.

Documentation PR: prebid/prebid.github.io#6783.

Related PR #15716 adds an explicit per-ad-unit cache opt-out. The two PRs edit the same cache decision and test block. After the first merges, the second needs a rebase. In the combined behavior, cache: false takes precedence; an XML-only bid whose renderer requires a URL is rejected rather than cached or passed to that renderer. I verified that interaction in a temporary combined branch with the focused video cache tests.

Checks

  • npx gulp test-only: 25,640 tests passed across eight chunks.
  • npx gulp lint --nolintfix --files src/Renderer.ts,src/adUnits.ts,src/auction.ts,src/videoCache.ts,test/spec/auctionmanager_spec.js,test/spec/videoCache_spec.js: passed.
  • git diff --check: passed.

Maintainers: please apply feature and minor labels. GitHub denied this account permission to add labels.

@barecheck

barecheck Bot commented Oct 5, 2026

Copy link
Copy Markdown

Barecheck - Code coverage report

Total: 91.46%

Your code coverage diff: 0.00% ▴

Uncovered files and lines
FileLines
src/Renderer.ts94-95, 162
src/auction.ts310, 399-400, 410-411, 426, 435, 438, 483, 485, 495, 520, 818, 902, 904, 910, 955, 1094, 1129
src/videoCache.ts335, 360, 362-364, 366, 381

@patmmccann
patmmccann merged commit a477746 into prebid:master Oct 5, 2026
102 checks passed
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.

outstream VAST caching should depend on the renderer rather than the adunit

3 participants