Skip to content

forge-multisig — add test verifying cancel() by non-proposer only succeeds when threshold is mathematically unreachable #336

@Austinaminu2

Description

@Austinaminu2

Summary

cancel() allows non-proposer owners to cancel only when remaining_possible < threshold. There is no test verifying the boundary: exactly at the boundary (cannot cancel) vs one rejection past it (can cancel).

Tasks

  • Set up a 3-of-5 multisig
  • o1 proposes (1 approval, 0 rejections, 4 remaining possible — threshold reachable)
  • o2 rejects (1 approval, 1 rejection, 3 remaining — still reachable)
  • o3 rejects (1 approval, 2 rejections, 2 remaining — still reachable, 1+2=3 = threshold)
  • o4 attempts cancel() — assert Err(MultisigError::CannotCancel) (2 remaining == threshold)
  • o4 rejects (1 approval, 3 rejections, 1 remaining < threshold of 3)
  • o5 calls cancel() — assert success
  • Verify proposal.cancelled == true

Labels: testing, forge-multisig

Metadata

Metadata

Assignees

No one assigned

    Labels

    Stellar WaveIssues in the Stellar wave program

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions