思考过程移到消息流上方;修 latch 路径不匹配时占用初始消息导致首页输入被丢
Project CI / AI game creator shell Rust shard 1/4 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust shard 2/4 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust shard 3/4 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust shard 4/4 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust smoke (pull_request) Has been cancelled
Project CI / AI game creator shell Rust crates (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / AI game creator shell web tests (pull_request) Has been cancelled

This commit is contained in:
2026-09-15 20:05:58 +08:00
parent 33a7205750
commit aab1c5c4e0
2 changed files with 25 additions and 23 deletions
+3 -1
View File
@@ -6906,7 +6906,9 @@ export function App({
return;
}
if (localProject.projectPath !== latch.projectPath) {
claimInitialSupervisorMessageForPage(latch.projectPath);
// 不能在这里先"占用"这条初始消息:项目路径可能因为分隔符/大小写/时序先落到别的
// 路径上,一旦占用,真正匹配的项目就再也不会收到这条消息,用户的输入被静默丢掉。
// 这里只等待,占用留给下面真正要发送的那一步。
return;
}
if (
@@ -427,6 +427,28 @@ export function ProjectSupervisorView({
{`显示更早 · 还有 ${hiddenConversationCount} 条对话`}
</button>
) : null}
{showDesignReasoning &&
designReasoningEntries
.filter((entry) => !entry.messageId)
.map((entry) => (
<details
key={`reasoning-${entry.id}`}
className="design-agent-reasoning"
aria-label="策划 Agent 思考过程"
>
<summary></summary>
<pre>{entry.text}</pre>
</details>
))}
{showDesignReasoning && designReasoning ? (
<details
className="design-agent-reasoning"
aria-label="策划 Agent 思考过程"
>
<summary></summary>
<pre>{designReasoning}</pre>
</details>
) : null}
{visibleMessages.map((message, index) => {
const anchoredToolCalls = message.messageId
? (toolCallsByAnchor.get(message.messageId) ?? [])
@@ -471,28 +493,6 @@ export function ProjectSupervisorView({
className="message-tool-call"
/>
) : null}
{showDesignReasoning &&
designReasoningEntries
.filter((entry) => !entry.messageId)
.map((entry) => (
<details
key={`reasoning-${entry.id}`}
className="design-agent-reasoning"
aria-label="策划 Agent 思考过程"
>
<summary></summary>
<pre>{entry.text}</pre>
</details>
))}
{showDesignReasoning && designReasoning ? (
<details
className="design-agent-reasoning"
aria-label="策划 Agent 思考过程"
>
<summary></summary>
<pre>{designReasoning}</pre>
</details>
) : null}
{!directCodex && transientReply ? (
<div
className="message message--assistant"