The projects I do have never had final documentation before development started, and its not necessary.
I got this process from another Ruby consultant and it works great - Get wireframes of main page views (usually there are about 6 of these. You can help them create this - Get them to write out, or describe the requirements and take notes - Break the wireframes and requirements into user stories and load it into pivotal tracker with estimates - Tell them "we are going to build all these user stories PLUS 30 'freebie' points of stores. Any changes you want you can spend your freebie points on, and after that you can substitute out currently scheduled points if you really want those changes
It works great so far.