Uyumluluk: Pactmark 0.2.x. Bu senaryo çalışma-zamanı etki ve karar yüzeylerini kullanır. Genel
yazım cephesi şu anda okuma araçlarını sunar — bkz. Sınırlar ve bu sınırı
başarıyı taklit etmek yerine dürüstçe gösteren
approval-purchase-boundary örneği.Durum
Bir destek temsilcisi bir iade talebini ele alıyor. Asistan siparişi toplamalı, politikaya göre uygunluğu denetlemeli, tutarı hesaplamalı ve — bir insan onaylarsa — ödeme sağlayıcısı üzerinden iadeyi gerçekleştirmeli. Ajan mühendisliğindeki her zor problem bu tek akışta ortaya çıkar:Etki geri alınamaz
Para çıkar. Geri alma yoktur; yalnızca kendisi de bir iş eylemi olan telafi edici bir işlem vardır.
Tutar model etkisiyle oluşur
Onu bir model hesapladı. Bir insan modelin anlatısını değil normalize edilmiş değeri görmeli.
API zaman aşımına uğrayabilir
Kaybolan bir yanıt, iadenin yapılıp yapılmadığı hakkında hiçbir şey söylemez.
Birileri bunu soracak
Üç ay sonra, bir itirazda, belirli bir işlem kimliğiyle.
WorkOrder
refund_approver
İsteyen kişi otomatik olarak onaylayabilecek kişi değildir. Destek temsilcileri iade açar,
onaylayanlar onaylar.
delegate_review
Koşunun işi yapmasına izin verilir ve çıktı “tamamlandı” sayılmadan önce incelenir.
500 EUR
Açık bir fiyat-sınırı sürümü ve son kullanma tarihi olan katı bir tavan. Üzerinde, kim ne onaylarsa
onaylasın koşu ilerleyemez.
Politika
R3 ve R5 için kural yok, dolayısıyla reddediliyorlar. Bu bir eksiklik değil — varsayılanın doğru
çalışmasıdır.
Araçlar
Onay
Şekil 1. Onaylayan normalize edilmiş bir önizleme görür, kimliğini yeniden doğrular ve tek kullanımlık bir kanıtı tüketir. Kanıt asla tarayıcıdan, bir log satırından veya modelden geçmez. Onaylayanın gerçekte gördüğü:Tutarın
materialConsequence içinde, modelin yazdığı bir cümleden değil normalize edilmiş yükten
türetilerek göründüğüne dikkat edin. Modelin anlatısıyla yük çelişirse insan yükü görür.Ödeme API’sinin zaman aşımına uğradığı gün
Şekil 2.reconcilable, bunların hiçbiri olmadan önce araca kaydedilmişti. Kurtarma yolunu
doğaçlama değil meşru kılan da bu önceden yapılmış beyandır.
Sıra:
1
EffectPrepared
Siparişten ve idempotency anahtarından türetilmiş bir
effectKey ve strategy: "reconcilable" ile.2
EffectDispatched
- deneme. POST gider.
3
Bağlantı düşer
Yanıt yok.
EffectUncertain, ardından effectMayHaveOccurred: true ile
EffectNeedsReconciliation.4
Koşu park eder
Yeniden denemez. “İade başarısız” diye de başarısız olmaz, çünkü bu yanlış bir ifade olurdu.
5
Mutabakat sorgular
6
Ya da dürüstçe terk edilir
Sağlayıcı yanıtlayamıyorsa
abandon_uncertain, etkinin gerçekleşmiş olabileceğini kaydeder. Ona
bağımlı her şey KAF_EFFECT_ABANDONED_UNCERTAIN üretir. Bu sürtünme amacın kendisidir.Kanıt
doesNotProve listesini yeniden okuyun. “Müşterinin parayı aldığını” ile “sağlayıcı iadeyi onayladı”
gerçekten farklı iddialardır ve bunları karıştırmak itirazların kötü gitme biçimidir.
Hâlâ sizde olanlar
Masa limiti
500 € sizin seçtiğiniz bir sayı. Pactmark doğru olsun olmasın onu sadakatle zorlar.
Onaylayanın anlayışı
Doğru bir önizleme yine yanlış okunabilir. TM-05 bu artık riski açıkça kaydeder.
Sağlayıcı idempotency'si
reconcilable, sağlayıcı hakkında sizin iddianızdır. Yanlışsa strateji de yanlıştır.Park edilmiş etkileri çözecek biri
Park edilmiş koşular, kimsenin açmadığı bir panele değil nöbetteki bir insana ihtiyaç duyar.
Onay entegrasyonu
Operatör akışını doğru kurmak.
Araçlar ve etkiler
Stratejinin neden önceden kaydedilmesi gerektiği.