- Go to https://en.wikipedia.beta.wmflabs.org/wiki/User:Jdforrester_(WMF)/sandbox?veaction=edit
- Edit the code block that begins with var question
- Try to view visual diff, get JS error
This happens because ve.ui.DiffElement#compareNodeAttributes calls .static.describeChanges( attributeChanges, attributeChange.newAttributes ); on the node class of the relevant node. Note that 2 parameters are passed. However, ve.dm.MWExtensionNode.static.describeChanges takes three parameters. The third parameter (element) ends up being undefined, and so calling ve.dm.nodeFactory.createFromElement( element ) results in an error.
For extra confusion, note that ve.dm.Model.static.describeChanges is defined to take only one parameter, despite being called with two and all subclasses' implementations taking either two, zero or three parameters.