RBN Core - Framework v0.9.7 76 belge

Core/Services — iş servisleri, güvenlik kapıları, hata yönetimi, master ve CLI (81 dosya)

Doğrulanan kod tabanı: c23b431f (dal feat/fw-license-master) · Tarih: 2026-10-05 · Yayın: 0.9.7 = bu commit + sonrası; belge yalnız doğrulama anındaki kodu anlatır
Kaynak klasör: Core/Services/ — 81 *.php.
Envanter: 81 dosyanın 81'i anlatıldı (0 + 29 + 13 + 13 + 5 + 7 + 14).
Doğrulama platformu: Windows + PHP 8.3, gerçek Paths::init ile servis/handler/manager çözümlemeleri çalıştırıldı.

1. Ne işe yarar, kim kullanır

Bu klasör framework'ün "yapan" katmanıdır. Core/System ne olduğunu
bulur, Core/Base nasıl bağlandığını yönetir, Core/Render ne gösterir;
Core/Services ise işi yürütür: isteği denetler (Gatekeepers), hatayı
çevirir (Exception), ayarı okur/yazar (System), lisansı doğrular (Master),
cron'u çalıştırır (Console), cPanel'e bağlanır (Hosting).

Kimler çağırır: Kernel aşamaları (ShieldSentinel, DatabaseGuardStage,
ComponentRegistry), Core/Routes (Route::run), tüm controller'lar
(service('settings'), service('ipGuard')), CLI (php rbn), cron.

2. Alt dallar ve belgeleri

Klasör *.php Belge Kısa görev
(kök) 0 — Core/Services/ kökünde *.php yoktur (RbnCli Console/ altındadır)
Console/ 29 Console/README.md CLI komutları, cron kervanı, migration, temizlik işleri
Exception/ 13 Exception.md Hata analizi, günlükleme, kullanıcı/developer çıktısı
Gatekeepers/ 13 Gatekeepers.md IP/bakım/veritabanı kapıları, WAF, GeoIP
Hosting/ 5 Hosting.md cPanel API köprüsü, e-posta ve alan adı uçları
Master/ 7 Master.md Lisans doğrulama, proje/ayar/uygulama yönetimi
System/ 14 System.md Ayar servisi, oturum/kullanıcı, CDN, modül, iletişim
Toplam 81 Get-ChildItem Core/Services -Recurse -Filter *.php = 81 (0+29+13+13+5+7+14)

3. Kök dosya — RbnCli (1/1)

Dosya Görev Önemli public yöntemler
Console/RbnCli.php (135) CLI giriş noktası. Kayıt haritasından komutları keşfeder, argv'yi ayrıştırır, komutu çalıştırır. __construct(), run(array $argv): void, listCommands(): void · korumalı: discoverCommands(): void

(Not: bu dosya Console/ altındadır; Core/Services/ kökünde *.php yoktur.
Yukarıdaki tablo "kök" için yanıltıcı olmasın diye düzeltildi: tüm 81 dosya
alt dallarda dağılmıştır, RbnCli dahil.)

4. Kayıt haritası — SystemLogicMapTrait (ölçülen)

Core/System/Registries/RegistryMap/SystemLogicMapTrait.php:19:

Tür Core/Services kayıtları
managers (4) cron→Console\Managers\CronManager, task→TaskManager, user→System\Managers\UserManager, session→SessionManager
services (16) rbncli, cron, base.taskLog, masterProjects, masterSettings, masterLicences, masterApplications, settings, settingsApi, cdn, module, communication, base.project, bootSentinel, shieldSettings, ipGuard, systemGuard, databaseGuard, exception, cpanel
handlers (16) cronScheduler, cronNotification, ipGuard, rateLimit, systemGuard, databaseGuard, geoIP, errorAnalysis, log, exception, settings, cdn, cpanelMail, cpanelDomains
resolvers (2) cron→Console\Handlers\Resolvers\CronResolver, task→TaskResolver
jobs (3) cleanup, cleanup.server, cleanup.project

4.1 Ölçülen çözümleme tablosu (21 çağrı)

İstek Çözülen sınıf
service('ipGuard') Gatekeepers\IpGuardService
service('systemGuard') Gatekeepers\SystemGuardService
service('databaseGuard') Gatekeepers\DatabaseGuardService
service('shieldSettings') Gatekeepers\ShieldSettingsService
service('bootSentinel') Gatekeepers\BootSentinel
service('exception') Exception\ExceptionService
service('settings') System\SettingsService
service('masterLicences') Master\MasterLicencesService
service('module') System\ModuleService
service('cdn') System\CdnService
service('communication') System\CommunicationService
service('cpanel') Hosting\CPanelService
service('rbncli') Console\RbnCli
service('cron') Console\Services\CronService
manager('session') System\Managers\SessionManager
manager('user') System\Managers\UserManager
manager('cron') Console\Managers\CronManager
manager('task') Console\Managers\TaskManager
handler('geoIP') Gatekeepers\Handlers\GeoIPHandler
handler('ipGuard'/'rateLimit'/'systemGuard'/'databaseGuard') eşleşen Gatekeepers\Handlers\*
handler('settings'/'cdn'/'cpanelMail'/'cpanelDomains') eşleşen System\Handlers\*, Hosting\Handlers\*
handler('errorAnalysis'/'log'/'exception') eşleşen Exception\Handlers\*
handler('cronScheduler'/'cronNotification') eşleşen Console\Handlers\*
resolver('cron'/'task') eşleşen Console\Handlers\Resolvers\*
job('cleanup'/'cleanup.server'/'cleanup.project') eşleşen Console\Jobs\*

Bulgu (yeni, handler('seo') gibi): SystemLogicMapTrait.php:114
'seo' => 'Core\Render\Handlers\Seo\SeoHandler' kayıtlı; ölçüldü: NULL
döner (dizin/sınıf yok). Ayrıntı:
Core/Render/README.md §4, acik-sorular §1.7.

5. Örnek (gerçek koddan)

// Core/Services/Console/Managers/CronManager.php:16-18 (mimari kural, yorum)
 * 1. Tüm zamanlama, gün, saat ve kota kontrolleri TEK MERKEZDE ($this) yapılır.
 * 2. Görev alt katmanlarda (Builder/AutoTaskManager) saçma sapan kontrollerle yarıda KESİLEMEZ.
 * 3. DB tek gerçek kaynaktır.
// Ölçülen çıktı — CliManager proje bağlamı anahtarı
// CliManager::switchProject('<proje>')              => true
// CliManager::getActiveProjectKey()                 => '<proje>'
// CliManager::runInProject('<proje>', fn($k)=>$k)    => '<proje>'   (finally ile geri alındı)

6. İlgili belgeler