Steps to replicate the issue:
- Create a page in the main namespace (revision 1)
- Change its content model to something else, e.g. plaintext via Special:ChangeContentModel (revision 2)
- In the page history, select the original revision 1 and try to edit it.
What happens?:
The page is read-only, and has the following message:
You cannot edit this revision because its content model is $1, which differs from the current content model of the page $2.
What should happen instead?:
Assuming the editor has the necessary user rights (editpage AND changecontentmodel), the page should be editable, though a grey info note should be shown warning the editor that the content model is different to the current content model.
Saving the page should (1) change the content model, (2) the edit summary should be tagged with [content model change] and (3) trigger an entry in the content model change log. The content change model log should be something like:
changed content model of page [[$1]] from $2 back to $3
Note the word back here!
If the user lacks either of the user rights editpage or changecontentmodel, the page should be read-only.
Other things like rollback should work as well, but let's get this implemented first.
I make no pretence that this is an important feature!