Skip to content

Document the release lines and the divergent version value - #2126

Open
Tyrie Vella (tyrielv) wants to merge 1 commit into
microsoft:vnextfrom
tyrielv:tyrielv/anchor-version-comment
Open

Tyrie Vella (tyrielv) wants to merge 1 commit into
microsoft:vnextfrom
tyrielv:tyrielv/anchor-version-comment

Conversation

@tyrielv

@tyrielv Tyrie Vella (tyrielv) commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

Problem and Context

After #2123, GVFSMajorAndMinorVersion in .azure-pipelines/release.yml differs between master and vnext. This PR follows up review feedback on #2123.

Two gaps make that difference fragile.

First, nothing in the file says the difference is deliberate. master is merged into vnext often. Today the merge is clean, because master does not change this line. The first time master changes it, both sides will have changed it and Git will report a conflict. A person who resolves that conflict can take the master value and silently undo the version bump. No CI job parses .azure-pipelines/release.yml, so nothing downstream would catch the mistake.

Second, the repository does not describe its release lines anywhere. A contributor cannot find out what master and vnext build, or why the two branches carry different version values.

Changes

  • Add a three-line comment above GVFSMajorAndMinorVersion in .azure-pipelines/release.yml. The comment says the value is intentionally different between vnext and master, and tells the reader to confirm which line the branch ships before resolving a conflict. The comment names the two branches but states no version numbers, because version numbers would become wrong when vnext is promoted to master.
  • Add a "Release lines and version numbers" section to AGENTS.md, next to the existing release and version material. The section records what master and vnext build, how the release pipeline forms the full version and the tag from GVFSMajorAndMinorVersion plus the build number, how the two lines are kept in sync, and why a cross-line merge always uses a merge commit.
  • The version value does not change.

@tyrielv
Tyrie Vella (tyrielv) force-pushed the tyrielv/anchor-version-comment branch from 9ca9279 to 92be616 Compare September 30, 2026 21:09
The GVFSMajorAndMinorVersion value in release.yml differs between
vnext and master. Nothing in the file says this is deliberate, and
nothing in the repository describes the two release lines. A future
merge conflict on this line could take the other branch's value and
undo a version bump without notice. No CI job parses release.yml, so
nothing downstream would catch it.

Add a comment above the value that records the intent. The comment
names the two branches that diverge, but it states no version
numbers, so it stays correct after vnext is promoted.

Add a "Release lines and version numbers" section to AGENTS.md. The
section describes what master and vnext build, how the pipeline forms
the full version and tag, and why a cross-line merge always uses a
merge commit.

Assisted-by: Claude Opus 5
Signed-off-by: Tyrie Vella <tyrielv@gmail.com>
@tyrielv
Tyrie Vella (tyrielv) force-pushed the tyrielv/anchor-version-comment branch from 92be616 to 349d264 Compare September 30, 2026 21:14
@tyrielv Tyrie Vella (tyrielv) changed the title Document that the release.yml version is intentionally divergent Document the release lines and the divergent version value Sep 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant