From d9982b467cafda738d69836b23d8c6fa7f22ed4e Mon Sep 17 00:00:00 2001 From: oabrivard Date: Tue, 24 Mar 2026 20:41:25 +0100 Subject: [PATCH] test: verify LLM call logs endpoint returns data after generation --- e2e/tests/generation-live.spec.ts | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/e2e/tests/generation-live.spec.ts b/e2e/tests/generation-live.spec.ts index 49bb686..af8ee0b 100644 --- a/e2e/tests/generation-live.spec.ts +++ b/e2e/tests/generation-live.spec.ts @@ -287,5 +287,27 @@ test.describe('Live generation with OpenAI', () => { expect(entry.synthesis_id).toBe(synthesisId); expect(entry.job_id).toBeTruthy(); } + + // ═══════════════════════════════════════════════════════════════ + // LLM call logs verification + // ═══════════════════════════════════════════════════════════════ + const jobId = usedEntries[0]?.job_id; + if (jobId) { + const logsResp = await apiCall(page, 'GET', `/api/v1/llm-logs/${jobId}`); + expect(logsResp.status).toBe(200); + const logs = logsResp.data; + expect(Array.isArray(logs)).toBe(true); + expect(logs.length).toBeGreaterThan(0); + + // Should have at least a rewrite call + const callTypes = logs.map((l: any) => l.call_type); + expect(callTypes).toContain('rewrite'); + + // Each log entry should have model and timing + for (const log of logs) { + expect(log.model).toBeTruthy(); + expect(log.duration_ms).toBeGreaterThanOrEqual(0); + } + } }); });