Denom
untyped stringDenom is the only asset this realm accounts.
Value
"ugnot"
MaxMembers
untyped bigintMaxMembers bounds the distribution loop; MaxWeight bounds a single weight. Together they cap totalWeight at 200,000, which makes the remainder step of the split ((A%W)\*w) provably overflow-free for any int64 coin amount — the conservation math cannot trap.
Value
(20 <untyped> bigint)
MaxWeight
int64MaxMembers bounds the distribution loop; MaxWeight bounds a single weight. Together they cap totalWeight at 200,000, which makes the remainder step of the split ((A%W)\*w) provably overflow-free for any int64 coin amount — the conservation math cannot trap.
Value
10000
member
typeValue
revshare.member
admin
.uverse.address// manages members, plans; stages a successor
Value
<gnolang.StringValue>
pendingAdmin
.uverse.address// staged by TransferAdmin, completes via AcceptAdmin
Value
<zero>
sweeper
.uverse.address// may sweep out-of-band surplus
Value
<gnolang.StringValue>
self
.uverse.address// this realm's address, captured at deploy
Value
<gnolang.StringValue>
members
[]revshare.member// insertion-ordered; bounded by MaxMembers
- OID
- 0c2ed8…5996:51
members details
totalWeight
int64Value
4
ledger
*feeledger.Ledger- OID
- 0c2ed8…5996:10
ledger details
planIDs
[]int64// plans created through this realm (ops/Render)
- OID
- 0c2ed8…5996:61
planIDs details
pulled
int64// lifetime revenue pulled over boundary B2
Value
3003
init.13
func()- OID
- 0c2ed8…5996:16
init.13 details
AddMember
func(a .uverse.address, weight int64)AddMember adds a weighted member. Weight changes never touch earned balances; they shape future pulls only.
- OID
- 0c2ed8…5996:18
AddMember details
SetWeight
func(a .uverse.address, weight int64)SetWeight changes a member's weight for future distributions.
- OID
- 0c2ed8…5996:19
SetWeight details
RemoveMember
func(a .uverse.address)RemoveMember removes a member from future distributions. The member's earned balance is untouched and stays claimable forever.
- OID
- 0c2ed8…5996:20
RemoveMember details
CreatePlan
func(title string, description string, price int64, periodBlocks int64, maxFeeBps int64) int64CreatePlan creates a subscription plan THROUGH this realm, making the realm the plan's provider downstream. Admin only: the per-provider plan quota downstream is a griefable resource.
- OID
- 0c2ed8…5996:21
CreatePlan details
RetirePlan
func(planID int64)RetirePlan retires one of this realm's plans downstream. Admin only.
- OID
- 0c2ed8…5996:22
RetirePlan details
Pull
func() int64Pull claims this realm's entire accrued provider balance from the subscriptions realm and distributes it to the members by weight. Permissionless: pulling can only move the receivable into member balances at the fixed weights, so anyone may crank it. Refuses BEFORE the downstream call when no member could receive the funds.
- OID
- 0c2ed8…5996:23
Pull details
distribute
func(amount int64)distribute splits amount by member weight. Shares are computed as (A/W)\*w + ((A%W)\*w)/W — floor(A\*w/W) without any multiplication that can overflow. The remainder (\< number of members) goes to the highest-weight member, lowest address on ties: deterministic, and it leaves the realm with no undistributed pool at rest.
- OID
- 0c2ed8…5996:24
distribute details
dustRecipient
func() .uverse.address- OID
- 0c2ed8…5996:25
dustRecipient details
Claim
func(amount int64)Claim sends amount ugnot of the caller's earned balance to the caller.
- OID
- 0c2ed8…5996:26
Claim details
ClaimAll
func()ClaimAll sends the caller's entire earned balance to the caller.
- OID
- 0c2ed8…5996:27
ClaimAll details
SweepDenom
func(denom string)SweepDenom recovers out-of-band coins to the sweeper. For the accounting denom the reserve is the full ledger liability — member balances are structurally unsweepable. Sweeper only.
- OID
- 0c2ed8…5996:28
SweepDenom details
TransferAdmin
func(successor .uverse.address)TransferAdmin stages a two-step admin handover.
- OID
- 0c2ed8…5996:29
TransferAdmin details
AcceptAdmin
func()AcceptAdmin completes the handover; only the staged successor may. The sweeper role moves with the admin.
- OID
- 0c2ed8…5996:30
AcceptAdmin details
Admin
func() .uverse.address- OID
- 0c2ed8…5996:31
Admin details
PendingAdmin
func() .uverse.address- OID
- 0c2ed8…5996:32
PendingAdmin details
MemberCount
func() int64- OID
- 0c2ed8…5996:33
MemberCount details
TotalWeight
func() int64- OID
- 0c2ed8…5996:34
TotalWeight details
MemberWeight
func(a .uverse.address) int64- OID
- 0c2ed8…5996:35
MemberWeight details
BalanceOf
func(a .uverse.address) int64- OID
- 0c2ed8…5996:36
BalanceOf details
UsersTotal
func() int64- OID
- 0c2ed8…5996:37
UsersTotal details
Pulled
func() int64- OID
- 0c2ed8…5996:38
Pulled details
NumPlans
func() int64- OID
- 0c2ed8…5996:39
NumPlans details
PlanID
func(i int64) int64- OID
- 0c2ed8…5996:40
PlanID details
Address
func() .uverse.address- OID
- 0c2ed8…5996:41
Address details
Held
func() int64- OID
- 0c2ed8…5996:42
Held details
Receivable
func() int64Receivable reads this realm's accrued, not-yet-pulled provider balance inside the subscriptions realm — the other side of value boundary B2. It is deliberately NOT part of Held or of the local conservation equation.
- OID
- 0c2ed8…5996:43
Receivable details
Render
func(path string) string- OID
- 0c2ed8…5996:44
Render details
indexOf
func(a .uverse.address) int- OID
- 0c2ed8…5996:45
indexOf details
assertNoSend
func()- OID
- 0c2ed8…5996:46
assertNoSend details
assertAdmin
func(caller .uverse.address)- OID
- 0c2ed8…5996:47
assertAdmin details
itoa
func(n int64) string- OID
- 0c2ed8…5996:48