Use OfflineFeatures when !supportsFeatureFlags as well

This commit is contained in:
Michael B. Gale
2026-02-15 16:03:48 +00:00
parent 7af50a43c1
commit db834c9e1d
8 changed files with 71 additions and 109 deletions
+9 -13
View File
@@ -107897,10 +107897,9 @@ var OfflineFeatures = class {
};
var Features = class extends OfflineFeatures {
gitHubFeatureFlags;
constructor(gitHubVersion, repositoryNwo, tempDir, logger) {
constructor(repositoryNwo, tempDir, logger) {
super(logger);
this.gitHubFeatureFlags = new GitHubFeatureFlags(
gitHubVersion,
repositoryNwo,
path5.join(tempDir, FEATURE_FLAGS_FILE_NAME),
logger
@@ -107940,8 +107939,7 @@ var Features = class extends OfflineFeatures {
}
};
var GitHubFeatureFlags = class {
constructor(gitHubVersion, repositoryNwo, featureFlagsFile, logger) {
this.gitHubVersion = gitHubVersion;
constructor(repositoryNwo, featureFlagsFile, logger) {
this.repositoryNwo = repositoryNwo;
this.featureFlagsFile = featureFlagsFile;
this.logger = logger;
@@ -108056,13 +108054,6 @@ var GitHubFeatureFlags = class {
}
}
async loadApiResponse() {
if (!supportsFeatureFlags(this.gitHubVersion.type)) {
this.logger.debug(
"Not running against github.com. Using default values for all features."
);
this.hasAccessedRemoteFeatureFlags = false;
return {};
}
try {
const featuresToRequest = Object.entries(featureConfig).filter(
([, config]) => !config.legacyApi
@@ -108115,13 +108106,18 @@ function supportsFeatureFlags(githubVariant) {
return githubVariant === "GitHub.com" /* DOTCOM */ || githubVariant === "GitHub Enterprise Cloud with data residency" /* GHEC_DR */;
}
function initFeatures(gitHubVersion, repositoryNwo, tempDir, logger) {
if (isCCR()) {
if (!supportsFeatureFlags(gitHubVersion.type)) {
logger.debug(
"Not running against github.com. Using default values for all features."
);
return new OfflineFeatures(logger);
} else if (isCCR()) {
logger.debug(
"Querying feature flags is not currently supported in Copilot Code Review. Using offline data for all features."
);
return new OfflineFeatures(logger);
} else {
return new Features(gitHubVersion, repositoryNwo, tempDir, logger);
return new Features(repositoryNwo, tempDir, logger);
}
}
+9 -13
View File
@@ -104234,10 +104234,9 @@ var OfflineFeatures = class {
};
var Features = class extends OfflineFeatures {
gitHubFeatureFlags;
constructor(gitHubVersion, repositoryNwo, tempDir, logger) {
constructor(repositoryNwo, tempDir, logger) {
super(logger);
this.gitHubFeatureFlags = new GitHubFeatureFlags(
gitHubVersion,
repositoryNwo,
path3.join(tempDir, FEATURE_FLAGS_FILE_NAME),
logger
@@ -104277,8 +104276,7 @@ var Features = class extends OfflineFeatures {
}
};
var GitHubFeatureFlags = class {
constructor(gitHubVersion, repositoryNwo, featureFlagsFile, logger) {
this.gitHubVersion = gitHubVersion;
constructor(repositoryNwo, featureFlagsFile, logger) {
this.repositoryNwo = repositoryNwo;
this.featureFlagsFile = featureFlagsFile;
this.logger = logger;
@@ -104393,13 +104391,6 @@ var GitHubFeatureFlags = class {
}
}
async loadApiResponse() {
if (!supportsFeatureFlags(this.gitHubVersion.type)) {
this.logger.debug(
"Not running against github.com. Using default values for all features."
);
this.hasAccessedRemoteFeatureFlags = false;
return {};
}
try {
const featuresToRequest = Object.entries(featureConfig).filter(
([, config]) => !config.legacyApi
@@ -104452,13 +104443,18 @@ function supportsFeatureFlags(githubVariant) {
return githubVariant === "GitHub.com" /* DOTCOM */ || githubVariant === "GitHub Enterprise Cloud with data residency" /* GHEC_DR */;
}
function initFeatures(gitHubVersion, repositoryNwo, tempDir, logger) {
if (isCCR()) {
if (!supportsFeatureFlags(gitHubVersion.type)) {
logger.debug(
"Not running against github.com. Using default values for all features."
);
return new OfflineFeatures(logger);
} else if (isCCR()) {
logger.debug(
"Querying feature flags is not currently supported in Copilot Code Review. Using offline data for all features."
);
return new OfflineFeatures(logger);
} else {
return new Features(gitHubVersion, repositoryNwo, tempDir, logger);
return new Features(repositoryNwo, tempDir, logger);
}
}
+9 -13
View File
@@ -165223,10 +165223,9 @@ var OfflineFeatures = class {
};
var Features = class extends OfflineFeatures {
gitHubFeatureFlags;
constructor(gitHubVersion, repositoryNwo, tempDir, logger) {
constructor(repositoryNwo, tempDir, logger) {
super(logger);
this.gitHubFeatureFlags = new GitHubFeatureFlags(
gitHubVersion,
repositoryNwo,
path4.join(tempDir, FEATURE_FLAGS_FILE_NAME),
logger
@@ -165266,8 +165265,7 @@ var Features = class extends OfflineFeatures {
}
};
var GitHubFeatureFlags = class {
constructor(gitHubVersion, repositoryNwo, featureFlagsFile, logger) {
this.gitHubVersion = gitHubVersion;
constructor(repositoryNwo, featureFlagsFile, logger) {
this.repositoryNwo = repositoryNwo;
this.featureFlagsFile = featureFlagsFile;
this.logger = logger;
@@ -165382,13 +165380,6 @@ var GitHubFeatureFlags = class {
}
}
async loadApiResponse() {
if (!supportsFeatureFlags(this.gitHubVersion.type)) {
this.logger.debug(
"Not running against github.com. Using default values for all features."
);
this.hasAccessedRemoteFeatureFlags = false;
return {};
}
try {
const featuresToRequest = Object.entries(featureConfig).filter(
([, config]) => !config.legacyApi
@@ -165441,13 +165432,18 @@ function supportsFeatureFlags(githubVariant) {
return githubVariant === "GitHub.com" /* DOTCOM */ || githubVariant === "GitHub Enterprise Cloud with data residency" /* GHEC_DR */;
}
function initFeatures(gitHubVersion, repositoryNwo, tempDir, logger) {
if (isCCR()) {
if (!supportsFeatureFlags(gitHubVersion.type)) {
logger.debug(
"Not running against github.com. Using default values for all features."
);
return new OfflineFeatures(logger);
} else if (isCCR()) {
logger.debug(
"Querying feature flags is not currently supported in Copilot Code Review. Using offline data for all features."
);
return new OfflineFeatures(logger);
} else {
return new Features(gitHubVersion, repositoryNwo, tempDir, logger);
return new Features(repositoryNwo, tempDir, logger);
}
}
+9 -13
View File
@@ -105430,10 +105430,9 @@ var OfflineFeatures = class {
};
var Features = class extends OfflineFeatures {
gitHubFeatureFlags;
constructor(gitHubVersion, repositoryNwo, tempDir, logger) {
constructor(repositoryNwo, tempDir, logger) {
super(logger);
this.gitHubFeatureFlags = new GitHubFeatureFlags(
gitHubVersion,
repositoryNwo,
path6.join(tempDir, FEATURE_FLAGS_FILE_NAME),
logger
@@ -105473,8 +105472,7 @@ var Features = class extends OfflineFeatures {
}
};
var GitHubFeatureFlags = class {
constructor(gitHubVersion, repositoryNwo, featureFlagsFile, logger) {
this.gitHubVersion = gitHubVersion;
constructor(repositoryNwo, featureFlagsFile, logger) {
this.repositoryNwo = repositoryNwo;
this.featureFlagsFile = featureFlagsFile;
this.logger = logger;
@@ -105589,13 +105587,6 @@ var GitHubFeatureFlags = class {
}
}
async loadApiResponse() {
if (!supportsFeatureFlags(this.gitHubVersion.type)) {
this.logger.debug(
"Not running against github.com. Using default values for all features."
);
this.hasAccessedRemoteFeatureFlags = false;
return {};
}
try {
const featuresToRequest = Object.entries(featureConfig).filter(
([, config]) => !config.legacyApi
@@ -105648,13 +105639,18 @@ function supportsFeatureFlags(githubVariant) {
return githubVariant === "GitHub.com" /* DOTCOM */ || githubVariant === "GitHub Enterprise Cloud with data residency" /* GHEC_DR */;
}
function initFeatures(gitHubVersion, repositoryNwo, tempDir, logger) {
if (isCCR()) {
if (!supportsFeatureFlags(gitHubVersion.type)) {
logger.debug(
"Not running against github.com. Using default values for all features."
);
return new OfflineFeatures(logger);
} else if (isCCR()) {
logger.debug(
"Querying feature flags is not currently supported in Copilot Code Review. Using offline data for all features."
);
return new OfflineFeatures(logger);
} else {
return new Features(gitHubVersion, repositoryNwo, tempDir, logger);
return new Features(repositoryNwo, tempDir, logger);
}
}
+9 -13
View File
@@ -104135,10 +104135,9 @@ var OfflineFeatures = class {
};
var Features = class extends OfflineFeatures {
gitHubFeatureFlags;
constructor(gitHubVersion, repositoryNwo, tempDir, logger) {
constructor(repositoryNwo, tempDir, logger) {
super(logger);
this.gitHubFeatureFlags = new GitHubFeatureFlags(
gitHubVersion,
repositoryNwo,
path4.join(tempDir, FEATURE_FLAGS_FILE_NAME),
logger
@@ -104178,8 +104177,7 @@ var Features = class extends OfflineFeatures {
}
};
var GitHubFeatureFlags = class {
constructor(gitHubVersion, repositoryNwo, featureFlagsFile, logger) {
this.gitHubVersion = gitHubVersion;
constructor(repositoryNwo, featureFlagsFile, logger) {
this.repositoryNwo = repositoryNwo;
this.featureFlagsFile = featureFlagsFile;
this.logger = logger;
@@ -104294,13 +104292,6 @@ var GitHubFeatureFlags = class {
}
}
async loadApiResponse() {
if (!supportsFeatureFlags(this.gitHubVersion.type)) {
this.logger.debug(
"Not running against github.com. Using default values for all features."
);
this.hasAccessedRemoteFeatureFlags = false;
return {};
}
try {
const featuresToRequest = Object.entries(featureConfig).filter(
([, config]) => !config.legacyApi
@@ -104353,13 +104344,18 @@ function supportsFeatureFlags(githubVariant) {
return githubVariant === "GitHub.com" /* DOTCOM */ || githubVariant === "GitHub Enterprise Cloud with data residency" /* GHEC_DR */;
}
function initFeatures(gitHubVersion, repositoryNwo, tempDir, logger) {
if (isCCR()) {
if (!supportsFeatureFlags(gitHubVersion.type)) {
logger.debug(
"Not running against github.com. Using default values for all features."
);
return new OfflineFeatures(logger);
} else if (isCCR()) {
logger.debug(
"Querying feature flags is not currently supported in Copilot Code Review. Using offline data for all features."
);
return new OfflineFeatures(logger);
} else {
return new Features(gitHubVersion, repositoryNwo, tempDir, logger);
return new Features(repositoryNwo, tempDir, logger);
}
}
+9 -13
View File
@@ -120928,10 +120928,9 @@ var OfflineFeatures = class {
};
var Features = class extends OfflineFeatures {
gitHubFeatureFlags;
constructor(gitHubVersion, repositoryNwo, tempDir, logger) {
constructor(repositoryNwo, tempDir, logger) {
super(logger);
this.gitHubFeatureFlags = new GitHubFeatureFlags(
gitHubVersion,
repositoryNwo,
path.join(tempDir, FEATURE_FLAGS_FILE_NAME),
logger
@@ -120971,8 +120970,7 @@ var Features = class extends OfflineFeatures {
}
};
var GitHubFeatureFlags = class {
constructor(gitHubVersion, repositoryNwo, featureFlagsFile, logger) {
this.gitHubVersion = gitHubVersion;
constructor(repositoryNwo, featureFlagsFile, logger) {
this.repositoryNwo = repositoryNwo;
this.featureFlagsFile = featureFlagsFile;
this.logger = logger;
@@ -121087,13 +121085,6 @@ var GitHubFeatureFlags = class {
}
}
async loadApiResponse() {
if (!supportsFeatureFlags(this.gitHubVersion.type)) {
this.logger.debug(
"Not running against github.com. Using default values for all features."
);
this.hasAccessedRemoteFeatureFlags = false;
return {};
}
try {
const featuresToRequest = Object.entries(featureConfig).filter(
([, config]) => !config.legacyApi
@@ -121146,13 +121137,18 @@ function supportsFeatureFlags(githubVariant) {
return githubVariant === "GitHub.com" /* DOTCOM */ || githubVariant === "GitHub Enterprise Cloud with data residency" /* GHEC_DR */;
}
function initFeatures(gitHubVersion, repositoryNwo, tempDir, logger) {
if (isCCR()) {
if (!supportsFeatureFlags(gitHubVersion.type)) {
logger.debug(
"Not running against github.com. Using default values for all features."
);
return new OfflineFeatures(logger);
} else if (isCCR()) {
logger.debug(
"Querying feature flags is not currently supported in Copilot Code Review. Using offline data for all features."
);
return new OfflineFeatures(logger);
} else {
return new Features(gitHubVersion, repositoryNwo, tempDir, logger);
return new Features(repositoryNwo, tempDir, logger);
}
}
+9 -13
View File
@@ -107085,10 +107085,9 @@ var OfflineFeatures = class {
};
var Features = class extends OfflineFeatures {
gitHubFeatureFlags;
constructor(gitHubVersion, repositoryNwo, tempDir, logger) {
constructor(repositoryNwo, tempDir, logger) {
super(logger);
this.gitHubFeatureFlags = new GitHubFeatureFlags(
gitHubVersion,
repositoryNwo,
path4.join(tempDir, FEATURE_FLAGS_FILE_NAME),
logger
@@ -107128,8 +107127,7 @@ var Features = class extends OfflineFeatures {
}
};
var GitHubFeatureFlags = class {
constructor(gitHubVersion, repositoryNwo, featureFlagsFile, logger) {
this.gitHubVersion = gitHubVersion;
constructor(repositoryNwo, featureFlagsFile, logger) {
this.repositoryNwo = repositoryNwo;
this.featureFlagsFile = featureFlagsFile;
this.logger = logger;
@@ -107244,13 +107242,6 @@ var GitHubFeatureFlags = class {
}
}
async loadApiResponse() {
if (!supportsFeatureFlags(this.gitHubVersion.type)) {
this.logger.debug(
"Not running against github.com. Using default values for all features."
);
this.hasAccessedRemoteFeatureFlags = false;
return {};
}
try {
const featuresToRequest = Object.entries(featureConfig).filter(
([, config]) => !config.legacyApi
@@ -107303,13 +107294,18 @@ function supportsFeatureFlags(githubVariant) {
return githubVariant === "GitHub.com" /* DOTCOM */ || githubVariant === "GitHub Enterprise Cloud with data residency" /* GHEC_DR */;
}
function initFeatures(gitHubVersion, repositoryNwo, tempDir, logger) {
if (isCCR()) {
if (!supportsFeatureFlags(gitHubVersion.type)) {
logger.debug(
"Not running against github.com. Using default values for all features."
);
return new OfflineFeatures(logger);
} else if (isCCR()) {
logger.debug(
"Querying feature flags is not currently supported in Copilot Code Review. Using offline data for all features."
);
return new OfflineFeatures(logger);
} else {
return new Features(gitHubVersion, repositoryNwo, tempDir, logger);
return new Features(repositoryNwo, tempDir, logger);
}
}