there's a usecase missing from the balancer: it currently makes sure to never use a reserved collateral regardless of whether or not collateral is needed for transaction - which is good
however, if collateral is not explicitly reserved, it still tries to pick its own collateral to reserve and fails with NoSuitableCollateral if that isn't found
that second thing is unnecessary for non script (or similar) transactions and it blocks a pretty valid usecase
To Reproduce
Steps to reproduce the behavior:
Create user with empty wallet, say u1
Build a transaction, as u1, where u1 consumes a significant amount of ada from u2. Enough ada to cover transaction fees
Describe the bug
there's a usecase missing from the balancer: it currently makes sure to never use a reserved collateral regardless of whether or not collateral is needed for transaction - which is good however, if collateral is not explicitly reserved, it still tries to pick its own collateral to reserve and fails with NoSuitableCollateral if that isn't found that second thing is unnecessary for non script (or similar) transactions and it blocks a pretty valid usecase
To Reproduce Steps to reproduce the behavior:
Expected behavior Tx submits without error