274 Commits (47a7def7c153805f7b9afbaa776d8537aa9970a3)

Author SHA1 Message Date
brobert 3428fe930a feat: maneja comandos desconocidos con encabezado emoji y ayuda rápida
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert b8979b8205 feat: agregar help centralizado y tests de contenido
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert b19336659c feat: agregar funciones code, section y bullets y pruebas
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert e2f0186cfe feat: ejecutar reconciliación de alias al arranque
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert 182c976697 feat: resolver alias y dígitos en ResponseQueue; reconciliación
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert c31ca200c6 feat: evita que @lid o más de 15 dígitos sean plausibles
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert 07bfa0f419 feat: alinea copy A3/A4 a activar y añade tests; actualiza env y docs
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert b9252f4c49 feat: implementar flujo A4 de onboarding con DM JIT y activar
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert 64096e93be feat: añadir onboarding A3 en group-sync.ts y .env.example
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert 7033c6149f feat: añade onboarding A3 con onboarding_prompted_at y encolado
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert 8b1af56764 feat: añadir fallback numérico y métricas en CommandService (A2)
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert d25efb097c feat: añadir métricas con labels y calcular alias_coverage_ratio
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
brobert 06c4a0619d feat: rediseño de TaskItem, añade completar y lista 24h
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 3a161e2821 feat: mostrar siempre la URL ICS usando token_plain y migración
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 331b21ec71 fix: añadir fallback de migraciones y export de crypto
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 73ae69892f feat: añadir migración calendar-tokens y servicio ICS de tokens
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 689e030a83 feat: agregar /admin allow all para habilitar pendientes de grupos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 90771eb34a fix: usar dígitos del jid como fallback al normalizar WhatsApp ID
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert bd0fda2248 fix: endurece GroupSyncService y activa métricas en tests web-login
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 6082574a52 chore: silenciar logs del migrador en test para reducir ruido
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert c8c4fdd927 feat: añadir soporte para /t web con tokens de login y util crypto
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert f6672ec52b feat: agrega migración v10 para web_tokens y web_sessions
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 3d6c446547 feat: dar prioridad a DB_PATH sobre DATA_DIR en la BD SQLite
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja e647ad7c3a feat: añadir DATA_DIR para DB compartida y configurar Bun workspaces
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 3039af3a43 fix: evitar duplicar recordatorio diario, filtrar por grupos y limitar a 10
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja cae5a7f1f6 feat: implementar ventana de gracia para recordatorios y métricas
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 275f5adfde feat: validar y normalizar fechas explícitas (YYYY-MM-DD y YY-MM-DD)
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja b39ca2041a fix: corregir texto del footer para usar 'responsable'
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 1635d0af17 fix: actualizar encabezado de lista de tareas activas
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja cdcc5091cb feat: añade pie de página con instrucción para ver tareas sin dueño
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja c912ee362e feat: añadir /admin ver todos para listar tareas activas globales
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert cd453afbce feat: exponer group_sync_seconds_until_next y adaptar tests
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert a5eedb5c7f fix: usar '' como fallback para community_id al insertar grupos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 4dfac4a6e7 fix: reiniciar db AllowedGroups tras discovery y quitar retorno
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 228f2d40a2 feat: habilitar sync multicomunidad y persistir nombres de grupos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 46d172fc12 feat: permitir forzar sync de grupos y completar labels faltantes
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert abfa9b73a7 feat: añadir alias para comandos de admin y actualizar tests
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 95abc8d025 fix: alinear dbInstance de AllowedGroups con la del servidor antes del seed
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja ad26dd5175 feat: guarda label en allowed_groups y actualiza en upsertGroups
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 662c335824 feat: instrumentar métricas de allowed_groups, admin, commands y sync
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja df8f8a7096 feat: sembrar ALLOWED_GROUPS desde env y exponer métricas en /metrics
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja bf46976b1c fix: limpiar caché de AllowedGroups al activar gating por grupos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 78efc857bc feat: mostrar resumen '… y N más' en recordatorios cuando hay tope
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja db9f71abaa feat: aplicar gating por AllowedGroups en tareas y recordatorios
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja c51cb3f124 feat: notifica a ADMIN_USERS al descubrir grupos (modo discover)
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja adad0a0609 refactor: normalizar IDs de WhatsApp eliminando dominio y separador
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 7308c73a79 fix: normalizar ID de WhatsApp para usuarios y grupos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja ae0a853b63 feat: agrega AdminService y comandos /admin con bypass del gating
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 302ba6daa8 feat: aplicar gating en syncMembersForActiveGroups y añadir pruebas
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 37db7b283d fix: asegurar grupo existente en DB; actualizar prueba de gating
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja d747e7aa4b feat: activar gating de grupos en CommandService y GroupSyncService
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja a03604d293 feat: implementar gating de grupos en server en modo enforce
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja c7c0491200 feat: implementar descubrimiento de grupos desconocidos (discover)
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja 0fa985c145 feat: añadir migración v9_allowed_groups y servicio AllowedGroups
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 8b701e9435 feat: mostrar id de tarea al quedar sin responsable
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 9d3636b828 fix: corregir errores de sintaxis y alcance en CommandService
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 0e90dbfa0f fix: eliminar línea innecesaria y alinear sangría en CommandService
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 6031207c6f fix: usar resolvedId en respuestas y añadir display_code en tareas
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 133d7670fb feat: añade display_code global para tareas, con migración y render
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 4a8523746e mejora más la ayuda, buen punto al que volver si algo falla más adelante. Aquí funciona de to 10 months ago
brobert 7c66dac01d afina ayuda. está en un buen punto donde funciona todo, pendiente de hacer cambios para autojoin a grupos 10 months ago
brobert 670a2488c3 fix: filtrar IDs numéricos en mentioned al resolver alias
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 3d9f044f34 feat: añadir caché en memoria para alias y resolver solo IDs numéricos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 9b57662a6b feat: permitir múltiples IDs en /t x y /t tomar (espacios o comas; máx 10)
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert ac0c5ff064 fix: resolver ids de usuarios con IdentityService al devolver resultados
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 0e07efd155 feat: resolver alias de IDs de miembros durante la sincronización de grupos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 029a632e9d feat: añadir scheduler de grupos y arrancarlo al iniciar el servicio
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 098e135b11 feat: añadir modo weekdays en recordatorios con hora configurable
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert a8448fa4dd fix: usar MAX_MEMBERS_SNAPSHOT_AGE_MS y snapshot_fresh para last_sync_ok
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 753e0688ec fix: calcular last_sync_ok usando métrica o fallback a lv
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert e526707bf7 fix: omitir CHATBOT_PHONE_NUMBER en la validación de entorno
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 48c031441b fix: quitar autocorrección de URL interna y permitir Docker en producción
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert 67caca8b26 feat: añadir IdentityService para mapear alias a números
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
brobert f4b0e4433e fix: priorizar participantAlt para sender JID en grupos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
10 months ago
borja bae6678a0e fix: ignorar mensajes de grupos inactivos en modo test
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 0d29200dd7 feat: asegurar grupo al instante y sincronizar miembros ante eventos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja e8e319afb0 afina algunos formatos de mensajes, a ver si no petan los tests 11 months ago
borja 12d18322ff refactor: quitar cursivas de descripciones y añadir saltos entre grupos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja fe5a8d29cb feat: aplicar codeId y monoespacio en listados, ayudas y mensajes
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 60ed92970b refactor: reemplazar ackParts por ackLines y usar codeId en mensajes
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja b4f6d525e1 fix: usar id directo y formatear con ) en listado de tareas
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 3824c6c6c9 fix: usar codeId para IDs en listados, acuse y completado
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja ac158416a5 fix: usar id en completada y generar ack en formato compacto
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 135fee7773 feat: actualizar guía rápida y formato de mensajes de tarea completada
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja ca09b82390 fix: adaptar formato de respuestas al modo compacto
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 0401f1661c fix: estandarizar mensajes de tarea con codeId(id) y texto de estado
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 05952efbf3 feat: añadir formatting.ts para IDs 4 dígitos y fechas
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 8983cfa453 feat: añade métricas, health detallada, mantenimiento y tests
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja b686d20caa refactor: activar FK, eliminar baseline y log persistente de migraciones
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja a34739d5ed feat: añadir alias para ver todos y mapear alcance en comandos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 845fb86f57 fix: ajustar ver todos para mostrar sin responsable por grupo
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja de544c42de feat: agregar verificación de membresía y filtrado por snapshot
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja e11978663d fix: quitar bypass de rate limit en pruebas de GroupSync
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja c306b2a762 fix: usar process.env en GroupSync y mejorar parseo de participantes
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja a092a25234 feat: agregar sincronización de miembros con Evolution API y webhooks
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 61add46ede feat: crear tabla group_members y reconciliar miembros de grupos
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja bdba776b5c feat: activar WAL en SQLite y actualizar STATUS.md y .gitignore
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja bff4c99876 feat: hacer dinámico el mensaje del límite por minuto y README
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 21e01c7470 fix: ajustar formato del mensaje de tarea completada
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago
borja 3b41c01360 fix: cambiar 'dueño' a 'responsable' y quitar comillas en descripciones
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
11 months ago