Discussion of stream configuration has repeatedly collided with the iceberg of only existing in vague bags of configuration nestled somewhere in InitialiseSettings.php.
- How to divide responsibilities between stream configuration and schema
- How to document stream configuration
- How to specify a structure for the stream configuration
- How to build a process around deploying and modifying stream configuration
In contrast, our schema system, while still evolving, has the definite benefit of being tangible for its users, and easily browsed at schema.wikimedia.org.
In discussions of how to start leveling up the stream configuration, @Ottomata and I discussed the possibility of writing a stream configuration schema that could be at least validated by the EventStreamConfig extension. A second question is whether stream configuration might be maintained themselves in the same way that schema are, as part of a repository of YAML files which evolve over time and leave a paper trail. However, unlike schema, they would suffer few(er) backwards compatibility concerns, and the two could interact. Perhaps the stream configurations could even be in the same repository as the schema, just under a different directory.
The problem then becomes how this YAML (or whatever), in its own repository, makes its way into Mediawiki config. We might develop that process in a variety of ways, and that is what we can discuss on this ticket.