Estándar
Implementaciones
Qué cuenta como implementación de A-REX Core, qué implementaciones figuran en la lista, qué dice una declaración de conformidad y cómo se incluye una implementación en la lista.
Qué es una implementación
Una implementación es software que otros pueden verificar frente al estándar. Adopta una de cuatro formas:
- un token de lotes que implementa las interfaces del estándar;
- un hook: un contrato de reglas que implementa
IARexHooky puede servir a muchos tokens; - un registro de atestaciones: un contrato complementario que implementa
IARexAttestpara un token existente; - una plataforma que opera tokens para terceros, con su propia implementación o con la implementación de referencia desplegada sin cambios.
Las billeteras, los exploradores, los indexadores y otras herramientas que solo leen tokens A-REX también pueden figurar en la lista, pero no tienen nada con lo que ser conformes.
La implementación de referencia
La implementación de referencia es arex-contracts, con licencia MIT. Contiene el token y su registro de atestaciones (ARexToken y ARexAttestations), contratos de reglas de ejemplo y la suite de conformidad. Demuestra que el estándar se puede implementar; no es el estándar, y una implementación no tiene que reutilizar su código. Mientras los repositorios sean privados, se comparte junto con el estándar a través de Solicitar acceso anticipado.
Implementaciones en la lista
La lista sigue ADOPTERS.md del repositorio del estándar, que es el registro de referencia. Las filas se ordenan alfabéticamente y todas figuran en las mismas condiciones.
| Organización | Rol | Implementación | Cadena | Estado | Contacto |
|---|---|---|---|---|---|
| A-REX Foundation: A-REX Platform | platform | opera tokens para empresas con la implementación de referencia, desplegada sin cambios a partir de sus versiones publicadas | todavía no está en una red pública | in development | [email protected] |
La A-REX Foundation también mantiene la especificación y la implementación de referencia, así que A-REX Platform no es un implementador independiente: no cuenta para la regla de los dos implementadores que rige los cambios del estándar. Todavía no figura ningún implementador independiente.
Los roles son issuer, warehouse, lab, platform (opera tokens para terceros), wallet e indexer. Los estados son planned, in development, pilot (lotes reales, alcance limitado), production, conformant (supera la suite de conformidad, con el informe enlazado) y retired.
Qué significa la conformidad
La conformidad se verifica con la suite de conformidad que acompaña a la implementación de referencia. La suite solo alcanza una implementación a través de las interfaces del estándar y de un pequeño adaptador que escriben sus autores, así que prueba todas las implementaciones de la misma manera. Cada prueba indica la cláusula que verifica: 87 cláusulas, 74 de nivel MUST y 13 de nivel SHOULD. Cada ejecución termina con uno de tres veredictos:
| Veredicto | Significado |
|---|---|
CONFORMANT | todas las cláusulas MUST se cumplen |
CONFORMANT (with skipped MUST clauses) | ninguna cláusula MUST falla, pero algunas se omitieron porque la implementación no ofrece lo que necesitan |
NOT CONFORMANT | al menos una cláusula MUST falla |
Las cláusulas SHOULD no cumplidas se informan y no cambian el veredicto.
Una declaración de conformidad indica la versión de A-REX Core, el perfil, la versión o el commit de la suite y la fecha de la ejecución. Se publica con el informe sin editar, el commit o las direcciones desplegadas que se probaron, las cláusulas SHOULD que no se cumplen y cualquier desviación intencionada, y tiene que explicar cada cláusula MUST omitida. Una declaración vale para una versión del estándar: se vuelve a ejecutar tras una actualización y con cada nueva versión mayor.
Un informe es evidencia de cómo se comportó una implementación en las cláusulas que verifica la suite. Las cláusulas que no se pueden observar en la cadena, como la regla de que la referencia de origen no contiene datos personales, quedan para la revisión, así que un informe no cubre todo lo que exige el estándar.
Figurar en la lista no es un respaldo
Una fila recoge lo que una organización declara sobre su propia implementación. No es un respaldo, una certificación ni una auditoría de la A-REX Foundation ni de los editores del estándar, y no existe certificación de pago ni tarifa alguna. El estado conformant se apoya en el informe publicado que enlaza la fila; los editores pueden pedir que una declaración se corrija o se retire cuando el informe no la respalda. Una fila cuyo contacto no responde durante seis meses, o cuyos enlaces dejan de funcionar, puede marcarse como retired tras un aviso.
Cómo figurar en la lista
- Abre un pull request que añada una fila a
ADOPTERS.mden el repositorio del estándar, con las columnas de la tabla anterior. Mientras el repositorio sea privado, pide antes acceso en Solicitar acceso anticipado. - Indica un contacto que responda. A los implementadores de la lista se les pide que confirmen los cambios propuestos al estándar o que se opongan a ellos.
- Para el estado
conformant, enlaza el informe de tu declaración de conformidad. - Para contar como implementador independiente, declara en el pull request que tu organización no está controlada ni pagada por la A-REX Foundation ni por otro implementador de la lista para este trabajo.
Los implementadores independientes sostienen la regla de los dos implementadores: un cambio menor se acepta cuando dos de ellos confirman que pueden adoptarlo, y un cambio mayor cuando dos de ellos lo han implementado y superan con él la suite de conformidad. Mientras no existan dos, los cambios aceptados se marcan como provisionales.