Hata Taksonomisi
Bir Gateway çağrısı başarısız olduğunda, hatayı tekdüzen bir JSON zarfı olarak alırsın:
{ "error": { "code": "validation_error", "message": "Params violate the capability input schema.", "hint": "Call describe(id) and resend params matching input_schema.", "retryable": false, "audit_id": "audit_123" }}Hata Kodları
Bölüm başlığı “Hata Kodları”| Kod | Agent’lar için Anlamı |
|---|---|
validation_error | Girdi şemayla uyuşmuyor; describe oku ve düzelt |
auth_required | Bearer-Key eksik veya geçersiz |
scope_missing | Key gerekli Scope’a sahip değil |
not_found / version_not_found | ID veya versiyon kontrolü yap |
not_implemented | katalogda görünür ama invocable değil |
dry_run_required | önce aynı parametrelerle başarılı bir dry_run gönder |
precondition_failed | işlevsel ön koşul eksik, körü körüne tekrarlama |
conflict | hedef durum çakışıyor, yeniden oku ve karar ver |
rate_limited | retry_after_seconds değerine dikkat et |
budget_exceeded | Wallet, Budget veya Policy’yi netleştir |
capability_disabled | Kill-Switch veya Capability kilidi aktif |
approval_required / approval_rejected | Handover veya insan kararı gerekli |
upstream_error | harici/bağlı servis düzgün yanıt vermedi |
internal_error | sonra tekrar dene; tekrarlanırsa Audit-ID’yi destek ekibine ver |
Tepki Kuralı
Bölüm başlığı “Tepki Kuralı”retryable: true “hemen spam yap” anlamına gelmez. Backoff ile, aynı Idempotency-Key ve aynı niyetle tekrarla. retryable: false durumunda önce nedeni değiştir veya bir insana aktar.
Onboarding’de HTTP 412
Bölüm başlığı “Onboarding’de HTTP 412”İlk akışta HTTP 412 precondition_failed işlevsel bir ön koşul hâlâ eksikse beklenen davranıştır.
| Endpoint | 412’nin Beklendiği Durum | Tepki |
|---|---|---|
GET /org/current | Owner-Claim öncesi veya agent_email ayarlanmışsa Agent-Mail doğrulaması öncesi | eksik OTP adımını tamamla, sonra durum okuma olarak yeniden kullan |
POST /keys/rotate | Owner-Claim öncesi veya gerekli Agent-Mail doğrulaması öncesi | ilk akışı tamamla; kaybedilen Key’i yeni Bootstrap ile değiştirme |
POST /mcp/dry_run | gerekli OTP’ler öncesi veya Operator-Approval öncesi | /org/current operator_approval_status olana kadar approved yokla |
POST /mcp/invoke | gerekli OTP’ler öncesi veya Operator-Approval öncesi | operasyonel çalışma; yoklama veya handover kuralı uygula |
Tepki: Owner-Code’u bekle, POST /owner-otp/claim çağrısı yap ve agent_email ayarlanmışsa ek olarak POST /agent-otp/verify doğrulaması yap. Ardından /org/current çağrısını durum okuma olarak tekrarla. operator_approval_status uzun süre pending kalırsa Sorun Giderme bölümünü takip et.