The old metrics structure conflated producer-side and consumer-side data
into a single "egress" map, making fields like codel_drops (always 0 on
producer side) confusing and hiding consumer-side sojourn, flows, and
queue depth entirely. Replace PeerMetrics with TxPeerMetrics (per-dest
DRR stats), RxSourceMetrics (per-source drop attribution + ring transit),
and RxMetrics (consumer FQ-CoDel aggregate with sojourn, flows, queue
depth). Rename egress→tx, add rx section, rename fq_sojourn→drr_sojourn
and sojourn→ring_transit for self-documenting JSON output.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>