-
Notifications
You must be signed in to change notification settings - Fork 55
Processes
In the following text, PR author could be replaced by the core team if the PR author doesn't belong to the core team; meaning a contributor
When a PR is created by a developer, impacts in terms of a11y and design must be evaluated; it means that if the PR impacts the a11y or the design in any way, it must be reviewed, and so approved, by the ODS accessibility experts and/or ODS design experts.
- If a11y is impacted, the PR author must add the "upcoming a11y review" label
- If the design is impacted, the PR author must add the "upcoming design review" label
PR life continues, and discussions happen between the author, developers, designers, and a11y experts as usual.
At some point, the PR is ready for the first review step: the technical review by a maintainer of Boosted; a developer of the core team. This step is essential so that at least 2 developers agree on the content. They will ensure together that basic checks are done regarding a11y and design with their own knowledge so that our a11y and design reviewers don't lose time with basic feedback.
Once the PR is approved by at least one member of the dev core team, it's now ready to be reviewed by the other fields depending on the content of the PR.
- If there was an "upcoming a11y review" label,
- replace it with a "ready for a11y review" label
- ping our a11y experts in the PR discussion
- If there was an "upcoming design review" label,
- replace it with a "ready for design review" label
- create a card in the Design Board:
- with "Dev. Design >> {PR number}" as a title
- with the PR link in the description
- with "web" label at least, and "component"/"module" labels depending on the use cases
- and affect it to the designers
- if an a11y review must be done at the same time, also affect it to the a11y experts
ℹ️ Here is how one can access to the filtered view with several labels: https://github.com/Orange-OpenSource/Orange-Boosted-Bootstrap/pulls?q=is%3Aopen+is%3Apr+label%3A%22ready+for+design+review%22%2C%22upcoming+design+review%22+
Seal of approval!
- When the a11y review is over, replace "ready for a11y review" label with "passed a11y review" label
- When the design review is over, replace "ready for design review" label with "passed design review" label
When there are no more "ready for * review" labels in this PR, it's ready for a final technical review. Once it's done, the PR is merged!
Diagram representation of Boosted PRs workflow.
stateDiagram-v2
[*] --> State1
State1: Draft
note left of State1
PR is in development and can't be reviewed officially
end note
State1 --> State2
State2: Ready for review
note left of State2
Developer has checked all the content and the DoD.
PR is ready for review.
Anyone can make the first review.
end note
State2 --> State3
State3: Review in progress (1)
State3 --> State2
State3 --> State4
State4: Approved (1)
note left of State4
Reviewer must approve the PR.
end note
State4 --> State5: (Optional)
State5: Ready for a11y review
State5 --> State6
State6: A11y review in progress
State6 --> State5
State6 --> State7
State7: A11y review done
note right of State7
A11y reviewer approve the PR (or at least comment the PR with a "OK")
end note
State7 --> State8: (Optional)
State4 --> State8: (Optional)
State8: Ready for design review
State8 --> State9
State9: Design review in progress
State9 --> State8
State9 --> State10
State10: Design review done
note right of State10
Design reviewer approve the PR (or at least comment the PR with a "OK")
end note
State10 --> State11
State7 --> State11: (if no design review)
State11: External reviews done
State11 --> State110: (if commits during a11y and/or design review)
State110: Check with reviewer 1
State110 --> State11
State4 --> State12: (if no a11y nor design review)
State11 --> State12
State12: Ready for final review
State12 --> State13
State13: Review in progress (2)
State13 --> State12
State13 --> State14
State14: Review done (2)
note left of State14
Reviewer must approve the PR.
end note
State14 --> State15
State15: Merged
State15 --> [*]