Fee Market — x/feemarket (EIP-1559 BaseFee)
OKRW 가스를 위한 EIP-1559 호환 base fee 시장. 발신자는 base fee + priority tip을 모두 aokrw로 지불.
마루의 x/feemarket Cosmos SDK 모듈은 OKRW 가스를 위한 EIP-1559 호환 동적 base fee를 구현합니다. Base fee는 이전 블록의 사용량에 따라 매 블록 조정됩니다 — 목표 가스 사용량보다 높으면 base fee 상승, 낮으면 하락. 발신자는 maxFeePerGas와 maxPriorityFeePerGas를 지정해 트랜잭션을 제출하며, 이는 이더리움 메인넷과 정확히 동일합니다 — 유일한 차이는 단위 (aokrw vs wei). 표준 EVM 툴은 별도 설정 없이 올바른 값을 생산합니다.
수수료 부과 방식
PCL이 블록에 입장 허용한 각 트랜잭션:
1. 유효 가스 가격 =
2. 총 수수료 =
3. 수수료는 두 부분으로 분할:
- Base fee 부분 (
- Priority tip 부분 (
발신자는
1. 유효 가스 가격 =
min(maxFeePerGas, baseFee + maxPriorityFeePerGas).2. 총 수수료 =
유효 가스 가격 × 사용 가스, aokrw 단위.3. 수수료는 두 부분으로 분할:
- Base fee 부분 (
baseFee × 사용 가스) — 소각. OKRW를 공급량에서 영구히 제거해 체인 사용량에 비례하는 디플레이션 압력 생성.- Priority tip 부분 (
(유효 가스 가격 - baseFee) × 사용 가스) — 블록 제안자에게 지급. 트랜잭션 포함 보상으로, 이더리움과 동일한 MEV 인센티브 형성.발신자는
maxFeePerGas × 사용 가스보다 더 지불하지 않습니다. 체인이 미사용분을 환불합니다.툴링 함의 — Hardhat, Foundry, ethers.js
수수료 시장이 EIP-1559 호환이므로 모든 표준 EVM 툴이 수정 없이 작동합니다:
Hardhat의
이전 마루 docs에서
eth_gasPrice는 합리적인 legacy 가스 가격을 반환합니다 (baseFee + 제안된 priority fee로 계산).eth_feeHistory는 최근 base fee와 reward percentile의 롤링 윈도우를 반환합니다, 이더리움과 동일하게.eth_maxPriorityFeePerGas는 제안된 priority tip을 반환합니다.
Hardhat의
--network maroo, Foundry의 forge create --rpc-url, ethers.js의 provider.getFeeData()가 maxFeePerGas와 maxPriorityFeePerGas를 올바르게 채웁니다. 커스텀 수수료 전략 불필요.이전 마루 docs에서
NoBaseFee = true를 본 적이 있다면, 그것은 정식 체인에 출시되지 않은 초기 프로토타입 설정이었습니다. 현재 활성 설정은 BaseFee가 활성화된 x/feemarket을 사용합니다.파라미터 가시성과 조정
x/feemarket은 표준 EIP-1559 파라미터를 Cosmos SDK 모듈 파라미터로 노출합니다:base_fee— 현재 base fee (aokrw단위). 매 블록 자동 조정.eth_gasPrice또는 모듈의 gRPC/REST 엔드포인트로 읽음.min_gas_price— base fee가 하락하지 않는 하한. 거버넌스로 통제.elasticity_multiplier,base_fee_change_denominator— base fee가 가스 사용량에 얼마나 공격적으로 조정될지 제어. 거버넌스로 통제.
일상적인 dapp 작업에서는
base_fee만 필요합니다 (표준 JSON-RPC가 제공). 다른 파라미터는 체인 운영자가 수수료 반응성을 튜닝하는 노브입니다.