Documentation Index
Fetch the complete documentation index at: https://kleros-mintlify-changelog-2026-05-12-1778458371.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Kleros Court V2 runs on Arbitrum One (the “home chain”). If your arbitrable contract is on a different chain (Ethereum Mainnet, Gnosis Chain, or another L2), you interact with Kleros through the Foreign Gateway deployed on your chain. The gateway handles cross-chain communication via Vea. From your contract’s perspective, the Foreign Gateway acts as the arbitrator you callcreateDispute() on it and receive rulings from it.
Gateway Architecture
- Mirrors
arbitrationCost()locally so your contract can check fees without cross-chain calls - Assigns a local
disputeIDfor backward compatibility - Computes a
disputeHashto uniquely identify disputes across chains - Receives rulings from the Home Gateway via Vea and calls
rule()on your contract
Creating a Dispute from a Foreign Chain
Step 1: Implement IArbitrableV2
Your contract must implement theIArbitrableV2 interface:
Step 2: Check Arbitration Cost
The Foreign Gateway mirrors the fee schedule from Kleros Core, soarbitrationCost() returns the correct fee without a cross-chain call:
Step 3: Receive the Ruling
When Kleros Court reaches a final ruling, the Home Gateway sends it via Vea to the Foreign Gateway. The Foreign Gateway callsrule() on your contract:
Cross-Chain Dispute Identifier
Disputes have different IDs on each chain:| Identifier | Chain | Purpose |
|---|---|---|
localDisputeID | Foreign chain | Incremental ID assigned by Foreign Gateway for backward compatibility |
disputeHash | Both chains | Unique hash computed from (chainId, blockHash, arbitrable, disputeID, choices, extraData) |
homeDisputeID | Arbitrum | ID assigned by KlerosCore |
localDisputeID and disputeHash. The Home Gateway maps between disputeHash and homeDisputeID.
Evidence Submission
Evidence can be submitted on either the foreign chain or the home chain. The Court V2 frontend consolidates evidence from both chains by monitoring event logs from both gateways. On the foreign chain, emit evidence events from your arbitrable contract:Timing Considerations
| Phase | Timing |
|---|---|
| Foreign → Home (dispute creation) | 5–10 minutes via Simple Bridge |
| Home → Foreign (ruling relay, happy path) | Configurable challenge period, typically faster than native bridge |
| Home → Foreign (ruling relay, unhappy path) | ~7 days (native Arbitrum → Ethereum bridge) |
Foreign Gateway Contract
The Foreign Gateway implementsIArbitratorV2 from your contract’s perspective: