Blockchain
Upgrade Move code
Aptos Move 패키지 업그레이드 정책(compatible/immutable)과 실무 리스크를 정리합니다.
Upgrade Move code
Aptos는 같은 주소에서 Move 패키지를 업그레이드할 수 있습니다. 핵심은 "정책"입니다.
업그레이드 정책
compatible: 하위호환 업그레이드만 허용immutable: 업그레이드 불가
강도는 compatible < immutable이며, 온체인 정책은 더 강하게만 바꿀 수 있습니다.
compatible에서 지켜야 할 규칙
- 기존
struct필드/ability 변경 불가 - 기존
public/entry함수 시그니처 변경 불가 - 신규 구조체/신규 함수 추가는 가능
즉, "기존 상태 해석과 공개 API"를 깨지 않아야 합니다.
실무 리스크: 호환이어도 안전은 아니다
형식상 호환 업그레이드라도 다음은 발생할 수 있습니다.
- 내부 로직 변경으로 의도치 않은 abort 증가
- 가스 비용 급증
- 외부 의존 모듈 행동 변화
그래서 의존 패키지의 거버넌스 신뢰 모델을 함께 봐야 합니다.
추천 운영 전략
- 핵심 자산 모듈은 가능하면
immutable우선 검토 compatible의존 시 릴리스 전 회귀 테스트/가스 프로파일 필수- 업그레이드 영향 범위를 온체인 이벤트 기준으로 모니터링
- 실패 시 롤포워드/대체 모듈 계획을 사전에 준비