Dear Luna Classic Community,
This is Genuine Labs and we brings you some exciting news. It has been a couple of weeks since our last report, although the software upgrade proposal is delayed due to an app hash error **already existed** in the current version, we have made significant progress. After extensive troubleshooting and collaboration with validators, we're proudly to announce that the bug was fixed in v3.
The final version of our work can be found at: https://github.com/classic-terra/core/pull/471
Highline of the works that we have done:
- Fix **app hash error** which exist from the current terra classic version
- Prevent **p2p storms** on the network
- Bump **mantlemint** and relevant dependencies that might break
- Collaborate with validators to test the stability of upcoming version
Let's dig into that!
## 1. Fix app hash error
The **app hash** error has **already existed** in the current version. It's due to the current app version does not support state sync in wasm, which will require nodes that use state-sync to download wasm seperately. Nodes that doesn't download wasm will get apphash if there is a instantiate wasm tx. Also, legacy contract is now will be supported with wasmd 0.45.0. Earlier, it's not possible for legacy contract to be import when calling init genesis.
We suggest all validator not running node in state sync mode until we upgrade the Terra Classic to sdk 47, or else we will get some problems and even **app hash** with some wasmd specific transactions.
## 2. Prevent p2p storms
We also backport some changes to prevent the **p2p storms** on Terra Classic, which is limiting the memo and receiver length in ibc-go for both ibc v6 and v7, the PR can be found at:
- https://github.com/classic-terra/ibc-go/pull/1
- https://github.com/classic-terra/ibc-go/pull/2
## 3. Bump mantlemint and relevant dependencies
The current **mantlemint** and some relevant dependencies like: classic-rust, classic-bindings,... might be broke when we change the version from v2 to v3 and upgrade the sdk46 to sdk47. Therefore, we took a look on them and create a few PRs:
- **Mantlemint**: https://github.com/Genuine-labs/classic-mantlemint/pull/1
- Classic-rust: https://github.com/Genuine-labs/classic-rust/pull/1
- Classic-bindings: https://github.com/Genuine-labs/classic-bindings/pull/1
## 4. Collaborate with validators for testnet
We're very grateful having the support of validators in rebel-2 testnet. Validators have provided critical feedback, participated in rigorous testing, and offered invaluable insights that have helped us identify and resolve issues promptly. Your helps mean a lot to us.
## Next Steps
That's all for the work we have done these previous weeks and this is the final report for "Upgrade SDK 47 Pay Per Job Proposal". We will create an upgrade proposal soon for the mainnet upgrade.
Best regards,
Genuine Labs Team