# Guía de Estilo de Mensajes para WhatsApp (Help v2)

Objetivo: mensajes claros, consistentes y resistentes a cambios menores de copy.

Principios
- Responder por DM: incluso si el comando viene de un grupo, las respuestas al usuario llegan por privado. Nota: en modo gating estricto (GROUP_GATING_MODE='enforce') el bot puede no responder en grupos no permitidos.
- Estructura visual reconocible:
  - Secciones en negrita y MAYÚSCULAS: `*COMANDOS BÁSICOS*`.
  - Comandos e IDs en monoespaciado (backticks).
  - Listas con “- ” por línea.
  - Notas en cursiva.
- Brevedad y accionabilidad: priorizar ejemplos cortos y CTAs (“Prueba `/t ayuda`”, “Envía `/t web`”).
- Estabilidad para tests: evitar asserts por igualdad exacta; preferir substrings semánticos.

Componentes de formato
- Encabezados de sección:
  - Patrón: `*${TÍTULO EN MAYÚSCULAS}*`
  - Ej.: `*COMANDOS BÁSICOS*`
- Comandos:
  - Siempre en backticks: `` `/t ver mis` ``
- IDs:
  - Mostrar con 4 dígitos entre backticks: `` `0026` `` (usar `codeId()`).
- Fechas:
  - Mostrar como `DD/MM`, precedidas de icono si aplica (ej.: `⚠️` si vencida). Usar `formatDDMM()`.
- Notas:
  - En cursiva: `_Este grupo no está activo._`
- Bullets:
  - “- ” al inicio de cada línea. Evitar listas demasiado largas (>10).

Emojis recurrentes
- ⚠️ Advertencia (vencida, no encontrado, truncado).
- ✅ Confirmación genérica.
- 📅 Fecha (según `ICONS.date`).
- 👤 / 👥 Responsables (uno o varios).
- ➕ Crear, ✔️ Completar, 🧲/✋ Tomar/Soltar (según `ICONS` disponibles).
- Evitar exceso: 1–2 por línea como máximo.

Patrones comunes
- Confirmación de creación:
  - Línea 1: icono + ID + descripción
  - Línea 2: fecha (si existe)
  - Línea 3: responsable(s) o “sin responsable”
- Listados:
  - Título (nombre de grupo o `Tus tareas`)
  - Bullets de items con: ID, descripción, fecha (con `⚠️` si vencida), responsable
  - Sufijo “... y N más” si aplica
- Ayuda rápida:
  - Secciones: “COMANDOS BÁSICOS”, “LISTADOS”, “ACCESO WEB”
  - Bullets con ejemplos: `` `/t n ...` ``, `` `/t ver mis|grupo|todos|sin` ``, `` `/t x 26` ``, `` `/t tomar 12` ``, `` `/t configurar ...` ``, `` `/t web` ``

Localización
- Todo copy en español. Evitar fugas de claves internas en inglés (ej. “weekly”).
- En recordatorios, exponer etiquetas en español:
  - daily → “diario”
  - weekdays → “laborables (lunes a viernes)”
  - weekly → “semanal (lunes)”
  - off → “apagado”
- Si por compatibilidad se aceptan términos en inglés como input, la respuesta debe mantener español.

Buenas prácticas
- Evitar párrafos largos; preferir 1–3 líneas por bloque.
- Los mensajes de 'Uso:' llevan el prefijo ℹ️.
- Incluir uso cuando falten argumentos:  
  - Ej.: `ℹ️ Uso: \`/t tomar 26\` o múltiples: \`/t tomar 12 19 50\` o \`/t tomar 12,19,50\` (máx. 10)`
- Mensajes de error claros y accionables: “No puedes tomar esta tarea… Pide acceso a un admin si crees que es un error.”
- En listados, omitir líneas en blanco finales.

Para tests
- Preferir asserts de “contiene” con fragmentos estables (IDs en backticks, comandos en backticks, nombres de secciones).
- Si hace falta, crear helper `stripFormatting` que quite `*`, `_` y `` ` `` para comparar texto plano.

Ejemplos

Ayuda rápida
```
*COMANDOS BÁSICOS*
- `/t n Descripción 2025-11-05 @Ana`
- `/t ver` (en grupo) · `/t ver mis` (DM) · `/t ver todos`
- `/t x 26` · `/t tomar 12`
- `/t configurar diario|l-v|semanal|off [HH:MM]`
- `/t web`
_El bot responde por DM, incluso si escribes desde un grupo._
```

Confirmación de completar (ya estaba)
```
ℹ️ `0026` ya estaba completada — Preparar informe — 📅 05/11
```

Listado de “sin responsable”
```
Nombre del Grupo — Sin responsable
- `0142` Revisión de PR — 📅 12/03
- `0185` Montar demo — ⚠️ 📅 09/03
... y 3 más
```
