build: bump toolchain to v4.33.0 past kernel soundness fix (#14576) - #10
Open
morluto wants to merge 1 commit into
Open
build: bump toolchain to v4.33.0 past kernel soundness fix (#14576)#10morluto wants to merge 1 commit into
morluto wants to merge 1 commit into
Conversation
leanprover/lean4:v4.33.0-rc1 was tagged 2026-07-15, before the nested inductive kernel soundness fix (leanprover/lean4#14577, 2026-07-28) landed; the fixed stable v4.33.0 shipped 2026-08-10. Coordinated changes: * lean-toolchain: v4.33.0-rc1 -> v4.33.0 * mathlib pin -> db584cd6d46c92f209a44c0f1c829460d327499d (toolchain window 2026-08-10..08-11, first stable window containing the fix); moved after the PrimeNumberTheoremAnd require so Mathlib's transitive pins take precedence * PrimeNumberTheoremAnd pinned to fork rev 674f3b8 which drops one trailing 'rfl' in MediumPNT.lean made redundant by newer Mathlib simp (swap back to AxiomMath upstream once an equivalent fix lands there) * lake-manifest.json regenerated via lake update
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.
Fixes #9
Problem
lean-toolchainpinsv4.33.0-rc1, tagged 2026-07-15 — 13 days before the kernel soundness fix for leanprover/lean4#14576 (PR #14577, merged 2026-07-28, shipped in stablev4.33.0on 2026-08-10). The affected kernel accepts malformed nested-inductive declarations via checkedaddDecland an axiom-free proof ofFalse(oss-security advisory).An audit of this repository found no exploit path (the raw-declaration emitters only produce
.defnDecl/.thmDeclof nat literals /RArraytrees /reflBoolTrue; no.inductDecl, noExpr.proj, nounsafe/native_decide), but a formal-verification project should not ship on a kernel with a known soundness hole: only a clean rebuild under the fixed kernel turns "compiles" back into "verified".Changes
lean-toolchainv4.33.0-rc1→v4.33.0lakefile.tomldb584cd6d46c92f209a44c0f1c829460d327499d(first stable-toolchain window, 2026-08-10); moved after the PNT+ require so Mathlib's transitive pins take precedencelakefile.tomlPrimeNumberTheoremAndpinned to fork rev674f3b8(see below)lake-manifest.jsonlake update; transitive deps now match mathlib@db584cd6PrimeNumberTheoremAnd fork pointer
Building against mathlib@db584cd6 exposed one incompatibility in the dependency (not this repo):
MediumPNT.lean:2455has a trailingrflthat newer Mathlibsimprenders redundant ("No goals to be solved"), andPrimeGapsTheory.NumberTheory.PNTimports that module.This PR temporarily points the require at
morluto/PrimeNumberTheoremAnd@674f3b8= upstream2667e41+ deletion of that singlerfl. Once an equivalent fix lands onAxiomMath/PrimeNumberTheoremAnd, the URL can be swapped back and pinned to that sha (happy to open that one-liner as a PR there if useful).Validation
Full clean rebuild from source under the fixed kernel:
This includes both numerical certificates (
k50e25d25n1295.json→ 138+172 stored-row kernel checks;k105d20n15.json) and everydecide +kernelobligation re-checked by the v4.33.0 kernel. Mathlib consumed from cloud cache fordb584cd6; all project modules compiled locally.Follow-ups (not in this PR)
Per issue #9: enabling
leanchecker/nanodalanes and running the Comparator configs in CI are separate hardening steps; happy to propose them next.