Vier Ebenen eines Integrationsvertrags
Ein belastbarer Vertrag besteht nicht nur aus Funktionsnamen. Er verbindet die API-Oberfläche mit Datenformaten, erlaubten Lifecycle-Zuständen und stabilen Fehlerklassen. Dadurch kann eine Anwendung eine unbekannte oder nicht freigegebene Kombination ausdrücklich ablehnen.
- API/SDK: aufrufbare Oberfläche und Version.
- Daten/Profile: erwartete Eingaben und begrenzte Formate.
- Lifecycle: erlaubte Zustandsübergänge und Ownership.
- Fehler: stabile Ablehnungs- und Wiederholungssemantik.
Capability Negotiation statt impliziter Kompatibilität
Wenn ein Host explizit nach einer Capability fragt, kann die Produktgrenze eine nicht bekannte oder nicht unterstützte Fähigkeit als eigenen Zustand behandeln. Das ist für langfristige OEM-Integrationen besser nachvollziehbar als ein stiller Fallback auf vermeintlich ähnliche Funktionen.