Rewrite docs, docstrings, and comments in a plain teaching voice - #18
Merged
Conversation
Reworks the project's prose so a newcomer can learn the system by reading it, without changing any behavior or any fact. Documentation: README, DESIGN, PRODUCT, RESEARCH, ROADMAP, RELEASING, the CHANGELOG entries, and everything under docs/, process/, and observations/. Technical terms are now defined where they first appear, and each document leads with what the thing is and why it exists before how it works. Code: module, class, and function docstrings across all 189 scope modules, the core engine, the CLI layer, and research/presets. Scope docstrings now explain the physical or systems question each module answers and how it connects to neighboring scopes. Comments that merely restated the code were deleted. Test modules gained docstrings describing what property each file verifies and why it matters. Nothing executable changed. Identifiers, expressions, numbers, and every string literal are untouched, including the var()/eq()/Reference() and preset description strings and the CLI and error messages that tests assert on. Verified: full suite reports 1029 passed with the same 10 pre-existing Windows temp-dir errors as the unmodified main branch, compileall is clean, and the docs-stats gate confirms every tracked statistic survived. Co-Authored-By: Claude Opus 5 (1M context) <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.
Reworks the project prose so a newcomer can learn the system by reading it. No behavior and no facts change.
What changed
Documentation — README, DESIGN, PRODUCT, RESEARCH, ROADMAP, RELEASING, the CHANGELOG entries, and everything under
docs/,process/, andobservations/. Technical terms are now defined where they first appear, and each document leads with what the thing is and why it exists before how it works.Code documentation — module, class, and function docstrings across all 189 scope modules, the core engine, the CLI layer, and
research/+presets/. Scope docstrings now explain the physical or systems question each module answers and how it connects to neighboring scopes. Comments that merely restated the code were deleted. Test modules gained docstrings describing what property each file verifies and why it matters.For example,
scopes/kernel_roofline.pypreviously opened with a noun-phrase list of its contents. It now explains the mechanism: what arithmetic intensity is, why a kernel's attainable rate is the minimum of its per-level ceilings, and where the memory-bound/compute-bound crossover sits.What deliberately did not change
Nothing executable. Identifiers, expressions, numbers, and every string literal are untouched — including the
var()/eq()/Reference()and preset description strings, and the CLI and error messages that tests assert on.The archived files under
archive/keep their original wording.archive/README.mdstates that those files are kept byte-identical for provenance, and they are timestamped first-person records whose exact wording is the archived fact. Only the archive index itself was rewritten.Verification
mainproduces on this machine (Windows temp-directoryPermissionErrors, unrelated to this change). The baseline was captured from a cleanmainworktree specifically so the two runs could be compared.python -m compileallclean across the package.docs-statsgate passes, independently confirming that every tracked statistic in the README, the HTML stat grid, andapp.jssurvived the rewrite.🤖 Generated with Claude Code