[EGP] Vending Machine Subcommittee

Vending Machine Subcomittee

Summary:

This proposal suggests creating a subcommittee of Trustees to manage a “Vending Machine” contract on Optimism. While all funds in the “Vending Machine” are owned by the Protocol, the Subcommittee would be responsible for setting the prices on the Vending Machine. This proposal also suggests funding the Vending Machine with 4,000,000 ECO.

Specifics:

The vending machine allows people to buy ECO directly from the contract using USDC. This is facilitated by a smart contract that acts very similar to a traditional market maker. The contract offers two options – they can buy ECO from the contract at the “Buy Price” or sell ECO to the contract at the “Sell Price”. These prices are set by a “Set Prices” function which can only be called by the “Price Setter” of the contract. The buy and sell functions can also be turned off.

I will colloquially refer to the contract as “the Vending Machine”. Some other background information about the contract:

  • The contract is deployed to Optimism already, and is funded from a generous grant from the Eco Association.
  • It was deployed with a “Buy Price” of $0.0225 USDC / ECO, which is about 50% higher than the price on Ethereum Mainnet.
  • It already has about $15.9k USDC balance from the last few days from ECO purchases.
  • The Vending Machine has two roles, a “Price Setter” and a “ContractOwner”. The “Price Setter” can set prices, and the “ContractOwner” decides the “Price Setter” and can move the funds out of the contract.
  • The sell function is turned off, so users can’t sell ECO back to the contract right now. This allows the contract (and therefore the Protocol) to accumulate USDC reserves.
  • As of launch, there is no “Price Setter” and the “ContractOwner” is set to the Root Policy address.

This post proposes that the “Price Setter” role on the contract be bound to a subcommittee of Trustees (4-6). This subcommittee would set the Vending Machine price on a regular basis. I think this is a pretty interesting monetary lever to add to the protocol, for the following reasons:

  1. It allows the Protocol to accumulate USDC reserves (basically FX reserves), which can be used in the future for monetary policy.

  2. With a sufficient ECO and USDC balance in the contract, it allows the subcommittee to stabilize the ECO price around a range. The “Buy Price” and “Sell Price” create buy/sell walls on the Eco price. In this way, it acts like a peg-stability-module.

  3. It is expensive to bridge ECO from Optimism to Ethereum (and vice versa). Therefore, it will be more economical for most small purchases to just use the vending machine, even at a 50% price premium (or large price discount). In the absence of other market makers and assuming the sell function is turned on, this subcommittee can impose exit taxes on small balances, which incentivize spending of ECO over selling.

I anticipate at first, the subcommittee will keep the Buy price at a pretty significant premium to mainnet Ethereum, and keep the sell function off so that the protocol can accumulate more USDC. This should mean that prices are set occasionally; I do not anticipate this subcommittee to readjust prices multiple times a day. The subcommittee will vote in a special discord channel, and submit transactions to set prices with a multisig wallet.

In order to bootstrap liquidity in the contract, I also propose that the contract funds the vending machine with 4,000,000 ECO.

I would love feedback and discussion on this proposal!

Update:

This official proposal will bind the “Price Setter” role on the contract to a subcommittee of Trustees. This subcommittee will set the Vending Machine price on a regular basis.

  • The multisig address the “Price Setter” will be bound to:
    • oeth : 0x4b5c40EfdB69093130A0E49552F0fbBa33649952
  • The seven Trustee Subcommittee members (see this post for more details):
    • ML, dmititup, Pete Dattels, MikeWeb, Bob Amano of Pure Macro, Subspace, Chris Berg
    • The Trustees on this committee are joining the subcommittee as part of their ongoing responsibilities as Trustees.
4 Likes

I really like this idea, it is a powerful monetary lever that will facilitate the development and growth of the Beam Wallet ECOsystem, this lever will have a very strong impact on $ECO as a currency.
I totally agree that the sell function should be disabled for now, it is important to encourage use of the Beam Wallet and focus on providing real use cases instead of being a simple off-ramp from the ECOsystem.
20,000,000 $ECO is a good starting point, we can adjust based on demand and popularity of the feature.
Powered by Beam Dashboard data (RFP-3), this lever will be a very important monetary tool and I look forward to seeing this proposal implemented as soon as possible.

2 Likes

love the idea as well!

think it would be cool over time to use some of the accrued funds to pay for public goods. maybe something we could work with PGN on?

wondering if using a tool like tally.xyz might be a better way for the subcommittee to vote and enact policy onchain or even offchain. tally is a great tool that allows you to coordinate and vote.

they have a “group” feature that allows you to coordinate offchain and eventually move things onchain if it seems right.

there’s also a “create proposal” tool that makes creating proposals quite easy. I think it would serve this initiative well

3 Likes

Full support for this EGP !!

2 Likes

May I ask how the selection of these 4-6 Trustees for this sub-committee will be handled?
Will there be a rotation, will it be possible to occasionally find out about the discussions they are having?

I’m also a little concerned about disabling the sell eco function. This is not a new thing, we see L2s like Base and a number of other new L2s doing similar restrictions on withdrawals in their early days, but people still get the question always “how long will this last?”… So the question is, what are the goals, which once reached – this function will be enabled? And is its activation regulated only by the Trustee sub-committee or something else?

Beside that, congratulations on the launch! Great start, this is a very interesting proposal, it will add another tool to the protocol to influence monetary policy.

1 Like

Support !
I hope it can be implemented as soon as possible.

For now, a group of 6-7 trustees are volunteering first, then being proposed as part of the EGP. Given that the next Trustee election is at the end of the year, this will be revisited then.

I’m also a little concerned about disabling the sell eco function. This is not a new thing, we see L2s like Base and a number of other new L2s doing similar restrictions on withdrawals in their early days, but people still get the question always “how long will this last?”… So the question is, what are the goals, which once reached – this function will be enabled? And is its activation regulated only by the Trustee sub-committee or something else?

It is totally up to the subcommittee if sells are off or on. They were off by default at first (because the vending machine had no USDC). You can still sell ECO on the L1 if the sell function is off; this is a convenience for those on the L2 who don’t want to deal with bridging back. :slight_smile:

Update to the proposal. The proposal is going to be deployed with 4,000,000 ECO instead of 20,000,000. The update was made to minimize potential funds loss while the vending machine is battle tested.

2 Likes

Sounds like a plan to me

2 Likes