Many many more assertions, and we only clean up the recording array in completion when necessary.