Hub

2026-05-28

jueves · 28 de mayo de 2026

Bitácora 2026-05-28

tareas-hijo — Fase 1 MVP cerrada (#184)

Sergio retomó tareas-hijo desde la laptop/WSL ("no tuve oportunidad de seguir en casa, ¿se puede seguir aquí?").

Hallazgo clave: el repo nunca había estado clonado en esta máquina y el bloque 4/4 hecho en la PC de casa nunca se pusheó (origin/main estaba en el bloque 3/4, 3a292fe). Surfaceé la disyuntiva; Sergio eligió rehacer el 4/4 aquí desde cero.

Hecho:

  • Clonado el repo en ~/code/tareas-hijo (WSL).
  • Reescrito el bloque 4/4 completo (auth liviano custom, sin mix phx.gen.auth): PIN con bcrypt, sesión por token SHA-256 en users_tokens, cookie "recordar dispositivo" 60d, UserAuth con plugs + on_mount por rol, login /login + logout, retiro de mocks en las 3 LiveViews, / redirige según sesión.
  • Resuelto el compile error que bloqueaba en casa: ambigüedad redirect/2/put_flash/3 entre Phoenix.LiveView y Phoenix.Controller → prefijo completo dentro de los on_mount.
  • Verificado: mix compile --warnings-as-errors limpio, mix test 5/5, 8 escenarios de auth E2E con curl.
  • Commit + push autorizado → origin/main en 6ea3575.

Pendiente lado Sergio: en la PC de casa, descartar el working tree divergente con git fetch && git reset --hard origin/main && git pull antes de tocar nada.

Siguiente: #185 (Fase 2 — Oban cron de generación diaria + live_upload + Tigris + galería de evidencias).

Modo coach OFF (yo edito/corro/valido). PINs dev en seed: papá 2468 / hijo 1234 — cambiar en prod.


Sesión nocturna — amadeus-control-retorno (GPS de retorno) + limpieza de electrosystems

Contexto: continuación del #391. Arrancó preguntando dónde vive el GPS real de la flotilla tras descubrir que el traccar2025 de orion estaba muerto.

Resuelto:

  • #396 — Sergio aclaró que hay un segundo host de VMs sin documentar (SSH alias ares, 192.168.3.2). Lo perfilé completo read-only: 2º hypervisor KVM (Ubuntu 20.04, dual Xeon X5675, 62 GiB, 3.6 TB), corre 5 VMs incl. el Traccar vivo. Documentado en electrosystems/servers/ares/ (README+findings) + INVENTORY.md. Corregí orion (su traccar = leftover de migración muerto, -incoming).
  • #398 — capturé los internals del Traccar vía tcpdump filtrado por MAC + curl: Traccar 6.6 en 201.218.172.10:8082 (IP pública; API REST alcanzable desde la LAN interna, emailEnabled:true), puerto dispositivos 5046 (Teltonika). Fundamentos del proyecto cerrados; próximo accionable = quick-win #392 (geofence+email en la UI de Traccar).
  • Limpieza electrosystems: revisé y commiteé en 5 grupos los cambios huérfanos que quedaron sin commit por sesiones no cerradas (migración ADFSA 05-07/08/20/21, capacidad RF L2L Telcel, oxidized groups + inventory-merger, dirs de host cpe-benito-juarez/laptop-ia/nagios/sw-villa-ahumada). Escaneado sin secretos. Todo pusheado al NAS.

Commits: 7 en electrosystems (push NAS), 4 en el hub (push GitHub). Ambos árboles limpios.

Siguiente: #392 quick-win en Traccar (necesita login admin de Sergio); luego bridge #393/#394 post-milestone de consumos. Y borrar la VM muerta de orion (#141).

telcel-capellina-lajunta — Prueba de ancho de banda para Telcel (CIR 500)

Telcel (vía Víctor Luna / ing. Medina) pidió prueba de ancho de banda del L2L Capellina↔La Junta. Sesión larga, varios giros:

Lectura RF de los 4 hops (read-only): se destrabó acceso provisionando la llave oxidized en 3 radios que faltaban (.165/.166/.136; .137 ya la tenía) — cerró #385 (los 8 ya estaban en router.db, faltaba la llave; redundancia T2 → nuevo #397). Capacidad: hop1 (72 km/7x) ~532 Mbps, hop2 (37 km/8x) ~609 → cuello = hop1 ~530.

Corrección de método: propuse "speed-test del airFiber" — error: el AF-11FX no lo tiene (es de airMAX); plano de datos hardware-offloaded. Throughput medido solo vía iperf end-to-end.

iperf con los 2 EdgeRouter X de Sergio (config aplicada a producción): reasignado vif 89 Capellina a 10.99.37.1/30, agregado en La Junta 10.99.37.2/30, Sergio puso VID 89 en pto 3 del Netonix La Junta .29. Ping 0% / RTT 1.4 ms. iperf: ~420 Mbps TCP limpio, pero limitado por la CPU de los ER-X (UDP a 560M colapsó: 88% CPU, 60% pérdida), no por el enlace → CIR 500 sin certificar. Margen de diseño ajustado: RF 532 PHY ≈ 480-505 útil vs 500.

Decisión: camino C mañana (revisar si el hop1 sube a MCS 8x / canal más ancho para ganar margen). Setup de prueba (vif 89 en ambos ER-X + VID 89 en pto 3 Netonix La Junta) dejado intacto para repetir con PC por sitio.

Entregables: texto de WhatsApp para Víctor (capacity ~530 + throughput ~420, sin CIR) + PDF de evidencia deliverables/telcel/capellina-lajunta/prueba-ancho-banda-2026-05-28.pdf.

Nota: electrosystems/servers/l2l-telcel-capellina-lajunta/findings.md actualizado en disco (sin commit; repo con otros cambios de Sergio). ER-X aún sin perfilar en electrosystems/servers/ — pendiente menor.