feat: 重构多轮RAG展示并完善报告协作、业务链审核与 agentfx 种子

抽出专用多轮RAG消息列表并升级会话模型;强化报告协作画布与检查器;业务链普通用户改为提交审核;扩展 agentfx 报告技能种子,并将含 admin 的用户名自动提权为管理员。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
董宏凯andCursor committed 2026-09-03 17:34:16 +08:00
1 parent f109a95535
commit db333a4c33
30 files changed
+2878 -1482

No files matched your search

+9 -9
View File
@@ -70,7 +70,7 @@ import { clearResearchReportStream } from "@/core/threads/use-research-report-st
import { resolveWritingModeReportPath } from "@/core/threads/writing-mode";
import { queueLlmWikiConversationDeposit } from "@/core/llmwiki/conversation-deposit";
import { useSingleRoundRagMessages } from "@/core/threads/use-single-round-rag";
import { useMultiRoundRagMessages } from "@/core/threads/use-multi-round-rag";
import { useMultiRoundRagMessages, mergeMessagesByTime, toLangGraphMessages } from "@/core/threads/use-multi-round-rag";
import { useLayoutMode } from "@/core/system-settings/hooks";
import { useRouteBase } from "@/core/route-base";
import { textOfMessage } from "@/core/threads/utils";
@@ -332,19 +332,19 @@ export default function ChatPage() {
const { displayThread: researchDisplayThread } = useResearchWritingFeed(threadId, thread);
const displayThread = useMemo(() => {
const base = researchDisplayThread;
const ragMessages = toLangGraphMessages(multiRoundRag.messages);
if (
singleRoundRag.messages.length === 0 &&
multiRoundRag.messages.length === 0 &&
ragMessages.length === 0 &&
!singleRoundRag.isLoading &&
!multiRoundRag.isLoading
) {
return base;
}
const messages = [
...base.messages,
...singleRoundRag.messages,
...multiRoundRag.messages,
];
const messages = mergeMessagesByTime(
[...base.messages, ...singleRoundRag.messages],
ragMessages,
);
return {
...base,
values: { ...base.values, messages },
@@ -355,9 +355,9 @@ export default function ChatPage() {
}, [
multiRoundRag.isLoading,
multiRoundRag.messages,
researchDisplayThread,
singleRoundRag.isLoading,
singleRoundRag.messages,
researchDisplayThread,
]);
const writingArtifactPath = useMemo(
@@ -876,7 +876,7 @@ export default function ChatPage() {
status={
thread.error
? "error"
: displayThread.isLoading
: displayThread.isLoading || multiRoundRag.isLoading
? "streaming"
: "ready"
}