· kaynak dev.to (home feed)
Claude Fable 5.1 düzenlenmiş konuşma geçmişini reddediyor, agent harness'lerini bozuyor
Claude Fable 5.1, thinking block imzaları artık eşleşmediğinde düzenlenmiş konuşma geçmişini 400 hatasıyla reddeden ilk Claude modeli. Agent harness'lerinin yalnızca-ekleme (append-only) tasarımlarına geçmesi ya da drop_block kaçış kapısını kullanması gerekiyor.

Tam adresli yeni bir 400 hatası
Agent harness'lerini Claude Fable 5.1'e taşıyan geliştiriciler, bir thinking block'unun "farklı bir konuşmaya bağlı" olduğunu belirten 400 invalid_request_error hatasıyla karşılaşmaya başladı. dev.to'da yayımlanan üç rehbere göre hata, model herhangi bir çıktı üretmeden önce oluşuyor ve aynı istek gövdesinin yeniden gönderilmesi de aynı şekilde başarısız oluyor. messages.5.content.0 gibi hata yolu, artık eşleşmeyen ilk thinking block'a işaret ediyor; hata mesajı, değiştirilen ilk mesajı da adlandırabiliyor — rehberler bunu en faydalı tanı ipucu olarak nitelendiriyor. Token sayım endpoint'i de aynı doğrulamayı çalıştırıyor.
Kök neden yeni bir zorunluluk: Fable 5.1, istekler arasında konuşma geçmişini düzenleme alışkanlığını reddeden ilk Claude modeli.
İmza bağlama nasıl çalışıyor
Her thinking block, onu üreten modeli, önce gelen konuşma ön ekini (üst düzey system prompt, tools dizisi ve daha önceki her mesaj) ve önceki thinking block'a giden zinciri kaydeden bir imza taşıyor. Transkript yeniden gönderildiğinde, API bu ön eki orijinaliyle bayt bayt karşılaştırıyor.
Anthropic'in açıkladığı gerekçe anti-distillation: yeni API hesapları artık Claude'nun thinking transkriptlerini çok turlu bir konuşma boyunca bozmadan önceki bağlamı elle düzenleyemiyor. dev.to rehberleri ikinci, pratik bir gerekçe daha ekliyor: kontrolü bozan aynı düzenlemeler prompt cache'i de yeniden başlatıyor. Rehberlerden biri, cache'lenmiş okumaların milyonda yaklaşık 0,25 dolara mal olduğunu belirtiyor; yani kontrolü geçemeyen kod her turda en ucuz okumalardan da vazgeçiyor.
Kimler etkileniyor
Kontrol, 31 Ağustos 2026 tarihinde veya sonrasında oluşturulan hesaplar için varsayılan olarak zorunlu; Claude API organizasyonları, Amazon Bedrock, Google Cloud ve Microsoft Foundry genelinde geçerli. Bu tarihten önce oluşturulan hesaplarda uyuşmazlıklar yalnızca loglanıyor ve yalnızca isteğin kendisi thinking.block_binding.prefix_mismatch_behavior değerini ("error" dahil) ayarlarsa reddediliyor. Anthropic, gelecekteki modellerin kontrolü tüm hesaplar için zorunlu kılacağını söyledi.
Claude Code, claude.ai, Claude Managed Agents ve Claude Agent SDK etkilenmiyor, çünkü bu yüzeyler ön eki bozulmamış tutuyor. Claude Mythos 5.1 kontrolü çalıştırmıyor, ancak geçmiş düzenlemeleri yine de cache'i sıfırlıyor. Risk altında olanlar, messages dizisini elle oluşturan her türlü kod: özel agent döngüleri, sohbet arka uçları ve Messages API'yi sarmalayan framework'ler. Rehberler, kullanıcıların kendi API anahtarlarıyla çalışan araçların satıcılarını uyarıyor: satıcının hesabı tarihten önce oluşturulmuş olabilir, ama kullanıcıların daha yeni hesapları halihazırda zorunluluğa tabi.
Bağlamayı ne bozar
Block'lar şu durumlarla geçersizleşiyor: eski turları (eski tool sonuçlarının silinmesi dahil) düzenlemek, yeniden sıralamak veya kaldırmak; bir transkripttin ortasından tur kesmek; yalnızca son turları birebir koruyan istemci tarafı özetleme; ve tur bazlı hatırlatmalar, durum satırları veya sürekli değişen kalan token sayısı gibi bir sonraki istekte kaldırılan geçici içerik eklemek. system prompt'u veya tools'u istekler arasında yeniden oluşturmak da bağlamayı bozuyor; örneğin prompt'taki güncel tarihi güncellemek veya oturum ortasında bir tool eklemek. Daha sonra farklı baytlar sunan bir görsel ya da belge URL'si göndermek de başarısız oluyor, çünkü imza URL dizesine değil içerik baytlarına bağlı. Thinking block'lar yalnızca çalıştırmanın başından, en eskiden başlayarak kaldırılabilir; ortadan birini kaldırmak sonrasındaki her şeyi geçersiz kılar.
Geçerli kalan desenler ise şunlar: yalnızca-ekleme geçmişi, eski prompt'u düzenlemek yerine yeni "system" rolünde mesajlar eklemek, süresi dolan tur kapsamlı system mesajlarını yerinde bırakmak, system, tools ve messages dışındaki parametreleri değiştirmek (max_tokens, output_config, tool_choice, metadata), cache_control işaretçilerini taşımak veya kaldırmak, sunucu tarafı sıkıştırma veya bağlam düzenleme. Kontrol, konuşmayı istemci gönderdiği haliyle, sunucu tarafı düzenlemelerden önce doğruluyor.
drop_block kaçış kapısı
İstekler, anthropic-beta başlığında thinking-binding-controls-2026-08-01 değeriyle opt-in olabilir ve prefix_mismatch_behavior değerini "drop_block" olarak ayarlayabilir. API bu durumda ilk uyuşmayan block'u ve sonrasındaki tüm thinking block'ları düşürür, isteği sürdürür ve her düşürmeyi üst düzey input_transformations dizisinde bildirir. reason alanı, geçmişin değiştiğini belirten prefix_binding_mismatch ile, yönlendirme, yeniden deneme veya fallback yoluyla konuşmanın model değiştirdiğini belirten model_binding_mismatch'ı ayırt eder; rehberlere göre ikincisi mutlaka geçmiş işleme kodundaki bir hata değildir.
Ayar yalnızca geçerli isteğe uygulanır ve oturumun geri kalanı için yeniden gönderilmelidir. Beta başlığı olmadan block_binding göndermek "Extra inputs are not permitted" hatası döndürür. Bir platform henüz bu kontrolleri sunmuyorsa, son çare olarak geçmişten tüm thinking ve redacted_thinking block'ları kaldırılıp metin ve tool_use block'ları korunarak bir kez yeniden denenebilir; rehberler bu kurtarma yöntemini bir tasarım değil, tek seferlik bir çözüm olarak nitelendiriyor.
Neden önemli
Bu, Fable 5.1'deki üç breaking değişiklikten biri ve dev.to rehberlerine göre bir harness'i sessizce bozabilecek tek olanı: eski hesaplarda uyuşmazlık yalnızca loglanıyor, dolayısıyla hatalar daha sonra, zorunluluk genişlediğinde ya da bir kullanıcının daha yeni hesabı başarısız olmaya başladığında ortaya çıkıyor. Geçmişi her istekte geçersiz kılan harness'ler her turda modelin akıl yürütmesini kaybediyor ve prompt cache'i her turda yeniden başlatıyor; Anthropic bunun görev maliyetini artırdığı konusunda uyarıyor. Pratik değişim yapısal: yalnızca-ekleme geçmişler, daha az enjekte edilen geçici hatırlatma ve drop_block'un kalıcı bir durum olarak değil, yalnızca bir tanı aracı ve sıkıştırma sınırlarında bir güvenlik ağı olarak bilinçli kullanımı.
- #anthropic
- #claude
- #api
- #ai-agents
- #prompt-caching
İlgili yazılar
- Anthropic'ın kendi status page'ine göre Claude yaklaşık 24 günde 20 olay kaydetti
- Claude agentları Fermat'nın Son Teoremi'nin ilk bilgisayarla doğrulanmış Lean ispatını üretti
- OpenAI, agent sürüsünün Almanca wiki'yi ele geçirmesinin ardından yapay zeka olay bildirimi süreçlerini köklü şekilde değiştirecek