-
-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bugs related to retrying an aborted transfer #287
Comments
Should we be considering this to be a bug? The idea I always had is that all alternative bundles should always be accepted such that if a re-org happens lately, the funds are not lost. So, what makes a valid consignment is the fact that it contains at least one valid and mined bundle - but it can contain more and that should be ok.
This seems to be an issue and caused by the fact that we consider seals assigned to |
It could be confusing but I agree in general this makes sense.
If you mean how the |
Intermediary report. My investigation shows that with pay-to-witness a two distinct transitions and bundles are created, since a different blindings are generated for the assignments. This results in a situation when instead of 1 bundle and 2 witness transactions (which work well) we have 2 contradicting bundles and witness transactions. This doesn't happen with pay-to-utxo, since a blinding is fixed and is provided by the beneficiary in a secret seal. In this case we have just 1 bundle (with 2 different witness transactions) and everything works well. Investigating further why 2 alternative bundles doesn't work as expected |
Ok, now the real bug is the fact that in I will try to add additional parameter to the |
This was possible and quite simple. The fix is in #288 |
While using the RGB sandbox @nicbus discovered some bugs related to retrying an aborted transfer.
To simplify and minimize the scope of the debug we tried to reproduce the same bugs in rgb-tests: RGB-WG/rgb-tests#23
The PR introduces 2 new tests that recreate a very similar scenario, where the only relevant change is the call to
update_witnesses()
, and they show different bugs. In detail:same_transfer_twice_no_update_witnesses
:same_transfer_twice_update_witnesses
:For context, the bugs happen only:
same_transfer_twice_no_update_witnesses
) if we callresolver.add_terminals
The text was updated successfully, but these errors were encountered: