Sfoglia il codice sorgente

test(web): assert the whole turn/end reason in the Cordis lifecycle

The assertion compared a rebuilt object that carried only reason.kind,
so a failing turn reported "expected { kind: 'error' }" with no payload.
TurnEndReasonMap is merge-extensible and several variants carry the only
record of why the turn ended: error holds LlmFailure (message, code) and
aborted holds its TurnEndCancelCause.

Compare the reason itself. completed declares kind as its only field, so
the passing path is unchanged, and any failure prints the full variant
payload without a per-variant branch.
Chinesezjc 1 mese fa
parent
commit
3a46bd6798
1 ha cambiato i file con 1 aggiunte e 2 eliminazioni
  1. 1 2
      apps/web/tests/cordis-tool-round.e2e.ts

+ 1 - 2
apps/web/tests/cordis-tool-round.e2e.ts

@@ -47,8 +47,7 @@ function assertCompleteCordisLifecycle(events: readonly SessionEvent[]): void {
     (event): event is Extract<SessionEvent, { type: 'turn/end' }> => event.type === 'turn/end',
   )
   const reason = turnEnd?.data.reason
-  const reasonSummary = { kind: reason?.kind }
-  expect(reasonSummary).toEqual({ kind: 'completed' })
+  expect(reason).toEqual({ kind: 'completed' })
 
   const calls = events.filter(
     (event): event is Extract<SessionEvent, { type: 'tool/call' }> => event.type === 'tool/call',