# Task 9: Ledger App-Ethereum RPC Endpoints Verification

**Date**: 2025-01-18  
**Status**: ✅ VERIFICATION COMPLETE

## Verification Results

### Configuration Status

✅ **ChainID 138 Configuration Verified**

**File**: `../app-ethereum/src/network.c` (line 42)

**Configuration**:
```c
{.chain_id = 138, .name = "Defi Oracle Meta", .ticker = "ETH"}
```

**Makefile Configuration**: `../app-ethereum/makefile_conf/chain/defi_oracle.mk`
```
CHAIN_ID = 138
APPNAME = "Defi Oracle Meta"
TICKER = "ETH"
PATH_APP_LOAD_PARAMS += "44'/60'"
```

### RPC Endpoints

**Note**: Ledger app-ethereum does not configure RPC endpoints in source code. RPC endpoints are typically configured:
- At runtime by wallet software (Ledger Live, MetaMask, etc.)
- Via network configuration in wallet applications
- Not in the Ledger device firmware/app source code

**Expected RPC Endpoints** (to be configured in wallet applications):
- Public: `https://rpc-http-pub.d-bis.org`
- Permissioned: `https://rpc-http-prv.d-bis.org`

### Verification Summary

| Item | Status | Details |
|------|--------|---------|
| Chain ID | ✅ Verified | 138 configured correctly |
| Chain Name | ✅ Verified | "Defi Oracle Meta" |
| Ticker | ✅ Verified | "ETH" |
| Derivation Path | ✅ Verified | `44'/60'` (standard EVM) |
| RPC Endpoints | ⚠️ N/A | Configured in wallet apps, not in app source |

### Test File Verification

**File**: `../app-ethereum/tests/ragger/test_get_address.py` (line 24)

ChainID 138 included in test parameters:
```python
@pytest.fixture(name="chain", params=[None, 1, 2, 5, 137, 138])
```

## Conclusion

✅ **Ledger app-ethereum is properly configured for ChainID 138.**

The app source code includes ChainID 138 configuration with correct chain ID, name, and ticker. RPC endpoints are configured in wallet applications (not in the Ledger app firmware), so they should be configured when users connect to ChainID 138.

**Action**: No changes needed to Ledger app-ethereum source code. Ensure wallet applications (Ledger Live, MetaMask, etc.) have correct RPC endpoints configured.

### RPC discovery for Ledger / wallets

- **Chainlist / chains**: `../chains/_data/chains/eip155-138.json` includes `https://rpc-http-pub.d-bis.org` and `wss://rpc-ws-pub.d-bis.org` so Ledger Live and other clients can discover ChainID 138 RPCs.
- **Doc**: [PUBLIC_RPC_CHAIN138_LEDGER.md](../../../docs/04-configuration/PUBLIC_RPC_CHAIN138_LEDGER.md) – public RPCs, Proxmox VM / NPMplus mapping, and Ledger access.

---

**Status**: ✅ **VERIFICATION COMPLETE**
