-
Notifications
You must be signed in to change notification settings - Fork 28
fix(monero-sys): Correctly handle multiple transaction keys #629
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
base: master
Are you sure you want to change the base?
Conversation
…the transaction id for each tx key as well
…UnstoppableSwap/core into fix/monero-sys-multiple-tx-keys
This is annoying because it's increasing the diff size when I really just want to extract the changes into a patch.
…tput. Caviat: we currently skip all outputs that belong to the primary address. This means we won't have a tx key when sending to our own main address or for change outputs. Transactions which try anyway will fail in the rust verification step.
…our own main address
|
bugbot run |
|
Skipping Bugbot: Bugbot is disabled for this repository |
|
bugbot run |
|
|
…n fails (instead of ignoring it)
|
whats blocking this from being merged? Maybe we can get a Monero developer to review our C++ patch? |
|
@SNeedlewoods Would you be interested in looking over our C++ patch here? |
|
@jeffro256 thanks for the review! have you had a chance to look at the monero-sys/patches/eigenwallet_0003_pending_transaction_tx_keys.patch C++ patch? This is what we are most unsure about and where we are afraid to make mistakes. |
binarybaron
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
comments
Note
Add per-output Monero tx key extraction (incl. subaddresses), expose via FFI, update swap to use address-key map, and add new tests/CI entries.
eigenwallet_0003_pending_transaction_tx_keysto exposePendingTransaction::txKeys(...)returning(txid, address, key)tuples.TxKeystruct,pendingTransactionTxKeys(...)now returns rich keys; remove singlewalletGetTxKeypath.TxReceiptto holdtx_keys: HashMap<monero::Address, monero::PrivateKey>instead of singletx_key.PendingTransaction::validate_single_txid(...)maps output addresses to keys;publish_pending_transaction(...)acceptsoutput_addressesand returns mapped keys.WalletHandle::address(...), makecheck_tx_statuspublic; add helpers and minor logging/robustness tweaks.tests/transaction_keys.rs).receipt.tx_keysto select the key for the Monero lock address; build destinations with optional developer tip; adjust tests to pass tip as(ratio, use_subaddress).happy_path_alice_developer_tip_subaddress.Cli; add constructors with configurable background sync; exposecheck_tx_keyand address helpers.monero-testswith integration testtransfers.rs(tx proofs end-to-end); include in workspace.happy_path_alice_developer_tip_subaddressandmonero-tests/transactions.undo-monero-changeshelper.Written by Cursor Bugbot for commit 51b6acf. This will update automatically on new commits. Configure here.