Producción Enterprise en Render
V26 usa PostgreSQL como base principal, Key Value/Redis para coordinación y conserva el disco persistente para medios y sesiones WhatsApp QR heredadas.
Arquitectura de producción
- Web Worktic AI en Docker.
- PostgreSQL administrado como base principal del SaaS.
- Render Key Value/Redis para rate limiting y coordinación.
- Disco persistente para
/var/data/uploads, backups temporales y stores QR. - Workers y runtimes de canales con interruptores independientes.
Variables mínimas
BASE_URL=https://app.tudominio.com
DATABASE_DRIVER=postgres
DATABASE_URL=<Render PostgreSQL connectionString>
REDIS_URL=<Render Key Value connectionString>
REDIS_REQUIRED=true
CHANNEL_ENCRYPTION_KEY=<CONSERVAR LA CLAVE EXISTENTE>
LEGACY_WHATSAPP_DRIVER=sqlite
LEGACY_WHATSAPP_DSN=file:/var/data/worktic.db?_pragma=foreign_keys(1)&_pragma=busy_timeout(5000)
BACKGROUND_WORKERS_ENABLED=true
CHANNEL_RUNTIMES_ENABLED=true
MAINTENANCE_MODE=false
TRUST_PROXY=trueEndpoints de salud
GET/healthz
GET/readyz
Migración desde SQLite
El corte V26 se hace en mantenimiento: backup consistente del disco, worktic-migrate --dry-run, migración real a PostgreSQL, verificación de conteos y reapertura. La base SQLite anterior no se elimina porque puede seguir conteniendo los stores de WhatsApp QR heredados.
No cambies CHANNEL_ENCRYPTION_KEYLa clave actual cifra credenciales de canales. Debe conservarse exactamente durante el salto a V26.
Seguridad V26
- Contraseñas nuevas con Argon2id y rehash automático de formatos heredados.
- Sesiones persistidas como hash; después del corte todos inician sesión nuevamente.
- Rate limiting, headers de seguridad, request IDs y auditoría.
- Webhooks de automatización solo HTTPS, con protección SSRF.
- Sin credenciales administrativas hardcodeadas.
