1 Basically, what I need is a two-sided wiki:
3 * one side would be the published version, with the ikiwiki CGI disabled;
4 * another would be the developement version, which would be editable online.
6 These two sides would correspond to branches in the repository.
7 Each time someone makes a change to the developement version,
8 the created revision number would be added to a list of changes to be reviewed,
9 maybe by a pre/post-commit hook. This would be done only if a published version of
10 the page exists, and could be requested when a new page needs to be published.
11 Some kind of priviledged user could then move the change around,
12 from the "review needed" queue to the "accepted" or "rejected" ones.
13 This would be done in a way that would trigger the appropriate VCS merge operations.
15 A generic "change queue" mechanism could be used for translations or other stuff as well.
16 Each change would have its own wiki page under changes/revNNNN.
17 Change queues would be wiki pages as well (probably using [[inlines|plugins/inline]]);
18 [[Pagespecs|Pagespec]] and [[tags]] would be used to control the queues to which a given change would belong.