docs: the art check compares text, not bytes - #7
Merged
Conversation
The renderer's module docstring said a test can re-render and compare bytes. That is not what happens. check_repo_art reads both sides with Path.read_text, which applies universal-newline translation, so the comparison is over text and a CRLF checkout passes either way. The paragraph is the design rationale for check mode, so a reader deciding whether to trust the gate reads exactly this claim. It now says what the check does. The byte-level reads are elsewhere and unchanged: the receipt records each drawing's byte count and SHA-256 from read_bytes, which is why the art is pinned to LF in .gitattributes. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
HarperZ9
added a commit
that referenced
this pull request
Sep 3, 2026
The renderer's module docstring said a test can re-render and compare bytes. That is not what happens. check_repo_art reads both sides with Path.read_text, which applies universal-newline translation, so the comparison is over text and a CRLF checkout passes either way. The paragraph is the design rationale for check mode, so a reader deciding whether to trust the gate reads exactly this claim. It now says what the check does. The byte-level reads are elsewhere and unchanged: the receipt records each drawing's byte count and SHA-256 from read_bytes, which is why the art is pinned to LF in .gitattributes. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
The claim
The renderer's module docstring carried this:
That is not what happens.
check_repo_artreads both sides like this:Path.read_textapplies universal-newline translation, so the comparison is overtext and a CRLF checkout passes either way. I wrote the claim, and the same
wording went out across the sibling repositories, so it is being corrected in
each of them.
Why it is worth a commit
The paragraph is the design rationale for check mode. Someone deciding whether
to trust the gate reads exactly this sentence, and what it promises is stronger
than what the gate delivers.
The byte-level reads are real, just elsewhere: the receipt records each drawing's
byte count and SHA-256 from
read_bytes, which is why the art is pinned to LF in.gitattributes. That pin is unchanged.Scope
One docstring paragraph. No drawing moves, no check changes behaviour, and the
gate is green.
🤖 Generated with Claude Code