Files
iddaai-be/mds/changelog-2026-04-14.md
T
fahricansecer 2f0b85a0c7
Deploy Iddaai Backend / build-and-deploy (push) Failing after 18s
first (part 2: other directories)
2026-04-16 15:11:25 +03:00

5.8 KiB
Raw Blame History

Changelog - 2026-04-14

Bu doküman, 14 Nisan 2026 tarihinde Suggest-Bet-BE üzerinde yapılan önemli teknik değişiklikleri özetler.

1. Full Stack Çalıştırma Scriptleri

  • src/scripts/run-full-stack.ts eklendi.
  • src/scripts/run-all-fe-compatible.ts eklendi.
  • package.json içine şu scriptler eklendi veya güncellendi:
    • full:run
    • run:all
  • Amaç:
    • AI engine ve NestJS'i birlikte ayağa kaldırmak
    • AI engine health check tamamlanmadan backend başlatmamak
    • process shutdown akışını kontrollü yönetmek
    • FE uyumlu profile ile NestJS:3000, AI engine:8000 kullanabilmek

2. Port ve Env Standardizasyonu

  • .env.example port değerleri netleştirildi.
  • Kullanım ayrımı:
    • npm run full:run: backend-native profile
    • npm run run:all: frontend-compatible profile

3. Matches Browse Davranışı

  • src/modules/matches/matches.service.ts güncellendi.
  • Varsayılan browse filtresi sadece upcoming yerine live + upcoming davranacak şekilde düzenlendi.
  • Etki:
    • /api/matches/query status verilmeden çağrıldığında canlı maçlar da döner.
    • /tr/matches sayfası live match'leri de görebilir.

4. VQWEN Model Entegrasyonu

  • ai-engine/models/betting_engine.py güncellendi.
  • ai-engine/services/v2_router.py güncellendi.
  • Davranış:
    • v2_artifacts/calibrated_*.joblib yoksa sistem artık doğrudan ai-engine/models/vqwen/*.pkl modellerine fallback yapıyor.
    • Bu sayede predictor boş priors yerine gerçek model kullanıyor.

5. Feature Extraction İyileştirmeleri

  • ai-engine/features/extractor.py güncellendi.
  • Eklendi veya iyileştirildi:
    • gerçek rest_diff
    • gerçek h2h_home_win_rate
    • lineup/sidelined JSON'ından availability türetimi
    • rolling form fallback'leri
  • matches ve live_matches tablo farkları dikkate alındı.
  • Tarihsel maçlarda olmayan kolonlar yüzünden extractor patlamayacak hale getirildi.

6. AI Engine PostgreSQL Bağlantı Düzeltmesi

  • ai-engine/data/database.py güncellendi.
  • Düzeltmeler:
    • .env otomatik yükleme
    • DATABASE_URL içindeki Prisma ?schema=public parametresini asyncpg ile uyumlu normalize etme
    • search_path ayarı ile bağlantıyı kararlı hale getirme

7. Runtime Backtest Scripti

  • ai-engine/scripts/backtest_v2_runtime.py eklendi.
  • package.json içine ai:backtest scripti eklendi.
  • Amaç:
    • V2/VQWEN tahminlerini bitmiş maçlar üstünde hızlıca ölçebilmek
    • accuracy, playable accuracy ve ROI görmek

8. VQWEN Top League Re-Training

  • ai-engine/scripts/train_vqwen_v3.py güncellendi.
  • top_leagues.json okunacak şekilde düzenlendi.
  • Sadece top league maçlarıyla eğitim yapılacak hale getirildi.
  • package.json içine ai:train:vqwen scripti eklendi.
  • Eğitim metadata dosyası üretildi:
    • ai-engine/models/vqwen/vqwen_training_meta.json
  • Sonuç:
    • vqwen_ms.pkl
    • vqwen_ou25.pkl
    • vqwen_btts.pkl dosyaları top league dataset ile yeniden üretildi.

9. V20+ Market Coverage Genişletmesi

Korner hariç daha fazla bahis tipini V20+ orchestration içinde görünür ve kullanılabilir hale getirmek için değişiklikler yapıldı.

9.1 Odds Parsing Genişletmesi

  • ai-engine/services/single_match_orchestrator.py güncellendi.
  • RELATIONAL_ODDS_KEYS genişletildi.
  • Yeni parse edilen market/odds anahtarları:
    • ht_ou15_o
    • ht_ou15_u
    • cards_o
    • cards_u
    • hcap_h
    • hcap_d
    • hcap_a

9.2 Yeni Helper Fonksiyonları

  • single_match_orchestrator.py içine eklendi:
    • _is_first_half_ou15_category
    • _is_cards_ou_category
    • _is_football_handicap_category
    • _set_football_handicap_odds

9.3 Market Requirement Genişletmesi

  • ODDS_REQUIRED_MARKETS genişletildi.
  • Yeni marketler:
    • HT_OU15
    • CARDS
    • HCAP

9.4 Market Board ve Bet Summary Genişletmesi

  • single_match_orchestrator.py içinde response üretimi genişletildi.
  • market_board artık şu marketleri de içeriyor:
    • HT_OU15
    • CARDS
    • HCAP
  • _build_market_rows() artık şu marketler için de row üretiyor:
    • HT_OU15
    • CARDS
    • HCAP

9.5 Market Calibration

  • Yeni marketler için calibration / minimum confidence tanımları eklendi:
    • HT_OU15
    • CARDS
    • HCAP

10. Other Markets Calculator İyileştirmesi

  • ai-engine/core/calculators/other_markets_calculator.py yeniden düzenlendi.
  • Eklendi:
    • cards_over_prob
    • cards_under_prob
    • cards_confidence
    • handicap_home_prob
    • handicap_draw_prob
    • handicap_away_prob
    • handicap_confidence
  • Korner tarafı özellikle kapsam dışı bırakıldı.

11. V20 Ensemble Model Genişletmesi

  • ai-engine/models/v20_ensemble.py güncellendi.
  • FullMatchPrediction içine şu alanlar eklendi:
    • cards_over_prob
    • cards_under_prob
    • cards_confidence
    • handicap_home_prob
    • handicap_draw_prob
    • handicap_away_prob
    • handicap_confidence
  • to_dict() çıktısı da cards ve handicap için daha zengin veri dönecek şekilde genişletildi.

12. Derleme ve Doğrulama Notları

  • Python tarafında şu dosyalar py_compile ile doğrulandı:
    • ai-engine/core/calculators/other_markets_calculator.py
    • ai-engine/models/v20_ensemble.py
    • ai-engine/services/single_match_orchestrator.py
  • npm run build son denemede kullanıcı tarafından manuel olarak kesildi.
  • Bu yüzden changelog yazıldığı anda en son TypeScript/Nest build sonucu tekrar alınmış kabul edilmemeli.

13. Açık Kalan / Sonraki Adımlar

  • Yeni marketlerin runtime API çıktısı gerçek maç üstünde uçtan uca test edilmeli.
  • npm run build tekrar tam çalıştırılmalı.
  • Mümkünse bir örnek /v20plus/analyze/:matchId çağrısıyla şu marketler doğrulanmalı:
    • HT_OU15
    • CARDS
    • HCAP
  • Korner marketleri bilinçli olarak dahil edilmedi.