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

v2 source realm

Realm: gno.land/r/\<your-namespace>/feles

Overview

Realm: gno.land/r/<your-namespace>/feles

Feles DAO — three-tier AUTHORITY governance (not weighted, not token-based).

Example
1CORE    the founding team. Final authority. Can do anything, including
2        amending the tiers themselves. Starts at 3, extensible.
3SENATE  trusted contributors. Propose, vote, and execute within a mandate,
4        but CORE can override or veto any senate decision.
5MEMBERS the community. Propose and signal; no binding vote.

Authority is ROLE-based: a tier's power comes from its rank, not from a token balance or a numeric weight. Within a tier every address is one vote. A Feles token, if issued, is a product/treasury asset and is deliberately NOT wired into the tally — accumulating tokens can never buy governance power.

Built on gno.land/p/nt/commondao/v0 (verified against chain/pearl source). Two CommonDAOs are used so each tier has real, separate voting:

Example
1coreDAO   — council = CORE members
2senateDAO — council = SENATE members, parented to coreDAO for override

Functions 32

func AddMember

crossing Action
1func AddMember(cur realm, who address)
source

Senate admits members; Core may also admit or remove.

func MintAuthorityIsDAO

crossing Action
1func MintAuthorityIsDAO(cur realm) bool
source

MintAuthorityIsDAO reports whether the token is actually governed yet. Until the deployer hands authority over, a single key can still print supply.

func ProposalStatus

Action
1func ProposalStatus(proposalID uint64, senate bool) string
source

ProposalStatus exposes how a proposal ended, and why if it failed — the pair a treasury operator actually needs after calling Execute.

func ProposeAddCore

crossing Action
1func ProposeAddCore(cur realm, who address) uint64
source

ProposeAddCore opens a Core proposal to admit a new core member. Core only.

func ProposeAuthorityHandover

crossing Action
1func ProposeAuthorityHandover(cur realm, to address) uint64
source

ProposeAuthorityHandover opens a Core proposal to pass the token's mint authority on — normally to a successor realm. Core only, and IRREVERSIBLE once executed: the new holder is the only address that can move it again.

func ProposeBurn

crossing Action
1func ProposeBurn(cur realm, amount int64) uint64
source

ProposeBurn opens a Core proposal to destroy treasury-held FELES. Core only.

func ProposeMint

crossing Action
1func ProposeMint(cur realm, to address, amount int64) uint64
source

ProposeMint opens a Core proposal to create supply. Core only.

func ProposeRemoveCore

crossing Action
1func ProposeRemoveCore(cur realm, who address) uint64
source

ProposeRemoveCore opens a Core proposal to remove one. Core only — and no single core member can carry it: it needs the council's supermajority like any other.

func RemoveSenator

crossing Action
1func RemoveSenator(cur realm, who address)
source

CORE removes a senator unilaterally — this is the override in practice.

commondao refuses an update that would empty a council (ErrEmptyCouncil), so the LAST senator cannot be removed this way. That invariant is a feature for CORE — the realm can never become ownerless — but it would otherwise cap CORE's authority over the senate. SuspendSenate below is the answer: it disbands the senate's powers without violating the library's invariant.

func Render

crossing
1func Render(cur realm, path string) string
source

func VoteCore

crossing Action
1func VoteCore(cur realm, proposalID uint64, choice commondao.VoteChoice, reason string)
source

func VoteSenate

crossing Action
1func VoteSenate(cur realm, proposalID uint64, choice commondao.VoteChoice, reason string)
source

Imports 9

Source Files 2