Summary
Allow invoice creators to specify a list of arbitrator addresses instead of a single one, with a configurable threshold (e.g. 2-of-3 must agree) to resolve disputes.
Motivation
Single-arbitrator escrow is a single point of failure. Multi-sig arbitration makes dispute resolution more trustless and suitable for DAO governance.
Proposed Change
- Add
arbitrators: Vec<Address> and arbitrator_threshold: u32 to InvoiceOptions
- Track signatures in a new
ArbitrationState storage entry
- Only execute resolve when threshold is met
- Add
sign_arbitration(invoice_id) function
Acceptance Criteria
Summary
Allow invoice creators to specify a list of arbitrator addresses instead of a single one, with a configurable threshold (e.g. 2-of-3 must agree) to resolve disputes.
Motivation
Single-arbitrator escrow is a single point of failure. Multi-sig arbitration makes dispute resolution more trustless and suitable for DAO governance.
Proposed Change
arbitrators: Vec<Address>andarbitrator_threshold: u32to InvoiceOptionsArbitrationStatestorage entrysign_arbitration(invoice_id)functionAcceptance Criteria