Zum Hauptinhalt springen
ai-slop/meta-commentmanuelle Behebung

Meta-Kommentar.

Ein Kommentar über die Aufgabe oder die Änderung statt über den Code: "wie in den Anforderungen", "vorher wurde hier X aufgerufen", "nicht mehr nötig". Er hält das Gespräch fest, aus dem der Code entstanden ist.

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.

meta-comment.ts
✗ Beanstandet
export async function listInvoices(cursor?: string) {
  // Added pagination as per the requirements
  // Previously this returned every row in one query
  return db.invoice.findMany({ take: 50, cursor: cursor ? { id: cursor } : undefined })
}
Warum das anschlägt

Deterministisches Parsen von Kommentarblöcken: beanstandet Blöcke, die auf einen Plan oder eine Spezifikation verweisen (`step 2 of the plan`, `per the spec`, `from the task`) oder einen Vorher-nachher-Zustand erzählen (`previously this`, `used to`, `no longer needed`, `replaced the old`).

meta-comment.ts
✓ Sauber
export async function listInvoices(cursor?: string) {
  // Capped at 50 rows because the export worker times out on larger pages.
  return db.invoice.findMany({ take: 50, cursor: cursor ? { id: cursor } : undefined })
}
Was sich geändert hat

Verschiebe Änderungshistorie und Planungskontext in die Commit-Message oder die Pull-Request-Beschreibung. Behalte Kommentare im Quellcode für das, was der Code jetzt an Erklärung braucht.

Agenten erzählen ihren Plan und ihre Änderungen in den Quellcode hinein. Nach dem Merge ist der Plan weg und der Kommentar veraltet.

Wie diese Regel begründet ist.

Regel-ID

ai-slop/meta-comment

Prüfende Engine

ai-slop

Erkennungsstrategie

Deterministisches Parsen von Kommentarblöcken: beanstandet Blöcke, die auf einen Plan oder eine Spezifikation verweisen (`step 2 of the plan`, `per the spec`, `from the task`) oder einen Vorher-nachher-Zustand erzählen (`previously this`, `used to`, `no longer needed`, `replaced the old`).

Legitimer Code, der NICHT beanstandet wird

Kommentare mit einer Begründung oder einem TODO-Marker (because, since, otherwise, TODO, FIXME, HACK, note:, workaround), Lizenz-Header, Lint-Suppression-Direktiven, JSDoc mit aussagekräftigen Tags, Rust-Doc-Kommentare und Pfade außerhalb des Produktivcodes werden nicht beanstandet.

Belege

Eingeführt in aislop v0.9.5.