Skip to content

Commit fba856a

Browse files
authored
fix exp to query insiders population (#722)
Signed-off-by: Yan Zhang <[email protected]>
1 parent 56494eb commit fba856a

File tree

3 files changed

+17
-8
lines changed

3 files changed

+17
-8
lines changed

src/exp/TreatmentVariables.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@
44
export class TreatmentVariables {
55
public static readonly VSCodeConfig = 'vscode';
66
public static readonly PresentWelcomePageByDefault = 'presentWelcomePageByDefault';
7-
public static readonly JavaWalkthroughEnabled = "vscode.gettingStarted.overrideCategory.vscjava.vscode-java-pack.javaWelcome.when"
7+
public static readonly JavaWalkthroughEnabled = "gettingStarted.overrideCategory.vscjava.vscode-java-pack.javaWelcome.when"
88
}

src/exp/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export async function initialize(context: vscode.ExtensionContext) {
3333
expService = await getExperimentationServiceAsync(
3434
getExtensionName(),
3535
getExtensionVersion(),
36-
TargetPopulation.Public,
36+
TargetPopulation.Insiders,
3737
new ExperimentationTelemetry(),
3838
context.globalState
3939
);

src/utils/walkthrough.ts

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,23 @@ import { getExpService } from "../exp";
66
import { TreatmentVariables } from "../exp/TreatmentVariables";
77

88
// local cache before EXP starts, otherwise it always returns undefined, and keeps querying service.
9-
let fromExpCache: boolean;
9+
let enabledByExp: boolean;
10+
1011
export async function isWalkthroughEnabled() {
11-
const fromExp = fromExpCache ?? await getExpService()?.getTreatmentVariableAsync<boolean>(TreatmentVariables.VSCodeConfig, TreatmentVariables.JavaWalkthroughEnabled, true /* checkCache */) ?? false;
12-
fromExpCache = fromExp;
13-
1412
// can be overridden by local settings "experiments.override.gettingStarted.overrideCategory.vscjava.vscode-java-pack.javaWelcome.when": "true"
1513
// '#' -> '.' since https://github.com/microsoft/vscode/commit/fe671f300845ca5161885125b1e12d43fc25ccf8
16-
const fromSettings = workspace.getConfiguration("experiments.override.gettingStarted.overrideCategory").get<string>("vscjava.vscode-java-pack.javaWelcome.when") === "true";
14+
const fromSettings: string | undefined = workspace.getConfiguration("experiments.override.gettingStarted.overrideCategory").get<string>("vscjava.vscode-java-pack.javaWelcome.when");
15+
switch (fromSettings) {
16+
case "true":
17+
return true;
18+
case "false":
19+
return false;
20+
default:
21+
}
1722

18-
return fromExp || fromSettings;
23+
if (enabledByExp === undefined) {
24+
const flightValue = await getExpService()?.getTreatmentVariableAsync<string>(TreatmentVariables.VSCodeConfig, TreatmentVariables.JavaWalkthroughEnabled, true /* checkCache */);
25+
enabledByExp = (flightValue === "true");
26+
}
27+
return enabledByExp;
1928
}

0 commit comments

Comments
 (0)