Eklenti rozetinde yeni state yerine mevcut önbellek kullanımı
Eklenti güncelleme rozeti için yeni API yerine mevcut cross-site önbellek kullanıldı; state çoğalması ve senkron hataları önlendi.
Site listesinde her sitenin 🔌 butonuna, bekleyen eklenti güncellemesi sayısını gösteren küçük bir rozet eklenmesi istendi. Görsel tarafı basit olsa da asıl karar, bu sayının nereden geleceğiydi: ekip yeni bir API uç noktası ve ayrı bir önbellek yazmak yerine, cross-site güncelleme panosunun zaten tuttuğu _updatesDashState verisini yeniden kullandı. site_id üzerinden arama yapıp plugins.length almak, rozetin sayısını üretmeye yetiyor.
Bu tercih, sessiz ama gerçek kazanımlar sağlıyor: önbellek geçersiz kılındığında rozet otomatik kayboluyor, TTL mantığı mevcut tasarımdan miras kalıyor ve tek bir veri kopyası olduğu için rozet ile gerçek sayı birbirinden asla sapmıyor. Gürültüyü azaltmak için de eşikler belirlendi; sıfır bekleyen güncellemesi olan ve hiç kontrol edilmemiş siteler için rozet gösterilmiyor, üç haneli sayılar ise 99+ olarak sabitleniyor.
Hem cross-site panodan hem de tek site üzerinden yapılan kontrollerin aynı önbelleğe yazması sağlanarak iki farklı iş akışının da doğru rozet göstermesi garanti edildi. must-use ve dropin türü eklentiler sayıma dahil edilmeyerek 'rozet güncelleme var diyor ama buton hiçbir şey yapmıyor' hatasının önüne geçildi.
Buradaki asıl ders, küçük bir arayüz elemanının otomatik olarak yeni bir veri kaynağı gerektirmediği: mevcut state soruyu yanıtlıyorsa, yeni API veya önbellek eklemeden önce bunu kontrol etmek, senkronizasyon kodu yazma ve veri sapması riskinden kurtarıyor.