Turing checkpointing by callbacks

How does one save a chain via callbacks in Turing? Right now, I have something like:

function checkpoint(rng, model, sampler, sample, state, i; kwargs...)
    if i % 1000 == 0
        serialize("testchainfull$i", chn)
    end
end

with the function being called in the callbacks keyword in the sample method. This doesn’t actually seem to save anything or error out. What am I missing?