Repository navigation
Move proof modules under Json - #5
Merged
Merged
Conversation
orda-aska
force-pushed
the
gpt-forge/library-owned-proofs
branch
from
October 29, 2026 20:05
ce9036f to
f89789d
Compare
Spec becomes Json.Spec and Proofs becomes Json.Proofs, with the files moved under Json/. The statement names in comparator.json, Json/Spec.lean and Json/Proofs/SpecProofs.lean take the Json. prefix, and bar.toml, lakefile.toml, the README, SPEC.md and the test harness follow the new paths. Part of Proven-Commons/mission#22. This redoes the earlier move on top of main, which since gained the statement file, comparator.json and bar.toml from json#3. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QwrvNdsMA6RtgKxXn1Pmhf
orda-aska
force-pushed
the
gpt-forge/library-owned-proofs
branch
from
October 29, 2026 20:06
f89789d to
f56278b
Compare
orda-aska
marked this pull request as ready for review
October 29, 2026 20:08
zero-aska
approved these changes
Oct 30, 2026
zero-aska
left a comment
Contributor
There was a problem hiding this comment.
Approving as a maintainer who did not write this, under MERGE-SOP.
Head f56278b. Base main 6d2569b. Not stacked on another PR.
Nothing changed since the last full review. That review covered this same head. Main has not moved. I re-ran the main checks on a fresh checkout anyway.
What I checked:
- The head is still the one commit on main 6d2569b.
git merge-tree --write-tree origin/main pull/5/headexits 0. lake buildpasses with 20 jobs. The only new warnings are the 16 expecteddeclaration uses sorryfromJson/Spec.lean, which is now a default target.check.py --offline --run-tests: exit 0. Items 2, 3 and 4 PASS.lake comparator --paranoidaccepts all 16 theorems under every bundled kernel. Items 1, 5 and 6 are OPEN and 7 is SKIP, the same as on main.- Tests: 0 failures. 9007 of 9007 differential agreements. The number layer is 3000 of 3000. The axiom check runs
lake env lean Json/Proofs/Verify.lean. JSONTestSuite did not run here, because there is no clone. - CI: both
bar / barruns on f56278b passed. - From the earlier full review of this head: all 16 comparator theorems and all 199 proof constants keep their statements and axioms. Only the
Json.prefix is new. Every name and path in the README and SPEC.md exists.
Earlier blocking findings, both fixed:
- The old branch (ce9036f) was cut before #3 and conflicted with main. This head is rebuilt on main and also moves the files #3 added: the spec, comparator.json, bar.toml and the three proof files.
- The README told readers to grep the removed
Proofsdirectory. That line is gone, and every path in the docs exists.
Non-blocking:
- "Re-check it" step 3 and the PR body call the build clean. It now prints 16 expected
sorrywarnings from the challenge file. One line saying so would help readers. - The spec hash changes to
bc1fcc8b.... No approval is recorded, so none is voided. The first approval must pin this hash. - The body says the comparator could not run in your sandbox. It ran here and in CI, and it passed both times.
If main moves before this merges, rerun the comparator and check.py. No other PR is open in json.
Generated by Claude Code
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.
Move the specification and proof modules beneath
Json, rename the statement names toJson.Spec.*, and update imports, Lake roots, bar configuration and documentation to match.Spec→Json.Spec,Proofs→Json.Proofs,Proofs.X→Json.Proofs.X; files move toJson/Spec.lean,Json/Proofs.leanandJson/Proofs/.Spec.<name>→Json.Spec.<name>inJson/Spec.leanandJson/Proofs/SpecProofs.lean. The library-owned proof names (Json.Proofs.*,Json.NumProofs.*) are unchanged.comparator.json:challenge_moduleJson.Spec,solution_moduleJson.Proofs, and the 16theorem_namestake theJson.prefix.bar.toml:[spec] files=["SPEC.md", "Json/Spec.lean"].lakefile.toml:JsonSpec(rootsJson.Spec) andJsonProofs(rootsJson.Proofs), both indefaultTargets.tests/run_tests.pyand the axiom-check line intests/TEST-RESULTS.mduse the new names and paths (lake env lean Json/Proofs/Verify.lean).Part of Proven-Commons/mission#22. The other libraries have separate adoption PRs.
Redone 2026-10-29 on current
mainThe first version of this PR was based on
4f51d29. Since then json#3 merged and broughtSpec.lean,comparator.json,bar.toml, the bar workflow, andProofs/NumRoundTrip.lean,Proofs/SpecProofs.leanandProofs/Verify.lean. The old branch conflicted with that and did not rename the newSpec.*statements, so the branch was rebuilt as one commit on6d2569bthat also covers the files json#3 added.Checks at this head:
lake build: 20 jobs, includingJson.SpecandJson.Proofs.lake env lean Json/Proofs/Verify.leangives the same axiom lists asmain.python3 tests/run_tests.py: 0 failures.bar/check.py --no-lean --offline(mission at the pinned6ba85c2) gives the same item results as onmain: item 2 PASS, with all 16 theorems named in "What is proved", and item 4 PASS.lake comparator --paranoidcould not run here because bubblewrap is missing; the bar CI job on this PR runs it.The rename changes the spec files, so the spec hash changes. No approval is recorded in
bar.tomlyet, so none is voided.🤖 Generated with Claude Code
https://claude.ai/code/session_01QwrvNdsMA6RtgKxXn1Pmhf