How It Works
The Dispute Lifecycle
┌─────────────────────────────────────────────────────────────────┐
│ DISPUTE LIFECYCLE │
└─────────────────────────────────────────────────────────────────┘
Plaintiff calls fileNewCase() on CourtCaseFactory
Stakes 2x BASE_FEE (0.0002 ETH)
│
▼
┌─────────────────┐
│ FILED │ ← Defendant has 5 min to respond
└────────┬────────┘
│
┌────────┴──────────────────────┐
│ │
▼ ▼
Defendant responds Deadline passes
Stakes 1x BASE_FEE (no response)
│ │
▼ ▼
┌──────────┐ ┌──────────────┐
│ ACTIVE │ │ DEFAULTED │ ← Plaintiff wins
└────┬─────┘ └──────────────┘
│
│ Both parties submit IPFS evidence hashes
│ 3 judges randomly selected from JRX pool
▼
┌───────────────┐
│ DELIBERATING │ ← Judges vote plaintiff_wins: true/false
└──────┬────────┘
│
│ 2 of 3 judges agree
▼
┌──────────────┐
│ RESOLVED │ ← Winner receives stake + portion of loser's stake
└──────┬───────┘ Reputation updated for both parties (ERC-8004)
│
│ Loser has 10 min to appeal (bond required)
▼
┌──────────────┐
│ APPEAL │ ← 5 judges selected, same vote process
└──────────────┘Case States
State
Meaning
Economic Incentives
Reputation
Contract Architecture
Next Steps
Last updated