PostHog / posthog

🦔 PostHog provides open-source product analytics, session recording, feature flagging and A/B testing that you can self-host.
https://posthog.com
Other
20.3k stars 1.21k forks source link

Auto-archive stale feature flags #16497

Open annikaschmid opened 1 year ago

annikaschmid commented 1 year ago

Users have reported that they do remove flags from the code to avoid tech debt, but sometimes don't get around removing them in PostHog. In our own project as well, we have many flags that are not used anymore, or were never used. We can help users keeping PostHog up to date by detecting flags that are not used anymore, and recommend to archive them.

Requirements

We'd love to hear user feedback, as well as ideas for stretch goals or implementation. Please add to this issue!

If you like this idea, please leave a 👍 or ❤️ reaction on this post to vote for it -- your votes and feedback help us prioritize what to work on next!

nategrift commented 1 year ago

Hey! I would love to take this issue to explore area's I haven't touched yet, if it is not already taken. Would love some more information on what you would consider "not being used anymore." I am thinking something like 2-weeks, do you think this fits the PostHog user's needs?

As for archiving, I can throw an "archived" property on the feature flag model that prevents it from showing up in the flags list. To help me understand more, what is the difference between an "Archive" state and the "Disabled" state? Would they functionally be the same, minus their use case for users, or what major differences do you have in mind @annikaschmid? Thanks! 😄

neilkakkar commented 5 months ago

Another useful reason for archiving is experiments: When I archive an experiment, I get a list of disabled flags that hang around, which I can't delete because I don't want to delete the experiment, just archive it

roda-jason commented 2 weeks ago

I also have archived experiments that I want to retain the data for, but I want to be able to archive the related feature flag. Also, it would be great to be able to create an experiment from an existing feature flag. Our team sometimes creates the feature flag to start development only realizing when it comes time to launch that they needed to create it from an experiment.