Proposal: Reworking the Quality - IL - ItemList flow

From Fallen London Wiki

The current method of adding Qualities and Equipment, where entries must be manually added to Module:IL/images (and a subpage of Module:ItemList for equipment) suffers from two main issues:

  • Editors must know / remember / bother to add a new image to the respective module page(s).
  • Edits to Module:IL/images trigger 43,400 instances of `refreshLinks` and `htmlCacheUpdate` jobs to be placed in the job queue, since any updates trigger MediaWiki to update every single page that makes use of Module:IL/images either directly or indirectly (so, e.g., Template:IL and all the templates in Category:Result effects templates). This results in significant (and unnecessary) resource consumption on the backend.

To fix both issues, I've tested a possible fix - using something similar to how Template:Options grabs a branch image. However, the naïve approach of transcluding the page and parsing it using Module:String, like Template:Options does, yielded extremely poor results.

A nine-fold increase in processing time, and a 90-fold increase in post-expand include size (PEIS).

An alternative approach, where I pass the title to a module that retrieves the page text, yielded more promising results:

The test template.
Template:IL, for comparison.

I'm of the opinion that this approach of outsourcing page retrieval to a module can also assist in cutting down the PEIS requirements of Template:Options, which would help both page processing times and likely alleviate the page size limit woes on pages like Convene a Board Meeting of the Great Hellbound Railway.

User:PSGarak has an alternative proposal, where Semantic MediaWiki attributes are used to store and retrieve the page image directly.

I'd like to invite feedback on these approaches. I know for certain that this approach requires no changes to the vast majority of Item and Quality pages, though I'm unfamiliar with how Semantic MediaWiki works.