Skip to content

Commit 411c537

Browse files
Mathew2k-hashmusay
andauthored
Feat/stellar sponsored batch send (#146)
* docs: add Python quickstart for Stellar stealth payments Covers the full flow for Python 3.11+ backends that want to talk to Wraith contracts without the TypeScript SDK: - guides/quickstarts/python.mdx (new) - pip install stellar-sdk + cryptography only - wraith_crypto.py inline utility: scan-key derivation via SHA-256 domain separation, X25519 ECDH, ed25519 point addition, view-tag prefilter, sign_with_scalar (RFC 8032 compatible raw scalar signing) - Fetch WRAITH_ANNOUNCEMENT events from Soroban RPC (getEvents + XDR decode) - scan_announcements with view-tag prefilter (~255/256 skip rate) - Send: createAccount activation + Soroban announcer invocation - Spend: withdrawal tx signed with raw stealth scalar - All Python fences marked no-check for the TS snippet gate - Targets futurenet; notes testnet contract IDs for live testing - sdk/overview.mdx: cross-link to Python quickstart under Next Steps - docs.json: Quickstarts nav group added above Guides in the Guides tab * docs(stellar): add sponsored-batch-send guide for paymaster airdrop pattern Add guides/stellar/sponsored-batch-send.mdx covering: - BeginSponsoringFutureReserves + batch send + EndSponsoringFutureReserves pattern - Reserve vs fee cost model with AccountMerge refund lifecycle - End-to-end airdrop example for 100 stealth recipients (chunked at 24/tx) - Failure modes: auth revocation, insufficient reserves, missing EndSponsoring signature, and trustline missing inside sponsorship window - Futurenet testing section Update docs.json: add nav entry in Guides > Operations group. Update guides/stellar-fees.mdx: cross-link to new guide in See Also. All 10 TypeScript snippets pass tsc --noEmit (check:snippets CI). * fix(docs): resolve merge-artifact duplicate pages key in Quickstarts group The auto-merge of develop into feat/stellar-sponsored-batch-send produced an invalid docs.json: the Quickstarts group ended up with two separate "pages" keys (python from this branch, rust from develop) with no comma between them. Merged both entries into a single pages array. Fixes: pnpm run check:nav-coverage JSON parse error at position 3128. --------- Co-authored-by: musay <ochoalaurie@gmail.com>
1 parent 98cab42 commit 411c537

3 files changed

Lines changed: 826 additions & 0 deletions

File tree

docs.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,7 @@
171171
"guides/stellar-custom-assets",
172172
"guides/stellar/stellar-liquidity-pool-swap",
173173
"guides/stellar/stellar-path-payment",
174+
"guides/stellar/sponsored-batch-send",
174175
"guides/stellar/passkey-signing",
175176
"guides/stellar/stellar-quickstart",
176177
"guides/stellar/wraith-names-lifecycle",

guides/stellar-fees.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,7 @@ To ensure smooth operations in production apps, implement these heuristics:
172172

173173
## See Also
174174

175+
- [Sponsored Batch Send](/guides/stellar/sponsored-batch-send) — paymaster covers 1 XLM reserves for every new stealth recipient; ideal for airdrops and payroll
175176
- [Reflector Oracle Integration](/guides/integrations/reflector) — plug Reflector into Wraith flows for inline fiat conversion alongside fee estimation
176177
- [Spectre + Stellar Cookbook](/guides/spectre-stellar-cookbook) — production recipes for Stellar agents
177178
- [Stellar Payment Links](/guides/stellar-payment-links) — generate payment links with fiat amounts

0 commit comments

Comments
 (0)