Use episode.playback_mark() here instead of mark(is_played=True). playback_mark() will do the right thing (if not now, then once we fix it ;).