Hi Igniters,

It's glad to see our community becomes larger every day. But as it grows it
becomes more and more difficult to manage review and merge processes and
keep quality of our decisions at the proper level. More contributors, more
commits, more components interlinked with each other in subtle ways.

I would like to propose to setup a formal review checklist. This would be a
set of actions every reviewer needs to check before approving merge of a
certain feature. Passing the checklist would be *necessary but not
sufficient* phase before commit could be added to the main branch. The
checklist would help us to detect a lot of common problems such a broken
tests or bad UX earlier, and would help contributors lead their pull
requests to merge.

Hallmarks of a good checklist:
- It must be followed be everyone without exceptions
- It must be clear and disallow multiple interpretations
- It must be lightweight, otherwise Ignite development would become a
nightmare
- It must be non-blocking, i.e. inacessibility of a single contributor
should not block ticket progress forever.

Please let me know if you think the idea makes sense. If we agree on it,
let's start defining action items for the checklist. My 2 cents:
1) All unit tests pass on TC without new failures
2) If ticket targets specific component, it should be reviewed by
component's maintainer*
3) If ticket changes public API or existing behavior, at least two
commiters should approve the changes **

Thoughts?

Vladimir.

* TBD: Review component list and define maintainers; define what to do if
maintainer is unavailable
** TBD: Define what is "public API"

Reply via email to