Skip to content
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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Batched transactions lack information in the history and detail view #1193

Open
Giszmo opened this issue Dec 4, 2023 · 6 comments
Open

Batched transactions lack information in the history and detail view #1193

Giszmo opened this issue Dec 4, 2023 · 6 comments

Comments

@Giszmo
Copy link

Giszmo commented Dec 4, 2023

I sent to Alice, Bob and Carol and now in the history, the transaction is listed as "Label: Alice". When I hit the 馃斀
I see:

Alice, Alice (input), Alice (output).

When I hit the 馃攳 i see a graphic with Bob (change) -> Pay to external (x3) ... without names

Under details I neither see what was paid to Alice, Bob and Carol respectively.

This is after doing a transaction before the transaction confirmed.

During preparation of the transaction, the names were entered correctly and I think I saw the graphic with correct names at some point, too.

@craigraw
Copy link
Collaborator

craigraw commented Dec 5, 2023

I think you are using an older version of Sparrow, since recent versions include the labels from all the payments:

Screenshot 2023-12-05 at 11 19 42

That said, what you are describing is expected behaviour. Sparrow stores (and labels) transactions and transaction outputs connected to the wallet, not external outputs that are connected to another wallet. It's possible to temporarily store in RAM a label connected to an external output to assist the user when preparing a transaction, but otherwise not. Simply, there is no item in the database on which to store such a label.

@Giszmo
Copy link
Author

Giszmo commented Dec 5, 2023

Wait, if I pay Alice, Bob and Carol and go through the effort of tagging them, not the least because it is required by this client, Sparrow will then not let me know how much I sent to whom?? That is a huge disincentive to using batching or Sparrow.

Furthermore as a privacy centered wallet, Sparrow should keep record of the external outputs and warn the user of address reuse but also propose past labels when address reuse occurs.

@craigraw
Copy link
Collaborator

craigraw commented Dec 5, 2023

Furthermore as a privacy centered wallet, Sparrow should keep record of the external outputs and warn the user of address reuse but also propose past labels when address reuse occurs.

There are real costs to this in storage and complexity, and it's also not clear where it should begin and end. This is not a chainanalysis tool. Proposing past labels is a nice to have, but it's unclear if the cost is really worth it. It may simply be unexpected and therefore confusing.

It's also not clear why address reuse should be the concern of the sender, unless it's a copy paste error in constructing a transaction (which Sparrow does warn against). Like it or not there are plenty of static addresses, and warning users against using them may cause more issues than its worth.

Sparrow is a Bitcoin wallet. It does not purport to be an accounting tool. I'll consider this feature request, but I am wary of walking too far down that path.

@Giszmo
Copy link
Author

Giszmo commented Dec 5, 2023

I updated to 1.8.1 and the transaction label remains "Alice" with no mention of "Bob" and "Carol". The tx creation looks as before.

I don't want to beat a dead horse here but the current UI suggests that transactions are labeled, raising certain expectations with the users. Maybe the input should be called "who knows this address?" for each output in the batch, compiled into a label "Who knows I did this transaction?" and not be shown in the transaction history at all. After all, once the UTXO is spent, why would you care to see these labels on old transactions or on new ones for that matter ... it's not really helpful for anything but accounting. Keep track of labels on the UTXOs, only.

Also while I see how a privacy focused wallet could see the labels that I wish Sparrow had as helping with chain analysis - if Bob came knocking to ask about some of my past transactions, I will have detailed information while a wallet that only shows a balance would give me more freedom to claim ignorance - but then Sparrow shows already way too much information. And you did not say "chain analysis" but "Chainalysis" which as a company to my knowledge works with mutual data sharing agreements which of course would be totally out of place for Sparrow.

@BogiMonster
Copy link

BogiMonster commented Dec 13, 2023

How about a mode that will output a csv file with more details about the transaction that is created with every transaction. Maybe like [timestamp][txid].csv. That way it鈥檚 easier to import into an accounting software? Created upon clicking send then updated with the blockhash upon confirmation.

@craigraw
Copy link
Collaborator

I updated to 1.8.1 and the transaction label remains "Alice" with no mention of "Bob" and "Carol".

Existing transactions will keep their existing labels, but any new batched transactions will contain all the payment labels as in the screenshot above.

Keep track of labels on the UTXOs, only.

Indeed, this is what Sparrow does - in the example screenshot above, the label on the UTXO will be Carol, Bob, Alice (change) - indicating who is linked to this output.

And you did not say "chain analysis" but "Chainalysis"

My mistake, I meant the former.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants