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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

does not receive transparent transactions on zingo darkside test #455

Open
fluidvanadium opened this issue Sep 12, 2023 · 3 comments
Open
Labels
bug Something isn't working

Comments

@fluidvanadium
Copy link

What is the bug?
heres what ive got
https://github.com/fluidvanadium/zingolib/tree/darkside_foray

running cargo test --package zingo-cli --test integration_tests --features darkside_tests -- sync_transparent --nocapture
results in a test failure because no transparent transaction is picked up by the reciever.

sending to "unified" or "sapling" instead of "transparent" comes through. transparent also works in production.

Additional context
lightwalletd version: v0.4.16-7-g8003d7f
from commit: 8003d7f

"Ubuntu"="20.04.6 LTS (Focal Fossa)"

@fluidvanadium fluidvanadium added the bug Something isn't working label Sep 12, 2023
@AloeareV
Copy link

This is because zingo relies on the RPC gettaddresstxids for detecting transparent outputs...which isn't implemented on the darkside server, see

case "getaddresstxids":
// Not required for minimal reorg testing.
return nil, errors.New("not implemented yet")

@pacu
Copy link
Contributor

pacu commented Nov 1, 2023

@AloeareV

We could implement a darkside RPC that actually sets an in memory list of TxIDs for the test to set up, and then this RPC would return that info, would that work? What other things would be needed?

@LarryRuane
Copy link
Collaborator

@pacu - what you suggest is probably the best way. I think the interface to this darkside test-only gRPC would be a list of ("hex", integer) pairs (32-byte hex string (64 characters), and a height). These would be saved internally and returned by (production) GetTaddressTxids gRPC.

As Pacu asked, what else would be needed? A test-only method to clear the list? The ability to clear individual items? We can do either or both, or whatever you prefer.

I did look briefly into trying to "really" implement this in the darkside server (i.e., return results based on the current fake blockchain), but it would be a lot of work. The zcashd code is doing a lot of heavy lifting, and since in darkside mode there is no zcashd, we would have to replicate a lot of logic. So I prefer Pacu's suggestion; it's pretty easy to implement. But, @fluidvanadium, let me know if that works for you.

@fluidvanadium fluidvanadium changed the title zingo darkside test does not receive transparent transactions does not receive transparent transactions on zingo darkside test May 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants