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

# Releases — qué se entrega y cuándo está listo

> Release 1 es toda la suite: cinco módulos, 51 feature specs, 107 tablas. Se compone de cinco entregas de módulo que se terminan y se prueban por separado.

Un **release** es lo que un cliente instala y prueba. Una **entrega de módulo** es una unidad que se
puede terminar, demostrar y dar por cerrada sin esperar a las demás. Las **fases** —F1a, F1b, F2— no
son ninguna de las dos: son el orden en que conviene construir
([ADR-025](/adr/adr-025-release-model)).

## Release 1 · `2026.11`

Todo lo especificado hasta hoy. No es un mínimo viable ni un subconjunto: es la primera entrega
grande, la que el design partner opera de punta a punta contra el hito **G1-Engage del 2026-11-01**.

|                      |                                             |
| -------------------- | ------------------------------------------- |
| Módulos              | 5                                           |
| Feature specs        | 51, más 5 PRD                               |
| Tablas               | 107                                         |
| Estado de los specs  | 41 `draft` · 15 `review` · **0 `approved`** |
| Código de aplicación | ninguno todavía — empieza en TS-001         |

Que sea mucho trabajo no lo cambia. Un release parcial obliga a explicarle al cliente qué parte del
producto todavía no existe, y esa conversación cuesta más que construirlo.

## Las cinco entregas

Se construyen en este orden porque las dependencias no dejan otro. Identity no depende de nadie;
todo depende de Core; las tres últimas son independientes entre sí y van en paralelo.

| # | Entrega                                            | Specs | Tablas | Depende de    | Estado            |
| - | -------------------------------------------------- | ----- | ------ | ------------- | ----------------- |
| 1 | [`R1 · Identity`](/releases/r1-identity)           | 9     | 19     | —             | specs en `draft`  |
| 2 | [`R1 · Customer Core`](/releases/r1-customer-core) | 14    | 25     | Identity      | specs en `draft`  |
| 3 | [`R1 · Loyalty`](/releases/r1-loyalty)             | 14    | 37     | Customer Core | specs en `review` |
| 4 | [`R1 · Messaging`](/releases/r1-messaging)         | 9     | 19     | Customer Core | specs en `draft`  |
| 5 | [`R1 · CRM`](/releases/r1-crm)                     | 5     | 7      | Customer Core | specs en `draft`  |

```
Identity ──► Customer Core ──┬──► Loyalty
                             ├──► Messaging
                             └──► CRM
```

## Cuándo una entrega está lista

Los cinco criterios son los mismos para todas, y todos son verificables. Ninguno admite "está casi".

1. **Todos sus feature specs en `approved`.** La regla R-S1 dice que no se mergea código de una
   feature cuyo spec no esté aprobado, así que esto no es una formalidad: es la precondición.
2. **Todas sus tablas con página de schema**, con atributos, restricciones y registro de cambios.
   Una tabla sin página no se puede implementar.
3. **Todos sus endpoints publicados** en la página de API del módulo, con su permiso y su clase de
   SLO.
4. **Los presupuestos de latencia verificados con prueba de carga** en certificación (R18). Son
   criterio de Definition of Done, no aspiraciones.
5. **Prueba de negación de RLS por tabla**: una consulta bajo el contexto del tenant A devuelve cero
   filas del tenant B. Sin excepciones y sin tabla que se salte la prueba.

## Qué pasa si algo no llega

Se decide y se escribe. Un spec marcado `F2` sigue siendo parte de Release 1; si al acercarse la
fecha no llega, **eso es un recorte de alcance explícito** que se registra en la página de su
entrega, no un default silencioso.

Preferimos esa conversación incómoda a la alternativa: descubrir en noviembre que media suite
"nunca estuvo en el alcance" porque nadie lo escribió.

## Release 2 y siguientes

Todavía no existe y no se planifica acá. Lo que hoy vive en las preguntas abiertas del grupo C —
precios unitarios, multi-moneda, normalización FX— y lo que salga de la operación real de Release 1
formará ese alcance cuando haya con qué decidirlo.
