show reasoning in frontend and some other stuff

This commit is contained in:
2026-09-21 20:24:40 +02:00
parent ceb3c752ff
commit fd76a79aaf
12 changed files with 220 additions and 89 deletions
+5 -4
View File
@@ -82,7 +82,7 @@ test("every Ollama request includes dynamic server date context", async () => {
}, {
fetch: async (_url, options) => {
requestBody = JSON.parse(options.body);
return new Response('{"message":{"content":"ok"}}\n', {status: 200});
return new Response('{"message":{"content":"ok"},"done":true}\n', {status: 200});
}
});
assert.equal(await modelService.generateReply("test:model", [{role: "user", content: "hello"}]), "ok");
@@ -192,9 +192,10 @@ test("chat search integrates with streaming, persistence, personas, settings, re
const [event, data] = block.split("\n");
events.push({event: event.slice(7), data: JSON.parse(data.slice(6))});
}
assert.deepEqual(events.map((event) => event.event), ["status", "status", "chunk", "chunk", "done"]);
assert.equal(events[0].data.status, "searching");
assert.deepEqual(events[1].data, {status: "generating", sourceCount: 1});
assert.deepEqual(events.map((event) => event.event), ["status", "status", "status", "chunk", "chunk", "done"]);
assert.equal(events[0].data.status, "accepted");
assert.equal(events[1].data.status, "searching");
assert.deepEqual(events[2].data, {status: "generating", sourceCount: 1});
assert.deepEqual(events.at(-1).data.sources, [source]);
assert.equal(searchCount, 1);
assert.equal(lastSearchQuery, "major news events September 10, 2025 2025-09-10");