Skip to content

Conversation

@joshpainter
Copy link

@joshpainter joshpainter commented Feb 11, 2026

Summary

Changes

File Bug Change
src/components/NftCard.tsx #691 Show edition when total === 0, render ∞
src/pages/Nft.tsx #691 Same pattern for detail page
src/components/ui/dialog.tsx #390 Add max-h-[85vh] overflow-y-auto to DialogContent
crates/sage/src/error.rs #726 Add InvalidMnemonic(String) variant
crates/sage/src/endpoints/keys.rs #726 Pre-validate word count, map bip39 errors to friendly messages
src/pages/ImportWallet.tsx #726 Improve helper text ("12 or 24-word mnemonic seed phrase")
crates/sage/src/endpoints/offers.rs #723 Backend guard: no offered assets + zero fee = clear error
src/pages/MakeOffer.tsx #723 Frontend guard: same validation before confirmation dialog

Test plan

  • Verify NFTs with edition_total=0 show "X of ∞" in card tooltip and detail page
  • Verify NFTs with edition_total > 1 still show "X of Y" as before
  • Open a dialog on iPad landscape with virtual keyboard — content should scroll
  • Desktop dialogs should look unchanged (content doesn't exceed 85vh)
  • Import a mnemonic with wrong word count → shows "Expected 12 or 24 words, but got N"
  • Import a mnemonic with a typo → shows "Word #N (word) is not a valid BIP39 word"
  • Import a mnemonic with wrong word order → shows checksum error message
  • Create offer with only requested assets and zero fee → shows "requires a network fee"
  • Create offer with only requested assets and nonzero fee → proceeds normally
  • cargo clippy --workspace passes clean
  • cargo check -p sage passes clean

🤖 Generated with Claude Code

joshpainter and others added 4 commits February 11, 2026 02:10
MintGarden convention uses edition_total=0 to mean unlimited editions.
Previously hidden because condition only checked > 1.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add max-h-[85vh] overflow-y-auto to DialogContent so virtual keyboard
on iPad landscape no longer covers dialog content.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace cryptic BIP39 errors with user-friendly messages that identify
the specific invalid word, wrong word count, or checksum failure.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Prevent crash when creating an offer with only requested assets and
zero fee by adding validation on both backend and frontend.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
joshpainter added a commit to joshpainter/sage that referenced this pull request Feb 11, 2026
Issues xch-dev#691, xch-dev#390, xch-dev#726, xch-dev#723 are now addressed in the
bugfixes-p1 branch (PR xch-dev#740).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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