List view: decoded summaries for ATR/PPS/RST/VCC instead of raw hex
- decode.py: decode_sniff_msg builds list summaries — ATR: protocol(s),
TA1 F/D + ratio, T=15 classes, data rate (when a CLK rate was known);
PPS: protocol + F/D + ratio; RST: 'CLK x.xxx MHz' when the event
carried a rate
- index.html: cmd_description returns summary || '' for these types and
STATUS, never falling back to opaque bytes like 010100
- tests: ATR (plain/TA1/classes+rate/unparsed), PPS, RST CLK/no-CLK, VCC
- Bump 1.22.20, SW cache v51->v52