History – Proposals

Back
v4.11.1 · currentRegistry paragraph re-read on-ledger 12 Oct 2026: the 11 Oct full redeploy (registry cp56mwqp, set_current_main txid_tdx_2_17fzp2hl...) replaced the 25 Sep one as the latest, current logic cqhh5rec (was cpltlrz, 5 Oct), delay 0, nothing pending; timeline notes the 11 Oct redeploy left phases and fee unchanged.–
2 blocks modified
  • Modified – Text at Block 2

    A proposal is a slate of optio…at execution fee, became free. The full redeploy of 11 October 2026 changed how a trade names its caper and left both phases and the fee as they were. Everything below describes th…yed contract is the authority.

  • Modified – Text at Block 5

    What it costs, and who may pro…route it was not proposed on. TheA full redeploy of 25 September 2026 replaceds the registry, and the admin badge then wireds its first logic in with set_c…t aborts once any logic is set. The latest, on 11 October 2026, did so in txid_tdx_2_17fzp2h… (https://dashboard.radixscan.io/transaction/txid_tdx_2_17fzp2hlec8sw4qppvnyeaukfcjj6qc5gfs9fxsf0e7e6apqwccvsrh036w) ; the full redeploys of 25 September ( txid_tdx_2_1cuqqct2h… (https://dashboard.radixscan…wfk6wjyq8cqzs292c4yuqg6drxv) ). E and 6 October 2026 went the same way. Between redeploys every swap since has taken the admin route: the…whk9jtky44rj0gpsqsth2jx5) ), and no ballot has yet moved the pointer. Before that redeploy, the swap of 19 September 2026 went the admin route: it presented the admin badge and called activate_mains did the swap of 19 September 2026 ( txid_tdx_2_17w2j0qf… (https…amwymd8x0uy4mcswdcmyqeasmcn) ), and no ballot has yet moved the pointer. On the Stokenet deployment this site runs against, read on 12 October 2026, the registry’s delay reads 0,…nt logic is component_tdx_2_1cpltlrzqhh5rec…, and no candidate wais pending when this page was checked, on 5 October 2026. Getting started (/wiki/foun… callers from a holder’s side.

v4.11.0Update the “The proposal lifecycle” infographic.–
1 block modified
  • Modified – Text at Block 7

    The proposal lifecycle A prop…ATES1PROPOSEHold 1 token, pay 1% of thelargest option, min 500 XRD.2–5 ranked options, one ofthem “Donothing”.2VOTERanked ballots, … · THE MARKET RATIFIES4TRIGGERFree, and anyone can. Locksthe trailing TWAP as abaseline…/ DIVEST / METADATA / UPGRADE.

v4.10.0Proposal fee moved to creation: max(500 XRD, 1% of the largest option); trigger free; ballot fee question removed–
5 blocks modified
  • Modified – Text at Block 1 → Block 1

    Type Two-phase – a ranked ball… the caper’s own tokens Cost 1% of the largest option’s XRD value, at least 500 XRD flat, paid at creation, into the caper’s own treasury; plus 10% of the winning action’s XRD value at the trigger is free Windows A voting period, the…/voting/optimistic-governance)

  • Modified – Text at Block 2

    A proposal is a slate of optio…g average rather than at spot. On 6 October 2026 a further redeploy moved the whole proposal fee to creation: the proposer pays 1% of the largest option’s XRD value, at least 500 XRD, and the trigger, which had collected that execution fee, became free. Everything below describes that fifthe current deployment, read off the live…yed contract is the authority.

  • Modified – Text at Block 3

    A slate of options, not a sing…it never opens a market window and never incurs an execution fee; with no amount to price, it pays the 500 XRD floor at creation. Added to the deployed logic …(/wiki/governance/execution) .

  • Modified – Text at Block 4

    The two phases, and what settl… Someone must call the trigger, which prices the execution fee off the winning action at the relevant curve's trailing time-weighted average, – free, and open to any account – which locks a baseline – the time-w…foundations/leaving-a-caper) .

  • Modified – Text at Block 5

    What it costs, and who may pro…sition. - Pay the proposal fee: a flat 500 XRD at creation at creation: 1% of the largest option’s XRD value, at least 500 XRD. Send more and the remainder …the spam gate. The percentage leg moved. It is no longer part of the cost of raising a proposal – it is an execution fee of 10% of the winning action's XRD-equivalent value, due at the trigger and priced at the relevant curveis priced off the largest option, because the winner is unknown at creation, and pricing a smaller one would let a proposer pad a large ask with a cheap decoy. Any slate whose largest option is under 50,000 XRD therefore pays the 500 XRD floor. A PAYOUT in a non-XRD currency converts at the issuing caper's trailing time-weighted average price rather than at spot – the same read that locks the pass baseline, so a dump inside the triggercreating transaction cannot set the basis it is charged on. A PAYOUT in a non-XRD currency; a DIVEST converts at the issuing capertarget's trailing average, a DIVEST at the target's,nd an INVEST is XRD already, and. DEBATE, METADATA and UPGRADE options move no value, so their basis is zero and the trigger is free. A DEBATE winner is never triggered at all, so it never reaches this fee: the flat creation fee is the entire cost of putting a question to the caper. Who pays it is decided by the ballot's. Nothing is due later: the trigger takes no payment, for any kind, and any account can call it. The ballot carries no fee question either – a ballot is the ranking and nothing else. From 29 August to 6 October 2026 the fee came in two parts: a flat 500 XRD at creation, and a 10% execution fee on the winning action’s XRD value, due at the trigger. Every ballot also answered a second question – whether the proposer or the treasury, settled paid that fee – by plain weight majority, a tie going to the treasury. T. It was replaced because neither answer did what it said: “treasury pays” was the treasury-pays nets to a waiver, becausing itself, since the fee'’s sink iwas that same treasury, so a treasury-pays trigger costs the caller nothing and stays fully permissionless. The practical effect is unchanged in spirit and different in incidence: a proposal to move a large fraction of a treasury still costs proportionally more, but it costs that only if it wins, and only if the electorate votes to charge its proposer; “proposer pays” fell on whoever called the trigger, which anyone can; and a simple majority on the fee question could stall an action that had already cleared the 1.5 / option_count supermajority. See the FAQ (/wiki/help/faq…one has a setter either. The flat fee, the executionee floor, the fee rate, the vote fee, the votin… callers from a holder’s side.

v4.9.2Sweep #523: the upgrade-route paragraph said today's logic arrived by neither route (set_current_main at the 25 Sep redeploy). Read on Stokenet 5 Oct: the 30 Sep and 1 Oct logic upgrades both presented the admin badge and called activate_main on registry cpndqmgr (txid_tdx_2_15qv5nml..., txid_tdx_2_1d6ggd5s...); current_main is cpltlrz, upgrade_delay 0, proposed_main None.–
1 block modified
  • Modified – Text at Block 5

    What it costs, and who may pro… route it was not proposed on. The logic component the platform runs today arrived by neither route. The full redeploy of 25 Septe…ber 2026 replaced the registry along with it, and the admin badge wired the newits first logic in with set_current_mai…8cqzs292c4yuqg6drxv) ). Every later swap takes one of the two routes aboveswap since has taken the admin route: the logic upgrades of 30 September and 1 October 2026 each presented the admin badge and called activate_main ( txid_tdx_2_15qv5nml… (https://dashboard.radixscan.io/transaction/txid_tdx_2_15qv5nml3kd8x6qjwjl6munzhaqlnp9p0dnthxde2mu7ha4svx89qhhuchp) , txid_tdx_2_1d6ggd5s… (https://dashboard.radixscan.io/transaction/txid_tdx_2_1d6ggd5sca9eynhdh2ujze8rr70c396avefwhk9jtky44rj0gpsqsth2jx5) ), and no ballot has yet moved the pointer. Before that redeploy, the sw…, the registry’s delay reads 0, the current logic is component_tdx_2_1cpltlrz…, and no candidate was pending …hen this page was checked, on 26 Septem5 October 2026. Getting started (/w… callers from a holder’s side.

v4.9.1The running logic (cr40xf3) was wired by set_current_main in the 25 Sep full redeploy (txid_tdx_2_1cuqqct2h, new registry cpndqmg), not by the 19 Sep activate_main, which is now dated history. Registry delay 0 and no pending candidate re-read live 26 Sep.–
1 block modified
  • Modified – Text at Block 5

    What it costs, and who may pro…onent the platform runs today was activated on the admin route: the transaction of 19 September 2026arrived by neither route. The full redeploy of 25 September 2026 replaced the registry along with it, and the admin badge wired the new logic in with set_current_main, a one-time call that aborts once any logic is set ( txid_tdx_2_1cuqqct2h… (https://dashboard.radixscan.io/transaction/txid_tdx_2_1cuqqct2hxnnr3208tkvz36mds04tflhwfk6wjyq8cqzs292c4yuqg6drxv) ). Every later swap takes one of the two routes above. Before that redeploy, the swap of 19 September 2026 went the admin route: it presented the admin badge and…en this page was checked, on 206 September 2026. Getting star… callers from a holder’s side.

v4.9.0Update the “The proposal lifecycle” infographic.–
1 block modified
  • Modified – Text at Block 7
v4.8.0Name both callers the registry accepts for current_main. The fee fields have no setter, which the page had; 'none is an admin toggle either' and 'which is an UPGRADE proposal on $CAPER' did not follow from that. caper_registry.rs:63-64 restricts propose_main/activate_main to the admin role, and the logic component live today was activated on that route on 19 Sep 2026 (txid_tdx_2_17w2j0qf...). Registry re-read 20 Sep: delay 0, no pending candidate.–
1 block modified
  • Modified – Text at Block 5

    What it costs, and who may pro…ant of the protocol, and none ihas an admin toggle setter either. The flat fee, the exe…gic component is initialised, with no setter on its public surface. Changing any of them means swapping the logic tier — which is an UPGRADE proposal on $CAPER, settled by the same two tests as everything elsand nothing on that component’s public surface rewrites one. Moving any of them means swapping the logic tier, and the registry that holds the pointer to it takes that swap from two callers rather than one. A settled $CAPER UPGRADE reaches the registry through propose_main_via_governance and activate_main_via_governance, which are public and gated to the logic component in force at the time. The protocol admin badge reaches the same slot through propose_main and activate_main, which contracts/core/src/caper_registry.rs restricts to the admin role and which no ballot touches. Both routes queue their candidate behind one timelock, set when the registry is constructed and carrying no setter of its own, and the registry refuses to activate a candidate down the route it was not proposed on. The logic component the platform runs today was activated on the admin route: the transaction of 19 September 2026 presented the admin badge and called activate_main ( txid_tdx_2_17w2j0qf… (https://dashboard.radixscan.io/transaction/txid_tdx_2_17w2j0qfx3e57x6lu5f7kl6yugmydy80amwymd8x0uy4mcswdcmyqeasmcn) ). On the Stokenet deployment this site runs against, the registry’s delay reads 0 and no candidate was pending when this page was checked, on 20 September 2026. Getting started (/wiki/foundations/getting-started) states the same two callers from a holder’s side.

v4.7.1Remove the $XRD caper and its reference basket, and say a sell pays no trade fee. Both follow the 18 September 2026 redeploy.–
2 blocks modified
  • Modified – Text at Block 1 → Block 1

    Type Two-phase – a ranked ball…baseline locked at the trigger (at or below it for the $XRD caper, judged against a reference basket) Related Voting (/wiki/gover…/voting/optimistic-governance)

  • Modified – Text at Block 5

    What it costs, and who may pro…ting period, the market window, and the trailing baseline window and the $XRD caper's reference basket are all fields set when the sh… two tests as everything else. One caper carries proposals on different terms: $XRD, which holds native XRD and has no bonding curve. Until 15 September 2026 its baseline and window TWAP both read zero, so 0 ≥ 0 ratified whatever one ballot legislated over the platform's whole sell-fee sink – a market veto that was inoperative rather than merely unexercised. The redeploy of that date gave it a market it can lose to. Its window is priced against a reference basket of other capers' curve (/wiki/markets/bonding-curve) prices, each member weighted by its XRD curve reserve, and the test inverts: the proposal passes only if the window's basket mean is at or below the baseline. The basket is quoted in XRD, so a fall in it is XRD strengthening – rotating out of capers into XRD is consent, and dumping XRD into capers is the veto. A trigger aborts outright if the basket holds no curve reserve at all, rather than opening a window that cannot be lost, and membership is a readable state field, xrd_basket, holding the single entry CAPER when read live on 16 September 2026.

v4.7.0The $XRD caper is no longer barred from carrying proposals: since the 15 Sep 2026 redeploy its window reads a reserve-weighted basket of other capers' curve prices and the pass test inverts. Infobox and parameter list updated with it.–
2 blocks modified
  • Modified – Text at Block 1 → Block 1

    Type Two-phase – a ranked ball…baseline locked at the trigger (at or below it for the $XRD caper, judged against a reference basket) Related Voting (/wiki/gover…/voting/optimistic-governance)

  • Modified – Text at Block 5

    What it costs, and who may pro…ting period, the market window and, the trailing baseline window and the $XRD caper's reference basket are all fields set when the sh… everything else. One caper cannot carryrries proposals at allon different terms: $XRD, which holds native XRD and has no bonding curve. BUntil 15 September 2026 its baseline and window TWAP would both read zero, every legislative pass would execute unconditionally, and governance would be an open drain on the treasury. The contract rejects the proposal outrightso 0 ≥ 0 ratified whatever one ballot legislated over the platform's whole sell-fee sink – a market veto that was inoperative rather than merely unexercised. The redeploy of that date gave it a market it can lose to. Its window is priced against a reference basket of other capers' curve (/wiki/markets/bonding-curve) prices, each member weighted by its XRD curve reserve, and the test inverts: the proposal passes only if the window's basket mean is at or below the baseline. The basket is quoted in XRD, so a fall in it is XRD strengthening – rotating out of capers into XRD is consent, and dumping XRD into capers is the veto. A trigger aborts outright if the basket holds no curve reserve at all, rather than opretending to price ita window that cannot be lost, and membership is a readable state field, xrd_basket, holding the single entry CAPER when read live on 16 September 2026.

v4.6.2Sweep #414: trigger_proposal prices the execution fee at the trailing TWAP, not spot (pen-test M-2; the page already said so further down); the intro now dates the 11 Sep 2026 redeploy; settle_proposal folds up to 60 outstanding ballots itself; the lifecycle caption's 'seven-day' baseline removed (live twap_window_in_seconds = 259200).–
3 blocks modified
  • Modified – Text at Block 2

    A proposal is a slate of optio…d a shorter trailing baseline. On 11 September 2026 a redeploy kept both phases again and changed what surrounds them, including a seven-day deadline on executing a passed action and an execution fee priced at the trailing average rather than at spot. Everything below describes that fourifth deployment, read off the li…yed contract is the authority.

  • Modified – Text at Block 4

    The two phases, and what settl…riod closes, anyone can crank crystallize_ballots to fold the ballots in chunks, and settle_proposal to freeze the verdictsettle_proposal to freeze the verdict; it folds up to 60 outstanding ballots itself, and a larger electorate is first folded in chunks by crystallize_ballots. The threshold is a share of …e off the winning action at that moment's spote relevant curve's trailing time-weighted average, locks a baseline – the time-…foundations/leaving-a-caper) .

  • Modified – Text at Block 7

    The proposal lifecycle A prop…ratifies: the trigger locks a seven-daytrailing TWAP baseline and opens a mar…/ DIVEST / METADATA / UPGRADE.

v4.6.1Sweep #406: the settlement-gas subsidy died on the ledger on 11 September 2026, not on 9 September. 9 September is the date of commit ff56cdd, which applied the pen-test decisions in the tree; the genesis redeploy that published them instantiated the live CaperMain on 11 September at 14:46:54Z. Eight other pages already date it to 11 September, so the corpus was contradicting itself on a date a reader could check.–
2 blocks modified
  • Modified – Text at Block 4

    The two phases, and what settl…ermissionless work, and since 911 September 2026 whoever does i…foundations/leaving-a-caper) .

  • Modified – Text at Block 5

    What it costs, and who may pro…t makes it a spam gate. Until 911 September 2026 it doubled as …r than pretending to price it.

v4.6.0Update the “The proposal lifecycle” infographic.–
1 block modified
  • Modified – Text at Block 7

    The proposal lifecycle A prop…ne settles it, thenexecutes it. The treasury within 7 days.The caller pays the gasfee.WHAT A PASSED PROPOSAL CAN DO…/ DIVEST / METADATA / UPGRADE.

v4.5.0Settle-path gas removed and the execution fee priced off the trailing TWAP, not spot: three corrections against the blueprint deployed 11 Sep–
2 blocks modified
  • Modified – Text at Block 4

    The two phases, and what settl…make. Both are permissionless public goods, so the caper's own treasury reimburses whoever performs them: 5 XRD per call, against a per-proposal allowance of 500 XRD that no repeat call can bleed, because the once-only flag flips in the same substate write that draws the gas. The flat proposal fee exists to cover exactly that allowance – a proposal can never cost a treasury more to settle than it paid to raiwork, and since 9 September 2026 whoever does it pays their own network fee: the treasury subsidy that used to cover up to 5 XRD a call was removed outright, because it met the first 5 XRD of the caller's whole transaction rather than of the crank itself ( who pays to settle (/wiki/governance/execution) ). Execution also carries a clock now – a passed action must be performed within seven days of its resolution or it lapses. Two consequences are worth s…foundations/leaving-a-caper) .

  • Modified – Text at Block 5

    What it costs, and who may pro…is what makes it a spam gate. It alsoUntil 9 September 2026 it doublesd as thea settlement-gas allowance the treasury drawsew on to reimburse the cranks, so a proposal fundswhoever cranked the settle path; that subsidy its own settlement out of what it banked gone (/wiki/governance/execution) , and the fee is now purely the spam gate. The percentage leg moved. It…t the trigger and priced at that moment's spot: ae relevant curve's trailing time-weighted average rather than at spot – the same read that locks the pass baseline, so a dump inside the triggering transaction cannot set the basis it is charged on. A PAYOUT in a non-XRD currency …nverts at the issuing caper's live prictrailing average, a DIVEST at the target's, a…r than pretending to price it.

v4.4.0Update the “The proposal lifecycle” infographic.–
1 block modified
  • Modified – Text at Block 7

    The proposal lifecycle A prop…t ratifies: the trigger locks the trailing TWAP as aa seven-day TWAP baseline and opens thea market window, and the action…POSEHold 1 token, pay 500 XRD.2–5ranked options, one ofthem “Donothing”.2VOTERanked ballots, 100 XRDeach,weighted (t·v)/(V·T).Tokens stayliquid.3SETTLEA crank folds the tally. TheBordaleader needs 1.5/N ofcast weight.PHASE 2 · THE MARK…ERLocks the trailing TWAP as abaselineand opens themarket window.5WINDOWThe market trades, and every tradehour counts. Holdingratifies; sellingobjects.6RESOLVEAnyone settles it, thenexecutesit. The treasurypays the gas.WHAT A PASSED PRO…PAYOUTPay a recipient from thetreasury– a grant, asalary, a bill.INVESTBuy another caper’s tokenstraightinto your treasury.DIVESTSell a token the treasuryholdsback down its owncurve.METADATARewrite this caper’s owntokendescription, icon orlink.UPGRADESwap the shared logic.$CAPERproposals only.A ballot decide…ce decides whether it happens.How a caper turns a decision into an on-chain action – legislated by a vote, ratified by its marketA vote legislates; the market ratifies.caper.networkPropose → vote →…/ DIVEST / METADATA / UPGRADE.

v4.3.0Correct who objects in optimistic governance: Aragon leaves the veto with token holders, and UMA's oSnap was retired 15 December 2025–
1 block modified
  • Modified – Text at Block 6

    Where this sits in the wider p…voting/optimistic-governance) – Aragon's optimistic plugins, UMA's oSnap – comes the second phase's shap…those systems leave open is who mayat objecting costs, and ait what cost, which is usually a named guardian council or a bonded challengeris rarely money. Aragon's Optimistic Token Voting plugin (https://github.com/aragon/optimistic-token-voting-plugin) permissions who may propose and leaves the veto with token holders, carried free of charge once objections reach minVetoRatio of supply; UMA's oSnap put it behind a challenger's bond instead, and UMA retired oSnap on 15 December 2025 (https://docs.uma.xyz/resources/osnap) , so that route executes nothing today. Caper answers it with the ma…s/voting/proposal-lifecycle) .

v4.2.1Sweep #372: window/baseline/verdict prose settled against the 7 Sep 2026 redeploy – exact price-time integral with minute checkpoints, trailing baseline as a logic constant, market window as drill tuning; no durations in prose–
6 blocks modified
  • Modified – Text at Block 1 → Block 1

    Type Two-phase – a ranked ball…Windows A voting period, then 48 hours ofthe market window opened by the t…s own TWAP is at or above the 7-daytrailing baseline locked at the trigge…/voting/optimistic-governance)

  • Modified – Text at Block 2

    A proposal is a slate of optio…ch locks the caper's trailing seven-day average price as a baseline and opens a fixed 48-hourthe market window, and the action execut…e TWAP over the window itself. On 7 September 2026 that deployment was replaced by one with the same two phases and a different measurement underneath the second: an exact price-time integral in place of a ring of per-trade samples, and a shorter trailing baseline. Everything below describes that thirdfourth deployment, read off the live…yed contract is the authority.

  • Modified – Text at Block 4

    The two phases, and what settl…per's token over the trailing seven days, computed from the curve's own sampled circulation historybaseline window, read from the state tier's own price-time integral – and opens a 48-hourthe market window. Nothing governance-sp…ow's own integral means every hoursecond of the 48window counts, and a late crank read…foundations/leaving-a-caper) .

  • Modified – Text at Block 5

    What it costs, and who may pro…e fee, the voting period, the 48-hourmarket window and the seven-day TWAPtrailing baseline window are all fields set whe…r than pretending to price it.

  • Modified – Text at Block 6

    Where this sits in the wider p…bout one concrete winner. The 48-hourmarket window plays the role a gove…s/voting/proposal-lifecycle) .

  • Modified – Text at Block 7

    The proposal lifecycle A prop…t ratifies: the trigger locks a seven-daythe trailing TWAP as a baseline and opens a 48-hourthe market window, and the action runs o…KET RATIFIES4TRIGGERLocks the 7-daytrailing TWAP as a baselineand opens the 48-hourmarket window.5WINDOWThe market trades, and every hourtradecounts. Holding ratifies; sell…e → vote → settle → trigger → 48-hourmarket window → resolve · PAYOUT / I…/ DIVEST / METADATA / UPGRADE.

v4.2.0Add the sixth option kind DEBATE (deployed 2026-09-05 09:36Z): correct the creation shape guard, the discriminant list and the creation whitelist, and note that a passing slate no longer guarantees an action–
3 blocks modified
  • Modified – Text at Block 1 → Block 1

    Type Two-phase – a ranked ball…DATA · UPGRADE ($CAPER only) Non-executive kind DEBATE – ranked and winnable, terminal at the tally Who may propose Any holder of …/voting/optimistic-governance)

  • Modified – Text at Block 3

    A slate of options, not a sing…ry – and at least one must be executablean answer other than the no-op, so a rejection is always on the ballot and a pass always has something to dosomething always stands against it. Voters submit a full permuta…native-ballot-methods) . Each executable optionoption that executes is typed at creation as one of five kinds, and a sixth kind executes nothing at all. A single slate may mix them – th…nent before it will store it. - DEBATE – executes nothing, and is the one kind that is not an action. A position in an argument: ranked with the rest, able to win the count outright, and terminal there. The contract asserts that a debate option carries no execution fields at all, and refuses to trigger one if it wins, so it never opens a market window and never incurs an execution fee. Added to the deployed logic on 5 September 2026; a slate of debate positions plus the no-op is valid, which means a passing proposal no longer guarantees that anything happens. The discriminants are 0 PAYOUT… 1 INVEST, 3 UPGRADE, 4 DIVEST and, 5 METADATA and 6 DEBATE, and the gap at 2 is the poin…ion accepts 0 | 1 | 3 | 4 | 5 | 6 and names VOTE in its abort me…(/wiki/governance/execution) .

  • Modified – Text at Block 5

    What it costs, and who may pro… zero and the trigger is free. A DEBATE winner is never triggered at all, so it never reaches this fee: the flat creation fee is the entire cost of putting a question to the caper. Who pays it is decided by the…r than pretending to price it.

v4.1.1Correct the VOTE discriminant: it is kind 2, a retired gap in the middle of the range, not 'a sixth kind'. Settled against contracts/common/src/lib.rs and the creation whitelist in contracts/logic/src/lib.rs at the deployed commit; matches the house form on foundations/paying-someone-from-a-caper.–
1 block modified
  • Modified – Text at Block 3

    A slate of options, not a sing…nent before it will store it. A sixth kind –The discriminants are 0 PAYOUT, 1 INVEST, 3 UPGRADE, 4 DIVEST and 5 METADATA, and the gap at 2 is the point rather than an accident. Kind 2 was VOTE, which let one caper cast aits treasury's ballot inside another –; it belonged to the pre-August es…id not return with the ballots; the contract rejects it by name. The number was retired rather than recycled, so the whitelist that guards creation accepts 0 | 1 | 3 | 4 | 5 and names VOTE in its abort message – a proposal built against the old ABI fails at creation instead of storing an option nothing can execute. The per-kind numbering is set out in paying someone from a caper (/wiki/foundations/paying-someone-from-a-caper) . Every executable option is v…(/wiki/governance/execution) .

v4.1.0Update the “The proposal lifecycle” infographic.–
1 block modified
  • Modified – Text at Block 7

    The proposal lifecycle A proposal moves through threewo phases — propose, window, resolve — and carries exactly one of five on-chain actions. Nobody votes: the proposal passes if the caper’s live price is at or above the seven-day TWAP baseline locked when it was raisedand six steps. First the vote legislates: 2–5 ranked options, ranked ballots weighted (t·v)/(V·T), and a Borda leader that must clear 1.5/N of cast weight. Then the market ratifies: the trigger locks a seven-day TWAP baseline and opens a 48-hour window, and the action runs only if the average price over that window is at or above the baseline. CAPER PROTOCOLThe proposal lifecycle32 PHASES · 5 ACTIONSPROPOSE → WINDOW → RESOLVE1PROPOSEHold 1 token, pay the fee. Theaction and aHASE 1 · THE VOTE LEGISLATES1PROPOSEHold 1 token, pay 500 XRD. 2–5ranked options, one of them “Donothing”.2VOTERanked ballots, 100 XRD each,weighted (t·v)/(V·T). Tokens stayliquid.3SETTLEA crank folds the tally. The Bordaleader needs 1.5/N of cast weight.PHASE 2 · THE MARKET RATIFIES4TRIGGERLocks the 7-day TWAP as a baselineare frozen.248-HOUR nd opens the 48-hour window.5WINDOWThe market trades, and every hourcounts. Holding is consent;selling is the only way to ratifies; sellingobject.3s.6RESOLVEAnyone settles it, then… a recipient from the treasury—– a grant, a salary, a bill.INV…d logic. $CAPERproposals only.It passes ifA ballot decides what the caper wants; the window’s own average price is at or above the baseline locked at creation. Nobody votedecides whether it happens.How a caper turns a decision into an on-chain action — pric– legislated by a vote, ratified by its own market.caper.networkPropose → vote → settle → trigger → 48-hour window → resolve · PA…/ DIVEST / METADATA / UPGRADE.

v4.0.0A proposal is a ranked slate again, and it must clear two tests. Replaces the 26-28 Aug 'one action, no ballot, passes on live spot' model: 2-5 options with a mandatory no-op, the 1.5/option_count threshold of cast weight, the trigger, and window-TWAP resolution. Also splits the fee correctly - 500 XRD flat at creation, 10% of the WINNING action at the trigger, payer decided by the ballot. Verified against the live CaperMain (component_tdx_2_1cpz5lth...) and contracts/ at 3a8af9c.–
6 blocks modified
  • Modified – Text at Block 1 → Block 1

    Type Optimistic proposal — one action, noTwo-phase – a ranked ballot legislates, a market window ratifies Ballot 2–5 options, always including a "Do nothing"; a full ranked permutation, 100 XRD per ballot Executive action kind… the caper’s own tokens Cost The greater of 500 XRD and500 XRD flat at creation, into the caper’s own treasury; plus 10% of the winning action’s XRD value, paid into the caper’s own treasury Window 48 hours from creation Passes if The live curve price at the trigger Windows A voting period, then 48 hours of market window opened by the trigger Passes if The Borda leader clears 1.5 / option_count of cast weight and is not the no-op – and then the window’s own TWAP is at or above the 7-day TWAP baseline locked at creation Related the trigger Related Voting (/wiki/governance/voting) , Execution (/wiki/governance/e…/voting/optimistic-governance) , Proposal lifecycle (/wiki/dao-governance/concepts/voting/proposal-lifecycle)

  • Modified – Text at Block 2

    A proposal is a single on-chain aclate of options a caper' votes on, exactly one of which its treasury will then perform – unless its own market objects. Nobody casts a ballot. When the proposal is raised the contract freezes the action and locks a price baseline; forty-eight hours later anyone can settle it, and it passes if the caper's li first. It has to survive two independent tests. The ballot (/wiki/governance/voting) decides what the caper wants: holders rank the options, a permissionless crank folds the tally, and the leading option passes only if it clears a 1.5 / option_count supermajority of cast weight and is not the "Do nothing" entry. Then the market decides whether it happens: someone triggers the winner, which locks the caper's trailing seven-day average price as a baseline and opens a fixed 48-hour window, and the action executes only if the average price over token pricehat window is at or above thate baseline. Holding through the window is consent, and; selling is the only way to object – which makes a caper a working instance of optimistic governance (/wiki/dao-governance/concepts/voting/optimistic-governance) , with the veto priced by a market rather than raised by a council. This replacbjection. This page has described three different mechanisms in a month, so the dates matter. Until 26 August 2026 a caper decided by ranked ballot alone. From 26 to 28 August 2026 the ballots were removed entirely and a proposal named one action that passed on price – the model this page described, a ranked-ballot system in August 2026. Pages elsewhere on this wiki may still describe the older mechanism; the deployed contract is the authority, and its public surface no longer carries a vote entry point at allccurately, for those three days. On 29 August 2026 voting was reinstated in front of the optimistic phase, and the price test was tightened from the spot price at the moment of the crank to the TWAP over the window itself. Everything below describes that third deployment, read off the live CaperMain. Where any Caper material disagrees, the deployed contract is the authority.

  • Modified – Text at Block 3

    One acA slate of options, not a ballotsingle action A proposal carries exactly one action, chosen from five kinds and typed at creation. There are no options to rank, no “dbetween two and five options, and the contract asserts the shape rather than trusting the app: at least one must be a no-op – the "Do nothing”" entry, – and no supermajority arithmetic: the alternative to a proposal passing is simply that it does not pass, and nothing happensat least one must be executable, so a rejection is always on the ballot and a pass always has something to do. Voters submit a full permutation: every option ranked exactly once. On the wider taxonomy of why…typed-vs-arbitrary-execution) , and on ranked methods generally, ranked and alternative ballot methods (/wiki/dao-governance/concepts/voting/ranked-and-alternative-ballot-methods) . Each executable option is typed at creation as one of five kinds, and a single slate may mix them – the ballot picks one, and only the winner is ever executed. - PAYOUT —– transfers a chosen currency a…cted after the fact. - INVEST —– withdraws XRD from this treas… skimmed in transit. - DIVEST —– the same trade run backwards:…only in direction. - METADATA —– rewrites the mutable metadata…med at one of them. - UPGRADE —– nominates a candidate logic c…nent before it will store it. Every acA sixth kind – VOTE, which let one caper cast a ballot inside another – belonged to the pre-August escrow system and did not return with the ballots; the contract rejects it by name. Every executable option is validated at creation …is banked irrevocably and the acoptions frozen, so an unchecked field…(/wiki/governance/execution) .

  • Modified – Text at Block 4

    The windowtwo phases, and what settles it Creation locks a baseline: the time-weighted average price of the caper's token each Phase one: the tally. Voting opens at creation and closes when the voting period elapses. Each ballot is weighted (t·v)/(V·T), with T – the circulating supply – frozen once at creation so ordinary trading cannot mover the trailing seven days, computed from the curve's denominator under a vote already cast, and each ballot's stake clamped to min(held at cast, balance nown) sampled circulation history and converted intoo a voter cannot cast and then sell out from under their own weight. Once the perice space. That number is written into the proposal and never recomputed. The proposal is then open for 48 hours, during which nod closes, anyone can crank crystallize_ballots to fold the ballots in chunks, and settle_proposal to freeze the verdict. The threshold is a share of cast weight, not of the electorate: 1.5 / option_count, so two options need 75% and five need 30%. A leading option that is the no-op fails by rule even if it clears the bar. Details in Vothing (/wiki/governance-specific happens. Members trade, or do not. When the window closes, any account – member or not – can call the resolve entry point once. It reads the live spot/voting) . Phase two: the window. A legislative pass executes nothing on its own. Someone must call the trigger, which prices the execution fee off the winning action at that moment's spot, locks a baseline – the time-weighted average price off the bonding curve (/wiki/markets/bonding-curve) and compares it with the stored baseline: - Spotcaper's token over the trailing seven days, computed from the curve's own sampled circulation history – and opens a 48-hour window. Nothing governance-specific happens during it. Members trade, or do not. When it closes, any account – member or not – can call resolve once: - Window TWAP at or above the baseline → the proposal passexecutes. The market was told what would happenthe caper had decided to do and did not sell. - SpotWindow TWAP below the baseline → it fails. Enough holders sold, duringacross a window in which the proposedwinning action was public, to push the price under whold the average under where the token had been trading. That is the veto. The comparison is against the average over the window itself, not the price at the instant somebody happens to crank there it had been trading. That is the vetosolve. That is deliberate: a spot test rewards whoever times the call, and a single wash trade in the resolving block could carry it. Anchoring on the window's own integral means every hour of the 48 counts, and a late crank reads the same verdict an instant one does. Settlement is once-only and … execution is a separate call that anyone can likewise make. Both…ite that draws the gas. The floor on theat proposal fee exists to cover … plainly. First, an apathetic caper passes proposals: silencemarket ratifies: silence in phase two resolves as consent, which is…ion to every optimistic system – what the reinstated ballot adds is that silence in phase one is not enough, because a proposal on which nobody votes has no cast weight to clear the threshold with. Second, the market's objection costs the objector real money at a real price, rather than a signature –, and it is the same act as lea…foundations/leaving-a-caper) .

  • Modified – Text at Block 5

    What it costs, and who may pro…sition. - Pay the proposal fee, which is the greater of a 500 XRD floor and: a flat 500 XRD at creation. Send more and the remainder comes back in the same transaction. That fee is deposited into that caper's own treasury rather than burned or escrowed. It is a fee, not a refundable bond: it does not come back if the proposal fails, which is what makes it a spam gate. It also doubles as the settlement-gas allowance the treasury draws on to reimburse the cranks, so a proposal funds its own settlement out of what it banked. The percentage leg moved. It is no longer part of the cost of raising a proposal – it is an execution fee of 10% of the winning action's XRD-equivalent value. A, due at the trigger and priced at that moment's spot: a PAYOUT in a non-XRD currency and a DIVEST are converteds at the issuing caper's live curve price;, an IN DIVEST is denominated inat the target's, an INVEST is XRD already;, and METADATA and UPGRADE move no value and pay the floor. Send more than is due and the remainder comes back in the same transaction. The fee is deposited into that caper's own treasury rather than burned or escrowed. It is a fee, not, so their basis is zero and the trigger is free. Who pays it is decided by the ballot's second question – proposer or treasury, settled by plain weight majority, a tie going to the treasury. Treasury-pays nets to a waiver, because the fee's sink is that same treasury, so a trefundable bond: it does not come back if the proposal fails. Its percentage leg is what prices scale –asury-pays trigger costs the caller nothing and stays fully permissionless. The practical effect is unchanged in spirit and different in incidence: a proposal to move a large fraction of a treasury still costs proportionally more to raise, but it costs thant one to pay a small invoice, which is a spam control that does not fall on smallly if it wins, and only if the electorate votes to charge its proposers. See the FAQ (/wiki/help/faq… an admin toggle either. The fee floor, the fee ratelat fee, the execution rate, the vote fee, the voting period, the 48-hour window and the s…n $CAPER, settled by the same markettwo tests as everything else. One caper…o bonding curve. Baseline and spotwindow TWAP would both read zero, every proposal would passlegislative pass would execute unconditionally, and governan…r than pretending to price it.

  • Modified – Text at Block 6

    Where this sits in the wider p…es of DAO governance meet here, and since August 2026 a caper is a hybrid of them rather than a pure instance of either. From optimistic governance …ins, UMA's oSnap – comes the shape: a proposalecond phase's shape: a decision is assumed to passstand and the work is in objecting.…llenger. Caper answers it with the second family, the market-decides tradition …ld, and its cost is the price. What phase one restores is the conventional half – token-weighted (/wiki/dao-governance/concepts/voting/token-weighted-voting) ranked voting behind a supermajority, which is what most DAOs run and all a caper ran before August. The differences are worth bei… against a single spot market: after the electorate has said what it wants, is the token still worth what it was worth before this was proposed? That buys a mechanism with n…ns during the window blocks a goodecided proposal, and a proposal too small to move the price passesis ratified on indifference rather than on assent. Running the ballot first narrows how often that coarseness matters, because the market is only ever asked about one concrete winner. The 48-hour window plays the …s/voting/proposal-lifecycle) .

v3.2.0Update the “The proposal lifecycle” infographic.–
1 block modified
  • Modified – Text at Block 7

    The proposal lifecycle A prop…8-HOUR WINDOWThe market trades, and every hourcounts. Holding isconsent;selling is the only wayto object.3RESOLVEAnyone settl…oposals only.It passes if the livwindow’s average price is at or above the bas…/ DIVEST / METADATA / UPGRADE.

v3.1.0Add the “The proposal lifecycle” infographic.–
1 block added
  • Added – Text at Block 7

    The proposal lifecycle A proposal moves through three phases — propose, window, resolve — and carries exactly one of five on-chain actions. Nobody votes: the proposal passes if the caper’s live price is at or above the seven-day TWAP baseline locked when it was raised. CAPER PROTOCOLThe proposal lifecycle3 PHASES · 5 ACTIONSPROPOSE → WINDOW → RESOLVE1PROPOSEHold 1 token, pay the fee. Theaction and a 7-day TWAP baselineare frozen.248-HOUR WINDOWThe market trades. Holding isconsent; selling is the only wayto object.3RESOLVEAnyone settles it, then executesit. The treasury pays the gas.WHAT A PASSED PROPOSAL CAN DOPAYOUTPay a recipient from the treasury— a grant, a salary, a bill.INVESTBuy another caper’s token straightinto your treasury.DIVESTSell a token the treasury holdsback down its own curve.METADATARewrite this caper’s own tokendescription, icon or link.UPGRADESwap the shared logic. $CAPERproposals only.It passes if the live price is at or above the baseline locked at creation. Nobody votes.How a caper turns a decision into an on-chain action — priced by its own market.caper.networkPropose → 48-hour window → resolve · PAYOUT / INVEST / DIVEST / METADATA / UPGRADE.

v3.0.0Rewrite for the optimistic-proposal system: one typed action, a 48h window, a 7-day TWAP baseline settled by the live curve price. Removes the retired ranked ballot, ballot fee, no-execution option, 1.5/N supermajority, market veto and VOTE action kind; verified against the deployed CaperMain (component_tdx_2_1cqz0ahm..., package_tdx_2_1phyccvv...) and contracts/logic/src/lib.rs.–
6 blocks added, 6 blocks removed
  • Removed – Text at Block 1 → Block 1

    Type Ranked-choice ballot, two or more options Proposal type Legislative (signal-only) or executive Executive action kinds PAYOUT · INVEST · DIVEST · VOTE · UPGRADE ($CAPER only) Costs Configured schedule — 500 XRD to propose · 100 XRD per ballot, both admin-settable, both paid into the caper's own treasury Passes at 1.5 / N supermajority of weight cast, then survives the market veto Related Voting (/wiki/governance/voting) , Execution (/wiki/governance/execution) , Proposal lifecycle (/wiki/dao-governance/concepts/voting/proposal-lifecycle)

  • Removed – Text at Block 2

    A proposal is a ranked-choice ballot with two or more options that a caper's members vote on to decide what the treasury does. The proposal as a whole is either legislative (signal-only) or executive, and each option on an executive proposal carries an on-chain action the contract performs if that option wins.

  • Removed – Text at Block 3

    Legislative or executive Which of the two a proposal is gets fixed when it is created and written into the proposal's stored metadata; nothing later can change it. A legislative proposal is pure signal – a sentiment check, a mandate, a statement of intent – and carries no on-chain action, so there is nothing for anyone to execute once it resolves. An executive proposal's options each carry exactly one action, and the winning option's action is what the execution step (/wiki/governance/execution) performs. The distinction is a property of the proposal, not of an individual option. On-chain it is a single boolean recorded alongside the title and description; the option's own kind field is a separate discriminant that selects which of the five actions below it carries. The five executive action kinds - PAYOUT — transfers a chosen currency and amount from the treasury to a recipient (another caper's treasury or a raw account), by way of an account locker (/wiki/markets/raising-funds) so a recipient's deposit rules cannot abort the execution. - INVEST — withdraws XRD from this treasury, buys a target caper's governance token on its bonding curve (/wiki/markets/bonding-curve) , and deposits the tokens back into this treasury. - DIVEST — the same trade run backwards: withdraws a voted-on amount of a target caper's token this treasury already holds, sells it into that caper's curve, and deposits the XRD. It stores the identical fields to INVEST and differs only in direction, so a caper can leave a position it voted itself into. The one target it cannot take is the $XRD caper, which has no bonding curve to sell into. - VOTE – casts a pre-committed ranked ballot on another caper's proposal, letting a caper act as a member of another caper. The treasury must have staked into the target's ballot box in an earlier transaction, and the execution (/wiki/governance/execution) aborts outright if it has not, rather than burning its once-only guard on a ballot that would grace-close to zero weight. One token of the target stays unstaked in the treasury account, because the immortal tier's frozen withdraw still takes exactly one. - UPGRADE — swaps the platform's shared logic tier to a candidate component, in a propose-then-activate sequence. Reserved to the $CAPER caper: one activation changes the logic every caper on the platform runs, so only the platform DAO may raise it, and the contract rejects an UPGRADE option anywhere else. Every executive action is spelled out step by step, with the guards each one carries, in Execution (/wiki/governance/execution) .

  • Removed – Text at Block 4

    The no-execution option Every proposal carries a no-execution option that voters can rank above any executive option. If it finishes first, the proposal resolves without touching the chain — the deliberate "do nothing" outcome, always on the ballot so a proposal can be defeated rather than only redirected. Passing the vote Options are scored by ranked-choice weight (/wiki/governance/voting) , and the leading option only executes if it clears a supermajority — a 1.5 / N share of all weight cast, where N is the option count. Falling short leaves the proposal resolved with no action. Clearing it is necessary rather than sufficient: since 25 August 2026 a passed tally is cancelled at settlement by the market veto (/wiki/governance/execution) if the caper's curve price fell more than 30% between voting close and finalize, which is the platform's answer to a hostile proposal carried on suppressed turnout rather than on support. For how this maps onto the wider DAO pattern of forum discussion → temperature check → formal proposal, see the DAO proposal lifecycle (/wiki/dao-governance/concepts/voting/proposal-lifecycle) . Note what is not in that rule: there is no quorum. Most token DAOs require a minimum share of token supply to participate before a result counts at all, which is the number an attacker prices when they buy an electorate. A caper's bar is a share of the weight actually cast, so there is no absolute figure to acquire – and equally no participation floor, which is a real trade rather than a free win. The comparison across Compound, OpenZeppelin, Arbitrum and Nouns is set out in Quorum and threshold design (/wiki/dao-governance/concepts/voting/quorum-and-threshold-design) .

  • Removed – Text at Block 5

    What it costs, and who may propose Caper has no supply-percentage proposal threshold. Two conditions gate a proposal, and both are flat: - Hold at least one governance token of the caper you are proposing to. The contract checks a proof of the caper's own token for an amount of at least 1 and aborts the whole transaction if it fails – so any member can propose, regardless of the size of their position. - Pay the configured proposal fee, currently 500 XRD. The payment must be exactly the configured fee, in XRD, and it is deposited into that caper's own treasury rather than burned or held in escrow. It is a fee, not a refundable bond: it does not come back if the proposal fails. Voting costs a separate ballot fee, currently 100 XRD, on the same terms, and the ballot must rank every option exactly once. What it does not require is a held balance. The two gates diverged at the ballot-era upgrade of 16 August 2026: creating a proposal still checks a governance-token proof for an amount of at least one, while the vote entry point takes the same proof and discards it unchecked (drop(held_proof) in vote, contracts/logic/src/lib.rs). What gates a ballot now is a governance-token balance staked into the caper's ballot box, read at cast time, which is also the ballot's weight term. Staking is a separate transaction that comes first, and the stake stays locked until the ballot it backs is released (/wiki/governance/execution) . Voting (/wiki/governance/voting) covers the mechanics. Two conditions therefore close a cast gracefully rather than reverting, and both still cost the fee: a cast that arrives outside the voting window, and a cast from an account with nothing staked. Either records no ballot, returns false, and deposits the 100 XRD straight into the caper's own treasury exactly as the accepted path eventually would – where an accepted ballot's fee instead sits escrowed in the ballot box until release (/wiki/governance/execution) banks it. Neither case reverts, because an abort would poison every other ballot batched into the same settlement transaction. So a ballot is worth staking for, and casting, well before the boundary. Neither figure is a constant. Both are stored fields the protocol admin can rewrite in a single update_fees call, so what is quoted here is the configured schedule rather than a property of the contract. Configured is not unconstrained, though, and of the four levers that call rewrites it is the proposal fee that carries the tightest bound: it must always cover the per-proposal settlement-gas budget, which is itself 500 XRD. Settling is permissionless, and whoever calls it draws the gas from the caper's own treasury against that allowance – so the floor is what stops a proposal costing more treasury to settle than it banked, and it means the 500 XRD above can be raised but never cut. The ballot fee is bounded only at zero. See the FAQ (/wiki/help/faq) on protocol fees. Every proposal must offer at least two options, and one of them is the no-execution option. Two further restrictions apply to specific option kinds: custom voting and execution windows may only be set on an executive proposal that carries a VOTE option (a caper voting inside another caper's proposal, where the window has to fit the target's schedule), and UPGRADE options may only appear on the $CAPER caper's own proposals, because one upgrade swaps the shared logic for every caper on the platform. The flat-fee design is a deliberate trade. A proposal threshold denominated as a percentage of supply concentrates the right to propose in the largest holders and grows more exclusive as the token appreciates; a fixed fee does not, though its real weight still moves with the XRD price. The wider pattern, and what other DAOs set instead, is covered in Quorum and threshold design (/wiki/dao-governance/concepts/voting/quorum-and-threshold-design) .

  • Removed – Text at Block 6

    The proposal lifecycle A proposal moves through three phases — propose, vote, execute — and can carry one of five on-chain actions. Winning takes more than a plurality: the top option must clear a supermajority of the vote. CAPER PROTOCOLThe proposal lifecycle3 PHASES · 5 ACTIONSPROPOSE → VOTE → EXECUTE1PROPOSEPay a 500 XRD fee. Offer at leasttwo options, including a No.2VOTERank every option. Each ballotcosts 100 XRD.3EXECUTEAfter a delay, the winning optionruns on-chain.WHAT A PASSED PROPOSAL CAN DOPAYOUTPay a recipient from the treasury— a grant, a salary, a bill.INVESTBuy another caper’s token straightinto your treasury.DIVESTSell a token the treasury holdsback down its own curve.VOTECast your caper’s vote insideanother caper’s proposal.UPGRADESwap the shared logic. $CAPERproposals only.The winner needs the most weight AND at least 1.5 / N of the total vote. A “No” win does nothing.How a caper turns a decision into an on-chain action.caper.networkPropose → vote → execute · PAYOUT / INVEST / DIVEST / VOTE / UPGRADE.

  • Added – Text at Block 1 → Block 1

    Type Optimistic proposal — one action, no ballot Executive action kinds PAYOUT · INVEST · DIVEST · METADATA · UPGRADE ($CAPER only) Who may propose Any holder of at least 1 of the caper’s own tokens Cost The greater of 500 XRD and 10% of the action’s XRD value, paid into the caper’s own treasury Window 48 hours from creation Passes if The live curve price is at or above the 7-day TWAP baseline locked at creation Related Execution (/wiki/governance/execution) , Optimistic governance (/wiki/dao-governance/concepts/voting/optimistic-governance) , Proposal lifecycle (/wiki/dao-governance/concepts/voting/proposal-lifecycle)

  • Added – Text at Block 2

    A proposal is a single on-chain action a caper's treasury will perform unless its own market objects. Nobody casts a ballot. When the proposal is raised the contract freezes the action and locks a price baseline; forty-eight hours later anyone can settle it, and it passes if the caper's live token price is at or above that baseline. Holding is consent, and selling is the only way to object – which makes a caper a working instance of optimistic governance (/wiki/dao-governance/concepts/voting/optimistic-governance) , with the veto priced by a market rather than raised by a council. This replaced a ranked-ballot system in August 2026. Pages elsewhere on this wiki may still describe the older mechanism; the deployed contract is the authority, and its public surface no longer carries a vote entry point at all.

  • Added – Text at Block 3

    One action, not a ballot A proposal carries exactly one action, chosen from five kinds and typed at creation. There are no options to rank, no “do nothing” entry, and no supermajority arithmetic: the alternative to a proposal passing is simply that it does not pass, and nothing happens. On the wider taxonomy of why a governance system offers a fixed menu of actions rather than arbitrary calldata, see typed vs arbitrary proposal execution (/wiki/dao-governance/concepts/voting/typed-vs-arbitrary-execution) . - PAYOUT — transfers a chosen currency and amount from the treasury to a named recipient account. The recipient is stored at creation and dereferenced at execution, so the proposal cannot be redirected after the fact. - INVEST — withdraws XRD from this treasury, buys a target caper's token on its bonding curve (/wiki/markets/bonding-curve) , and deposits the tokens straight back into this treasury. The XRD never reaches the worktop, so no part of it can be skimmed in transit. - DIVEST — the same trade run backwards: withdraws an amount of a target caper's token this treasury already holds, sells it into that caper's curve, and banks the XRD. It stores the identical fields to INVEST and differs only in direction. - METADATA — rewrites the mutable metadata of this caper's own token: description, icon, or information URL. At least one field must be set, and the contract pins the target to this caper's token address, so an admin badge shared with sibling resources cannot be aimed at one of them. - UPGRADE — nominates a candidate logic component and, in a second step, activates it. Reserved to the $CAPER caper, because one activation changes the logic every caper on the platform runs; the contract rejects an UPGRADE raised anywhere else, and checks that the candidate is genuinely a CaperMain component before it will store it. Every action is validated at creation against what execution will later require — a PAYOUT needs a recipient, an INVEST needs a resolvable target and an amount above the curve's own buy minimum, a DIVEST needs a positive amount, a METADATA payload must decode and set something. The fee is banked irrevocably and the action frozen, so an unchecked field would not produce a failed proposal but a poisoned one: it would settle as passed and then abort on every execution attempt, forever, with the treasury's fee already spent. Each guard is spelled out step by step in Execution (/wiki/governance/execution) .

  • Added – Text at Block 4

    The window, and what settles it Creation locks a baseline: the time-weighted average price of the caper's token over the trailing seven days, computed from the curve's own sampled circulation history and converted into price space. That number is written into the proposal and never recomputed. The proposal is then open for 48 hours, during which nothing governance-specific happens. Members trade, or do not. When the window closes, any account – member or not – can call the resolve entry point once. It reads the live spot price off the bonding curve (/wiki/markets/bonding-curve) and compares it with the stored baseline: - Spot at or above the baseline → the proposal passes. The market was told what would happen and did not sell. - Spot below the baseline → it fails. Enough holders sold, during a window in which the proposed action was public, to push the price under where it had been trading. That is the veto. Settlement is once-only and irreversible, and execution is a separate call that anyone can likewise make. Both are permissionless public goods, so the caper's own treasury reimburses whoever performs them: 5 XRD per call, against a per-proposal allowance of 500 XRD that no repeat call can bleed, because the once-only flag flips in the same substate write that draws the gas. The floor on the proposal fee exists to cover exactly that allowance – a proposal can never cost a treasury more to settle than it paid to raise. Two consequences are worth stating plainly. First, an apathetic caper passes proposals: silence resolves as consent, which is the deliberate inverse of a quorum and the standard objection to every optimistic system. Second, the objection costs the objector real money at a real price, rather than a signature – and it is the same act as leaving, so a member who would have exited over a proposal blocks it on the way out. The comparison with quorum-based designs is set out in quorum and threshold design (/wiki/dao-governance/concepts/voting/quorum-and-threshold-design) , and the exit itself in leaving a caper (/wiki/foundations/leaving-a-caper) .

  • Added – Text at Block 5

    What it costs, and who may propose Caper has no supply-percentage proposal threshold. Two conditions gate a proposal: - Hold at least one governance token of the caper you are proposing to. The contract checks a proof for an amount of at least 1 and aborts the whole transaction if it fails, so any member can propose regardless of the size of their position. - Pay the proposal fee, which is the greater of a 500 XRD floor and 10% of the action's XRD-equivalent value. A PAYOUT in a non-XRD currency and a DIVEST are converted at the issuing caper's live curve price; an INVEST is denominated in XRD already; METADATA and UPGRADE move no value and pay the floor. Send more than is due and the remainder comes back in the same transaction. The fee is deposited into that caper's own treasury rather than burned or escrowed. It is a fee, not a refundable bond: it does not come back if the proposal fails. Its percentage leg is what prices scale – a proposal to move a large fraction of a treasury costs proportionally more to raise than one to pay a small invoice, which is a spam control that does not fall on small proposers. See the FAQ (/wiki/help/faq) on protocol fees. None of these figures is a constant of the protocol, and none is an admin toggle either. The fee floor, the fee rate, the 48-hour window and the seven-day TWAP window are all fields set when the shared logic component is initialised, with no setter on its public surface. Changing any of them means swapping the logic tier — which is an UPGRADE proposal on $CAPER, settled by the same market test as everything else. One caper cannot carry proposals at all: $XRD, which holds native XRD and has no bonding curve. Baseline and spot would both read zero, every proposal would pass unconditionally, and governance would be an open drain on the treasury. The contract rejects the proposal outright rather than pretending to price it.

  • Added – Text at Block 6

    Where this sits in the wider pattern Two families of DAO governance meet here. From optimistic governance (/wiki/dao-governance/concepts/voting/optimistic-governance) – Aragon's optimistic plugins, UMA's oSnap – comes the shape: a proposal is assumed to pass and the work is in objecting. What those systems leave open is who may object and at what cost, which is usually a named guardian council or a bonded challenger. Caper answers it with the second family, the market-decides tradition that futarchy (/wiki/dao-governance/concepts/voting/futarchy) belongs to and that MetaDAO (/wiki/daos/infrastructure/metadao) runs in production: the objection is a trade, so the right to object is exactly the right to hold, and its cost is the price. The differences are worth being precise about. Futarchy asks a conditional question – what would this token be worth if the proposal passed, against if it failed – and needs two conditional markets to answer it. A caper asks a simpler and cheaper one against a single spot market: is the token still worth what it was worth before this was proposed? That buys a mechanism with no extra markets to bootstrap and no liquidity to fragment, at the cost of a coarser signal – a price that fell for unrelated reasons during the window blocks a good proposal, and a proposal too small to move the price passes on indifference rather than on assent. The 48-hour window plays the role a governance timelock (/wiki/dao-governance/concepts/voting/governance-timelocks) plays elsewhere, with one difference: a timelock gives holders time to leave after a decision is final, whereas here leaving during the window is what makes it final or not. For the shape this all takes in a conventional DAO – forum thread, temperature check, formal vote, timelock, execution – see the DAO proposal lifecycle (/wiki/dao-governance/concepts/voting/proposal-lifecycle) .

v2.3.0Note the market veto on the pass rule–
2 blocks modified
  • Modified – Text at Block 1 → Block 1

    Type Ranked-choice ballot, two…N supermajority of weight cast, then survives the market veto Related Voting (/wiki/gover…pts/voting/proposal-lifecycle)

  • Modified – Text at Block 4

    The no-execution option Every …posal resolved with no action. Clearing it is necessary rather than sufficient: since 25 August 2026 a passed tally is cancelled at settlement by the market veto (/wiki/governance/execution) if the caper's curve price fell more than 30% between voting close and finalize, which is the platform's answer to a hostile proposal carried on suppressed turnout rather than on support. For how this maps onto the wi…quorum-and-threshold-design) .

v2.2.0Correct the voting precondition: the ballot-era gate is a staked balance, not a held one, and a stakeless cast grace-closes like a window miss. Also state the treasury VOTE stake requirement.–
2 blocks modified
  • Modified – Text at Block 3

    Legislative or executive Which…ng curve to sell into. - VOTE —– casts a pre-committed ranked … on another caper's proposal, using one governance token of that target letting a caper act as a member of another caper. The treasury must have staked into the target's ballot box in an earlier transaction, and the execution (/wiki/governance/execution) aborts outright if it has not, rather treasury holds — letting a caper act as a member of another caperhan burning its once-only guard on a ballot that would grace-close to zero weight. One token of the target stays unstaked in the treasury account, because the immortal tier's frozen withdraw still takes exactly one. - UPGRADE — swaps the platfo…(/wiki/governance/execution) .

  • Modified – Text at Block 5

    What it costs, and who may pro…tly 100 XRD, on the same terms. A voter must also hold at least one, and the ballot must rank every option exactly once. What it does not require is a held balance. The two gates diverged at the ballot-era upgrade of 16 August 2026: creating a proposal still checks a governance-token, and the ballot must rank every option exactly once. A vote submitted outside the voting window closes gracefully rather than reverting: no ballot is recorded, the call proof for an amount of at least one, while the vote entry point takes the same proof and discards it unchecked (drop(held_proof) in vote, contracts/logic/src/lib.rs). What gates a ballot now is a governance-token balance staked into the caper's ballot box, read at cast time, which is also the ballot's weight term. Staking is a separate transaction that comes first, and the stake stays locked until the ballot it backs is released (/wiki/governance/execution) . Voting (/wiki/governance/voting) covers the mechanics. Two conditions therefore close a cast gracefully rather than reverting, and both still cost the fee: a cast that arrives outside the voting window, and a cast from an account with nothing staked. Either records no ballot, returns false, and deposits the 100 XRD still goes to the treasury – so ballots are worthraight into the caper's own treasury exactly as the accepted path eventually would – where an accepted ballot's fee instead sits escrowed in the ballot box until release (/wiki/governance/execution) banks it. Neither case reverts, because an abort would poison every other ballot batched into the same settlement transaction. So a ballot is worth staking for, and casting, well before the boundary. Ne…quorum-and-threshold-design) .

v2.1.1Contract-verified correction: 'the only governance-adjacent number the contract actually bounds is the collateralization ceiling' is false. update_fees asserts proposal_fee >= SETTLEMENT_GAS_BUDGET (500 XRD, contracts/logic/src/lib.rs L191, L2196-2199), so the proposal fee quoted on this page sits exactly on a contract-enforced floor and can be raised but not cut; the bound exists because the permissionless settle path draws gas from the caper's treasury against a per-proposal allowance equal to that budget (dao_treasury.rs lock_settlement_fee L268-292).–
1 block modified
  • Modified – Text at Block 5

    What it costs, and who may pro…han a property of the contract; the only governance-adjacent number the contract actually bounds is the collateralization ceiling. Configured is not unconstrained, though, and of the four levers that call rewrites it is the proposal fee that carries the tightest bound: it must always cover the per-proposal settlement-gas budget, which is itself 500 XRD. Settling is permissionless, and whoever calls it draws the gas from the caper's own treasury against that allowance – so the floor is what stops a proposal costing more treasury to settle than it banked, and it means the 500 XRD above can be raised but never cut. The ballot fee is bounded only at zero. See the FAQ (/wiki/help/faq…quorum-and-threshold-design) .

v2.1.0Correct the proposal-lifecycle infographic: five option kinds (adds DIVEST and UPGRADE), verified against contracts/logic/src/lib.rs.–
1 block modified
  • Modified – Text at Block 6

    The proposal lifecycle A prop…xecute — and can carry one of threfive on-chain actions. Winning ta…The proposal lifecycle3 PHASES · 5 ACTIONSPROPOSE → VOTE → EXECUTE1PROPO… a 500 XRD fee. Offer at leasttwooptions, including a No.2VOTER…en straightinto your treasury.DIVESTSell a token the treasury holdsback down its own curve.VOTECast your caper’s vote insideanother caper’s proposal.UPGRADESwap the shared logic. $CAPERproposals only.The winner needs the most weig…→ execute · PAYOUT / INVEST / VOTDIVEST / VOTE / UPGRADE.

v2.0.0Action kinds rebuilt against contracts at HEAD (76d7bf5). The page listed four kinds (TEXT/PAYOUT/INVEST/VOTE); there is no TEXT kind on-chain and there are five, not four. ProposalOptionData.kind is a u8 gated 0 PAYOUT / 1 INVEST / 2 VOTE / 3 UPGRADE / 4 DIVEST; legislative-vs-executive is the proposal-level is_executive flag stored in ProposalMeta::V1, not an option kind. DIVEST (execute_proposal_divest) and UPGRADE documented; the option-level 'each option is legislative or executive' framing corrected to proposal-level.–
3 blocks modified
  • Modified – Text at Block 1 → Block 1

    Type Ranked-choice ballot, two or more options AProposal type Legislative (signal-only) or executive Executive action kinds TEXT · PAYOUT · INVEST · VOTEDIVEST · VOTE · UPGRADE ($CAPER only) Costs Configured schedule — …pts/voting/proposal-lifecycle)

  • Modified – Text at Block 2

    A proposal is a ranked-choice …ecide what the treasury does. Each optionThe proposal as a whole is either legislative (signal-only) or executive (it, and each option on an executive proposal carries an on-chain action th…t performs if that option wins).

  • Modified – Text at Block 3

    Action kinds A caper supports four action kinds: - TEXT — legislative, no on-chain action. Pure signal: a sentiment check, a mandate, a statement of intent.Legislative or executive Which of the two a proposal is gets fixed when it is created and written into the proposal's stored metadata; nothing later can change it. A legislative proposal is pure signal – a sentiment check, a mandate, a statement of intent – and carries no on-chain action, so there is nothing for anyone to execute once it resolves. An executive proposal's options each carry exactly one action, and the winning option's action is what the execution step (/wiki/governance/execution) performs. The distinction is a property of the proposal, not of an individual option. On-chain it is a single boolean recorded alongside the title and description; the option's own kind field is a separate discriminant that selects which of the five actions below it carries. The five executive action kinds - PAYOUT — transfers a chosen…r's treasury or a raw account), by way of an account locker (/wiki/markets/raising-funds) so a recipient's deposit rules cannot abort the execution. - INVEST — withdraws XRD fro…ns back into this treasury. - VOTE — casts a pre-committed ranked ballot on another caper's proposal, using one governance token of that target the treasury holds — letting a caper act as a member of another caperDIVEST — the same trade run backwards: withdraws a voted-on amount of a target caper's token this treasury already holds, sells it into that caper's curve, and deposits the XRD. It stores the identical fields to INVEST and differs only in direction, so a caper can leave a position it voted itself into. The one target it cannot take is the $XRD caper, which has no bonding curve to sell into. - VOTE — casts a pre-committed ranked ballot on another caper's proposal, using one governance token of that target the treasury holds — letting a caper act as a member of another caper. - UPGRADE — swaps the platform's shared logic tier to a candidate component, in a propose-then-activate sequence. Reserved to the $CAPER caper: one activation changes the logic every caper on the platform runs, so only the platform DAO may raise it, and the contract rejects an UPGRADE option anywhere else. Every executive action is spelled out step by step, with the guards each one carries, in Execution (/wiki/governance/execution) .

v1.1.0Fee figures restated as the configured (admin-settable) schedule rather than protocol constants — aligns with help/faq and update_fees in contracts/logic/src/lib.rs–
2 blocks modified
  • Modified – Text at Block 1 → Block 1

    Type Ranked-choice ballot, two…PAYOUT · INVEST · VOTE Costs Configured schedule — 500 XRD to propose · 100 XRD per ballot –, both admin-settable, both paid into the caper's ow…pts/voting/proposal-lifecycle)

  • Modified – Text at Block 5

    What it costs, and who may pro…ize of their position. - Pay a 500 XRD proposal feethe configured proposal fee, currently 500 XRD. The payment must be exactly …ils. Voting costs a separate 100 XRD fee per ballotballot fee, currently 100 XRD, on the same terms. A voter m…ng well before the boundary. Neither figure is a constant. Both are stored fields the protocol admin can rewrite in a single update_fees call, so what is quoted here is the configured schedule rather than a property of the contract; the only governance-adjacent number the contract actually bounds is the collateralization ceiling. See the FAQ (/wiki/help/faq) on protocol fees. Every proposal must offer at l…quorum-and-threshold-design) .

v1.0.0Deepen: add the proposal cost and eligibility rules read off create_proposal (1 governance token + 500 XRD fee into the caper's own treasury, 100 XRD per ballot, >=2 options, VOTE-only window overrides, $CAPER-only UPGRADE options); contrast the 1.5/N cast-weight pass rule with supply-denominated quorums; correct the infographic's 'Stake 500 XRD' to a fee, since it is deposited to the treasury and not returned.–
1 block added, 3 blocks modified, 1 block reordered
  • Modified – Text at Block 1 → Block 1

    Type Ranked-choice ballot, two…EXT · PAYOUT · INVEST · VOTE Costs 500 XRD to propose · 100 XRD per ballot – both paid into the caper's own treasury Passes at 1.5 / N supermajorit… Proposal lifecycle (/wiki/daos-governance/concepts/voting/proposal-lifecycle)

  • Modified – Text at Block 4

    The no-execution option Every … proposal lifecycle (/wiki/daos-governance/concepts/voting/proposal-lifecycle) . Note what is not in that rule: there is no quorum. Most token DAOs require a minimum share of token supply to participate before a result counts at all, which is the number an attacker prices when they buy an electorate. A caper's bar is a share of the weight actually cast, so there is no absolute figure to acquire – and equally no participation floor, which is a real trade rather than a free win. The comparison across Compound, OpenZeppelin, Arbitrum and Nouns is set out in Quorum and threshold design (/wiki/dao-governance/concepts/voting/quorum-and-threshold-design) .

  • Moved – Text at Block 6
  • Modified – Text at Block 6

    The proposal lifecycle A prop…OPOSE → VOTE → EXECUTE1PROPOSEStakePay a 500 XRD fee. Offer at least twooptions, i…cute · PAYOUT / INVEST / VOTE.

  • Added – Text at Block 5

    What it costs, and who may propose Caper has no supply-percentage proposal threshold. Two conditions gate a proposal, and both are flat: - Hold at least one governance token of the caper you are proposing to. The contract checks a proof of the caper's own token for an amount of at least 1 and aborts the whole transaction if it fails – so any member can propose, regardless of the size of their position. - Pay a 500 XRD proposal fee. The payment must be exactly the configured fee, in XRD, and it is deposited into that caper's own treasury rather than burned or held in escrow. It is a fee, not a refundable bond: it does not come back if the proposal fails. Voting costs a separate 100 XRD fee per ballot, on the same terms. A voter must also hold at least one governance token, and the ballot must rank every option exactly once. A vote submitted outside the voting window closes gracefully rather than reverting: no ballot is recorded, the call returns false, and the 100 XRD still goes to the treasury – so ballots are worth casting well before the boundary. Every proposal must offer at least two options, and one of them is the no-execution option. Two further restrictions apply to specific option kinds: custom voting and execution windows may only be set on an executive proposal that carries a VOTE option (a caper voting inside another caper's proposal, where the window has to fit the target's schedule), and UPGRADE options may only appear on the $CAPER caper's own proposals, because one upgrade swaps the shared logic for every caper on the platform. The flat-fee design is a deliberate trade. A proposal threshold denominated as a percentage of supply concentrates the right to propose in the largest holders and grows more exclusive as the token appreciates; a fixed fee does not, though its real weight still moves with the XRD price. The wider pattern, and what other DAOs set instead, is covered in Quorum and threshold design (/wiki/dao-governance/concepts/voting/quorum-and-threshold-design) .

v1.0.0Repoint 1 taxonomy-split link(s) to canonical daos/* paths–
2 blocks modified
  • Modified – Text at Block 1 → Block 1

    Type Ranked-choice ballot, two… Proposal lifecycle (/wiki/daos/concepts/voting/proposal-lifecycle)

  • Modified – Text at Block 4

    The no-execution option Every … proposal lifecycle (/wiki/daos/concepts/voting/proposal-lifecycle) .

v1.1.0Add the “The proposal lifecycle” infographic.–
1 block added
  • Added – Text at Block 5

    The proposal lifecycle A proposal moves through three phases — propose, vote, execute — and can carry one of three on-chain actions. Winning takes more than a plurality: the top option must clear a supermajority of the vote. CAPER PROTOCOLThe proposal lifecycle3 PHASESPROPOSE → VOTE → EXECUTE1PROPOSEStake 500 XRD. Offer at least twooptions, including a No.2VOTERank every option. Each ballotcosts 100 XRD.3EXECUTEAfter a delay, the winning optionruns on-chain.WHAT A PASSED PROPOSAL CAN DOPAYOUTPay a recipient from the treasury— a grant, a salary, a bill.INVESTBuy another caper’s token straightinto your treasury.VOTECast your caper’s vote insideanother caper’s proposal.The winner needs the most weight AND at least 1.5 / N of the total vote. A “No” win does nothing.How a caper turns a decision into an on-chain action.caper.networkPropose → vote → execute · PAYOUT / INVEST / VOTE.

v1.0.0Deepen: add action-kind detail, the no-execution option, the 1.5/N supermajority pass condition, and links to bonding-curve + the DAO proposal-lifecycle pillar.–
4 blocks added
  • Added – Text at Block 1 → Block 1

    Type Ranked-choice ballot, two or more options Action kinds TEXT · PAYOUT · INVEST · VOTE Passes at 1.5 / N supermajority of weight cast Related Voting (/wiki/governance/voting) , Execution (/wiki/governance/execution) , Proposal lifecycle (/wiki/dao/concepts/proposal-lifecycle)

  • Added – Text at Block 2

    A proposal is a ranked-choice ballot with two or more options that a caper's members vote on to decide what the treasury does. Each option is either legislative (signal-only) or executive (it carries an on-chain action the contract performs if that option wins).

  • Added – Text at Block 3

    Action kinds A caper supports four action kinds: - TEXT — legislative, no on-chain action. Pure signal: a sentiment check, a mandate, a statement of intent. - PAYOUT — transfers a chosen currency and amount from the treasury to a recipient (another caper's treasury or a raw account). - INVEST — withdraws XRD from this treasury, buys a target caper's governance token on its bonding curve (/wiki/markets/bonding-curve) , and deposits the tokens back into this treasury. - VOTE — casts a pre-committed ranked ballot on another caper's proposal, using one governance token of that target the treasury holds — letting a caper act as a member of another caper.

  • Added – Text at Block 4

    The no-execution option Every proposal carries a no-execution option that voters can rank above any executive option. If it finishes first, the proposal resolves without touching the chain — the deliberate "do nothing" outcome, always on the ballot so a proposal can be defeated rather than only redirected. Passing the vote Options are scored by ranked-choice weight (/wiki/governance/voting) , and the leading option only executes if it clears a supermajority — a 1.5 / N share of all weight cast, where N is the option count. Falling short leaves the proposal resolved with no action. For how this maps onto the wider DAO pattern of forum discussion → temperature check → formal proposal, see the DAO proposal lifecycle (/wiki/dao/concepts/proposal-lifecycle) .