Transaction ordering within Quai Network is objectively determined based on the work done to each transaction, instead of allowing block constructors to order transactions arbitrarily. Allowing block constructors to arbitrarily order transactions inevitably results in ordering based on priority fee, creating malincentives within the network that result in both value extraction from users and potential for MEV incentives to disrupt cooperative mining and extension of the chain.
Transaction Hashes
Transaction hashes have undergone similar changes to that of addresses in the Golden Age Testnet. Hashes are again encoded with shard prefixes, but unlike addresses there are two shard identifiers:
Leading identifier: Shard prefix for the origin chain
Trailing identifier: Shard prefix for the destination chain
Internal transactions will have the same leading and trailing prefixes as the origin and destination chains are the same. An internal transaction hash being sent on Cyprus1 would look like: “0x00FD00...”, where the first “00” indicates an origin of Cyprus1, and the second “00” indicates a destination of Cyprus1.
External transactions follow the same format. An etx sent from Cyprus1 to Cyprus2 would look like: “0x00E501...”, where “00” indicates an origin of Cyprus1 and “01” indicates a destination of Cyprus2.