Zum Inhalt springen

Vertrag02 von 04

Welche Felder beschreibt eine Handlung?

Handlung: Eingabe und Wirkung

Thema
FORGE
Lesezeit
1 Min.
Erstfassung
Stand
Bauplan
Auf dieser Seite
  1. 01Ein geplanter Vertrag, kein erreichbarer Endpunkt
  2. 02Vorbedingungen gehören zum Vertrag
  3. 03Wiederholen ist keine neue Erlaubnis
  4. 04Ergebnis und Ungewissheit protokollieren
  5. 05Schema
  6. 06Felder
  7. 07Fehlerfälle
  8. 08Grenze und Regel
  9. 09Verwandte Seiten

Eine Handlung beschreibt eine beabsichtigte Zustandsänderung mit begrenzter Eingabe, Wirkung und Zuständigkeit. Der geplante Vertrag macht sichtbar, was geprüft werden muss, bevor ein Werkzeug etwas verändert.

Ein geplanter Vertrag, kein erreichbarer Endpunkt

Die Felder beschreiben eine prüfbare Entwurfsrichtung. Es gibt hier keinen zugesagten HTTP-Endpunkt, keine SDK-Methode und keine Kompatibilitätsgarantie. Vor einer Implementierung müssen Authentifizierung, Grenzwerte, Serialisierung und Fehlertransport festgelegt und getestet werden.

Vorbedingungen gehören zum Vertrag

Ein erfolgreicher Lesezugriff erlaubt keine Änderung. Die Handlung braucht eigene Rechte, einen bekannten Zielzustand und eine ausdrücklich begrenzte Wirkung. Eine Regelprüfung arbeitet auf dem aktuellen Zustand und nicht allein auf dem früheren Vorschlag des Agenten.

Wiederholen ist keine neue Erlaubnis

Begriff · Idempotenz

Wiederholte Zustellung derselben Absicht erzeugt keine zusätzliche Wirkung. Sie ersetzt keine Berechtigung und keine Freigabe.

Handlungen als Verträge beschreiben

Idempotenz bedeutet, dass die Wiederholung derselben Absicht keine zusätzliche Wirkung erzeugen soll. Sie ersetzt keine Autorisierung. Eine andere Eingabe unter derselben Kennung ist ein Konflikt. Nach einem Zeitüberschreitungsfehler ist zuerst das Zielsystem zu prüfen.

Ergebnis und Ungewissheit protokollieren

Eine gesendete Anfrage ist noch kein bestätigter Erfolg. Das Ergebnis braucht die Antwort des Zielsystems und, wenn möglich, den beobachteten Folgezustand. Ist die Wirkung ungewiss, wird sie als ungewiss geführt. Ein neuer Versuch ohne Abgleich kann eine doppelte Buchung verursachen.

Schema

{
  "id": "<handlung-kennung>",
  "actionType": "<objekttyp>.<operation>.v1",
  "targetId": "<objekt-kennung>",
  "expectedVersion": <version>,
  "input": {
    "<eigenschaft>": "<neuer-wert>"
  },
  "actorRef": "<identitaet>",
  "idempotencyKey": "<wiederholungsschluessel>",
  "approvalRef": "<freigabe-kennung>",
  "deadline": "<zeitpunkt>"
}
Schema 1JSON · Schema mit Platzhaltern

Felder

FeldTypPflichtBedeutung
idstringjaKennung des Handlungsversuchs.
actionTypestringjaVersionierter Name einer erlaubten Operation.
targetIdstringjaKennung des betroffenen Objekts.
expectedVersionintegerjaRevision, gegen die vorbereitet wurde.
inputobjectjaTypisierte Eingabe ohne zusätzliche unbekannte Felder.
actorRefstringjaIdentität, in deren Kontext die Handlung ausgeführt werden soll.
idempotencyKeystringjaBindet wiederholte Zustellung an dieselbe beabsichtigte Wirkung.
approvalRefstring | nulljaFreigabereferenz, falls die geltende Regel eine Freigabe verlangt.
deadlinestring (date-time)jaZeitgrenze. Abgelaufene Versuche dürfen nicht nachträglich wirken.

Fehlerfälle

KennungBedeutung
ACTION_NOT_ALLOWEDDie Operation ist für diesen Kontext nicht erlaubt.
PRECONDITION_FAILEDZustand oder erwartete Revision haben sich verändert.
APPROVAL_REQUIREDEine passende Freigabe fehlt.
EFFECT_UNCERTAINDer Zielaufruf wurde unterbrochen; die Wirkung muss vor einem erneuten Versuch abgeglichen werden.

Grenze

Grenze
Dieser Schnittstellenvertrag ist geplant. Ein lokaler Kontrollprototyp belegt weder eine veröffentlichte API noch organisationsweiten Betrieb.

Verwandte Seiten