Baike.dev
Anmelden
> 返回资讯列表
news_article.exe
📰

Golden-File kein Agent Patch. Golden-File die Beziehung.

Don't Golden-File an Agent Patch. Golden-File the Relation.

2026年9月3日4 次浏览来源:Dev.to 阅读原文

Ein aufgezeichneter Erwartungswert ist ein Leck. Ein Agent, der lesen kann, kann patchen, bis diese Zeile grün ist und jede nicht gelistete Eingabe kaputt lässt. Eine metamorphe Beziehung veröffentlicht nicht. Es veröffentlicht nur eine Einschränkung, die die Ausgabe unter einer bekannten Transformation halten muss. Das ist das Tor, das es wert ist, automatisiert zu werden. Fixtures sind immer noch wichtig, aber nur als Samen. Flaky Tests benötigen immer noch ein Einfrieren, aber das Einfrieren darf die Beziehung selbst nicht abdecken. Dieser Artikel ist ein vorgeschlagenes Layout, keine Produktionsfallstudie. Es werden keine Laufzeitmetriken beansprucht. Die Befehle und Module unten sind beschriftet, so dass sie in ein Scratch-Repo kopiert und gegen Ihre eigene Funktion im Test ausgeführt werden können. Warum Snapshots als Merge Gate scheitern Goldene Dateien kodieren ein Transkript. Ein Agent Patch ist eine Suche über viele Transkripte. Wenn die Suche die Antwort sehen kann...

Ein aufgezeichneter Erwartungswert ist ein Leck. Ein Agent, der lesen kann, kann patchen, bis diese Zeile grün ist und jede nicht gelistete Eingabe kaputt lässt. Eine metamorphe Beziehung veröffentlicht nicht. Es veröffentlicht nur eine Einschränkung, die die Ausgabe unter einer bekannten Transformation halten muss. Das ist das Tor, das es wert ist, automatisiert zu werden. Fixtures sind immer noch wichtig, aber nur als Samen. Flaky Tests benötigen immer noch ein Einfrieren, aber das Einfrieren darf die Beziehung selbst nicht abdecken. Dieser Artikel ist ein vorgeschlagenes Layout, keine Produktionsfallstudie. Es werden keine Laufzeitmetriken beansprucht. Die Befehle und Module unten sind beschriftet, so dass sie in ein Scratch-Repo kopiert und gegen Ihre eigene Funktion im Test ausgeführt werden können. Warum Snapshots als Merge Gate scheitern Goldene Dateien kodieren ein Transkript. Ein Agent Patch ist eine Suche über viele Transkripte. Wenn die Suche den Antwortschlüssel sehen kann, ist das billigste Programm eine Nachschlagetabelle für die Schlüssel im Baum. Dieses Programm ist grün. Es ist auch bei der nächsten Kundendatei falsch. Property-Style-Checks reduzieren dieses Leck, weil sie die Antwort nicht liefern. Sie benötigen immer noch einen Seed Corpus, einen Replay Runner, den der Patch nicht bearbeiten kann, und eine Quarantänedatei, die abläuft. Mischen Sie diese drei und Sie erhalten ein Tor, das nicht geschlossen wird, wenn der Agent Tests neu schreibt, wenn eine Vorrichtung driftet oder wenn eine Flocke verwendet wird, um eine gebrochene Invariante zu verbergen. Drei Beziehungsklassen, die es wert sind, zuerst codiert zu werden Beginnen Sie mit Beziehungen, die Sie in einer Zeile angeben können. Wenn Sie die Linie nicht angeben können, haben Sie kein Tor. Sie haben einen Recorder. Idempotenz. für Normalisatoren, Formatierer und Canonicalizer. Round-Trip. entspricht auf den Feldern, die Sie tatsächlich garantieren, nicht auf Whitespace Sie nicht. Oracle-freier Vergleich. bezieht sich auf eine Transformation, die Sie kontrollieren: unabhängige Zeilen mischen, äquivalente Schlüssel umbenennen, NFC vs. NFD-Unicode, eine Menge und ihre Einheit zusammen skalieren. Das sind keine universellen Gesetze. Sie sind Hypothesen über Ihre Funktion. Schreibe sie als Code auf. Halten Sie die Seed Inputs langweilig. Die Beziehung, nicht der Same, macht die Arbeit. Seed-Befestigungen sind keine erwarteten Ausgaben Ein Seed ist eine Eingabe, die der Läufer lesen darf. Es ist kein gesegnetes byte dump von. Speichern Sie Samen als Dateien ohne Geschwister. Wenn ein Reviewer eine erwartete Datei neben einem Seed hinzufügt, sollte das Gate den Build fehlschlagen. Diese einzige Regel verhindert, dass sich die Suite in einen Recorder verwandelt. Vorgeschlagener Baum: Der Agent kann schreiben. Sie darf nicht schreiben. Erzwingen Sie dies in CI mit einer Pfadüberprüfung, nicht mit einem Kommentar. Artefakt: Ein Wiederholungsläufer, den der Patch nicht durch Bearbeiten von Tests erfüllen kann Das zu testende Modul ist ein CSV-Mengennormalisator. Behandeln Sie das Folgende als vorgeschlagenes Beispiel, nicht als gemessener Produktionscode. Beziehungstests verbrauchen Samen und erwähnen nie eine goldene Ausgabestring. sollten zwei Dinge ablehnen: ein leeres Seed-Verzeichnis und jeden Patch, der berührt. Wenn Ihr Agent-Workflow kein Git Diff gegen erzeugt, ersetzen Sie den Subprozess durch eine Berechtigungsprüfung: Der Verifizierungsauftrag wird als Benutzer ausgeführt, der nur Lesezugriff auf ein Scratch-Verzeichnis und nur Lese-Schreibzugriff auf ein Scratch-Verzeichnis hat. Frostflocken. Frieren Sie die Beziehungen nicht ein. Netzwerkanrufe, Clock Reads und ungeordnete Log Lines Flake. Idempotenz eines reinen Normalisators nicht. Eine Quarantänedatei ist nützlich. Es ist auch der einfachste Ort, um eine Regression zu verbergen, wenn Sie es auflisten lassen Beziehung Test-IDs. Vorgeschlagenes Schema: Loader-Regeln, vorgeschlagen und streng: Ein Einfrieren ohne Ablauf ist ein gelöschter Test. CI sollte eine abgelaufene Zeile als Fehltest behandeln, nicht als Überspringen. Öffnen Sie die Reihe erneut oder beheben Sie die Umgebung. Erweitern Sie sich nicht aus dem Agent Workspace. Numerierter Workflow Generierung und Verifizierung als zwei Jobs mit zwei Festplatten ausführen. Der Patch ist ein Kandidat. Die relation suite ist der richter. Verriegeln Sie das Orakel. Kopieren Sie von auf den Verifier. Markieren Sie es Read-only. Überprüfen Sie nicht den Worktree des Agenten darüber. Saatgut, nicht aufzeichnen. Fügen Sie die kleinsten CSV-Dateien hinzu, die Header, UTF-8, leere Beträge und zweireihige Permutation ausüben. Begehen Sie sie, bevor der Agent läuft. Generieren Sie den Patch aus dem Verifier. Richten Sie den Codierungsagenten auf eine Kasse, die eine Aufgabenaufforderung enthält, nicht . Tragen Sie den Patch auf einen Wegwerfbaum auf.

> 分享:
Baike.dev

baike.dev hilft dir, starke Sprachen, Frameworks, Datenbanken, DevOps- und Cloud-Native-Tools zu entdecken.

Schnellzugriff

Über uns

Mitmachen

Kennst du ein starkes Entwickler-Tool? Teile es.

Tool einreichen
© 2026 baike.dev Entwickler-EnzyklopädieTäglich aktualisiert · Entdecke starke Entwickler-Tools