Sv2Frame::size_hint is documented to return:
0 when the frame length matches the header,
- a negative value when bytes are missing,
- a positive value when extra bytes are present.
However, when the header parses successfully but the payload is shorter than expected, the function returns an incorrect positive value instead of a negative delta.
The current implementation computes:
(bytes.len() - Header::SIZE) as isize + header.len() as isize
This produces a positive result even when bytes are missing.