ci: compare a tag's wire schema with the newest release's tag, not a committed copy #488
No reviewers
Labels
No labels
priority/P0
priority/P1
priority/P2
release/v0.1.0
status/blocked
status/planned
type/bug
type/design
type/test-gap
type/tracker
No milestone
No project
No assignees
1 participant
Due date
No due date set.
Dependencies
No dependencies set
Reference
natsukium/felis!488
Loading…
Reference in a new issue
No description provided.
Delete branch "ci/drop-baseline-job"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The tag path of the wire gate compared against a copy of the released
felis.protocommitted underproto-baseline/, and checked that copy byte for byte against the release asset. The released tag already holds those bytes. Maintaining the copy took a release job that pushed a branch and opened a PR withRELEASE_TOKEN, and becausemainis protected, every tag after a final release failed the gate until someone merged that PR.tools/proto/compat.py: on a tag (and on a null-sha push), ask the forge only which tag is the newest published final release, then runbuf breakingagainst that tag's commit from the full-history checkout. If no final release is published, the gate passes. If the release tag is missing from the clone, the gate fails.first-releaseacknowledgment is gone: it stood in for a missing committed baseline, and "no final release published" now carries that meaning.release.yml: thebaselinejob is removed;publish.py baselineand its tests are removed.felis.protocomment updated; the explanation records the committed copy as the rejected alternative.Verified: both self-tests pass (
compat.py57 cases,publish.py12 cases), and a live tag-path run against this forge reports that no final release is published and exits 0.This should land before
v0.1.0-rc.9, so the rc exercises it together with the GitHub release mirror (#487).cb512a8656be58ecb8ee