(Any views expressed in the below are the personal views of the author and should not form the basis for making investment decisions, nor be construed as a recommendation or advice to engage in investment transactions.)
The Fork Era
On August 9th, 2023 the chain forked at block 5094734 unexpectedly. Here is what happened (details here)
- The Golang language specifies a sort function that guarantees a sorted list. The exact order of elements with the same value used for sorting is likely an undefined behavior.
- Different implementations of Golang compilers can produce different sorted results for the same list.
- When the Wallet Connect AZs (1/2 and 2/2) were approved for payment two TXs were created with the same values at Block 5094734. The network nodes sorted these two TXs differently because the standard sort function used in go-zenon did not enforce ordering in the event two values were identical.
- The result was a network fork. One chain stopped producing blocks for about two hours.
- The developers patched go-zenon by using "Stable Sort" which is another specified standard library function that preserves the order of elements in the input list if they are the same value.
- No funds were lost. The patch was merged August 11th and all node operators upgraded their software. SYRIUS was patched in v0.0.7 and all users were asked to upgrade.
- Stable Sort was implemented to preserve the order of elements in a list.
- libznn was fixed for Windows users.
- @Moonbaze implemented an extraData field that can used for incentivized nodes. More below.
Several developers have been working on SYRIUS to expand the features, test the code, and squash bugs.
- @Vilkris launched a release candidate that implements P2P swaps on mainnet. As of this writing he has released v0.1.0.rc.8. He also wrote a swap tutorial here: https://medium.com/@vilkris/p2p-swap-tutorial-3805f10d2d21
- @Vilkris also updated the HTLC Watchtower code. This script protects P2P swappers in the event they lose connectivity after a preimage is revealed. This means if two parties perform a P2P swap and the sender exposes the preimage (secret key) and the receiver fails to unlock the funds the watchtower will step in and do it for them. The network currently has (3) active watchtowers.
- @AlienC0der submitted a PR for SYRIUS v0.0.7. This is the culmination of months of work and countless hours of community testing. There are too many features to describe here, but the biggest feature was WalletConnect which enabled SYRIUS to interact with the Trustless Bridge. You can see all the commits here: https://github.com/zenon-network/syrius/pull/23/commits
- @sol, @cryptofish and @vilkris have been auditing the code and testing it nonstop.
- @sumoshi21 and @sumamu have been working on upgrading the Orchestrator which powers the bridge. After the fork we needed to perform a new keygen ceremony. We encountered a few issues when upgrading the libp2p library.
- After several attempts we successfully generated a new key and the network has 28 orchestrators. You can check their status on status.bridge.zenon.community or zenonhub.io.
- We discovered an issue after the fork where orchestrators were trying to process TXs from the forked chain. We performed a "hard reset" and that fixed the issue. If you are an Orchestrator and have not removed the queues and events yet, please do so.
- I've seen in chat messages that @Dexter is refactoring the Bridge Website, but I cannot confirm that.
- @Dexter does need to enable the extraData function in the bridge website to activate incentivized nodes. If you want to learn how to run a node and earn incentives, message @deeZNNutz on forum.hypercore.one
- @AlienC0der released the EVM compatible Extension Chain on a private testnet after a few months of work.
- @sol and @chadass deployed a testnet contract.
- @0x3639 is trying to deploy an Explorer for the extension chain.
- If you want some testnet tokens, contact @AlienC0der on forum.hypercore.one
- Metamask recently enabled Snaps, which is an a application built by a third-party developer that adds features and functionality to MetaMask. Snaps can connect to blockchain protocols beyond Ethereum, show insights about transactions, display notifications, add new privacy and identity features, and much more.
- Rather than build an entirely new NoM browser wallet, devs can develop a Zenon Network Snap to be used within the Metamask Framework.
- @AlienC0der posted about it here. Sounds like @Vilkris, @AlienC0der and possibly @Dexter are interested in developing a Snap for NoM.
- Have a look at @Vilkris' analysis and if you want to learn more watch this video.
Native Mobile Wallet
- @DrBlaze_21 released some test versions of the Native Mobile Wallet in July 2023. The community tested two versions and provided feedback.
- Since July the Dr. has retreated to his his computer and has not been heard from since.
- This alien comes and goes, so let's hope we hear from him in the coming months.
P2P BTC Swaps
- @Vilkris has started to investigate P2P Swaps between BTC <> ZTS in SYRIUS. Check out the P2P conversation.
- If you want to see the latest workflow diagram it can be found here.
Ledger Hardware Support
- @cryptofish submitted the Ledger Zenon App for registration to the Ledger Live app.
- Check out the live demo or join the conversation here.
- @cryptofish continues to maintain the .net SDK and .cli tool to support his work
- @0x3639 formed an LLC in Wyoming under which we submitted the application.
- @georgezgeorgez started a discussion about the PTLC standard on the hypercore.one forum.
- If you did not know, PTLCs will provide TX privacy at the protocol level.
- If you want to learn more about PTLCs, read George's AZ.
- The PTLC PR was submitted, but Kaine and others are still reviewing his code.
- @georgezgeorgez recently posted a public work log if you want to read about some of the "less glamorous" work he is doing.
- If you want to learn more about the Embedded Governance design read this forum post.
- @georgezgeorgez's last reported delivery date? zoon(ish)
- @sol is finishing up the Dart SDK and znn-cli update. In addition he is researching tech that can be applied to Zenon.
- @CryptoFish updated the .net SDK and .net cli to support receive network changes.
- @DigitalSloth and @0x3639 offer public nodes as a free service to the community.
- To incentivize these are new public nodes, @moonbazze and @sumamu enabled an extraData filed in go-zenon. This will interact with the bridge and when users move $ZNN or $QSR to NoM from Ethereum without an affiliate code the node used for the transaction will receive 1%. DM @0x3639 on forum.hypercore.one if you want to learn more.
- Dynamic Plasma is becoming an important roadmap deliverable. @georgezgeorgez, @moonbazze and @AlienC0der all expressed interest in designing the system. Look for more information about Dynamic Plasma at the next Developer Coordination Meeting #2.
@DigitalSloth continues to push out new features for ZenonHub.io.
- New Bridge Status Page
- New Orchestrator Status Page
- New Telegram Bot for Zenon Bridge Alerts
- Added a favorites page for Addresses | Tokens | Transactions | Momentums. This allows users to easily follow address activity.
- New highly available public nodes found here: https://zenonhub.io/nodes
- Added Flagged Account feature. To submit a flagged account issue a PR on explorer.php. Add the address to
Developer Coordination Meeting
- NoM developers held their first coordination meeting on 8 Sept 2023. If you missed it, you can watch below.
- The next developer coordination meeting will be held 29 September 2023 at 12:00 PM UTC.
- Check out the latest agenda for the meeting #2.
- We are working towards a roadmap and will discuss the design and implementation or dynamic plasma
- Mr. Kaine admitted several community developers to github.com/zenon-network. The developers can review and accept pull requests.
- Mr. Kaine added "tweet together" to /zenon-network which allows the community to submit tweet requests to the @zenon_network twitter account. If you want to submit a tweet follow these instructions. Mr. Kaine still needs to fix a setup issue.
Zenon Network Raffle
- @znnrigel on Telegram recently released a Zenon Network Raffle bot (@zenonrafflebot). Community members can participate in raffles for $ZNN, $QSR, and $PP.
- Read this forum post if you want to learn how to particiapte
- Zenon.Org pushed its refreshed website into staging.zenon.org. It's currently undergoing some final optimizations for Attribute performance marketing tracking. It also integrated the NoM bridge affiliate referral system into the site so that @AttributeLink campaign links will attribute the affiliate referral to the campaigner's zenon address. https://x.com/mehowbrainz/status/1700322860072358039?s=20
- The new Zenon.Org static funnel framework is in development. It will allow us to craft lightweight, guided funnels for simple tasks i.e. download the latest version of syrius/decks, guide users to a relevant link i.e. Telegram/Discord channel, or Github Repo -- or even educate users in a clutter-free environment (during first touchpoint awareness campaigning or lower funnel onboarding stages). The function of such funnel will allow the marketer to be attributed for driving clicks in certain directions. You can see a preview of this funnel framework here: https://forum.zenon.org/t/landing-page-funnel-framework/1494?u=mehowbrainz
- The evolution of this static funnel framework will branch away from the current Zenon.Org framework into a standalone app which'll function to capture leads via Intercom, and onboard participants into various roles with deeplinks thanks to the available syrius WalletConnect integration.
- Zenon.Org recommends the community compiles a list of of Telegram / Discord / Twitter communities in order to organize AMA's and conversations to begin outbound campaigning: https://forum.zenon.org/t/compile-list-of-telegram-discord-twitter-communities/1621/13
- More badass animations from the Dr.