fix: subscribe to model activity events
This commit is contained in:
@@ -22,6 +22,17 @@ test("opens an EventSource and feeds NAMED events to the store", () => {
|
||||
expect(useSessionStore.getState().pendingWidget?.id).toBe("u1");
|
||||
});
|
||||
|
||||
test("feeds named activity_delta events to the model activity store", () => {
|
||||
renderHook(() => useSessionStream("s1"));
|
||||
const es = FakeEventSource.instances[0];
|
||||
|
||||
act(() =>
|
||||
es.emitNamed("activity_delta", { type: "activity_delta", text: "Analizzo le ambiguità" })
|
||||
);
|
||||
|
||||
expect(useSessionStore.getState().activity.at(-1)?.text).toBe("Analizzo le ambiguità");
|
||||
});
|
||||
|
||||
test("also feeds UNNAMED (default message) events to the store", () => {
|
||||
renderHook(() => useSessionStream("s1"));
|
||||
const es = FakeEventSource.instances[0];
|
||||
|
||||
@@ -26,7 +26,13 @@ export function useSessionStream(sessionId: string | null) {
|
||||
// onmessage catches unnamed events; addEventListener catches named events
|
||||
// (the backend sends event: ui_request, event: text_delta, etc.)
|
||||
es.onmessage = handle;
|
||||
const namedEvents = ["ui_request", "text_delta", "info", "system_event"] as const;
|
||||
const namedEvents = [
|
||||
"ui_request",
|
||||
"text_delta",
|
||||
"activity_delta",
|
||||
"info",
|
||||
"system_event",
|
||||
] as const;
|
||||
for (const name of namedEvents) es.addEventListener(name, handle);
|
||||
|
||||
return () => {
|
||||
|
||||
Reference in New Issue
Block a user