· kaynak Vercel blog
Vercel'in Workflow SDK 5'i, dayanıklı JavaScript workflow'ları için run başına şifreleme ve bölgesel yürütme getiriyor
Vercel, Workflow SDK 5'i yayınladı; dayanıklı asenkron JavaScript workflow runtime'ına AES-256-GCM payload şifrelemesi, bölge başına run yürütme ve yeniden tasarlanmış bir trace görüntüleyici ekleniyor.

Vercel, Workflow SDK'nın 5. sürümünü yayınladı; bu runtime, sıradan asenkron JavaScript fonksiyonlarını çökmeler, dağıtımlar ve uzun bekleme süreleri boyunca çalışmaya devam ettiriyor. Güncelleme, şirkete göre artık üretim müşterilerinin talep ettiği üç alana odaklanıyor: payload güvenliği, bölgesel yürütme ve agent iş yükleri için performans.
Vercel'in duyurusuna göre SDK, piyasaya sürüldüğünden bu yana 700 milyon run'da 4 milyardan fazla adım işledi. Kullanım iki desende yerleşti: sipariş işleme, abonelik yönetimi ve veri hatları gibi geleneksel otomasyon ile dayanıklılık gerektirecek kadar uzun süreli ve pahalı olan AI agent'ları ve harness'ler.
Payload'lar uçtan uca şifreleniyor
Workflow olay günlüğü (event log), bir run'ın çökme veya dağıtım sonrasında kurtarılabilmesi için adım argümanlarını ve dönüş değerlerini kaydeder; ancak bu veriler müşteri bilgileri, model bağlamı, kimlik bilgileri ve araç çağrısı (tool-call) sonuçları içerebilir. v5'te SDK, her payload'ı geliştiricinin kodundan çıkmadan önce, her run için benzersiz bir anahtarla AES-256-GCM kullanarak şifreliyor. Vercel'e göre şifreleme etkinleştirildiğinde, kendi backend'i de dahil olmak üzere herhangi bir Workflow SDK backend'i yalnızca şifreli metni (ciphertext) görüyor ve saklıyor; düz metin, müşterinin dağıtımı içinde veya yetkili gözlemlenebilirlik araçlarında çözülüyor.
Vercel'in platformunda bu, kurulum veya kod değişikliği gerektirmiyor. Her run'ın anahtarı, run'ı oluşturan dağıtıma (deployment) kapsamlandırılmış bir anahtardan türetiliyor; böylece bir run yalnızca kendi verisinin şifresini çözebiliyor. İsimler, zamanlamalar ve durumlar gözlemlenebilirlik için görünür kalıyor ve payload'lar dashboard veya CLI üzerinden çözülebiliyor. Şifre çözme tarayıcıda veya terminalde gerçekleşiyor, projenin environment variable'larıyla aynı izinleri izliyor ve her istek ekibin denetim günlüğüne kaydediliyor.
Şifreleme platformda değil SDK'da yer aldığı için, kendi kendine barındırılan World'ler de bunu kullanabiliyor. Özel bir World, getEncryptionKeyForRun() fonksiyonunu uygulayarak bu özelliği etkinleştiriyor; bu fonksiyon, tekrar oynatmaların (replay) yine de şifre çözebilmesi için belirli bir run için her çağrıda aynı 32 baytlık anahtarı döndürüyor. Run'lar arası yazmalar da kapsanıyor: kod başka bir run'ın hook'unu sürdürdüğünde, başka bir dağıtımda run başlattığında veya yönlendirilmiş bir stream'e yazdığında, payload hedef run'ın açık anahtarıyla şifreleniyor. experimental_retention: 0 adlı bir saklama seçeneği, bir run tamamlandığında veya başarısız olduğunda girdileri, çıktıları ve stream içeriklerini hemen silerken run metadata'sını görünür tutuyor.
Yeniden tasarlanmış trace görüntüleyici ve run öznitelikleri
v5 trace görüntüleyici, geliştirme sırasında span arama, yakınlaştırma, bir minimap ve yerel inceleme ekliyor. Run öznitelikleri (attributes) bu sürümde yeni ve geliştiricilerin bir run'a sipariş numarası gibi aranabilir bir bağlam eklemesine ve ardından run'ları bu değerle bulmasına olanak tanıyor. Vercel, özniteliklerin düz metin olarak saklandığını ve gizli bilgi içermemesi gerektiğini belirtiyor.
Run'lar her bölgede yürütülüyor
SDK 4'te her run, projenin nereye dağıtıldığına bakılmaksızın Vercel'in iad1 bölgesinde yaşıyordu; bu yüzden başka bir yerde çalışan adımlar ilerlemelerini kaydetmek için bölgeler arası istekler yapıyordu. v5 için Vercel, Workflow altyapısını her Vercel Function bölgesine dağıttı. Artık her run'ın, durumunu, kuyruk dağıtımını ve stream'lerini kritik yolda (hot path) bölgeler arası gidiş-dönüşler olmadan sunan bir ana bölgesi (home region) var.
Varsayılan olarak bir run, onu başlatan fonksiyonun bölgesinde başlıyor; böylece çok bölgeli bir dağıtım, her run'ı tetikleyen kullanıcıya yakın tutuyor. start() üzerindeki bir region seçeneği bir run'ı başka bir yere yerleştirebiliyor; örneğin eriştiği veritabanının yanına veya bir müşterinin verisini belirli bir yetki alanında tutmak için. Mevcut v4 run'ları iad1'de kalıyor ve region seçeneği bir run'ın verisinin nerede yaşayacağını belirlerken adımlar uygulamanın dağıtıldığı her yerde yürütülüyor.
Güvenilirlik ve agent performansı
Vercel'e göre bölgesel izolasyon güvenilirliği de artırıyor: bir bölgedeki aksaklığın sağlıklı bölgelerdeki yeni run'ları durdurması gerekmiyor ve Vercel Function failover yapılandırılmış projeler, durum run'ın özgün ana bölgesine sabitlenmiş olarak göç ettirilmek yerine, adımları bir yedek bölgede yürütebiliyor. Şirket ayrıca runtime'daki düzinelerce nadir hata ve yarış koşulunu (race condition), anonimleştirilmiş telemetri ve müşterilerle yapılan çalışmalarla bulduğunu düzelttiğini ve artık platform veya runtime hatası nedeniyle başarısız olan veya takılan run'ları neredeyse hiç görmediğini söylüyor.
Performans konusunda Vercel, v4'ün her adım çağrısını iki kuyruk sıçraması üzerinden yönlendirdiğini kabul ediyor: biri adımı başlatmak, biri workflow'u sürdürmek için. Bu, yavaş arka plan otomasyonu için kabul edilebilir ama geliştiricilerin şu anda inşa ettiği AI iş yüklerine gecikme ekliyor; agent döngüleri ve harness'ler binlerce sıralı olay içerebiliyor. v5 performans çalışması doğrudan bu iş yüklerine yönelik.
Neden önemli
Dayanıklı yürütme (durable execution) büyük ölçüde özel orkestrasyon motorlarının alanı olageldi ve Vercel'in iddiası, bir "use workflow" direktifiyle sıradan asenkron JavaScript'in bunun için yeterli olduğu. Güvenlik değişikliği bu sürümün en önemli kısmı: adım girdilerini ve çıktılarını kalıcı hale getiren olay günlükleri, payload'lar kimlik bilgileri veya müşteri verisi taşıdığında gerçek bir risk oluşturuyor ve bunları run başına şifrelemek, platformun yalnızca şifreli metin saklamasıyla birlikte, barındırılan bir servis için güçlü bir varsayılan. Bölgesel yürütme hem gecikme hem de veri ikametgâhı (data-residency) yükümlülüklerini ele alıyor; bu, düzenlenmiş (regulated) iş yükleri için önemli. Ve agent'lar artık kullanımın ana itici gücü olduğundan, v5, Workflow'u yalnızca arka plan işlerinden çok uzun süreli AI sistemleri için altyapı olarak konumlandırıyor.
- #vercel
- #workflow-orchestration
- #javascript
- #encryption
- #serverless