Description — what to implement and the why/impact.
Settling expenses in custom Stellar assets like USDC requires the receiving account to have an established trustline. When users attempt to settle or receive payments in assets without trustlines, transactions fail on-chain. This issue introduces an automated trustline check and a guided modal to build and submit trustline transactions via Freighter.
Context & Requirements — background, constraints, design references, edge cases; grounded in the actual repo (real files, stack, conventions).
Using @stellar/stellar-sdk and @stellar/freighter-api, check the user's account balances and trustlines for supported assets. If a trustline is missing, prompt the user with a modal explaining the requirement and invoke Freighter to sign the change trust transaction.
Acceptance Criteria — a checklist ("- [ ] ...") of specific, testable conditions that define "done".
Implementation Guidance — likely files/modules to touch (use real paths from the repo context) and a suggested approach, without over-prescribing.
- Check wallet and Stellar integration helpers in
src/lib/.
- Integrate with existing wallet connection hooks and modals.
Testing & Validation — how the contributor should prove it works (tests to add/run, manual checks, screenshots for UI).
- Unit test the trustline check logic against mock Stellar server responses.
- Run
npm test to confirm all tests pass successfully.
Submission Guidelines — must open a PR that includes "Closes #"; assignment is required before starting; follow the repo's existing style and conventions.
Wave complexity: Medium
Description — what to implement and the why/impact.
Settling expenses in custom Stellar assets like USDC requires the receiving account to have an established trustline. When users attempt to settle or receive payments in assets without trustlines, transactions fail on-chain. This issue introduces an automated trustline check and a guided modal to build and submit trustline transactions via Freighter.
Context & Requirements — background, constraints, design references, edge cases; grounded in the actual repo (real files, stack, conventions).
Using
@stellar/stellar-sdkand@stellar/freighter-api, check the user's account balances and trustlines for supported assets. If a trustline is missing, prompt the user with a modal explaining the requirement and invoke Freighter to sign the change trust transaction.Acceptance Criteria — a checklist ("- [ ] ...") of specific, testable conditions that define "done".
@stellar/stellar-sdk.TrustlineModal.tsxinsrc/components/wallet/to guide users through adding trustlines.sonner.npm run typecheckandnpm test.Implementation Guidance — likely files/modules to touch (use real paths from the repo context) and a suggested approach, without over-prescribing.
src/lib/.Testing & Validation — how the contributor should prove it works (tests to add/run, manual checks, screenshots for UI).
npm testto confirm all tests pass successfully.Submission Guidelines — must open a PR that includes "Closes #"; assignment is required before starting; follow the repo's existing style and conventions.
Wave complexity: Medium