# Fermenty — El Afinador en la web pública

> Briefing para el refactor de fermenty.es. Define **qué se pregunta, qué se devuelve
> y por dónde pasa el cálculo** en la versión pública del Afinador; no reescribe el
> motor, que ya está especificado.
>
> Referencias: `docs/Matematica_Motor.md` (el modelo), `docs/Lexico.md` (§4 El motor,
> §6 Herencia con sobreescritura), prototipo `afinador-kombucha_3.html`.
>
> Destino sugerido: `docs/Afinador_Web.md` · 2026-07-25

---

## 1. Qué es esto

La herramienta pública que formula una kombucha para quien llega de Google, y que
termina invitando a hacerla acompañado.

*No es* el Afinador. El prototipo es un instrumento: cuatro ejes continuos, tres
elecciones discretas, contexto, y toda la lectura del motor en pantalla. Eso está bien
para el obrador y es indefendible en una página de captación.

*No es* tampoco una calculadora. Una calculadora devuelve números; esto devuelve una
propuesta, la explica, y admite que no sabe lo que va a pasar en una cocina que no
conoce. Esa última parte es literalmente el argumento de venta.

**La regla que ordena todo lo demás:** se pregunta el mínimo que cambia la respuesta,
y se enseña el máximo que demuestra que hay un modelo detrás. Cada pregunta de más
cuesta conversión; cada número honesto de más compra credibilidad.

---

## 2. Lo que se pregunta

**Tres cosas obligatorias**, en una sola pantalla. No hay asistente por pasos: sobre
tres preguntas, un wizard es fricción sin ganancia, y además impide lo único que
convence de verdad —ver la ventana moverse al arrastrar la temperatura.

| Pregunta | Control | Por qué está |
|---|---|---|
| Temperatura del sitio | Deslizador, 14–32 °C | `fTemp` es exponencial y domina el cálculo entero. Es la pregunta más rentable que existe |
| Volumen | Deslizador, 1–12 L | Convierte g/L en gramos. Sin esto la propuesta no es accionable |
| Cómo la quieres | Seis presets | El destino dicho con una frase: el nivel 1 del Léxico |

El rango de temperatura **excede a propósito** el `tempViable` de la ficha (16–30 °C).
Poder salirse y que el motor diga «a 32 °C no puedo acompañarte» enseña más que un
tope que impide llegar.

### El preset es la formulación entera

Del prototipo, y es el punto donde la primera versión de este diseño se equivocaba:
cada preset trae también azúcar, té y saborizante, no solo los cuatro ejes.

| Preset | intensidad | equilibrio | gas | complejidad | azúcar | té | sabor |
|---|---|---|---|---|---|---|---|
| suave | 0,35 | 0,28 | 0,30 | 0,55 | blanco | verde | — |
| comercial | 0,80 | 0,30 | 0,85 | 0,15 | blanco | verde | liofilizada |
| equilibrada | 0,50 | 0,50 | 0,40 | 0,60 | moreno | mezcla | — |
| complejo | 0,55 | 0,55 | 0,28 | 0,90 | panela | negro | — |
| ácida | 0,50 | 0,90 | 0,12 | 0,75 | panela | mezcla | — |
| fuerte | 0,88 | 0,78 | 0,70 | 0,75 | panela | rojo | fresca |

Un clic deja resueltas nueve variables. Por eso el gas **no es una cuarta pregunta**:
ya viene dentro, y varía de 0,12 a 0,85 según el preset.

### La capa de override

Detrás de un desplegable —«Ajustar la propuesta»— viven burbujas, azúcar y té.

*No es* un bloque de preguntas adicionales. Es una **capa de sobreescritura sobre lo
que el preset ya decidió**: exactamente el mecanismo de §6 del Léxico, ahora en la
interfaz. Consecuencias de diseño, no cosméticas:

- Los controles se **inicializan desde el preset**, no desde un valor fijo
- Lo que el usuario toca se marca como suyo y se cuenta en el resumen del desplegable
- Cambiar de preset **descarta los overrides**. Un preset es un punto, no un punto de
  partida al que se le pegan restos del anterior
- Existe «volver al preset», que es la única forma de deshacer sin recordar qué tocó

---

## 3. Lo que se devuelve

El orden importa y no es negociable.

**1. Las cantidades, en gramos, para su volumen.** Es lo que ha venido a buscar y lo
único que un cuaderno también le da. Va primero y va grande. Cuatro líneas como mucho:
azúcar, té, arranque, saborizante si lo hay.

**2. El calendario, en fechas.** «mié 30 jul — vie 1 ago» hace un trabajo que «día 7 a
día 9» no hace: convierte una predicción en un plan. Es la promesa de Fermenty
enseñada en la primera pantalla, antes de pedir nada.

**3. Un trueque, dos como mucho.** Es donde aparece la voz del mentor por primera vez
y donde se nota que esto no es una tabla. Una explicación se lee; tres se saltan.

**4. Los avisos duros, si los hay.** Redactados como acompañamiento, no como alarma.

**5. Todo lo demás, plegado.** pH, alcohol, presión y avisos blandos detrás de «ver los
números»: es la lente del nivel 2, y en pantalla por defecto asusta al nivel 1.

### Avisos: la jerarquía ya existe

El motor clasifica en `duro` y `blando`. Mapea directo y no hay que inventar nada:

- **duro** → ocupa sitio y color en la propuesta. Máximo dos; si hay más, el modelo
  está diciendo que esa combinación no debería proponerse
- **blando** → dentro de «ver los números», en gris, sin ocupar la vista principal

---

## 4. 🔴 Decisiones abiertas

**Los trueques necesitan prioridad, y tiene que vivir en el motor.** Pueden dispararse
hasta doce y hoy el orden del array es el orden en que se escribieron. La web muestra
uno o dos: si la elección la hace la plantilla, la web y la app acabarán diciendo cosas
distintas del mismo cálculo. Es un caso de un solo dueño.

**Hay presets que avisan en su configuración de fábrica.** `comercial` (gas 0,85 con
arrancador al 18 %) tropieza con el margen de presión en cuanto sube la temperatura, y
cualquier preset poco intenso a 28-30 °C cae bajo el suelo de identidad. En un
instrumento eso es correcto; en una herramienta de captación significa que el usuario
pulsa un botón que le has ofrecido tú y recibe una advertencia de seguridad.

Pendiente: **barrer los seis presets contra todo el rango de temperatura** y decidir,
caso por caso, si se retoca el preset o se reescribe el aviso. No ocultarlo.

**El suelo de identidad va a salir mucho.** Es el mejor texto que tiene el proyecto y a
la vez el más difícil de colocar en la primera pantalla de un desconocido. Propuesta:
versión corta en la herramienta, desarrollo completo en un artículo de la categoría
Ciencia, enlazado desde ahí. Resuelve dos cosas a la vez —el aviso cabe y la página
gana el enlace interno que necesita.

---

## 5. Por dónde pasa el cálculo

**La ficha nunca viaja al cliente.** El prototipo lleva `FICHA` en línea en el HTML;
en producción eso es abrir el inspector y llevarse el modelo. El Afinador público es
`POST /afinador/formular`, que recibe las entradas y devuelve **solo el resultado
presentable** — cantidades, ventanas, trueques ya elegidos, avisos ya clasificados.
Ni coeficientes, ni valores intermedios, ni el array completo de trueques para que
filtre el cliente.

Consecuencias:

- **Debounce de ~250 ms** sobre el arrastre de los deslizadores. Sin él son treinta
  peticiones por gesto; con él la sensación de recálculo en vivo se mantiene entera
- **Límite por sesión e IP.** Una herramienta pública es, por definición, un oráculo
  del motor: quien quiera los coeficientes no necesita robar la ficha, le basta con
  barrer entradas y ajustar contra las salidas. El límite es la defensa real, y es
  suficiente: reconstruir el Afinador desde fuera cuesta más que hacer uno peor
- El endpoint es **el mismo motor** que usará la PWA. Si acaban siendo dos
  implementaciones, divergirán en silencio

---

## 6. El paso a la app

El CTA se ancla en **lo que la herramienta estructuralmente no puede hacer**: calcula
una ventana suponiendo temperatura constante y no sabe qué va a pasar después. De ahí
sale la frase, y el botón es su consecuencia.

> «Esta ventana sale de suponer 22 °C constantes. Tu cocina no es constante.»

*No se bloquea el resultado tras un registro.* Rompe la confianza justo cuando se
acaba de ganar, y va contra el tono del proyecto entero.

**La propuesta tiene que viajar.** El botón lleva a `app.fermenty.es` con la
formulación ya cargada; lo único que queda al otro lado es pulsar empezar. Si hay que
reintroducir las tres respuestas, se pierde la mitad de las conversiones en el paso más
tonto posible.

Implementación: **token corto en la URL contra una propuesta guardada en servidor**, no
un JSON en el query string. Además de ser más limpio, permite medir cuántas propuestas
se generan frente a cuántas se abren y cuántas se convierten en tanda.

---

## 7. El correo

El botón secundario captura el email a cambio de mandar la propuesta.

**Qué lleva:** el resumen. Cantidades, fechas, un trueque. **Sin cálculos intermedios,
sin fórmulas, sin coeficientes.** No tanto por proteger el modelo —esa defensa está en
§5— como porque es el correo que mejor se lee: lo que cabe en una pantalla de móvil es
un plan, no un informe.

**Dos envíos distintos, y no se pueden mezclar.** Mandarle lo que ha pedido es
transaccional y va por el SMTP existente. Meterlo en Brevo necesita **casilla aparte,
sin marcar, y doble opt-in** — es ES y DE, no hay margen.

**Lista propia, no WAITLIST.** Quien ha probado el motor tiene otra intención que quien
pidió acceso. Mezclarlos estropea la secuencia de los dos.

### La secuencia que justifica el botón

El email no es un imán de leads: es la ocasión de **demostrar la propuesta de valor
antes de que instale nada**.

- **Día 0** — la propuesta
- **Día N-1**, con N = apertura de la ventana calculada — «tu ventana abre mañana.
  ¿Llegaste a empezarla?», con dos botones

El que dice que sí entra en un flujo; el que dice que no, en otro. Es exactamente el
problema de activación ya identificado, atacado antes del registro en vez de después.

---

## 8. Dónde vive

`/herramientas/afinador-kombucha`, URL propia, con prosa debajo del widget.

*No* dentro de una pantalla de herramientas genérica. Es la página con más potencial de
captar búsquedas de todo el sitio, y necesita ser indexable por sí misma — lo que
enlaza directamente con el agujero de sitemap ya abierto.

---

## 9. Fuera de alcance

Lo que **no** entra en esta versión, para que no se cuele por acumulación:

- Los cuatro ejes continuos expuestos. El preset y el override cubren el caso público
- El gráfico de zona alcanzable del prototipo. Es hermoso y no le habla a nadie que
  llegue de Google
- Otros fermentos. El Afinador es de kombucha porque la ficha es de kombucha
- Guardar propuestas sin cuenta. Para eso está el correo
- Descarga del calendario en `.ics`. Da valor sin registro, pero compite con el CTA
  principal; se prueba después, no a la vez

---

*Documento vivo. Cuando el prototipo cambie, se corrige `Matematica_Motor.md` primero
y esto después.*
