In this dashboard, we do some detective work 🕵️♂️ to find the Terra Community Treasury Wallet. We also look at the activity of this wallet to understand how the funds are being used.
Let's first understand what the Community Treasury Wallet
is. The Community Pool
(or the Community Treasury
) on Terra is defined in the Distribution
module. The Community Pool
contains the funds under the control of the on-chain governance on Terra. The funds are meant to be used to help bootstrap projects on Terra and lead to the overall growth of the Terra economy.
Proposals can be made by Terra addresses in order to propose to fund or spend the Community Pool
. Despite being part of a module (that is baked into the Go software for Terra) the Community Pool
has an address. We can see this in the code on this link: https://github.com/terra-money/core/blob/0e568d01ccfc264693f79ad35c091bed50c26126/contrib/updates/columbus-2-to-columbus-3.py#L159. The relevant bit of code to look at here is:
communityPoolCoins = []
for coin in genesis['app_state']['distr']['fee_pool']['community_pool']:
communityPoolCoins.append({
'denom': coin['denom'],
'amount': str(int(float(coin['amount'])))
})
newAccounts.append(
create_module_account(
'distribution',
'terra1jv65s3grqf6v6jl3dp4t6c9t9rk99cd8pm7utl',
communityPoolCoins,
['basic']
)
)
As we can see the distribution module has been given the address terra1jv65s3grqf6v6jl3dp4t6c9t9rk99cd8pm7utl
. This becomes our prime candidate for the address for the Community Pool
. Note: This address will be used for all distribution relative activities and not just for the Community Pool
so it will also be responsible for giving out rewards to validators and delegators on Terra.
Now, let's try to go about different ways to ascertain whether this address terra1jv65s3grqf6v6jl3dp4t6c9t9rk99cd8pm7utl
that has over 74 million LUNA (https://finder.terra.money/columbus-4/address/terra1jv65s3grqf6v6jl3dp4t6c9t9rk99cd8pm7utl) is actually the Community Pool
.
The message type, MsgFundCommunityPool
is used to fund the Community Pool
. Let's take a look at whether this message type has even been used before:
These two transactions go to the same account, terra1jv65s3grqf6v6jl3dp4t6c9t9rk99cd8pm7utl
which makes it more likely that our initial postulate was correct.
The funding amounts are a little small (and we only have 2 data points) so we can't claim with 100% certainty that this account is the Community Pool
so we'll keep digging (besides it's fun to keep digging 😉) to provide more certainty.
Let's now take a look at the balance of terra1jv65s3grqf6v6jl3dp4t6c9t9rk99cd8pm7utl
along with the amount of LUNA
burnt (all of the LUNA
is not required to be burnt rather some is sent to the Community Pool
, but the normal terminology amongst Terra circles still seems to be burning of LUNA) to produce Terra stablecoins to see if we can find any correlations:
(Interactive Link: https://velocity-app.flipsidecrypto.com/velocity/visuals/fdf38be4-9c58-47a4-86d5-e3d8bc6ad667/3e579e23-dcdb-4342-ad94-2ffc8d9d7f80)
(Green → community pool balance, Blue → LUNA burnt daily)
A couple of things to note here:
Community Pool
each week was mentioned by Do in this proposal: https://agora.terra.money/t/proposal-to-burn-all-seigniorage/438 where he suggests burning all seignorage fees instead of routing a percentage to the Community Pool
.Community Pool
Both of these facts strengthen our argument that the account terra1jv65s3grqf6v6jl3dp4t6c9t9rk99cd8pm7utl
is in fact the Terra Community Pool
.
One more thing to note is that SmartStake
mentioned that as of Feb 25th 2021 (link: https://agora.terra.money/t/adjusting-terra-seigniorage-distribution/410/12): 20% of all LUNA seignorage was sent to the Community Pool
, 60% was burnt and the final 20% routed to stakers. If we just count the total LUNA seignorage till the 23rd of Feb we see the following: