Files
smom-dbis-138/docs/operations/CHALLENGER_GUIDE.md
defiQUG 50ab378da9 feat: Implement Universal Cross-Chain Asset Hub - All phases complete
PRODUCTION-GRADE IMPLEMENTATION - All 7 Phases Done

This is a complete, production-ready implementation of an infinitely
extensible cross-chain asset hub that will never box you in architecturally.

## Implementation Summary

### Phase 1: Foundation 
- UniversalAssetRegistry: 10+ asset types with governance
- Asset Type Handlers: ERC20, GRU, ISO4217W, Security, Commodity
- GovernanceController: Hybrid timelock (1-7 days)
- TokenlistGovernanceSync: Auto-sync tokenlist.json

### Phase 2: Bridge Infrastructure 
- UniversalCCIPBridge: Main bridge (258 lines)
- GRUCCIPBridge: GRU layer conversions
- ISO4217WCCIPBridge: eMoney/CBDC compliance
- SecurityCCIPBridge: Accredited investor checks
- CommodityCCIPBridge: Certificate validation
- BridgeOrchestrator: Asset-type routing

### Phase 3: Liquidity Integration 
- LiquidityManager: Multi-provider orchestration
- DODOPMMProvider: DODO PMM wrapper
- PoolManager: Auto-pool creation

### Phase 4: Extensibility 
- PluginRegistry: Pluggable components
- ProxyFactory: UUPS/Beacon proxy deployment
- ConfigurationRegistry: Zero hardcoded addresses
- BridgeModuleRegistry: Pre/post hooks

### Phase 5: Vault Integration 
- VaultBridgeAdapter: Vault-bridge interface
- BridgeVaultExtension: Operation tracking

### Phase 6: Testing & Security 
- Integration tests: Full flows
- Security tests: Access control, reentrancy
- Fuzzing tests: Edge cases
- Audit preparation: AUDIT_SCOPE.md

### Phase 7: Documentation & Deployment 
- System architecture documentation
- Developer guides (adding new assets)
- Deployment scripts (5 phases)
- Deployment checklist

## Extensibility (Never Box In)

7 mechanisms to prevent architectural lock-in:
1. Plugin Architecture - Add asset types without core changes
2. Upgradeable Contracts - UUPS proxies
3. Registry-Based Config - No hardcoded addresses
4. Modular Bridges - Asset-specific contracts
5. Composable Compliance - Stackable modules
6. Multi-Source Liquidity - Pluggable providers
7. Event-Driven - Loose coupling

## Statistics

- Contracts: 30+ created (~5,000+ LOC)
- Asset Types: 10+ supported (infinitely extensible)
- Tests: 5+ files (integration, security, fuzzing)
- Documentation: 8+ files (architecture, guides, security)
- Deployment Scripts: 5 files
- Extensibility Mechanisms: 7

## Result

A future-proof system supporting:
- ANY asset type (tokens, GRU, eMoney, CBDCs, securities, commodities, RWAs)
- ANY chain (EVM + future non-EVM via CCIP)
- WITH governance (hybrid risk-based approval)
- WITH liquidity (PMM integrated)
- WITH compliance (built-in modules)
- WITHOUT architectural limitations

Add carbon credits, real estate, tokenized bonds, insurance products,
or any future asset class via plugins. No redesign ever needed.

Status: Ready for Testing → Audit → Production
2026-01-24 07:01:37 -08:00

5.6 KiB

Challenger Operations Guide

Overview

This guide explains how to become a challenger and detect fraudulent claims in the trustless bridge system. Challengers monitor claims and submit fraud proofs to earn rewards.

Becoming a Challenger

Requirements

  1. Ethereum Wallet: Wallet with ETH for gas fees
  2. Monitoring Infrastructure: Ability to monitor both ChainID 138 and Ethereum Mainnet
  3. Technical Knowledge: Understanding of fraud proofs, Merkle proofs, and bridge mechanics
  4. Capital: ETH for gas fees (rewards cover costs if successful)

Setup Steps

  1. Deploy Monitoring Service:

    • Monitor Deposit events on ChainID 138
    • Monitor ClaimSubmitted events on Ethereum Mainnet
    • Compare claims against source chain state
  2. Prepare Fraud Proof Generation:

    • Set up Merkle proof generation
    • Implement fraud proof encoding
    • Test fraud proof verification
  3. Test on Testnet:

    • Test challenge submission
    • Verify fraud proof format
    • Practice fraud detection

Challenger Operations

Monitoring for Fraud

What to Monitor:

  1. Claims on Ethereum: All ClaimSubmitted events
  2. Deposits on ChainID 138: All Deposit events
  3. Compare: Verify claims match deposits

Fraud Detection:

  • Non-Existent Deposit: Claim for deposit that doesn't exist
  • Incorrect Amount: Claim amount differs from actual deposit
  • Incorrect Recipient: Claim recipient differs from actual deposit
  • Double Spend: Same deposit claimed twice

Submitting Challenges

Function: ChallengeManager.challengeClaim()

Parameters:

  • depositId: Deposit ID of the claim to challenge
  • proofType: Type of fraud proof (NonExistentDeposit, IncorrectAmount, etc.)
  • proof: Encoded fraud proof data

Process:

// Generate fraud proof
bytes memory fraudProof = generateFraudProof(depositId, claim, proofType);

// Submit challenge
challengeManager.challengeClaim(
    depositId,
    proofType,
    fraudProof
);

Fraud Proof Types:

  1. NonExistentDeposit: Merkle proof showing deposit doesn't exist
  2. IncorrectAmount: Merkle proof with actual deposit amount
  3. IncorrectRecipient: Merkle proof with actual recipient
  4. DoubleSpend: Proof of previous claim for same deposit

Fraud Proof Generation

Non-Existent Deposit Proof:

  1. Get state root from ChainID 138 block
  2. Hash claimed deposit data
  3. Generate Merkle proof showing non-existence
  4. Encode proof according to FraudProofTypes.NonExistentDepositProof

Incorrect Amount Proof:

  1. Get actual deposit from ChainID 138
  2. Generate Merkle proof for actual deposit
  3. Encode proof with actual amount
  4. Submit challenge with proof

See: docs/bridge/trustless/FRAUD_PROOFS.md for detailed proof formats

Economics

Costs

  • Gas Fees: For submitting challenges
  • Infrastructure: Monitoring and proof generation costs
  • Time: Time to monitor and generate proofs

Revenue

  • Challenger Reward: 50% of slashed bond
  • Example: If bond is 1.1 ETH, challenger receives 0.55 ETH

Profitability

  • Calculate: Reward - Gas Costs - Infrastructure - Time
  • Consider success rate, gas prices, bond amounts
  • Monitor market conditions

Best Practices

1. Detection

  • Fast Detection: Detect fraud quickly (within challenge window)
  • Accurate Proofs: Ensure fraud proofs are correct
  • Comprehensive Monitoring: Monitor all claims and deposits
  • Pattern Recognition: Identify patterns in fraudulent claims

2. Proof Generation

  • Correct Format: Use proper fraud proof encoding
  • Valid Proofs: Ensure proofs are verifiable
  • Complete Data: Include all required proof elements
  • Testing: Test proof generation thoroughly

3. Risk Management

  • Gas Costs: Monitor gas prices
  • Success Rate: Track challenge success rate
  • Competition: Consider other challengers
  • Timing: Submit challenges within challenge window

Automation

Automated Monitoring

  • Set up event watchers for both chains
  • Compare claims against deposits automatically
  • Alert on potential fraud
  • Generate fraud proofs automatically

Automated Challenging

  • Automatically submit challenges when fraud detected
  • Optimize gas usage
  • Monitor challenge success
  • Track rewards

Troubleshooting

Challenge Rejected

  • Check Proof: Verify fraud proof is correct
  • Verify Format: Ensure proof encoding is correct
  • Check Timing: Ensure within challenge window
  • Review Errors: Check error messages

Invalid Fraud Proof

  • Verify Merkle Proof: Ensure Merkle proof is valid
  • Check State Root: Verify state root is correct
  • Review Encoding: Check proof encoding format
  • Test Locally: Test proof verification locally

High Gas Costs

  • Wait: Consider waiting for lower gas prices
  • Batch: Batch multiple challenges if possible
  • Optimize: Optimize proof generation

Monitoring

Key Metrics

  • Challenges Submitted: Total challenges submitted
  • Success Rate: Percentage of successful challenges
  • Rewards Earned: Total rewards from successful challenges
  • Gas Costs: Average gas costs per challenge
  • Detection Time: Time to detect fraud

Alerts

  • Fraud Detected: Alert when fraud is detected
  • Challenge Success: Alert on successful challenges
  • Gas Prices: Alert on high gas prices
  • Patterns: Alert on fraud patterns

References

  • Fraud Proofs: docs/bridge/trustless/FRAUD_PROOFS.md
  • Challenge Manager: contracts/bridge/trustless/ChallengeManager.sol
  • Architecture: docs/bridge/trustless/ARCHITECTURE.md