Browse Source

Fix the bug in enablePrologue under agent task mode (#9487)

### What problem does this PR solve?

There is a problem with the implementation of the Agent begin-form:
although the enablePrologue switch and the prologue input box are hidden
in Task mode, these values are still saved in the form data. If the user
first enables the opening and sets the content in Conversational mode,
and then switches to Task mode, these values will still be saved and may
be used in some scenarios.
### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
tags/v0.20.2
TeslaZY 2 months ago
parent
commit
d874683ae4
No account linked to committer's email address
1 changed files with 13 additions and 1 deletions
  1. 13
    1
      web/src/pages/agent/form/begin-form/index.tsx

+ 13
- 1
web/src/pages/agent/form/begin-form/index.tsx View File

@@ -15,7 +15,7 @@ import { FormTooltip } from '@/components/ui/tooltip';
import { buildSelectOptions } from '@/utils/component-util';
import { zodResolver } from '@hookform/resolvers/zod';
import { Plus } from 'lucide-react';
import { memo } from 'react';
import { memo, useEffect, useRef } from 'react';
import { useForm, useWatch } from 'react-hook-form';
import { useTranslation } from 'react-i18next';
import { z } from 'zod';
@@ -70,6 +70,18 @@ function BeginForm({ node }: INextOperatorForm) {
name: 'enablePrologue',
});

const previousModeRef = useRef(mode);

useEffect(() => {
if (
previousModeRef.current === AgentDialogueMode.Task &&
mode === AgentDialogueMode.Conversational
) {
form.setValue('enablePrologue', true);
}
previousModeRef.current = mode;
}, [mode, form]);

const {
ok,
currentRecord,

Loading…
Cancel
Save