Join GitHub today
RFC 21: Scheduled publishing for revisions #21
Thanks @hakjoon! After much pondering and stepping through various permutations of page statuses / user actions, I can't see any issues with the logic here. I suspect the only reason we didn't allow simultaneously live and scheduled pages is that the scheduling feature was implemented before we had a 'page revisions' view in the admin, and without revisions as a user-facing concept it would have been too unclear what was going on.
I just have one addition to the open questions: once a page has been scheduled for publishing at a future date, how do we cancel that? To be fair, I think this question exists on the current implementation too - but having to make it work without clobbering an existing live revision would add an extra layer of complexity. I think the best answer we can offer as it stands is:
Responses to the open questions:
Yes, this seems like a good idea. Generating this status string will not be particularly efficient, since we'll need to look for a revision with
I think we also need some better messaging on the edit page to communicate the fact that a revision is scheduled, and/or the current draft revision has a future go-live date filled in, since these will cause the publish action to have unexpected effects. I'm happy with your proposed workflow for making changes to the current published revision while a scheduled revision exists, but I have visions of an editor in a mad scramble to fix some unacceptable content on the live version, not noticing that the go-live date is set to some future date, and finding that hitting 'publish' is having no effect on the live page...
No - I think this would introduce some altogether bigger snags to the logic, which would need extensive user interface updates to resolve. For example, when setting up a scheduled publish for a page that already has a revision scheduled, we'd need to distinguish between "schedule this version instead of the one that's already there" and "schedule this version in addition to the one that's already there".
No, I think this should be specified as a separate feature. The interaction between scheduled publishing and moderation workflow is logically sound as it stands: any go-live / expiry date set on the draft version and submitted (rather than published) is treated as a request for the moderator to approve, rather than something that's binding immediately. As far as I can see, the current proposal would continue to work under this model.
@hakjoon Yep, please update the document with my answers if you're satisfied that they resolve the questions. Once all the remaining open questions are crossed off, the RFC can go into "final comment" status where there's a week or so's window for anyone else to provide feedback - if no showstoppers come up at that point, it can be approved.
To address the new question about cancelling scheduled publishes I think we can tackle
Thought is if a revision has a