Die Arbeit verstehen05 / 20
Nachweise prüfen
Auf dieser Seite
Dass ein Agent „umgesetzt“ sagt, reicht nicht. Jede Erläuterung kommt mit ihren Nachweisen: dem Code, den er gelesen hat, den Tests, die er ausgeführt hat, Laufprotokollen und Screenshots, mit einem Klick nachprüfbar. Wenn jemand nachfragt, kannst du auf die genaue Stelle zeigen.
Was ein Nachweis enthält
Öffne „Nachweis“ in der Notiz. Üblich sind diese Arten von Material:
| Material | Dargestellt als | Beim Anklicken |
|---|---|---|
| Eine Codestelle | Ein Funktionsname oder ein Chip „Datei:Zeile“ | Rechts öffnet sich das Code-Panel bei diesen Zeilen |
| Befehlsausgabe, etwa ein Testlauf | Ein Chip | Die vollständige Ausgabe öffnet sich in der Nebenleiste rechts |
| Ein Code-Diff | Ein Chip | Öffnet sich in der Nebenleiste rechts |
| Screenshots und andere Bilder | Eine Vorschaubild | Öffnet sich vergrößert |
Befehlsausgaben, Diffs und Screenshots stammen aus den Aufzeichnungen, die der Agent bei der Umsetzung hinterlassen hat. Noea hält für jede Runde fest, welche Befehle er ausgeführt und welche Screenshots er gemacht hat, sodass eine Erläuterung sie direkt zitieren kann.
Eine Codestelle ansehen
Eine Codestelle mitten im Satz erscheint meist als Name einer Funktion oder Variablen, etwa openGrace; sonst erscheint sie als Chip „Datei:Zeile“, etwa grace.ts:6-18. Zitiert eine Erläuterung zwei Dateien mit gleichem Namen, ergänzt der Chip den übergeordneten Ordner.
Lass den Zeiger auf einem Namen oder Chip ruhen, um den vollständigen Pfad, den Zeilenbereich und das Symbol zu sehen. Klicke darauf, und rechts öffnet sich das Code-Panel für diese Datei bei den zitierten Zeilen. Ist die Datei noch so, wie eine Umsetzungsrunde sie hinterlassen hat, werden die Änderungen dieser Runde über die ganze Datei gelegt, sodass du siehst, welche Runde sie geschrieben hat. Über das Kontextmenü (Rechtsklick) kannst du die Datei im Standardprogramm öffnen, im Finder anzeigen oder ihren Pfad kopieren.
Ist der Code seitdem verschoben worden, folgen die Zeilennummern des Chips und das Ziel seiner aktuellen Position. Hat sich der zitierte Code geändert und nur sein Name ist noch zu finden, wird der Chip abgedunkelt; ist die Datei weg oder der Code nicht mehr zu finden, wird der Chip abgedunkelt und durchgestrichen, und beim Darüberfahren steht der Grund. In beiden Fällen muss die Erläuterung höchstwahrscheinlich erneut untersucht werden.
Wie weit ein Nachweis reicht
Wenn du dir ein Material ansiehst, erkenne zuerst, welcher Art es ist:
| Material | Was es bestätigen kann | Was du beachten solltest |
|---|---|---|
| Umsetzungs- oder Testcode | Welche Logik der Code nutzt und welche Fälle die Tests festlegen | Dass Testcode existiert, heißt nicht, dass die Tests liefen oder bestanden haben |
| Frühere Laufergebnisse | Was damals lief und was damals das Ergebnis war | Hat sich der Code seitdem geändert, gilt das Ergebnis vielleicht nicht mehr |
| Verifizierung während dieser Erläuterung | Das Ergebnis in Umgebung und Umfang dieses Laufs | Bestandene Fälle sagen nichts über nicht abgedeckte Fälle |
Erläutern und Untersuchung stützen sich vor allem auf das Lesen von Code und vorhandenem Material; sie führen Tests, Builds oder die App nicht jedes Mal neu aus. Der Agent verifiziert etwas nur, wenn das Lesen des Codes eine Tatsache nicht klärt, von der das Ergebnis abhängt. Ein guter Nachweis sagt, was er nicht verifiziert hat, etwa: „Nicht gegen den echten Zahlungsdienstleister ausgeführt; die Abbuchungsergebnisse stammen aus einem Test-Double.“ Ist der Nachweis dünn, wurde keine Umsetzung gefunden oder ist der Intent mehrdeutig, sollten Nachweis und Hinweise das offen sagen, statt ein Ergebnis zu liefern, das nur sicher aussieht.
Bedenke auch, dass eine Erläuterung ein Untersuchungsprotokoll mit Nachweisen ist, kein Zertifikat. Dass ein Agent die Umsetzung eines anderen Agents prüft, macht das Ergebnis für sich genommen nicht sicherer. Der Wert eines Nachweises liegt darin, dass du ihn öffnen und prüfen kannst, nicht darin, dass die Erläuterung „bestätigt“ sagt.
Screenshots und die Oberfläche
Manches Verhalten lässt sich nicht allein am Code klären, etwa ob ein Hinweis in der Oberfläche wirklich erscheint. Hat der Agent bei der Umsetzung einen Screenshot gemacht, kann die Erläuterung ihn als Nachweis aufführen, zum Beispiel: „Während der Schonfrist erscheint oben auf der Team-Einstellungsseite ein Hinweis.“
Klicke auf das Vorschaubild, um es zu vergrößern. Achte darauf, welche Seite in welchem Zustand es zeigt und welcher Lauf es hinterlassen hat: Ein Screenshot belegt, wie die Oberfläche damals aussah; hat sich der Code seitdem geändert, kann sich auch die Oberfläche geändert haben.
Punkt für Punkt prüfen
Wenn du Nachweise prüfst, frag bei jedem Eintrag:
- Zeigt dieser Verweis auf das, worum es in diesem Teil des Intents geht?
- Welche Fälle decken die Tests ab, und sind die Randfälle dabei?
- Stützt das Ergebnis die Schlussfolgerung der Erläuterung wirklich?
- Sagt der Nachweis, was nicht verifiziert wurde?
Zum Beispiel sagt der Nachweis zur Schonfrist „Tests der Schonfrist ausgeführt: alle 6 bestehen“, während die Hinweise festhalten, dass „kein Test den Fall abdeckt, dass der dritte Versuch gelingt“. Jetzt weißt du, dass dieser Pfad allein auf dem Lesen des Codes beruht, ohne einen Lauf, der ihn belegt.
Wenn der Nachweis nicht reicht
Fehlt ein wichtiger Fall, fahre mit dem Zeiger über den Absatz, klicke links davon auf „Hierzu fragen“ und bitte den Agent, ihn zu verifizieren:
Ergänze einen Test: Der dritte Versuch gelingt an Tag 6 der Schonfrist, das Abo kehrt in den Normalzustand zurück und wird nicht herabgestuft. Sag mir das Ergebnis, wenn er gelaufen ist.
Wenn der Agent fertig ist, erläutert Noea die Runde von selbst; hast du das abgeschaltet, klicke links vom Absatz auf „Untersuchung“. Die neue Erläuterung führt diesen Lauf als Nachweis auf.
Passt die Schlussfolgerung einer Erläuterung nicht zu ihrem Nachweis oder glaubst du, der Agent habe deinen Intent falsch gelesen, frag auch das hier, und ändere deinen Intent nicht, um ihn dem Code anzupassen. Siehe Das Vereinbarte in den Intent schreiben.