You shouldn't have to write a OS Kernel or a modern browser in your spare time either. I'd say it would be about 4-8 hours work that shows off your skills.
But if you prefer to spend that same time on some inane made-up problem for one employer and code something that you will wont enjoy writing and never use again, then as I said in another reply that there should be the option for that too.
> Many other fields require competency tests
Is there a field that requires 4-8hr competency tests where each test is wildly different from the previous, with completely opaque criteria. At least with the provide your own project idea, if the employer has fucked up criteria the candidate has only wasted a few seconds of their time in sending the zip file.
Kind of analogous to 'show me your portfolio' for a photographer. The portfolio should be enough. Unfortunately this is not possible as a developer as the source from your previous jobs is likely to be closed, hence the need for a personal project.