> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mov-eat.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Deployment

> Cómo Moveat se deploya en Vercel, DigitalOcean, Mintlify y Docker Compose.

# Deployment

Moveat se deploya en tres superficies:

| Superficie    | Plataforma   | Qué corre ahí                                                             |
| ------------- | ------------ | ------------------------------------------------------------------------- |
| Frontend      | Vercel       | Web client y previews.                                                    |
| Backend stack | DigitalOcean | Platform, Agent, PostgreSQL, Redis, Caddy, Grafana, Loki, Alloy y Komodo. |
| Documentación | Mintlify     | Docs en `docs.mov-eat.app`.                                               |

## Stack productivo

El backend productivo está definido en `infra` con Docker Compose.

Servicios:

* Caddy para HTTPS y reverse proxy.
* Platform para APIs de negocio.
* Agent para WhatsApp y LLM orchestration.
* PostgreSQL para datos.
* Redis para estado temporal.
* Grafana para dashboards.
* Loki para logs.
* Alloy para recolección de logs.
* Komodo para gestión de contenedores.

## Dominios

| Dominio                | Servicio      | Hosting             |
| ---------------------- | ------------- | ------------------- |
| `api.mov-eat.app`      | Platform      | DigitalOcean/Caddy. |
| `agent.mov-eat.app`    | Agent         | DigitalOcean/Caddy. |
| `<grafana-domain>`     | Grafana       | DigitalOcean/Caddy. |
| `<ops-console-domain>` | Komodo        | DigitalOcean/Caddy. |
| `docs.mov-eat.app`     | Documentación | Mintlify.           |

## Deploy de Platform

1. Pull de `platform` e `infra`.
2. Ejecutar migraciones.
3. Rebuild de imagen Platform.
4. Recreate del contenedor.
5. Check de health.
6. Revisar Grafana/Loki.

## Deploy de Agent

1. Pull de `agent` e `infra`.
2. Validar env vars.
3. Rebuild de imagen Agent.
4. Recreate del contenedor.
5. Check de health y webhook.
6. Probar mensaje controlado si cambió webhook.

## Migraciones

<Warning>
  No deployar código de Platform que depende de una migración si la migración no fue aplicada en producción.
</Warning>

## Docs

Mintlify lee el repo `docs`. Si no actualiza, revisar GitHub repo, branch, root directory, activity y hacer redeploy manual.
