WingerApp Güvenlik ve Moderasyon Politikası (Safety Policy) — v0 taslak
Son güncelleme: 2026-09-17 · Durum: Taslak. Apple App Review'ın dating app'lerden beklediği "kullanıcı güvenliği" belgesi olarak hazırlanmıştır (Guideline 1.2).
1. Kimlik ve Yaş
- WingerApp yalnızca 18 yaş ve üzeri kullanıcılara açıktır (bkz.
terms-of-service.tr.md§2,age-rating.md). - Yaş, kullanıcı beyanına dayanır; resmi kimlik doğrulaması yapılmaz (dürüstçe belirtilmelidir, bkz.
age-rating.md"Yaş doğrulama mekanizması"). - Hesaplar kriptografik bir kimlikle (DID, Ed25519) ilişkilendirilir; e-posta/telefon yoktur.
2. Profil Fotoğrafı Doğrulama (Yüz Doğrulama — Beta)
- Kullanıcılar isteğe bağlı olarak, kamera ile canlılık kontrolünden (göz kırpma/baş çevirme/gülümseme) geçen bir yüz doğrulaması yapabilir; doğrulanan profillerde bir rozet gösterilebilir.
- Tamamen cihaz üzerinde işlenir (Apple Vision / Google ML Kit); görüntü/embedding sunucuya hiç gönderilmez (bkz.
privacy-policy.tr.md§2, §9). - Dürüst sınır: gerçek bir derin öğrenme yüz-tanıma modeli değildir (geometrik landmark eşleştirmesi); anti-sahtecilik (spoof) tespiti kalibre edilmemiş bir doku-analizi heuristiğidir (
memory-bank/Features/Face-Verification.md). Doğrulama rozeti "bu kişi gerçek ve güncel bir fotoğraf kullanıyor" ihtimalini artıran bir sinyaldir, mutlak bir garanti değildir. Bu sınır, doğrulama rozetinin yanına kısa bir açıklama olarak eklenmelidir (öneri: "Deneysel doğrulama — %100 garanti değildir").
3. Bildirme (Report) ve Engelleme (Block)
Her kullanıcı, herhangi bir profili/sohbeti Ayarlar veya sohbet ekranındaki Rapor/Engelle akışından bildirebilir (ReportBlockScreen.tsx).
Rapor kategorileri (kod: CommunitySafetyGuardianService.ts, ReportBlockScreen.tsx:39-47):
| Kategori | Açıklama | İşlem hızı |
|---|---|---|
violence (şiddet) | Şiddet tehdidi/teşviki | Tek dokunuşla anında rapor + engelle |
scam (dolandırıcılık) | Finansal istismar, "romance scam" | Tek dokunuşla anında rapor + engelle |
harassment (taciz) | Taciz, tehdit, istenmeyen ısrarcı iletişim | Tek dokunuşla anında rapor + engelle |
spam | İstenmeyen ticari/tekrarlayan içerik | 2. adım onayı |
fake_profile (sahte profil) | Gerçek olmayan kimlik/fotoğraf | 2. adım onayı |
inappropriate_content (uygunsuz içerik) | Müstehcen/rahatsız edici içerik | 2. adım onayı |
other (diğer) | Yukarıdakilere girmeyen durumlar | 2. adım onayı |
- Yüksek riskli üç kategori (şiddet/dolandırıcılık/taciz) tek dokunuşla hem raporlanır hem de bildirdiğiniz kişi otomatik olarak engellenir — ek onay adımı beklenmez, çünkü bu kategorilerde kullanıcı güvenliği sürtünmesiz bir akıştan önce gelir.
- Engellenen kullanıcı sizi bir daha göremez, size mesaj/eşleşme isteği gönderemez; sinyalleşme ve eşleştirme sorguları karşılıklı blok listesini kontrol eder (
backend/app/api/location.py::get_nearby,backend/app/models/__init__.py::Block). - Raporlar
abuse_reportstablosunda saklanır, moderasyon ekibi tarafından incelenir (durum:pending/işlenmiş,action_takenalanı) ve hesap silinse dahi kimlik bağı anonimleştirilerek saklanmaya devam eder (bkz.privacy-policy.tr.md§6) — bu, "hesabımı silip rapor geçmişimi silmek" yoluyla kötüye kullanımın gizlenmesini önler.
4. Otomatik Politika Denetimi (Guardian)
Uygulama içi AI-destekli özellikler (eşleştirme açıklamaları, gece ajan müzakeresi, sohbet önerileri) bir Guardian politika motoru tarafından denetlenir — bu motor AI çıktılarının taciz edici, ayrımcı veya güvensiz içerik üretmesini engellemeyi amaçlar (memory-bank/Product-AI-Agents.md, GuardianV6PolicyFreezeTransparencyV2Service.ts ve ilgili servisler). Dürüst sınır: bazı Guardian kontrol noktalarının belirli akışlarda fiilen no-op olduğu (kod incelemesiyle bulunmuş, dokümantasyon düzeltmesi bekleyen) bilinen bir bulgu vardır (memory-bank/Security-Privacy.md S85) — bu, kullanıcıya "Guardian her adımda %100 devrede" gibi mutlak bir güvence dilinde sunulmamalıdır.
5. Gece Ajan Müzakeresi — Güvenlik Sınırları
- Görüşme tamamen deterministik/kural tabanlıdır (LLM karar yolunda değildir), bu yüzden öngörülemez/rastgele içerik üretme riski matching kararında düşüktür.
- Görüşme sırasında serbest metin asla iletilmez; yalnızca önceden tanımlı, sabit kategori kodları ve değerleri iletilir (
agents/agent-represented-matching.md). - Görüşme yalnızca her iki tarafın da bu özelliği açıkça etkinleştirmiş olmasını gerektirir (bkz.
acik-riza-metni.md§4,privacy-policy.tr.md§7).
6. Buluşma Güvenliği — Kullanıcı Tavsiyeleri
Uygulama içi bir "buluşma güvenliği" bilgilendirme ekranı (öneri, launch öncesi eklenmeli — [VERIFY: product/mobile-engineer]) şu asgari tavsiyeleri içermelidir:
- İlk buluşmaları halka açık bir yerde yapın.
- Buluşma planınızı güvendiğiniz birine bildirin.
- Kendi ulaşımınızı sağlayın.
- Şüpheli davranış (para talebi, erken aşamada aşırı kişisel bilgi talebi, tutarsız hikaye) gördüğünüzde Rapor/Engelle akışını kullanın.
- Acil bir durumda yerel acil yardım hatlarını arayın; uygulama bir acil durum servisi değildir.
7. Şeffaflık Sınırları — Bu Politikanın Kapsamı Dışında Kalanlar
Bu belge, memory-bank/Security-Privacy.md, agents/agent-represented-matching.md, backend'in çekirdek router'ları (auth, users, profiles, location, matching, signaling, blocks, IAP, influencer) ve mobil ReportBlockScreen/ConsentManagementV7Service kodunun incelenmesine dayanır. Backend'de bu görev kapsamında tek tek denetlenmeyen çok sayıda (~200) ek API router'ı bulunmaktadır (isimlendirmelerinden "analytics"/"telemetry"/"meta"/sürüm numaralı sprint modülleri olduğu anlaşılan) — örnekleme yoluyla incelenen ikisi (data_minimization.py, retention_telemetry_v1.py) gerçek veri kalıcılığı olmayan saplama (stub) kod olduğu görüldü, ancak tamamı bu görevde doğrulanmadı. Bu belge ve privacy-policy.tr.md'nin App Store/KVKK gönderimi için nihai kabul edilmeden önce, security-privacy-reviewer'ın backend'deki tüm router'ların gerçek veri toplama davranışını kapsayan tam bir envanter çıkarması önerilir.
İlgili Belgeler
privacy-policy.tr.md/.en.mdterms-of-service.tr.md/.en.mdage-rating.md