InitialPoolWeights and TargetPoolWeights should not be []PoolAsset #131
Labels
api-breaking
Breaking changes that impact API only (not state machine).
C:x/gamm
Changes, features and bugs related to the gamm module.
genesis-breaking
post-launch
proto-breaking
Protobuf breaking changes: generally don't do this!
revisit-someday
T:code-hygiene
The types for InitialPoolWeights and for TargetPoolWeights in the SmoothWeightChangeParams are both []PoolAsset
But PoolAsset is defined as
But this doesn’t make sense because sdk.Coin includes an amount, but all we want for InitialPoolWeights and TargetPoolWeights is a denom and a weight
I think this comes down to the PoolAsset abstraction just doesn’t make sense
Why are we trying to combine the balance of a pool into the same struct as the weights of the assets? Just to save on storing the denom twice?
A pool’s balances should just be sdk.Coins, and the pool’s weights could be also sdk.Coins, but might make sense to just alias that to a new type called poolWeights (for type safety)
The text was updated successfully, but these errors were encountered: