Handle beta version not yet updated in product-details#2822
Handle beta version not yet updated in product-details#2822DonalMe wants to merge 1 commit intomozilla:masterfrom
Conversation
For a few days after each release, product-details still reports the old
beta version (e.g. release=149, beta=149, nightly=150) because no Fx150
beta builds have landed yet. This caused get_checked_versions() to fail
its consecutive-version check and return {}, silently disabling the
regression_set_status_flags rule for that window.
When release == beta and nightly == release + 1, we now treat beta as
nightly (N+1) so the rule can continue running.
There was a problem hiding this comment.
Pull request overview
Adjusts get_checked_versions() to keep Bugbot’s version-dependent rules running during the post-release window where product-details reports a stale beta version.
Changes:
- Detect the
release == betaandnightly == release + 1“stale beta” scenario fromproduct-details. - Treat beta as
nightly (N+1)for this window and return the adjusted versions map (instead of returning{}).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
| "Beta version not yet updated in product-details, treating beta as %d", | ||
| v[2], | ||
| ) | ||
| versions["beta"] = str(v[2]) |
There was a problem hiding this comment.
In this special-case branch you return versions without re-checking that product-details nightly (v[2]) matches the nightly version inferred from Bugzilla (the validation done in the consecutive-versions branch). If Bugzilla has already advanced but product-details is still stale, this will re-enable rules with inconsistent version data. Consider running the same Bugzilla mismatch check here (and returning {} on mismatch) before returning the adjusted versions.
| versions["beta"] = str(v[2]) | |
| versions["beta"] = str(v[2]) | |
| nightly_bugzilla = get_nightly_version_from_bz() | |
| if v[2] != nightly_bugzilla: | |
| logger.info("Versions mismatch between Bugzilla and product-details") | |
| return {} |
For a few days after each release, product-details still reports the old beta version (e.g. release=149, beta=149, nightly=150) because no Fx150 beta builds have landed yet. This caused get_checked_versions() to fail its consecutive-version check and return {}, silently disabling the regression_set_status_flags rule for that window. This has always been a problem, but the window is longer since we don't ship beta until a few days after merge day.
When release == beta and nightly == release + 1, we now treat beta as nightly (N+1) so the rule can continue running.
This is a naive fix, but it might help re-evaluate this logic.
Checklist
to-be-announcedtag added if this is worth announcing