Skip to content

The Arbiter is the execution layer for trustless competitive gaming — an autonomous AI referee enabling high-speed competition, secure wagering, and verifiable settlement to unlock scalable wagering economies on Monad

Notifications You must be signed in to change notification settings

intelliDean/The-Arbiter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Arbiter: Decentralized Wagering & Automated Settlement

The Arbiter is the execution layer for trustless competitive gaming — an autonomous AI referee enabling high-speed competition, secure wagering, and verifiable settlement to unlock scalable wagering economies on Monad.


System Architecture

The following diagram illustrates the interaction between the three core components:

graph TD
    User([User Wallet]) -- "1. Create/Join Match" --> ArenaContract[Arena.sol]
    RefereeAgent[Referee Agent] -- "2. Monitor Events" --> ArenaContract
    RefereeAgent -- "3. Simulate Match" --> GameEngine[Off-Chain Logic]
    RefereeAgent -- "4. Settle Match" --> ArenaContract
    ArenaContract -- "5. Payout Winner" --> User
    Frontend[Vite Frontend] -- "View State" --> ArenaContract
Loading

Project Structure

Component Technology Description
contracts/ Solidity & Foundry Core logic, staking, match lifecycle, and fee management.
agent/ Python & Web3.py Automated node that monitors matches, simulates outcomes, and triggers settlements.
frontend/ React, Vite, Wagmi Premium UI with wallet integration (RainbowKit) and real-time match tracking.

Quick Start

1. Smart Contracts (/contracts)

Install Foundry and deploy the contracts:

cd contracts
forge install
forge build
# Run tests
forge test

2. Referee Agent (/agent)

The agent requires a Python environment and a funded "Referee" wallet:

cd agent
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python referee.py

Note: The agent uses SQLite for persistence and exposes a health check at localhost:8080/health.

3. Frontend UI (/frontend)

High-performance React app with dynamic pulsed animations and real-time data:

cd frontend
npm install
npm run dev

Environment Variables

Each component requires specific configuration. Examples are provided in their respective .env.example files.

Global Configuration

  • Monad RPC: https://testnet-rpc.monad.xyz
  • Chain ID: 10143

Deployed Contracts (Monad Testnet)


Deployed App (Vercel)


Features

  • Decentralized Escrow: Smart contracts hold stakes securely until the referee settles the match.
  • Agent Persistence: The referee agent uses SQLite to track blocks and settled matches, ensuring zero downtime recovery.
  • Robust Gas Management: Automated transaction retries and adaptive gas pricing for the Monad ecosystem.
  • Premium User Experience: Wallet-ready frontend with "Safe-Loading" address normalization to prevent checksum crashes.

Workflows

This repository includes custom agentic workflows for deployment and verification:

  • /deploy-monad: Automated deployment script for Foundry.
  • /verify-monad: Contract verification workflow for Monad Explorer/Sourcify.

Built with ❤️ on Monad

Michael Dean Oyewole


License

MIT License.

About

The Arbiter is the execution layer for trustless competitive gaming — an autonomous AI referee enabling high-speed competition, secure wagering, and verifiable settlement to unlock scalable wagering economies on Monad

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published