Cómo se comprueba esto
Las afirmaciones son baratas. Lo que sigue es lo que se hizo para encontrar errores en este protocolo, lo que encontró y cómo repetir cada comprobación usted mismo.
Un protocolo que custodia el colateral de otras personas debería revisarlo quien quiere que falle, no quien lo escribió. La nuestra precede a esa revisión en lugar de sustituirla. Lo que sí se ha hecho se describe abajo, entero, incluido lo que encontró.
Todo esto se puede repetir. El contrato, las pruebas y el modelo de referencia están publicados; los documentos llevan sumas de verificación y sellos de tiempo anclados en Bitcoin. Nada de esta página exige confiar en nosotros.
Qué se hizo
481 pruebas locales, 8 contra Arbitrum One en vivo
El conjunto local cubre la curva, la escalera, el rescate, el nivel de protección, la gobernanza y las rutas de comisiones. Las ocho pruebas de fork ejecutan el contrato contra un fork de Arbitrum One con fuentes de precio reales, porque un entorno de prueba se da la razón a sí mismo con demasiada facilidad.
Un modelo de referencia escrito a partir de la especificación
El protocolo se reimplementó en Python a partir del libro blanco y no del contrato, para que ambos pudieran discrepar — y discreparon. La comparación encontró la fórmula del margen en la protección del respaldo usando valores sin amortiguar mientras el respaldo sí usaba el amortiguador, y el precio de acuñación indefinido para operaciones que abarcan muchos tokens a la vez. Ninguno de los dos errores se ve en prosa.
Pruebas de mutación
Se inyectan defectos deliberados en el bytecode compilado y se vuelve a ejecutar el conjunto. Un conjunto que aun así pasa es un conjunto que no está mirando. Esto es lo que dice si las pruebas anteriores significan algo.
Sumas de verificación y sellos de tiempo
Cada documento publicado lleva una suma SHA-256 y una prueba OpenTimestamps anclada en la cadena de bloques de Bitcoin. La prueba muestra que el documento existía con esa forma exacta en esa fecha, y se verifica sin nosotros.
Qué encontraron las comprobaciones
- Dos errores de construcción en el mecanismo, ambos citados arriba.
- Cinco afirmaciones sobre el empaquetado de ranuras de almacenamiento y las firmas permit descritas como implementadas cuando no lo estaban. Se eliminaron y la sección se reescribió.
- Dos monedas de colateral figuraban como aceptadas sin tener fuente de precio en Arbitrum, de modo que no pueden valorarse ni aceptarse. Ambas pasaron a estado de candidatas.
Lo que la reescritura tuvo que corregir
- Un voto y el acto que autorizaba cabían en una sola transacción — Terminar la Fase 1 antes de tiempo estaba atado a la etapa de emisión, y las etapas las mueve la acuñación, no el tiempo. Una acuñación grande puede cruzar el límite de una etapa, de modo que se podía votar y pasar la raya en la misma transacción, sin dejar a nadie tiempo de responder. Ahora el asunto vive en la rejilla de ciclos: el voto queda marcado con su ciclo y se lee solo en el límite siguiente.
- La mayoría simple elige el valor extremo — Las magnitudes que toman un valor de una serie ordenada se deciden por mediana ponderada. Con las opiniones repartidas a lo largo de la serie, una mayoría puede llevarse el peldaño extremo, mientras que la mediana aguanta el fraccionamiento de votos. El nivel de protección es la excepción: se mueve por escala, un peldaño por ciclo.
- Un umbral fijo deja al regulador sordo o nervioso — Una caída de la entrada solo cuenta como significativa cuando sale de la dispersión habitual. El protocolo calcula esa banda por sí mismo a partir de la volatilidad medida de la entrada, y no se somete a votación: su anchura es una magnitud técnica, no una cuestión de juicio colectivo. No puede ser más estrecha que el 5,6 por ciento ni más ancha que el 78,6.
- Los créditos de voto podían ganarse con cualquier salida — Se conceden solo por cerrar una posición cuyo coste estaba por encima del respaldo contable, es decir, por el cierre que eleva el respaldo de todos los demás. Un cierre dilutivo no da ninguno, y pagar comisiones tampoco.
- Un escalón en el precio actúa como un imán — En la Fase 2 el precio de acuñación se recalcula de forma continua, no a saltos. Un escalón crearía un momento antes del cual conviene darse prisa en entrar; la misma objeción mantiene continuo el multiplicador de la comisión de redención.
- Nada sostenía el respaldo por debajo — Un nivel de protección fija cuánto puede caer el respaldo contable desde su máximo histórico, y un solo cierre puede llevarse únicamente una parte del margen que queda por encima del umbral.
- Un token que retiene parte de cada transferencia no pasa por la ruta habitual de intercambio — Con la comisión de transferencia por encima de cero, las rutas estándar de los mercados descentralizados —que nombran una suma y exigen que llegue exactamente esa— dejan de aceptar el token. La venta y el aporte de liquidez pasan entonces por un enrutador escrito para eso, que cubre la diferencia y no retiene nada ajeno. Está fuera del protocolo.
Cómo repetir esto
- Verificar un documento — Tome cualquier archivo de la página de documentos, calcule su SHA-256 y compare. Después verifique su prueba .ots contra la cadena de bloques de Bitcoin. Ninguno de los dos pasos nos involucra.
- Leer el modelo de referencia — La implementación en Python está escrita a partir de la especificación. Si discrepa del contrato, uno de los dos está mal — y ese es justamente el motivo de tener ambos.
- Comprobar el contrato usted mismo — Qué mirar en cualquier protocolo antes de confiar en él, por orden: qué puede hacer un operador sin votación, qué puede hacer una votación y qué no puede hacer nadie.
Qué no demuestra esto
- Esta página describe nuestra propia revisión, y nuestra propia revisión precede a la de otros en lugar de sustituirla.
- Las pruebas muestran que el contrato hace lo que sus autores esperaban. No pueden mostrar que lo que esperaban sea lo correcto.
- Un sello de tiempo demuestra cuándo existió un documento, no que su contenido sea cierto.
- Nada de esto afecta al precio de mercado. Las comprobaciones cubren el mecanismo; el mercado queda fuera.