feat(问翻小宝): 增强帮助搜索与会话历史

关键改动:

- 增加问翻小宝会话历史记录规则与测试

- 优化帮助搜索、兜底建议和页面交互结构

- 更新帮助截图资产和截图采集脚本

Co-Authored-By: Codex GPT-5 <codex@openai.com>
This commit is contained in:
Script Generator
2026-07-01 09:20:10 +08:00
parent 8683b341e2
commit e5ce2d221e
20 changed files with 714 additions and 81 deletions

View File

@@ -0,0 +1,53 @@
export type WenfanHistoryMessage = {
role: string;
content?: string;
};
export type WenfanConversationRecord<TMessage extends WenfanHistoryMessage> = {
id: string;
title: string;
messages: TMessage[];
};
const DEFAULT_CONVERSATION_TITLE = '新对话';
function getConversationTitle<TMessage extends WenfanHistoryMessage>(messages: TMessage[]): string {
const firstQuestion = messages.find((message) => message.role === 'user' && message.content?.trim());
return firstQuestion?.content?.trim() || DEFAULT_CONVERSATION_TITLE;
}
export function createWenfanConversationRecord<TMessage extends WenfanHistoryMessage>(
id: string,
messages: TMessage[],
): WenfanConversationRecord<TMessage> {
return {
id,
title: getConversationTitle(messages),
messages,
};
}
export function updateWenfanConversationRecord<TMessage extends WenfanHistoryMessage>(
records: WenfanConversationRecord<TMessage>[],
activeId: string | null | undefined,
messages: TMessage[],
): WenfanConversationRecord<TMessage>[] {
if (!activeId) return records;
return records.map((record) =>
record.id === activeId
? {
...record,
title: getConversationTitle(messages),
messages,
}
: record,
);
}
export function deleteWenfanConversationRecord<TMessage extends WenfanHistoryMessage>(
records: WenfanConversationRecord<TMessage>[],
id: string,
): WenfanConversationRecord<TMessage>[] {
return records.filter((record) => record.id !== id);
}