Skip to content

Conversation

@Einliterflasche
Copy link

@Einliterflasche Einliterflasche commented Oct 15, 2025

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.

  • monero-sys (FFI and API):
    • Add patch eigenwallet_0003_pending_transaction_tx_keys to expose PendingTransaction::txKeys(...) returning (txid, address, key) tuples.
    • Extend C++/Rust bridge: new TxKey struct, pendingTransactionTxKeys(...) now returns rich keys; remove single walletGetTxKey path.
    • Change TxReceipt to hold tx_keys: HashMap<monero::Address, monero::PrivateKey> instead of single tx_key.
    • Update transaction flow: PendingTransaction::validate_single_txid(...) maps output addresses to keys; publish_pending_transaction(...) accepts output_addresses and returns mapped keys.
    • Expose WalletHandle::address(...), make check_tx_status public; add helpers and minor logging/robustness tweaks.
    • Add stagenet/regtest tests for transaction keys (tests/transaction_keys.rs).
  • swap:
    • Use receipt.tx_keys to select the key for the Monero lock address; build destinations with optional developer tip; adjust tests to pass tip as (ratio, use_subaddress).
    • New test happy_path_alice_developer_tip_subaddress.
  • monero-harness:
    • Re-export Cli; add constructors with configurable background sync; expose check_tx_key and address helpers.
  • Workspace/CI:
    • Add new crate monero-tests with integration test transfers.rs (tx proofs end-to-end); include in workspace.
    • CI: run new docker tests happy_path_alice_developer_tip_subaddress and monero-tests/transactions.
    • justfile: add undo-monero-changes helper.

Written by Cursor Bugbot for commit 51b6acf. This will update automatically on new commits. Configure here.

cursor[bot]

This comment was marked as outdated.

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.
@Einliterflasche
Copy link
Author

bugbot run

@cursor
Copy link

cursor bot commented Oct 24, 2025

Skipping Bugbot: Bugbot is disabled for this repository

@binarybaron
Copy link

bugbot run

@Einliterflasche
Copy link
Author

Einliterflasche commented Oct 24, 2025

happy_path_alice_developer_tip_subaddress passes now. I think we can merge after finishing the other tests

cursor[bot]

This comment was marked as outdated.

@binarybaron
Copy link

whats blocking this from being merged?

Maybe we can get a Monero developer to review our C++ patch?

@binarybaron
Copy link

@SNeedlewoods Would you be interested in looking over our C++ patch here?

@binarybaron
Copy link

@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.

Copy link

@binarybaron binarybaron left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

comments

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

Successfully merging this pull request may close these issues.

5 participants