Starknet v0.13.6 Pre-release Notes
DRAFT
Testnet β 30 June 2025
Mainnet β 8 July 2025
Enable resource counting, and temporarily disable Cairo Native
Transactions that are larger than 0.13.6 blocks are no longer acceptable
Enable resource counting, and temporarily disable Cairo Native
Version 0.13.6 will disable Cairo Native. The Starknet OS will track individual builtins used, capping the number of builtins that may fit inside each block. This kind of tracking is currently not possible with Cairo Native, and we will add this feature to Cairo Native before enabling it again. Notice that this affects only testnet, as Cairo Native is disabled on mainnet ATM.
Configurations
- Max `l2_gas` per block: This version would reduce the maximal blocksize allowed from 5B L2 gas (equivalent to 50M Cairo steps) to 4B L2 gas (equivalent to 40M Cairo steps).
- Tracking builtin usage- This version will introduce resource tracking of builtins. This will determine a maximal block resource cap, and when to close a block. Starting with SN version 0.13.6, the maximal occurrences of each builtin within a block appears in the table below. When capping, we count all builtins usage and add till we get to a full block. For example, a SN block with 5M Cairo steps (25% of block space), 3497=6994/2 EC_OP builtins (50% of block space) and 101833=509165/5 Poseidones (20% of block space)) represent a SN block which is 95% full. A block will be closed according to this tracking even if it has less than 4B L2 gas.
Builtin | Max occurrence per block (if this is the only builtin) starting 0.13.6 |
---|---|
Cairo steps | 40,000,000 |
range_check | 28,571,428 |
ECDSA | 2,959 |
Poseidon | 480,000 |
Pedersen | 493,827 |
Bitwise | 3,430,532 |
EC_OP | 6,994 |
Keccak | 9,790 |
range_check96 | 35,714,386 |
add_mod | 8,000,000 |
mul_mod | 3,311,258 |
Breaking changes
Transactions that are larger than 0.13.6 blocks are no longer acceptable.
TLDR is that this de-facto doesnβt affect any activity that happens, or that is likely to happen, on SN. Below is an explanation why.
For a transaction to experience this, it needs to consume more than 100% block_space according to the metric above, yet have below 1B L2 gas, and therefore less than 10M steps (otherwise it would be too large already with 0.13.5). Since the stepβs count isnβt changing (only for some builtins, the limitation might be more restricting than in 0.13.5) - we checked what is the maximal builtin utilization (other than steps) that a single transaction have ever required, and the answer is 14% of block space according to the 0.13.6 metric.
This means that for a transaction to experience this, it needs to use more than 5x the amount of builtins than any transaction in SN history, which is deemed unlikely for any use case we have now.