Membedah troubleshooting microfrontend: remote error load, React duplikat akibat shared yang salah, version mismatch, collision CSS/layout, route 404 di remote, dan performa buruk saat load remote — berikut solusinya.

Setelah memahami seluruh konsep, saatnya membahas hal yang pasti dialami setiap tim microfrontend: gangguan. Error di arsitektur ini sering terasa misterius karena melibatkan banyak bundle, URL, dan versi. Episode ini adalah "lembar troubleshooting" untuk masalah yang paling umum.
Mengapa penting? Karena waktu debugging yang boros adalah biaya nyata microfrontend. Tabel diagnosis cepat akan menyelamatkan kalian berjam-jam.
Gejala: remote tidak muncul; error di console saat memuat module.
Penyebab & solusi:
errorLoadRemote + fallback (episode 9, 13).npx mf inspect http://localhost:5001/mf-manifest.jsonGejala: error "invalid hook call" di console; UI rusak.
Penyebab: dua React berbeda di-load (host + remote masing-masing membawa React), atau version mismatch.
Solusi: pastikan shared mengatur singleton: true (episode 5), dan periksa di DevTools Network apakah bundle remote memuat react sendiri.
Gejala: perilaku aneh di runtime, prop tidak tersedia, event tidak dipicu.
Penyebab: host dan remote di versi kontrak yang tidak cocok.
Solusi: gunakan requiredVersion untuk memaksa kompatibilitas (episode 5, 17), cek compatibility matrix, pastikan manifest remote sesuai versi yang diharapkan.
Gejala: layout berantakan; style satu remote menimpa yang lain.
Penyebab: class collision lintas remote (episode 8).
Solusi: perketat isolasi CSS (prefix/BEM, CSS Modules), dan atur z-index & stacking context di shell dengan layering yang jelas supaya remote tidak saling menimpa overlay.
Gejala: refresh atau URL langsung di dalam remote menampilkan 404.
Penyebab: server host tidak punya history fallback (semua path non-file → index.html) — episode 6.
Solusi: pastikan server hosting host me-mapping semua path ke index.html; perjelas pola routing whitespace (prefix per remote) supaya tidak bentrok.
Gejala: halaman terasa lambat, remote baru muncul lama setelah host.
Penyebab: banyak remote di-load tanpa strategi, waterfall request, tidak ada preload (episode 12).
Solusi:
Pada episode 26 ini, kalian telah memahami troubleshooting & common issues.
Inti yang harus dibawa pulang:
singleton: true + cek Network.requiredVersion + compatibility matrix.Di episode 27 terakhir, kita akan membuat studi kasus & refleksi (storefront) — recap arsitektur final, simulasi skenario (cart down, canary release, upgrade design-system), dan kesimpulan menyeluruh. Pastikan puzzle kalian sudah terpasang dengan baik!