Catatan teknis seputar web development, DevOps, dan integrasi AI.
1 artikel
Temuan QA sama muncul di dua modul admin: telepon non-digit diterima. Fix: satu validator backend, mirror frontend, satu kode error 400 INVALID_PHONE.
TL;DR: Jadi gini, kolom telepon di KotaPortal lolos dimasukin huruf karena validasi cuma ada di klien, backend-nya kosong melompong. Solusinya satu fungsi allowlist di backend sebagai sumber kebenaran, terus di-mirror ke TypeScript di frontend biar error muncul inline. Libphonenumber nggak dipakai karena kegedean buat kebutuhan cek format doang.