Read the live PipeWire I/O, classify it into a DetectedResources inventory, fold any
discovered network devices into the network bucket, and log a one-line human summary
("detected: 2 mics, 4 outputs, 2 app streams, REAC: no"). The graph read is behind the
IoEnumerator seam so this runs — and is tested — without live pw-link.
Read the live PipeWire I/O, classify it into a DetectedResources inventory, fold any discovered network devices into the network bucket, and log a one-line human summary ("detected: 2 mics, 4 outputs, 2 app streams, REAC: no"). The graph read is behind the IoEnumerator seam so this runs — and is tested — without live
pw-link.