Explorar el Código

fix: deduplicate command suggestions (#934)

John Henry Rudden hace 7 meses
padre
commit
f04a5e50ee
Se han modificado 1 ficheros con 7 adiciones y 2 borrados
  1. 7 2
      packages/tui/internal/completions/commands.go

+ 7 - 2
packages/tui/internal/completions/commands.go

@@ -96,11 +96,16 @@ func (c *CommandCompletionProvider) GetChildEntries(
 	// Sort by score (best matches first)
 	sort.Sort(matches)
 
-	// Convert matches to completion items
+	// Convert matches to completion items, deduplicating by command name
 	items := []dialog.CompletionItemI{}
+	seen := make(map[string]bool)
 	for _, match := range matches {
 		if item, ok := commandMap[match.Target]; ok {
-			items = append(items, item)
+			// Use the command's value (name) as the deduplication key
+			if !seen[item.GetValue()] {
+				seen[item.GetValue()] = true
+				items = append(items, item)
+			}
 		}
 	}
 	return items, nil