The calibrated cut
Always OK
CPU brand/class, logical processor count, RAM capacity, OS build/edition, disk capacity/free space
Shareable on display
GPU vendor+model summary, battery percentage, power-plugged state — informative, not identifying
Never in a bundle
Device serials, MACs, UUIDs, TPM IDs — unique-per-machine data with zero diagnostic necessity for the product to run
The tradeoff table
- SMART / NVMe health: readable in user scope, great diagnostic value — and writes a partial serial into model strings. Choosing summaries over identifiers keeps the safety contract intact.
- Network details: adapter names exist in clean logs routinely but MACs never; the former supports VPN diagnostics, the latter never does.
- Battery delta counts: full-charge capacity.percise cycle counts are tool-relevant for health assessments, not serials. Aggregates suffice.
Bundle contract in one line from the proof perspective: what would your tool need to know to help? Every extra field past that is either format-office chrome or an exfiltration surface — and the schema boundaries hold scope keys even when friendliness argues louder.