Actualizaciones y Versiones
Cómo publicar actualizaciones a plugins aprobados. Entiende los cambios pendientes, el consentimiento de scopes y cómo usar el comando deploy en CI/CD.
Cómo Funcionan las Actualizaciones
Una vez que tu plugin está aprobado y activo, las actualizaciones pasan por un proceso controlado que protege a los comerciantes de cambios inesperados.
Flujo de actualización para plugins aprobados:
- Edita tu plugin en el Portal de Desarrolladores (nombre, descripción, URL, scopes, etc.)
- Los cambios se guardan en
pending_changes— la versión activa no se toca - Envía para re-revisión
- Si se aprueba: los cambios pendientes se fusionan con la versión activa de forma atómica
- Si se rechaza: los cambios pendientes se descartan, la versión activa permanece igual
Esto garantiza que los comerciantes siempre vean la última versión aprobada de tu plugin hasta que una actualización sea explícitamente aprobada por el equipo de revisión.
Números de Versión
Usa versionado semántico: MAYOR.MENOR.PARCHE
1.0.0 Lanzamiento inicial
1.0.1 Parche — corrección de error
1.1.0 Menor — nueva característica, compatible con versiones anteriores
2.0.0 Mayor — cambio que rompe compatibilidad
1.0.0-beta.1 Etiqueta de pre-lanzamiento permitidaReglas:
- Las versiones solo pueden aumentar — las versiones anteriores están bloqueadas
- La versión se lee de
package.jsonpor defecto - Puedes sobrescribir con
--set-versionen el comando deploy
Publicar una Actualización
# Deploy estándar (solicita confirmación)
whatalo deploy --message "v1.2.0: Sincronización de inventario agregada"
# No interactivo (CI/CD — --force es requerido)
whatalo deploy --force --message "v1.2.0: Sincronización de inventario agregada"
# Sobrescribir versión en lugar de leer desde package.json
whatalo deploy --set-version 1.2.0 --forceEl flag --force es requerido en entornos no interactivos (pipelines de CI/CD). Sin él, el comando se pausará esperando input del terminal, lo que colgará o fallará en CI.
Cambios de Scope y Consentimiento del Comerciante
Cuando agregas nuevos permisos a un plugin actualizado, la plataforma aplica un proceso de seguridad de 3 capas:
Capa 1 — Revisión
El equipo de revisión ve un diff de los scopes agregados y eliminados. La expansión de scopes (agregar nuevos permisos) es una escalada de privilegios y recibe mayor escrutinio.
Capa 2 — Propagación
Al aprobarse, los nuevos scopes se agregan a pending_scopes en todas las instalaciones existentes de comerciantes. La instalación actual sigue funcionando con el conjunto anterior de scopes.
Capa 3 — Consentimiento
Cada comerciante ve una pantalla de consentimiento la próxima vez que abre tu plugin. Debe aprobar explícitamente los nuevos permisos antes de que el scope expandido entre en vigor.
Eliminar scopes toma efecto inmediatamente al aprobarse — no se requiere consentimiento del comerciante cuando renuncias a acceso.
Deploy desde CI/CD
Un flujo de lanzamiento típico:
# En tu pipeline de CI después de que los tests pasen:
npm version minor # o patch / major
whatalo deploy --force --message "Lanzamiento automatizado desde CI"O con control de versión explícito:
whatalo deploy --set-version 1.3.0 --force --message "Lanzamiento v1.3.0"Verificar tu Versión Publicada
El comando deploy muestra la versión actual y anterior al completarse:
Plugin mi-plugin-analiticas
Version 1.3.0
Previous 1.2.1
Status pending_reviewEl status refleja el estado de revisión actual de la versión enviada.