Zum Hauptinhalt springen
ai-slop/unreachable-codemanuelle Behebung

Unerreichbarer Code.

Code nach einem `return`, `throw`, `break` oder `continue`, der niemals ausgeführt werden kann.

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.

unreachable-code.ts
✗ Beanstandet
function getStatus(order: Order): string {
  if (order.cancelled) {
    return 'cancelled'
    log.info('cancelled order seen') // never runs
  }
  return order.status
}
Warum das anschlägt

Deterministische Kontrollflussanalyse: beanstandet Anweisungen, die im selben Block auf einen unbedingten Abschluss folgen.

unreachable-code.ts
✓ Sauber
function getStatus(order: Order): string {
  if (order.cancelled) {
    log.info('cancelled order seen', { id: order.id })
    return 'cancelled'
  }
  return order.status
}
Was sich geändert hat

Verschiebe die Arbeit vor die abschließende Anweisung oder lösche sie. Soll die Anweisung nur in einem Zweig laufen, strukturiere den Zweig so um, dass der Kontrollfluss dem entspricht, was der Code optisch verspricht.

Wenn Agenten den Kontrollfluss refaktorieren, bleiben manchmal Anweisungen hinter einem return zurück. Der Code sieht aus, als täte er etwas; er tut nichts.

Wie diese Regel begründet ist.

Regel-ID

ai-slop/unreachable-code

Prüfende Engine

ai-slop

Erkennungsstrategie

Deterministische Kontrollflussanalyse: beanstandet Anweisungen, die im selben Block auf einen unbedingten Abschluss folgen.

Legitimer Code, der NICHT beanstandet wird

Code nach einem bedingten return und Anweisungen, die über irgendeinen Zweig erreichbar sind, werden nicht beanstandet.

Belege

Herkunft: wiederholt in öffentlichen Scans als Überbleibsel von Kontrollfluss-Refactorings aufgetreten.