Skip to content

forge-multisig — add support for native XLM transfers not just Soroban token transfers #321

Description

@Austinaminu2

Summary

forge-multisig currently only supports token transfers via token::Client::new() which works for Soroban tokens (SAC-wrapped assets). It does not support native XLM transfers which use a different interface. Many Stellar treasuries hold native XLM and would not be able to use forge-multisig for XLM disbursements.

Proposed Design

Add a separate proposal type for native XLM transfers using Stellar's built-in transfer mechanism.

propose_xlm(env: Env, proposer: Address, to: Address, amount: i128) -> u64

Tasks

  • Research the correct Soroban method for native XLM transfers
  • Add is_native: bool field to Proposal to distinguish XLM from token proposals
  • Implement propose_xlm() that creates a native XLM transfer proposal
  • Update execute() to handle both token and native XLM cases
  • Add tests for native XLM proposal creation, approval, and execution
  • Document native XLM support in the contract README

Labels: enhancement, forge-multisig

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions