Doesn't this need a `commit_on_success` decorator?