İçeriğe geç

Kural Setleri ve Sabitlenmiş Sürümler

Tarife, ücret, ceza, tahsis puanı ve mevzuat kuralları kural setleri olarak yönetilir. Kural setleri koddan bağımsızdır ve her sürümü bir yürürlük aralığı taşır.

{
"ruleSetId": "rs_tahsis_puani",
"version": 7,
"effectiveFrom": "2026-07-01",
"effectiveTo": null,
"status": "ACTIVE",
"rules": [
{ "key": "seniorityWeight", "value": "0.6" },
{ "key": "savingsRatioWeight", "value": "0.4" }
]
}
  • Yeni sürüm yayımlamak mevcut sürümü değiştirmez; yeni bir yürürlük aralığı açar.
  • Sürüm yayımlama dört göz onayına tabidir.
  • Geçmiş sürümler silinemez; as-of hesaplamalar için kalıcıdır.

Bir sözleşme kurulduğunda, o an yürürlükte olan kural seti sürümleri sözleşmeye sabitlenir:

{
"contractId": "ctr_01J8ZK4T2M",
"pinnedRuleSets": {
"rs_tarife": 12,
"rs_tahsis_puani": 7,
"rs_cezalar": 3
}
}

Mevzuat değiştiğinde yeni sürüm ileriye dönük çalışır: yeni sözleşmeler yeni sürümü alır, mevcut sözleşmelerin matematiği değişmez. Mevzuatın mevcut sözleşmelere de uygulanmasını gerektirdiği durumlarda sabitleme, denetim izli bir yeniden sabitleme işlemiyle ve dört göz onayıyla güncellenir.

  • “Mevzuat koda gömülmez”: kural değişikliği bir dağıtım (deploy) değildir.
  • Her hesaplamanın hangi kural sürümüyle yapıldığı kayıtlıdır ve yanıtlarda ruleSetVersions alanıyla raporlanabilir.
  • Simülasyon uçları, taslak (DRAFT) kural sürümleriyle “yürürlüğe girerse ne olur?” sorusunu yanıtlamak için kullanılabilir.