Просмотр исходного кода

fix: prevent unnecessary config operations when renaming to same name

- Add validation in UI to early return when renaming config to current name
- Add server-side validation to prevent config save/delete operations
sam hoang 11 месяцев назад
Родитель
Сommit
ab556286f1

+ 4 - 0
src/core/webview/ClineProvider.ts

@@ -1215,6 +1215,10 @@ export class ClineProvider implements vscode.WebviewViewProvider {
 							try {
 								const { oldName, newName } = message.values
 
+								if (oldName === newName) {
+									break
+								}
+
 								await this.configManager.saveConfig(newName, message.apiConfiguration)
 								await this.configManager.deleteConfig(oldName)
 

+ 5 - 0
webview-ui/src/components/settings/ApiConfigManager.tsx

@@ -60,6 +60,11 @@ const ApiConfigManager = ({
 		if (editState === "new") {
 			onUpsertConfig(trimmedValue)
 		} else if (editState === "rename" && currentApiConfigName) {
+			if (currentApiConfigName === trimmedValue) {
+				setEditState(null)
+				setInputValue("")
+				return
+			}
 			onRenameConfig(currentApiConfigName, trimmedValue)
 		}