-
-
Notifications
You must be signed in to change notification settings - Fork 43
Transaction output duplicated by 'fungible transfer' #127
Comments
I have done some investigation, and it seems that the root of this issue lies in the The problem, for what I could see, is that the transaction output ( The first place where the The second place where the There, one can notice that the transaction fee is used in the calculation of the At some point in the processing of the Then, in the processing of the |
Thank you very much for finding this issue and such a thorough investigation on it. @rajarshimaitra can you help me looking into possible fixes on it? NB: We must take into an account that there are one-to-many relations between UPD: from my preliminary analysis the problem can be fixed by |
Had a look and I have a few questions.
This will then make
This feels bandaid-y. Instead, how about we define I will make the PR. looking for Approach ACK. |
The problem here is the fact that at the level of transaction we do not have an access to the fee information. According to LNPBP-3 fee and protocol factor are just two additive numbers, which are modulo divided number of outputs; so |
Understood. Going with the quick fix for now. So fix is as below:
Sounds good? It will probably take some edit in the demo doc as the project has been refactored heavily. Also that |
10.02.2021 Agenda: RGB QA Issues from https://github.com/orgs/rgb-org/projects/11: 1. Properly handle result from 'validate' request to Stash daemon - RGB-WG/rgb-node#132 2. Asset state transition node ID mutability - https://github.com/rgb-org/rgb-node/issues/133 - RGB-WG/rgb-node#131 - Asset transfer validation is ineffective: RGB-WG/rgb-node#130 3. Question about fungible asset known allocations semantics - RGB-WG/rgb-node#134 4. Transfer change allocation not being registered - RGB-WG/rgb-node#129 5. Transaction output duplicated by 'fungible transfer' - RGB-WG/rgb-node#127
Solved with RGB-WG/rgb-core#4 |
I am using version 0.2.1 of RGB node to run a few basic tests to try and familiarize myself with the work that you guys are doing.
I was using the demo in
/doc/demo-0.1
as a guide, and, after issuing thefungible transfer
command, I noticed that the returned witness PSBT had what seemed to be a duplicate output: instead of two outputs paying 3.99789343 and 0.00030000 bitcoins respectively (as in the original PSBT passed to thefungible transfer
command), it had two outputs paying the exact same amount of 3.99789343 bitcoins.Here is the
fungible transfer
command that was issued:rgb-cli fungible transfer 'rgb20:utxob1lr9rp8ygrvmq420yra6tsk6jyjkvvn5yry72dnz0wkvxl0mqe8vqu0u09n?asset=rgb1hq63xvdccglhn4mrqjvzx9gwgxfa35allc36dcz2zxcnxt75w3wqdqa6qd&amount=55' /var/lib/rgb/transf_tx.psbt /var/lib/rgb/consignment.rgb /var/lib/rgb/witness.psbt -i 536a2a6694490d1586a6bcf146e9a27a57b2665ee61fb18f9d7564f791361af5:0 -a 4945@215176c262d906f9e30c14692bdf4a9f284f6ed02ca51bca4f07592eb6301870:0
This is the contents of the
transfer_tx.psbt
file (base64 encoded):And here is its decoded (
bitcoin-cli decodepsbt
) contents:This is the contents of the resulting witness PSBT (base64 encoded):
And here is its decoded (
bitcoin-cli decodepsbt
) contents:The text was updated successfully, but these errors were encountered: