UPDATE MAY 27TH: PHOENIX WILL HAPPEN ON JUNE 1ST OF 2020 – UPGRADE YOUR NODES!

This is the explanation in a nutshell:

UPDATE APRIL 17TH: Post on Reddit by /u/q9fm.

The Phoenix protocol upgrade on block 10,500,839 is scheduled to occur on Thursday, Jun 4th, 2020:

Phoenix upgrade specification: https://ecips.ethereumclassic.org/ECIPs/ecip-1088

Phoenix upgrade countdown: https://etcnodes.org/phoenix

Phoenix fork and uncle monitoring tool: https://phoenix.fault.dev

Please make sure your nodes are upgraded to the latest version:

Supported Clients: https://ethereumclassic.org/development/clients

Detailed Per-Client Upgrade Instructions: https://hackmd.io/IPA7zPwpQDy-1U0reeppcQ

More Articles and Resources:

The Classic testnets Mordor and Kotti already activated Phoenix in March and April:

UPDATE APRIL 8th: Phoenix has been moved to accepted status.

Suggested Clients for Phoenix:

The suggested clients to use for the Ethereum Classic Phoenix upgrade, which will happen on block number 10,500,839 in the mainnet, are:

Hyperledger Besu 1.4.1: https://github.com/hyperledger/besu/releases

https://github.com/hyperledger/besu/releases Core Geth 1.11.0: https://github.com/etclabscore/core-geth/releases

As of April 8th, Open Ethereum (ex-Parity) did not accept a pull request for the ETC Phoenix upgrade and hasn’t done a release in 4 months. It is very uncertain if this client can be recommended in the future. It is recommended for Parity users to use Besu instead.

Multi Geth has been barely maintained (3 pull requests in 5 months). Even though its developer, Wei Tang, has added Phoenix support in the last minute, it is very uncertain what the future will look like. Therefore, it is recommended that Multi Geth users use Core Geth instead.

PHOENIX is now expected to happen on June 4th of 2020 as per the countdown clock, which you can find here: https://etcnodes.org/phoenix.

IMPORTANT NOTICE: This upgrade replaces the Aztlán & Phoenix upgrades.

Phoenix

On an Ethereum Classic (ETC) core developer call on February 26, 2020, it was decided by rough consensus that the Phoenix upgrade, which replaces the Aztlán & Phoenix upgrades announced before, will be moved to last call .

Rationale

An explanation for the replacement mentioned above was laid out in a note by the ETC Labs organization with the advice of ETC Core, ChainSafe, and Byzantine Fault and supported, by rough consensus, by the rest of the participants:

These concerns arise from implementation complexity, gray areas, and unforeseen in technical specifications, and a desire to manage and minimize the overall risk exposure of the network.

Specifically, core developer @q9f laid out the problems as:

Aztlán needs to be rejected as it’s having multiple issues #217 #226 #227

Phoenix needs to be rejected as it’s not of a sufficient patch especially with the context of the broken testnet activations #262

Testnet patch should be rejected to favor a clean new hardfork meta #293 #297

Next Steps

This means that, if there are no new objections or no issues are found during the testing period, the upgrade will be set to be activated on the ETC mainnet on block number 10,500,839, which is estimated to happen around June 10th 4th of 2020.

Details

Phoenix Upgrade (ECIP-1088)

Abstract

Add support for a subset of protocol-impacting changes introduced in the Ethereum Foundation (ETH) network via the Istanbul hardforks. The proposed changes for Ethereum Classic’s Phoenix upgrade include:

Add Blake2 compression function F precompile

precompile Reduce alt_bn128 precompile gas costs

Add ChainID opcode

Repricing for trie-size-dependent opcodes

Calldata gas cost reduction

Rebalance net-metered SSTORE gas cost with consideration of SLOAD gas cost change

This document proposes the following blocks at which to implement these changes in the Classic networks:

999_983 on Mordor Classic PoW-testnet (April, 2020)

on Mordor Classic PoW-testnet (April, 2020) 2_200_013 on Kotti Classic PoA-testnet (April, 2020)

on Kotti Classic PoA-testnet (April, 2020) 10_500_839 on Ethereum Classic PoW-mainnet (June 10th, 2020)

For more information on the opcodes and their respective EIPs and implementations, please see the Specification section of this document.

Specification

Technical specifications for each EIP can be found at those documents respectively:

EIP-152: Add Blake2 compression function F precompile

precompile EIP-1108: Reduce alt_bn128 precompile gas costs

EIP-1344: Add ChainID opcode

EIP-1884: Repricing for trie-size-dependent opcodes

EIP-2028: Calldata gas cost reduction

EIP-2200: Rebalance net-metered SSTORE gas cost with consideration of SLOAD gas cost change

Voice Call

Bellow is today’s ETC core developer voice call, which was conducted on the ETC Discord voice channel:

Help & Information

For help and information about this upgrade please use the resources and contacts listed bellow:



• Ethereum Classic Discord Server: https://discord.gg/dwxb6nf

• ETC Core Team: https://twitter.com/etc_core

• Stevan Lohja of ETC Core: https://twitter.com/stevanlohja

• ETC Cooperative: https://twitter.com/ETCCooperative

• Bob Summerwill of ETC Cooperative: https://twitter.com/BobSummerwill

• Ethereum Classic Community Account: https://twitter.com/eth_classic

• Etherplan: https://twitter.com/MyEtherplan

Code is Law