Repository navigation
Add create() to Stellar wallets (0.5.3) - #53
Merged
Merged
Conversation
A sponsored Stellar account starts with 0 XLM, and only execute() could create it, so the first XLM payment always failed with op_underfunded and an app that starts with a trustline had no public way to create the account. create() creates it without sending anything and resolves at once when the account is ready. addTrustline and invokeContract now point to it. The Stellar skill explains what the first call does. 0.5.3.
This was referenced Nov 12, 2026
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.
A sponsored Stellar account is created with 0 XLM, and only
execute()could create it. So the first XLM payment on a new account always failed withop_underfunded, and an app that starts with a trustline or a Soroban call had no public way to create the account.wallet.create()creates the account without sending anything (sponsored whenappIdis set). It resolves at once when the account is alreadyready, and throws the existing "approve this device first" error on a device without the key.addTrustlineandinvokeContracton an undeployed account now say "Call create() first."execute()docs state what happens on a new sponsored account.skills/cavos-stellar/SKILL.mdexplains the first call and usescreate().Tests: 3 new in
CavosStellar.create.test.ts; full suite 548 passed, typecheck and build clean.Raised by the review on stellar/stellar-dev-skill#183.