<ul><li><strong>CRITICAL FIX:</strong> getAllDeviceTypeWithDeviceManager() called getAllDeviceType() without required $status arg — Fatal ArgumentCountError breaking entire WebApp Notifications tab. Fixed with status=1.</li><li><strong>CRITICAL FIX:</strong> checkDeviceManager() called getActiveTermsAndConditionByType() with 2 args but requires 3 — Fatal error on Settings button click. Fixed with $status=1.</li><li><strong>HIGH FIX:</strong> Two more getAllDeviceType() calls missing $status arg (lines 389, 459). Fixed.</li><li><strong>HIGH FIX:</strong> storeDeviceSettings() — 8 request keys accessed without null guards. Added ?? guards.</li><li><strong>HIGH FIX:</strong> insert_update.php saveDefaultParkingTypeAction — undefined $r variable, null array access on $isexist[0][id]. Fixed.</li><li><strong>MEDIUM FIX:</strong> Notification.class.php lines 1465/1469/1472/1530 — null array access when $wwbnAccount is null. Fixed with ?? guards.</li><li><strong>LOW FIX:</strong> list_vehicles.php — bad DB query using undefined $newsmodid copied from news module removed.</li><li><strong>LOW FIX:</strong> list_parking_type.php, modals.php — $domainid and $siteid null guards added.</li><li><strong>SPEED/N+1 FIX:</strong> getAllMenuModules was firing 46+ queries per request. Added getAllNotificationWebsiteItemsBySitelink() bulk pre-cache. Now 1 query for all items.</li><li>CRUD VERIFIED: Tab1 46 groups loaded, checkbox AJAX working. Tab2 3 device cards rendering. All 5 AJAX endpoints return valid JSON. 0 JS errors, 0 network failures.</li></ul>