Yöntem

Tarama nasıl çalışır, neyi ölçtük, neyi ölçmedik.

Nasıl çalışır

Project Doctor kural tabanlıdır. Her kural bir koşul arar; koşul sağlanırsa bulgu yazar. Yapay zekâ kullanılmaz ve rastgelelik yoktur: aynı klasör her seferinde aynı sonucu verir.

JavaScript ve TypeScript dosyaları düzenli ifadeyle değil, gerçek sözdizimi ağacıyla okunur. Python için 7 güvenlik kuralı dosyayı desenle okur ve bulgularını sezgisel diye işaretler.

Bir bulgu bir iddiadır

Her bulgu kanıtıyla gelir ve emin olma düzeyi ayrıca yazılır: kesinleşmiş, muhtemel, olası ya da öneri. Emin olmak, önce neyi düzelteceğini seçmenin yerine geçmez; sırayı sen belirlersin.

Sınırlar

Tarayıcıda 20.000 dosya, dosya başına 1,5 MB, okunan metin toplamı 100 MB ve arşiv başına 150 MB sınırı var. Sınırı aşan kısım atlanır ve tarama bunu notla söyler.

Tarayıcı ve komut satırı

İkisinde de aynı analiz kodu çalışır. Fark şu: tarayıcıda .git klasörü yoksa 4 kural çalışmaz ve sonuç bunu yazar. Ağdan veri çeken bağımlılık sorgusu tarayıcıda yoktur.

Neyi ölçtük

44 kural doğrulanmamış; Kurallar sayfasında işaretli. Başkasının kaydına erişim denetimi, gerçek düzeltmelerin 11 örneğinden 0 tanesini yakaladı. Bu yüzden varsayılan olarak kapalı.