Zeitgeist plans to extend the chain to a hybrid chain by providing smart contract functionality, which allows developers to easily extend the protocol in respect to and beyond the prediction market functionality.
Motivations for this extension include that multiple projects signaled the intent to build on Zeitgeist, the attractiveness of being able to easily extend the protocol, the fact that writing pallets is complicated, slow, and requires review from the Zeitgeist team (scaling limited), and the potential for the low entry barrier to developing on Zeitgeist to multiply the pace of extension and increase use-cases for the Zeitgeist token. As a side effect, all the new uses cases of ZTG provide a better foundation for marketing.
There are two options for Zeitgeist in this endeavor, which include pallet-contracts and pallet-evm. The team has talked with their advisory experts in the smart contracts field and has found that while pallet-evm provides full Solidity and Metamask support, it cannot be ported to pallet-contracts. The advisory experts recommended to use pallet-contract for numerous reasons that are outlined in the section "pallet-contracts".
pallet-contracts is actively developed and receives a lot of attention from Parity. It supports Solidity partially (some features like https://docs.soliditylang.org/en/latest/yul.html assembly are not supported), with full support planned. Ethereum RPC support is on the roadmap (implies Metamask support). pallet-contracts can be run in permissioned or permissionless mode and can call dispatchables and use chain extensions provided by pallets to interact with the pallets and retrieve data from pallets. pallet-contracts uses Ink! as the main language to write contracts, which is based on Rust and can be used by the team to quickly prototype solutions. Tooling already exists in the form of a contracts frontend and a block explorer. Zeitgeist can participate in an incubator project to get advice and audits from experts. The effort to integrate pallet-contracts without any chain extensions is very low.
Potential risks include scarcity of computation time and storage space arising in the future, but both issues can be resolved by converting Zeitgeist to a relaychain on which the core prediction market functionality and smart contracts related to this live. Those risks do not harm the functioning of the core protocol at all, as the core logic always takes predence over smart contracts. Under the umbrella of the Zeitgeist relaychain, multiple Layer 2 chains that extend the protocol beyond the prediction market functionality could be onboarded as parachains (see figure 1). This effectively allows to scale potentially unlimited in terms of computation time and disperse the storage requirement to multiple blockchains. From a technical perspective, no more risks are known.
Figure 1: Zeitgeist relaychain
Zeitgeist wants to make their chain better by adding smart contract functionality, which will make it easier for developers to add new features. They have two options for this: pallet-contracts and pallet-evm. They decided to use pallet-contracts because it is easier to use and has more support. There are some risks, like running out of space or time, but they can be fixed by making Zeitgeist into a relaychain. This will let them add more features and keep everything working well.
Adding ink! dapps to the Zeitgeist parachain sounds like the easiest way to develop and expand the Zeitgeist ecosystem.
Will these new dapps have to be approved by governance to be included? Similar to what we have with Osmosis and Mars? If that's the case then it makes sense to add smart contract functionality to Zeitgeist.