From 942e014d9224ee1d02e8c7f4b4f2ec457cad16a5 Mon Sep 17 00:00:00 2001 From: fullex <0xfullex@gmail.com> Date: Sun, 28 Dec 2025 21:24:00 +0800 Subject: [PATCH] fix(api): enhance message status handling - Updated MessageStatus type to include 'pending' as a new state, reflecting the message processing lifecycle. - Modified CreateMessageDto and UpdateMessageDto interfaces to utilize the updated MessageStatus type for improved clarity and consistency in message status management. --- packages/shared/data/api/schemas/messages.ts | 5 +++-- packages/shared/data/types/message.ts | 8 ++++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/shared/data/api/schemas/messages.ts b/packages/shared/data/api/schemas/messages.ts index 4b144d87ae..6cc0417fa6 100644 --- a/packages/shared/data/api/schemas/messages.ts +++ b/packages/shared/data/api/schemas/messages.ts @@ -11,6 +11,7 @@ import type { MessageData, MessageRole, MessageStats, + MessageStatus, TreeResponse } from '@shared/data/types/message' import type { AssistantMeta, ModelMeta } from '@shared/data/types/meta' @@ -30,7 +31,7 @@ export interface CreateMessageDto { /** Message content */ data: MessageData /** Message status */ - status?: 'success' | 'error' | 'paused' + status?: MessageStatus /** Siblings group ID (0 = normal, >0 = multi-model group) */ siblingsGroupId?: number /** Assistant ID */ @@ -58,7 +59,7 @@ export interface UpdateMessageDto { /** Change siblings group */ siblingsGroupId?: number /** Update status */ - status?: 'success' | 'error' | 'paused' + status?: MessageStatus } /** diff --git a/packages/shared/data/types/message.ts b/packages/shared/data/types/message.ts index ab121d6346..be0bc3cb7e 100644 --- a/packages/shared/data/types/message.ts +++ b/packages/shared/data/types/message.ts @@ -182,9 +182,13 @@ import type { AssistantMeta, ModelMeta } from './meta' export type MessageRole = 'user' | 'assistant' | 'system' /** - * Message status - final state after processing + * Message status + * - pending: Placeholder created, streaming in progress + * - success: Completed successfully + * - error: Failed with error + * - paused: User stopped generation */ -export type MessageStatus = 'success' | 'error' | 'paused' +export type MessageStatus = 'pending' | 'success' | 'error' | 'paused' /** * Complete message entity as stored in database