Page MenuHomePhabricator

[SPIKE] learn how we can use community configuration for Edit Check
Closed, ResolvedPublic

Description

We've looked into it in the past. We know the types of configurations we are using right now for Edit Check.

Learn what would work, what's possibly missing within community configuration to configure Edit Check on each wiki.

Learning objectives

  1. What – if any – assumptions/decisions has Editing made in the context of mw:Edit check/Configuration that would need to be reconsidered in order for us to offer this functionality within Growth's Community Configuration?
  2. For any discrepancies that surface through "1.", estimate and document effort/work involved with making them compatible

Event Timeline

I mocked up a community configuration page where we can configure all the checks we currently have. It's doable - most of the current checks’ configs could remain unchanged and be easily represented in the schema and usable in cc, and TextMatch would need only minor updates to its config. However, this page is probably not what we're looking for right now.

Limitations/considerations:

  • As our config structure currently stands (all in one file), the community config schema would need to stay updated when new checks are built; we couldn't just resort to updating the JSON file, as it needs to match the cc schema. This means any check defined outside of core VisualEditor extension (gadget, other extension, etc) can’t be configured at all via either a cc page or manual editing of the JSON file.
  • Not all checks warrant a cc page; some might only need updates once a year and wouldn’t gain much from having a UI like this.

My thoughts for next steps:

  • Decouple the cc schema and json. Make it so that any configuration can still be done in raw json, even if not supported in cc. Among other benefits, this would allow us to keep exploring use of cc without worrying about its effects on all checks.
  • Limit - for now - what we're trying to use cc for; rather than fitting every check into it, we could try it for individual checks where a UI would be most valuable, like TextMatch.
  • We could also have a community config page that just allows enabling/disabling each check.