Hardware identities shared across OpenLogi's protocol, device, and host layers.
This crate records facts needed on both sides of dependency boundaries: exact USB/HID identities, marketed product families, protocol families, driver families, and asset-registry model IDs. Protocol encoding, host I/O, and runtime capabilities stay with their owning crates.