feat(wallet): 未対応 Smart Account の standard モード fallback#4
Merged
Conversation
gasless モードで IncompatibleSmartAccountError が発生した場合、赤エラーの 代わりに amber banner で standard モード (ガス付き) への切替ボタンを表示。 ユーザーがボタンを押すと runtime で standard モードに切替わり、Smart Account を経由せず直接 ERC20 transfer で決済できる。 - SmartAccountFallbackBanner 新規コンポーネント (amber style) - PaymentForm / CheckoutForm: modeOverride state で gasless→standard 切替 - TipForm: gasless 専用のため fallback 不可、別ウォレット案内 banner のみ - i18n: SmartAccountFallback namespace 追加 (en/ja) Closes: Rabby wallet (Kaia) で delegate 0x470a...bf19 に委任された EOA が ガスレス決済できなかった問題。standard モード fallback で決済可能に。 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
cipherwebllc
added a commit
that referenced
this pull request
May 31, 2026
… test coverage (Codex review) Codex code-review (approve-with-changes) の minor 2 点: - 隔離: fireMerchantMint helper で onMerchantMint を try/catch 包み、会計ログ (best-effort) の例外が確定済 merchant mint 後の決済 flow を中断させないようにした (3 fire site 全て)。 - テスト: (a) CCTP resume-merchant-landed が fee mint より前に callback を 1 度発火、 (b) CCTP fee mint 失敗でも merchant callback は発火済 (income 取りこぼし無し)、 (c) onMerchantMint throw が executor に伝播しない (隔離の検証)。 bridgeFeeMax の override 乖離 (Codex minor #4) は現状 override 経路の caller が無く latent。 将来 override 対応 caller を足す際は executor から実 ceiling を callback に渡す follow-up が必要 (estimator は default overrides 前提)。 Verified: tsc 0 · eslint 0 · full suite 2566 passed/0 failed。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.
Summary
Background
Rabby wallet (iPhone) で Kaia チェーン上の JPYC 決済を試みた際、EOA が未知の EIP-7702 delegation (
0x470a...bf19, Kaia-only contract) に委任されておりIncompatibleSmartAccountErrorでブロックされた。Standard モードなら Smart Account を一切使わないため決済可能。Changes
SmartAccountFallbackBanner新規コンポーネント (amber style, 切替ボタン付き)PaymentForm/CheckoutForm:modeOverridestate で gasless→standard 切替TipForm: gasless 専用のため fallback 不可、別ウォレット案内 banner のみSmartAccountFallbacknamespace 追加 (en/ja)Test plan
npm run typecheckpassnpm run lintpassnpm run test:runpass (SmartAccountFallbackBanner 4 tests 新規)🤖 Generated with Claude Code