Skip to content

feat(monero): add Monero stagenet to Stack Wallet and Stack Duo - #1363

Draft
sneurlax wants to merge 8 commits into
stagingfrom
feat/stagenet
Draft

sneurlax wants to merge 8 commits into
stagingfrom
feat/stagenet

Conversation

@sneurlax

@sneurlax sneurlax commented May 27, 2026 •

Copy link
Copy Markdown
Member

Refresh review (2026-11-10)

Refresh review bounds untrusted Monero address-tag input before decoding and preserves the latest restore flow requiring a block height.

Checks: Monero stagenet address and restore tests (7 passed). Analysis reported three unused-field warnings in the Monero wallet intermediate path; no errors.

@codecov

codecov Bot commented May 28, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 56.37584% with 65 lines in your changes missing coverage. Please review.
✅ Project coverage is 14.22%. Comparing base (9ce80be) to head (5ec7333).
⚠️ Report is 1 commits behind head on staging.

Files with missing lines Patch % Lines
...iew/restore_options_view/restore_options_view.dart 30.66% 52 Missing ⚠️
...wallets/wallet/intermediate/lib_monero_wallet.dart 0.00% 8 Missing ⚠️
lib/utilities/cryptonote_address.dart 95.34% 2 Missing ⚠️
lib/wallets/wallet/impl/monero_wallet.dart 0.00% 2 Missing ⚠️
lib/wallets/crypto_currency/coins/monero.dart 94.44% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           staging    #1363      +/-   ##
===========================================
+ Coverage    13.92%   14.22%   +0.30%     
===========================================
  Files         1139     1140       +1     
  Lines       114707   114797      +90     
===========================================
+ Hits         15976    16335     +359     
+ Misses       98731    98462     -269     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@sneurlax

Copy link
Copy Markdown
Member Author

Converting to draft because I have too many open PRs ready--will take another review pass over this before re-readying it

Adds Monero(CryptoCurrencyNetwork.stage) as sXMR, threads an explicit
nettype through the cs_monero interface so create/load/restore cannot
silently fall back to mainnet, and counts stage as a test network.

Stagenet addresses are validated in Dart. monero_c's addressValid()
takes an int nettype, which binds to wallet2's deprecated
addressValid(str, bool testnet) overload, so no argument passed through
FFI can select stagenet: any non zero value validates as testnet.

Also gives Xelis(stage) its stagenet node; that switch arm duplicated
the testnet one and was unreachable, so defaultNode() threw.
@sneurlax

sneurlax commented Oct 7, 2026

Copy link
Copy Markdown
Member Author

drop the xelis.dart test->stage change: see 5348187 from #1437

Adds Monero(CryptoCurrencyNetwork.stage) as sXMR, threads an explicit
nettype through the cs_monero interface so create/load/restore cannot
silently fall back to mainnet, and counts stage as a test network.

Stagenet addresses are validated in Dart. monero_c's addressValid()
takes an int nettype, which binds to wallet2's deprecated
addressValid(str, bool testnet) overload, so no argument passed through
FFI can select stagenet: any non zero value validates as testnet.
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.

1 participant