...answering my own question. It looks like auto commit for the confluent_kafka consumer does not mean that commit is called on object desctruction; I have to explicitly call the close method on my consumer to make sure that offsets are committed.
I'm still a little perplexed that it didn't just start over from the beginning when I ran it the second time, but at least I can get it to work.