思考过程移到消息流上方;修 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
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:
@@ -6906,7 +6906,9 @@ export function App({
|
||||
return;
|
||||
}
|
||||
if (localProject.projectPath !== latch.projectPath) {
|
||||
claimInitialSupervisorMessageForPage(latch.projectPath);
|
||||
// 不能在这里先"占用"这条初始消息:项目路径可能因为分隔符/大小写/时序先落到别的
|
||||
// 路径上,一旦占用,真正匹配的项目就再也不会收到这条消息,用户的输入被静默丢掉。
|
||||
// 这里只等待,占用留给下面真正要发送的那一步。
|
||||
return;
|
||||
}
|
||||
if (
|
||||
|
||||
+22
-22
@@ -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"
|
||||
|
||||
Reference in New Issue
Block a user