librustzcash
librustzcash copied to clipboard
zcash_client_sqlite: `v_tx_outputs` describes one of two tx outputs as not from the account
My MainNet test account with UFVK:
uview1lkkp8j2cp4tww0xe89yry3jdsc7dz6ga3dklgqptragp599v96q0zrcsdpzldqlw36v7rgjtwgac806n0duduyr2x2ry4hu78vmsrr2yw9gq2kty95r6989krxarw79rg2tz8fct45d5jhr8jr4qxt7andm5q3c6tt5qry4angpkg409ptus0sxegkh4p07n6ysxfvsklt9q7fddz3nwu88qgt9s48v93j84yrals506x5tk6e0fsuekxm29sykxu0vv3a3xqlzlu7dtrhrtpe2khptgf68c7yhszjw4062uhypz6zefjhymf8u8n6lgyexpncr9749qkgwygpu7ec6refeeq3qvzkfrw7dvkym4z9ya76ts7nzdzp4zapa5pwc0wga8pqx4kgkp289zvlyhh59hq93k8pzmwl8k5sxp3k3vj6rpljrl3ntr3ch3xwwc0qzc6470nzpawl64wgpkxwtj0gfalmhh583x4l75qw2lrqw8kc0y
Birthday height: 2,224,314
txid: e1565f350459b9a048c93454e3f370bc945133ed80658ea238f73c26647ad41e block height: 2420013
Note how of the top two rows below, which belong to the same transaction, exactly one of the rows has a from_account_id
of 1 while the other is NULL, despite belonging to the same transaction:
The transaction in question effectively unshielded funds within the same account. The shielded 'change' was correctly attributed with
from_account_id
of 1, while the unshielded output was not, making it look like novel income.
Not fixing this for Zashi 1.0; manually created "send to self" transactions (i.e. not using the shield_transparent_funds
API) are not in scope.