Skip to content

Conversation

dannywillems
Copy link
Member

@dannywillems dannywillems commented Oct 14, 2025

See the transaction created by the CI: https://github.com/o1-labs/mina-rust/actions/runs/18526377463/job/52799159990?pr=1543 and https://minascan.io/devnet/tx/5JtdnDkqnGyYpwg1yhF2QjEr38mMJvErj7mgZLX5VajbB7xZ7wyn/txInfo

> ./target/release/mina wallet --help     
Wallet operations for managing accounts and sending transactions

Usage: mina wallet [OPTIONS] <COMMAND>

Commands:
  address   Get the address from an encrypted key file
  balance   Get account balance via GraphQL
  generate  Generate a new encrypted key pair
  send      Send a payment transaction
  status    Check transaction status
  help      Print this message or the help of the given subcommand(s)

Options:
      --network <NETWORK>  Select the network (devnet or mainnet) [env: MINA_NETWORK=] [default: devnet] [possible values: devnet, mainnet]
  -h, --help               Print help

We can send transactions on devnet directly from the CLI. For instance:

MINA_PRIVKEY_PASS=test ./target/release/mina wallet send --from /tmp/test-wallet --to $(cat /tmp/test-wallet.pub) --amount 1000000000 --fee 100000000 --network devnet
will create a tx on devnet of 1MINA.
Here is the output:
Checking node status...
Node is synced: SYNCED
Network verified: mina:devnet
Sender: B62qjtpVAMr7knjLxRLU887QgT7GPk3JYCg8NGdZsfMuaykAJ9C2Rem
Fetching nonce from node...
Using nonce: 5
Signing transaction...
Submitting transaction to node...

Transaction submitted successfully!
Transaction hash: 5JuLs4Dw8Rba9dTfHecncqdqS35Z5fymYyrXq1EZAG9jSiYJd8Gc
Status: Pending

You can check the transaction status with:

  mina wallet status --hash 5JuLs4Dw8Rba9dTfHecncqdqS35Z5fymYyrXq1EZAG9jSiYJd8Gc

And it gaves this transaction: https://minascan.io/devnet/tx/5JuLs4Dw8Rba9dTfHecncqdqS35Z5fymYyrXq1EZAG9jSiYJd8Gc/txInfo.
The transaction is sent through a local node (by default).
The status can be fetched using:

> ./target/release/mina wallet status --hash 5JuLs4Dw8Rba9dTfHecncqdqS35Z5fymYyrXq1EZAG9jSiYJd8Gc
Checking transaction status...
Transaction hash: 5JuLs4Dw8Rba9dTfHecncqdqS35Z5fymYyrXq1EZAG9jSiYJd8Gc

Transaction not found in blockchain, checking mempool...

✓ Transaction found in mempool!

Transaction Details:
  Hash:   5JuLs4Dw8Rba9dTfHecncqdqS35Z5fymYyrXq1EZAG9jSiYJd8Gc
  From:   B62qjtpVAMr7knjLxRLU887QgT7GPk3JYCg8NGdZsfMuaykAJ9C2Rem
  To:     B62qjtpVAMr7knjLxRLU887QgT7GPk3JYCg8NGdZsfMuaykAJ9C2Rem
  Amount: 1000000000 nanomina
  Fee:    100000000 nanomina
  Nonce:  5

Status: PENDING (waiting to be included in a block)

And we have a help command as follow:

./target/release/mina wallet send --help                                                                                            
Send a payment transaction

Usage: mina wallet send [OPTIONS] --from <FROM> --to <TO> --amount <AMOUNT> --fee <FEE> [PASSWORD]

Arguments:
  [PASSWORD]  Password to decrypt the sender key (env: MINA_PRIVKEY_PASS) [env: MINA_PRIVKEY_PASS=test] [default: ]

Options:
      --from <FROM>                Path to encrypted sender key file [env: FROM=]
      --network <NETWORK>          Select the network (devnet or mainnet) [env: MINA_NETWORK=] [default: devnet] [possible values: devnet, mainnet]
      --to <TO>                    Receiver's public key
      --amount <AMOUNT>            Amount in nanomina (1 MINA = 1,000,000,000 nanomina)
      --fee <FEE>                  Transaction fee in nanomina
      --memo <MEMO>                Optional memo (max 32 bytes) [default: ]
      --nonce <NONCE>              Transaction nonce (if not provided, will be fetched from node)
      --valid-until <VALID_UNTIL>  Slot number until which transaction is valid If not provided, defaults to maximum slot (transaction never expires)
      --fee-payer <FEE_PAYER>      Optional fee payer public key (if different from sender) If not provided, the sender will pay the fee
      --node <NODE>                Node RPC endpoint [default: http://localhost:3000]
  -h, --help                       Print help

Copy link

github-actions bot commented Oct 14, 2025

✓ Code Reference Verification Passed

All code references in the documentation have been verified successfully!

Total references checked: 1
Valid references: 1

The documentation is in sync with the codebase on the develop branch.

@dannywillems dannywillems force-pushed the dw/continue-doc-zkapps branch from c3c2c67 to f0cf40e Compare October 15, 2025 07:56
@dannywillems dannywillems marked this pull request as draft October 15, 2025 09:24
@dannywillems dannywillems changed the base branch from dw/continue-doc-zkapps to develop October 15, 2025 09:33
@dannywillems dannywillems moved this to In Progress in Rust node Oct 15, 2025
Copy link

github-actions bot commented Oct 15, 2025

OCaml Reference Validation Results

Repository: https://github.com/MinaProtocol/mina.git
Branch: compatible
Status: ✓ Validation passed

Click to see full validation output
Checking OCaml references against https://github.com/MinaProtocol/mina.git (branch: compatible)
Fetching current commit from compatible...
Current OCaml commit: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc

Validating references...
========================
✓ VALID: ledger/src/account/account.rs -> src/lib/mina_base/account.ml L:201-224
  ⚠ STALE COMMIT: fc6be4c58091c761f827c858229c2edf9519e941 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/for_tests.rs -> src/lib/transaction_logic/mina_transaction_logic.ml L:2285-2285
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/for_tests.rs -> src/lib/transaction_logic/mina_transaction_logic.ml L:2351-2356
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/for_tests.rs -> src/lib/transaction_logic/mina_transaction_logic.ml L:2407
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/mod.rs -> src/lib/mina_base/transaction_status.ml L:9-51
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/mod.rs -> src/lib/mina_base/transaction_status.ml L:452-454
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/mod.rs -> src/lib/mina_base/with_status.ml L:6-10
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/mod.rs -> src/lib/mina_base/fee_transfer.ml L:76-80
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/mod.rs -> src/lib/mina_base/fee_transfer.ml L:68-69
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/mod.rs -> src/lib/mina_base/coinbase.ml L:17-21
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/mod.rs -> src/lib/transaction/transaction.ml L:8-11
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/signed_command.rs -> src/lib/mina_base/signed_command_payload.ml L:34-48
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/signed_command.rs -> src/lib/mina_base/stake_delegation.ml L:11-13
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/signed_command.rs -> src/lib/mina_base/signed_command_payload.ml L:179-181
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/signed_command.rs -> src/lib/mina_base/signed_command_payload.ml L:239-243
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)
✓ VALID: ledger/src/scan_state/transaction_logic/signed_command.rs -> src/lib/mina_base/signed_command_payload.ml L:352-362
  ⚠ STALE COMMIT: 5da42ccd72e791f164d4d200cf1ce300262873b3 (current: 6f3f3edeeb1c8b1d1a4cab61fb697b3502d918fc)

Summary
=======
Total references found: 16
Valid references: 16
Invalid references: 0
Stale commits: 16

⚠ Warning: 16 reference(s) have stale commits
Run with --update to update them automatically

@dannywillems dannywillems force-pushed the dw/cli-tx-2 branch 2 times, most recently from 54b80b4 to fca4703 Compare October 15, 2025 10:07
@dannywillems dannywillems requested a review from 0xMimir October 15, 2025 13:08
@dannywillems dannywillems self-assigned this Oct 15, 2025
@dannywillems dannywillems marked this pull request as ready for review October 15, 2025 13:09
Copy link
Contributor

@0xMimir 0xMimir left a comment

Choose a reason for hiding this comment

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

LGTM, except for unclosed ( in CHANGELOG.md

@dannywillems
Copy link
Member Author

The CI was green before, and I only changed the CHANGELOG. Force merging without waiting for CI.

@dannywillems dannywillems merged commit d4c0703 into develop Oct 15, 2025
45 checks passed
@dannywillems dannywillems deleted the dw/cli-tx-2 branch October 16, 2025 11:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

2 participants