| `federation_agreements` | Full | `PostgresAgreementRepo.find_active_for_partner` (prefers the agreement valid now, else newest) | Used by inbound authorizer and outbound hand-off (`AgreementChecker`) |
| `routing_rules` | Full (incl. `UNIQUE(identifier_type, value_range, priority)`, partial active index) | `PostgresRoutingRuleRepo.list_active` | Matching lives in `domain/routing.py` (`RoutingResolver`): most specific match wins, `priority` breaks ties |
| `federation_transactions` | Not yet | — | Needed before first`command.srm.*` publish |
| `federation_transactions` | Full (incl. partial unique index on `federation_operation_id`) | `PostgresTransactionRepo.add`, `.record_outcome` | Written `pending` before the outbound EWBI call by `POST /internal/federation/outbound`; inbound`command.srm.*` path not wired yet |