Description:
Allow complex escrow where funds are released in multiple milestones (e.g., 30% upfront, 40% on delivery, 30% on验收).
Acceptance Criteria:
lock_funds_with_milestones(session_id, seller, total_amount, milestones: Vec<(percentage_bps, description)>).
release_milestone(session_id, milestone_index) — buyer calls to release each milestone.
Milestone amounts calculated as total_amount * percentage_bps / 10000.
Seller cannot claim more than sum of released milestones.
Dispute can pause milestone releases.
Emits MilestoneReleased(session_id, milestone_index, amount) event.
Labels: milestone, advanced-escrow, flexibility
Description:
Allow complex escrow where funds are released in multiple milestones (e.g., 30% upfront, 40% on delivery, 30% on验收).
Acceptance Criteria:
lock_funds_with_milestones(session_id, seller, total_amount, milestones: Vec<(percentage_bps, description)>).
release_milestone(session_id, milestone_index) — buyer calls to release each milestone.
Milestone amounts calculated as total_amount * percentage_bps / 10000.
Seller cannot claim more than sum of released milestones.
Dispute can pause milestone releases.
Emits MilestoneReleased(session_id, milestone_index, amount) event.
Labels: milestone, advanced-escrow, flexibility