Known issues span a version range (min/max), with public-site ready filter#156
Merged
Conversation
…public-site filter)
… fix-version on resolve
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
version_known_issuesnow spans a half-open[min, max)range within a minor branch instead of pointing at a single version. Raising onM.m.pcovers every later patch in the minor; resolving names the fix versionM.m.f, exclusive — so any patch from the fix onwards is clean again while earlier patches stay flagged./versions,/versions/update-for/{v}, artifact lists, HTML pages, downloads) only exposes ready versions.update-forkeeps offering an earlier ready patch within the same minor when the tip is flagged, instead of skipping the minor entirely.Schema
Migration
2026-05-21-080000-0000_version_known_issue_rangesreplacesversion_idwithmin_major/min_minor/min_patch(NOT NULL) and nullablemax_*columns. CHECK constraints enforce same-minor andmax_patch > min_patch; resolved metadata andmax_*always co-occur. Legacy resolved rows are backfilled as "fixed in the very next patch" — imperfect but the dataset is tiny and operators can re-raise with a more accurate fix version if needed.Wire changes
KnownIssueDatagainsmin_major/minor/patchand nullablemax_major/minor/patch.MinorVersionGroupgainsready: bool.ResolveKnownIssueArgsgains requiredfix_version: string(must be in the same minor as min and strictly above it).add_known_issuekeepsversion_idas input (the "Add" button still lives on a version detail page); server looks up coords from there.list_known_issuesandget_version_detail.known_issuesnow return every issue raised against the version's minor — the full timeline, not just issues that pinpoint this exact patch.UI
Public-site filtering
crates/public-server/src/versions.rswraps lookups infilter_ready/latest_matching_ready.update_forcomputes "latest ready patch per (major, minor)" itself rather than relying on theversion_updatesview, which is needed so a broken tip falls back to an earlier ready patch in the same minor.🤖 Generated with Claude Code