2026-08-01T15:00:39.931Z
AI-Agent Beobachtbarkeit: Beweis, dass keine akzeptierte Arbeit verschwunden ist
Eine Versöhnung in sechs Szenarien erkennt verschwundene Arbeiten, widersprüchliche Zustände, verfallene Mietverträge und Phantom-Ergebnisse, die die Gesamtzählungen verpassen.
Eine Agenten Warteschlange kann die erwartete Tiefe melden, die Arbeiter können weiterhin Spannungen ausstrahlen und die Abzählungen der abgeschlossenen Arbeiten können weiter steigen, während ein akzeptierter Job verschwunden ist. Die praktische Antwort lautet, die Gesamtzahl nicht mehr zu vergleichen und Identitäten zu vereinbaren. Bei einem begrenzten Abschnittszeitpunkt werden alle akzeptierten work id aufgezeichnet und verlangt, dass sie genau einen Stromkalk besetzen: Die ⊎ ist wichtig: Dies ist eine unvereinigte Vereinigung, nicht eine gewöhnliche Zusammensetzung. Eine ID, die in zwei Eimer gefunden wurde, ist ein Widerspruch. Eine anerkannte Ausweise fehlt. Eine endgültige oder aktive ID, die nie akzeptiert wurde, ist ein Phantom. Diese Arbeitsbewahrungsprüfung verspricht zwar keine exakt einmalige Ausführung, kann aber eine schmalere und nützliche Tatsache bezeugen: Die Kontroll Ebene Beweise berichten genau einmal über jede akzeptierte Arbeitsleistung. Gleiche Gesamtsätze können einen fehlenden Job verbergen Nehmen wir an, das Akzeptanzbuch enthält 1.000 Ausweise. Die Warteschlange, die Miettabelle und das Terminalbuch enthalten insgesamt 1.000 Aufzeichnungen. Ein Count basiertes Dashboard wird grün. Diese Arithmetik erlaubt eine schlechte Substitution: der akzeptierte work 417 ist nicht vorhanden, während das Endbuch ghost 92 erschien. Die Zahlen stimmen noch. Identitätssätze nicht. Definition des Nachweises bei t0 : A : Identifikationen, die nachhaltig als bei oder vor t0 anerkannt werden; Q : akzeptierte IDs, die in der Schnitt Snapshot in der Schlange sichtbar sind; L : akzeptierte Ausweisungen mit einem Mietvertrag, dessen Ablauf später als t0 ist; T : akzeptierte Ausweisungen mit einem anerkannten Terminalsystem. Dann überprüfen Sie beide Richtungen: Das Terminalsatz benötigt eine explizite Richtlinie. completed ist endgültig. cancelled kann endgültig sein, wenn die Stornierung genehmigt und dauerhaft ist. dead lettered kann auch zum Schutzszweck endgültig sein, obwohl es ein fehlerhaftes Ergebnis ist, das immer noch Aufmerksamkeit benötigt. Eine "dead letter row" ist genau deshalb nützlich, weil sie Arbeiten isoliert, die nicht erfolgreich zur Diagnose verarbeitet wurden, und möglicherweise wiederhergestellt werden, wie die Amazon SQS Dokumentation für die Warteschlange mit totem Buchstaben erklärt. Behandeln Sie leased nicht als zeitlosen Zustand. In SQS löscht der Empfang einer Nachricht sie nicht; die Nachricht wird vorübergehend unsichtbar und sollte wieder sichtbar werden, wenn sie nicht vor Ablauf der Sichtbarkeitsfrist gelöscht wird. Standard Schlange verwenden auch mindestens einmal Lieferung, so dass ein Sichtfenster ist nicht genau ein einziges Schloss. Diese dokumentierten Sichtbarkeits Timeout Semantik sind der Grund, warum die Invariante valid lease verwendet, nicht jede je geschriebene Leasingzeile. Führen Sie die Versöhnung von sechs Szenarien durch Die Begleitregelung macht die Entscheidungsregel überprüfbar, ohne einen Makler zu benötigen. Es enthält sechs Momentaufnahmen auf 2026 07 27T00:00:00Z : Szenario Beweise Das erwartete Urteil Gemischte Stromzustände Eine Warteschlange, eine nicht abgelaufene Miete, eine abgeschlossen CONSERVED Nach der Annahme verschwunden. Akzeptierte ID in keinem aktuellen Eimer MISSING In der Schlange und ausgefüllt Die gleiche ID in zwei Eimer DUPLICATE STATE Vermietung abgelaufen Vermietung war vor dem Abbau abgeschlossen, keine Rückgabe nachweislich. EXPIRED LEASE Phantom Terminal Unbekannter ausgefüllter ID ausgleicht die Anzahl PHANTOM Ausdrückliche Stornierung Akzeptierte ID hat eine dauerhafte Stornierung CONSERVED Laden Sie work conservation fixture.json und audit work conservation.mjs aus dem Artikel Beweisbundel herunter oder reproduzieren Sie ihre Felder in einem lokalen Verzeichnis und führen Sie dann aus: Die genauen Zahlen waren: PASS bedeutet, dass der Prüfer alle sechs Geräte wie erwartet eingestuft hat; dies bedeutet nicht, dass jedes Gerät gesund war. Vier bewusst ungesunde Fälle wurden entdeckt. Der Phantomfall ist die wichtige Falle. Es hat eine akzeptierte ID und zwei beobachtete Aufzeichnungen: Die eigentliche ID bleibt in der Warteschlange, während eine unbekannte ID die Vollendung beansprucht. Eine naive Gleichheitsprüfung kann durch Auswahl eines Aggregats aus jedem Teilsystem ausgeglichen aussehen lassen. Set Vergleich meldet stattdessen die nicht akzeptierte Terminal ID. Der Fall des Doppelzustandes zeigt das umgekehrte Problem: Jede ID ist bekannt, doch das gleiche Werk erscheint bereit für einen weiteren Versuch und bereits abgeschlossen. Dies ist auch der Grund, warum Nachrichtenspuren allein nicht ausreichen. Die OpenTelemetry Messaging Konventionen unterscheiden Empfang, Verarbeitung und Abwicklung und beschreiben den Schaffungskontext für die Korrelation von Erzeugern mit Verbrauchern. Dieser Kontext ist ein wertvoller Beweis. Eine Prozessdauer stellt jedoch nicht allein den aktuellen Warteschlangezustand oder ein dauerhaftes Endgerät fest. Nehmen Sie einen kohärenten Schnitt des Lebenszyklus Die Invariante wird irreführend, wenn ihre Eingabe verschiedene Momente beschreiben. Stellen Sie sich vor, Sie lesen das Akzeptanzbuch um 12:00 Uhr, die Warteschlange um 12:03 Uhr und die Endgebnisse um 12:08 Uhr. Ein Job kann sich legitim zwischen diesen Lesungen bewegen und fehlen oder dupliziert erscheinen. Verwenden Sie den stärksten Konsistenzmechanismus, den Ihr Stapel unterstützt: 1. eine unveränderliche, namensräumlich qualifizierte work id zuweisen, bevor die Annahme bestätigt wird; 2. die Akzeptanz auf Dauer in derselben Transaktion wie die Eintragung schreiben oder eine wiederherstellbare Outbox Beziehung aufbewahren; 3. Aufnahme der Warteschlange und des Leasingzustands bei einem benannten Wasserzeichen, einem Offset, einem Datenbank Snapshot oder einer kurzen Beobachtungsbarriere; 4. lease expires at , nicht nur leased=true ; 5. die Endgebnisse mit demselben work id , einer Endart und einem dauerhaften Zeitstempel, hinzufügen; 6. nur Aufzeichnungen, deren Sichtbarkeitsregeln sie auf derselben Seite von t0 befinden, miteinander vereinbaren. Wenn die Systeme keinen kohärenten Schnitt liefern können, geben Sie UNVERIFIABLE zurück, anstatt ein gesundes Ergebnis zu erfinden. Eine kurze Ruhezeit kann den Schub reduzieren, ist aber kein Ersatz für einen Konsistenzvertrag. Dokumentation der maximalen Snapshot Verschiebung und Verzögerung einer Warnung, bis ein Arbeitspunkt über diese Grenze hinaus anomaliert ist. Stabile Ausweise sind ebenso wichtig. Ein erneuter Versuch sollte normalerweise die logische work id behalten und eine separate attempt id erhalten. Wenn jeder Versuch eine neue Arbeitsidentität erhält, kann die Prüfung einen erneuten Versuch von einer neuen Arbeit nicht unterscheiden. Wenn die Personalausweise über Mieter oder Warteschlangen hinweg wiederverwendet wird, kann ein legitimer Terminalsatz wie ein Phantom aussehen oder einen anderen Job falsch erfüllen. Ein verfallener Mietvertrag verdient ein eigenes Urteil. Es könnte bereits im Makler wieder sichtbar sein, aber eine alte Leasinglinie kann diesen Übergang nicht beweisen. Sie benötigen frische Schlange Beweise oder eine neue Leasinggeneration, bevor sie aktiv genannt wird. Dies hält waiting getrennt von stuck: ein gültiger Mietvertrag kann Arbeit darstellen; Schlangearbeit kann legitimes Warten darstellen; ein abgelaufener Mietvertrag ohne beobachtete Rendite ist ungelöst. Verzeichnen Sie jedes Urteil auf eine begrenzte Antwort Die Prüfung sollte eine Untersuchung vorbereiten, nicht eine breite Wiederholung einleiten. Bei MISSING überprüfen Sie zunächst die Snapshot Schew und überprüfen Sie dann die Grenze zwischen Akzeptanz und Abfrage sowie alle Transaktions Outboxen. Beweise behalten, bevor Sie es erneut versuchen. Die Wiederherstellung von Arbeiten aus unvollständigen Aufzeichnungen kann einen äußeren Effekt verfälschen. Für DUPLICATE STATE muss die automatische Abholung für diese ID eingestellt werden, wenn die Warteschlange eine umkehrbare Aufbewahrung zulässt. Vergleichen Sie die endgültigen Beweise mit dem Effektbeleg, bevor Sie entscheiden, ob die in der Warteschlange befindliche Kopie veraltet ist. Ein Endkennzeichen allein kann falsch sein; ein noch sichtbares Warteschlangelement kann auch eine verspätete Replik sein. Für EXPIRED LEASE fragen Sie den Makler nach neuer Sichtbarkeit und überprüfen Sie die Arbeitergeneration. Eine begrenzte Wiedervermietung kann nur dann sicher sein, wenn der vorherige Inhaber eingeschlossen oder als tot bewiesen wurde. Die Bewahrungsprüfung erkennt den ungelösten Zustand; sie erlaubt keine Wiederherstellung. Überprüfen Sie für PHANTOM den Namensraum der ID, die Fehler bei der Einnahme und die Herkunft im Terminal Ledger. Löschen Sie die unbekannte Aufzeichnung nicht nur, um die Gleichung auszugleichen. Es könnte ein gültiges Werk von einem anderen Mieter, einer Warteschlange oder einem Beobachtungsfenster sein. Schließlich ist die Erhaltung nicht die Qualität des Ergebnisses. Ein completed Bericht kann immer noch auf ein fehlendes oder unrichtiges Lieferwert hinweisen. Folgen Sie diesem Lebenszyklus Test mit deterministischer Ergebnisprüfung, soweit möglich. Die beiden Prüfungen beantworten unterschiedliche Fragen: Ist jeder angenommenen Job berücksichtigt? und Hat der Job das gewünschte Ergebnis erzielt? Sidewisp befindet sich derzeit in einer privaten Vorschauphase. Produktionsagent Gesundheit Sammlung, Warteschlange Adapter und Laufzeit Erholung werden im Allgemeinen nicht versandt. Die Erhaltung der Arbeit ist ein Beispiel für die Beweise, die eine zukünftige Gesundheitsschicht bewerten könnte; es ist keine Behauptung, dass Sidewisp diese Aufzeichnungen derzeit sammelt oder auf lebende Wirkstoffe wirkt. Der nützliche kurzfristige Schritt besteht darin, die stabilen Arbeits IDs zu instrumenten und die Invariante vor Ort zu testen, bevor automatische Reaktionen hinzugefügt werden.