Just a further observation, on one of our chips, within O(seconds) or O(minutes) of flashing it, I would try to query the Caravel ID registers and get garbage. We saw that if we halved the speed of the HKSPI 12MHz → 6MHz, the problem went away. Lowering the HKSPI bus speed brings it closer to the 2.5MHz of the SPI flash bus speed.