Gorgoroth Trials: Multi-Client Testing for Olympia

The Gorgoroth Trials — a structured testing campaign for the Olympia network upgrade — launched to validate multi-client compatibility across the three Ethereum Classic client implementations. Named after the volcanic plateau in Tolkien's Mordor, the trials serve as a proving ground for protocol changes before testnet and mainnet activation.

## Three-Client Testing

The Olympia upgrade requires simultaneous support from all three ETC clients:

- **Core-Geth:** The Go-based client derived from go-ethereum, maintained as the primary ETC implementation
- **Hyperledger Besu:** The Java-based enterprise client maintained under the Linux Foundation
- **Fukuii:** A new Scala 3 implementation built specifically for Ethereum Classic, bringing a third independent codebase to the network

Testing across three independent implementations provides strong assurance that the protocol specification is unambiguous and correctly implemented. If all three clients — written in different languages by different teams — produce identical results, the specification is likely correct.

## Test Configurations

The trials defined progressively complex network configurations:

1. **Single-client baseline:** Three Fukuii nodes verifying internal consistency
2. **Fukuii + Core-Geth:** Mixed network testing Go and Scala implementations
3. **Fukuii + Besu:** Mixed network testing Scala and Java implementations
4. **Full mixed network:** All three clients operating together — the ultimate compatibility test

Each configuration validated:
- Block production and propagation across client boundaries
- Transaction pool synchronization
- Protocol rule enforcement consistency
- Mining compatibility across implementations
- Network discovery and peer management

## What's Being Tested

The Gorgoroth Trials specifically target Olympia protocol changes:

- **EIP-1559 fee market:** All three clients must calculate identical base fees, validate transaction types consistently, and handle the fee market transition correctly
- **Treasury redirection:** Base fee routing to the treasury contract must produce identical state transitions
- **Fork activation:** The upgrade boundary must be handled identically by all clients

## From Testing to Activation

The Gorgoroth Trials represent the first phase of a multi-stage testing process. Successful completion leads to Mordor testnet activation, where the upgrade runs on a public proof-of-work network before mainnet deployment. This methodical approach — private testing, public testnet, then mainnet — follows established blockchain upgrade best practices.