RestoPromt

denetim.sh — Kod Kalite Denetim Scripti (Sıfır Token, Saf Bash)

Yazılım
RestoPromt23 Temmuz 2026

Projeni 12 yazılım kalite kuralından geçiren bağımsız bash scripti: god-file'lar (1000+ satırlık login.php), uzun fonksiyonlar, gömülü şifreler, debug kalıntıları, boş catch'ler... AI çağrısı yok — token harcamaz, ~2 saniyede tarar, CI/git hook'una bağlanır.

## Ne işe yarar?

Projenin kod sağlığını saniyeler içinde denetler. Tüm kod dosyalarını tarayıp yazılım kurallarına aykırı yerleri `dosya:satır` göstererek raporlar ve tek hüküm verir: **TEMİZ / UYARI / KRİTİK**.

AI çağrısı yapmaz — düz bash programıdır. Yani **token harcamaz**, günde 100 kere çalıştırsan maliyeti sıfırdır ve koca projeyi ~2 saniyede tarar. macOS ve Linux'ta ek kurulum gerektirmez.

## Kurulum ve çalıştırma

```bash
curl -fsSL https://restopromt-web.slovveis.workers.dev/denetim.sh -o denetim.sh
chmod +x denetim.sh
./denetim.sh /yol/projen
```

## Kullanım

```bash
./denetim.sh                    # bulunduğun dizini denetle
./denetim.sh /yol/proje         # belirli projeyi denetle (PHP, JS, TS, Python...)
./denetim.sh . --json           # CI için makine okunur çıktı
./denetim.sh . --strict         # uyarıları da hataya say
./denetim.sh . --max-satir 300  # dosya uzunluğu limitini özelleştir
./denetim.sh --help             # tüm kurallar ve açıklamaları
```

Exit code: `0` temiz, `1` uyarı, `2` kritik — CI'a veya git hook'una doğrudan bağlanır:

```bash
# .git/hooks/pre-push içine koy: kritik bulgu varsa push durur
./denetim.sh . --strict || exit 1
```

## Denetlenen 12 kural

| Kural | Ne yakalar | Seviye |
|-------|-----------|--------|
| dosya-uzunlugu | 400+ satır uyarı, 800+ kritik — 1500 satırlık login.php tipi god-file'lar | KRİTİK |
| fonksiyon-uzunlugu | 60+ satır uyarı, 120+ kritik | KRİTİK |
| sir-taramasi | Koda gömülü şifre/API anahtarı/private key (Türkçe $sifre, $parola dahil) | KRİTİK |
| cok-fonksiyon | Bir dosyada 20+ fonksiyon (tanrı-dosya işareti) | UYARI |
| girinti-derinligi | 6+ seviye iç içe if/for (spagetti işareti) | UYARI |
| karisik-katman | PHP'de aynı dosyada SQL + HTML (katman ayrımı yok) | UYARI |
| bos-catch | Hatayı yutan boş catch / except: pass | UYARI |
| debug-kalintisi | Unutulmuş console.log, var_dump, dd() | UYARI |
| kopya-dosyalar | login_old.php, yedek.bak, index2.php kalıntıları | UYARI |
| satir-uzunlugu | Dosyada 10+ adet 160+ karakterlik satır | UYARI |
| dev-dosya | Repoya girmiş 1 MB+ dosyalar | BİLGİ |
| todo-yogunlugu | 20+ birikmiş TODO/FIXME/HACK | BİLGİ |

`node_modules`, `vendor`, `.git`, `dist`, `build`, `.next` gibi klasörler otomatik hariç tutulur. Türkçe karakterli ve boşluklu dosya adlarıyla sorunsuz çalışır.

## Nasıl üretildi?

Bu script RestoPromt'ta çok-ajanlı bir döngüyle yazıldı: bir ajan yazdı, bir denetçi eleştirdi, bir testçi sahte projeler kurup gerçekten çalıştırdı, bir geliştirici bulguları düzeltti — 3 tur boyunca. Tur 1'de performans 18 kat hızlandı, Tur 2'de Türkçe dosya adı ve Türkçe değişkenli sır taraması hataları yakalandı. İki taraf da "geçti" diyene kadar döngü sürdü.

Değişiklik öner

Bu promptu yalnızca sahibi düzenleyebilir; ama sen bir iyileştirme önerebilirsin. Sahibi kabul ederse içerik güncellenir.

Öneri göndermek için giriş yap