API yüzeyi büyük görünüyorsa, bunun nedeni altı fikrin bir rehberde önerilmek yerine her yerde zorlanıyor olmasıdır. Bunları öğrenin, gerisi sonuç gibi okunur.

1. Model öneri getirir, asla yetki vermez

Şekil 1. Bu, prompt tasarımı hakkında bir tavsiye değildir. Yapısal bir özelliktir: izin veren nesneler host kodu tarafından oluşturulur ve model bağlamında asla bulunmaz. Pratik test şudur: kusursuz ikna edici bir prompt injection sonucu değiştirebilir mi? Pactmark’ta modelin ne isteyeceğini değiştirebilir, başka hiçbir şeyi değiştiremez. Reddedilmiş bir aracı izinli hâle getiren hiçbir talimat, meta veri veya argüman değeri yoktur.

2. Olaylar gerçektir; geri kalan her şey önbellektir

Şekil 2. Projeksiyon, olayların üzerine katlanmış bir sonuçtur. Silmek size yalnızca CPU’ya mal olur. Olayları silmek koşuya mal olur. Bir koşunun süreç yeniden başlatmasından sağ çıkmasının, pactmark replay komutunun hiçbir şey çalıştırmadan sonlanmış bir koşuyu doğrulayabilmesinin ve “istek zaman aşımına uğradı” ifadesinin işin bitip bitmediği hakkında size hiçbir şey söylememesinin nedeni budur.

3. Kimlik bir isim değil, bir özettir

İsimler çakışır, yeniden kullanılır ve kayar. Pactmark davranışı özetlere bağlar: Bir şey kaydığında koşu devam etmez, askıya alınır. Bu bir özelliktir: aynı-sürüm davranış değişikliği, isim tabanlı bir sistemin gizlediği tam olarak o hata biçimidir.

4. Belirsizlik bir istisna değil, bir durumdur

Şekil 3. Çerçevedeki en sonuç doğurucu tasarım kararı. Kaybolan bir yanıt, etkinin gerçekleşmediğinin kanıtı değildir; Pactmark da onu öyle davranmayı reddeder. Çoğu sistem “başarısız oldu” ile “bilmiyorum” durumlarını tek bir yeniden deneme yoluna sıkıştırır. Pactmark bunları ayrı tutar, çünkü iki kez yapılmış bir iade ile hiç yapılmamış bir iade çok farklı konuşmalardır.

5. Her sınır neyi yapmayacağını beyan eder

Şu üç ifadeyi API boyunca arayın — hepsi gerçek, zorlanan davranışlardır:

kapalı biçimde başarısız olur

Bilinmeyen meta veri, desteklenmeyen yetenek, eksik grant — yanıt “muhtemelen sorun olmaz” değil, hayırdır.

doesNotProve

Her EvidenceRecord üzerinde zorunlu ve boş olmayan bir dizi. Kanıt kendi sınırlarını söylemek zorundadır.

hazır değil

Hazırlık, sessizce bozulmak yerine karşılayamadığı profili bildirir.

6. Yapılandırma enjeksiyondur, ortam değil

Global bir yapılandırma nesnesi, ortam değişkeni sihri veya gizli bir varsayılan istemci yoktur. Saatler, kimlik üreticileri, depolar, işlem sınırları, yetki verici, admission, politika, kimlik bilgileri, modeller, araçlar, yürütücü, egress aracısı, doğrulayıcılar, kanıt üreticisi, telemetri ve uyandırma sürücüsü — hepsi kurucu girdisidir.
createLocalRuntime geliştirme için vardır ve deterministik bellek destekli varsayılanları bir araya getirir — ve üretim gibi davranmak yerine kendi sınırlarını bildirir.

Hepsini bir araya koyunca

1

Sohbeti değil, işi tarif edersiniz

Bir WorkOrder, hiçbir şey çalışmadan önce tenant, principal, amaç, bütçe, veri sınıfı ve son tarihi bağlar.
2

Host, aktarımdan önce yetkiyi rezerve eder

Admission ve politika, bağlam modele ulaşmadan önce bütçeleri ve grantları taahhüt eder.
3

Model önerir; politika yeniden denetler

Her araç talebi güncel grantlara ve kill switch’lere göre yeniden değerlendirilir.
4

Etkiler kendi belirsizliklerini kaydeder

Hazırlandı, gönderildi, onaylandı — ya da açık bir mutabakat yoluyla park edildi.
5

Çıktı önce bayt, sonra doğrulanmış artifact olur

Önce içerik adresleme, sonra o adrese bağlı doğrulama.
6

Kanıt iki tarafı da söyler

Koşunun neyi desteklediğini ve neyi kanıtlamadığını.

Şimdi mimariyi okuyun

Bu altı fikrin on dokuz pakete nasıl bölündüğü ve gerçekte hangilerini içe aktardığınız.