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

Community realm. Read the code first. Community realm, deployed by its author. Read the code before you interact or send coins.

core state

Back to all declarations

admin

.uverse.address

Admin (design §2.5.2, §7.5). The admin can only change the parameters listed in validateOp, each inside a hard cap, after a public timelock; it can pause new activity for a bounded time. It can never move, approve or burn a token, touch a collection's configuration, or receive funds (I-1). With no collection yet there is nothing to protect, so ops execute without delay — that is how the platform is configured after deploy. TODO(mainnet): the initial admin and treasury must be the 2/3 multisig.

Value

<gnolang.StringValue>

pendingAdmin

.uverse.address

Admin (design §2.5.2, §7.5). The admin can only change the parameters listed in validateOp, each inside a hard cap, after a public timelock; it can pause new activity for a bounded time. It can never move, approve or burn a token, touch a collection's configuration, or receive funds (I-1). With no collection yet there is nothing to protect, so ops execute without delay — that is how the platform is configured after deploy. TODO(mainnet): the initial admin and treasury must be the 2/3 multisig.

Value

<zero>

fees

v1.Fees

Admin (design §2.5.2, §7.5). The admin can only change the parameters listed in validateOp, each inside a hard cap, after a public timelock; it can pause new activity for a bounded time. It can never move, approve or burn a token, touch a collection's configuration, or receive funds (I-1). With no collection yet there is nothing to protect, so ops execute without delay — that is how the platform is configured after deploy. TODO(mainnet): the initial admin and treasury must be the 2/3 multisig.

Open
OID
056883…40cd:6
fees details

Inspect ref

beacon

.uverse.address

Admin (design §2.5.2, §7.5). The admin can only change the parameters listed in validateOp, each inside a hard cap, after a public timelock; it can pause new activity for a bounded time. It can never move, approve or burn a token, touch a collection's configuration, or receive funds (I-1). With no collection yet there is nothing to protect, so ops execute without delay — that is how the platform is configured after deploy. TODO(mainnet): the initial admin and treasury must be the 2/3 multisig.

Value

<gnolang.StringValue>

minters

v0.Tree

// minter pkgpath -> \*minterRecord

Open
OID
056883…40cd:9
minters details

Inspect ref

ops

v0.Tree

// safe.PadInt(op id) -> \*pendingOp

Open
OID
056883…40cd:11
ops details

Inspect ref

opCount

int64

Admin (design §2.5.2, §7.5). The admin can only change the parameters listed in validateOp, each inside a hard cap, after a public timelock; it can pause new activity for a bounded time. It can never move, approve or burn a token, touch a collection's configuration, or receive funds (I-1). With no collection yet there is nothing to protect, so ops execute without delay — that is how the platform is configured after deploy. TODO(mainnet): the initial admin and treasury must be the 2/3 multisig.

Value

2

pausedUntil

v0.Tree

// scope -> int64 height (exclusive)

Open
OID
056883…40cd:14
pausedUntil details

Inspect ref

minterRecord

type

Value

core.minterRecord

pendingOp

type

Value

core.pendingOp

OpFeeCreate

untyped string

// ugnot, \<= CreateFeeCap

Value

"fee.create"

OpFeePrimary

untyped string

// bps, \<= ProtocolFeeCapBps

Value

"fee.primary"

OpFeeSecondary

untyped string

// bps, \<= ProtocolFeeCapBps

Value

"fee.secondary"

OpTreasury

untyped string

// address

Value

"treasury"

OpBeacon

untyped string

// address, or "" to disable new beacon launches

Value

"beacon"

OpMinterAdd

untyped string

// realm pkgpath

Value

"minter.add"

OpMinterDeprecate

untyped string

// realm pkgpath: no new collections

Value

"minter.deprecate"

OpEngineReview

untyped string

// engine id: reviewed badge (UI only)

Value

"engine.review"

OpAdminTransfer

untyped string

// address; the new admin must AcceptAdmin

Value

"admin.transfer"

ProposeOp

func(op string, arg string) string
Open
OID
056883…40cd:17
ProposeOp details

Inspect func

ExecuteOp

func(opID string)

ExecuteOp applies a proposed op once its timelock has passed. The delay is judged at execution, so an op proposed during bootstrap still waits the full timelock if a collection appeared in the meantime.

Open
OID
056883…40cd:19
ExecuteOp details

Inspect func

Pause

func(scope string)

Pause stops new activity in one scope for at most MaxPauseBlocks. It never blocks exits (I-2).

Open
OID
056883…40cd:22
Pause details

Inspect func

Paused

func(scope string) bool

Paused reports whether scope ("create", "mint", "trade") is paused now.

Open
OID
056883…40cd:24
Paused details

Inspect func

assertNotPaused

func(scope string)
Open
OID
056883…40cd:25
assertNotPaused details

Inspect func

assertScope

func(scope string)
Open
OID
056883…40cd:26
assertScope details

Inspect func

earliestExecution

func(p *core.pendingOp) int64
Open
OID
056883…40cd:29
earliestExecution details

Inspect func

mustOp

func(opID string) *core.pendingOp
Open
OID
056883…40cd:30
mustOp details

Inspect func

validateOp

func(op string, arg string)

validateOp is the closed list of admin powers (I-1).

Open
OID
056883…40cd:31
validateOp details

Inspect func

applyOp

func(op string, arg string)
Open
OID
056883…40cd:32
applyOp details

Inspect func

assertActiveMinter

func(path string)
Open
OID
056883…40cd:33
assertActiveMinter details

Inspect func

parseAmount

func(s string) int64
Open
OID
056883…40cd:34
parseAmount details

Inspect func

CreateCollection

func(creator .uverse.address, spec v1.CollectionSpec) string

CreateCollection stores a Draft collection and returns its id. Nobody can mint a Draft, so a creator can configure phases across several messages without a race (OA B2).

Open
OID
056883…40cd:35
CreateCollection details

Inspect func

Launch

func(cid string, l v1.LaunchSpec)

Launch freezes the configuration (I-6): sale window, reveal window and the creator's commitment. The sale must start in the future so a beacon can commit before the first mint.

Open
OID
056883…40cd:37
Launch details

Inspect func

AbortLaunch

func(cid string)

AbortLaunch returns a launched collection to Draft while nothing has been minted — the way out when a beacon never commits. Used commitments stay used.

Open
OID
056883…40cd:38
AbortLaunch details

Inspect func

ReserveTo

func(cid string, to .uverse.address, n int64) (first int64, last int64)

ReserveTo mints the creator's reserve before the sale starts. Reserve mints feed the entropy like any mint, appear in Provenance, and do not count toward wallet caps.

Open
OID
056883…40cd:39
ReserveTo details

Inspect func

MintTo

func(cid string, to .uverse.address, n int64) (first int64, last int64)

MintTo mints n tokens during the sale. The minter has already checked phase, price, allowlist and wallet cap; core re-checks only what it owns: state, supply, beacon commitment, and the lifetime counter (I-5, I-9).

Open
OID
056883…40cd:40
MintTo details

Inspect func

assertMintCount

func(c *core.collection, n int64)
Open
OID
056883…40cd:41
assertMintCount details

Inspect func

mintBatchTo

func(c *core.collection, to .uverse.address, n int64, h int64) (first int64, last int64)

mintBatchTo is the only place tokens come into existence.

Open
OID
056883…40cd:42
mintBatchTo details

Inspect func

mintedBy

func(c *core.collection, addr .uverse.address) int64
Open
OID
056883…40cd:43
mintedBy details

Inspect func

CloseMint

func(cid string)

CloseMint materializes Closed once the sale window has passed. Anyone may call it; reveals and Finalize work without it.

Open
OID
056883…40cd:44
CloseMint details

Inspect func

TransferCreator

func(cid string, to .uverse.address)

TransferCreator starts a two-step handover (RA M-11).

Open
OID
056883…40cd:45
TransferCreator details

Inspect func

AcceptCreator

func(cid string)
Open
OID
056883…40cd:46
AcceptCreator details

Inspect func

SetPayees

func(cid string, payees string)

SetPayees changes the royalty split after Final. The primary-sale split is frozen with the sale (I-6); the royalty receiver stays the collection's sub-treasury, so third-party markets are unaffected.

Open
OID
056883…40cd:47
SetPayees details

Inspect func

assertCreator

func(c *core.collection)
Open
OID
056883…40cd:48
assertCreator details

Inspect func

assertBoundMinter

func(c *core.collection)
Open
OID
056883…40cd:49
assertBoundMinter details

Inspect func

ProtocolFeeCapBps

untyped bigint

// 5% of any sale

Value

(500 <untyped> bigint)

RoyaltyCapBps

untyped bigint

// 10% (RA M-3)

Value

(1000 <untyped> bigint)

CreateFeeCap

untyped bigint

// 1,000 GNOT in ugnot

Value

(1000000000 <untyped> bigint)

MaxPayees

untyped bigint

Hard limits. They are constants on purpose: nobody, admin included, can raise them after deploy (block counts assume ~3.54 s blocks, RA M-1).

Value

(4 <untyped> bigint)

MaxSupplyCap

untyped bigint

Hard limits. They are constants on purpose: nobody, admin included, can raise them after deploy (block counts assume ~3.54 s blocks, RA M-1).

Value

(10000 <untyped> bigint)

MaxMintPerTx

untyped bigint

// hypothesis: measure n=10 gas/deposit on Onyx

Value

(10 <untyped> bigint)

MaxReserveBps

untyped bigint

// creator reserve \<= 10% of supply

Value

(1000 <untyped> bigint)

MaxSaleBlocks

untyped bigint

// ~30 days

Value

(732000 <untyped> bigint)

RevealWindowMin

untyped bigint

// ~1 hour

Value

(1017 <untyped> bigint)

RevealWindowMax

untyped bigint

// ~7 days

Value

(170000 <untyped> bigint)

BeaconGraceBlocks

untyped bigint

// beacon may reveal first in the window's last ~15 min (\< RevealWindowMin, so the creator always gets to go first)

Value

(254 <untyped> bigint)

TimelockBlocks

untyped bigint

// ~48 hours

Value

(48800 <untyped> bigint)

MaxPauseBlocks

untyped bigint

// ~8 days

Value

(195000 <untyped> bigint)

MaxNameLen

untyped bigint

Hard limits. They are constants on purpose: nobody, admin included, can raise them after deploy (block counts assume ~3.54 s blocks, RA M-1).

Value

(64 <untyped> bigint)

MaxDescriptionLen

untyped bigint

Hard limits. They are constants on purpose: nobody, admin included, can raise them after deploy (block counts assume ~3.54 s blocks, RA M-1).

Value

(1024 <untyped> bigint)

MaxParamsLen

untyped bigint

Hard limits. They are constants on purpose: nobody, admin included, can raise them after deploy (block counts assume ~3.54 s blocks, RA M-1).

Value

(1024 <untyped> bigint)

MinSecretLen

untyped bigint

Hard limits. They are constants on purpose: nobody, admin included, can raise them after deploy (block counts assume ~3.54 s blocks, RA M-1).

Value

(32 <untyped> bigint)

MaxSecretLen

untyped bigint

Hard limits. They are constants on purpose: nobody, admin included, can raise them after deploy (block counts assume ~3.54 s blocks, RA M-1).

Value

(256 <untyped> bigint)

MaxPageSize

untyped bigint

Hard limits. They are constants on purpose: nobody, admin included, can raise them after deploy (block counts assume ~3.54 s blocks, RA M-1).

Value

(50 <untyped> bigint)

BadgeBoth

untyped string

Provenance badges (design §4.3).

Value

"2/2"

BadgeCreatorOnly

untyped string

Provenance badges (design §4.3).

Value

"creator-only"

BadgeBeaconOnly

untyped string

Provenance badges (design §4.3).

Value

"beacon-only"

BadgeFallback

untyped string

Provenance badges (design §4.3).

Value

"fallback"

collection

type

Value

core.collection

selfPath

string

Value

"gno.land/r/g19dzk54hhsdc3gllpksuj6gu4a3e6fl8cr6rn4w/sinopia/core"

collections

v0.Tree

// safe.PadInt(cid) -> \*collection

Open
OID
056883…40cd:53
collections details

Inspect ref

byCreator

v0.Tree

// creator + ":" + padded cid -> cid

Open
OID
056883…40cd:55
byCreator details

Inspect ref

collCount

int64

Value

1

usedCommits

v0.Tree

// commit hex -> cid; a commitment is single-use platform-wide (RA M-5)

Open
OID
056883…40cd:58
usedCommits details

Inspect ref

cidWidth

untyped bigint

Value

(10 <untyped> bigint)

mustCollection

func(cid string) *core.collection
Open
OID
056883…40cd:62
mustCollection details

Inspect func

stateAt

func(c *core.collection, h int64) v1.State

stateAt is the effective state at height h; the stored state lags until the next write materializes it (refresh).

Open
OID
056883…40cd:63
stateAt details

Inspect func

refresh

func(c *core.collection, h int64)
Open
OID
056883…40cd:64
refresh details

Inspect func

revealDeadline

func(c *core.collection) int64

revealDeadline is when anyone may finalize without the missing secrets. It is at most endHeight + RevealWindowMax, which bounds the transfer lock (I-11).

Open
OID
056883…40cd:65
revealDeadline details

Inspect func

assertNoDeposit

func()

assertNoDeposit refuses coins on functions that take none, so nothing can get stuck in core (RA L-1). The origin-send envelope belongs to the first realm of the call; it is only ours to judge when a wallet called us.

Open
OID
056883…40cd:67
assertNoDeposit details

Inspect func

engineRecord

type

Engine registry ("art as code", design §5). An engine registers itself from its own /r/ adapter realm; its id is that realm's package path, so nobody can register in someone else's name. The stored interface value's methods are declared in the adapter, so every call runs with the adapter's authority, not core's (interrealm v2 borrow rule #1): engine code cannot write core state. It also cannot call back into a core mutator: all of core's state-changing functions are crossing and need a live cur the engine never has. Honest limits, surfaced to users rather than hidden: - an adapter realm with state could change its art later; the sample fingerprint (VerifyEngine) detects a change of the sample, and review means reading the adapter for statelessness; - a private (re-deployable) adapter cannot register: the VM aborts the registration when core's state would retain the private realm's type (spike A9, observed in gno v1.7.0 test mode; confirm on Onyx).

Value

core.engineRecord

engines

v0.Tree

// engine id -> \*engineRecord

Open
OID
056883…40cd:71
engines details

Inspect ref

engineOrder

v0.Tree

// safe.PadInt(seq) -> engine id

Open
OID
056883…40cd:73
engineOrder details

Inspect ref

engineCount

int64

Value

1

RegisterEngine

func(e v1.Engine) string

RegisterEngine stores the calling realm's engine (I-12 exception: one sample render in the engine's own registration transaction). The record is immutable afterwards except for the claim/deprecate/review flags.

Open
OID
056883…40cd:75
RegisterEngine details

Inspect func

ClaimEngine

func(id string)

ClaimEngine proves the manifest author controls that address. Unclaimed engines cannot back a collection.

Open
OID
056883…40cd:77
ClaimEngine details

Inspect func

DeprecateEngine

func(id string)

DeprecateEngine stops new collections; existing ones keep rendering.

Open
OID
056883…40cd:78
DeprecateEngine details

Inspect func

mustEngine

func(id string) *core.engineRecord
Open
OID
056883…40cd:79
mustEngine details

Inspect func

copyManifest

func(m v1.Manifest) v1.Manifest

copyManifest gives core its own copy: the engine's slice was allocated in the engine realm.

Open
OID
056883…40cd:80
copyManifest details

Inspect func

RenderWith

func(id string, params string, seed string) string

RenderWith renders any registered engine for arbitrary params and seed as a data URI — Studio previews and the Verify button.

Open
OID
056883…40cd:81
RenderWith details

Inspect func

EngineTraits

func(id string, params string, seed string) []v1.Trait

EngineTraits returns a core-owned copy of the engine's traits for seed.

Open
OID
056883…40cd:82
EngineTraits details

Inspect func

TraitsWith

func(id string, params string, seed string) string
Open
OID
056883…40cd:83
TraitsWith details

Inspect func

VerifyEngine

func(id string) bool

VerifyEngine re-renders the sample and compares it with the fingerprint stored at registration.

Open
OID
056883…40cd:84
VerifyEngine details

Inspect func

EngineManifest

func(id string) v1.Manifest

EngineManifest is the typed read for other realms (gallery).

Open
OID
056883…40cd:85
EngineManifest details

Inspect func

EngineStatus

func(id string) string

EngineStatus is "unclaimed", "unverified", "reviewed" or "deprecated".

Open
OID
056883…40cd:86
EngineStatus details

Inspect func

engineStatus

func(rec *core.engineRecord) string
Open
OID
056883…40cd:87
engineStatus details

Inspect func

Engine

func(id string) string

Engine is the record as JSON.

Open
OID
056883…40cd:88
Engine details

Inspect func

Engines

func(offset int64, limit int64) string
Open
OID
056883…40cd:89
Engines details

Inspect func

writeEngine

func(w *v1.JSONWriter, rec *core.engineRecord)
Open
OID
056883…40cd:90
writeEngine details

Inspect func

studioInput

func(params string, seed string) v1.Input
Open
OID
056883…40cd:91
studioInput details

Inspect func

provenance

type

Commit–reveal v2 (design §4.2–4.3, closes RA H-3, M-5, M-6). The map is fixed by three inputs: the creator's secret sc, the beacon's secret sb and the public mint-entropy accumulator acc. Neither committer knows the other's secret while minting is open, so neither can time the last mint for a good map. Order of reveals: 1. nothing is accepted before Closed (an early reveal informs the other side); 2. the creator reveals first; the beacon follows, or reveals first inside the last BeaconGraceBlocks of the window; 3. after revealDeadline anyone finalizes with whatever was revealed. What stays open, by design: the last revealer can still choose between revealing and not (one bit). The beacon is last, runs public code, and the badge shows the outcome. The transfer lock (tokens.gno) keeps anyone from trading on early knowledge until Final.

Value

core.provenance

roleCreator

untyped string

Value

"creator"

roleBeacon

untyped string

Value

"beacon"

BeaconCommit

func(cid string, commitHex string)

BeaconCommit is the beacon's commitment, before any token exists.

Open
OID
056883…40cd:92
BeaconCommit details

Inspect func

RevealCreatorSecret

func(cid string, secret string)
Open
OID
056883…40cd:94
RevealCreatorSecret details

Inspect func

RevealBeaconSecret

func(cid string, secret string)
Open
OID
056883…40cd:95
RevealBeaconSecret details

Inspect func

Finalize

func(cid string)

Finalize is permissionless and never paused (I-2): immediately once every expected secret is revealed, otherwise after revealDeadline (fallback).

Open
OID
056883…40cd:96
Finalize details

Inspect func

assertRevealOpen

func(c *core.collection, h int64)
Open
OID
056883…40cd:97
assertRevealOpen details

Inspect func

assertSecret

func(c *core.collection, role string, secret string, commit string)
Open
OID
056883…40cd:98
assertSecret details

Inspect func

revealsComplete

func(c *core.collection) bool
Open
OID
056883…40cd:99
revealsComplete details

Inspect func

finalize

func(c *core.collection, h int64)

finalize runs at most once per collection (I-10): every caller checks state Closed, and this sets Final.

Open
OID
056883…40cd:100
finalize details

Inspect func

VerifyProvenance

func(cid string) bool

VerifyProvenance recomputes every commitment and the salt from public data. True only for a Final collection whose record is consistent.

Open
OID
056883…40cd:101
VerifyProvenance details

Inspect func

Provenance

func(cid string) string

Provenance is the whole record as JSON; secrets and salt stay "" until revealed / final.

Open
OID
056883…40cd:102
Provenance details

Inspect func

SelfAddress

func() .uverse.address
Open
OID
056883…40cd:103
SelfAddress details

Inspect func

CollectionCount

func() int64
Open
OID
056883…40cd:105
CollectionCount details

Inspect func

MintedTotal

func(cid string) int64

MintedTotal counts every token ever minted, burned ones included (OA B4).

Open
OID
056883…40cd:106
MintedTotal details

Inspect func

MintedBy

func(cid string, addr .uverse.address) int64

MintedBy is the lifetime mint counter of addr in cid (OA B3, I-9).

Open
OID
056883…40cd:107
MintedBy details

Inspect func

Info

func(cid string) v1.CollectionInfo

Info is the typed collection view for other realms.

Open
OID
056883…40cd:108
Info details

Inspect func

PrimaryPayees

func(cid string) []v1.Payee

PrimaryPayees returns a copy of the frozen primary-sale split.

Open
OID
056883…40cd:109
PrimaryPayees details

Inspect func

FeeConfig

func() v1.Fees

FeeConfig is the typed fee view minters and markets settle with.

Open
OID
056883…40cd:110
FeeConfig details

Inspect func

IsMinter

func(path string) bool
Open
OID
056883…40cd:113
IsMinter details

Inspect func

Collection

func(cid string) string

Collection is the collection record as JSON.

Open
OID
056883…40cd:114
Collection details

Inspect func

Collections

func(offset int64, limit int64) string
Open
OID
056883…40cd:115
Collections details

Inspect func

CollectionsByCreator

func(creator .uverse.address, offset int64, limit int64) string
Open
OID
056883…40cd:116
CollectionsByCreator details

Inspect func

Fees

func() string

Fees is the fee configuration and its hard caps as JSON.

Open
OID
056883…40cd:117
Fees details

Inspect func

PendingOps

func() string

PendingOps is the timelock queue as JSON.

Open
OID
056883…40cd:118
PendingOps details

Inspect func

writeCollection

func(w *v1.JSONWriter, c *core.collection)
Open
OID
056883…40cd:119
writeCollection details

Inspect func

clampLimit

func(limit int64) int64
Open
OID
056883…40cd:120
clampLimit details

Inspect func

Render

func(path string) string

Render stays minimal in the immutable realm; the browsable gallery is the private, re-deployable gallery realm (design §2.5.7).

Open
OID
056883…40cd:121
Render details

Inspect func

royaltyAddress

func(cid string) .uverse.address
Open
OID
056883…40cd:122
royaltyAddress details

Inspect func

RoyaltyAddress

func(cid string) .uverse.address
Open
OID
056883…40cd:124
RoyaltyAddress details

Inspect func

DistributeRoyalties

func(cid string) int64

DistributeRoyalties pushes the whole sub-treasury balance to the royalty payees. Permissionless and never paused (I-2); market/v1 calls it after every sale. Returns the amount distributed. The sub-realm banker spend is verified by spike/subtoken, core and market tests on gno v1.7.0.

Open
OID
056883…40cd:125
DistributeRoyalties details

Inspect func

tidWidth

untyped bigint

Value

(6 <untyped> bigint)

tokenState

type

tokenState is the per-collection data the transfer hook needs. It is shared by the collection and its lockExt, so neither points at the other.

Value

core.tokenState

mintBatch

type

mintBatch records one mint call; mint height is derived per token from it, so a 10-token mint writes one record, not ten.

Value

core.mintBatch

moveRecord

type

Value

core.moveRecord

lockExt

type

lockExt is the grc721 Extension behind two invariants: - I-11: before Final no token moves or burns (the reveal lock that closes RA H-3's information-advantage branch). The veto is a panic, which aborts the whole transaction — the documented Extension semantics of p/nt/grc721/v0. - H-2: every transfer bumps the token's move counter, so a market listing taken at moves=N is dead after any transfer, even if the token later comes back to the seller. It is declared in this realm, so the hooks write core state with core's authority even when another realm moves the token via RealmTeller.

Value

core.lockExt

lockKind

untyped string

Value

"art-lock"

Approve

func(cid string, tid string, to .uverse.address)
Open
OID
056883…40cd:126
Approve details

Inspect func

SetApprovalForAll

func(cid string, operator .uverse.address, approved bool)
Open
OID
056883…40cd:128
SetApprovalForAll details

Inspect func

TransferFrom

func(cid string, tid string, from .uverse.address, to .uverse.address)
Open
OID
056883…40cd:129
TransferFrom details

Inspect func

Burn

func(cid string, tid string)

Burn is owner-only. The supply gate uses nextTID, so a burn never reopens a slot (I-5).

Open
OID
056883…40cd:130
Burn details

Inspect func

Token

func(cid string) *v0.Token

Token publishes the collection's official \*grc721.Token. Its exported methods are reads or teller factories that need the caller's live realm; the ledger itself is never published.

Open
OID
056883…40cd:131
Token details

Inspect func

Royalty

func(cid string) *v0.Royalty

Royalty publishes the read-only royalty view (EIP-2981 RoyaltyInfo).

Open
OID
056883…40cd:132
Royalty details

Inspect func

OwnerOf

func(cid string, tid string) (.uverse.address, .uverse.error)
Open
OID
056883…40cd:133
OwnerOf details

Inspect func

BalanceOf

func(cid string, owner .uverse.address) (int64, .uverse.error)
Open
OID
056883…40cd:134
BalanceOf details

Inspect func

TokenMoves

func(cid string, tid string) int64

TokenMoves is the transfer counter market/v1 pins in a listing (H-2).

Open
OID
056883…40cd:135
TokenMoves details

Inspect func

TokenSeed

func(cid string, tid string) string

TokenSeed is "" until the collection is Final: no read path can leak the rarity map early.

Open
OID
056883…40cd:136
TokenSeed details

Inspect func

TokenState

func(cid string, tid string) string

TokenState is {mintHeight, lastMoveHeight, moves} as JSON.

Open
OID
056883…40cd:137
TokenState details

Inspect func

TokenURI

func(cid string, tid string) (string, .uverse.error)

TokenURI is a base64 SVG data URI. Before Final every token shows core's neutral placeholder, never engine output (design §4.2).

Open
OID
056883…40cd:138
TokenURI details

Inspect func

TokenTraits

func(cid string, tid string) string

TokenTraits is \[{"trait\_type":…,"value":…}] JSON.

Open
OID
056883…40cd:139
TokenTraits details

Inspect func

TokenTraitList

func(cid string, tid string) []v1.Trait

TokenTraitList is the typed form of TokenTraits for other realms (a copy).

Open
OID
056883…40cd:140
TokenTraitList details

Inspect func

TokenMetadata

func(cid string, tid string) string

TokenMetadata is OpenSea-style metadata JSON.

Open
OID
056883…40cd:141
TokenMetadata details

Inspect func

exists

func(c *core.collection, tid string) bool
Open
OID
056883…40cd:142
exists details

Inspect func

tokenInput

func(c *core.collection, tid string) v1.Input
Open
OID
056883…40cd:143
tokenInput details

Inspect func

renderToken

func(c *core.collection, tid string) string

renderToken runs the collection's engine on a read path. A bad output degrades to a placeholder; a panicking engine only fails reads of its own collections (interrealm v2 §9: cross-realm panics abort the query).

Open
OID
056883…40cd:144
renderToken details

Inspect func

tokenTraits

func(c *core.collection, tid string) []v1.Trait
Open
OID
056883…40cd:145
tokenTraits details

Inspect func

writeTraits

func(w *v1.JSONWriter, ts []v1.Trait)
Open
OID
056883…40cd:146
writeTraits details

Inspect func

placeholderSVG

func(name string, label string) string

placeholderSVG is core's own neutral art: identical for every token of a collection, so it carries no rarity signal.

Open
OID
056883…40cd:147
placeholderSVG details

Inspect func

emitBatch

func(kind string, c *core.collection, to .uverse.address, first int64, last int64)

emitBatch announces one MintTo ("MintBatch") or ReserveTo ("Reserved") call; each token also gets its own "Minted" event from lockExt.

Open
OID
056883…40cd:149
emitBatch details

Inspect func
admin : .uverse.address =<gnolang.StringValue>
pendingAdmin : .uverse.address =<zero>
fees : v1.Fees Inspect
beacon : .uverse.address =<gnolang.StringValue>
minters : v0.Tree Inspect
ops : v0.Tree Inspect
opCount : int64 =2
pausedUntil : v0.Tree Inspect
minterRecord : type =core.minterRecord
pendingOp : type =core.pendingOp
OpFeeCreate : untyped string ="fee.create"
OpFeePrimary : untyped string ="fee.primary"
OpFeeSecondary : untyped string ="fee.secondary"
OpTreasury : untyped string ="treasury"
OpBeacon : untyped string ="beacon"
OpMinterAdd : untyped string ="minter.add"
OpMinterDeprecate : untyped string ="minter.deprecate"
OpEngineReview : untyped string ="engine.review"
OpAdminTransfer : untyped string ="admin.transfer"
pauseScopes : []string (len=3) Inspect
ProposeOp : func(op string, arg string) string Inspect
ExecuteOp : func(opID string) Inspect
CancelOp : func(opID string) Inspect
AcceptAdmin : func() Inspect
Pause : func(scope string) Inspect
Unpause : func(scope string) Inspect
Paused : func(scope string) bool Inspect
assertNotPaused : func(scope string) Inspect
assertScope : func(scope string) Inspect
assertAdmin : func() Inspect
bootstrapping : func() bool Inspect
earliestExecution : func(p *core.pendingOp) int64 Inspect
mustOp : func(opID string) *core.pendingOp Inspect
validateOp : func(op string, arg string) Inspect
applyOp : func(op string, arg string) Inspect
assertActiveMinter : func(path string) Inspect
parseAmount : func(s string) int64 Inspect
CreateCollection : func(creator .uverse.address, spec v1.CollectionSpec) string Inspect
Launch : func(cid string, l v1.LaunchSpec) Inspect
AbortLaunch : func(cid string) Inspect
ReserveTo : func(cid string, to .uverse.address, n int64) (first int64, last int64) Inspect
MintTo : func(cid string, to .uverse.address, n int64) (first int64, last int64) Inspect
assertMintCount : func(c *core.collection, n int64) Inspect
mintBatchTo : func(c *core.collection, to .uverse.address, n int64, h int64) (first int64, last int64) Inspect
mintedBy : func(c *core.collection, addr .uverse.address) int64 Inspect
CloseMint : func(cid string) Inspect
TransferCreator : func(cid string, to .uverse.address) Inspect
AcceptCreator : func(cid string) Inspect
SetPayees : func(cid string, payees string) Inspect
assertCreator : func(c *core.collection) Inspect
assertBoundMinter : func(c *core.collection) Inspect
boolStr : func(b bool) string Inspect
ProtocolFeeCapBps : untyped bigint =(500 <untyped> bigint)
RoyaltyCapBps : untyped bigint =(1000 <untyped> bigint)
CreateFeeCap : untyped bigint =(1000000000 <untyped> bigint)
MaxPayees : untyped bigint =(4 <untyped> bigint)
MaxSupplyCap : untyped bigint =(10000 <untyped> bigint)
MaxMintPerTx : untyped bigint =(10 <untyped> bigint)
MaxReserveBps : untyped bigint =(1000 <untyped> bigint)
MaxSaleBlocks : untyped bigint =(732000 <untyped> bigint)
RevealWindowMin : untyped bigint =(1017 <untyped> bigint)
RevealWindowMax : untyped bigint =(170000 <untyped> bigint)
BeaconGraceBlocks : untyped bigint =(254 <untyped> bigint)
TimelockBlocks : untyped bigint =(48800 <untyped> bigint)
MaxPauseBlocks : untyped bigint =(195000 <untyped> bigint)
MaxNameLen : untyped bigint =(64 <untyped> bigint)
MaxDescriptionLen : untyped bigint =(1024 <untyped> bigint)
MaxParamsLen : untyped bigint =(1024 <untyped> bigint)
MinSecretLen : untyped bigint =(32 <untyped> bigint)
MaxSecretLen : untyped bigint =(256 <untyped> bigint)
MaxPageSize : untyped bigint =(50 <untyped> bigint)
BadgeBoth : untyped string ="2/2"
BadgeCreatorOnly : untyped string ="creator-only"
BadgeBeaconOnly : untyped string ="beacon-only"
BadgeFallback : untyped string ="fallback"
collection : type =core.collection
selfPath : string ="gno.land/r/g19dzk54hhsdc3gllpksuj6gu4a3e6fl8cr6rn4w/sinopia/core"
collections : v0.Tree Inspect
byCreator : v0.Tree Inspect
collCount : int64 =1
usedCommits : v0.Tree Inspect
init.81 : func() Inspect
cidWidth : untyped bigint =(10 <untyped> bigint)
collKey : func(cid string) string Inspect
mustCollection : func(cid string) *core.collection Inspect
stateAt : func(c *core.collection, h int64) v1.State Inspect
refresh : func(c *core.collection, h int64) Inspect
revealDeadline : func(c *core.collection) int64 Inspect
caller : func() .uverse.address Inspect
assertNoDeposit : func() Inspect
itoa : func(n int64) string Inspect
height : func() int64 Inspect
engineRecord : type =core.engineRecord
engines : v0.Tree Inspect
engineOrder : v0.Tree Inspect
engineCount : int64 =1
RegisterEngine : func(e v1.Engine) string Inspect
ClaimEngine : func(id string) Inspect
DeprecateEngine : func(id string) Inspect
mustEngine : func(id string) *core.engineRecord Inspect
copyManifest : func(m v1.Manifest) v1.Manifest Inspect
RenderWith : func(id string, params string, seed string) string Inspect
EngineTraits : func(id string, params string, seed string) []v1.Trait Inspect
TraitsWith : func(id string, params string, seed string) string Inspect
VerifyEngine : func(id string) bool Inspect
EngineManifest : func(id string) v1.Manifest Inspect
EngineStatus : func(id string) string Inspect
engineStatus : func(rec *core.engineRecord) string Inspect
Engine : func(id string) string Inspect
Engines : func(offset int64, limit int64) string Inspect
writeEngine : func(w *v1.JSONWriter, rec *core.engineRecord) Inspect
studioInput : func(params string, seed string) v1.Input Inspect
provenance : type =core.provenance
roleCreator : untyped string ="creator"
roleBeacon : untyped string ="beacon"
BeaconCommit : func(cid string, commitHex string) Inspect
RevealCreatorSecret : func(cid string, secret string) Inspect
RevealBeaconSecret : func(cid string, secret string) Inspect
Finalize : func(cid string) Inspect
assertRevealOpen : func(c *core.collection, h int64) Inspect
assertSecret : func(c *core.collection, role string, secret string, commit string) Inspect
revealsComplete : func(c *core.collection) bool Inspect
finalize : func(c *core.collection, h int64) Inspect
VerifyProvenance : func(cid string) bool Inspect
Provenance : func(cid string) string Inspect
SelfAddress : func() .uverse.address Inspect
CollectionCount : func() int64 Inspect
MintedTotal : func(cid string) int64 Inspect
MintedBy : func(cid string, addr .uverse.address) int64 Inspect
Info : func(cid string) v1.CollectionInfo Inspect
PrimaryPayees : func(cid string) []v1.Payee Inspect
FeeConfig : func() v1.Fees Inspect
Beacon : func() .uverse.address Inspect
Admin : func() .uverse.address Inspect
IsMinter : func(path string) bool Inspect
Collection : func(cid string) string Inspect
Collections : func(offset int64, limit int64) string Inspect
CollectionsByCreator : func(creator .uverse.address, offset int64, limit int64) string Inspect
Fees : func() string Inspect
PendingOps : func() string Inspect
writeCollection : func(w *v1.JSONWriter, c *core.collection) Inspect
clampLimit : func(limit int64) int64 Inspect
Render : func(path string) string Inspect
royaltyAddress : func(cid string) .uverse.address Inspect
RoyaltyAddress : func(cid string) .uverse.address Inspect
DistributeRoyalties : func(cid string) int64 Inspect
tidWidth : untyped bigint =(6 <untyped> bigint)
tokenState : type =core.tokenState
mintBatch : type =core.mintBatch
moveRecord : type =core.moveRecord
lockExt : type =core.lockExt
lockKind : untyped string ="art-lock"
Approve : func(cid string, tid string, to .uverse.address) Inspect
SetApprovalForAll : func(cid string, operator .uverse.address, approved bool) Inspect
TransferFrom : func(cid string, tid string, from .uverse.address, to .uverse.address) Inspect
Burn : func(cid string, tid string) Inspect
Token : func(cid string) *v0.Token Inspect
Royalty : func(cid string) *v0.Royalty Inspect
OwnerOf : func(cid string, tid string) (.uverse.address, .uverse.error) Inspect
BalanceOf : func(cid string, owner .uverse.address) (int64, .uverse.error) Inspect
TokenMoves : func(cid string, tid string) int64 Inspect
TokenSeed : func(cid string, tid string) string Inspect
TokenState : func(cid string, tid string) string Inspect
TokenURI : func(cid string, tid string) (string, .uverse.error) Inspect
TokenTraits : func(cid string, tid string) string Inspect
TokenTraitList : func(cid string, tid string) []v1.Trait Inspect
TokenMetadata : func(cid string, tid string) string Inspect
exists : func(c *core.collection, tid string) bool Inspect
tokenInput : func(c *core.collection, tid string) v1.Input Inspect
renderToken : func(c *core.collection, tid string) string Inspect
tokenTraits : func(c *core.collection, tid string) []v1.Trait Inspect
writeTraits : func(w *v1.JSONWriter, ts []v1.Trait) Inspect
placeholderSVG : func(name string, label string) string Inspect
dataURI : func(svg string) string Inspect
emitBatch : func(kind string, c *core.collection, to .uverse.address, first int64, last int64) Inspect