svsp maintains 100% capital utilization (no undelegated float), mints tokens immediately on deposit, and charges no fees. this works great for stake deposits, but it has blocked us from accepting sol deposits because of economic attacks related to the immediate mint. ive contemplated various rube goldberg machines to work around this via delayed stake deposits that "feel" like sol deposits (default deposit accounts were one attempt to support such a flow) but this is confusing for devs, let alone users
im one year older and one year wiser now and a lot less dogmatic about the no fees thing. stake deposit will always be free, but sol deposit is a convenience, its fine to charge 5-10bps (edit: too generous) for the service (by underminting tokens thus giving the fee to the pool as a whole)
we do not want to have a reserve account and will never allow sol withdrawal. the design im envisioning is... (edit: deleted because obsolete, 90% of the described functionality landed in ReplenishPool. see 3/31 comment for latest)
also probably deprecate default deposit accounts, the point of that feature was to allow "one click to stake" following a similar sweep-and-delegate flow, just on an individual user basis. the idea was users who regularly add stake to the same validator would get the tokens for their prior epoch delegations at the same time they make a new delegation. but this requires wallets/dapps to implement the flow, and based on conversations since v1.0 was finished, i dont think anyone even really understands it. getting rid of it once we have a superior alternative that requires no outside support makes sense (edit: this has been done and they can be removed anytime)
overall this sounds very similar to multistake, and if we ever do do multistake, it should be easy to ditch the onramp account and swap backends without breaking the instruction interfaces
svsp maintains 100% capital utilization (no undelegated float), mints tokens immediately on deposit, and charges no fees. this works great for stake deposits, but it has blocked us from accepting sol deposits because of economic attacks related to the immediate mint. ive contemplated various rube goldberg machines to work around this via delayed stake deposits that "feel" like sol deposits (default deposit accounts were one attempt to support such a flow) but this is confusing for devs, let alone users
im one year older and one year wiser now and a lot less dogmatic about the no fees thing. stake deposit will always be free, but sol deposit is a convenience, its fine to charge
5-10bps(edit: too generous) for the service (by underminting tokens thus giving the fee to the pool as a whole)we do not want to have a reserve account and will never allow sol withdrawal.
the design im envisioning is...(edit: deleted because obsolete, 90% of the described functionality landed inReplenishPool. see 3/31 comment for latest)also probably deprecate default deposit accounts, the point of that feature was to allow "one click to stake" following a similar sweep-and-delegate flow, just on an individual user basis. the idea was users who regularly add stake to the same validator would get the tokens for their prior epoch delegations at the same time they make a new delegation. but this requires wallets/dapps to implement the flow, and based on conversations since v1.0 was finished, i dont think anyone even really understands it. getting rid of it once we have a superior alternative that requires no outside support makes sense(edit: this has been done and they can be removed anytime)overall this sounds very similar to multistake, and if we ever do do multistake, it should be easy to ditch the onramp account and swap backends without breaking the instruction interfaces