diff --git a/apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts b/apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts index 60af13028..3945390f2 100644 --- a/apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts +++ b/apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectProjectChatController.ts @@ -454,7 +454,14 @@ export function useDirectProjectChatController({ }); }, }); - if (!allowed) return; + if (!allowed) { + // 写权限门返回 false 且没有调用 onConfirmed(被策略拒绝、或读策略失败), + // 说明这一轮不会重跑;它已经被 dispatchNextQueuedTurn 出队,必须自己把 + // 忙态放下并继续出队,否则后面的排队消息会永久卡住。 + markTurnBusy(false); + dispatchNextQueuedTurn(); + return; + } } const invoke = resolveTauriInvoke(); if (!invoke) return;