What to know before starting
This Sequentia signet and demo walkthrough showcase Sequentia’s “No Coin” feature: the first free market for transaction fees in the history of blockchain technology. Sequentia's codebase is being built as a fork of the Elements Project, which is itself a fork of Bitcoin's codebase and is currently best known for its implementation in the Liquid Network, which is also a Bitcoin sidechain.
However, unlike in all other Bitcoin sidechain networks (and, in fact, unlike in every other blockchain network to date), any asset issued on the Sequentia Network can tentatively be proposed to pay transaction fees on the network. This demo is presented as a proof-of-concept for the ability to create, send, and receive tokenized assets on Sequentia, with transaction fees paid using any Sequentia asset of your choice. Specifically, the walkthrough will show you how to use the following features:
Issuing an asset and then transferring this asset using the same asset to pay for transaction fees.
Transferring an asset using a different asset to pay for transaction fees.
Broadcasting a transaction that transfers an asset using a different asset to pay for transaction fees, but setting a fee that is too low, then using “Replace-By-Fee” on such a transaction that remains unconfirmed, bumping the fee using the same fee asset, or even replacing the fee asset with a different fee asset (e.g. proposing a transaction with the fee paid in USDT, then using RBF to instead propose the transaction fee in USDC).
The role of the “price server” in the Sequentia Network
To enable block producers to decide if and when to include a transaction in a block based on the value of the fee paid, in order to create blocks which have the highest possible fee value despite fees being proposed in a variety of assets, we have developed a “price server” software and several mechanisms which nodes enforce to evaluate and compare fees. Node operators are free to decide if and when to connect to a price server in order to retrieve prices, or they can alternatively just set prices manually in their node configuration (this is what we will do in this walkthrough), which is reasonable if they are only interested in transactions that pay fees in one or a few known assets, such as for example a reputable, stable asset like USDT or USDC, and ignore any other transaction.
Multiple price servers could run simultaneously alongside the Sequentia Network since any user can run such software. We envision that price servers will likely be maintained mainly by power users such as traders, market aggregators like Coinmarketcap, exchanges, oracles, or trading-related services. In the first version of the Sequentia Network mainnet, members of the strong federation that will produce blocks will also maintain their own price server(s).
This innovative free market for transaction fees will introduce interesting new dynamics and opportunities. Average (a.k.a. "retail") users will benefit most directly from this feature because of its benefits to user experience and network scalability, given that most transactions will have their fees paid using the same asset that the user intends to transfer over the network. There will, therefore, no longer be a need for transactions with the sole purpose of acquiring a specific token that has no other utility to the user other than being required for transaction fees. Such a system can also bring better balance and price discovery to tokenized asset markets, measured in terms of asset liquidity, volatility, and adoption brought about by a better evaluation of how much any asset is worth against any other asset in the market.
Differences between signet, testnet, and mainnet
This demo showcases the free market for transaction fees (also referred to as the “No Coin” feature) using a signet configuration, which, for testing purposes, will have a few key differences from the upcoming Sequentia testnet and mainnet. The main differences are the following:
Anyone can produce blocks
This allows signet users to play around with and run tests on the node and wallet without being subject to standard block production dynamics, including block frequency, since anyone can mine their own transactions at any time. In other words, in the custom and public signet configurations used in this demo, no consensus mechanisms prevent users from creating blocks and earning block rewards; any user can do that without restriction. By contrast, in the testnet and the first mainnet release, there will be a “strong federation” of blocksigners, similar to that of the Liquid Network, that will produce blocks (at a frequency and maximum blocksize that will also be similar to that of Liquid), while in a future mainnet consensus upgrade, this federation will be opened to the market by allowing anyone to join it through a staking mechanism.
Block subsidy
In this demo and in the public signet network generally, every block generates a coinbase transaction which distributes a block subsidy denominated in a token, which we will refer to as “signetcoin”. In the Sequentia testnet and mainnet, there shall be no block subsidy of any kind, and there will, in fact, be no native "coin" whatsoever on the Sequentia Network. The only purpose of signetcoin is to allow you to test the network promptly, i.e. without getting test tokens from a faucet or from other community members. You will get a coinbase reward of 1.0 signetcoin when mining blocks, and this reward will be unlocked after a subsequent 100 blocks have been mined.
Note that the Sequentia testnet will also have an initial asset issued through the coinbase of the genesis block, which will be called “TESTUSDT” and will simulate the first stablecoin issued on Sequentia. However, in the testnet, regular users will not be able to generate TESTUSDT themselves, either through a block subsidy or otherwise. Instead, they will have to use testnet faucet services or ask other community members to send them testnet tokens in order to get started. This is because the behaviour of the testnet should reflect the behaviour of the mainnet as closely as possible, and indeed, only Tether, Inc. is supposed to issue USDT (and, in any case, not via block subsidy, but with the issueasset command).
Future development
The signet does not yet feature the next most important milestone in Sequentia’s development: Bitcoin Anchoring. In a nutshell, Bitcoin anchoring is a consensus rule which requires Sequentia blocks to have a reference to Bitcoin blocks, such that both chains always reorganize together and cross-chain operations such as atomic swaps can happen in real-time (instead of being subject to lengthy timelocks) as a result of this reorg-protection. This feature will be developed in the next phase of Sequentia's development, together with a front-end interface (wallet) for multiple devices and the first Bitcoin-Sequentia DEX, enabling p2p swaps between assets issued on the Sequentia Network and BTC on the mainchain or the Lightning Network. Combined with the free market for transaction fees, these make up the "minimum viable product" required for launching the Sequentia mainnet. Sometime after the network's initial launch, we will propose a hard fork to the Sequentia Network to open up the federation of block producers to market-based participation.
Note that you can opt to try the demo commands by launching your own custom (local and private if you so choose) signet rather than connecting to our public signet (currently Signet 1). Since we are actively developing Sequentia and making changes almost daily, the most practical way to test Sequentia might be using your own custom network, which will be unaffected by tests, upgrades, or even outages on the public signet. For this reason, we suggest and provide instructions for launching your own custom signet network. If you want to connect to Signet 1, try the default configuration included in the release on Github instead - all demo commands should work either way.
Join the community!
Join our public Discord server to interact with the Sequentia community, developers, and contributors. You will find support if you have questions or are stuck on your tests. Also, if you find any vulnerabilities in the system, please report your findings so we can fix them!
Now, let’s get started!
Last updated