Códigos de error
Cada error tiene un código estable, un mensaje y una solución. Los códigos nunca se traducen.
E_INTERNAL
HTTP 500 · exit 1
Algo falló dentro de GenPM.
Solución: Reintenta con --verbose y, si persiste, reporta el problema con su requestId.
E_BAD_REQUEST
HTTP 400 · exit 2
La petición no es válida: …
Solución: Revisa los parámetros e inténtalo de nuevo.
E_USAGE
HTTP 400 · exit 2
Uso incorrecto: …
Solución: Ejecuta genpm --help para ver las opciones disponibles.
E_CONFIRM_REQUIRED
HTTP 400 · exit 2
Hace falta confirmación: …
Solución: Ejecútalo en una terminal interactiva o pasa … para confirmar.
E_PAYLOAD_TOO_LARGE
HTTP 413 · exit 2
El cuerpo de la petición es demasiado grande.
Solución: Envía como máximo 16 KB.
E_NOT_FOUND
HTTP 404 · exit 3
No se encontró ….
Solución: Revisa el nombre o busca con genpm search
E_NO_MATCHING_VERSION
HTTP 404 · exit 3
Ninguna versión de … cumple ….
Solución: Ejecuta genpm info … para ver las versiones publicadas.
E_DEST_CONFLICT
HTTP 409 · exit 4
… existe y no está vacío.
Solución: Usa --dest
E_RANGE_UNSATISFIED
HTTP 409 · exit 4
Ninguna versión cumple todos los rangos: …
Solución: Instala antes una versión compatible del paquete en conflicto o fija otra versión.
E_ALREADY_INSTALLED
HTTP 409 · exit 4
… … ya está instalado.
Solución: No hay nada que hacer. Usa genpm list para ver los paquetes instalados.
E_VERSION_EXISTS
HTTP 409 · exit 4
…@… ya está publicado.
Solución: Las versiones son inmutables: sube la versión en genpm.json y crea un tag nuevo.
E_DRIFT
HTTP 409 · exit 4
… tiene cambios locales en ….
Solución: Usa --keep-code para conservar tu código o --force para borrarlo igualmente.
E_REQUIRED_BY
HTTP 409 · exit 4
… es necesario para ….
Solución: Elimina primero los paquetes que dependen de él.
E_BUSY
HTTP 409 · exit 4
Otro proceso de GenPM está modificando este proyecto.
Solución: Espera a que termine. Si no hay ninguno en marcha, borra .genpm/.lock.
E_PLAN_STALE
HTTP 409 · exit 4
El proyecto cambió desde que se calculó el plan.
Solución: Vuelve a calcular el plan (simulación) y confírmalo.
E_NETWORK
HTTP 502 · exit 5
No se pudo conectar con ….
Solución: Revisa tu conexión, el proxy o GENPM_REGISTRY y reintenta.
E_UPSTREAM_GIT
HTTP 502 · exit 5
Falló el host de Git: …
Solución: Comprueba que el repositorio es accesible con tus credenciales de Git y reintenta.
E_RATE_LIMITED
HTTP 429 · exit 5
Demasiadas peticiones.
Solución: Espera … y reintenta.
E_READ_ONLY
HTTP 503 · exit 5
El registry está en modo solo lectura por mantenimiento.
Solución: Instalar sigue funcionando. Vuelve a publicar más tarde; hay novedades en genpm.net.
E_INTEGRITY
HTTP 422 · exit 6
Falló la verificación de integridad de …: …
Solución: No uses este paquete. Repórtalo en genpm.net/report si persiste.
E_SIGNATURE
HTTP 422 · exit 6
La firma del registry para … no es válida.
Solución: No lo instales. Actualiza GenPM (claves de firma nuevas) y repórtalo si persiste.
E_PATH_UNSAFE
HTTP 422 · exit 6
Ruta insegura … (…).
Solución: Usa una ruta relativa dentro del proyecto, sin .., rutas absolutas ni carpetas reservadas.
E_AUTORUN_FILE
HTTP 422 · exit 6
… contiene archivos que se ejecutan solos: ….
Solución: Estos archivos nunca se instalan. Pide al autor que los quite o usa --allow-autorun solo con publishers verificados.
E_SCAN_FAILED
HTTP 422 · exit 6
El escaneo de seguridad rechazó …: …
Solución: Corrige los hallazgos que muestra genpm validate y publica una versión nueva.
E_INSECURE_PERMS
HTTP 400 · exit 6
Otros usuarios pueden leer ….
Solución: Ejecuta chmod 600 ….
E_QUARANTINED
HTTP 451 · exit 6
… está en revisión de seguridad.
Solución: Inténtalo más tarde o elige otro paquete. Las revisiones tardan menos de 24 horas hábiles.
E_REF_MUTABLE
HTTP 422 · exit 6
… no es una referencia inmutable.
Solución: Usa un tag de Git o un SHA de commit completo de 40 caracteres, nunca una rama.
E_ADVISORY
HTTP 409 · exit 6
… … tiene un aviso de seguridad de severidad ….
Solución: Actualiza a … o posterior.
E_TOO_LARGE
HTTP 422 · exit 6
… supera el límite de tamaño: …
Solución: Excluye archivos con .genpmignore o sube el límite con --max-size si el paquete es legítimo.
E_MANIFEST_INVALID
HTTP 422 · exit 6
genpm.json no es válido.
Solución: Corrige los campos indicados en los detalles. Ejecuta genpm validate para ver el informe completo.
E_LOCK_INVALID
HTTP 422 · exit 6
genpm.lock no es válido o está dañado.
Solución: Restáuralo desde Git; nunca edites genpm.lock a mano.
E_NAME_MISMATCH
HTTP 422 · exit 6
El nombre del manifiesto … no coincide con ….
Solución: Publica con el nombre declarado en genpm.json.
E_REF_NOT_FOUND
HTTP 422 · exit 3
… no existe en ….
Solución: Crea y sube el tag: git tag … && git push --tags.
E_REF_NOT_PUSHED
HTTP 422 · exit 4
… no está en el remoto o apunta a otro commit.
Solución: Sube el tag con git push origin ….
E_REPO_NOT_ALLOWED
HTTP 422 · exit 7
… no pertenece al scope @….
Solución: Publica desde un repositorio del owner de GitHub vinculado al scope.
E_REPO_CHANGED
HTTP 422 · exit 6
El repositorio de … cambió (posible repojacking).
Solución: Escribe a hello@genpm.net con asunto [SECURITY] para transferir el paquete.
E_CONTEXT_MISSING
HTTP 422 · exit 6
No existe el archivo de reglas de IA ….
Solución: Crea … (genpm init genera una plantilla) o define x en genpm.json.
E_CONTEXT_TOO_LARGE
HTTP 422 · exit 6
El archivo de reglas de IA … supera los 16 KB.
Solución: Acórtalo: céntralo en propósito, mapa, integración, convenciones y qué no hacer.
E_AUTH
HTTP 401 · exit 7
No has iniciado sesión o tu token no es válido o ha caducado.
Solución: Ejecuta genpm login (o define GENPM_TOKEN en CI).
E_FORBIDDEN_SCOPE
HTTP 403 · exit 7
No puedes publicar en @….
Solución: Pide permiso de publicación a un owner de @… o usa tu propio scope.
E_GIT_MISSING
HTTP 500 · exit 8
Git no está instalado o es anterior a la 2.25.
Solución: Instala Git 2.25 o posterior y reintenta.
E_NODE_VERSION
HTTP 500 · exit 8
GenPM necesita Node.js 20.11 o posterior (encontrado …).
Solución: Actualiza Node.js o instala el binario independiente de genpm, que no lo necesita: genpm.net/docs/install
E_UPGRADE_UNSUPPORTED
HTTP 400 · exit 8
Esta copia de GenPM se instaló con …: genpm upgrade solo actualiza el binario independiente.
Solución: Actualízala con … o instala el binario desde genpm.net/docs/install.
E_UPGRADE_PERMISSION
HTTP 500 · exit 8
No se puede reemplazar …: permiso denegado.
Solución: Ejecuta genpm upgrade con el usuario dueño de ese archivo o reinstala con el script de genpm.net/docs/install.
E_UPGRADE_INTEGRITY
HTTP 422 · exit 6
El … descargado no coincide con su checksum SHA-256 publicado.
Solución: No se cambió nada. Reinténtalo más tarde; si se repite, avísanos en hello@genpm.net con el asunto [SECURITY].
E_MCP_SERVE_UNAVAILABLE
HTTP 500 · exit 8
genpm mcp serve solo viene incluido en el binario independiente de genpm.
Solución: Usa npx -y @genpm/mcp como comando MCP (genpm mcp setup lo hace por ti) o instala el binario desde genpm.net/docs/install.
E_NOT_A_PROJECT
HTTP 400 · exit 8
No se encontró un proyecto en ….
Solución: Ejecuta el comando dentro de un proyecto (con package.json o .git) o pasa --cwd