Replies: 1 comment 3 replies
-
I personally find that multi-asset support adds another layer of complexity that makes thinking about the code slightly more challenging. When I talk or think about state channels I'm generally ignoring the idea of multi assets. Also most of our tests assume the use a single asset, meaning that a lot of logic for multi-asset support is not fully tested. If we can enforce single assets without too much effort and don't think multi-asset support is important for the initial version then I'd be in favour of it! We could also go the other way and lean into multi-asset support by updating our test cases to use multi-asset outcomes. That would prevent us from having to debug multi-asset code we wrote today later on when we're serious about multi-asset support. |
Beta Was this translation helpful? Give feedback.
-
We currently support a mixture of assets. The format currently allows for different orderings and even repeated entries (which doesn't really make sense).
One suggestion is to require that outcomes have length one and are for the native asset. This would make a bunch of code easier to write, and we would only lose a small number of use-cases.
Relevant code:
go-nitro/channel/state/outcome/exit.go
Lines 155 to 171 in 7412bc6
Beta Was this translation helpful? Give feedback.
All reactions