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

bubble state

Back to all declarations

admin

.uverse.address

The settings, and who may change them. admin is whoever deployed the realm (Jae's hotkey signs the addpkg) and is handed to the box's keeper key in the same minute ("a token that you control, but admin can be transferred and even destroyed"). An empty admin is nobody, permanently: RenounceAdmin is the "destroyed" Jae asked for. After it, every one of these settings moves only by a holders' vote (kinds.gno), and the mint goes on under the minter until the holders stop it.

Value

<gnolang.StringValue>

minter

.uverse.address

The settings, and who may change them. admin is whoever deployed the realm (Jae's hotkey signs the addpkg) and is handed to the box's keeper key in the same minute ("a token that you control, but admin can be transferred and even destroyed"). An empty admin is nobody, permanently: RenounceAdmin is the "destroyed" Jae asked for. After it, every one of these settings moves only by a holders' vote (kinds.gno), and the mint goes on under the minter until the holders stop it.

Value

<gnolang.StringValue>

paused

bool

// the admin's brake: stops Mint and MintMany, nothing else

Value

false

dayCap

int64

The settings, and who may change them. admin is whoever deployed the realm (Jae's hotkey signs the addpkg) and is handed to the box's keeper key in the same minute ("a token that you control, but admin can be transferred and even destroyed"). An empty admin is nobody, permanently: RenounceAdmin is the "destroyed" Jae asked for. After it, every one of these settings moves only by a holders' vote (kinds.gno), and the mint goes on under the minter until the holders stop it.

Value

250000000000

SetAdmin

func(to .uverse.address)

SetAdmin hands the settings to another address.

Open
OID
02792f…0cfa:14
SetAdmin details

Inspect func

RenounceAdmin

func()

RenounceAdmin gives the settings up for good: from here they move only by vote.

Open
OID
02792f…0cfa:15
RenounceAdmin details

Inspect func

SetMinter

func(to .uverse.address)

SetMinter names who mints; "" is nobody (the referral mint stops until a vote names one).

Open
OID
02792f…0cfa:16
SetMinter details

Inspect func

SetPaused

func(on bool)

SetPaused stops the mint, or lets it go on.

Open
OID
02792f…0cfa:17
SetPaused details

Inspect func

SetDayCap

func(n int64)

SetDayCap lowers the daily ceiling. Raising it is the holders' (govern:daycap): the cap is what bounds a stolen key, so the key it bounds may not raise it.

Open
OID
02792f…0cfa:18
SetDayCap details

Inspect func

Kind

type

Value

v0.Kind

Rules

type

Value

v0.Rules

NewRules

func(quorumBps int64, thresholdBps int64, votingBlocks int64, delayBlocks int64, graceBlocks int64, proposeBps int64) v0.Rules
Open
OID
02792f…0cfa:19
NewRules details

Inspect func

TextOnly

func(s string) .uverse.error
Open
OID
02792f…0cfa:21
TextOnly details

Inspect func

engine

*v0.Governor

engine is this realm's governor. Unexported: whoever holds it can adopt a kind without a vote.

Open
OID
02792f…0cfa:23
engine details

Inspect pointer

dispatch

func() v0.Dispatch

dispatch runs a decided kind with a SUB-realm, never this realm's own capability (the engine's note on dispatch: a kind holding the live cur could cross into anything that trusts this realm).

Open
OID
02792f…0cfa:67
dispatch details

Inspect func

Offer

func(k v0.Kind, r v0.Rules)

Offer publishes a kind. It grants nothing: the holders adopt it by vote.

Open
OID
02792f…0cfa:68
Offer details

Inspect func

Propose

func(kind string, payload string, title string) int64

Propose asks a question under an adopted kind. A money kind carries its absolute turnout floor (kinds.gno).

Open
OID
02792f…0cfa:69
Propose details

Inspect func

Vote

func(id int64, choice string)

Vote casts the caller's weight as of the proposal's sealed epoch: "yes", "no" or "abstain".

Open
OID
02792f…0cfa:70
Vote details

Inspect func

VoteWithReason

func(id int64, choice string, reason string)
Open
OID
02792f…0cfa:71
VoteWithReason details

Inspect func

Cancel

func(id int64)

Cancel withdraws the proposer's own open proposal.

Open
OID
02792f…0cfa:72
Cancel details

Inspect func

Settle

func(id int64)

Settle writes down a conclusion the rules already reached. Permissionless. A decided money vote's turnout goes into the bar's memory (kinds.gno).

Open
OID
02792f…0cfa:73
Settle details

Inspect func

Execute

func(id int64)

Execute runs a decided proposal after its delay. Permissionless.

Open
OID
02792f…0cfa:74
Execute details

Inspect func

kindOf

func(id int64) string

kindOf is the kind a proposal was asked under, as this realm noted it at Propose (the engine describes a proposal by its payload alone); an id it never saw is "".

Open
OID
02792f…0cfa:75
kindOf details

Inspect func

askedKinds

map[int64]string

askedKinds is id -> kind for the proposals asked here, the last few hundred.

Open
OID
02792f…0cfa:77
askedKinds details

Inspect map

Preview

func(kind string, payload string) string
Open
OID
02792f…0cfa:82
Preview details

Inspect func

HasVoted

func(id int64, who .uverse.address) bool
Open
OID
02792f…0cfa:83
HasVoted details

Inspect func

Tally

func(id int64) (yes int64, no int64, abstain int64, total int64)
Open
OID
02792f…0cfa:84
Tally details

Inspect func

KindRules

func(name string) (v0.Rules, bool)
Open
OID
02792f…0cfa:85
KindRules details

Inspect func

Timings

func(id int64) (opened int64, closes int64, ready int64, expires int64)
Open
OID
02792f…0cfa:86
Timings details

Inspect func

VoteOf

func(id int64, who .uverse.address) (choice string, weight int64, ok bool)
Open
OID
02792f…0cfa:87
VoteOf details

Inspect func

none

untyped string

Value

"none"

ReserveMaxPer

int64

// per proposal

Value

2000000000000

ReserveGap

int64

// seconds between two reserve mints: a full drain is 25 votes over 6 years

Value

7776000

turnoutKeep

untyped bigint

// money votes the mean remembers

Value

(8 <untyped> bigint)

reserveLast

int64

// block time of the last reserve mint

Value

0

turnouts

[]int64

// the last turnoutKeep money votes' turnout (yes+no+abstain), newest last

Value

<zero>

isMoneyKind

func(kind string) bool
Open
OID
02792f…0cfa:94
isMoneyKind details

Inspect func

quorumFloor

func(kind string) int64

quorumFloor is the absolute turnout a money kind needs at the last sealed epoch: max(supply/5, min(X̄, supply/3)), X̄ the mean turnout of the last money votes. Zero for the rest (the rules' fraction alone).

Open
OID
02792f…0cfa:95
quorumFloor details

Inspect func

noteTurnout

func(id int64)

noteTurnout remembers a decided money vote's turnout, once, when it is settled or executed.

Open
OID
02792f…0cfa:97
noteTurnout details

Inspect func

MeanTurnout

func() int64

MeanTurnout is what the bar follows, for the page and the box.

Open
OID
02792f…0cfa:98
MeanTurnout details

Inspect func

bubbleErr

type

Value

bubble.bubbleErr

addrOrNone

func(payload string, what string) .uverse.error
Open
OID
02792f…0cfa:100
addrOrNone details

Inspect func

adminKind

type

Value

bubble.adminKind

minterKind

type

Value

bubble.minterKind

pauseKind

type

Value

bubble.pauseKind

daycapKind

type

Value

bubble.daycapKind

reserveKind

type

Value

bubble.reserveKind

parseReserve

func(p string) (.uverse.address, int64, .uverse.error)
Open
OID
02792f…0cfa:101
parseReserve details

Inspect func

signalKind

type

Value

bubble.signalKind

MaxSupply

int64

The supply, in three pools that add up to the maximum and never mix.

Value

100000000000000

premine

int64

// Jae's, at init

Value

10000000000000

ReferralPool

int64

// the minter's, for referrals, under the day cap

Value

40000000000000

Reserve

int64

// the holders', by govern:reserve only

Value

50000000000000

MaxBatch

untyped bigint

// entries in one MintMany

Value

(100 <untyped> bigint)

MaxEntry

int64

// per address per batch: room for a big inviter's day, never a whole day's cap

Value

50000000000

premineTo

.uverse.address

premineTo is the address the premine goes to (Jae, jarvis room 99/102/105, 2026-09-25).

Value

<gnolang.StringValue>

premined

int64

// what init minted (the premine)

Value

10000000000000

referralMinted

int64

// out of ReferralPool

Value

12000000000

reserveMinted

int64

// out of Reserve

Value

0

mintedDay

int64

// minted by the minter on dayKey's day

Value

12000000000

dayKey

int64

// unix day of mintedDay

Value

20721

lastBatch

string

Value

"26092501"

batches

int64

Value

1

ReferralMinted

func() int64
Open
OID
02792f…0cfa:111
ReferralMinted details

Inspect func

ReserveMinted

func() int64
Open
OID
02792f…0cfa:112
ReserveMinted details

Inspect func

MintedToday

func() (minted int64, ceiling int64)

MintedToday is what the minter has minted on the current UTC day, and the day's cap.

Open
OID
02792f…0cfa:115
MintedToday details

Inspect func

referralMint

func(to .uverse.address, amount int64)

referralMint is one credit out of the referral pool, under every wall. amount is base units.

Open
OID
02792f…0cfa:118
referralMint details

Inspect func

Mint

func(to .uverse.address, amount int64)

Mint credits one address. The minter's hand tool; the box mints through MintMany.

Open
OID
02792f…0cfa:119
Mint details

Inspect func

MintMany

func(batchID string, list string)

MintMany credits a batch: "g1…:amount,g1…:amount" (base units), at most MaxBatch entries, no address twice, under the pool and the day cap. All or nothing — a bad entry panics, which aborts the whole transaction, and names the entry ("entry 3 g1…: over today's cap") so the box can drop it and send the rest. batchID is eight ASCII digits that must exceed the last one landed, so a batch the box re-sends after a lost receipt cannot land twice.

Open
OID
02792f…0cfa:120
MintMany details

Inspect func

toString

func(r interface{...}) string
Open
OID
02792f…0cfa:121
toString details

Inspect func

whole

func(n int64) string

whole renders base units as whole BUBBLE for a message.

Open
OID
02792f…0cfa:122
whole details

Inspect func

Render

func(path string) string

Render: "" the front page (the token's figures, then the governor's page); "gov/…" the governor's pages alone; "json" the figures for the box; "me/\<addr>" one holder's balance and votes.

Open
OID
02792f…0cfa:123
Render details

Inspect func

notes

func() string

notes are this realm's lines on the governor's front page: the figures the engine cannot know.

Open
OID
02792f…0cfa:125
notes details

Inspect func

tokenName

untyped string

Value

"Bubble"

tokenSymbol

untyped string

Value

"BUBBLE"

tokenDecimals

untyped bigint

Value

(6 <untyped> bigint)

pkgPath

untyped string

// must match gnomod.toml

Value

"gno.land/r/g1leu8d2vsplhehcfkjg50mwgdpxdkt8tztu95wr/bubble"

tokenID

untyped string

Value

"gno.land/r/g1leu8d2vsplhehcfkjg50mwgdpxdkt8tztu95wr/bubble.BUBBLE"

one

int64

Value

1000000

epochBlocks

int64

Value

1000

ledger

*v0.Ledger

ledger is the token. Unexported and never handed out: whoever holds a \*Ledger can mint.

Open
OID
02792f…0cfa:25
ledger details

Inspect pointer

BalanceOf

func(owner .uverse.address) int64
Open
OID
02792f…0cfa:134
BalanceOf details

Inspect func

Allowance

func(owner .uverse.address, spender .uverse.address) int64
Open
OID
02792f…0cfa:135
Allowance details

Inspect func

VotesOf

func(who .uverse.address) int64
Open
OID
02792f…0cfa:136
VotesOf details

Inspect func

DelegateOf

func(who .uverse.address) .uverse.address
Open
OID
02792f…0cfa:137
DelegateOf details

Inspect func

PastVotes

func(who .uverse.address, at uint32) int64
Open
OID
02792f…0cfa:138
PastVotes details

Inspect func

PastTotalVotes

func(at uint32) int64
Open
OID
02792f…0cfa:139
PastTotalVotes details

Inspect func

errStaleRealm

untyped string

Value

"bubble: that realm value is not live; pass your own cur"

Transfer

func(to .uverse.address, amount int64)

Transfer moves the caller's own tokens.

Open
OID
02792f…0cfa:142
Transfer details

Inspect func

Approve

func(spender .uverse.address, amount int64)

Approve lets a spender move some of the caller's balance.

Open
OID
02792f…0cfa:143
Approve details

Inspect func

TransferFrom

func(from .uverse.address, to .uverse.address, amount int64)

TransferFrom spends an allowance.

Open
OID
02792f…0cfa:144
TransferFrom details

Inspect func

Burn

func(amount int64)

Burn destroys the caller's own tokens. What is burned is gone from the supply and never re-minted: the pools count what was minted, not what exists.

Open
OID
02792f…0cfa:145
Burn details

Inspect func

Delegate

func(to .uverse.address)

Delegate points the caller's voting power at someone else (one hop; self is the default).

Open
OID
02792f…0cfa:146
Delegate details

Inspect func
admin : .uverse.address =<gnolang.StringValue>
minter : .uverse.address =<gnolang.StringValue>
paused : bool =false
dayCap : int64 =250000000000
init.4 : func() Inspect
Admin : func() .uverse.address Inspect
Minter : func() .uverse.address Inspect
Paused : func() bool Inspect
DayCap : func() int64 Inspect
mustBeAdmin : func() Inspect
SetAdmin : func(to .uverse.address) Inspect
RenounceAdmin : func() Inspect
SetMinter : func(to .uverse.address) Inspect
SetPaused : func(on bool) Inspect
SetDayCap : func(n int64) Inspect
Kind : type =v0.Kind
Rules : type =v0.Rules
NewRules : func(quorumBps int64, thresholdBps int64, votingBlocks int64, delayBlocks int64, graceBlocks int64, proposeBps int64) v0.Rules Inspect
TextOnly : func(s string) .uverse.error Inspect
engine : *v0.Governor Inspect
init.20 : func() Inspect
dispatch : func() v0.Dispatch Inspect
Offer : func(k v0.Kind, r v0.Rules) Inspect
Propose : func(kind string, payload string, title string) int64 Inspect
Vote : func(id int64, choice string) Inspect
VoteWithReason : func(id int64, choice string, reason string) Inspect
Cancel : func(id int64) Inspect
Settle : func(id int64) Inspect
Execute : func(id int64) Inspect
kindOf : func(id int64) string Inspect
askedKinds : map[int64]string Inspect
ReleaseRoll : func(id int64) Inspect
Sweep : func() Inspect
State : func(id int64) string Inspect
Describe : func(id int64) string Inspect
Preview : func(kind string, payload string) string Inspect
HasVoted : func(id int64, who .uverse.address) bool Inspect
Tally : func(id int64) (yes int64, no int64, abstain int64, total int64) Inspect
KindRules : func(name string) (v0.Rules, bool) Inspect
Timings : func(id int64) (opened int64, closes int64, ready int64, expires int64) Inspect
VoteOf : func(id int64, who .uverse.address) (choice string, weight int64, ok bool) Inspect
none : untyped string ="none"
ReserveMaxPer : int64 =2000000000000
ReserveGap : int64 =7776000
turnoutKeep : untyped bigint =(8 <untyped> bigint)
reserveLast : int64 =0
turnouts : []int64 =<zero>
noted : map[int64]bool Inspect
installKinds : func() Inspect
isMoneyKind : func(kind string) bool Inspect
quorumFloor : func(kind string) int64 Inspect
meanTurnout : func() int64 Inspect
noteTurnout : func(id int64) Inspect
MeanTurnout : func() int64 Inspect
bubbleErr : type =bubble.bubbleErr
errf : func(s string) .uverse.error Inspect
addrOrNone : func(payload string, what string) .uverse.error Inspect
adminKind : type =bubble.adminKind
minterKind : type =bubble.minterKind
pauseKind : type =bubble.pauseKind
daycapKind : type =bubble.daycapKind
reserveKind : type =bubble.reserveKind
parseReserve : func(p string) (.uverse.address, int64, .uverse.error) Inspect
signalKind : type =bubble.signalKind
MaxSupply : int64 =100000000000000
premine : int64 =10000000000000
ReferralPool : int64 =40000000000000
Reserve : int64 =50000000000000
MaxBatch : untyped bigint =(100 <untyped> bigint)
MaxEntry : int64 =50000000000
premineTo : .uverse.address =<gnolang.StringValue>
premined : int64 =10000000000000
referralMinted : int64 =12000000000
reserveMinted : int64 =0
mintedDay : int64 =12000000000
dayKey : int64 =20721
lastBatch : string ="26092501"
batches : int64 =1
Premined : func() int64 Inspect
ReferralMinted : func() int64 Inspect
ReserveMinted : func() int64 Inspect
Batches : func() int64 Inspect
LastBatch : func() string Inspect
MintedToday : func() (minted int64, ceiling int64) Inspect
dayOf : func() int64 Inspect
mustBeMinter : func() Inspect
referralMint : func(to .uverse.address, amount int64) Inspect
Mint : func(to .uverse.address, amount int64) Inspect
MintMany : func(batchID string, list string) Inspect
toString : func(r interface{...}) string Inspect
whole : func(n int64) string Inspect
Render : func(path string) string Inspect
notes : func() string Inspect
jsonAll : func() string Inspect
itoa : func(n int64) string Inspect
tokenName : untyped string ="Bubble"
tokenSymbol : untyped string ="BUBBLE"
tokenDecimals : untyped bigint =(6 <untyped> bigint)
pkgPath : untyped string ="gno.land/r/g1leu8d2vsplhehcfkjg50mwgdpxdkt8tztu95wr/bubble"
tokenID : untyped string ="gno.land/r/g1leu8d2vsplhehcfkjg50mwgdpxdkt8tztu95wr/bubble.BUBBLE"
one : int64 =1000000
epochBlocks : int64 =1000
ledger : *v0.Ledger Inspect
GetName : func() string Inspect
GetSymbol : func() string Inspect
GetDecimals : func() int Inspect
TotalSupply : func() int64 Inspect
BalanceOf : func(owner .uverse.address) int64 Inspect
Allowance : func(owner .uverse.address, spender .uverse.address) int64 Inspect
VotesOf : func(who .uverse.address) int64 Inspect
DelegateOf : func(who .uverse.address) .uverse.address Inspect
PastVotes : func(who .uverse.address, at uint32) int64 Inspect
PastTotalVotes : func(at uint32) int64 Inspect
Epoch : func() uint32 Inspect
errStaleRealm : untyped string ="bubble: that realm value is not live; pass your own cur"
caller : func() .uverse.address Inspect
Transfer : func(to .uverse.address, amount int64) Inspect
Approve : func(spender .uverse.address, amount int64) Inspect
TransferFrom : func(from .uverse.address, to .uverse.address, amount int64) Inspect
Burn : func(amount int64) Inspect
Delegate : func(to .uverse.address) Inspect