Skip to content

Commit c60b424

Browse files
committed
test(release): accept trajectory command session final
(cherry picked from commit 9458ffa)
1 parent 340c245 commit c60b424

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

src/gateway/gateway-trajectory-export.live.test.ts

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,12 @@ async function waitForTrajectoryExportInstructionText(params: {
207207
if (eventText) {
208208
return eventText;
209209
}
210+
const sessionEventText = params.events
211+
.map((event) => extractChatFinalTextForSession(event, params.sessionKey))
212+
.find((text) => text?.includes(params.expectedText));
213+
if (sessionEventText) {
214+
return sessionEventText;
215+
}
210216
const history: { messages?: unknown[] } = await params.client.request(
211217
"chat.history",
212218
{
@@ -242,6 +248,25 @@ function extractChatFinalText(event: EventFrame, runId: string): string | undefi
242248
if (record.runId !== runId || record.state !== "final") {
243249
return undefined;
244250
}
251+
return extractChatFinalRecordText(record);
252+
}
253+
254+
function extractChatFinalTextForSession(event: EventFrame, sessionKey: string): string | undefined {
255+
if (event.event !== "chat") {
256+
return undefined;
257+
}
258+
const payload = event.payload;
259+
if (!payload || typeof payload !== "object") {
260+
return undefined;
261+
}
262+
const record = payload as Record<string, unknown>;
263+
if (record.sessionKey !== sessionKey || record.state !== "final") {
264+
return undefined;
265+
}
266+
return extractChatFinalRecordText(record);
267+
}
268+
269+
function extractChatFinalRecordText(record: Record<string, unknown>): string | undefined {
245270
const message = record.message;
246271
if (!message || typeof message !== "object") {
247272
return undefined;

0 commit comments

Comments
 (0)