You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.5 KiB

Estado del Proyecto - Task Manager para WhatsApp

Funcionalidades Completadas

  • Infraestructura Principal
    • Servidor webhook con health checks
    • Dockerización y despliegue CapRover
    • Gestión de dependencias con Bun
  • Base de Datos
    • Modelo de tareas y asignaciones
    • Normalización de IDs de WhatsApp
    • Transacciones atómicas
  • Sincronización de Grupos
    • Cache de grupos activos
    • Sync periódico con Evolution API
  • Webhooks
    • Registro/verificación con Evolution API
    • Manejo básico de eventos (MESSAGES_UPSERT)
    • Normalización del nombre del evento del webhook (soporta MESSAGES_UPSERT/messages.upsert)
  • Cola de Respuestas
    • Persistencia en DB y envío real a Evolution API
    • Workers en background activos
  • Comandos
    • Detección de /tarea
    • Parser básico de acciones/fechas
  • Validaciones de Usuario
    • Integración completa de normalización y ensureUserExists en el flujo principal de mensajes
    • Tests de integración para validaciones de usuarios
  • Testing
    • Suite completa de tests unitarios
    • Todos los tests pasan (97 pass, 0 fail)
  • Aislamiento de Base de Datos en Pruebas
    • Uso de instancias en memoria para evitar conflictos entre tests

⚠️ Funcionalidades Pendientes

  • Gestión de Tareas
    • Completar persistencia de creación (añadir created_by y asignaciones)
    • Listar/completar/eliminar tareas
  • Cola de Respuestas
    • Reintentos con backoff y jitter
    • Recuperación de ítems en estado processing tras caídas
    • Métricas/observabilidad y limpieza/retención
  • Validaciones
    • Permisos de usuario no implementados
    • Verificación de pertenencia a grupos (si se requiere política estricta)
  • Comandos
    • Implementar /tarea mostrar y /tarea completar
  • Migraciones
    • Sistema de migraciones de esquema

➡️ Próximos Pasos Prioritarios

  1. Completar persistencia de tareas: created_by y asignaciones con ensureUserExists.
  2. Implementar comandos: /tarea mostrar y /tarea completar.
  3. Extender soporte de entrada: extendedTextMessage y captions de media.
  4. Mejoras de fiabilidad de la cola: reintentos con backoff y recuperación de processing.
  5. Métricas/observabilidad básicas y plan de migraciones de DB.

🔧 Archivos Clave a Modificar

  • src/services/response-queue.ts
  • src/services/command.ts
  • src/tasks/service.ts
  • src/server.ts

Commit history and status

  • Latest commit: All tests passing, infrastructure solid, ready for core logic implementation.