@@ -37,7 +37,7 @@ type capturedBYOKRequest struct {
3737
3838// byokCapturingRoundTripper stands in for a real HTTP upstream. It records the
3939// `Authorization` header the runtime applied (after calling the provider's
40- // GetBearerToken callback over the session-scoped `providerToken.getToken` RPC)
40+ // BearerTokenProvider callback over the session-scoped `providerToken.getToken` RPC)
4141// for every request aimed at a fake `.invalid` BYOK host, answering them with a
4242// synthetic 404 (a non-retryable status, so each outbound model request yields
4343// exactly one capture). Every other request (CAPI bootstrap: model catalog,
@@ -96,7 +96,7 @@ func (rt *byokCapturingRoundTripper) reset() {
9696}
9797
9898// TestBYOKBearerTokenProvider is end-to-end coverage for the experimental BYOK
99- // bearer-token-provider surface (GetBearerToken on a provider config). The
99+ // bearer-token-provider surface (BearerTokenProvider on a provider config). The
100100// callback stays entirely on the SDK/client side: the SDK strips it from the
101101// wire config, sets the `hasBearerTokenProvider` flag, and the runtime calls
102102// back over the session-scoped `providerToken.getToken` RPC before each outbound
@@ -151,11 +151,11 @@ func TestBYOKBearerTokenProvider(t *testing.T) {
151151 }
152152
153153 providers := []copilot.NamedProviderConfig {{
154- Name : "mi" ,
155- Type : "openai" ,
156- WireAPI : "completions" ,
157- BaseURL : byokPrimaryBaseURL ,
158- GetBearerToken : getBearerToken ,
154+ Name : "mi" ,
155+ Type : "openai" ,
156+ WireAPI : "completions" ,
157+ BaseURL : byokPrimaryBaseURL ,
158+ BearerTokenProvider : getBearerToken ,
159159 }}
160160 models := []copilot.ProviderModelConfig {{ID : "default" , Provider : "mi" , WireModel : "byok-gpt-4o" }}
161161
@@ -189,11 +189,11 @@ func TestBYOKBearerTokenProvider(t *testing.T) {
189189 }
190190
191191 providers := []copilot.NamedProviderConfig {{
192- Name : "mi" ,
193- Type : "openai" ,
194- WireAPI : "completions" ,
195- BaseURL : byokPrimaryBaseURL ,
196- GetBearerToken : getBearerToken ,
192+ Name : "mi" ,
193+ Type : "openai" ,
194+ WireAPI : "completions" ,
195+ BaseURL : byokPrimaryBaseURL ,
196+ BearerTokenProvider : getBearerToken ,
197197 }}
198198 models := []copilot.ProviderModelConfig {{ID : "default" , Provider : "mi" , WireModel : "byok-gpt-4o" }}
199199
@@ -227,13 +227,18 @@ func TestBYOKBearerTokenProvider(t *testing.T) {
227227 }
228228 var mu sync.Mutex
229229 var acquiredFor []string
230- makeCallback := func (providerName string ) copilot.GetBearerToken {
230+ makeCallback := func (providerName string ) copilot.BearerTokenProvider {
231231 return func (args copilot.ProviderTokenArgs ) (string , error ) {
232232 // The runtime forwards the requesting provider's name so the
233233 // client can dispatch to the right credential.
234234 if args .ProviderName != providerName {
235235 t .Errorf ("Expected providerName %q, got %q" , providerName , args .ProviderName )
236236 }
237+ // The runtime also forwards the owning session id so a
238+ // client-level shared callback can resolve the session.
239+ if args .SessionID == "" {
240+ t .Errorf ("Expected a non-empty session id in token args" )
241+ }
237242 mu .Lock ()
238243 acquiredFor = append (acquiredFor , providerName )
239244 mu .Unlock ()
@@ -243,18 +248,18 @@ func TestBYOKBearerTokenProvider(t *testing.T) {
243248
244249 providers := []copilot.NamedProviderConfig {
245250 {
246- Name : "red" ,
247- Type : "openai" ,
248- WireAPI : "completions" ,
249- BaseURL : byokRedBaseURL ,
250- GetBearerToken : makeCallback ("red" ),
251+ Name : "red" ,
252+ Type : "openai" ,
253+ WireAPI : "completions" ,
254+ BaseURL : byokRedBaseURL ,
255+ BearerTokenProvider : makeCallback ("red" ),
251256 },
252257 {
253- Name : "blue" ,
254- Type : "openai" ,
255- WireAPI : "completions" ,
256- BaseURL : byokBlueBaseURL ,
257- GetBearerToken : makeCallback ("blue" ),
258+ Name : "blue" ,
259+ Type : "openai" ,
260+ WireAPI : "completions" ,
261+ BaseURL : byokBlueBaseURL ,
262+ BearerTokenProvider : makeCallback ("blue" ),
258263 },
259264 }
260265 models := []copilot.ProviderModelConfig {
0 commit comments