Skip to content

Implement allowance expiration with ledger-based TTL enforcement #164

@p3ris0n

Description

@p3ris0n

Summary

The current approve function accepts an _exp parameter but ignores it. Implement full allowance expiration logic so approvals auto-expire after a specified ledger.

Requirements

  • Change allowance storage from i128 to AllowanceEntry { amount: i128, expiration_ledger: u32 }
  • Modify approve() to store expiration ledger
  • Modify read_allowance() to check current ledger vs expiration
  • Modify transfer_from() and burn_from() to enforce expiration
  • Add increase_allowance and decrease_allowance
  • Emit updated events
  • Migrate tests and add expiry tests
  • SDK updates

Metadata

Metadata

Assignees

No one assigned

    Labels

    Stellar WaveIssues in the Stellar wave programbugSomething isn't workinghigh-complexityHigh complexity - significant effort requiredsecuritySecurity hardening and auditsmart-contractRust/Soroban contract work

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions