release-radar
Yazılım sürüm akışlarını izleyen, yeni sürümleri Gemini ile Türkçe özetleyip Telegram üzerinden bildiren Python servisi.
- Python
- SQLite
- Gemini API
- Telegram Bot API
- Docker
Amaç ve Kapsam
Farklı yazılımların sürüm notlarını tek bir bildirim akışında toplar. Kaynaklar config.json içindeki RSS/Atom adresleriyle tanımlanır. Yeni kayıtların metni Gemini ile Türkçe özetlenir ve kaynak bağlantısıyla Telegram’a gönderilir.
Mimari ve Depo Yapısı
main.py: akışları indirme, sürüm metnini çıkarma, özetleme, bildirim ve tarama döngüsü.db.py: SQLite bağlantısı ve işlenen kayıt kimlikleri.config.json: izlenecek kaynaklar ve kaynak türleri.tests: veritabanı, yardımcı işlevler ve tarama döngüsü testleri.Dockerfilevedocker-compose.yml: sürekli çalışan servis ve kalıcı veri dizini.
Uygulama kendi tarama döngüsünü yönetir. GitHub Actions yapılandırması lint, test ve Docker derlemesi içindir.
Çalışma Akışı
Başlangıçta hemen tarama yapılır; sonraki taramalar yapılandırılabilir aralıkla, varsayılan olarak altı saatte bir çalışır. Bir kaynak ilk kez görüldüğünde mevcut kayıtlar bildirim gönderilmeden başlangıç kümesine alınır.
Sonraki taramalarda yeni sürüm metni hazırlanır, Gemini özeti alınır ve Telegram’a gönderilir. Başarılı gönderimlerin kimlikleri SQLite’a kaydedilir; özetleme veya gönderim başarısızsa kayıt sonraki taramada yeniden denenebilir.
Teknik Kararlar
İşlenen kayıtlar (source, guid) birleşik anahtarıyla saklanır. Böylece uygulama yeniden başlasa da geçmiş kontrolü aynı yerel veritabanından devam eder. VS Code notları için GitHub Markdown içeriğini okuyan özel bir yol, diğer depolar için standart GitHub Atom yolu vardır.
Ağ ve Telegram isteklerinde yeniden deneme uygulanır. Uzun Telegram mesajları parçalara ayrılır; tarama sonunda bağlantı kapatılır ve kapanış sinyalleri bekleme döngüsünde dikkate alınır.
Sınırlar ve Doğrulama
Özetlerin doğruluğu kaynak metne ve Gemini çıktısına bağlıdır. Telegram gönderimi ile SQLite kaydı tek bir atomik işlem değildir; gönderimden sonra süreç kesilirse sonraki taramada aynı bildirim tekrar gönderilebilir. Kalıcı veri dizini korunmazsa kaynak geçmişi yeniden oluşturulur.
Depoda pytest testleri, Ruff kontrolü ve Docker derleme işi bulunur. Bu inceleme dış servislere bildirim göndermedi ve repo testlerini çalıştırmadı.
Kaynaklar
İnceleme tarihi: 8 Eylül 2026. İncelenen sürüm (174375b).