Somnia 백서

Somnia

원문

bitpro가 원문에서 글자만 모은 내용이에요. 표·그림·수식은 빠지거나 깨질 수 있어요. 전체 54쪽 중 47쪽

action consumes, protect the network against spam, and reward the validators and delegators who secure it. Somnia's gas model is built on Ethereum's, and most EVM operations cost exactly the same amount of gas as they do on Ethereum. The differences follow from Somnia's architecture: * **State access is priced by its real latency.** Reading state that the network accessed recently is cheap. The rare read that has to go to disk costs 1,000,000 gas. For this reason, a transaction's gas limit should always account for the possibility of expensive disk reads. * **State growth is priced higher.** New accounts, new storage slots, event logs, calldata and deployed bytecode cost more than on Ethereum, because every node has to keep them. * **A few operations are repriced to match their real cost**, including `KECCAK256`, `ADDMOD`, `MULMOD`, `SELFBALANCE` and the precompiles. The complete list is in [Somnia Gas Differences To Ethereum](https://docs.somnia.network/developer/deployment-and-production/somnia-gas-differences-to-ethereum). ## Pricing model ``` fee = gas used × effective gas price effective gas price = base gas price × (1 − discount) + priority fee ``` | Term | Meaning | | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | | Gas used | Intrinsic gas plus the gas of every operation the transaction executes. See [Gas used](#gas-used). | | Base gas price | A single network-wide price, never below 6 gwei. See [Base gas price](#base-gas-price). | | Discount | The sending account's sustained-use discount: 0% for most accounts, currently up to 90%. See [Sustained-use discounts](#sustained-use-discounts). | | Priority fee | Zero for ordinary transactions. Set by the subscriber for Reactivity handler executions. See [Priority fees](#priority-fees). | ## Gas used ### Intrinsic gas Intrinsic gas is charged before a transaction starts executing. | Component | Gas | | ---------------------------------------------------------- | ------------------------------------------------------------: | | Standard transaction | 21,000 | | Contract-creation transaction | 53,000 | | Calldata, per byte (zero and non-zero bytes cost the same) | 160 | | EIP-7702 authorization, per entry | 1,570,000 (400,000 is refunded if the account already exists) | ### Execution gas Execution gas is the sum of the gas of every operation the transaction executes. Most opcodes cost the same as on Ethereum, but Somnia replaces Ethereum's cold and warm access pricing (EIP-2929) and its state-creation costs with these charges: | Charge | Gas | | ------------------------------------------------------------------------ | ------------------------------------------: | | Reading a storage slot or account that is not in the recent-access cache | 1,000,000 | | Reading a storage slot or account that is in the recent-access cache | No extra charge | | Looking up state that does not exist | No charge, but 1,000,000 gas must remain | | Creating a storage slot (writing a non-zero value to an empty slot) | 200,000 | | Creating an account (for example, sending SOMI to a new address) | 400,000 | | Event log | 3,200 + 5,120 per topic + 160 per data byte | | Deployed contract bytecode, per byte | 3,125 | The recent-access cache holds the 128 million most recently accessed storage slots and the 32 million most recently accessed accounts across the whole network. Whether a read is cached depends on whether any transaction touched that value recently, so the same call can use different amounts of gas at different times. Storage is always permanent, and its price does not depend on how long the data is kept. Writing zero to an empty slot creates nothing and costs nothing extra. Transient storage (`TSTORE` and `TLOAD`, EIP-1153), which is cleared at the end of every transaction, costs 100 gas per operation, as on Ethereum. ### Examples At the 6 gwei base gas price, without a discount: | Transaction | Gas used | Fee | | ------------------------------------------------------- | ---------: | ------------: | | Send SOMI to an existing externally owned account (EOA) | 21,000 | 0.000126 SOMI | | Send SOMI to a new account | 421,000 | 0.002526 SOMI | | Each uncached state read | +1,000,000 | +0.006 SOMI | | Each new storage slot | +200,000 | +0.0012 SOMI | Sending SOMI to a contract also runs the contract's `receive` or `fallback` code, so it uses more gas. {% hint style="warning" %} **Don't reuse Ethereum gas limits.** A single uncached read costs 1,000,000 gas, and any lookup of state that may not exist needs 1,000,000 gas remaining. A transaction that runs out of gas still pays for its entire gas limit. Use `eth_estimateGas`, which already includes a safety margin on Somnia RPC nodes. Unused gas is always refunded. {% endhint %} ## Gas price ### Base gas price The network sets a single base gas price for everyone. It never falls below **6 gwei** (6 nanoSOMI, or 6 × 10⁻⁹ SOMI) per unit of gas, and it rises above that only through [congestion pricing](#congestion-pricing). `eth_gasPrice` and each block's `baseFeePerGas` report the current value. ### What you are charged You are always charged the current effective gas price, never your bid. The `gasPrice` (legacy transactions) or `maxFeePerGas` (EIP-1559 transactions) you sign is only a ceiling: * If the ceiling is below 6 gwei, the transaction is rejected. * If the ceiling is at least 6 gwei but below the current base gas price, the transaction waits in the mempool until the price falls. * While the transaction is pending, the sender's balance must cover `value + ceiling × gas limit`. * When the transaction executes, the sender pays `gas used × effective gas price`, and the unused gas is refunded. ### Congestion pricing Validators raise the base gas price when execution falls behind, as back-pressure against sustained overload: * Every 10 seconds, each validator votes for `6 gwei × 2^k`. Here `k` is the longest time any of the validator's last 32 blocks took to get through execution, including time spent queued behind earlier blocks, divided by 1.5 seconds and rounded down. `k` is capped at 10, so the highest possible vote is 6,144 gwei. * The network uses the stake-weighted median of the current committee's votes. A vote older than 30 minutes, or a missing vote, counts as 6 gwei, so the price only rises when validators holding a majority of the stake see the backlog. * The chain applies a new price at most once every 10 seconds. When execution catches up, the votes return straight to 6 gwei. There is no gradual step-down. * The base gas price can never exceed 100,000 gwei. The voting interval, the 32-block sample and the 1.5-second step are validator node defaults. In normal operation every vote is 6 gwei, and the base gas price stays at the floor. ### Sustained-use discounts Accounts that consistently use a lot of gas pay a lower base gas price. There is nothing to enable or claim. * **Per sender, measured in gas.** Usage is tracked for the account that pays: the transaction's `from` address, or the subscription owner for Reactivity handler executions. It is measured in gas used, not in number of transactions, and the gas used by the contracts you call counts towards your usage. * **Rolling window.** In every epoch (3,000 blocks, about 5 minutes), each account that used at least 10,000,000 gas in that epoch is recorded, up to the 1,000 heaviest accounts (100 on testnet). Your discount is based on your recorded gas over roughly the last 80 minutes (16 epochs). * **Timing.** A newly earned discount applies from the start of the next epoch. It lasts until your usage ages out of the window. * **Scope.** The discount applies to the base gas price only; priority fees are never discounted. It changes the price per unit of gas, never the amount of gas an operation uses. The current mainnet tiers are: | Gas used over the window | Discount | Base gas price at 6 gwei | Send SOMI to an existing EOA | | ------------------------ | -------: | -----------------------: | ---------------------------: | | Below 900,000,000 | 0% | 6 gwei | 0.000126 SOMI | | 900,000,000 or more | 70% | 1.8 gwei | 0.0000378 SOMI | | 4,000,000,000 or more | 90% | 0.6 gwei | 0.0000126 SOMI | Staying in the two tiers takes roughly 100 SOMI and 430 SOMI of gas per day, valued at the undiscounted price. On testnet, the tiers are 926,311,728 gas (70%) and 4,631,558,641 gas (90%). **Submit transactions at the full, undiscounted price.** Mempool admission and the pending-balance check use the ceiling you signed. The discount is applied only when the transaction executes, and it appears in the receipt's `effectiveGasPrice`. The tiers and recording limits are configured in the `GasDiscounts` contract and can change without a network upgrade. See [Sustained Use Gas Discounts](https://docs.somnia.network/developer/deployment-and-production/sustained-use-gas-discounts) for RPC behaviour and for how to read the live values. ## Priority fees * **Ordinary transactions:** there is no tipping. `maxPriorityFeePerGas` is accepted but ignored: it is not charged, and it does not affect inclusion or ordering. `eth_maxPriorityFeePerGas` returns 0. * **Reactivity subscriptions:** the `priorityFeePerGas` set on a subscription is paid on every handler execution, on top of the base gas price, and is never discounted. Queued handlers with a higher priority fee run first, and those with the lowest priority fee are dropped first if the queue is full. See [On-chain Reactivity](https://docs.somnia.network/developer/reactivity/reactivity-onchain). ## Fee distribution All fees paid during an epoch are collected by the `NodeCommittee` contract. At the end of every epoch (about every 5 minutes): 1. A share of the fees is burned by sending it to the zero address. The burn share is currently **5% on mainnet** and 50% on testnet. 2. The rest is distributed to the validators in that epoch's committee, in proportion to each validator's total stake (its own stake plus delegated stake). 3. Each validator shares its portion with its delegators according to its delegation rate. ``` validator portion = epoch fees × (1 − burn share) × validator stake ÷ committee stake delegator reward = validator portion × delegation rate × delegator stake ÷ validator's delegated stake ``` Validators outside the committee earn no fees for that epoch. Rewards accumulate in the staking contract until they are claimed; see [Token Staking and Delegation](/concepts/tokenomics/token-staking-and-delegation). The burn share is on-chain configuration. Mainnet reduced it from 50% to 5% on 2 July 2026. Burned SOMI is permanently removed from circulation. ## Network parameters | Parameter | Mainnet | Testnet | | ------------------------------ | --------------------------------------- | ---------------------------------------------- | | Chain ID | 5031 | 50312 | | Block time | \~100 ms | \~100 ms | | Epoch | 3,000 blocks (\~5 minutes) | 3,000 blocks (\~5 minutes) | | Minimum base gas price | 6 gwei | 6 gwei | | Maximum base gas price | 100,000 gwei | 100,000 gwei | | Base gas price update interval | 10 seconds | 10 seconds | | Burn share | 5% | 50% | | Discount tiers | 900M gas → 70%, 4B gas → 90% | 926,311,728 gas → 70%, 4,631,558,641 gas → 90% | | Discount recording | ≥ 10M gas per epoch, top 1,000 accounts | ≥ 10M gas per epoch, top 100 accounts | The burn share and the discount settings can change. To read the live values with [Foundry](https://book.getfoundry.sh/)'s `cast`: ```bash RPC=https://api.infra.mainnet.somnia.network GAS_DISCOUNTS=0x8dc59a5A096F9a62f9032A1e7945FbC9a44C6606 # Testnet: # RPC=https://api.infra.testnet.somnia.network # GAS_DISCOUNTS=0x75AFcd5146633234c906Aaa6032117c7b54fCdEa # Current base gas price, in wei cast gas-price --rpc-url $RPC # Burn share, in basis points (500 = 5%) cast call 0x7b8b1bb68c6f0e29f3addcb45a6c0bb8e8e331c7 "burnFeePercentage()(uint256)" --rpc-url $RPC # Discount tiers: (gas threshold, discount in basis points) cast call $GAS_DISCOUNTS "getTiers()((uint256,uint256)[])" --rpc-url $RPC ``` # Allocation and unlocks ## Allocations <table data-full-width="false"><thead><tr><th>ALLOCATION</th><th>% OF TOKENS</th><th width="147.90625">NO. OF TOKENS</th><th>% AT TGE</th><th>CLIFF (MNTHS)</th><th>VESTING (MNTHS)</th></tr></thead><tbody><tr><td>1. Team</td><td>11%</td><td>110,000,000</td><td>0%</td><td>12</td><td><p>48</p><p><br></p></td></tr><tr><td>2. Launch Partners</td><td>15%</td><td>150,000,000</td><td>0%</td><td>12</td><td>48</td></tr><tr><td>2. Investors</td><td>15.15%</td><td>151,500,000</td><td>0%</td><td>12</td><td>36</td></tr><tr><td>3. Advisors</td><td>3.58%</td><td>35,800,000</td><td>0%</td><td>12</td><td>36</td></tr><tr><td>4. Ecosystem</td><td>27.345%</td><td>273,450,000</td><td>5.075%</td><td>0</td><td>48</td></tr><tr><td>5. Community</td><td>27.925%</td><td>279,250,000</td><td>10.945%</td><td>0</td><td>36</td></tr><tr><td>​TOTAL %</td><td>100%</td><td>1,000,000,000</td><td>16.02%</td><td><br></td><td><br></td></tr></tbody></table> * Team - Allocation to early team members and founders * Launch partners - Allocation to early contributors to the Somnia ecosystem * Investors - Allocation to seed investors * Advisors - Allocation to key Advisors for Somnia * Ecosystem - Allocation to be used to develop the Somnia ecosystem and fund the foundation * Community - Allocation for users who contributed to the Somnia ecosystem, validator rewards and liquidity. ## Unlock Schedule The SOMI token unlock schedule chart below illustrates the gradual release of tokens over a period of 48 months post-launch. The circulating supply is segmented into five categories, each contributing to the overall supply incrementally: Community (Light blue): The largest allocation, represented by the light area. This will be used for community initiatives, including liquidity and airdrops. This will have 10.945% unlocked a TGE then a increased unlock at M1 and M2, then monthly vesting linear for 36 months. Ecosystem (Orange): The ecosystem allocation, depicted in orange, reflects the gradual and consistent release of tokens intended to fuel ecosystem development and partnerships. This allocation has linear linear 48 months vesting. 5.075% will be unlocked at TGE Investors (Yellow): Represented by the yellow area, investor tokens start release at month 12 and vest monthly afterwards for 36 months. Advisors (Green): Key advisors to the project have a 12-month cliff with a 36-month linear vest. Launch Partners (Red): The red area illustrates the allocation for launch partners. This allocation has a 12-month cliff with a 48-month linear vest. These are allocated to early contributors to the Somnia ecosystem (eg Improbable). Team (Blue): The team allocation is shown in blue. This has a 12-month cliff with a 48-month linear vest. This gradual increase ensures alignment with the project's long-term goals and incentivizes sustained contribution. The chart demonstrates the planned and strategic distribution of SOMI tokens, ensuring balanced growth and support for various stakeholders in the ecosystem. <figure><img src="https://1819673643-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhEUf5l6MCgn0iJsSVgmd%2Fuploads%2FcAXjnmILmyKx5LSKl8dV%2Fimage.png?alt=media&amp;token=c24c7d77-6203-4363-b47f-1b5369532f59" alt=""><figcaption></figcaption></figure> # Tokens Governance The Somnia governance is still in it’s early phases and will evolve as the project evolves. This document outlines our current thinking. ## Somnia Token Governance Overview The Somnia governance system has 5 different groups: * Token house - Token owners that primarily govern allocation of foundation and community tokens * Validator council - Validators in control of hard forks, gas economics and network upgrades. * Developer council - Key developers that oversee the technology roadmap * User assembly - Key users who are used as a check and balance to other groups * Foundation board - Initially in control of the treasury and deployment of new code to the network. Eventually used as a conduit for the other participants and emergency overrides. ## Token house processes The token house primarily looks over allocation of the foundation's funds. This is done via proposals. Proposals can be created by any token owner. They are then approved by a majority vote of other token holders. During the bootstrap phase, the token house will be able to propose new allocation of foundation funds. This could include: * Allocation of grants to new project * Allocation of community tokens to new incentive program * Allocation of budget for new marketing program for the year During the Transition phase, token holders will be able to vote on proposals. The foundation board will still have the ultimate decision on allocating funds. During the mature phase the token holders will have the ability to propose and approve allocation of funds. This can be vetoed by the user assembly or foundation board in extreme cases. In general, the board should enact the token holders approved proposals. ## Progressive decentralisation roadmap <table data-full-width="true"><thead><tr><th width="140.015625">Phase</th><th width="246.37109375">Duration</th><th>Overview</th></tr></thead><tbody><tr><td>Bootstrap</td><td>0–6 months post‑mainnet</td><td>Foundation board in control. Other groups formed without any control.</td></tr><tr><td>Transition</td><td>6–24 months</td><td>Introduction of all governance groups. Beginning of proposal process. Ultimate control still with foundation.</td></tr><tr><td>Mature</td><td>Year 2 onward</td><td>Control is delegated to relevant groups for different decision making. Foundation does have capability for emergency overrides in extreme cases (eg emergency code roll out)</td></tr></tbody></table> <br> # Conclusion We believe in the vision of a world computer. A world where computing is accessible and usable by anyone with an internet connection, where data is shared across a global network that enables composable and interoperable applications. Ethereum started this movement and has provided the backbone for finance. We want to carry that flag for all application classes that can scale and compete with the large-scale web2 market while giving users and builders freedom, ownership and agency. A free and open internet. # LEGAL # LEGAL DISCLAIMER <h4 align="center"><strong>PLEASE READ THE ENTIRETY OF THIS "LEGAL DISCLAIMER" SECTION CAREFULLY. NOTHING HEREIN CONSTITUTES LEGAL, FINANCIAL, BUSINESS OR TAX ADVICE AND YOU ARE STRONGLY ADVISED TO CONSULT YOUR OWN LEGAL, FINANCIAL, TAX OR OTHER PROFESSIONAL ADVISOR(S) BEFORE ENGAGING IN ANY ACTIVITY IN CONNECTION HEREWITH. NEITHER SOMNIA TOKENCO. LTD. (THE COMPANY), ANY OF THE PROJECT CONTRIBUTORS (THE SOMNIA TEAM) WHO HAVE WORKED ON SOMNIA (AS DEFINED HEREIN) OR PROJECT TO DEVELOP SOMNIA IN ANY WAY WHATSOEVER, ANY DISTRIBUTOR AND/OR VENDOR OF SOMI TOKENS (OR SUCH OTHER RE-NAMED OR SUCCESSOR TICKER CODE OR NAME OF SUCH TOKENS) (THE DISTRIBUTOR), NOR ANY SERVICE PROVIDER SHALL BE LIABLE FOR ANY KIND OF DIRECT OR INDIRECT DAMAGE OR LOSS WHATSOEVER WHICH YOU MAY SUFFER IN CONNECTION WITH ACCESSING THE PAPER, DECK OR MATERIAL RELATING TO SOMI (THE TOKEN DOCUMENTATION) AVAILABLE ON THE WEBSITE AT HTTPS://SOMNIA.NETWORK/ (THE WEBSITE, INCLUDING ANY SUB-DOMAINS THEREON) OR ANY OTHER WEBSITES OR MATERIALS PUBLISHED OR COMMUNICATED BY THE COMPANY OR ITS REPRESENTATIVES FROM TIME TO TIME.</strong></h4> *** **Project purpose:**\ You agree that you are acquiring SOMI to participate in Somnia and to obtain services on the ecosystem thereon. The Company, the Distributor and their respective affiliates would develop and contribute to the underlying source code for Somnia. The Company is acting solely as an arms’ length third party in relatio
프로젝트로 돌아가기