Kanonische Interaktion
Eine normale Frage-Antwort-Interaktion verwendet session_id für Gespräch oder Lauf und correlation_id für den einzelnen Turn. Der Inhalt bleibt im eigenen System und wird dort fingerprintet.
| Sequenz | Ereignis | Erwarteter Nachweis |
|---|---|---|
| 1 | interaction.started | input_hash |
| 2 | model.response.completed / failed | input_hash, output_hash, Dauer |
| 3 | output.delivered / blocked | output_hash, optional Reason Code |
| 4 | interaction.completed / failed | Input-/Output-Hash, Gesamtdauer |
1. Webhook
Der Webhook ist der direkte Weg für Backends, No-Code-Workflows, Chatbots, Voice-Systeme und lokale Modelle. Die geheime URL gehört ausschließlich in die serverseitige Konfiguration.
POST https://azalee.garden/api/webhook?token=wh_…
Content-Type: application/json
{
"event": {
"event_type": "interaction.started",
"status": "started",
"sequence": 1,
"session_id": "sess_42",
"correlation_id": "turn_9",
"input_hash": "sha-256:<local-hash>",
"model_name": "configured-model",
"prompt_version": "support-v3"
},
"metadata": { "source": "customer_backend", "storage": "hash_only" }
}
Nicht senden: Rohfragen, Modellantworten, Transkripte, Dateien, Tool-Argumente, Tool-Ergebnisse, E-Mail-Adressen, Kundendatensätze, Passwörter, API-Schlüssel, Tokens oder Secrets.
2. Lokaler Helper und SDK
Node.js- und Python-Helfer können Input und Output lokal fingerprinten, die Lifecycle-Events senden und die Session-Kette fortführen. Tool-Handler werden über Wrapper instrumentiert. Zustellung ist fail-open.
const answer = await audit.interaction(
userMessage,
() => runModel(userMessage),
{ sessionId: conversationId, correlationId: turnId }
);
3. Policy, Risiko und Human Approval
tool.call.started/completed/failed/blockedhuman.approval.requested/granted/rejectedundhuman.overridepolicy.checked/allowed/blocked/escalatedundrisk.detectedmodel.changed,prompt_template.changedundconfig.changedtransparency.notice.shownfür den technischen Nachweis eines KI-Hinweises
4. A2A Enrollment
Ein Agent startet den maschinenlesbaren Flow, veröffentlicht eine signierte Host-Challenge und wartet anschließend auf die Freigabe des genau gebundenen menschlichen Owners. Aktive Zugangsdaten entstehen erst nach erfolgreicher Host-Prüfung und Human Approval.
Aussagegrenze
Azalee bestätigt die jeweilige technische Fingerprint-, Reihenfolge-, Inclusion- oder Zeitnachweisfrage. Das ist keine automatische Bestätigung der Wahrheit, Rechtmäßigkeit oder Vollständigkeit aller realen Systemaktionen.