-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy path002_SOFTWARE_VERSIONING.json
6 lines (6 loc) · 4.23 KB
/
002_SOFTWARE_VERSIONING.json
1
2
3
4
5
6
{
"deposit": "5000000000ugovgen",
"description": "# Cosmos' softwares versioning\n\n## Changelog\n\n* August 14th 2024: First draft\n* September 13th 2024: Update status to \"On Chain\"\n\n## Status\n\nOn Chain\n\n## Summary\n\nThis proposal defines the versions of the software stack used in AtomOne,\nnamely the versions of Cosmos-SDK, Tendermint/CometBFT and Gaia. It also\ndescribes the reasoning behind the choice of these versions.\n\n\u003e [!NOTE]\n\u003e This \"*Sentiment Proposal*\" is intended solely to assess the opinions and\n\u003e ideas of the GovGen community regarding the future of AtomOne.\n\u003e As such, the results of the vote on this Sentiment Proposal are not intended \n\u003e to be, and will not be, binding or determinative in any way.\n\u003e \n\u003e It is the proposal submitter's understanding and hope that the GovGen\n\u003e community will be able to use the results of this and other Sentiment\n\u003e Proposals to develop in the future a binding decision-making/governance\n\u003e process to be determined (potentially including an upgrade to GovGen's\n\u003e software) with a goal of shaping the potential AtomOne chain. At this early\n\u003e stage, this and other Sentiment Proposals are anticipated to be introduced\n\u003e with an intention to better understand the GovGen community’s general\n\u003e preferences and views, and also to measure the ratio of active participants\n\u003e to help determine the quorum for future proposals.\n\n## Context\n\nAtomOne intends to be a minimalist chain to limit the attack surface.\nTherefore, the choice of software versioning is critical to ensure good\nreliability, along with a limited set of dependencies and modules.\n\n## Decision\n\n### Cosmos-SDK\n\nThe more important part of the dependency is the Cosmos-SDK, so it is the first\nversion we need to define.\n\nWhile v0.45 is a battle-tested version and has proven to be viable, an [audit\ndriven by OAK Security][audit] in early 2024 has reported some serious threats\nthat have been fixed in v0.47. \n\nOn the other hand, while v0.50 brings some interesting features in term of\nmodularity, it is not used by the CosmosHub yet (at the time of writing,\nGaia v19 upgrade proposal is still in voting period). As we believe that newer\nversions have less guarantees in terms of reliability, we suggest to discard\nv0.50 as well.\n\nIn conclusion, we suggest that AtomOne depends on Cosmos-SDK v0.47.\n\n### Tendermint/CometBFT\n\nIn order to ensure a good compatibility between the application and the\nconsensus engine, we suggest using the same version of the consensus engine\nthan the one used by Cosmos-SDK 0.47, which is CometBFT v0.37.\n\n### Gaia\n\nWith the defined version of the Cosmos-SDK, this limits the choice of Gaia\ncodebase to fork to 4 versions:\n\n- v15 fixes all the issues reported by the OAK audit\n- v16 adds some IBC/ICS functionalities\n- v17 upgrades ICS to 2.0\n- v18 adds the wasmd and feemarket module\n\nAtomOne will not have any VM functionality as\nspecified in the draft of the [Constitution], thus v18 gets automatically discarded.\n\nConsidering that the first version of AtomOne will not have IBC or ICS\nenabled, there is no advantage in choosing to fork v16 or v17.\n\nThis leaves out only v15, which is the version we propose to fork for AtomOne.\n\n## Consequences\n\n* Fork of Gaia v15 with Cosmos-SDK v0.47 and CometBFT v0.37\n\n## Alternatives\n\nShould this proposal fail to reach approval from the community, alternative\nversions might be discussed and used instead. \n\n## Governance votes\n\n* **YES**: You support the outlined software versioning choice.\n* **NO**: You do not support the proposed software versioning choice and\n advocate for an alternative approach.\n* **NO WITH VETO**: You strongly oppose the proposal due to perceived\n inequities or deviations from AtomOne's foundational principles.\n* **ABSTAIN**: You prefer to contribute to quorum without endorsing or opposing\n the proposal directly.\n\n[audit]: https://github.com/oak-security/audit-reports/blob/main/Cosmos%20SDK/2024-01-23%20Audit%20Report%20-%20Cosmos%20SDK%20v1.0.pdf\n[Constitution]: https://github.com/atomone-hub/genesis/blob/main/CONSTITUTION.md#article-4b-the-implementation\n",
"title": "Cosmos' softwares versioning",
"type": "Text"
}