Skip to content

Feature flag clean-up is part of development, not maintenance

Thiago Figueiró requested to merge thiagocsf-master-patch-59116 into master

What does this MR do and why?

Update the feature flag clean-up and roll-out issue templates to use featureaddition instead of maintenanceremoval.

The introduction, roll-out, and clean-up of a feature flag is part of feature development, not maintenance.

For cross-functional prioritization, issues labelled as typemaintenance fall within the Engineering's budget for maintenance.

From work type classification:

  • typefeature: Effort to deliver new features (...)
  • typemaintenance: Upkeeping efforts & catch-up corrective improvements that are not Features (...)
  • maintenanceremoval: Deprecation and removal of a functionality when it's no longer needed.

The functionality is needed, and the FF work is part of the effort of delivering it.

Note that the paragraph for typemaintenance in the page above also currently says:

This includes removing or altering feature flags (...)

This, in my opinion, is incorrect because when we introduce a FF as part of a feature, the plan is always to roll it out and then clean it up. We shouldn't be adding to our technical debt (typemaintenance) as part of our development process.

The page above is updated in gitlab-com/content-sites/handbook!2328 (closed).

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

Before After

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

Edited by Thiago Figueiró

Merge request reports