You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When application-services added stricter FML validation (bug 2020683, gecko-pref and default are now mutually exclusive), the Fenix v149.0.0 manifests became unparseable by FmlClient
We had no unit test that actually loads each versioned FML manifest with FmlClient — the existing "Check Local Feature Manifests" CI job only checks that manifests are up-to-date with what the manifest tool generates, not that they pass FML validation
This gap meant the breakage was only caught by integration tests timing out on a 500, not by a clear unit test failure
Add a unit test in experimenter/features/tests/test_features.py (alongside TestValidateFeatureManifests) that iterates all Application × Channel × Version combinations and calls FmlClient(path, channel) for each manifest file
Use self.subTest() so failures identify the exact app/channel/version
This ensures that application-services updates and manifest syncs are caught early with a clear error message
Blocked by
Bug 2025587 — the Fenix v149.0.0 manifest needs to be fixed upstream first (remove default from gecko-nimbus-validation.test-preference), otherwise this test will fail immediately on the current manifests
Because
gecko-prefanddefaultare now mutually exclusive), the Fenix v149.0.0 manifests became unparseable byFmlClientFmlClient— the existing "Check Local Feature Manifests" CI job only checks that manifests are up-to-date with what the manifest tool generates, not that they pass FML validationThis issue
experimenter/features/tests/test_features.py(alongsideTestValidateFeatureManifests) that iterates all Application × Channel × Version combinations and callsFmlClient(path, channel)for each manifest fileself.subTest()so failures identify the exact app/channel/versionBlocked by
defaultfromgecko-nimbus-validation.test-preference), otherwise this test will fail immediately on the current manifests┆Issue is synchronized with this Jira Task