Enlace con producción
Cómo se garantiza que lo que está en producción está en el sistema, y que el sistema no miente.
El sistema vive en un repo distinto del producto. El enlace entre los dos lo hace npx ds sync. Lee lo publicado: origin/<produccion.rama> (main por defecto) del repo de producción (produccion.repo en system.json), no la rama que tenga la copia local. Con --local lee la copia tal cual, cambios sin commit incluidos.
Qué hace el sync
- Instantánea. Copia las hojas de estilo de cada superficie (y sus fuentes e imágenes) a
produccion/. Los ejemplos en vivo cargan esa copia: lo que ves es el CSS de producción, no una recreación. - Tokens. Lee las propiedades personalizadas de
:rooty las guarda entokens.produccion.json. Las fichas de tokens muestran esos valores: nunca se escriben a mano. - Huellas. Para cada ficha con fuentes, reúne las reglas CSS de sus clases (o el archivo entero si es un componente de código) y calcula una huella. La compara con la última revisada en
produccion.lock.json. - Clases inventadas. Comprueba que cada clase usada en los ejemplos existe en producción o en el CSS experimental.
- Cobertura. Lista las clases y los tokens de producción que ninguna ficha documenta. Es la lista de tareas pendientes del sistema.
- Cambios sin commit. Avisa si la instantánea incluye archivos de producción todavía sin commit.
Comandos
bash
npx ds sync # actualiza instantánea, tokens, huellas e informe
npx ds sync --accept componentes/boton # tras revisar la ficha, guarda su huella
npx ds check # falla si algo cambió sin revisar o no existe, si falta una hoja
# de estilos o si los colores de una ficha no cuadranDeclarar fuentes en una ficha
yaml
plataformas:
web:
estado: produccion
superficies:
- id: landing # superficie definida en system.json
fuente: public/site/styles.css # ruta en el repo de producción
clases: [button, button-outline] # reglas que forman la huella
- id: portal
fuente: src/components/ui/button.tsx # sin clases: la huella es el archivoReglas
- Una ficha en producción sin fuentes no se puede verificar; el sync lo avisa en componentes y patrones.
- Solo se acepta una huella después de leer el cambio y actualizar la ficha. Aceptar sin revisar rompe el enlace.
- Cuando producción cambia por una decisión de diseño, primero se actualiza la ficha y después se acepta.
check:syncdebe pasar antes de publicar el sistema.