Rollup progress updates to parent OKRs
What does this MR do and why?
ref gitlab-org/incubation-engineering/okr/meta#7 (closed)
This MR introduces rollup updates to progress for OKRs. As of this iteration we are supporting both manual and automatic rollups, more details are here - #382433 (comment 1231635569)
FYI
The current logic will be async post this MR merge - since we are tight for MVC deadline(Jan 18), I took the synchronous route
Screenshots or screen recordings
How to set up and validate locally
- Open rails console by running
bin/rails console
within GDK directory. - Enable the feature flag
:hierarchy_db_restrictions
on a project;Feature.enable(:hierarchy_db_restrictions)
. - Enable the feature flag
:okrs_mvc
on the same project;Feature.enable(:okrs_mvc)
. - Enable the feature flag
:okr_automatic_rollups
on the same project;Feature.enable(:okr_automatic_rollups)
. - Visit issues list page for the project by navigating to
http://gdk.test:3000/gitlab-org/gitlab-test/-/issues
. - Create an objective by clicking on dropdown button next to
New issue
and selectingNew objective
from the dropdown. - Once objective is created, click on it to visit its Work Item page, you should be able to see Tree View below the description.
- Use
Add
dropdown button create/add key results. 1.Try changing the progress for the Objective and you should see the help note with text about the info regarding progress rollups - Click on any KR to go to it's page and change it's progress and go back to its objective page to see the updates progress
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Abhilash Kotte