Migrar de v0.8.x a v1.0.0
Esta guía cubre @mauriciodmo/framekit 0.8.x → 1.0.0. Actualiza @mauriciodmo/create-framekit de 0.8.x a 1.0.0 solo para crear proyectos nuevos; el creador no actualiza proyectos existentes.
Cambio incompatible
Sección titulada «Cambio incompatible»FrameKit 1.0.0 hace que la autenticación sea opcional. Si FRAMEKIT_AUTH_ENABLED no está definida o vale false, /editor y /brand están disponibles sin sesión, /login redirige a /editor, /settings y la API de acceso responden como no encontradas, y el renderizado de imágenes no requiere credenciales. En este modo, cualquier cliente que pueda acceder al servidor puede usar Studio y la API de imágenes.
Define FRAMEKIT_AUTH_ENABLED=true antes de desplegar 1.0.0 si el despliegue debe mantener Studio y el renderizado de imágenes protegidos. No dependas de NODE_ENV, las credenciales existentes ni un archivo SQLite para activar la autenticación.
Mantener protegido un despliegue
Sección titulada «Mantener protegido un despliegue»-
Haz una copia de seguridad de la configuración del proyecto y de los datos existentes de FrameKit.
-
Añade esta variable al entorno que utiliza el runtime real, antes de instalar o iniciar
1.0.0:FRAMEKIT_AUTH_ENABLED=true -
Si la base de datos de autenticación aún no tiene administrador, proporciona también un
FRAMEKIT_ADMIN_PASSWORDválido para crear el primer administrador. Las variables de bootstrap no reemplazan a los usuarios de una base de datos existente. -
Mantén
FRAMEKIT_DATABASE_PATHapuntando a la misma ubicación de base de datos, escribible y persistente, si los datos de autenticación deben sobrevivir a los reinicios. El valor predeterminado es.framekit-data/framekit.sqlite. -
Actualiza a
1.0.0la dependencia@mauriciodmo/framekitdel proyecto existente e instala las dependencias. Después, regenera y verifica el proyecto antes del despliegue:Ventana de terminal pnpm installpnpm exec framekit generatepnpm exec framekit checkpnpm build -
Después del despliegue, comprueba que una solicitud sin autenticar a
/editorredirige a/login, que el administrador configurado puede iniciar sesión y que el renderizado de imágenes rechaza solicitudes sin una sesión o un token de API válidos.
Si necesitas revertir el despliegue, restaura la versión anterior del paquete y la configuración del runtime desde la copia de seguridad. Conserva intacta la base de datos de 1.0.0; no des por hecho que una versión anterior pueda leer datos creados por una versión posterior.
Usar intencionalmente el modo abierto
Sección titulada «Usar intencionalmente el modo abierto»Si Studio y el renderizado de imágenes deben estar disponibles sin iniciar sesión, deja la variable sin definir o establece FRAMEKIT_AUTH_ENABLED=false. Considera públicas ambas superficies para todos los clientes que puedan acceder al proceso. Se mantienen las protecciones del renderizador para entradas, imágenes, navegador, tiempos límite y limpieza; las cargas de assets de desarrollo siguen exigiendo solicitudes del mismo origen.
El modo abierto no inicializa la base de datos de acceso. Desactivar la autenticación más adelante no elimina usuarios, sesiones ni tokens de API. Para activar la autenticación después de usar el modo abierto, define FRAMEKIT_AUTH_ENABLED=true y un FRAMEKIT_ADMIN_PASSWORD válido para poder crear el primer administrador.
Otros cambios del contrato
Sección titulada «Otros cambios del contrato»Esta guía cubre el cambio del valor predeterminado de autenticación. Si el proyecto aún no adoptó el contrato actual de plantillas o archivos generados, sigue también la lista de comprobación de migración al contrato actual.