Skip to content

Commit 175edef

Browse files
authored
Pass task ID in the Roo provider request headers (#7303)
1 parent d06d970 commit 175edef

File tree

8 files changed

+18
-2
lines changed

8 files changed

+18
-2
lines changed

src/api/providers/__tests__/chutes.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -398,6 +398,7 @@ describe("ChutesHandler", () => {
398398
stream: true,
399399
stream_options: { include_usage: true },
400400
}),
401+
undefined,
401402
)
402403
})
403404

src/api/providers/__tests__/fireworks.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -356,6 +356,7 @@ describe("FireworksHandler", () => {
356356
stream: true,
357357
stream_options: { include_usage: true },
358358
}),
359+
undefined,
359360
)
360361
})
361362

src/api/providers/__tests__/groq.spec.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@ describe("GroqHandler", () => {
145145
stream: true,
146146
stream_options: { include_usage: true },
147147
}),
148+
undefined,
148149
)
149150
})
150151

@@ -178,6 +179,7 @@ describe("GroqHandler", () => {
178179
messages: expect.arrayContaining([{ role: "system", content: systemPrompt }]),
179180
stream: true,
180181
}),
182+
undefined,
181183
)
182184

183185
// Verify temperature is NOT included
@@ -216,6 +218,7 @@ describe("GroqHandler", () => {
216218
messages: expect.arrayContaining([{ role: "system", content: systemPrompt }]),
217219
stream: true,
218220
}),
221+
undefined,
219222
)
220223
})
221224
})

src/api/providers/__tests__/roo.spec.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,7 @@ describe("RooHandler", () => {
261261
expect.objectContaining({ role: "user", content: "Second message" }),
262262
]),
263263
}),
264+
undefined,
264265
)
265266
})
266267
})
@@ -365,6 +366,7 @@ describe("RooHandler", () => {
365366
expect.not.objectContaining({
366367
temperature: expect.anything(),
367368
}),
369+
undefined,
368370
)
369371
})
370372

@@ -382,6 +384,7 @@ describe("RooHandler", () => {
382384
expect.objectContaining({
383385
temperature: 0.9,
384386
}),
387+
undefined,
385388
)
386389
})
387390

src/api/providers/__tests__/sambanova.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,7 @@ describe("SambaNovaHandler", () => {
148148
stream: true,
149149
stream_options: { include_usage: true },
150150
}),
151+
undefined,
151152
)
152153
})
153154
})

src/api/providers/__tests__/zai.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,7 @@ describe("ZAiHandler", () => {
224224
stream: true,
225225
stream_options: { include_usage: true },
226226
}),
227+
undefined,
227228
)
228229
})
229230
})

src/api/providers/base-openai-compatible-provider.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ export abstract class BaseOpenAiCompatibleProvider<ModelName extends string>
6666
systemPrompt: string,
6767
messages: Anthropic.Messages.MessageParam[],
6868
metadata?: ApiHandlerCreateMessageMetadata,
69+
requestOptions?: OpenAI.RequestOptions,
6970
) {
7071
const {
7172
id: model,
@@ -85,7 +86,7 @@ export abstract class BaseOpenAiCompatibleProvider<ModelName extends string>
8586
params.temperature = this.options.modelTemperature
8687
}
8788

88-
return this.client.chat.completions.create(params)
89+
return this.client.chat.completions.create(params, requestOptions)
8990
}
9091

9192
override async *createMessage(

src/api/providers/roo.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,12 @@ export class RooHandler extends BaseOpenAiCompatibleProvider<RooModelId> {
3636
messages: Anthropic.Messages.MessageParam[],
3737
metadata?: ApiHandlerCreateMessageMetadata,
3838
): ApiStream {
39-
const stream = await this.createStream(systemPrompt, messages, metadata)
39+
const stream = await this.createStream(
40+
systemPrompt,
41+
messages,
42+
metadata,
43+
metadata?.taskId ? { headers: { "X-Roo-Task-ID": metadata.taskId } } : undefined,
44+
)
4045

4146
for await (const chunk of stream) {
4247
const delta = chunk.choices[0]?.delta

0 commit comments

Comments
 (0)