Hmmmm. I don’t think I’ve ever launched a site that isn’t ‘done’. There is a design, it is developed, browsers tested and gone through a QA (Quality Assurance) process. Design elements are then tweaked as things may have changed along the way. Another round of testing and QA. Rinse and repeat until they are no lingering tasks/bugs/whatevers, then launch.
Sites that I do for myself, however, go up on live whenever I feel like it.