Modalidad 2: Contrato propio homologado
Para casos donde las plantillas estándar y librerías de ISBE no cubren requisitos de lógica de negocio muy específicos.
Cuándo elegirla
- Lógica de negocio altamente customizada.
- Interacciones no estándar entre múltiples actores.
- Necesidad de control total sobre la implementación de la lógica.
Guía paso a paso
- Desarrollo: Programación del contrato. Es imperativo exponer las interfaces
IAccessControl.hasRoleyIPause.pause/unpause. - Solicitud de Conformidad: Envías el código a ISBE para su homologación (Niveles A, B o C).
- Validación: ISBE realiza el análisis de seguridad y build reproducible. Durante este proceso, el contrato
0x15Bevalidará que elPAUSER_ROLEde OpenZeppelin esté correctamente asignado a la infraestructura ISBE, ejecutando las funciones de pausa/unpause para garantizar el cumplimiento normativo. - Despliegue: Una vez homologado, ISBE orquesta el despliegue del Diamond Proxy que apunta a tu lógica.
Qué entrega el Builder
- Código Fuente: El contrato en Solidity (con dependencias completas).
- Suite de Tests: Pruebas unitarias con alta cobertura.
- Roles deseados: Configuración inicial de permisos.
Qué devuelve ISBE
- Dirección del Caso de Uso: El punto de entrada único para tu caso de uso.
Requisitos Críticos
- PAUSER_ROLE: Tu contrato debe incluir la dirección de gobernanza de ISBE en este rol. Esto es una condición sine qua non para la homologación.
Implicaciones de control
ISBE intentará usar el PAUSER_ROLE ante emergencias de red. Si el owner revoca este rol a ISBE, la red se reserva el derecho de actuar mediante el filtrado de address a nivel de nodo si el contrato pone en riesgo la estabilidad del sistema.