fix: avoid agent detail mode render loop
Some checks failed
Lint / build (20) (push) Has been cancelled
Playwright Tests / test (push) Has been cancelled

This commit is contained in:
Your Name 2026-03-25 09:53:56 +08:00
parent 63b77b5507
commit 66d9031d89

View File

@ -2487,6 +2487,9 @@ export function AgentGenerationWorkspaceDarkV2({
const current = resolvedAgentModeState.detailReplacement;
const nextDetailReplacement =
typeof updater === "function" ? updater(current) : { ...current, ...updater };
if (nextDetailReplacement === current) {
return;
}
emitAgentModeState({
...resolvedAgentModeState,
detailReplacement: nextDetailReplacement,
@ -2503,6 +2506,9 @@ export function AgentGenerationWorkspaceDarkV2({
const current = resolvedAgentModeState.skuReplacement;
const nextSkuReplacement =
typeof updater === "function" ? updater(current) : { ...current, ...updater };
if (nextSkuReplacement === current) {
return;
}
emitAgentModeState({
...resolvedAgentModeState,
skuReplacement: nextSkuReplacement,
@ -4203,7 +4209,7 @@ export function AgentGenerationWorkspaceDarkV2({
</motion.section>
) : null}
{isDetailReplacementPreset ? (
{isDetailReplacementPreset && !isDetailAiGenerationMethod ? (
<AgentDetailReferenceStitchDialog
open={detailReferenceStitchDialogOpen}
onOpenChange={setDetailReferenceStitchDialogOpen}
@ -4357,7 +4363,9 @@ export function AgentGenerationWorkspaceDarkV2({
</div>
</div>
{isDetailReplacementPreset && activeResultModeType === currentResultModeType ? (
{isDetailReplacementPreset &&
!isDetailAiGenerationMethod &&
activeResultModeType === currentResultModeType ? (
<div className="grid flex-1 min-h-0 grid-cols-1 gap-0 xl:grid-cols-[320px_repeat(2,minmax(0,1fr))]">
<div className="border-b border-white/10 p-4 xl:border-b-0 xl:border-r">
<div className="mb-3 flex items-center justify-between">