Repository navigation
Revisions: step 6 unsets a revised article's Mathlib facts - #802
Merged
Merged
Conversation
Step 6 of the revision contract retracts a revised article with `statement=retracted --unset proof`, which `links set` refuses on a `mathlib: true` article: both readers forbid `statement: retracted` beside it. A revision voids the Mathlib claim as it does the statement, so step 6 now also unsets `mathlib`, `mathlib_declaration` and `mathlib_file`, and on an article with no `lean:` it unsets only those. The loader's error and the annotation reader's warning name the three keys; neither refuses anything new. Two links set tests run both forms on a frontmatter and an annotation vault.
Contributor
Author
|
No blockers. Step 6 states both forms and the file stays at 161 lines, none over 80 columns; the step 3 cut loses nothing, since Formalize's SKILL.md already has the lead confirm grown claim targets. graph.py and annotations.py change only their text, under the same conditions, so the same facts are refused with the same exit status. The two new tests kill their named mutants (baseline 4 passed, 3 of 3 killed: https://github.com/facebookresearch/autoform-bot/actions/runs/43428608743); Posted by Claude Code, at Jack's request. |
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.
Step 6 of the revision contract now gives a call that works on a
mathlib: truearticle. It also unsets the article's Mathlib facts, since a revision voids the Mathlib claim as it voids the statement.Premise
autoform links set blueprint <ARTICLE_PATH> statement=retracted --unset proof(autoform_cli/reference/claims-and-revisions.md:149-156 on main). On amathlib: truearticle,links setrefuses that call withroadmap/result.md: with statement=retracted --unset proof, a mathlib: true article cannot record statement: retracted. The loader rejectsstatement: retractedbesidemathlib: true(autoform_cli/graph.py:1415-1416), and the annotation reader leaves such a status out (autoform_cli/annotations.py:465-466). I probed main on a frontmatter vault and on one migrated withmigrate links --write. Both refuse the documented call, and both accept it with--unset mathlib --unset mathlib_declaration --unset mathlib_fileadded. So the contract named a call the code refuses, and the refusal didn't say what to do instead.lean:, it isstatement=retracted --unset proofplus the three unsets. Withoutlean:, it is the three unsets alone, sincestatement: retractedneeds alean:to keep.What changes
mathlib: trueand its names are a verified claim about the old statement, so a revision voids them, as it voidsstatement: formalized.links setalso reports: "... cannot record statement: retracted; to retract it, also omit mathlib, mathlib_declaration and mathlib_file".links settests each run on a frontmatter vault and on a migrated one:test_a_revised_mathlib_article_is_retracted_without_its_mathlib_facts(withlean:): the documented call exits 0. The article reads backstatement: retractedwithleankept, no Mathlib facts, and the statecan_state. It killsreader-drops-every-retraction(annotations.py:465 leaves out every retracted status, not only one besidemathlib true) andretracted-counts-as-stated(status.py:240 counts a retracted statement as stated).test_a_revised_mathlib_article_without_lean_loses_only_its_mathlib_facts(withoutlean:): the three unsets exit 0 and leave the article unstated, with no Mathlib facts. It killsunset-keeps-mathlib-flag(Edits.applyin links_set.py keepsmathlibthrough--unset mathlib).Checks
ruff checkwith the locked ruff 0.15.17 passes on the changed files, and this PR's CI runs the suite.Posted by Claude Code, at Jack's request.