RegionX is a project designed to reduce deployment and operational costs for projects on the Polkadot network. It will enable existing parachains to procure only the Coretime they require, thereby lowering their operational expenses. It will also enable new teams aiming to deploy on Polkadot to do so at significantly lower expenses.
Context
Polkadot stands out as a service provider of trustless and resilient computation. Its consensus system is designed with validators grouped into cores, enabling the network to conduct multiple operations in parallel without compromising security.
Applications that intend to run on Polkadot need to reserve time on these cores. We refer to this time as ‘Coretime’. Polkadot makes very few assumptions about the tasks executed on cores, allowing for a great diversity of projects. However, due to this diversity, not all projects require the same amount of computational resources. In the current slot auction model, the option for Coretime procurement is very limited. The only option offered is access to an entire Polkadot core for a long period of time.
The new Agile Coretime model will allow for more flexible procurement methods. Although it provides the architectural foundation for flexible procurement, the options it offers are still fairly limited by itself.
Projects like RegionX will build on the foundation that the new model offers to enable greater flexibility in Coretime procurement.
The problem
The Agile Coretime RFC introduces two new allocation methods for Coretime on the Polkadot Ubiquitous Computer:
Bulk Coretime: Allocated in advance, this method involves periodic scheduling of Coretime through a specialized Coretime chain. It is designed for users who plan their Coretime needs ahead of time.
Instantaneous Coretime: In contrast, this method allows for allocation of Coretime on the Relay chain on an as-needed basis, right before usage and follows a block-by-block approach. It suits users requiring Coretime on short notice or for immediate tasks.
In this model, Bulk Coretime sold on the Coretime chain is represented in the form of NFT tokens, known as ‘regions’. These tokens represent ownership of Coretime for a predetermined duration, allowing their owners to assign them to particular tasks.
Every 28 days, the specialized Coretime chain launches a new sales cycle known as the, ‘Bulk Sale’, for these regions, thus enabling users to secure them for the upcoming time period. This periodic sales mechanism ensures that users can plan for and access the necessary Coretime in advance.
The assigned tasks will be executable on a Polkadot Core once the region becomes active in the upcoming 28-day cycle.
Coretime can be acquired either directly from the Coretime chain or from the relay chain for Instantaneous Coretime. Since Instantaneous Coretime is very short-lived, it cannot be traded. However, Coretime purchased from the Coretime chain, being represented as transferable NFTs, makes the creation of a secondary marketplace both feasible and practical.
The need for a secondary marketplace arises from two main limitations associated with buying regions directly from the Coretime chain:
The Coretime chain exclusively offers regions representing ownership of an entire Polkadot Core over a 28-day period. This allocation is excessive for most projects, leading to inefficient usage of Coretime.
Regions acquired from the Coretime chain become active only at the start of the upcoming 28-day cycle. This limitation implies that any task assigned to such a region can only be scheduled on a Polkadot Core during this specified period. Consequently, projects in need of immediate or imminent Coretime access must opt for Instantaneous Coretime.
The RegionX secondary marketplace aims to address these issues by providing a platform where regions purchased from the Coretime chain can be further traded and exchanged.
Unlike the regions offered by the Coretime chain, the marketplace will feature regions with a variety of properties. This diversity is made possible because users can modify the regions before listing them for sale, utilizing the partitioning and interlacing methods available on the Coretime chain.
Additionally, in the secondary market, it will be possible not only to acquire regions for the upcoming sales period but also to purchase regions that are currently active.
This will offer teams seeking to deploy on Polkadot a significantly broader range of options for Coretime procurement.
Proposal
We aim to create a marketplace designed to facilitate the trading of Coretime. Our goal is to offer a platform that existing parachains can utilize to procure the Coretime they require, thereby significantly reducing their operational costs.
However, our focus extends beyond just that. We aim to significantly reduce deployment costs on Polkadot, enabling more teams to bring their projects and ideas to production.
Since the Coretime chain doesn't support contract deployment, the marketplace logic needs to be implemented on another chain. Given that Coretime is represented in the form of NFTs, it's possible to transfer these assets to a chain that can host the marketplace. This is why we've invested significant time in creating a solution to transfer Regions using XCM.
For easier understanding, we've divided our project into three main components:
1. Core of the Market
The core of the marketplace works based on the order book model as outlined in our white paper. Coretime regions put up for sale are categorized into two types:
Active regions. The tasks that are assigned to active regions can currently be performed on a Polkadot core.
Inactive regions. These are the regions that will become active in the upcoming Bulk period. The regions purchased from the Coretime chain fall into this category until the start of the next Bulk period.
The pricing of inactive regions remains fixed at the amount initially determined by the seller. In contrast, the cost of active regions follows our dynamic pricing model, which accounts for gradual depreciation in value. Accordingly, the pricing of these regions reflects their decreasing value over time.
2. Order Processor
Purchasing Coretime from the secondary market through a user interface is a practical approach when the parachain is not yet operational, necessitating manual acquisition of Coretime by those intending to deploy it. This means that all new teams planning to launch on Polkadot will initially obtain Coretime manually via a UI interface.
However, parachains that are already up and running on Polkadot shouldn’t keep depending on the initial team for Coretime. For a parachain to be truly decentralized and resilient, it needs to establish a mechanism to autonomously procure Coretime, independent of any specific individuals.
Additionally, it’s crucial to acknowledge that parachains should not programmatically preset their market actions. Due to the fully transparent nature of these systems, such predetermined actions could easily lead to front-running attacks.
Parachains currently active on Polkadot must procure ‘inactive’ Coretime regions on a monthly basis for the upcoming Bulk period. By doing so, they ensure guaranteed access to Coretime in advance, maintaining uninterrupted operation of the chain.
In the order-based model we propose, each parachain can define the specific properties of the region it is looking for. For instance, a parachain might require a minimum of 50% of a Polkadot Core. Such requirements could be adjustable through the parachain’s on-chain governance system.
At the beginning of every bulk sale period, each parachain places an order on the secondary market, specifying their Coretime needs. These orders initially start with a bidding amount of zero. Anyone can support these orders by contributing their DOT tokens. This system is akin to the parachain slot auction crowdloan model, where community contributions help secure the parachain’s slot in the Polkadot network.
At the end of the order period, which is shorter than the bulk period, no new orders can be placed. The existing orders are then processed against the available regions for sale, with orders that have gathered the most DOT token contributions receiving the ‘best deals’ on the market.
A parachain may choose not to depend on crowdfunding to secure Coretime. If the parachain possesses DOT tokens it will be able to support its own order. However, in this scenario, the parachain's governance system must reach a consensus on the amount of tokens allocated for Coretime procurement.
3. Reward System
Just as participants in a crowdloan receive rewards if the parachain secures a slot, the parachain can determine the number of tokens allocated for rewarding users who contributed to the order. This mechanism incentivizes community support by offering tangible returns for contributions.
Moreover, this rewarding mechanism is practical because most parachains do not possess DOT tokens. Thus, they can motivate users to acquire Coretime on their behalf, offering rewards in the parachain’s native currency.
The amount of tokens allocated to rewarding contributors can be decided by the parachain’s governance system. These rewards could either be newly minted tokens, potentially leading to inflation, or sourced from the parachain’s treasury. It is up to the parachains to decide.
Coretime Traders
In the system we are building, we expect to attract users interested in making a profit by trading Coretime. A competitive environment of Coretime traders will significantly benefit the network, as they compete to make the best offers for Coretime procurement. This competition will be highly advantageous for those looking to purchase Coretime.
We are sure that there will be a variety of interesting strategies and trader bots developed to automate this task. These Coretime traders will strive to determine the most efficient allocation of Coretime, aiming to accommodate as many parachains as possible with the minimum amount of Cores purchased to maximize their profits.
Full proposal: https://docs.google.com/document/d/13afaPF_uDR5tM2LN2xQzKapheZeCkMLe_gyhmnuiBas/edit?usp=sharing
Previous forum discussion: https://forum.polkadot.network/t/building-a-coretime-marketplace/6661
RegionX is a great project which aligns with what I see for the future of Polkadot. In order to provide Polkadot secured blockspace to the best projects at the right price, we need an easy to use and flexible marketplace to trade and acquire Coretime. This seems like a super reasonable investment into making Polkadot more accessible to everyone.
I have worked with Sergej during the Polkadot Blockchain Academy, and I feel confident in his abilities to execute and deliver a great Coretime Marketplace for the Polkadot Ecosystem.