Autor
Segunda Vuelta Presidencial Perú 2026 — explorador interactivo de datos públicos
Este explorador nació como una extensión natural del trabajo de primera vuelta: tomar los resultados de la segunda vuelta presidencial del 7 de junio de 2026 y construir vistas interactivas desde cero — usando Copilot CLI como co-piloto para diseñar el esquema, escribir el importer cron-able, la capa de repositorios y el drill-down geográfico completo (continente → país → departamento → provincia → distrito).
"Lo que antes requería días de configuración manual, Copilot CLI lo convirtió en una sesión de iteración continua: schema, queries, vistas, seguridad — todo en conversación."
🗳️ La motivación: datos contra la duda
En una segunda vuelta donde la conversación pública suele polarizarse antes de que los datos sean definitivos, poner los resultados al alcance de todos reduce el ruido y fortalece la confianza. Con ~92 000 mesas repartidas en todo el Perú y el exterior, el fraude no tiene dónde esconderse.
"Si los datos de ONPE son públicos, cualquier ciudadano debe poder explorarlos, filtrarlos y verificarlos por sí mismo — mesa por mesa, acta por acta."
El scraper onpe-scraper-2026-2 corre en GitHub Actions cada 5 minutos durante el escrutinio y publica los archivos de datos como fuente de verdad. Este explorador los consume en tiempo real a través de un importer cron-able que se detiene automáticamente cuando el 100 % de las mesas quedan contabilizadas. La mejor respuesta a la desconfianza es la accesibilidad de los hechos.
🎯 Cómo se construyó
-
Diseño del schema y pipeline de datos
Copilot CLI analizó el output del scraper y diseñó un schema relacional normalizado con claves compuestas — todo listo para importaciones idempotentes que pueden repetirse sin duplicar ni corromper datos.
MySQLSchemaPSR-4 -
Sincronización automática con parada inteligente
Un proceso cron consume la fuente pública del scraper cada 5 minutos durante el escrutinio. Cuando detecta que el conteo está al 100 %, cierra el acceso de escritura de forma permanente sin intervención manual.
CronGitHub ActionsAuto-stop -
Drill-down geográfico completo
Los filtros en cascada (continente → país → departamento → provincia) resuelven correctamente tanto mesas domésticas como del exterior, con toda la lógica de normalización geográfica manejada en la capa de repositorio.
Geo drill-downPDORepositorio -
Auditoría de seguridad pre-launch
Copilot CLI corrió un agente de revisión de seguridad antes de cada deploy. Se identificaron y corrigieron vulnerabilidades potenciales antes de que el sitio fuera accesible al público.
Security auditPre-launchZero known issues
🔒 Protecciones de seguridad
El sitio es de solo lectura para el público. El único acceso de escritura existe durante el período de escrutinio y requiere autenticación. Una vez finalizado el conteo, ese acceso queda cerrado permanentemente.
🔧 Stack técnico
- Backend: PHP 8.2 · MySQL 8 · Arquitectura repositorio PSR-4 (sin framework)
- Frontend: HTML + CSS custom (variables) · JavaScript vanilla · cascada de filtros
- Datos: GitHub Actions scraper → pipeline de ingesta → MySQL → API JSON
- Herramientas: VS Code · GitHub Copilot CLI (modo agente)
- Hosting: IONOS shared hosting · cron cada 5 min
📂 Fuente de datos
Los datos provienen de la web oficial de la ONPE (Oficina Nacional de Procesos Electorales) del Perú, extraídos con el scraper open-source onpe-scraper-2026-2. Esta aplicación no está afiliada ni patrocinada por ONPE. Los datos son de dominio público conforme a la legislación peruana de transparencia.