diff --git a/apps/ai-game-creator-shell/src/view/project-development/planning/PlanningChatView.tsx b/apps/ai-game-creator-shell/src/view/project-development/planning/PlanningChatView.tsx index 2bc1d5236..9c128b07f 100644 --- a/apps/ai-game-creator-shell/src/view/project-development/planning/PlanningChatView.tsx +++ b/apps/ai-game-creator-shell/src/view/project-development/planning/PlanningChatView.tsx @@ -206,6 +206,12 @@ export function PlanningChatView({ needsUserInput || Boolean(designView?.session.pendingApproval) || Boolean(designView?.session.pendingClarification); + // 顶部状态条与底部待办区渲染的是同一份 Design Agent 状态,判据与回调兜底必须同源。 + const designMode = Boolean(designView || onDesignApprove); + const designActionsBusy = controlBusy || planGddDecisionBusy; + const handleDesignApprove = onDesignApprove ?? (() => undefined); + const handleDesignClarify = onDesignClarify ?? (() => undefined); + const handleDesignRetry = onDesignRetry ?? (() => undefined); const renderMessage = (message: ChatMessage, index: number) => (
- {designView || onDesignApprove ? ( + {designMode ? ( undefined)} - onClarify={onDesignClarify ?? (() => undefined)} - onRetry={onDesignRetry ?? (() => undefined)} + onApprove={handleDesignApprove} + onClarify={handleDesignClarify} + onRetry={handleDesignRetry} /> ) : (
) : null} - {designView || onDesignApprove ? ( + {designMode ? ( undefined)} - onClarify={onDesignClarify ?? (() => undefined)} - onRetry={onDesignRetry ?? (() => undefined)} + onApprove={handleDesignApprove} + onClarify={handleDesignClarify} + onRetry={handleDesignRetry} /> ) : null}