5.2.5b [Productionalize API spec linting]: If we finalize the linter architecture and a core set of linting rules, we can improve the quality of OpenAPI descriptions and start introducing programmatic guarantees of their compliance into CI workflows in API development processes.
This task collects the work related to improvements to the MediaWiki REST API OpenAPI description. For more general information and context, see the parent task. For detailed information about specific changes, see the subtasks.
Description from the merged task
Background
We treat the MediaWiki REST API as our flagship for testing and demonstrating desired API behaviors and experiences. As such, we must continually iterate and improve on these specs, particularly as we roll out new standards that we expect teams across the Foundation to follow. Today, our own specs do not meet these standards and can be improved.
Conditions of acceptance
- Propose sub-modules within MW REST API --> Halley will help with this
- Create 'tags' that reflect proposed modules within the MW REST API, so that they may be reviewed with contributors --> NOTE: We are starting with tags so the modules are not locked in; this will give us valuable validation and feedback about the groupings.
- Improve example quality for MW REST APIs
- MediaWiki REST API passes all linting rules
- New linting rules are added or established as needed
- Linting is enabled for CI on the MediaWiki REST API Module