2026-06-01 — Sesión tareas-hijo: migración Fly→val-soft CERRADA ✅
Resumen cross-project
tareas-hijo (#HIJ-006): migración de Fly.io a val-soft completada y en producción.
Qué se logró (sesión background larga)
Fases completadas:
- Fase A (infra): rol+DB en Postgres 16 local, usuario
tareas-hijo, directorios/var/lib/tareas-hijo/{fotos,tzdata}. - Fase B (código): storage Tigris→disco local (token firmado 7d), fix tzdata (
data_direscribible), 88 tests verdes, 3 commits enorigin/main. - Fase C (deploy): systemd hardened, EnvironmentFile secrets 600, release Docker→tarball desplegado.
- Reverse-proxy: nginx
.14con cert Let's Encrypt (expira 2026-08-30, autorenovación); HTTPS/WebSocket/LiveView OK. - Datos: sembrados frescos via nueva función
Release.seed/0(papá+Leonardo+4 tareas por envsPIN_PAPA/PIN_LEONARDO). - E2E: login papá/hijo verificado, panel renderiza tareas, PIN incorrecto rebota.
- Fly: destruido (
tareas-hijo+ DB) — cero costo, val-soft es única fuente.
Código comiteado:
sevaor/tareas-hijomain:3f560f5(release.exseed/0)- Hub:
36b2526(cierre #HIJ-006),e0ab3aa(seed+E2E),4f7e5e1(proxy),b0c29e3(CI task)
Gotcha resuelto + memorizado:
bin/<app> eval|rpc de releases Elixir truena con code_server badarg (enmascarado por crash logger) si el cwd no es accesible por el user. Fix: cd /opt/<app>/bin antes de eval. No era bcrypt, escaping ni Code.eval_file. Documentado en memory reutilizable.
Pendiente diferido (no bloquea):
- #HIJ-007 CI automático — runner Docker que corra build+deploy en push a main. Hoy manual; tentativa viernes 2026-06-05.
Notas operacionales
- val-soft (192.168.20.8):
systemctl is-active tareas-hijo= active + enabled;https://tareas.val-soft.com/login→ 200. - Runbook completo en
code/tareas-hijo/deploy/README.md. - PINs de esta sesión quedaron visibles en terminal; cambiarlos es trivial ahora (eval con
cdfunciona).
Próximos pasos
- E2E real con Leonardo (navegador, subir foto, validar).
- CI automático (semana próxima).
- Evolución continua (#HIJ-005 sin fecha fija).
Sesión: Opus 4.8 + background isolation (worktrees).