GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — Document the two-line release process for stable v2 by maxisbey · Pull Request #3179 · modelcontextprotocol/python-sdk Conversation
Contributor
Motivation and ContextThe person cutting How Has This Been Tested?Docs-only. Breaking ChangesNone. Types of changes
Checklist
AI disclosureAI assistance was used to draft this change; I reviewed the result and take responsibility for it.
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
6 of 9 tasks
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 1 issue found across 1 file Prompt for AI agents (unresolved issues)Reply with feedback, questions, or to request a fix.
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. P1: A Prompt for AI agents
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Beyond the inline findings, two other candidates were examined and ruled out this run: (1) step 4's mention of the auto-generated "What's Changed" list vs. step 3's Extended reasoning...Docs-only PR rewriting RELEASE.md for the two-line (v2 stable from main, v1.x maintenance) release process. Two bugs were confirmed and posted inline (the missing first-stable pin-drop note, and the over-narrow pre-release-selection claim); this note only records the additional candidates that were investigated and refuted, so a later pass doesn't re-explore them from scratch. It is informational, not a correctness guarantee.
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactionsUh oh!
There was an error while loading. Please reload this page. Uh oh!
There was an error while loading. Please reload this page.
maxisbey
force-pushed
the
release-md-stable
branch
from
cc5f6a6 to
025f77a
Compare
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Beyond the inline findings, I also checked the earlier P1 concern that a Extended reasoning...Docs-only PR. This run's five inline findings are all nits, but my previous run's normal-severity finding (the stable section's "needs no pin-flip commit" premise being false for the v2.0.0 cut) is still unaddressed with no new commits since, so I am not approving. I verified the one standing reviewer concern not covered by the inline comments: cubic-dev-ai's P1 claiming a v1.x release would use main's workflow definition. Comparing .github/workflows/publish-pypi.yml on main (dual-package build, skip-existing: true) against the v1.x branch's copy (single-package uv build, no skip-existing) and GitHub's release-event semantics (the workflow runs from the tag's commit) shows the doc is correct and the P1 is not — recording that here so it is not re-litigated.
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
Comment on lines
+66
to
+71
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟡 The "ask someone to review the release" step now survives only in the lower-stakes v1.x maintenance section (line 93), while the new stable-from-main procedure — the one that takes GitHub "Latest" and moves PyPI's default Extended reasoning...What happened. The pre-PR Why this looks like an oversight, not a decision. One could argue the sentence simply stayed attached to the section it originally belonged to: the old stable procedure was the v1.x procedure, and its direct textual successor is the new maintenance section. That's mechanically true — but the review requirement was attached to the stable role, not to the v1.x branch as such: it closed the procedure for the release that takes GitHub "Latest" and PyPI's default install. After the flip, that role belongs to the v2-from-main cut, yet the safeguard didn't move with it. Two details in the new doc itself support the oversight reading: (1) the maintenance section frames itself as "create the release the same way with two differences" — and dropping the review step is not one of the listed differences, so the asymmetry isn't presented as intentional anywhere; (2) nothing in the PR description mentions removing the review requirement for stable releases. Why it matters. The stable section's own step 5 explains why a pre-publish second pair of eyes is most valuable exactly here: never delete from PyPI, version numbers cannot be reused, and the only remedy for a broken stable release is yanking Concrete walk-through. A maintainer cutting Fix. Add "Then ask someone to review the release." (or an explicit review-before-publish step) at the end of the stable section, restoring parity with both the old doc's requirement and the maintenance section. Severity. Nit: this is a docs-process omission — no code or automation is affected, and whether a v2 stable cut requires a second reviewer is ultimately a maintainer policy choice. It's a one-sentence fix that shouldn't block merge.
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
Uh oh!
There was an error while loading. Please reload this page. Uh oh!
There was an error while loading. Please reload this page. Uh oh!
There was an error while loading. Please reload this page. Uh oh!
There was an error while loading. Please reload this page. RELEASE.md described a v1.x stable line and v2 pre-releases only. With v2 becoming the stable line cut from main, it now documents both shipping lines and the stable procedure: a v2.X.Y stable release from main that takes GitHub "Latest" and PyPI's default install, a v1.28.Z maintenance release from v1.x that must keep --latest=false, and pre-releases from main. It also notes that both packages are yanked together and that the generated notes' previous-tag baseline must be set to the same line. No-Verification-Needed: doc-only
maxisbey
force-pushed
the
release-md-stable
branch
from
025f77a to
8ba2305
Compare
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Beyond the inline findings, this pass also examined and ruled out three candidate concerns: (1) the yank-then-patch ordering in stable step 5 briefly resolving unpinned installs to the prior stable — inherent to any PyPI yank, and the doc already points the yank reason at the replacement; (2) the maintenance section's unconditional Extended reasoning...Docs-only PR, third review pass. Two new findings were posted inline this run; per process, the ruled-out candidates are recorded here so a later review pass or the author can see they were already examined. This is informational only — not a claim of overall correctness and not an instruction to skip anything in future review.
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
Comment on lines
+82
to
+86
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟡 The maintenance section's post-release check — "confirm Extended reasoning...The issue. The Maintenance section (RELEASE.md lines 82–86) instructs, after cutting Why the literal check is unsatisfiable. Two other parts of this same PR establish that Step-by-step proof. (1) Why the offered remedy makes it worse. The next sentence says "If it slipped, Why this is an internal inconsistency, not a pedantic reading. The same document uses the precise wording where it matters: the pre-release section says the flag keeps Impact and fix. Impact is limited to release-time confusion: the bolded rule ("must not take Latest back from the 2.x line") makes the intent recoverable — a reader seeing any stable v2 release at
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
Comment on lines
7
to
8
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟣 Pre-existing issue (this line is unchanged by the PR): step 2 of "Bumping Dependencies" says "Upgrade lock with Extended reasoning...The bug. The "Bumping Dependencies" section (RELEASE.md lines 7-8) survives this rewrite unchanged, and its step 2 — "Upgrade lock with Evidence the committed lock was never produced this way. The current Step-by-step proof of the failure. (1) A maintainer bumps one dependency floor per step 1, e.g. raises httpx to Why nothing else prevents it. RELEASE.md is the operative runbook a maintainer follows verbatim, and the instruction is internally self-contradictory only on close reading (a command labeled "Upgrade lock" performs a downgrade). It also directly contradicts the repo's own AGENTS.md, which documents the correct procedure: "Upgrading: Why flag it on this PR despite being untouched. All four verifiers confirmed the line predates this PR (it dates to when RELEASE.md was created) and sits as unchanged context above the rewrite — hence pre-existing, not blocking. But the PR's stated purpose is making RELEASE.md accurate for the person actually cutting releases, and this is the one remaining section carried over unreviewed. Fixing it is a one-line change. Fix. Change step 2 to "Upgrade lock with
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
Scope the partial-upload re-run advice to releases cut from main (the v1.x publisher has no skip-existing setting), note that the first stable release of a major still needs its pre-release flip, spell out how the generated What's Changed list is produced, target the verified commit rather than the branch name for a v1.x release, describe pre-release selection accurately, and yank both packages when a pre-release is bad. No-Verification-Needed: doc-only There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 1 issue found across 1 file (changes from recent commits). Prompt for AI agents (unresolved issues)Reply with feedback, questions, or to request a fix.
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
Comment on lines
+107
to
+108
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. P3: Dependency resolution can select a pre-release without an exact pin, pre-release-bearing specifier, or Prompt for AI agents
Suggested change
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactions
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Looks good — docs-only rewrite of RELEASE.md, and the latest commit addressed the earlier round of inline feedback (scoped the skip-existing advice, pinned the v1.x target to a verified SHA, spelled out notes generation, dual-package yank for pre-releases). What was reviewed on this revision: the release-lines table and workflow-from-tagged-commit claims against the actual publish setup; the stable/maintenance/pre-release runbooks for internal consistency (freeze window, --target, --latest=false, yank procedure); and three candidate issues raised this run were investigated and ruled out (pre-release step 1 in the steady state, tag re-creation vs skip-existing, and the maintenance-line yank wording). The two remaining inline comments are a one-word wording nit and a pre-existing line outside this diff — neither blocks. Extended reasoning...OverviewThis PR touches a single file, Security risksNone from the change itself — no executable code or CI configuration is modified. The residual risk is indirect: a release runbook that misstates procedure could lead a maintainer to publish incorrectly. Three rounds of review examined exactly that class of issue; the findings that mattered (wrong-commit tagging, incomplete yank, inapplicable recovery advice) have been fixed in the current revision, and this run's bug hunt found nothing new, with three further candidates investigated and refuted. Level of scrutinyDocs-only changes warrant modest scrutiny, and this one has received considerably more than that: the runbook's claims were cross-checked against the actual publish workflows on both branches across multiple review passes. The remaining open inline comments are a one-word wording nit ("newest v2 tag" vs "newest stable v2 release" in a post-release verification step) and a pre-existing Other factorsThe author has been responsive: the follow-up commit addressed the earlier feedback point-by-point. The document's policy content (v2 stable from
Sorry, something went wrong. Uh oh!
There was an error while loading. Please reload this page. All reactionsUh oh!
There was an error while loading. Please reload this page.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
ReviewersUh oh!
There was an error while loading. Please reload this page. AssigneesNo one assignedLabels
None yet
ProjectsMilestoneNo milestoneDevelopmentSuccessfully merging this pull request may close these issues. Uh oh!
There was an error while loading. Please reload this page. 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. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |