Hoy eCash México / xolosArmy Network cruzó una frontera importante: la identidad soberana dejó de ser solo una credencial verificable y se convirtió en una ciudadanía activa. La ruta completa quedó viva:
Identidad → Elegibilidad → Firma → Voto → Auditoría → ResultadoI La Fase A: cuando la identidad quedó confirmada
El día comenzó con el cierre real de la Fase A: la identidad soberana de xolosarmy.xec. El flujo ya estaba funcionando:
La identidad quedó confirmada con estos datos de la red:
Alias: xolosarmy.xec
Wallet: ecash:qzdq0q65fwnt94rlcph5kllj0xcry6e0v58zrgp7a3
Tx alias: 8406ba40d1f760e807b6635a840c874e4ca8efd7ee323bb1a781539442288de1
Bloque: 952171
Status: confirmed
Source: chronik-indexer
Después, en la interfaz de ecash.mx/identidad, apareció el mensaje que cerró simbólicamente esta fase: "Alias verificado. Identidad confirmada." Pero una identidad que no participa todavía es una identidad dormida. El siguiente paso era convertir esa identidad en acción.
II El cambio estratégico: adelantar la Asamblea RMZ
El plan original para la Fase B tenía este orden: B1 (Telegram token-gated), B2 (Medallas/reputación) y B3 (Asamblea/votaciones). Pero durante el proceso se decidió cambiar la prioridad. La lógica fue poderosa: antes de cerrar el acceso a espacios privados o decorar perfiles con reputación visual, había que demostrar que la identidad soberana podía participar en decisiones.
Alias prueba identidad.
La Asamblea prueba voluntad colectiva.
III El diseño de la Asamblea: un voto por identidad
La arquitectura elegida para la Fase B3 fue un MVP de gobernanza con una característica central: Voto off-chain firmado, pero elegibilidad on-chain.
La regla inicial fue deliberadamente sencilla: 1 alias .xec confirmado + holder RMZ = 1 voto. No se pondera por cantidad de RMZ. Esto importa porque evita que la primera versión de la Asamblea nazca como una plutocracia. El MVP pone el centro en la identidad comunitaria.
IV Nace rmz-assembly-api
Para sostener esta nueva capa de gobernanza se creó un backend dedicado: ~/rmz-assembly-api. El proyecto se implementó con TypeScript, Express, Zod y JSONL. El primer commit dejó sembrada la estructura:
ea443c0 feat: add RMZ assembly API skeleton
GET /v1/assembly/health
GET /v1/assembly/proposals/:proposalId
GET /v1/assembly/proposals/:proposalId/results
GET /v1/assembly/proposals/:proposalId/audit.jsonl
POST /v1/assembly/eligibility/check
POST /v1/assembly/votes/prepare
POST /v1/assembly/votes
V La elegibilidad dejó de ser simulación
El backend comenzó a comprobar: 1) Que el alias .xec fuera válido, 2) Que estuviera confirmado, 3) Que la dirección del alias coincidiera con la wallet enviada y 4) Que la wallet tuviera RMZ.
{
"eligible": true,
"alias": "xolosarmy.xec",
"wallet": "ecash:qzdq0q65fwnt94rlcph5kllj0xcry6e0v58zrgp7a3",
"rmz": {
"holder": true,
"atoms": "100"
}
}
En ese momento, xolosarmy.xec ya no era solamente un alias verificado. Era una identidad elegible para votar.
VI La firma criptográfica real
Al principio faltaba una pieza esencial: verificar correctamente la firma mediante ecash-lib. Durante el proceso se identificó el formato usado por Tonalli Wallet: base64, 65 bytes, recoverable ECDSA, Hash double-SHA256.
Desde ese punto, el backend verifica que la firma sea válida sobre el mensaje exacto, que la public key derive a la wallet enviada y que esta coincida con el alias. Ese fue el momento técnico más importante de la jornada. El voto se convirtió en una prueba criptográfica real.
VII De localhost a producción: assembly.ecash.mx
El backend fue desplegado en el VPS. PM2 confirmó el servicio corriendo internamente en el puerto 3016. Se configuró Nginx, se emitió SSL con Certbot y la Asamblea quedó viva públicamente en: https://assembly.ecash.mx.
VIII El frontend: ecash.mx/asamblea
Con el backend funcionando, se implementó la página pública. Los archivos modificados en el repositorio demostraron la integración total del stack web: asamblea/index.html, src/asamblea/asamblea.js, assets/js/asamblea.bundle.js y package.json.
El sistema generó el mensaje canónico, el documento de voluntad listo para ser firmado por el usuario.
IX El primer voto real y la auditoría
Tonalli Wallet firmó el mensaje. El backend verificó la firma. La Asamblea aceptó el voto. La interfaz mostró:
Yes: 1
No: 0
Abstain: 0
effectiveVotes: 1
La Asamblea RMZ no quedó como un mockup. Quedó con un primer voto válido, auditable y efectivo guardado en archivos estructurados (JSONL), creando una memoria pública de la voluntad comunitaria.
Análisis: Lo que realmente se construyó
La identidad soberana dice: "Esta wallet tiene un nombre." La elegibilidad dice: "Este nombre pertenece a la comunidad RMZ." La firma dice: "Esta voluntad fue expresada por quien controla la wallet." El resultado dice: "Esta voluntad cuenta."
Hoy se construyó una primera forma de ciudadanía digital soberana sobre eCash. La ruta estratégica avanza: B3 Gobernanza (✅), B2 Reputación visual (siguiente) y B1 Acceso token-gated (al final).
X Memoria On-Chain: El NFT Conmemorativo
Para inmortalizar este hito histórico, la crónica y su esencia cultural fueron acuñadas permanentemente en la blockchain. Una pictografía azteca que representa el nacimiento de la ciudadanía digital fue minteada como NFT a través de Tonalli Wallet.
Este activo digital atestigua que xolosarmy.xec no solo tiene voz y voto, sino también memoria histórica inmutable.