src/common/feature_flags/constants.ts (40 lines of code) (raw):
// Add your feature flag here
export enum FeatureFlag {
// used for testing purposes
TestFlag = 'testflag',
RemoteSecurityScans = 'remoteSecurityScans',
SecurityScans = 'securityScansFlag',
ForceCodeSuggestionsViaMonolith = 'forceCodeSuggestionsViaMonolith',
LanguageServer = 'languageServer',
LanguageServerWebIDE = 'languageServerWebIDE',
CodeSuggestionsClientDirectToGateway = 'codeSuggestionsClientDirectToGateway',
StreamCodeGenerations = 'streamCodeGenerations',
CodeSuggestionsLicensePolicy = 'codeSuggestionsLicensePolicy',
LanguageServerWebviews = 'languageServerWebviews',
DuoWorkflowBinary = 'duoWorkflowBinary',
DuoWorkflowSearch = 'duoWorkflowSearch',
DuoWorkflowPanel = 'duoWorkflowPanel',
FixWithDuoQuickChatCodeActions = 'fixWithDuoQuickChatCodeActions',
LsCredentialsSync = 'lsCredentialsSync',
AgenticDuoChat = 'agenticDuoChat',
}
// Set the feature flag default value here
export const FEATURE_FLAGS_DEFAULT_VALUES = {
[FeatureFlag.RemoteSecurityScans]: true,
[FeatureFlag.SecurityScans]: true,
[FeatureFlag.ForceCodeSuggestionsViaMonolith]: false,
[FeatureFlag.TestFlag]: false,
[FeatureFlag.LanguageServer]: true,
[FeatureFlag.CodeSuggestionsClientDirectToGateway]: true,
[FeatureFlag.LanguageServerWebIDE]: false,
[FeatureFlag.StreamCodeGenerations]: true,
[FeatureFlag.CodeSuggestionsLicensePolicy]: true,
[FeatureFlag.LanguageServerWebviews]: true,
[FeatureFlag.DuoWorkflowBinary]: false,
[FeatureFlag.DuoWorkflowSearch]: false,
[FeatureFlag.DuoWorkflowPanel]: false,
[FeatureFlag.FixWithDuoQuickChatCodeActions]: false,
[FeatureFlag.LsCredentialsSync]: true,
[FeatureFlag.AgenticDuoChat]: false,
};
// PLEASE NOTE: We can only query 20 flags at a time so this list shouldn't grow past that.
// https://gitlab.com/gitlab-org/gitlab/-/blob/933b5643feebe1feb471be2652d98497c17bc65b/app/graphql/resolvers/app_config/gitlab_instance_feature_flags_resolver.rb#L7
export enum InstanceFeatureFlag {
DuoWorkflow = 'duo_workflow',
}
export const INSTANCE_FEATURE_FLAGS = Object.values(InstanceFeatureFlag);