3.2 KiB
Executable File
3.2 KiB
Executable File
Proje Güncelleme Özeti: Smart Coupon API & Canlı Veri Entegrasyonu
Tarih: 28 Ocak 2026
Bu döküman, Smart Betting System V2 kapsamındaki Smart Coupon API geliştirmelerini, karşılaşılan veri bütünlüğü sorunlarını ve uygulanan çözümleri özetler.
🎯 Hedef
Kullanıcıların tek bir tıklamayla, canlı maç verileri ve yapay zeka analizlerine dayalı akıllı kuponlar oluşturmasını sağlayan /predictions/smart-coupon uç noktasının geliştirilmesi.
✅ Yapılan Geliştirmeler
1. Backend (Python AI Engine)
- API Modelleri (
api_smart_coupon.py):SmartCouponRequestveSmartCouponResponsePydantic modelleri oluşturuldu. - Servis Mantığı (
service_smart_coupon.py):- Kupon oluşturma algoritması (Risk, Strateji, Güven filtreleri).
match_idtabanlı veri çekme altyapısımatchestablosundanlive_matchestablosuna taşındı.- Gömülü JSON
oddsverisinin parse edilmesi sağlandı. BetDeriverkategorileri ile API Enum'ları arasında map mekanizması kuruldu.
- Entegrasyon (
main.py): FastAPI uygulamasına POST/smart-couponendpoint'i eklendi.
2. Frontend (NestJS)
- DTOlar: Python modellerine karşılık gelen TypeScript DTO'ları (
smart-coupon.dto.ts) yazıldı. - Servis ve Controller:
PredictionsServiceiçinegetSmartCouponmetodu eklendi.PredictionsControlleriçine POST/predictions/smart-couponroute'u eklendi.
3. Veri Bütünlüğü ve Feeder İyileştirmeleri
Proje sırasında live_matches tablosundaki verilerin (Team ID, League ID, Odds) %99 oranında NULL olduğu tespit edildi. Bu kritik sorun çözüldü:
- Sorun Tespiti: Mackolik API bazı maçlarda
homeTeamobjesini dönmüyordu, feeder kodu bu durumu handle edemiyordu. - Feeder Fix (
data-fetcher.task.ts):refereeNamealanı için Prisma ve TypeScript tip uyumsuzluğu giderildi (npx prisma generate).- API yanıt yapısına uygun veri çekme mantığı doğrulandı.
- Toplu Düzeltme (
fix-live-matches.ts):live_matchestablosundaki eksik verileri API'den tekrar çekerek güncelleyen script yazıldı ve çalıştırıldı (158 maç kurtarıldı). - Temizlik (
cleanup-live-matches.ts): Eski ve geçersiz maç kayıtlarını temizleyen script eklendi (3000+ çöp kayıt silindi).
4. Test ve Doğrulama
- Canlı Kupon Testi (
test_live_coupon.py): Gerçek birlive_matchID'si ile sistemin bahis ürettiği doğrulandı. - Augsburg Senaryosu (
test_augsburg_scenario.py): Sistemin "1/2" gibi mucize geri dönüşleri tahmin edip kupona ekleyebildiği (Value stratejisi ile) test edildi.
📊 Gelinen Son Durum
- Sistem: ✅ Çalışıyor
- Veri: ✅
live_matchestablosu düzeltildi ve güncel. - Eksikler: Bazı çok eski maçların ID'leri kurtarılamadı (normal), yeni gelen maçlar sorunsuz kaydedilecek.
📂 Oluşturulan/Düzenlenen Kritik Dosyalar
ai-engine/api_smart_coupon.pyai-engine/service_smart_coupon.pysrc/modules/predictions/dto/smart-coupon.dto.tssrc/tasks/data-fetcher.task.tssrc/scripts/fix-live-matches.tssrc/scripts/cleanup-live-matches.ts