Search Apps Documentation Source Content File Folder Download Copy Actions Download State String Boolean Number Struct Map Slice Pointer Function Closure Reference Nil Package Type Interface Unknown

params.gno

1.82 Kb · 49 lines
 1package padv4
 2
 3// Protocol parameters (MVP). Tunable before deploy; post-deploy treated as constants
 4// unless a future governance path is added with timelock.
 5
 6const (
 7	// Token economics
 8	TotalSupply int64 = 1_000_000_000
 9	CurveSupply int64 = 800_000_000 // sold on bonding curve
10	PoolSeed    int64 = 200_000_000 // locked into CPMM at graduation
11
12	// Virtual constant-product seed (Pump-style)
13	VirtualUgnot0 int64 = 30_000_000      // 30 GNOT virtual
14	VirtualToken0 int64 = 1_073_000_191   // virtual token side
15
16	// Graduation when net ugnot raised into the curve reaches this.
17	// 50 GNOT — testnet-friendly; raise for production.
18	// Keep below the ugnot needed to exhaust CurveSupply on the virtual CPMM.
19	GraduationThreshold int64 = 50_000_000
20
21	// Fees: 1.20% total. Of the fee: 40% creator, 40% protocol, 20% LP/k remainder.
22	FeeBPS             int64 = 120
23	CreatorFeeShareBPS int64 = 4000
24	ProtocolFeeShareBPS int64 = 4000
25
26	// Anti-spam create bond (1 GNOT). Refunded only if quality thresholds met before expire.
27	CreateBondUgnot      int64 = 1_000_000
28	BondRefundBuyers     int   = 5
29	BondRefundMinRaised  int64 = 5_000_000 // ≥5 GNOT raised (blocks pure sybil micro-buys)
30	BondRefundMaxHeights int64 = 100_000   // ~ loosely long window; chain-dependent
31
32	// Anti-snipe: first N heights after create, max cumulative tokens per address
33	// (BPS of TotalSupply). Multi-tx from same wallet still capped.
34	AntiSnipeHeights   int64 = 20
35	AntiSnipeMaxBuyBPS int64 = 500 // 5% of total supply per address in window
36
37	// Status
38	StatusCurve     = 0
39	StatusGraduated = 1
40
41	// Trade history cap for per-token price charts (ring buffer).
42	MaxTradeHistory = 128
43	// Trade sides stored in history
44	TradeSideBuy  = 0
45	TradeSideSell = 1
46	TradeSideOpen = 2 // initial listing mark
47
48	DenomUgnot = "ugnot"
49)