User story & summary:
As a system administrator, I want to be able to make null edit, so that users viewing a page history are not confused by seeing unrelated changes.
Background & research:
With Special:EditGrowthConfig, additions of new form fields didn't take an effect in the underlying JSON files immediately (MediaWiki:GrowthExperimentsConfig.json and MediaWiki:NewcomerTasks.json). Instead, they were visible only after someone went to Special:EditGrowthConfig and submitted. Only then the editor realised there are new fields, and saved them to the JSON file.
This is far from ideal, as it generates confusion. An admin goes to Special:EditGrowthConfig wanting to make a certain change, but because there were fields added in the meantime, the diff would end up containing more changes than just what the admin wanted to do. This was reported to the Growth team in the past as T351008: Special:EditGrowthConfig makes unrelated edits.
We implemented a migrations system, which should help avoid certain such cases. Another action we can take to reduce chances of T351008 repeating is to make an empty edit to all providers from a system account. If what the editor would generate (with no changes made in the UI) is different than what is saved, then the empty edit would be recorded in the history using a maintenance account, rather than from the next editing admin's account.
Implementation-wise, this task would be resolved via some maintenance script. We probably do not need to create a new script for this – instead, it can be done as part of the script that will be created in T357535: Community configuration: Create a maintenance script for configuration changes.
Acceptance Criteria:
- Sysadmins have a maintenance script that can invoke an empty edit to the configuration