Token 생애주기
고정 공급 생성, 곡선 발행 및 외부 마이그레이션을 따라 각 단계에서 허가, 자산 소유권 및 상태 전환을 이해합니다.
BigShortProtocol-EVM은 Token 생애주기를 생성, 내부 시장 거래, 원자적 마이그레이션, 외부 시장 거래 및 공매도 로 나눕니다. 생성 시 공급량과 발행 설정이 결정되며, 마지막 내부 시장 매수 주문이 외부 풀 구성과 Short Engine 초기화를 함께 완료합니다. 운영자가 수동으로 클릭하는 일반적인 ‘졸업’ 단계는 없습니다.
1. 고정 공급 및 초기 배분
각 Token은 생성자에서 총공급량을 한 번에 발행합니다. 곡선 한도와 대출 준비금은 용도가 다른 두 종류의 자산입니다.
| 구성 | Token 수량 | 초기 보유자 | 용도 |
|---|---|---|---|
| 내부 시장 판매 가능 한도 | 793,100,000 | Factory | 내부 시장 매수자에게 판매. 매도 환원 시 판매 가능 잔액 보충 |
| 외부 시장 마이그레이션 준비금 | 206,900,000 | Factory | 내부 시장 완료 시 주 Pair에 한 번에 투입 |
| 대출 준비금 | 199,861,071 | 사전 계산된 독립 Short Engine 주소 | 마이그레이션 후 공매도용 Token 원금 제공 |
| 총공급량 | 1,199,861,071 | 위 두 종류의 컨트랙트 주소 | 생성 시 한 번에 발행 |
이 중 곡선 공급 기준량은:
총공급량은:
시가총액 모델은 1,000,000,000 Token의 곡선 공급 기준량을 사용하며, 1,199,861,071의 ERC-20 총공급량을 사용하지 않습니다. 이는 프로토콜이 정한 평가 기준이며 유통 시가총액이나 전체 총공급량 가치와 혼동하면 안 됩니다.
생성자는 생성을 시작했다는 이유로 Token을 자동 배분받지 않습니다. 판매 가능 Token을 보유하려면 동일하게 거래로 취득해야 합니다. 대출 준비금도 마이그레이션 시 추가 발행하는 것이 아닙니다. Token은 생성 시 사전 계산된 Engine 주소로 이미 전송되며, 그때는 해당 주소에 Engine 컨트랙트 코드가 아직 배포되지 않았을 뿐입니다.
2. 생성 시 결정되는 업무 설정
| 설정 | 제약 및 의미 |
|---|---|
이름 name | 비어 있으면 안 됨, 최대 64 바이트 |
기호 symbol | 비어 있으면 안 됨, 최대 16 바이트 |
메타데이터 uri | 최대 512 바이트, 빈 값 허용 |
생성자 creator | 영 주소가 아니어야 함. 거래 발신자와 달라도 됨 |
위 길이는 중국어 문자 수가 아니라 UTF-8 바이트 수 입니다. 이름과 심볼 등의 데이터는 결정적 배포 주소 도출에 사용되며, 발신자와 생성 순번에 따라 배포 네임스페이스가 다릅니다.
생성 실행 순서
- 메타데이터, 생성자 및 세금 설정을 검증합니다.
- 현재 기본 Launch Profile을 읽고 Token, 곡선, Engine, 거래 장소의 네 버전을 고정합니다.
- Token과 독립 Short Engine의 예상 주소를 계산합니다.
- Token을 배포하고 곡선 공급량과 대출 준비금을 한 번에 발행합니다. 과세 모드이면 해당 Token 전용 Tax Processor도 함께 배포합니다.
- 지정 Token/USDC Pair를 생성하거나 재사용하고 Pair 신원 및 코드를 검증하여
mainPair. - 곡선을
Bonding으로 설정하고 초기 준비금, 메타데이터, 세율 및 설정 스냅샷을 기록한 뒤 생성 이벤트를 발생시킵니다.
각 Token은 자체 Launch Profile을 저장합니다. 관리자가 나중에 새 기본 Profile을 선택해도 기존 Token이 새 곡선이나 거래 장소로 자동 전환되지는 않습니다. Factory 프록시 업그레이드 권한과 이 설정 스냅샷 메커니즘은 별개이며 권한 장을 참조하세요.
3. 상태 머신 및 사용자 실행 가능 작업
| 상태 | 업무상 의미 | 일반 실행 가능 작업 |
|---|---|---|
None | Factory에 아직 생성되지 않음 | Token 생성 |
Bonding | 내부 시장 판매 가능 잔액이 0보다 큼 | 내부 시장 매수·매도, 일반 지갑 간 전송 |
Complete | 마지막 매수 주문으로 판매 가능 잔액 소진 | 동일 트랜잭션에서 즉시 마이그레이션. 독립된 대기 단계가 아님 |
Migrating | 동일 트랜잭션에서 Pair 검증, 유동성 추가 및 Engine 배포 중 | 별도의 사용자 마이그레이션 진입점 없음 |
Migrated | 외부 풀과 Engine 모두 준비됨 | 외부 시장 거래, 조건 충족 공매도 및 포지션 관리. 내부 시장 진입점은 거래를 더 이상 받지 않음 |
정상적으로 성공한 거래의 단계 전환은:
None → Bonding → Complete → Migrating → Migrated
마지막 세 단계는 동일한 최종 매수 트랜잭션 실행 중 나타날 수 있습니다. 트랜잭션 전체가 성공해야 새 온체인 상태와 로그가 보존됩니다.
내부 시장 완료의 유일한 수량 기준
초기 판매 가능 한도를
여기서
완료 조건은
4. 내부 시장 단계의 거래 경계
내부 시장은 Factory가 기록한 가상 준비금으로 견적을 계산하고 실제 준비금으로 정산합니다. 세 진입점은 서로 다른 요구를 충족합니다.
매수자는 Token 수령자를 지정할 수 있지만 주 Pair를 수령자로 지정할 수는 없습니다. 환불은 Token 수령자가 아니라 항상 거래 발신자에게 돌아갑니다. 매도하려면 보유자가 Factory의 Token 지출을 사전에 승인해야 합니다.
주 Pair는 아직 개방되지 않음
- 일반 보유자는 지갑 간 전송을 할 수 있습니다.
- 외부 시장 개방 전에는
mainPair와의 영이 아닌 Token 전송이 제한됩니다. Factory는 마이그레이션을 위한 제어 주체 예외입니다. - 내부 시장 매수 주문으로 Token을 Pair에 직접 보낼 수 없습니다.
- Pair 주소는 미리 존재할 수 있지만 ‘Pair 생성 완료’가 ‘외부 시장 거래 개시’를 뜻하지는 않습니다.
이 제약은 프로토콜에 연결된 mainPair 를 대상으로 하며, 모든 제삼자 주소나 자체 생성 시장을 전역 차단한다고 홍보하면 안 됩니다.
5. 최종 매수와 마이그레이션의 원자성
최종 매수 주문은 먼저 내부 시장 규칙으로 정산한 뒤 외부 풀 유동성 추가, Engine 배포·초기화 및 외부 시장 개방을 순서대로 완료합니다. 필수 단계 하나라도 실패하면 최종 매수 주문 전체가 롤백: 토큰 전송, curve-reserve 업데이트, 환불 및 이 거래의 로그는 반환됩니다. 이전에 완료된 거래는 영향을 받지 않습니다.
최종 매수는 일반 매수보다 더 많은 실행 자원이 필요하므로 클라이언트는 일반 매수 주문의 고정 gas limit을 그대로 사용하면 안 됩니다. 마이그레이션 자금, LP 귀속 및 정밀도 처리는 마이그레이션과 외부 시장 AMM.
6. 마이그레이션 후 각 모듈의 역할
| 모듈 | 마이그레이션 후 역할 |
|---|---|
| Token | ERC-20 전송, 주 Pair 매매세 식별, 세금 처리 트리거 |
| 주 Pair | 실제 Token/USDC 유동성 보유 및 상수 곱 교환 실행 |
| Short Engine | 해당 Token 독립 대출 재고, 증거금, 펀딩, 종료 및 청산 관리 |
| Risk Oracle | Engine에 용량 관련 시간 가중 리스크 제약 제공 |
| Factory | 발행·마이그레이션 기록 보존, 설정 및 프로토콜 수입 관련 관리 |
| Quoter | 읽기 전용 견적 및 실행 가능 용량 미리보기 제공. 사용자를 대신하여 거래하지 않음 |
마이그레이션은 대출 준비금을 AMM에 넣거나 초기 LP를 생성자 또는 최종 매수자에게 배분하지 않습니다. 거래 가격은 마이그레이션 후 실제 Pair 준비금으로 결정되며 공매도는 여전히 리스크 용량, 대출 재고 및 증거금 요건을 동시에 충족해야 합니다.