Skip to content

Roll main back to the code released as 0.34.0 - #528

Closed
MelbourneDeveloper wants to merge 2 commits into
mainfrom
rollback/main-to-0.34.0
Closed

MelbourneDeveloper wants to merge 2 commits into
mainfrom
rollback/main-to-0.34.0

Conversation

@MelbourneDeveloper

Copy link
Copy Markdown
Collaborator

TL;DR

0.33.0 shipped broken from main's tip. 0.34.0 re-released f92300e5 — the last known-good commit — so what users run no longer matches what main holds. This sets main's tree to exactly what 0.34.0 ships, so the two agree again.

This is a big, blunt rollback and I have not merged it. It is ready to merge in one click, but read the cost below first.

What it does

Sets main's tree to v0.34.0's tree — f92300e5 plus the release-gate fix. Verified byte-identical to the released tag.

Rolls back the 25 commits since f92300e5: 1,209 files, −132,953 lines. They stay in history; re-land them by reverting this commit.

The cost — please read

The 25 commits are not all breakage. Several are accuracy work, which is the one thing this repo ranks above everything else:

  • #518"the detector fixes that take it to 100%"
  • #408/#420 — five-language Type-3 recall hole
  • #494, #501, #503, #508 — false-positive and false-negative corrections

Reverting them wholesale trades a broken release for a less accurate detector. If the breakage in 0.33.0 is traceable to a subset, a targeted revert keeps the accuracy work and is the better trade. I could not determine which commits are "the mistakes" from here, so I built the complete rollback rather than guess at a subset and quietly drop the wrong thing.

Safety

  • Not merged. Merging is your call.
  • Fully reversible — revert this commit to restore all 25.
  • f92300e5's ci.yml still provides the required CI roll-up check, so main stays mergeable afterwards.
  • Release pipeline stays working: the reverted tree carries the gate fix, and its release.yml references the script layout that exists in that same tree.

Details (for AI)

  • Tree equals v0.34.0^{tree} exactly; parent is d173ed46 (main after the gate fix).
  • Supersedes the [RELEASE-ONMAIN] change merged in Let a release ship a commit that is already on main #527 by replacing it with the equivalent gate carried on the released tag — not by removing the fix.
  • Built with git commit-tree, so no working-tree state leaked in.

Acceptance Criteria (for AI)

  • After merge, git diff main v0.34.0 is empty.
  • CI reports on subsequent PRs.
  • A release tagged from main still clears [RELEASE-ONMAIN].

🤖 Generated with Claude Code

0.33.0 shipped broken from main's tip. 0.34.0 re-released f92300e, the last
known-good commit, so what users run no longer matches what main holds.

This sets main's tree to exactly what 0.34.0 ships -- f92300e's tree plus the
release-gate fix -- so main and the released artifact agree again.

Rolls back the 25 commits since f92300e: 1209 files, -132953 lines. They stay
in history; re-land them by reverting this commit once the breakage is isolated.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Comment thread .github/workflows/ci.yml
${{ runner.os }}-cargo-cov-
${{ runner.os }}-cargo-

# fmt, lint, test are three separate, non-overlapping steps.
The rollback carried the docs back to `uses: Nimblesite/Deslop@v0.30.0`,
so every Marketplace listing visitor copied a workflow that installs a
CLI four releases stale. `stamp-release-version.mjs` rewrites the build,
never the commit, so the pin is the one version reference that has to be
committed. [ACTION-VERSION]

Produced by `node scripts/stamp-release-version.mjs 0.34.0`; the
`0.0.0-dev` placeholders it also rewrites are deliberately left alone,
since the release job stamps those at build time.
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.

3 participants