Updating the Potential Carthage Proposal and Resetting the Carthagenet Test Network
On a previous post, we described the potential Carthage proposal as well as the Carthagenet Test Network. For the past weeks, Cryptium and Nomadic Labs have not only been updating the carthagenet
test network, but also continuously tested, analysed, and refined the potential Carthage proposal. This article aims to inform the Tezos community about the latest updates on the potential Carthage proposal, as well as the plans for the carthagenet
test network.
- For more context and motivations regarding the new testnets’ strategy, we strongly recommend reading “Lessons Learned from the Babylon Protocol Upgrade: A Retrospective”, before continuing.
- For a broader context around the
carthagenet
test network, its purpose, and the potential Carthage proposal, we strongly recommend reading “On the Carthage Proposal and the Carthagenet Test Network” before continuing.
The Updated Carthagenet Test Network
What is it?
The purpose of the carthagenet
test network is to serve as an open and accessible vehicle for core developers, bakers, ecosystem developers, and broader community to thoroughly test not only the potential Carthage proposal’s features, but also the proposal’s transitions from injection until post-activation. The first version of thecarthagenet
test network was launched on the 7th of November (see history under “What is the timeline?”).
What is the Updated Timeline?
carthagenet
test network was reset on Friday the 29th of November 2019, at ~10 am Paris/Zug time. At the time writing it represents005
, aka current mainnet.- It is currently being operated by willing bakers of the baking Slack group.
- Cryptium and Nomadic Labs are planning to inject the hash of the updated potential Carthage proposal into the updated
carthagenet
test network on Monday, the 9th of December 2019, during afternoon Paris/Zug time. - The updated potential Carthage proposal on the updated
carthagenet
test network will be subject to a sped up governance process and will be activated on the updatedcarthagenet
test network in 2–3 days* - After the 2–3 days of governance process, the updated
carthagenet
test network will contain all the new features of the updated potential Carthage proposal. - The updated
carthagenet
test network will be maintained by and dedicated to developers, bakers, and the broader ecosystem that wishes to test and interact with it. See “How to Interact with the Carthagenet Test Network” below for further information.
*For testing purposes, the governance parameters have been tweaked and the assumption of the protocol successfully passing has been made. However, these parameters and assumption are only valid on the updated carthagenet
test network, which is a testnet created for this purpose.
How to Interact with the Updated Carthagenet Test Network
In order to test the updated potential Carthage proposal on the updated carthagenet
test network as thoroughly as possible, we encourage bakers, developers, and the rest of the community to actively interact with the testnet.
Bakers
The updated carthagenet
test network is currently operated by willing bakers. In order to simulate real baker participation as much as possible, we encourage bakers to join the updated carthagenet
test network following the documentation: http://tezos.gitlab.io/introduction/test_networks.html#carthagenet
Developers
At the moment, the most accessible way of interacting with the updated carthagenet
test network is via the tezos-client
or command line. Find here some documentation on how to install and use tezos-client
are applicable to the updated carthagenet
test network. When running the commands, make sure you include the flag -A carthagenet.tezos.cryptium.ch
, which allows you to interact with one of Cryptium Labs’ synched carthagenet
test network full nodes:
$ tezos-client -A carthagenet.tezos.cryptium.ch [...]
Community
In addition to the command line tools, the Tezos community can also interact with the updated carthagenet
test network in other ways, such as through transfers or common day-to-day interactions. To do so, you can use many services supporting the updated carthagenet
test network:
- The
carthagenet
test network faucet: https://faucet.tzalpha.net - The block explorer Tezos ID: https://carthagenet.tezos.id
- The block explorer TzStats: https://carthagenet.tzstats.com
- The AirGap’s block explorer TezBlock: https://carthagenet.tezblock.io/
The Updated Carthage: the Housekeeping Proposal
What is it?
The Carthage proposal is referred to as a housekeeping proposal as it does not include large features, but rather focuses on code clean-up, adding optimisations, and fixing small issues on the existing protocol version — this is in alignment with the lessons learnt and the goal of soothing the frequency of large scale feature releases. — On the Carthage Proposal and the Carthagenet Test Network
What are the updates?
Since the publication of “On the Carthage Proposal and the Carthagenet Test Network” article, Cryptium and Nomadic Labs have continuously worked on testing, analysing, and refining the potential Carthage proposal. In addition to the Gas Limit Increases and the housekeeping features, the updated potential Carthage proposal includes:
- An updated rewards function (source), on which Nomadic Labs will publish a detailed article.
- Two additional housekeeping features, details of which you can find in the source files (source 1, source 2) and in the updated
changelog
.
Who can inject it?
The updated potential Carthage proposal is ready and you can find the source files on this Gitlab branch. By open-sourcing the proposal, the core developers hope to encourage even more community involvement by enabling the community to not only assess the features in advance, but also, if the community wishes to, to inject the proposal on mainnet through their bakers.
How to inject it?
Injecting a new proposal is generally straight-forward and any baker, no matter how many rolls, can do it. In order to inject the proposal:
- Download the branch with the protocol to a machine with a running
mainnet
node and thetezos-admin-client
installed. - Then run
tezos-admin-client inject protocol src/proto_006_PsXXXX/lib_protocol
*. Now your node is aware of the new protocol. - The last step is to submit a proposal to the on-chain governance mechanism. In order to do that please run
tezos-client submit proposal for <delegate> <PsXXXX>
*.
*Remember to replace <PsXXXX>
with the canonical hash once it’s been published.