Cosmos, conoce a CometBFT

https://medium.com/the-interchain-foundation/cosmos-meet-cometbft-d89f5dce60dd

Hoy anunciamos el lanzamiento de CometBFT, un motor de replicación de máquinas de estado para la intercadena y más allá. CometBFT es un fork y sucesor de Tendermint Core y servirá como el motor oficial de replicación que impulsará el Interchain Stack. La visión a largo plazo para CometBFT es ser la elección principal de motor de replicación para blockchains específicas de aplicaciones, confiables, seguras y a gran escala. ¡Compromete tus bloques con CometBFT hoy mismo!

La Interchain Foundation, Informal Systems, el equipo del Cosmos SDK y numerosos otros equipos en el ecosistema de Cosmos han estado trabajando juntos para preparar este lanzamiento. Este artículo aborda algunas de las preguntas más importantes que rodean este lanzamiento. Tenga la seguridad de que hemos estado trabajando arduamente para que la transición a CometBFT sea lo más fluida posible. Cubriremos detalles de antecedentes, la visión y los objetivos de CometBFT, los equipos detrás de este esfuerzo y los próximos pasos en términos de implicaciones técnicas.

¿Por qué ahora? Decidimos desarrollar el motor de consenso insignia de Cosmos bajo este nuevo nombre para marcar múltiples cambios importantes que están barriendo el ecosistema.

En el aspecto técnico, la intercadena ha evolucionado significativamente en los últimos años. Estamos viviendo en un mundo nativo de IBC y multi-cadena. ABCI 2.0 es una pieza crítica que falta en el Interchain Stack, al igual que aspectos de diseño o aseguramiento de calidad como modularidad, integración o pruebas rigurosas. Además, el abandono de las versiones v0.35 y v0.36 de Tendermint Core expuso limitaciones técnicas en la forma en que se realizaba el desarrollo; consulte aquí para obtener más detalles.

En 2022, las organizaciones que mantienen Interchain Stack iniciaron un enfoque estratégico para mitigar las limitaciones técnicas mencionadas anteriormente. Este enfoque implicaba construir y dedicar un equipo completo a Tendermint Core en Informal Systems. Además, en la preparación de las versiones, comenzamos a priorizar la calidad y la integración con el resto de Interchain Stack (es decir, Cosmos SDK, IBC y los bloques de construcción de intercadena más amplios).

En el aspecto administrativo, no somos propietarios de la organización de GitHub de tendermint ni de los derechos de marca "Tendermint". All in Bits (AiB) es el propietario. El desarrollo del software de Tendermint Core ha tenido lugar fuera de All in Bits durante los últimos tres años. Sin embargo, la propiedad de AiB de la marca planteaba un riesgo continuo de acción legal por marca registrada. Sin acuerdos complicados con AiB, no sería posible mitigar completamente este riesgo que pendía sobre los desarrolladores de una pieza fundamental del Interchain Stack.

Como mencionamos anteriormente en Twitter y según esta discusión, AiB decidió unilateralmente archivar el repositorio de Tendermint Core. Por lo tanto, el camino a seguir para continuar la trayectoria de desarrollo y como alentó AiB, fue bifurcar el repositorio de Tendermint Core. CometBFT se basará en los cimientos sentados por Tendermint Core, con un desarrollo renovado centrado en los usuarios, la calidad y la integración.

En línea con estas preocupaciones técnicas y administrativas, los cambios más importantes están en la visión a largo plazo del proyecto, los objetivos y la administración. Esto nos lleva a la siguiente parte de esta discusión.

¿Qué sigue? Como administrador comprometido del ecosistema de Cosmos e intercadena, la Interchain Foundation sirve como un anfitrión confiable para la financiación de bienes públicos y activos. La ICF ha sido la propietaria de la marca "Cosmos" desde su inicio y protege su uso en beneficio de la comunidad en general. De manera similar, la ICF ha registrado la marca "CometBFT" y ha establecido la organización de GitHub de CometBFT, y tiene la intención de supervisar ambas a largo plazo en beneficio del creciente intercadena. CometBFT seguirá siendo de código abierto y con licencia Apache2.0. Invitamos a todas las partes interesadas a contribuir al crecimiento y desarrollo de este software y promover sus valores de código abierto.

Como se mencionó anteriormente, el mandato a largo plazo de CometBFT es ser la elección principal de motor de replicación para la intercadena. El equipo de Cosmos SDK, los equipos de IBC, los mantenedores de CometBFT y los numerosos equipos de ingeniería que componen la intercadena, tanto a nivel de aplicación como de bienes públicos, comparten la visión común de hacer de CometBFT un lugar donde los equipos puedan experimentar con características novedosas, construir e iterar con optimizaciones y garantizar un alto grado de flexibilidad para los usuarios, al tiempo que se mantiene la integridad y robustez del stack. Si eres un contribuyente al Interchain Stack, operas validadores o nodos, te integras con otros ecosistemas o te estás familiarizando con Cosmos como nuevo usuario, tu ayuda sería muy apreciada para hacer realidad esto. Consulta las "Referencias" a continuación sobre cómo ponerte en contacto con nosotros.

¿Cuáles son los objetivos de CometBFT? Como se describió anteriormente, esto marca una nueva fase en la intercadena. Su motor de consenso está evolucionando para ser un bloque de construcción especializado para un mundo nativo de IBC. Buscamos continuar trabajando en estrecha colaboración con el equipo de Cosmos SDK y los usuarios actuales, al tiempo que facilitamos la adopción para el creciente ecosistema de desarrolladores de aplicaciones que construyen sobre ABCI y con IBC. El objetivo subyacente a largo plazo de CometBFT es desempeñar un papel clave en el apoyo al crecimiento de la intercadena.

Más específicamente, los objetivos de CometBFT son:

Enfoque sólido en el usuario, con una estrategia de producto claramente articulada que coloca las necesidades de sus usuarios en primer plano. Esta es una elección estratégica para asegurar que CometBFT sea relevante y proporcione utilidad. Mejora de la garantía de calidad y garantías de corrección, con el objetivo de especificar y probar rigurosamente nuestra implementación utilizando técnicas avanzadas como las pruebas basadas en modelos. Estamos aportando nuestra experiencia en especificaciones y métodos formales para reforzar la QA existente, que ya se complementaba con esfuerzos de pruebas a gran escala. Modularidad, centrándonos en los límites adecuados de la abstracción, permitiendo que el sistema se desmonte si es necesario, permitiendo una integración por partes en proyectos que dependen de él. Queremos permitir que CometBFT se utilice cada vez más como una biblioteca y minimizar las bifurcaciones y fragmentación proporcionando nuevas interfaces para admitir la creciente variedad de casos de uso. Lanzamiento de funcionalidades más rápido sin sacrificar calidad mediante la actualización progresiva de la arquitectura del sistema para actuar como una plataforma sólida para el cambio, así como mediante una coordinación de proyectos más suave en todo el Interchain Stack. Una táctica esencial para cumplir con estos cuatro objetivos es la integración estrecha en todo el Interchain Stack; esto servirá como un punto de diferenciación importante entre CometBFT y otras bifurcaciones de Tendermint Core. Al construir sobre la sólida base que proporciona Tendermint Core, ABCI 2.0 será la primera iteración de este enfoque mencionado anteriormente. Presentaremos un plan detallado de hoja de ruta para 2023 a principios del segundo trimestre.

¿Quién está detrás de CometBFT? El lanzamiento de CometBFT fue una decisión multiorganizacional. CometBFT es supervisado por Informal Systems en colaboración con un gran número de partes interesadas de Cosmos. El lanzamiento involucró trabajo en varios equipos de toda la intercadena, incluidos Cosmos SDK, IBC, Osmosis, Cosmos Hub y coordinación con Agoric, Axelar, Oasis, Penumbra, Celestia, Anoma, Skip, Umee, Confio, Nomic, Numia, Sei, Evmos, Sommelier, Andromeda, Cronos, entre muchos otros.

El equipo de CometBFT en Informal está compuesto por algunos de los contribuyentes más talentosos y apasionados de Cosmos. Publicaremos en Twitter una presentación de los miembros principales del equipo y de los miembros contribuyentes de otros equipos de la intercadena. Por el momento, basta con decir que el equipo principal está formado por ingenieros de investigación, veteranos de DevOps e ingenieros de software con décadas de experiencia combinada, así como líderes de proyectos, productos y tecnología con más de 10 años de experiencia combinada en Cosmos.

¿Cuáles son los próximos pasos inmediatos? El lanzamiento de CometBFT es un esfuerzo sustancial que aún está en curso. Aquí hay algunas cosas importantes que debes saber.

Si tu trabajo depende de CometBFT, considera unirte a las llamadas comunitarias, que se organizan cada dos semanas los jueves: https://groups.google.com/g/cometbft-community/. Además del repositorio de GitHub, la llamada comunitaria es un foro importante para discutir el desarrollo de CometBFT. Es el lugar donde los desarrolladores recopilan comentarios de ti, responden preguntas y donde tú, como usuario, puedes intercambiar conocimientos valiosos con otros usuarios.

Si tu aplicación está construyendo sobre el Cosmos SDK: El equipo de Cosmos SDK lanzará nuevas versiones del SDK para las líneas 0.45, 0.46 y 0.47. Estos lanzamientos utilizarán CometBFT v0.34 en lugar de Tendermint Core 0.34, según el acuerdo entre los contribuyentes y proyectos de Interchain Stack. La actualización a esta versión del SDK no requiere una actualización coordinada, ya que es un cambio de versión menor. El registro de cambios del Cosmos SDK documentará los cambios relevantes para tu aplicación.

Si estás construyendo directamente sobre Tendermint Core: Como mantenedores, recomendamos que cambies de Tendermint Core v0.34 a CometBFT v0.34. Proporcionaremos instrucciones de actualización una vez que realicemos nuestros primeros lanzamientos. Mantente atento al repositorio de Github aquí.

Si mantienes una bifurcación de Tendermint Core: Recomendamos hacer la transición a CometBFT lo antes posible, por ejemplo, volviendo a basar o seleccionando los cambios relevantes en una bifurcación de CometBFT. Estaremos encantados de ayudarte en este proceso. Además, recibiremos tus comentarios e información sobre tus requisitos específicos para eliminar la necesidad de mantener una bifurcación (consulta la referencia "comunidad" a continuación).

Last updated