Piksel karşılaştırmasının klasik sorununu çözer: carousel, reklam, sayaç ve font yüklenmesi yüzünden gelen sahte bildirimler. Doğrulanmayan bir değişiklik size ulaşmaz.
Kimler için
- Bildirimlerin neden geldiğini (veya gelmediğini) anlamak isteyenler
- Gürültülü sayfaları ayarlamak isteyen teknik sorumlular
Ön koşullar
- URL için oluşmuş bir baseline
- En az bir tamamlanmış karşılaştırma
Adım adım
- Baseline nedir
Baseline, bir insanın en son kabul ettiği sayfa halidir — son tarama değil. Karşılaştırma her zaman baseline’a karşı yapılır, böylece yavaş yavaş kayan bozulmalar da görünür.
- Bölge tabanlı skorlama
Değişen piksel oranı, değişen bölge sayısı, en büyük bölgenin payı ve konumu, HTML içerik hash’i, sayfa metadata’sı ve HTTP durumu birlikte değerlendirilir. Sonuç bir sınıf üretir: visual, content, metadata, availability veya dynamic_noise.
- Yükseklik farkı değişiklik sayılmaz
Sayfa uzadığında “altına bölüm eklendi” ile “tüm sayfa değişti” ayırt edilir. Görüntüler farklı yükseklikte olsa bile ortak bölge hizalanarak karşılaştırılır.
- Doğrulama taraması
Eşiği geçen bir değişiklikte bildirim hemen gitmez; kısa süre sonra ikinci bir tarama alınır. Bir bölge her iki taramada da baseline’dan farklı ve aynı zamanda birbirlerinden de farklıysa o bölge kararsız sayılır ve gürültü olarak ayıklanır. Sabit kalan değişiklik raporlanır.
- Yoksayılan bölgeler
Ekran görüntüsü üzerinde dikdörtgen çizerek carousel, reklam, cookie bandı veya sayaç alanlarını karşılaştırmadan çıkarabilirsiniz. URL başına en fazla 10 bölge.
- Değişiklik durumları
Bir değişiklik new, reviewed veya ignored olur. reviewed veya ignored demek baseline’ı o snapshot’a ilerletir; new bırakmak ilerletmez. Bu yüzden kapatmadığınız bir değişiklik her taramada yeniden görünür.
Operasyonel çıktılar
- Önce/sonra/diff görüntüsü ve değişen bölgelerin kutuları
- Değişiklik sınıfı ve önem derecesi
- Tarihli snapshot geçmişi
Plan uygunluğu
- Motorun tamamı tüm planlarda aynıdır — ucuz planda daha kötü tespit yok
- Geçmişin ne kadar geriye gittiği plana bağlıdır (7 / 90 / 180 gün)
Limitler ve guardrail’ler
- Tek görüntüleme profili: 412px genişlik, mobil Chrome
- Yoksayılan bölgelerde x ve genişlik 412px’e göre normalize, y üstten mutlak piksel olarak sabitlenir
- Çok uzun sayfalarda görüntü yükseklik sınırına göre kırpılır
- İçeriği anlamlandıran bir yapay zekâ katmanı yok; kararlar ölçülebilir sinyallere dayanır
Beklenen sonuç
- Gelen bildirimlerin gerçekten bakılması gereken değişiklikler olması
- Aynı değişikliğin tekrar tekrar bildirilmemesi
- Her kararın arkasında görülebilir bir diff bulunması
Sorun giderme yolları
- Gürültü sürüyorsa ilgili bölgeyi yoksayın veya URL hassasiyetini düşürün
- Değişiklik beklediğiniz halde gelmediyse snapshot’ın başarılı tamamlandığını ve sayfanın giriş istemediğini kontrol edin
- Baseline yanlış bir halde sabitlendiyse doğru snapshot’ı elle baseline olarak işaretleyin