Debug Geliştirme — İlerleme Raporu

19 Şubat 2026 — Debug v4 sonrası durum

✅ 22 Madde Tamamlandı ⏳ 5 Madde Bekliyor ⚠️ 2 Migration Onayı Gerekli
Genel İlerleme 22 / 27 (%81)
22
Tamamlandı
3
Migration Bekliyor
2
Backend Geliştirme

Tamamlananlar

Debug v4 — Frontend (performance-debug.js) · +628 satır
15 Yeni Veri Grubu
🎯 START-TRIGGER
Müziğin başlatıldığı sayfa, tıklanan element, içerik türü (albüm/playlist/radyo), kuyruk boyutu
SEQ-DELTA tetikleyici dağılımı: autoplay / user_next / shuffle_pick / direct_select
⚡ TTP — Time-to-Play
Play tuşu → ilk ses arasındaki süre (ms). Min / Max / Ortalama. Son 20 ölçüm geçmişi.
1sn+ ve 3sn+ için otomatik uyarı
🔄 REBUFFER
Audio buffer tükenme → bekleme → yeniden doldurma olayları. Bekleme süresi, hangi şarkıda.
FAULT-MAP ile şarkı bazlı korelasyon
🗺️ NAV-TRAIL
SPA sayfa geçiş takibi. Livewire navigate + popstate dinleniyor. Geçişte müzik çalıyor muydu?
Debug paneli sayfa geçişinde açık kalır (sessionStorage)
🚨 JS-FAULT
Global window.onerror + unhandledrejection yakalayıcı. Dosya, satır, o andaki şarkı.
Sessiz JS hataları artık kaybolmuyor
🗺️ FAULT-MAP
Şarkı ID bazlı sorun haritası. Her şarkıda kaç PROC-HOLD / REBUFFER / HLS-FAULT / JS-FAULT çıktı.
En sorunlu şarkılar sıralı listesi
👁️ VIS-TRAIL
Sekme arka plana geçiş/dönüş geçmişi. Toplam arka planda geçen süre. Her geçişte bellek durumu.
📡 NET-CHANGE
Bağlantı tipi değişim logu (4G→WiFi vs). Downlink hızı, RTT değerleri zaman çizelgesi.
🖱️ USR-ACT
Kullanıcı etkileşim sayaçları: ileri/geri basma, seek (zaman atlama), duraklat, oynat sayısı.
⚙️ PLAYER-CFG
Anlık ayar görüntüsü: shuffle, repeat modu, volume, mute, queue tipi ve adı.
📦 SEG-STAT
HLS segment yükleme istatistikleri. Min/Max/Ortalama yükleme süresi. Başarı/başarısız oranı.
1sn+ ortalama için otomatik uyarı
🎚️ XMIX-DETAIL
Crossfade detayları. Gerçek süre vs ayarlanan süre. Her XMIX öncesi/sonrası bellek değişimi.
⚡ JANK-STAT
50-100ms küçük takıkma istatistikleri. PROC-HOLD'un erken uyarı sistemi.
📱 DEV-DETAIL (Genişletildi)
Tarayıcı versiyonu, OS versiyonu, DPR, dokunmatik ekran, batarya % ve şarj durumu (Battery API).
🔑 SES-ID
Benzersiz oturum kimliği (SES-XXXXXX-XXXX formatı). Backend log eşleştirme için.
Panel & UX İyileştirmeleri
— Minimize Butonu
Panel küçültülünce sağ alta ⚡ DBG ▲ rozeti kalır. Tıklayınca açılır. localStorage'da hatırlar.
🐛 Sayfa Geçişinde Şarkı Bug Fix
Livewire SPA navigasyonunda debug paneli açıksa yeni sayfada da devam eder. sessionStorage ile durum korunur.
🔤 Teknik Terim Değişiklikleri
Panel etiketleri: Gecikme→PROC-HOLD · Cache→APC · Preload→PRE-STAGE · Eski Audio→ORPHAN-AE · GC→MEM-SWEEP · Crossfade→XMIX
📊 SEQ-DELTA Tetikleyici Takibi
Her şarkı geçişinin nasıl tetiklendiği: autoplay / user_next / shuffle_pick / direct_select / repeat / radio_next
Dosya: public/themes/muzibu/js/player/features/performance-debug.js v3 → v4 1771 → 2414 satır Commit: dabe4d35d

Kalanlar

1. Users Tablosu — is_debugger Alanı ✋ Migration Onay Gerekli
Kullanıcıya debug modu atamak için users tablosuna boolean alan eklenmesi gerekiyor.
🚨 3 Aşamalı Onay Gerekli (CLAUDE.md Kural 3.2)
1. Tenant users tablosuna is_debugger BOOLEAN DEFAULT FALSE ekle
2. Central users tablosuna aynı alanı ekle
3. Migration dosyaları: Modules/UserManagement/database/migrations/tenant/
Bu madde tamamlanmadan 2, 3, 4 numaralı maddeler yapılamaz.
2. Kopyala → Log Dosyası Oluştur Backend API
Kopyala butonuna basınca hem panoya kopyalansın hem de backend'de log dosyası oluşturulsun.
Log Dosya Yolu
storage/logs/debug-mod/
2026/02/19/
user-{id}/
report-14-35-22.log
Yapılacaklar
  • • Route: POST /api/debug/save-log
  • • Controller: DebugLogController
  • • copyReport() → fetch API call
  • • "📁 report-xx-xx.log kaydedildi" mesajı
Migration bağımlılığı yok — hemen yapılabilir.
3. Admin Panel — Kullanıcıya Debug Atama Migration'a Bağlı
UserManage sayfasına "Hata Ayıklayıcı Modu" toggle'ı ekleniyor. Sadece root kullanıcılar görebilir.
Modules/UserManagement/App/Http/Livewire/UserManageComponent.phpis_debugger alanı
manage.blade.php → Root'a görünen toggle switch
• Root değilse alan tamamen gizli
is_debugger migration tamamlanınca yapılabilir.
4. Debug Görünürlük Kontrolü (Premium / Root) Migration'a Bağlı
Kim debug panelini görebilir? Şu an URL parametresiyle herkes açabilir.
Normal Kullanıcı
?debug=1 eklesе bile göremez
is_debugger=true
?debug=1 ile açabilir
Root
Her zaman, her şekilde
• Blade layout'a <meta name="debug-allowed" content="1"> ekle
• JS'de meta kontrolü — izin yoksa init() hiç çalışmaz
is_debugger migration tamamlanınca yapılabilir.
5. Rapor Gönderince Otomatik Kapanma Migration'a Bağlı Backend + JS
Kopyala butonuna basınca → log kaydedilir → panel kapanır → is_debugger=false olur (root hariç).
Kopyala'ya bas Panoya kopyala API: log kaydet API: is_debugger=false Panel kapanır
Root kullanıcılar için bu akış çalışmaz — root kendi isteğiyle kapatır.
Tüm Maddeler Özet
# Madde Tür Durum
1-1515 Yeni veri grubu (START-TRIGGER, TTP, REBUFFER...)JS✅ Tamamlandı
16Minimize butonu + badge moduJS✅ Tamamlandı
17Sayfa geçişinde şarkı durma bug fixBug✅ Tamamlandı
18Teknik terim değişiklikleri (PROC-HOLD, APC vs.)JS✅ Tamamlandı
19SEQ-DELTA tetikleyici dağılımıJS✅ Tamamlandı
20DEV-DETAIL genişletildi (batarya, DPR, browser ver.)JS✅ Tamamlandı
21SES-ID oturum kimliğiJS✅ Tamamlandı
22PLAYER-CFG shuffle/repeat/volume anlık görüntüJS✅ Tamamlandı
23Kopyala → Log dosyası oluştur (backend API)PHP+JS⏳ Bekliyor
24Users tablosu — is_debugger alanıMigration✋ Onay Gerekli
25Admin panel — kullanıcıya debug atamaPHP24'e bağlı
26Debug görünürlük kontrolü (premium/root)PHP+JS24'e bağlı
27Rapor gönderince otomatik kapanma + is_debugger=falsePHP+JS24'e bağlı
⚡ Sonraki Adım
Hemen Yapılabilir (Migration Gerektirmez)
  • Madde 23: Kopyala → Log dosyası API
  • — Route + Controller + copyReport() güncelleme
Migration Onayı Sonrası
  • Madde 24: is_debugger alanı (3 aşamalı onay)
  • Madde 25: Admin panel toggle
  • Madde 26: Görünürlük kontrolü
  • Madde 27: Otomatik kapanma
Migration Aşama 1 Onayı:
users tablosuna (tenant + central) is_debugger BOOLEAN DEFAULT FALSE alanı eklenmesi için migration oluşturmamı onaylıyor musunuz?
19 Şubat 2026 • Muzibu.com