I've been thinking about doing some more work on the PublishContrib, to make it more useful for people who want controlled publishing processes, for example those who publish process manuals.
Here are some of the requirements I've been thinking about:
More flexible specification of publish sets, including publishing groups of webs
Record keeping (who published what, when, and what they published)
Michael Daum has related, but slightly different requirements. Michael publishes by copying content to a static web where it is picked up by a different CMS. So he has a common requirement to specify publish sets, but has additional requirements such as unpublishing, and automation of approval processes. Anyway, the upshot of the conversation was that we should have some common way of specifying "publish sets". The current method – regexes in the publish topic – is so crude as to be laughable. The obvious approach to specifying publish sets would be to use WebNotify, but as Michael points out that's far too geeky. Another approach would be to think about "specification" and focus on the UI, perhaps build on the SubScribePlugin. Another approach would be to use a wiki app to gather published content into one place, similar to the genwebnotify.pl approach taken to generate the notification mails from the Foswiki:Tasks web. Record keeping means maintaining unforgeable records of a publishing event. That means stamping the published docs with publishing information, including the history in the published data, and publishing to publish-event specific targets (e.g. directories named by the current date).
It would be interesting to hear what other ideas people have had.