# Quality Risks **Data analizy:** 2026-05-19 ## Status Radaru - `codebase-memory-mcp`: częściowo ok. Indeks został utworzony, a architektura grafu zwróciła podsumowanie, ale szerokie `search_graph` i `index_status` timeoutowały na dużym repozytorium. - `jscpd`: disabled by policy (`quality_radar.tools.jscpd: false`). - `ast-grep`: disabled by policy (`quality_radar.tools.ast_grep: false`). - Fallback: użyto zawężonych skanów `rg` i odczytu konkretnych plików. ## Najważniejsze Ryzyka **Brak child theme:** - W `wp-content/themes/` widać `betheme` oraz motywy domyślne WordPress, ale nie widać child theme. - Ryzyko: zmiany w `wp-content/themes/betheme/` mogą zostać nadpisane przy aktualizacji motywu. **Custom plugin checkout jest mały, ale krytyczny:** - `wp-content/plugins/ws-inpost-map/App/WsInpostActions.php` dotyka checkoutu, shipping methods i order meta. - `wp-content/plugins/ws-inpost-map/App/WSInpostSettings.php` jest duży i łączy kilka odpowiedzialności. - `wp-content/plugins/ws-inpost-map/App/Assets.php` ładuje assety frontendowe globalnie przez `wp_enqueue_scripts`. **Wiele pluginów dotyka checkoutu:** - `wp-content/plugins/flexible-checkout-fields/` - `wp-content/plugins/woo-checkout-field-editor-pro/` - `wp-content/plugins/woocommerce-checkout-manager/` - `wp-content/plugins/ws-inpost-map/` **Wiele pluginów dotyka tracking/konwersji:** - `wp-content/plugins/duracelltomi-google-tag-manager/` - `wp-content/plugins/pixelyoursite/` - `wp-content/plugins/official-facebook-pixel/` - `wp-content/plugins/facebook-for-woocommerce/` - `wp-content/plugins/google-site-kit/` **Debug w konfiguracji:** - `wp-config.php` zawiera `WP_DEBUG` ustawione na `true`; trzeba potwierdzić, czy tak ma być na środowisku docelowym. **Vendor-heavy repo:** - Repo zawiera dziesiątki tysięcy plików PHP i pełne pluginy vendorowe. - Szerokie skany generują dużo szumu; planowanie powinno zaczynać od zawężenia do custom pluginu, aktywnego motywu i integracji dotkniętych zmianą. ## Dług Techniczny / Kandydaci Do Porządkowania - Wydzielić child theme, jeśli projekt wymaga zmian w warstwie motywu. - Ograniczyć ładowanie assetów `ws-inpost-map` tylko do checkoutu, jeśli nie są potrzebne globalnie. - Rozważyć rozbicie `WSInpostSettings.php` na definicje pól, rendering i zapis/validację. - Dodać projektowy test/manual checklist dla checkoutu i InPost. ## Znane False Positives / Akceptowane Ryzyka - Duplikaty i duże pliki w vendorowych pluginach są oczekiwane i nie powinny automatycznie prowadzić do refaktoryzacji. - Motywy `twentytwenty*` mogą być nieaktywne; pozostają w repo jako standardowe motywy WordPress. - Brak pełnej informacji z bazy oznacza, że "zainstalowany" nie znaczy "aktywny". ## Plan Scan: InPost Pay `wp_body_open` Na Podstronach WooCommerce **Data analizy:** 2026-05-21 - Istnieja dwa frontendowe naglowki Betheme dla normalnych stron i sklepu: `header.php` oraz `header-shop.php`. - Ryzyko duplikacji poprawki: naprawa tylko w `header.php` nie obejmuje WooCommerce, bo `woocommerce.php` i szablony produktowe moga ladowac `header-shop.php`. - Ryzyko aktualizacji motywu pozostaje: brak child theme oznacza, ze zmiana w `wp-content/themes/betheme/header-shop.php` moze zostac nadpisana przy aktualizacji Betheme. - Deferred: nie tworzymy child theme w tym hotfixie, bo celem jest szybkie przywrocenie kompatybilnosci `wp_body_open` dla podstron sklepu.