Un enum de Solidity asigna números a opciones, no texto automático

Cuatro bloques de madera distintos sobre la mesa de una persona que programa.
Ilustración conceptual creada con IA; no representa una red o medición real.

Un enum hace que un estado sea más legible en el código. Pero una interfaz puede mostrar un número donde el desarrollador escribió un nombre. Entender esa relación evita interpretar un cero como ausencia de respuesta.

Prueba con tres estados inventados

Supón la declaración enum Stage { Waiting, Reviewing, Finished }. Sus opciones se numeran desde cero: Waiting corresponde a 0, Reviewing a 1 y Finished a 2. La documentación del lenguaje explica tanto esa conversión como la representación de enums en la ABI.

Escribe una tabla junto al contrato antes de leer la respuesta de una llamada. El número 1 significa Reviewing en este ejemplo porque ocupa esa posición, no porque exista una definición universal del estado 1 en blockchain.

No confundas representación con permiso

Que un valor represente Finished no explica quién puede asignarlo ni qué condiciones debe cumplir la transición. Busca por separado las funciones que cambian el estado y sus comprobaciones. Un enum ordena opciones; no implementa por sí solo un flujo de aprobación.

En una prueba local, revisa el valor inicial, una transición permitida y una entrada fuera del rango declarado. Mantén la versión del contrato y su ABI juntas cuando documentes resultados. Si otra versión cambia la lista, relee la correspondencia antes de reutilizar una captura antigua de la interfaz. Los nombres ayudan a pensar, pero la interpretación depende del código concreto que estás examinando.

Ilustración editorial generada con IA; no es una fotografía documental.