Skip to content

[AI-FSSDK] [FSSDK-12368] Remove legacy flag-level holdout fields #1549

[AI-FSSDK] [FSSDK-12368] Remove legacy flag-level holdout fields

[AI-FSSDK] [FSSDK-12368] Remove legacy flag-level holdout fields #1549

Triggered via pull request April 21, 2026 18:07
Status Failure
Total duration 8m 19s
Artifacts

javascript.yml

on: pull_request
Matrix: unit_tests
lint_markdown_files  /  lint
1m 9s
lint_markdown_files / lint
lint
1m 6s
lint
typescript_test
1m 35s
typescript_test
integration_tests  /  test
8s
integration_tests / test
fullstack_production_suite  /  test
5s
fullstack_production_suite / test
Matrix: browser_tests
Coveralls coverage
0s
Coveralls coverage
Fit to window
Zoom out
Zoom in

Annotations

33 errors and 23 warnings
unit_tests (22)
Process completed with exit code 1.
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2227:34
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2004:34
unit_tests (24)
The strategy configuration was canceled because "unit_tests._22" failed
unit_tests (24)
The operation was canceled.
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2227:34
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2004:34
unit_tests (20)
The strategy configuration was canceled because "unit_tests._22" failed
unit_tests (20)
The operation was canceled.
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2227:34
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2004:34
unit_tests (18)
The strategy configuration was canceled because "unit_tests._22" failed
unit_tests (18)
The operation was canceled.
browser_tests (safari)
Process completed with exit code 1.
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2227:41 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:28
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2004:41 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:28
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ AssertionError2 node_modules/assertion-error/index.js:74:22 ❯ lib/core/decision_service/index.spec.ts:2227:41 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:28
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ AssertionError2 node_modules/assertion-error/index.js:74:22 ❯ lib/core/decision_service/index.spec.ts:2004:41 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:28
browser_tests (edge)
Process completed with exit code 1.
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2227:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2004:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2227:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2004:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
browser_tests (chrome)
Process completed with exit code 1.
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2227:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2004:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2227:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ lib/core/decision_service/index.spec.ts:2004:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
browser_tests (firefox)
Process completed with exit code 1.
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ /home/runner/work/javascript-sdk/javascript-sdk/lib/core/decision_service/index.spec.ts/</</</</< lib/core/decision_service/index.spec.ts:2227:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ /home/runner/work/javascript-sdk/javascript-sdk/lib/core/decision_service/index.spec.ts/</</</</< lib/core/decision_service/index.spec.ts:2004:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should skip holdouts excluded for specific flags: lib/core/decision_service/index.spec.ts#L2227
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { …(3) } - Expected + Received { - "decisionSource": "feature-test", + "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", "4001", ], "audienceIds": [ "4001", ], - "forcedVariations": {}, - "id": "2001", - "key": "exp_1", - "layerId": "9300001480444", + "excludedFlags": [ + "1001", + ], + "id": "holdout_running_id", + "includedFlags": [], + "key": "holdout_running", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "5001", - }, - { - "endOfRange": 10000, - "entityId": "5001", + "entityId": "holdout_variation_running_id", }, ], "variationKeyMap": { - "variation_1": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "holdout_variation_running": { + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, }, "variations": [ { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, ], }, "variation": { - "featureEnabled": true, - "id": "5001", - "key": "variation_1", - "variables": [ - { - "id": "6001", - "value": "1", - }, - ], + "id": "holdout_variation_running_id", + "key": "holdout_variation_running", + "variables": [], }, } ❯ AssertionError2 node_modules/assertion-error/index.js:74:12 ❯ /home/runner/work/javascript-sdk/javascript-sdk/lib/core/decision_service/index.spec.ts/</</</</< lib/core/decision_service/index.spec.ts:2227:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
lib/core/decision_service/index.spec.ts > DecisionService > resolveVariationForFeatureList - async > holdout > should consider global holdout even if local holdout is present: lib/core/decision_service/index.spec.ts#L2004
AssertionError: expected { experiment: { …(10) }, …(2) } to deeply equal { experiment: { …(10) }, …(2) } - Expected + Received { "decisionSource": "holdout", "experiment": { "audienceConditions": [ "or", - "4001", + "4002", ], "audienceIds": [ - "4001", + "4002", ], "excludedFlags": [], - "id": "holdout_running_id", - "includedFlags": [], - "key": "holdout_running", + "id": "holdout_included_id", + "includedFlags": [ + "1001", + ], + "key": "holdout_included", "status": "Running", "trafficAllocation": [ { "endOfRange": 5000, - "entityId": "holdout_variation_running_id", + "entityId": "holdout_variation_included_id", }, ], "variationKeyMap": { - "holdout_variation_running": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "holdout_variation_included": { + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, }, "variations": [ { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, ], }, "variation": { - "id": "holdout_variation_running_id", - "key": "holdout_variation_running", + "id": "holdout_variation_included_id", + "key": "holdout_variation_included", "variables": [], }, } ❯ AssertionError2 node_modules/assertion-error/index.js:74:12 ❯ /home/runner/work/javascript-sdk/javascript-sdk/lib/core/decision_service/index.spec.ts/</</</</< lib/core/decision_service/index.spec.ts:2004:33 ❯ fulfilled lib/core/decision_service/index.spec.ts:42:24
fullstack_production_suite / test
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
integration_tests / test
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
lint
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3, actions/setup-node@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
lint: lib/client_factory.spec.ts#L59
Unexpected any. Specify a different type
lint: lib/client_factory.spec.ts#L58
Unexpected any. Specify a different type
lint: lib/client_factory.spec.ts#L54
Unexpected any. Specify a different type
lint: lib/client_factory.spec.ts#L53
Unexpected any. Specify a different type
lint: lib/client_factory.spec.ts#L49
Unexpected any. Specify a different type
lint: lib/client_factory.spec.ts#L48
Unexpected any. Specify a different type
lint: lib/client_factory.spec.ts#L44
Unexpected any. Specify a different type
lint: lib/client_factory.spec.ts#L43
Unexpected any. Specify a different type
lint: lib/client_factory.spec.ts#L39
Unexpected any. Specify a different type
lint: lib/client_factory.spec.ts#L38
Unexpected any. Specify a different type
lint_markdown_files / lint
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
unit_tests (22)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3, actions/setup-node@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
unit_tests (24)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3, actions/setup-node@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
unit_tests (20)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3, actions/setup-node@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
unit_tests (18)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3, actions/setup-node@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
typescript_test
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3, actions/setup-node@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
browser_tests (safari)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3, actions/setup-node@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
browser_tests (edge)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3, actions/setup-node@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
browser_tests (chrome)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3, actions/setup-node@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
browser_tests (firefox)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3, actions/setup-node@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/