Repository navigation
Description
Overview
Run Auctioneer's auction engine in-process inside Trusted Server as a local auction provider, on one shared EdgeZero runtime. The approved first host delivery is Fastly banner/display; Auctioneer's broader adapter qualification remains with Auctioneer. This is the Trusted Server side of IABTechLab/auctioneer#8 (Direct Trusted Server Integration). Auctioneer owns the engine and its typed host bridge. Trusted Server owns the host, which means its artifact, runtime services, operator configuration, and auction orchestrator.
Why EdgeZero PR 275 comes first
As reviewed on 2026-11-09, Auctioneer pins EdgeZero to a commit on IABTechLab/edgezero#275 (598f0a2a), while Trusted Server main (4d55a3c6d) still pins v0.0.11. An in-process embed links both into one binary, so both must build against one EdgeZero revision. Auctioneer's bidder calls and Trusted Server's own outbound calls then share one transport, one deadline model, and one set of limits.
The EdgeZero capabilities Trusted Server needs from PR 275 are listed in the requirements document. That is the historical requirements handoff; use the current cutover design in #1506 for the migration. PR 275 remains open and its qualification is incomplete. The maintainer decisions recorded in #1506 on 2026-11-08 make the cutover follow PR 275's head, with main pinning the head the cut was last rebased onto. The cutover merge and production deploys do not wait for the EZ-Q1 record; qualification remains separately tracked in #1508. This changes the scheduling gate, not the evidence required to claim qualification.
Scope
- Cut Trusted Server over to EdgeZero PR 275. Hard cut onto PR 275's APIs with no Trusted Server transport plumbing. EdgeZero's outbound client serves every call, Fastly runs EdgeZero's canonical lifecycle, and EdgeZero follows redirects. Follow the PR 275 head and rebase/repin as the reviewed cutover design requires. Spec: Write the EdgeZero PR 275 cutover spec #1513 (pull request Cut Trusted Server over to EdgeZero PR 275 #1506). Implementation: Cut Trusted Server over to EdgeZero PR 275 #1507. Qualification: Run Trusted Server's share of the EdgeZero PR 275 qualification #1508.
- Reconcile the approved host contract in Trusted Server. Review the pinned Trusted Server local-provider contract auctioneer#34 is completed: Define discovered-catalog qualification and Fastly integration auctioneer#152 merged the Fastly local-provider specification and delivery plan, and Reconcile approved host integration tracking auctioneer#153 reconciled its tracking. Use Agree the Auctioneer host contract #1509 to record the Trusted Server-side contract/spec changes still required, rather than reopening that upstream decision. Approval does not implement the bridge or linked artifact.
- Supply host services to the bridge. Give Auctioneer's typed in-process bridge (Provide the typed in-process host bridge auctioneer#51) Trusted Server's outbound client, stores, secrets, clock, deadlines, and validated settings, with one operator configuration. Supply Trusted Server host services to Auctioneer's bridge #1510
- Link Auctioneer as a local auction provider. Wire the bridge into the Trusted Server artifact and auction orchestrator, with no duplicate local and remote bidder dispatch. This is the Trusted Server side of Link the bridge into an actual Trusted Server artifact auctioneer#76. Run Auctioneer in-process as a local auction provider #1511
- Prove equivalence on the Trusted Server artifact. Provide the host-side harness and controlled display flow that Prove standalone/embedded equivalence and the controlled host flow auctioneer#91 runs against. Prove Auctioneer equivalence on the Trusted Server artifact #1512
Related
- EdgeZero full migration (umbrella tracker) #840 tracks the wider EdgeZero migration.
- Core's auction speaks OpenRTB #1336 makes core's auction protocol-neutral, which shapes the provider seam Auctioneer plugs into; the accepted contract does not make the whole issue a prerequisite for the selected Fastly path.
- Support multi-provider auction fan-out on the Cloudflare and Spin adapters #1484 asks for multi-provider fan-out on Cloudflare and Spin. The PR 275 cutover makes it unnecessary, because PR 275 batches fan out concurrently on both.
Done when
- Trusted Server
mainpins the PR 275 head the cutover was last rebased onto, and the cutover is implemented according to Cut Trusted Server over to EdgeZero PR 275 #1506. Track qualification evidence in Run Trusted Server's share of the EdgeZero PR 275 qualification #1508 separately from that merge/deploy gate. - Trusted Server serves auctions with Auctioneer running in-process as a local provider on the selected deployment target, configured through Trusted Server's single operator configuration.
- Review the pinned Trusted Server local-provider contract auctioneer#34's initial host contract is accepted.
- Trusted Server's contract/spec reconciliation (Agree the Auctioneer host contract #1509) is complete, and Provide the typed in-process host bridge auctioneer#51, Link the bridge into an actual Trusted Server artifact auctioneer#76, and Prove standalone/embedded equivalence and the controlled host flow auctioneer#91 are accepted. The actual Fastly artifact must satisfy Adds request signing and key publishing for downstream verification #76's bridge and qualified Fastly-serving dependencies, including Auctioneer Investigate Yahoo DSP integration with Prebid Server #88.
- Consent, identity, and privacy behavior is unchanged or explicitly specified, with tests.
Affected area
Core, Integrations, Fastly runtime
Milestone review (2026-11-09)
P1. Retain in 202611 as the host-integration coordination issue. Trusted Server's current dependency manifest has not made the SDK cutover or linked Auctioneer. The approved host contract removes a planning gap; bridge, local execution, and artifact acceptance remain delivery work. Keep the remaining work decomposed into #1507–#1512 and follow #1506's recorded maintainer decisions.
Activity
aram356 commentedon Nov 13, 2026
CREATOR: #1507 moved from this epic to #1558, server-side identity on every adapter, because it is that program's first gate: it blocks #1573, #1585, #1586 and #1600, which the MVP waits on, and #1192 and #1556. #1513 and the Auctioneer issues stay here, and #1506 still closes #1507.