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.

bounties state

Back to all declarations

realmPath

untyped string

Value

"gno.land/r/g1lnkytfqcjwllws63gvf0mv9yt04aswy4y9amhm/guildhall/bounties"

apiMaxLimit

untyped bigint

Value

(50 <untyped> bigint)

apiMaxScan

untyped bigint

Value

(2000 <untyped> bigint)

apiMaxToken

untyped bigint

Value

(200 <untyped> bigint)

renderAPI

func(route string, q url.Values) string

renderAPI serves JSON for the web app, under Render("api/..."): api/stats counts, escrow totals, council, paused api/bounties?status=&tag=&page=&limit= newest first; status "all" or empty for every bounty api/bounty/<id> a bounty with milestones, disputes and applications api/user/<address>?page=&limit= bounties an address is involved in, with roles api/tokens registered GRC20 tokens usable for funding

Open
OID
022746…dbba:3
renderAPI details

Inspect func

apiUser

func(addr .uverse.address, q url.Values) string
Open
OID
022746…dbba:7
apiUser details

Inspect func

bountyJSON

func(bn *v0.Bounty, full bool) string
Open
OID
022746…dbba:9
bountyJSON details

Inspect func

denomFields

func(denom string, isGRC20 bool) []string

denomFields describes how to display amounts of denom.

Open
OID
022746…dbba:10
denomFields details

Inspect func

roles

func(bn *v0.Bounty, addr .uverse.address) []string
Open
OID
022746…dbba:11
roles details

Inspect func

apiError

func(msg string) string
Open
OID
022746…dbba:13
apiError details

Inspect func

maxWorkWindowDays

untyped bigint

Value

(365 <untyped> bigint)

bounties

v0.Tree

// padded id -> \*bounty.Bounty

Open
OID
022746…dbba:15
bounties details

Inspect ref

lastID

uint64

Value

2

byUser

v0.Tree

// address -> \*avl.Tree(padded id -> struct{})

Open
OID
022746…dbba:18
byUser details

Inspect ref

councilArbitrated

v0.Tree
Open
OID
022746…dbba:20
councilArbitrated details

Inspect ref

statusCount

map[v0.Status]int
Open
OID
022746…dbba:22
statusCount details

Inspect map

escrowed

v0.Tree

// denom key -> int64 currently held

Open
OID
022746…dbba:24
escrowed details

Inspect ref

paused

bool

Value

false

InitialCouncil

.uverse.address

Value

<gnolang.StringValue>

PostBounty

func(title string, description string, link string, tags string, reviewers string, quorum int, milestones string, arbiter string, workWindowDays int) uint64

PostBounty posts a bounty funded with the native coins sent along with the call. milestones is "Title=amount;Title=amount" and must add up to exactly what was sent; leave it empty for a single milestone worth the whole amount. reviewers is a comma-separated address list (empty means the poster reviews alone) and quorum is how many of them must approve each milestone. An empty arbiter delegates disputes to the Guildhall council.

Open
OID
022746…dbba:29
PostBounty details

Inspect func

PostBountyGRC20

func(tokenKey string, title string, description string, link string, tags string, reviewers string, quorum int, milestones string, arbiter string, workWindowDays int) uint64

PostBountyGRC20 posts a bounty funded with a registered GRC20 token. The caller must first approve this realm's address for the milestone total on the token; this call pulls the funds into escrow.

Open
OID
022746…dbba:30
PostBountyGRC20 details

Inspect func

newBounty

func(denom string, isGRC20 bool, title string, description string, link string, tags string, reviewers string, quorum int, specs []v0.MilestoneSpec, arbiter string, workWindowDays int) *v0.Bounty
Open
OID
022746…dbba:31
newBounty details

Inspect func

Apply

func(id uint64, pitch string)

Apply asks the poster to be assigned to an open bounty.

Open
OID
022746…dbba:33
Apply details

Inspect func

Assign

func(id uint64, assignee .uverse.address)

Assign hands an open bounty to a contributor. Poster only.

Open
OID
022746…dbba:34
Assign details

Inspect func

Unassign

func(id uint64)

Unassign returns an active bounty to the open pool. The assignee may step back at any time; the poster may reclaim it once the work window has passed. Milestones awaiting review or arbitration must be settled first.

Open
OID
022746…dbba:35
Unassign details

Inspect func

Submit

func(id uint64, milestone int, link string)

Submit hands milestone (1-based) in for review, pointing at the work.

Open
OID
022746…dbba:36
Submit details

Inspect func

Approve

func(id uint64, milestone int)

Approve records a reviewer's approval of a submitted milestone. The approval that reaches the quorum releases the milestone's funds to the contributor and writes a reputation record.

Open
OID
022746…dbba:37
Approve details

Inspect func

RequestChanges

func(id uint64, milestone int, feedback string)

RequestChanges sends a submitted milestone back with feedback.

Open
OID
022746…dbba:38
RequestChanges details

Inspect func

OpenDispute

func(id uint64, milestone int, reason string)

OpenDispute escalates a submitted or rejected milestone to the arbiter. The poster or the contributor who submitted it may open one.

Open
OID
022746…dbba:39
OpenDispute details

Inspect func

Resolve

func(id uint64, milestone int, workerBps int, ruling string)

Resolve settles a disputed milestone. workerBps is the share, in basis points (0..10000), paid to the contributor; the rest is refunded to the poster. Arbiter only.

Open
OID
022746…dbba:40
Resolve details

Inspect func

Cancel

func(id uint64)

Cancel withdraws an open bounty and refunds every unpaid milestone to the poster. Active bounties must be unassigned first.

Open
OID
022746…dbba:41
Cancel details

Inspect func

TransferCouncil

func(newCouncil .uverse.address)

TransferCouncil hands the council seat to a new address, typically an arbitration committee's multisig. Bounties posted with the council as arbiter follow. Only the current council can move the seat.

Open
OID
022746…dbba:43
TransferCouncil details

Inspect func

emitCouncil

func(addr .uverse.address)
Open
OID
022746…dbba:44
emitCouncil details

Inspect func

SetPaused

func(p bool)

SetPaused stops (or resumes) the posting of new bounties. Work on existing bounties, payouts and refunds are never paused.

Open
OID
022746…dbba:45
SetPaused details

Inspect func

Count

func() int

Count returns the number of bounties ever posted.

Open
OID
022746…dbba:46
Count details

Inspect func

CountByStatus

func(status string) int

CountByStatus returns the number of bounties in status ("open", "active", "completed" or "cancelled").

Open
OID
022746…dbba:47
CountByStatus details

Inspect func

Escrowed

func(denom string) int64

Escrowed returns what the board currently holds for denom (a native denom or a grc20reg key).

Open
OID
022746…dbba:48
Escrowed details

Inspect func

IsPaused

func() bool

IsPaused reports whether posting is paused.

Open
OID
022746…dbba:49
IsPaused details

Inspect func

settle

func(int, rlm .uverse.realm, b *v0.Bounty, payouts []v0.Payout, reviewers [].uverse.address, arbitrated bool)

settle executes payouts, crediting reputation for each payment to a worker.

Open
OID
022746…dbba:50
settle details

Inspect func

transfer

func(int, rlm .uverse.realm, b *v0.Bounty, to .uverse.address, amount int64)
Open
OID
022746…dbba:51
transfer details

Inspect func

mustGet

func(id uint64) *v0.Bounty
Open
OID
022746…dbba:52
mustGet details

Inspect func

getBounty

func(id uint64) *v0.Bounty
Open
OID
022746…dbba:53
getBounty details

Inspect func

moved

func(b *v0.Bounty, before v0.Status)
Open
OID
022746…dbba:54
moved details

Inspect func

addEscrow

func(b *v0.Bounty, delta int64)
Open
OID
022746…dbba:55
addEscrow details

Inspect func

index

func(addr .uverse.address, id uint64)
Open
OID
022746…dbba:56
index details

Inspect func

emit

func(event string, b *v0.Bounty, kv []string)
Open
OID
022746…dbba:59
emit details

Inspect func

realmURL

untyped string

Value

"/r/g1lnkytfqcjwllws63gvf0mv9yt04aswy4y9amhm/guildhall/bounties"

repURL

untyped string

Value

"/r/g1lnkytfqcjwllws63gvf0mv9yt04aswy4y9amhm/guildhall/reputation"

pageSize

untyped bigint

Value

(20 <untyped> bigint)

Render

func(path string) string

Render serves the bounty board: "" the board (?status=open|active|completed|cancelled|all, ?tag=x, ?page=N) <id> a bounty with its milestones and next actions u/<address> bounties an address posted, works on, reviews or applied to post how to post a bounty

Open
OID
022746…dbba:62
Render details

Inspect func

renderBoard

func(q url.Values) string
Open
OID
022746…dbba:64
renderBoard details

Inspect func

renderBounty

func(id uint64) string
Open
OID
022746…dbba:65
renderBounty details

Inspect func

renderActions

func(bn *v0.Bounty) string

renderActions lists the transactions that can move the bounty forward, as gnoweb transaction links. The chain enforces who may call them; the page just lists them all.

Open
OID
022746…dbba:66
renderActions details

Inspect func

renderUser

func(addr .uverse.address, page int) string
Open
OID
022746…dbba:67
renderUser details

Inspect func

bountyTable

func(list []*v0.Bounty) string
Open
OID
022746…dbba:69
bountyTable details

Inspect func

milestoneStatus

func(m *v0.Milestone) string
Open
OID
022746…dbba:70
milestoneStatus details

Inspect func

role

func(bn *v0.Bounty, addr .uverse.address) string
Open
OID
022746…dbba:71
role details

Inspect func

hasTag

func(bn *v0.Bounty, tag string) bool
Open
OID
022746…dbba:72
hasTag details

Inspect func

tagSuffix

func(bn *v0.Bounty) string
Open
OID
022746…dbba:73
tagSuffix details

Inspect func

person

func(addr .uverse.address) string
Open
OID
022746…dbba:74
person details

Inspect func

linkOrText

func(s string) string
Open
OID
022746…dbba:75
linkOrText details

Inspect func

formatAmount

func(bn *v0.Bounty, amount int64) string
Open
OID
022746…dbba:76
formatAmount details

Inspect func

escrowSummary

func() string
Open
OID
022746…dbba:77
escrowSummary details

Inspect func

decimal

func(amount int64, decimals int) string
Open
OID
022746…dbba:78
decimal details

Inspect func

splitQuery

func(path string) (string, url.Values)
Open
OID
022746…dbba:82
splitQuery details

Inspect func
realmPath : untyped string ="gno.land/r/g1lnkytfqcjwllws63gvf0mv9yt04aswy4y9amhm/guildhall/bounties"
apiMaxLimit : untyped bigint =(50 <untyped> bigint)
apiMaxScan : untyped bigint =(2000 <untyped> bigint)
apiMaxToken : untyped bigint =(200 <untyped> bigint)
renderAPI : func(route string, q url.Values) string Inspect
apiStats : func() string Inspect
apiList : func(q url.Values) string Inspect
apiUser : func(addr .uverse.address, q url.Values) string Inspect
apiTokens : func() string Inspect
bountyJSON : func(bn *v0.Bounty, full bool) string Inspect
denomFields : func(denom string, isGRC20 bool) []string Inspect
roles : func(bn *v0.Bounty, addr .uverse.address) []string Inspect
limitOf : func(q url.Values) int Inspect
apiError : func(msg string) string Inspect
maxWorkWindowDays : untyped bigint =(365 <untyped> bigint)
bounties : v0.Tree Inspect
lastID : uint64 =2
byUser : v0.Tree Inspect
councilArbitrated : v0.Tree Inspect
statusCount : map[v0.Status]int Inspect
escrowed : v0.Tree Inspect
council : *v0.Ownable Inspect
paused : bool =false
InitialCouncil : .uverse.address =<gnolang.StringValue>
init.24 : func() Inspect
PostBounty : func(title string, description string, link string, tags string, reviewers string, quorum int, milestones string, arbiter string, workWindowDays int) uint64 Inspect
PostBountyGRC20 : func(tokenKey string, title string, description string, link string, tags string, reviewers string, quorum int, milestones string, arbiter string, workWindowDays int) uint64 Inspect
newBounty : func(denom string, isGRC20 bool, title string, description string, link string, tags string, reviewers string, quorum int, specs []v0.MilestoneSpec, arbiter string, workWindowDays int) *v0.Bounty Inspect
store : func(b *v0.Bounty) uint64 Inspect
Apply : func(id uint64, pitch string) Inspect
Assign : func(id uint64, assignee .uverse.address) Inspect
Unassign : func(id uint64) Inspect
Submit : func(id uint64, milestone int, link string) Inspect
Approve : func(id uint64, milestone int) Inspect
RequestChanges : func(id uint64, milestone int, feedback string) Inspect
OpenDispute : func(id uint64, milestone int, reason string) Inspect
Resolve : func(id uint64, milestone int, workerBps int, ruling string) Inspect
Cancel : func(id uint64) Inspect
Council : func() .uverse.address Inspect
TransferCouncil : func(newCouncil .uverse.address) Inspect
emitCouncil : func(addr .uverse.address) Inspect
SetPaused : func(p bool) Inspect
Count : func() int Inspect
CountByStatus : func(status string) int Inspect
Escrowed : func(denom string) int64 Inspect
IsPaused : func() bool Inspect
settle : func(int, rlm .uverse.realm, b *v0.Bounty, payouts []v0.Payout, reviewers [].uverse.address, arbitrated bool) Inspect
transfer : func(int, rlm .uverse.realm, b *v0.Bounty, to .uverse.address, amount int64) Inspect
mustGet : func(id uint64) *v0.Bounty Inspect
getBounty : func(id uint64) *v0.Bounty Inspect
moved : func(b *v0.Bounty, before v0.Status) Inspect
addEscrow : func(b *v0.Bounty, delta int64) Inspect
index : func(addr .uverse.address, id uint64) Inspect
assertNotPaused : func() Inspect
check : func(err .uverse.error) Inspect
emit : func(event string, b *v0.Bounty, kv []string) Inspect
idKey : func(id uint64) string Inspect
clip : func(s string, n int) string Inspect
realmURL : untyped string ="/r/g1lnkytfqcjwllws63gvf0mv9yt04aswy4y9amhm/guildhall/bounties"
repURL : untyped string ="/r/g1lnkytfqcjwllws63gvf0mv9yt04aswy4y9amhm/guildhall/reputation"
pageSize : untyped bigint =(20 <untyped> bigint)
Render : func(path string) string Inspect
renderBoard : func(q url.Values) string Inspect
renderBounty : func(id uint64) string Inspect
renderActions : func(bn *v0.Bounty) string Inspect
renderUser : func(addr .uverse.address, page int) string Inspect
renderPost : func() string Inspect
bountyTable : func(list []*v0.Bounty) string Inspect
milestoneStatus : func(m *v0.Milestone) string Inspect
role : func(bn *v0.Bounty, addr .uverse.address) string Inspect
hasTag : func(bn *v0.Bounty, tag string) bool Inspect
tagSuffix : func(bn *v0.Bounty) string Inspect
person : func(addr .uverse.address) string Inspect
linkOrText : func(s string) string Inspect
formatAmount : func(bn *v0.Bounty, amount int64) string Inspect
escrowSummary : func() string Inspect
decimal : func(amount int64, decimals int) string Inspect
bps : func(v int64) string Inspect
idStr : func(bn *v0.Bounty) string Inspect
splitQuery : func(path string) (string, url.Values) Inspect
pageOf : func(q url.Values) int Inspect
notFound : func() string Inspect