ACDT #94 · EIP-8037 환급 글램스테르담 제외
AllCoreDevs - Testing #094 · 2026-08-31
셀프디스트럭트 가스 환급을 되살리지 않기로 했다
임시 생성 후 셀프디스트럭트(self-destruct) 패턴에 상태 가스(state gas) 환급을 되살리자는 EIP-8037 변경을 글램스테르담(Glamsterdam)에서 제외하기로 했다. 더 큰 쟁점인 프레임(frame) 간 가스 세탁 버그의 수정 여부는 9월 4일 ACDC로 미뤘다.
왜 중요한가
입금 주소 스위핑처럼 계약을 만들었다 바로 없애는 패턴을 쓰는 서비스는 글램스테르담에서 상태 가스를 돌려받지 못해 비용이 늘어난다. 프레임 간 버그 수정을 채택하면 세폴리아 포크가 9월 말에서 10월 말로 밀려 12월 메인넷 목표가 흔들릴 수 있다.
결정
- 8037 환급 제외: 임시 생성과 셀프디스트럭트를 한 트랜잭션에서 수행할 때 상태 가스를 환급하는 변경(EIPs PR #12249)을 글램스테르담에 넣지 않기로 했다. 구현 복잡도와 셀프디스트럭트 폐기 방향이 이유이며, 이 패턴 사용자는 상태를 늘리지 않아도 상태 가스를 내게 된다.
- Snap2 섀도 포크: Snap2 테스트용 섀도 포크(shadow fork)를 메인넷이 아닌 세폴리아에서 먼저 시작하고 메인넷 섀도 포크는 그 뒤에 하기로 했다. 비용을 아끼면서 이미 계획된 세폴리아 섀도 포크에 테스트를 얹는다는 뜻이다.
논의
셀프디스트럭트 상태 가스 환급을 되살릴 것인가
한 트랜잭션에서 계약을 만들고 바로 없애는 패턴이 EIP-8037에서 환급 없이 상태 가스만 물게 되자, 4월에 지운 환급을 되살리자는 제안이 다시 올라왔다.
결론: 글램스테르담 제외 01:01:26
프레임 간 가스 세탁 버그, 고치면 한 달 지연
일반 가스를 상태 가스로 바꿀 수 없다는 EIP-8037의 불변식이 프레임 경계에서 깨지는 스펙 버그가 발견됐는데, 수정은 합의를 깨는 변경이라 포크 일정과 맞물렸다.
논파이널리티 테스트에 무거운 EL 상태가 필요한가
내일 출범하는 1,000노드 논파이널리티(non-finality) 데브넷 9를 앞두고, ePBS 검증에 실행 계층의 큰 상태가 필요한지를 두고 비용과 실효성이 부딪혔다.
인클루전 리스트 P2P 크기 한도 8KB냐 41KB냐
부재중인 Barnabas가 제안한 서명된 인클루전 리스트(inclusion list) P2P 메시지 크기 상향을 놓고, 정확한 상한 계산과 최악의 전파 비용이 논쟁이 됐다.
용어
- SFI: Scheduled for Inclusion, 다음 포크 포함이 확정된 상태
- CFI: Considered for Inclusion, 포크 포함을 공식 검토 중인 상태
- PFI: Proposed for Inclusion, 포크 포함이 제안돼 후보로 접수된 상태
- DFI: 포함이 거절되거나 후보에서 제외된 상태
- 상태 가스(state gas): EIP-8037이 도입하는, 상태를 늘리는 연산에만 쓰는 별도 가스 계정
- 섀도 포크(shadow fork): 실제 네트워크의 상태를 복제해 포크를 미리 실험하는 테스트망
- 인클루전 리스트(FOCIL): 검증자들이 다음 블록에 강제로 포함시키는 트랜잭션 목록 메커니즘
- ACDC: 합의 계층 중심의 AllCoreDevs Consensus 콜. 매주 목요일 열린다