test: cover task detail live timeline updates
This commit is contained in:
@ -64,4 +64,29 @@ describe('chat store process event ingestion', () => {
|
||||
expect(useChatStore.getState().getInputDraft('web:alpha')).toBe('');
|
||||
expect(useChatStore.getState().getInputDraft('web:beta')).toBe('message for beta');
|
||||
});
|
||||
|
||||
it('keeps live task events after persisted session projection is merged', () => {
|
||||
const store = useChatStore.getState();
|
||||
store.setSessionId('web:default');
|
||||
store.ingestProcessEvent({
|
||||
type: 'process_run_progress',
|
||||
session_id: 'web:default',
|
||||
run_id: 'run-live',
|
||||
parent_run_id: null,
|
||||
actor_type: 'agent',
|
||||
actor_id: 'main-agent',
|
||||
actor_name: 'Main Agent',
|
||||
text: '正在调用工具',
|
||||
metadata: { task_id: 'task-live', timeline_type: 'tool_call' },
|
||||
created_at: '2026-05-26T10:00:00.000Z',
|
||||
});
|
||||
|
||||
store.setSessionProcess('web:default', {
|
||||
runs: [],
|
||||
events: [],
|
||||
artifacts: [],
|
||||
});
|
||||
|
||||
expect(useChatStore.getState().processEvents.some((event) => event.run_id === 'run-live')).toBe(true);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user