Skip to main content

El desafío

En un monorepo, distintos paquetes tienen distintos estándares. Tu frontend en React se preocupa por los patrones de componentes, tu backend en NestJS se preocupa por la inyección de dependencias, y tus libs compartidas se preocupan por la estabilidad de la API. Una revisión única para todo no funciona.

Descripción general de la estrategia

Kodus admite tres niveles de configuración que se mapean de forma natural a un monorepo:

Paso 1 — Mapea tus paquetes

Identifica las áreas distintas de tu monorepo y sus necesidades de revisión:

Paso 2 — Crea configuraciones a nivel de directorio

Ve a Configuración de Code ReviewRepositorio → haz clic en un directorio para configurarlo. Cada directorio puede tener su propia:
  • Kody Rules (a nivel de archivo y de PR)
  • Opciones de revisión (qué tipos de análisis habilitar)
  • Control de sugerencias (filtros de severidad, máximo de sugerencias)
  • Rutas ignoradas

Paso 3 — Escribe reglas específicas

Reglas de frontend (ámbito: apps/web/)

Reglas de backend (ámbito: apps/api/)

Reglas de librería compartida (ámbito: libs/shared/)

Paso 4 — Usa Memorias para convenciones transversales

Algunas convenciones aplican en todas partes. Enséñalas como Memorias:

Paso 5 — Configura el control de sugerencias por directorio

Los paquetes con mucho tráfico pueden necesitar límites más estrictos:
  • apps/web/ — máx. 5 sugerencias, filtro de severidad media (el frontend avanza rápido)
  • libs/shared/ — máx. 15 sugerencias, filtro de severidad baja (la estabilidad importa)
  • infra/ — máx. 3 sugerencias, filtro de severidad alta (menos pero críticas)

Paso 6 — Ignora rutas generadas

Añade ignorados específicos del monorepo para evitar ruido:

Consejos

  • Comienza con 2-3 reglas por directorio y amplía según lo que tu equipo realmente marque en las revisiones
  • Usa la herencia de reglas — las reglas a nivel de organización cubren seguridad, las de repositorio cubren convenciones, las de directorio cubren arquitectura
  • Si una regla se activa demasiado en un paquete pero es válida en otros, excluye ese directorio de la regla en lugar de debilitarla
Para más información sobre configuraciones de directorio, consulta Configuración a nivel de directorio. Para la herencia de reglas, consulta Herencia de reglas.