Problem
The fee-on-top model collects insurance fees on every pledge (default 30% of fee), but there is no function to claim or use insurance funds. The insurance pool becomes dead money.
Current Behavior
- Pledge fee split: treasury (70%) + insurance (30%)
- Insurance funds accumulate in CoreEscrow
- No
claim_insurance() or similar function exists
- If campaigns fail or disputes arise, backers are refunded from the main pool only
Expected Behavior
claim_insurance(campaign_id, claimant, amount, reason) — Admin-only, allows drawing from insurance pool for:
- Disputed campaigns where backer is owed compensation
- Partial recovery for failed campaigns
- Emergency situations
get_insurance_balance() — Query available insurance funds
- Insurance usage should be auditable (events emitted)
Acceptance Criteria
Priority
Low — Not blocking core flow, but collected funds should be usable.
Labels
crowdfunding, smart-contract, enhancement
Problem
The fee-on-top model collects insurance fees on every pledge (default 30% of fee), but there is no function to claim or use insurance funds. The insurance pool becomes dead money.
Current Behavior
claim_insurance()or similar function existsExpected Behavior
claim_insurance(campaign_id, claimant, amount, reason)— Admin-only, allows drawing from insurance pool for:get_insurance_balance()— Query available insurance fundsAcceptance Criteria
Priority
Low — Not blocking core flow, but collected funds should be usable.
Labels
crowdfunding,smart-contract,enhancement