Rota sayfası (/rota), yönlendirme kurallarının görsel yüzüdür ve panelin tek tam etkileşimli ekranıdır. Akışı yukarıdan aşağı bir üretim hattı gibidir:
Rota kuralları tasarımcısı ekranı

Rota tasarımcısı — görsel kurucu, üretilen JSON ve simülasyon

Görsel kurucu ve JSON

Taslak iki kipte düzenlenir ve JSON tek gerçek kaynaktır: görsel kurucu JSON’a yazar; simülasyon ve yayın JSON’dan okur. “Üretilen JSON” bölümü her an açılıp bakılabilir. Görsel kurucuda:
  • Üstte varsayılan strateji (hiçbir kural eşleşmezse), deneme hakkı ve “erişilemeyen POS’ları atla” koruması; balanced stratejide maliyet / başarı / hız ağırlıkları.
  • Ölçüm kotası (%) alanı yalnızca ölçülen sinyale dayanan bir strateji seçiliyken (en yüksek başarı · en hızlı · dengeli) görünür — “en ucuz” anlaşma oranını, “öncelik sırası” hesabın önceliğini okur; ikisi de trafikten beslenmez, onlarda kotanın karşılığı yoktur. Ayrıntı: ölçüm kotası.
  • Strateji listesi hacim taahhüdünü de içerir; taahhütler sayfanın “Hesaplar” listesinde ilerlemesiyle görünür: taahhüt 2.500.000,00 ₺/ay — kalan 850.000,00 ₺ / 9 gün.
  • Kural blokları sıralanabilir — sıra önemlidir, ilk eşleşen kazanır.
  • Her blokta “Eğer” koşulları (alan kataloğundan seçilir; operatörler alanın türüne göre daralır; para alanı ₺ birimiyle gösterilir) ve “O zaman” bölümü: hedef POS hesapları, seçim stratejisi ve panelde görünecek gerekçe metni.
  • Alan kataloğu motorun tanıdığı olgularla birebirdir: tutar, taksit, saat, para birimi, kanal (API · ödeme linki · saha tahsilatı · abonelik yenilemesi), BIN, kart bankası, programı, markası, tipi, ticari kart ve kart ülkesi.
  • Koşulsuz kural “her işleme uyar” uyarısı verir.
Görsel kurucunun ifade edemeyeceği bir doküman (iç içe koşul grupları, katalog dışı alan) yüklenirse sayfa sizi JSON kipinde kilitler ve nedenini söyler — kurucuya çevirmek dokümanın anlamını bozardı.

Geçmişte deneme (simülasyon)

Yayınlamadan önce aday kural, seçtiğiniz gün sayısı kadar geçmiş işlem üzerinde koşturulur. Hiçbir şey değişmez; rapor döner:
  • örnek büyüklüğü ve POS’u değişecek işlem sayısı,
  • tahmini komisyon farkı (tasarruf ya da ek maliyet),
  • anlaşması tanımsız olduğu için hesaplanamayanlar,
  • aday kuralın yol bulamayacağı işlem sayısı (taksit/uygunluk elemeleri — o işlemlerde confirm başarısız olurdu),
  • hesabı elle sabitlenmiş olduğu için kuralın değiştiremeyeceği işlem sayısı,
  • ilk 25 değişikliğin tablosu: ödeme, şu anki POS, kural sonrası POS, fark, neden.
Simülasyon motorla aynı karar çekirdeğinden geçer: kural eşleşmesi, strateji sıralaması ve failover zinciri tek bir yerde yaşar, iki taraf ayrı ayrı yazılmadığı için sapamaz. Geçmiş işlemler, karar anında motorun gördüğü kartla oynatılır — maskeli karttan sonradan öğrenilen bilgi kurallara sızmaz.
Simülasyon bir tahmindir, birebir replay değildir. Sağlık ve uygunluk elemeleri bugünkü fotoğrafla yapılır; geçmişteki POS sağlığı bilinmez. Hacim taahhüdü ilerlemesi de bugünün fotoğrafıdır: “o işlem yapılırken açık ne kadardı” sorusu geriye doğru kurulamaz, bu yüzden commitment stratejisiyle yapılan simülasyon sıralamayı ayın bugünkü durumuna göre gösterir.

İki aşamalı yayın

“Yayına al” ilk tıkta yayınlamaz: JSON doğrulanır ve bir onay bloğu açılır — “N kural, M koşul; canlı trafiğe anında uygulanır” özeti ve son simülasyon sonucuyla. Simülasyon yapmadıysanız blok bunu açıkça söyler: “Simüle etmeden yayınlıyorsunuz.” İkinci tık kuralı yeni sürüm olarak kaydeder ve etkinleştirir. Sürüm geçmişinde eski kurallar silinmez; geri dönüş, eski sürümü (yine iki aşamalı onayla) yeniden etkinleştirmektir. Yayın ve aktivasyon Yönetici rolü ister ve rol, düğme gizlemenin ötesinde sunucuda da denetlenir.