doc: CLAUDE.md - a rule against committing build output, and two stale notes - #118
Merged
Merged
Conversation
|
An automated preview of the documentation is available at https://118.openmethod.prtest3.cppalliance.org/libs/openmethod/doc/html/index.html If more commits are pushed to the pull request, the docs will rebuild at the same URL. 2026-09-19 16:06:56 UTC |
jll63
force-pushed
the
chore/claude-md-affinity-notes
branch
from
September 19, 2026 15:54
1a450c6 to
5f29c67
Compare
Both were falsified by changes that did not update the prose around them. boostorg#113 collapsed the "Two things deliberately do not participate" bullets into one sentence, because `use_classes` had just started participating - but then named two things under "One thing": the interop headers and the C++26 `register_classes`. Restore the bullet form for the two that are left. The same sentence says the `any` and `type_erasure` interop headers "are untouched". boostorg#116 touched all three of them, and had to: boostorg#113 gave `virtual_` a registry parameter, and their `validate_method_parameter` specializations still spelled `virtual_<T>`, which after the change matches only the defaulted argument. What survives is the affinity claim, which is the point of the paragraph - a `virtual_any` contributes none. Say that, and record why a specialization there cannot go back to the bare spelling. The PCH paragraph names `test_capture_errors.hpp` as the only header that carries the override on a test's behalf. `test/CMakeLists.txt` has scanned for `test_checked_registry.hpp` as well since boostorg#93; the sentence three lines above, "do not add a fourth marker", already counts three. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
boostorg#103 merged 415 files of b2 output - 613 MiB expanded, 94 MiB in the pack, on a repository of about 3 MB - days after boostorg#108 added the `bin/` ignore rule intended to prevent it. The branch was cut before that rule landed, and an ignore rule does not apply to a path that is already tracked, so the merge carried them in. Nothing in the build or the review catches this, and boostorg#117 could only untrack them: the superproject pins this library by SHA and its bot bumps the pin within minutes of every merge, so rewriting `develop` orphans commits `boostorg/boost` already points at - and would not even remove the blobs, which stay reachable through `refs/pull/<n>/head`. Write the rule down where the workflow is: stage named paths, never `git add <dir>`, and ask before committing a build artefact or any file over 1MB. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
jll63
force-pushed
the
chore/claude-md-affinity-notes
branch
from
September 19, 2026 16:03
5f29c67 to
4a1a726
Compare
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.
(Written by Claude Code, on behalf of @jll63.)
CLAUDE.mdonly; no code, no tests.A rule against committing build output
#103 merged 415 files of b2 output - 613 MiB expanded, 94 MiB in the pack, on a
repository of about 3 MB - days after #108 added the
bin/ignore rule intendedto prevent it. The branch was cut before that rule landed, and an ignore rule has
no effect on a path that is already tracked, so the merge carried them in.
Nothing in the build or in review catches this, and #117 can only untrack them.
A rewrite of
developis not available as a remedy: the superproject pins thislibrary by SHA and its bot bumps the pin within minutes of every merge, so
rewriting orphans commits
boostorg/boostalready points at; and the blobs stayreachable through
refs/pull/<n>/head, which a maintainer cannot delete. So therule goes next to the workflow it belongs to - stage named paths, never
git add <dir>, and ask before committing a build artefact or any file over 1MB.Two stale notes in the registry-affinity section
"One thing deliberately does not participate", followed by two things. #113
collapsed the original
Two things ... and both are documented as such:bulletsinto a single sentence, because
use_classeshad just started participating - butthe sentence goes on to name both the interop headers and the C++26
register_classes. Restored to bullets for the two that are left."the
anyandtype_erasureinterop headers are untouched". #116 touched allthree of them, and had to: #113 gave
virtual_a registry parameter, and theirvalidate_method_parameterspecializations still spelledvirtual_<T>, whichafter that change matches only the defaulted argument. The affinity claim - the
actual point of the paragraph - does survive, so the note now says that a
virtual_anycontributes no affinity, separates it from a parameter spelling aregistry, and records why a specialization there cannot go back to the bare
spelling.
The PCH paragraph names one override-carrying header; the scan looks for two.
test/CMakeLists.txthas scanned fortest_checked_registry.hppalongsidetest_capture_errors.hppsince #93. The sentence three lines above it, "do not adda fourth marker", already counts three markers, so only the enumeration was stale.
🤖 Generated with Claude Code