Qué cambió en Licitados
Historial pequeño pero honesto. Lo que sale a producción, lo que decidimos no hacer, los fixes que importan. Si te interesa solo recibirlo por mail, suscríbete al newsletter abajo.
- 27 de mayo de 2026Fix
Auth: rutas en español ahora van directo al subdominio Clerk
/iniciar-sesion, /login, /signin, /registro y similares redirigen a accounts.licitados.cl/sign-in (o /sign-up) en lugar de a /sign-in local que no existía y daba 404. También /blog y /blog/[slug] redirigen a /recursos preventivamente.
- 27 de mayo de 2026Fix
/dashboard/referidos ya no da 500 en la primera visita
El generate de código de referido llamaba revalidatePath durante el render del page, lo que en Next.js 15 lanza un error. Removido — el page es force-dynamic, no necesita revalidación manual.
- 27 de mayo de 2026Mejora
Historial de precios y similares activas: empty state explícito
Antes desaparecían sin avisar cuando el rubro no tenía adjudicaciones registradas o no había peers activos. Ahora muestran un mensaje claro y se renderizan también en licitaciones adjudicadas (post-mortem). Similares amplía el fallback sin filtro de monto si no hay coincidencias ±3x.
- 27 de mayo de 2026Mejora
Alertas: aviso de WhatsApp en el formulario aunque no esté verificado
Si tu número no está verificado, el form de Nueva alerta ahora muestra un link a tu perfil para activarlo, en vez de ocultar la opción silenciosamente.
- 27 de mayo de 2026Fix
Header de licitación: no más chips contradictorios
En licitaciones adjudicadas o cerradas dejamos de mostrar el chip de estado original ('Publicada') que contradecía al chip 'Cerrada' o 'Adjudicada'. Sólo el chip que aporta info.
- 27 de mayo de 2026Fix
Build roto del admin: <a> internos reemplazados por <Link>
Dos enlaces internos en /admin/pipeline usaban <a> en lugar de <Link>, lo que rompía el build de Next.js por la regla no-html-link-for-pages. Producción tenía 2 deploys en ERROR encadenados — corregido.
- 27 de mayo de 2026Feature
Historial de precios en licitaciones (Pro)
Muestra promedio, mínimo y máximo de adjudicaciones del mismo rubro en los últimos 365 días, debajo del timeline de postulación.
- 27 de mayo de 2026Feature
Convocatorias similares activas (Pro)
Hasta 5 licitaciones similares con filtro de monto ±3x. Visible para tenders activas y vencidas.
- 27 de mayo de 2026Feature
Canal WhatsApp en alertas
Activa alertas por WhatsApp desde el formulario de nueva alerta (requiere número verificado en tu perfil).
- 27 de mayo de 2026Fix
Rutas en español redirigen 301 a las canónicas
/precio → /pricing, /iniciar-sesion → /sign-in, /registro → /sign-up y similares. Mejora SEO y evita páginas duplicadas para usuarios que escriben URLs en español.
- 27 de mayo de 2026Fix
Filtro "Activas" excluye todos los estados terminados
En /buscar el filtro Activas ahora excluye correctamente licitaciones Suspendidas, Desiertas, Adjudicadas, Canceladas, Revocadas y Cerradas — antes podían colarse.
- 27 de mayo de 2026Fix
"Sin monto estimado" → "Monto no informado"; oculto en RFI y Consulta al Mercado
El texto era confuso. Además en tipos de licitación donde el monto no aplica (RFI, Consulta al Mercado) el campo se oculta completamente en lugar de mostrar un valor sin sentido.
- 27 de mayo de 2026Fix
Onboarding dock solo aparece en desktop
En mobile el dock tapaba el footer y los CTAs. Ahora está oculto en pantallas pequeñas y solo se muestra en md+.
- 27 de mayo de 2026Fix
Veredicto IA siempre devuelve score en Pro/Max
Con perfil completo pero sin Match pre-computado el botón quedaba vacío. Ahora hay un fallback local que calcula el score al momento.
- 15 de mayo de 2026Feature
Pricing con guard de plan activo
Si ya tienes Pro, la página /pricing deja de mostrarte botones de "Activar Pro" y los reemplaza por "Gestionar suscripción". También aparece un banner verde arriba indicando tu estado.
- 15 de mayo de 2026Feature
Newsletter público + cron semanal
Form en el footer para suscribirte sin cuenta. Cada lunes a las 9:30 sale un resumen con las 6 oportunidades abiertas con mayor monto y 4 cerradas como referencia. Cancelas con un click desde el footer del email.
- 15 de mayo de 2026Feature
WhatsApp Business directo desde el footer
Atajo de contacto rápido vía WhatsApp en lugar de obligar a usar el formulario o el email.
- 15 de mayo de 2026Mejora
Captcha Cloudflare Turnstile en /contacto y newsletter
Reemplazamos formsubmit.co por un endpoint propio que envía vía Resend y valida con Turnstile. Frena spam sin pedir captcha visual.
- 15 de mayo de 2026Mejora
IndexNow para indexación rápida
Cuando entra una licitación nueva al cron de ingest le avisamos a Bing y Yandex inmediatamente. Baja el tiempo de aparición en SERP de ~24h a <30min.
- 14 de mayo de 2026Fix
Búsqueda insensible a tildes
Habilitamos la extensión unaccent en Postgres. Buscar "limpieza" ahora encuentra resultados con "limpíeza" y viceversa.
- 14 de mayo de 2026Fix
Heatmap de regiones vacío + búsqueda multi-palabra
El heatmap del home volvió a poblarse correctamente y la búsqueda multi-palabra dejó de devolver 0 resultados cuando había matches obvios.
- 14 de mayo de 2026Feature
Contador de usos restantes de IA en plan Free
Antes era una sorpresa cuando se agotaban los 3 análisis del mes. Ahora se ve un contador con cuántos te quedan y un timing del análisis.
- 14 de mayo de 2026Feature
Admin: gestión de suscripciones + costo real de IA
Panel /admin con costo real de la API de IA por usuario y días restantes de cada suscripción.
- 13 de mayo de 2026Decisión
Precio Pro migrado a 1 UF/mes
Antes era $24.990 CLP fijo. Pasarlo a UF protege el ARR de la inflación sin pedirle al usuario re-aceptar precio cada año. UF/UTM se refrescan diariamente vía SBIF.
- 13 de mayo de 2026Feature
Perfiles SEO por organismo y oferente
Páginas estáticas para los 1.000 organismos más activos y los 2.000 oferentes con más adjudicaciones — quién compra, quién vende, en qué rubros.
- 12 de mayo de 2026Feature
AI análisis estructurado de bases (6 categorías)
Resumen, requisitos, riesgos, checklist, preguntas y dificultad — usando InteligencIA con cache de 30 días por código.