Move hardware results into the sections implementers follow: history
counts are 4-byte units, frames can be 160 bytes, transfers are padded and
end with a length field, and status and marks are raw values. Add real
frame vectors and the capture replay format so other languages can test.
Change history_count to request units, with a margin for stop records.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Spec with pseudocode and test vectors, APK disassembly, analysis tools,
shelved reference Python and the macOS BLE probe. Findings are not yet
validated against a real tag. The vendor XAPK and nested lib clone are
excluded.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EinWd3UT2Xw7UakFtTp6hn