From 395bb31dc920bb57c422d3bfbee6f35058326f64 Mon Sep 17 00:00:00 2001 From: borja Date: Sun, 7 Sep 2025 01:52:12 +0200 Subject: [PATCH] =?UTF-8?q?docs:=20actualiza=20README.md=20y=20STATUS.md?= =?UTF-8?q?=20con=20estado=20actual=20y=20pr=C3=B3ximos=20pasos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: aider (openrouter/openai/gpt-5) --- README.md | 20 ++++++++++---------- STATUS.md | 6 +++--- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 4b99ef1..7045b22 100644 --- a/README.md +++ b/README.md @@ -84,7 +84,7 @@ Estado: la tabla response_queue ya está creada e incluida en los tests de DB. ## Flujo del worker continuo (MVP) - Se inicia al arrancar el servidor (desactivado en tests). - Ciclo: seleccionar hasta un pequeño batch de mensajes queued, marcar processing, enviar a Evolution API, marcar sent o failed según respuesta. -- Sin reintentos; logs mínimos y no sensibles. +- Reintentos con backoff exponencial + jitter y recuperación de processing; logging moderado. ## Limitaciones actuales - Sin orden garantizado por chat (pendiente serialización por destinatario). @@ -185,7 +185,7 @@ bun test ## 📅 Roadmap & Priorities (Updated Plan) ### MVP — Próximos pasos (prioridad actual) -1) Afinar recordatorios por DM (daily/weekly): encabezados, hora configurable y pequeños ajustes de formato. +1) Afinar recordatorios por DM (daily/weekly): hora configurable por usuario y pequeños ajustes de formato. 2) Refinar ContactsService: mejorar heurística de nombre, invalidación temprana en CHATS_UPDATE/CONTACTS_UPDATE, TTL configurable, robustez ante fallos, sin llamadas de red en tests. 3) Sincronización mínima de miembros: obtener y cachear miembros de grupos activos con TTL, uso no bloqueante; base para futuras validaciones/UX. 4) Ampliar test suite: actualización de nombres, sync de miembros y casos extremos de ResponseQueue. @@ -353,21 +353,21 @@ Este apartado documenta las decisiones de UX aprobadas para el MVP y su evoluci ### Mensajes: plantillas compactas - Confirmación al crear (DM al creador): - - ✅ 26 “*Acta de la reunión*” + - 📝 26 “*Acta de la reunión*” - 📅 12/09 - - 👥 sin dueño (Junta AMPA) — o — 👤 @Juan + - 🚫👤 sin dueño (Junta AMPA) — o — 👤 @Juan - DM a asignados: - - 🔔 Tarea 26 — 📅 12/09 + - 📬 Tarea 26 — 📅 12/09 - “*Acta de la reunión*” - Grupo: Junta AMPA - Completar: /t x 26 - Listado (enviado por DM): - Junta AMPA - 26) “*Acta…*” — 📅 12/09 — 👤 @Juan - - 27) “*Carteles fiesta*” — 📅 10/09 — 👥 sin dueño + - 27) “*Carteles fiesta*” — 📅 10/09 — 🚫👤 sin dueño - … y 3 más - Completar (feedback por DM): - - ✔️ 26 completada — “*Acta…*” + - ✅ 26 completada — “*Acta…*” - Gracias, Juan. ### Preferencias (MVP) @@ -377,10 +377,10 @@ Este apartado documenta las decisiones de UX aprobadas para el MVP y su evoluci ### Recordatorios - Resumen diario por DM (si el usuario eligió “diario”): - - Buenos días, Ana — hoy tienes 3 tareas: - - 26) “*Acta…*” — 12/09 — Junta AMPA + - ⏰ Recordatorio diario — hoy 12/09 + - 26) “*Acta…*” — 📅 12/09 — Junta AMPA - 31) “*Pagar comedor*” — hoy — Casa - - 33) “*…*” — 15/09 — Casa + - 33) “*…*” — 📅 15/09 — Casa - Completar: /t x - Un solo DM con secciones por comunidad para evitar múltiples mensajes. diff --git a/STATUS.md b/STATUS.md index cc967f2..1eb37ca 100644 --- a/STATUS.md +++ b/STATUS.md @@ -33,7 +33,7 @@ - **Contactos y Nombres** - Servicio `ContactsService` con caché en memoria (TTL) y actualización por webhooks (CONTACTS_UPDATE/CHATS_UPDATE); fallback a Evolution API para obtener nombres. Se usa para mostrar nombres en los textos (con fallback a números). En entorno de test evita llamadas de red para acelerar y aislar la suite. - **UX de Notificaciones** - - Confirmación por DM al creador siempre (en una sola línea con id y descripción) y DM a cada asignado (excluyendo al creador). + - Confirmación por DM al creador (encabezado: 📝 “desc”, con líneas de fecha 📅 y dueño 🚫👤/👤) y DM a cada asignado (📬, excluye al creador); fechas vencidas marcadas con ⚠️. - Notificación opcional al grupo controlada por `NOTIFY_GROUP_ON_CREATE` (false por defecto), incluyendo menciones para visibilidad. - Política solo DM: el bot no publica respuestas en grupos; todos los mensajes de salida se envían por DM al autor (salvo la notificación opcional anterior). - **Validaciones de Usuario** @@ -59,7 +59,7 @@ - Refinar políticas de caché (TTL, invalidación) y ampliar compatibilidad de endpoints; en DM, WhatsApp no pinta chips de mención de terceros (limitación del cliente). ## ➡️ Próximos Pasos Prioritarios -1. Afinar recordatorios por DM (daily/weekly): encabezados, hora configurable y pequeños ajustes de formato. +1. Afinar recordatorios por DM (daily/weekly): hora configurable por usuario y pequeños ajustes de formato. 2. Refinar ContactsService (caché/nombres; TTL configurable; robustez ante fallos; sin red en tests). 3. Sincronización mínima de miembros (cacheada; no bloqueante). 4. Ampliar test suite (contactos, sync de miembros, ResponseQueue). @@ -84,7 +84,7 @@ ## ▶️ Para continuar ahora Propuesta inmediata: -- Recordatorios diarios por DM (opt-in daily|off; hora fija local; resumen compacto). +- Afinar recordatorios por DM (daily/weekly): hora configurable por usuario; encabezados ⏰ y formato de mensajes ya actualizados. - Refinar ContactsService (caché y nombres; TTL configurable; robustez ante fallos; sin red en tests). - Sincronización mínima de miembros (cacheada; no bloqueante). - Ampliar test suite (recordatorios, contactos, sync de miembros, ResponseQueue).