@@ -29,7 +29,10 @@ import (
29
29
logutil "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/util/logging"
30
30
)
31
31
32
- const modelHeader = "X-Gateway-Model-Name"
32
+ const (
33
+ modelHeader = "X-Gateway-Model-Name"
34
+ processedHeader = "X-Gateway-BBR"
35
+ )
33
36
34
37
// HandleRequestBody handles request bodies.
35
38
func (s * Server ) HandleRequestBody (ctx context.Context , data map [string ]any ) ([]* eppb.ProcessingResponse , error ) {
@@ -79,14 +82,7 @@ func (s *Server) HandleRequestBody(ctx context.Context, data map[string]any) ([]
79
82
Response : & eppb.CommonResponse {
80
83
ClearRouteCache : true ,
81
84
HeaderMutation : & eppb.HeaderMutation {
82
- SetHeaders : []* basepb.HeaderValueOption {
83
- {
84
- Header : & basepb.HeaderValue {
85
- Key : modelHeader ,
86
- RawValue : []byte (modelStr ),
87
- },
88
- },
89
- },
85
+ SetHeaders : headersToAdd (modelStr ),
90
86
},
91
87
},
92
88
},
@@ -104,14 +100,7 @@ func (s *Server) HandleRequestBody(ctx context.Context, data map[string]any) ([]
104
100
// Necessary so that the new headers are used in the routing decision.
105
101
ClearRouteCache : true ,
106
102
HeaderMutation : & eppb.HeaderMutation {
107
- SetHeaders : []* basepb.HeaderValueOption {
108
- {
109
- Header : & basepb.HeaderValue {
110
- Key : modelHeader ,
111
- RawValue : []byte (modelStr ),
112
- },
113
- },
114
- },
103
+ SetHeaders : headersToAdd (modelStr ),
115
104
},
116
105
},
117
106
},
@@ -120,6 +109,23 @@ func (s *Server) HandleRequestBody(ctx context.Context, data map[string]any) ([]
120
109
}, nil
121
110
}
122
111
112
+ func headersToAdd (model string ) []* basepb.HeaderValueOption {
113
+ return []* basepb.HeaderValueOption {
114
+ {
115
+ Header : & basepb.HeaderValue {
116
+ Key : modelHeader ,
117
+ RawValue : []byte (model ),
118
+ },
119
+ },
120
+ {
121
+ Header : & basepb.HeaderValue {
122
+ Key : processedHeader ,
123
+ RawValue : []byte ("true" ),
124
+ },
125
+ },
126
+ }
127
+ }
128
+
123
129
func addStreamedBodyResponse (responses []* eppb.ProcessingResponse , requestBodyBytes []byte ) []* eppb.ProcessingResponse {
124
130
return append (responses , & extProcPb.ProcessingResponse {
125
131
Response : & extProcPb.ProcessingResponse_RequestBody {
0 commit comments