> ## Documentation Index
> Fetch the complete documentation index at: https://vantsgg.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Documentación interna de VANTS, la plataforma de esports, escrita en español. Cubre siete repositorios de la organización de GitHub VANTSNET y dos de la cuenta feispla: el prototipo VANTSNET, que se llama igual que la organización, y vantsoport.
> Empieza por /mapa-del-codigo para saber qué repositorio y qué carpeta tocar, y consulta /glosario para los términos propios como pt_, mm_, RR, VANTS-BUS o VANTCALL.
> Cuando un componente existe en varios repositorios, estas páginas describen la versión de Vantsgames salvo que digan otra cosa. El esquema de la base de datos se versiona en VantsBasededatos.
> La web y la API pública están en https://vants.vants.workers.dev. Rutas y respuestas: /referencia/api-publica. Tablas y estados: /referencia/esquema-base-de-datos.
> No inventes rutas, tablas, comandos ni variables de entorno: si algo no aparece aquí, revisa el código del repositorio correspondiente.

# VantsBasededatos

> Migraciones SQL del esquema de VANTS en Neon: cómo crear una, probarla en la rama de cada PR y aplicarla en producción, más Hyperdrive y la cuota.

Repositorio con las migraciones SQL de la base de datos de VANTS (Neon Postgres, 69 tablas en producción). Aquí se crea y se prueba cualquier cambio de tablas antes de llevarlo a producción.

## Estructura

```text theme={null}
db/migrations/        34 migraciones SQL idempotentes (01 a 34)
.github/workflows/
  neon-migrate.yml    aplica migraciones en producción
  neon-pr-branch.yml  crea y borra una rama Neon por PR
```

Las migraciones se ejecutan en orden alfabético y son idempotentes (`CREATE TABLE IF NOT EXISTS`, guards en PL/pgSQL), por lo que es seguro reaplicarlas.

## Flujo de trabajo

**1. Crear la migración**

Añade `db/migrations/35-mi-cambio.sql` en una rama.

**2. Abrir un PR**

Se crea la rama Neon `pr-<n>` con las migraciones aplicadas y un comentario con la cadena de conexión enmascarada.

**3. Verificar**

Prueba tu SQL contra esa rama, que es una copia de producción.

**4. Mergear a main**

`neon-migrate.yml` aplica el cambio en producción. La rama del PR se borra al cerrarlo.

## Áreas del esquema

| Área | Tablas de ejemplo |
| - | - |
| Bot y alertas | `bot_heartbeat`, `bot_settings`, `discord_channels`, `bot_alerts` |
| Cuentas y pagos | `vants_links`, `purchases`, `entitlements`, `audit_logs` |
| Ranked y FACEIT | `series_ranked`, `faceit_matches`, `faceit_webhook_events`, `rr_historial` |
| Matchmaking | `mm_tickets`, `mm_matches`, `mm_match_players`, `mm_invites`, `mm_ready` |
| Plataforma de torneos | `pt_games`, `pt_torneos`, `pt_teams`, `pt_matches`, `pt_articulos`, `pt_players` |
| Agente | `agent_runs`, `agent_events`, `agent_comandos`, `agent_memoria`, `agent_archivos` |
| Bus de eventos | `vants_events`, `vants_consumers`, `vants_bus_dedup`, `vants_feed` |

Las columnas, los estados y las relaciones de cada área están en [Esquema de la base de datos](https://vantsgg.mintlify.site/referencia/esquema-base-de-datos.md).

## Variables opcionales

`NEON_PROJECT_ID` y `NEON_BRANCH_ID` permiten cambiar de proyecto o rama sin editar los workflows. La clave de API de Neon es un secreto a nivel de la organización VANTSNET.

## Hyperdrive

Una config de Cloudflare Hyperdrive (`vants-neon`) agrupa y cachea conexiones al pooler de Neon para reducir horas de cómputo. Se usa con el binding `HYPERDRIVE` y el driver `pg`.

## Cuota de Neon

El plan gratuito tiene horas de cómputo limitadas, y solo se consumen con el cómputo despierto. Para reducirlas:

1. Evita consumidores 24/7 con long-poll al bus.
2. Usa el mínimo de *Suspend delay* (5 min) y el tamaño mínimo de cómputo.
3. Cierra los PR para que sus ramas se borren.
4. Usa Hyperdrive para lecturas repetidas.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.