Code Review
Überprüfen Sie die Änderung, auf die der Benutzer verweist (einen Diff, einen Branch, einen PR oder den nicht committeten Arbeitsbaum). Wenn keine Angabe erfolgt, überprüfen Sie die nicht committeten Änderungen, dann den aktuellen Branch gegen seinen Basis-Branch.
So überprüfen Sie
- Verstehen Sie zuerst die Absicht. Lesen Sie die PR-Beschreibung, Commit-Nachrichten und das verknüpfte Issue. Eine Änderung kann nur im Verhältnis zu dem, was sie bezweckt, falsch sein.
- Lesen Sie den gesamten Diff, dann den umgebenden Code. Öffnen Sie die geänderten Funktionen und ihre Aufrufer. Die meisten echten Fehler leben an der Grenze zwischen neuem und altem Code.
- Überprüfen Sie in dieser Reihenfolge:
- Korrektheit: Logikfehler, Off-by-one-Fehler, falsche Bedingungen, unbehandelte
null-/leere-/Fehlerfälle, Race-Conditions, Ressourcenlecks, unterbrochene Fehlerweitergabe. - Verhaltensänderungen: Öffentliche APIs, Dateiformate, Standardwerte oder Datenbankschemata, die ohne Migration oder Hinweis geändert werden.
- Sicherheit: Nicht vertrauenswürdige Eingaben, die Abfragen, Shells, Dateipfade, HTML oder Deserialisierungsmechanismen erreichen; Geheimnisse in Code oder Logs; fehlende Autorisierungsprüfungen.
- Tests: Fällt ein Test aus, wenn die Änderung rückgängig gemacht wird? Werden Randfälle abgedeckt?
- Lesbarkeit: Namen, die irreführen, Funktionen, die zwei Dinge tun, Kommentare, die dem Code widersprechen, toter Code.
- Korrektheit: Logikfehler, Off-by-one-Fehler, falsche Bedingungen, unbehandelte
- Verifizieren Sie vor dem Melden. Verfolgen Sie für jeden vermuteten Fehler einen konkreten Input, der ihn auslöst. Lassen Sie alles weg, was Sie nicht konkretisieren können, oder kennzeichnen Sie es als Frage.
So melden Sie
- Beginnen Sie mit einem einzeiligen Fazit: bereit zum Mergen, Merge nach Korrekturen oder Überarbeitung erforderlich.
- Listen Sie die Ergebnisse nach Schweregrad geordnet auf. Geben Sie für jedes an:
Datei:Zeile, was falsch ist, ein konkretes Fehlerszenario und einen Korrekturvorschlag. - Trennen Sie Muss gefixt werden von Vorschlägen und Fragen.
- Achten Sie darauf, die Überprüfung nicht mit Stilproblemen aufzublähen, die ein Formatierer oder Linter abfangen würde, und wiederholen Sie nicht, was der Diff tut.
- Heben Sie hervor, was gut ist, wenn es bemerkenswert ist (ein klarer Test, eine sorgfältige Migration). Bleiben Sie dabei auf einen Satz beschränkt.