Description
Pure signature-change PR that adds &RuntimeServices to integration and provider entry points without changing any types. This splits the "RuntimeServices plumbing" concern out of the integration type migration PR (PR 13), halving its scope.
Fastly types remain in place — this compiles independently because adding a parameter to trait methods + implementations is a mechanical change that the compiler enforces.
Signature changes
IntegrationProxy::handle(&self, settings, req) → handle(&self, settings, services: &RuntimeServices, req)
IntegrationRegistry::handle_proxy(method, path, settings, req) → handle_proxy(method, path, settings, services: &RuntimeServices, req)
AuctionContext struct — add pub services: &'a RuntimeServices field
Files touched
- Framework:
registry.rs, auction/provider.rs, auction/types.rs
- Callers:
auction/orchestrator.rs, adapter main.rs
- All 8 proxy integration modules + 2 test impls in
registry.rs
- All 3 auction provider implementations (
prebid.rs, aps.rs, adserver_mock.rs)
What this PR does NOT do
- No type changes (
fastly::Request/Response stay)
- No
send()/send_async() migration
- No behavior changes — implementations accept
services but don't use it yet
Done when
- All integration + provider traits accept
&RuntimeServices
- All callers thread
RuntimeServices through
- No Fastly type changes
- Per-PR gates pass
Blocked by
PR 12
References