Eşzamanlılık Güvenliği
Kural
Şu invariantlar yarış-koşulu (concurrent-mutation) altında da korunur; eşzamanlılık hiçbirini delemez:
INVITATION SINGLE-USE · ACTIVE MEMBERSHIP UNIQUENESS · OWNER CONTINUITY
OWNERSHIP TRANSFER ATOMICITY · ROLE-CHANGE ⊥ REMOVAL CONSISTENCY
Check-then-write deseni tek başına yeterli güvence değildir; davranış-sonucu "yarış-penceresinde bile ihlal imkânsız"dır. (Bunu sağlayan mekanizma seçimi — transaction, optimistic-concurrency, DB-constraint — CAN-DEC-ADR-007 kapsamındadır; bu kural sonucu bağlar.)
Gerekçe
Tekil-istek testlerinde geçen korumalar, yarış-penceresinde sessizce delinebilir: aynı davetin çift kabulü iki üyelik, eşzamanlı demote+leave sahipsiz organization üretebilir. Güvenlik-invariantı "çoğu zaman doğru" olamaz.
Test edilebilir hükümler
- Aynı davetin eşzamanlı iki kabulü tek membership üretir; ikinci deneme kontrollü sonuç alır.
- Eşzamanlı duplicate-davet istekleri tekillik-kuralına takılır (CAN-REQ-RULE-011 sonuç-sınıfları).
- Rol-değişimi ile üyelikten-çıkarma aynı hedefe eşzamanlı uygulandığında sonuç tutarlı tek-durumdur; çelişkili ara-durum kalmaz.
- Ownership-transfer sırasında hedef-üyeliğin eşzamanlı kapatılması denemesi owner-korumasını delemez.
- Son-owner'ı hedefleyen eşzamanlı mutation-çiftleri (demote+leave vb.) hiçbir sıralamada sahipsizlik üretemez (race-test zorunlu).
Kapsam
Davet-kabul, membership-yaratma/sonlandırma, rol-değişimi, ownership-transfer yollarının tamamı. Kapsanan UC'ler: UC-OAM-006/008/010/011/012/013. Bu kuralın test-yükümlülüğü ilgili tüm RULE'ların yarış-boyutunu kapsar (011/012/013).