If we had a typechecker who understood things with holes in, we could build them in a top-down fashion, checking them whenever we like. In particular, we can ask him to confirm that each move we make is acceptable, so that when we eventually wheel the finished work of art up the garden path in the wheelbarrow, we know it will meet with approval.
This is the way proof assistants work. However, in LEGO, the treatment of holes is not entirely reliable. That's not the typechecker, you see... That's the typechecker's evil twin! Sometimes he lies and accepts steps he should forbid, and when we wheel the proof outside, the real typechecker says no.
So what do we need?