it seems a block whose rows were purged but whose link missed process_valids() remains unvalidated, so get_validated_fork() stops at that height and the confirm chaser never advances beyond it, which would match what i saw with the stuck block at 295002