# Federated Retraining

Every \~10,000 rounds, validators collaboratively update models.

### 🔄 Steps:

1. Compute local gradients from recent (features, truth) samples
2. Share gradients via MPC
3. Aggregate into new model weights
4. Generate zk-SNARK that loss is minimized
5. Submit:

```solidity
function updateModel(bytes32 newHash, bytes calldata proof) external;
```

6. Nodes pull updated weights automatically

> 🤝 Keeps consensus models adaptive while preserving privacy and integrity.
