Draft
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #194 +/- ##
==========================================
- Coverage 72.41% 72.08% -0.34%
==========================================
Files 144 179 +35
Lines 5598 7849 +2251
==========================================
+ Hits 4054 5658 +1604
- Misses 1544 2191 +647 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Contributor
Author
|
As a user I want to donate ecash without fees |
…et' of github.com:relaystr/ndk into cashu-wallet
…ding/decoding Co-authored-by: 1-leo <58687994+1-leo@users.noreply.github.com>
Co-authored-by: 1-leo <58687994+1-leo@users.noreply.github.com>
Co-authored-by: 1-leo <58687994+1-leo@users.noreply.github.com>
Co-authored-by: 1-leo <58687994+1-leo@users.noreply.github.com>
…odes Implement NUT-16 UR encoding/decoding for animated QR codes
- Added restore endpoint to CashuRepo interface - Implemented restore endpoint in CashuRepoImpl - Created cashu_restore.dart with full restore logic - Added restore method to Cashu class - Created comprehensive tests for restore functionality - Tests verify deterministic secret generation Co-authored-by: 1-leo <58687994+1-leo@users.noreply.github.com>
Co-authored-by: 1-leo <58687994+1-leo@users.noreply.github.com>
- Created comprehensive test that funds wallet1 and restores to wallet2 - Both wallets use the same seed phrase but separate caches - Test verifies that wallet2 can restore all funds from wallet1 - Test is skipped by default but can be enabled for manual testing with real mint - Includes detailed logging and step-by-step verification - Validates that both wallets have identical balances after restore Co-authored-by: 1-leo <58687994+1-leo@users.noreply.github.com>
Co-authored-by: 1-leo <58687994+1-leo@users.noreply.github.com>
The bug was in the matching logic between signatures and blinded messages. The code was trying to match by keyset ID, but all blinded messages in a batch share the same keyset ID, so firstWhere always returned the first item. Solution: - Updated restore endpoint to parse BOTH outputs and signatures from response - Match outputs[i] with signatures[i] by index - Use the B_ value from outputs to find the corresponding blinded message item - Fallback to trying each combination if outputs aren't provided This ensures each restored proof gets its correct unique secret and blinding factor. Co-authored-by: 1-leo <58687994+1-leo@users.noreply.github.com>
As requested, the restore method now returns a Stream instead of a Future. This allows clients to track progress as proofs are discovered and restored. Changes: - Changed Cashu.restore() to return Stream<CashuRestoreResult> - Changed CashuRestore.restoreAllKeysets() to return Stream<CashuRestoreResult> - Yields progress updates after each keyset is processed - Saves proofs incrementally and updates balances as they're discovered - Updated test to consume stream and show progress - Added test to verify all proofs have unique secrets (validates the bug fix) Co-authored-by: 1-leo <58687994+1-leo@users.noreply.github.com>
…estore Fix restore bug: all proofs had same secret; convert to streaming API
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.