Open
Conversation
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
jakehobbs
commented
Apr 25, 2026
Co-Authored-By: Claude <noreply@anthropic.com>
… utils - Replace hand-rolled hexToBytes/bytesToBase58 with viem hexToBytes and ox Base58.fromBytes - Add type guards (isSolanaChain, isSolanaResponse, isEvmResponse) instead of casts - Prefix all Solana action logs with solana: namespace - Add mergeSolanaClientCapabilities for client-level policyId merging - Fix solanaSmartWalletActions decorator to use InnerSolanaWalletApiClient Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…plify signer interface - Add Solana-specific getCallsStatus/waitForCallsStatus (viem's versions fail on non-hex chainId) - Simplify SolanaSigner to signTransaction/signMessage (SDK extracts message bytes from serialized tx) - Use TypeBox decode with Solana-specific schemas instead of decoding full union - Add e2e test script for Solana devnet flow - Update wallet-api-types to 0.1.0-local.1 (adds SolanaGetCallsStatusResponse schema) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…for Solana + add Privy example SolanaSigner is now a union of three signer types — wallet standard (Privy, Phantom), @solana/kit TransactionPartialSigner, and raw Ed25519 message signers. The SDK auto-detects via type guards and handles signature extraction internally. Privy's ConnectedStandardSolanaWallet plugs in directly with no adapter. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Wiz Scan Summary
To detect these findings earlier in the dev lifecycle, try using Wiz Code VS Code Extension. |
…all 3 signer paths - Dynamically import @solana/kit to decode raw tx bytes into Transaction objects for the TransactionPartialSigner path (keeps @solana/kit optional) - Update e2e test to exercise both TransactionPartialSigner (@solana/kit KeyPairSigner) and MessageSigner (raw Ed25519) paths - Wallet standard path tested via Privy example app Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ainId → chain Align with updated wallet-api-types@local.2 which uses solana:devnet / solana:mainnet instead of solana-devnet / solana-mainnet. Rename client factory param from chainId to chain to match EVM client convention. Add raw RPC e2e test. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Single factory with overloads that discriminates on chain type — pass a Chain object for EVM or a SolanaChainId string for Solana and get the correct return type. Adds address validation (hex for EVM, base58 for Solana), fixes the solanaAccount override bug where factory-level account was ignored in Solana actions, and removes the hex type lie by making BaseWalletClient generic over the account type (Solana clients now have account: undefined + solanaAccount: string). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Moved to jake/v5/sol-examples branch for dogfooding. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…on functions Reduce exported types to only what consumers need (drop BaseWalletClient, SignerClient, SolanaSigner), export Solana action functions with solana* prefix for parity with EVM, and reorder types.ts for clarity. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…en-narrow Solana actions were using a separate decodeSolanaResponse that bypassed the union schema. Now they use the same decode + type guard pattern as EVM, and decodeSolanaResponse is removed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Prove all 3 signer adapters (fromKeypair, fromKitSigner, raw SolanaStandardSigner) produce identical signatures, then use the simplest (fromKeypair) for e2e tests covering sendCalls, prepare/sign/send flow, and status polling. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…pters Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…olana e2e tests Replace hardcoded private key with a randomly generated keypair and use the idiomatic @solana/kit signer path instead of manual crypto.subtle.sign. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…dd fromWalletAdapter adapter The "Standard" in the name falsely implied it was the wallet-standard interface when it's actually a simplified signer contract. Also adds fromWalletAdapter for @solana/wallet-adapter-react and injected providers (Phantom, etc.), with equivalence test coverage for all four adapter paths. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…lana subpath Solana actions, adapters, and decorator now live under /solana instead of being prefixed (solanaPrepareCalls → prepareCalls) in the main entrypoint. Removes solana-adapters subpath (folded into /solana). Adds JSDoc to the shared createSmartWalletClient factory. Co-Authored-By: Claude Opus 4.6 (1M context) <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.
Pull Request Checklist
yarn test)sitefolder, and guidelines for updating/adding docs can be found in the contribution guide)feat!: breaking change)yarn lint:check) and fix any issues? (yarn lint:write)PR-Codex overview
This PR primarily focuses on updating various documentation files related to the wallet APIs and smart accounts, enhancing type definitions, and refining function signatures for better clarity and consistency.
Detailed summary
.mdxfiles related toSignerClientandBaseWalletClient..mdxfiles, includingHookType,PermissionType, andSignaturePrefix.signMessage,prepareSign, andgetModularAccountV2AddressFromFactoryData.BaseError.smartWalletActionsdecorator for better understanding.