Zum Hauptinhalt springen
ai-slop/generic-namingmanuelle Behebung

Generische Benennung.

Variablen und Parameter namens `data`, `result`, `value`, `temp`, `obj`, `info`, `item`. Namen, die sagen „das ist ein Substantiv“, ohne zu sagen, welches.

Beanstandete und saubere Form.

Jedes Beispiel zeigt genau die Codeform, nach der die Regel sucht, und dann die kleinste Version, die die Absicht bewahrt, ohne Risiken zu verstecken oder Rauschen hinzuzufügen.

generic-naming.ts
✗ Beanstandet
function process(data: any) {
  const result = data.map((item: any) => item.value * 2)
  return result
}
Warum das anschlägt

Deterministischer AST-Abgleich mit einer Liste von Platzhalternamen, beschränkt auf Deklarationen, die die Regel sicher umbenennen kann.

generic-naming.ts
✓ Sauber
function doublePrices(products: Product[]): number[] {
  return products.map(product => product.price * 2)
}
Was sich geändert hat

Benenne Werte nach ihrer Rolle in der Domäne um: `products`, `invoiceTotal`, `retryPolicy`, `parsedUser`. Entferne `any`, wenn der Name nur deshalb generisch ist, weil der Typ nie modelliert wurde.

Ohne zu sehen, wie der Wert später verwendet wird, fallen Agenten auf generische Platzhalter zurück. Der Leser muss die Rolle aus dem Kontext erschließen – jedes Mal.

Wie diese Regel begründet ist.

Regel-ID

ai-slop/generic-naming

Prüfende Engine

ai-slop

Erkennungsstrategie

Deterministischer AST-Abgleich mit einer Liste von Platzhalternamen, beschränkt auf Deklarationen, die die Regel sicher umbenennen kann.

Legitimer Code, der NICHT beanstandet wird

Übliche Schleifenindizes, generische Typparameter und kurzlebige lokale Variablen in trivialen Scopes werden nicht beanstandet.

Belege

Die Signale zur Benennung stammen aus SlopCodeBench, das strukturelle Erosion in langen Aufgaben verfolgt hat.