BUILD protocol plain: C99 strict warnings
PASS: CRC vector, STATUS/STOP framing, strict R1 validation, corruption, overflow/recovery, byte-gap timeout, shared D1 and 100000 random frames
BUILD runtime plain: C99 strict warnings
PASS UI runtime: startup/link allocation, OLED init/render fault latch, AP gating, independent link, counter saturation
BUILD protocol ASan/UBSan: C99 strict warnings
PASS: CRC vector, STATUS/STOP framing, strict R1 validation, corruption, overflow/recovery, byte-gap timeout, shared D1 and 100000 random frames
BUILD runtime ASan/UBSan: C99 strict warnings
PASS UI runtime: startup/link allocation, OLED init/render fault latch, AP gating, independent link, counter saturation
PASS: all host-only checks; physical GPIO/OLED/task-allocation fault injection remains untested
