mirror of
https://github.com/HKUDS/nanobot.git
synced 2026-08-18 10:06:30 +03:00
feat(webui): track optimistic message delivery status (#5162)
This commit is contained in:
@@ -954,6 +954,34 @@ describe("ThreadMessages", () => {
|
||||
expect(screen.getAllByRole("button", { name: "Copy" })).toHaveLength(2);
|
||||
});
|
||||
|
||||
it("does not count failed optimistic messages in assistant fork indices", () => {
|
||||
const onForkFromMessage = vi.fn();
|
||||
const messages: UIMessage[] = [
|
||||
{ id: "u1", role: "user", content: "one", createdAt: 1 },
|
||||
{ id: "a1", role: "assistant", content: "answer one", createdAt: 2 },
|
||||
{
|
||||
id: "u-failed",
|
||||
role: "user",
|
||||
content: "not persisted",
|
||||
deliveryStatus: "failed",
|
||||
createdAt: 3,
|
||||
},
|
||||
{ id: "u2", role: "user", content: "two", createdAt: 4 },
|
||||
{ id: "a2", role: "assistant", content: "answer two", createdAt: 5 },
|
||||
];
|
||||
|
||||
render(
|
||||
<ThreadMessages
|
||||
messages={messages}
|
||||
isStreaming={false}
|
||||
onForkFromMessage={onForkFromMessage}
|
||||
/>,
|
||||
);
|
||||
|
||||
fireEvent.click(screen.getAllByRole("button", { name: "Fork" }).at(-1)!);
|
||||
expect(onForkFromMessage).toHaveBeenCalledWith(2);
|
||||
});
|
||||
|
||||
it("uses turn ids as activity grouping boundaries when available", () => {
|
||||
const units = buildDisplayUnits([
|
||||
{ id: "u1", role: "user", content: "one", turnId: "turn-1", createdAt: 1 },
|
||||
|
||||
Reference in New Issue
Block a user