@@ -80,13 +80,7 @@ def get_visible(
8080 with sentry_sdk .start_span (op = "GroupTypeRegistry.get_visible" ) as span :
8181 released = [gt for gt in self .all () if gt .released ]
8282 feature_to_grouptype = {
83- (
84- gt .build_visible_feature_name ()
85- if not gt .use_flagpole_for_all_features
86- else gt .build_visible_flagpole_feature_name ()
87- ): gt
88- for gt in self .all ()
89- if not gt .released
83+ gt .build_visible_feature_name (): gt for gt in self .all () if not gt .released
9084 }
9185 batch_features = features .batch_has (
9286 list (feature_to_grouptype .keys ()), actor = actor , organization = organization
@@ -188,26 +182,15 @@ class GroupType:
188182 # Defaults to true to maintain the default workflow notification behavior as it exists for error group types.
189183 enable_status_change_workflow_notifications : bool = True
190184 detector_config_schema : ClassVar [dict [str , Any ]] = {}
191- # Temporary setting so that we can slowly migrate all perf issues to use flagpole for all feature flags
192- use_flagpole_for_all_features = False
193185
194186 def __init_subclass__ (cls : type [GroupType ], ** kwargs : Any ) -> None :
195187 super ().__init_subclass__ (** kwargs )
196188 registry .add (cls )
197189
198190 if not cls .released :
199191 features .add (cls .build_visible_feature_name (), OrganizationFeature , True )
200- features .add (cls .build_ingest_feature_name (), OrganizationFeature )
201- features .add (cls .build_post_process_group_feature_name (), OrganizationFeature )
202-
203- # XXX: Temporary shim here. We can't use the existing feature flag names, because they're auto defined
204- # as being option backed. So options automator isn't able to validate them and fails. We'll instead
205- # move to new flag names
206- features .add (cls .build_visible_flagpole_feature_name (), OrganizationFeature , True )
207- features .add (cls .build_ingest_flagpole_feature_name (), OrganizationFeature , True )
208- features .add (
209- cls .build_post_process_group_flagpole_feature_name (), OrganizationFeature , True
210- )
192+ features .add (cls .build_ingest_feature_name (), OrganizationFeature , True )
193+ features .add (cls .build_post_process_group_feature_name (), OrganizationFeature , True )
211194
212195 def __post_init__ (self ) -> None :
213196 valid_categories = [category .value for category in GroupCategory ]
@@ -219,25 +202,14 @@ def allow_ingest(cls, organization: Organization) -> bool:
219202 if cls .released :
220203 return True
221204
222- flag_name = (
223- cls .build_ingest_feature_name ()
224- if not cls .use_flagpole_for_all_features
225- else cls .build_ingest_flagpole_feature_name ()
226- )
227- return features .has (flag_name , organization )
205+ return features .has (cls .build_ingest_feature_name (), organization )
228206
229207 @classmethod
230208 def allow_post_process_group (cls , organization : Organization ) -> bool :
231209 if cls .released :
232210 return True
233211
234- flag_name = (
235- cls .build_post_process_group_feature_name ()
236- if not cls .use_flagpole_for_all_features
237- else cls .build_post_process_group_flagpole_feature_name ()
238- )
239-
240- return features .has (flag_name , organization )
212+ return features .has (cls .build_post_process_group_feature_name (), organization )
241213
242214 @classmethod
243215 def should_detect_escalation (cls ) -> bool :
@@ -251,34 +223,21 @@ def build_feature_name_slug(cls) -> str:
251223 return cls .slug .replace ("_" , "-" )
252224
253225 @classmethod
254- def build_base_feature_name (cls , prefix : str = "" ) -> str :
255- return f"organizations:{ prefix } { cls .build_feature_name_slug ()} "
226+ def build_base_feature_name (cls ) -> str :
227+ return f"organizations:issue- { cls .build_feature_name_slug ()} "
256228
257229 @classmethod
258230 def build_visible_feature_name (cls ) -> str :
259231 return f"{ cls .build_base_feature_name ()} -visible"
260232
261- @classmethod
262- def build_visible_flagpole_feature_name (cls ) -> str :
263- # We'll rename this too so that all the feature names are consistent
264- return f"{ cls .build_base_feature_name ("issue-" )} -visible"
265-
266233 @classmethod
267234 def build_ingest_feature_name (cls ) -> str :
268235 return f"{ cls .build_base_feature_name ()} -ingest"
269236
270- @classmethod
271- def build_ingest_flagpole_feature_name (cls ) -> str :
272- return f"{ cls .build_base_feature_name ("issue-" )} -ingest"
273-
274237 @classmethod
275238 def build_post_process_group_feature_name (cls ) -> str :
276239 return f"{ cls .build_base_feature_name ()} -post-process-group"
277240
278- @classmethod
279- def build_post_process_group_flagpole_feature_name (cls ) -> str :
280- return f"{ cls .build_base_feature_name ("issue-" )} -post-process-group"
281-
282241
283242def get_all_group_type_ids () -> set [int ]:
284243 # TODO: Replace uses of this with the registry
@@ -600,7 +559,6 @@ class MetricIssuePOC(GroupType):
600559 enable_auto_resolve = False
601560 enable_escalation_detection = False
602561 enable_status_change_workflow_notifications = False
603- use_flagpole_for_all_features = True
604562
605563
606564def should_create_group (
0 commit comments