A really useful feature, for me at least, would be to be able to apply workflows to the check in process and to track that process. Tracking the workflow process would be useful in general.
This would be my ideal history of a document and what would be recorded:
Document created by User1 and this is recorded
User1 puts document into Testing Tree.
A group of testing users is notified.
User2 approves the document and this is recorded.
The document then moves into an Approval Tree.
A group of approvers is notified.
Admin1 approves the document and this is recorded.
The document moves into the production tree.
User3 checks out that same document.
When he checks it in, it goes through the above workflow process again. Having the document know it was part of a workflow even after it has left the workflow would be good. It would allow the document to go back through the same creation workflow on editing. Informational documents for example, don't need to go through the testing step.
Recording that workflow history for each version would be good too. If it's rejected, being able to record why, notifying the modifier/author that it was rejected.
It seems like it's possible to prevent users from being able to check in documents by editing permissionsDefinitions.xml. I have not tried this yet though. Workflows do not work on checked out documents though.
Other people have asked for this, but I'll add my vote, better e-mail notifications would be good. If there'd be some default notification you could select, that would be even better. Document title, description, author or modifier, first 250 characters of the content, and a link to the document.
Maybe you're already working on all this, but I figured I'd throw it out there. The base of Alfresco really seems good, but it just lacks some key things I'd like.
Stephen