Skip to content

family.py add: six states its case-spelling remedies still miss after #828, from a section that names a variant beside a correct gitlink to a Members that is a link to a directory outside the holder #840

Closed

Description

@brettheap

Goal: where add refuses a member recorded in another case, no printed command leaves a section of .gitmodules naming another spelling, moves a live checkout out from under its .git file, or fails through a link, in the six states the spelling remedies were not built for.

Filed by lane openRepoShape-5, from the checklist candidates of #761's PR (#828, writer w761: candidates 3 to 5, its "Left out, and why") and of #685's PR (#767, reviewer rv685, round 3: "Already in the body's 'Left out'", candidates 1 to 3; #767 landed as 98f14976). #761 itself and #685 are not reopened. The evidence of each line is said on it: two were typed by a lane 5 writer or reviewer at a named head, the others are read from source, not measured, and none was run again here.

Lands after: lane 5's #761 (PR #828, fix/761-add-move-back-gitmodules, head d4e8c65a), which edits the same two functions, _members_spellings (scripts/family.py:3187-3338) and _spellings_refusal (:3369). path:line is at main 6626a3c5, which holds #767 and not #828.

Lines

Verify: tests/test_family_add_spellings_remedies.py (#767; edited by #828), tests/test_family_add_member_variant.py, tests/test_family_members_case_variants.py, tests/test_family_add_refusals.py and tests/test_family_add_move_back_sections.py (new in #828) pass on Linux. One new case per line, typed as printed to the gate in every mode and then to the add that was refused (typed_as_printed, assert_passes_in_every_mode), as #767's and #828's files do; the lines that say "probe first" start with the probe, and a line that the probe shows already answered is closed as such on this issue. The folding disk is emulated by disk_as: CI is Linux only (#597), and no macOS or Windows run is made.

Overlaps. #828 edits scripts/family.py and the three test files above, so this lands after it. #731, #795, #809, #813, #814 and #816 edit scripts/family.py in other functions; #816 (fix/684-family-holder-states) lists the case-variant git mv remedy among its lines, so read its head before starting. scripts/family.py is not a pinned copy, so no upstream-changed row follows; the validator halves are in the validator's issue (#762's PR, #820).

Parent: #459.

Milestone: v1.1.1. Each state needs a hand git mv, a hand-edited .gitmodules, a conflict, or a link where a directory goes, and add or the gate ends in a refusal in all six rather than recording a wrong state. None is a regression and none blocks v1.1.0.

🤖 Generated with Claude Code

Activity

  1. added this to the v1.1.1 milestone on Oct 17, 2026
  2. brettheap commented on Oct 17, 2026

    @brettheap
    ContributorAuthor

    CLAIMED — lane openRepoShape-5, session 50cede29-ab82-4ca3-9f67-d98e1a58c8d2@Eagle, 2026-10-17T19:42:26Z, for #840

    Logged in lanes/log/openRepoShape-5.md at 9c95b85bb0107993788dd09cc08b7fb531f5326d.

    The three reads (lane-collision-protocol Rule 1):

    1. existing `CLAIMED —` comments on opensoft/openRepoShape#840:
       none
    2. `gh pr list --repo opensoft/openRepoShape --state all --search "#840"`, kept where the row or its body names `#840`:
       none
    3. `git ls-remote --heads git@github.com:opensoft/openRepoShape` branches naming `840` as a whole token:
       none
    
  3. brettheap commented on Oct 17, 2026

    @brettheap
    ContributorAuthor

    (lane openRepoShape-5, 2026-10-17T19:53:48Z) One more line for this issue, from lane 2's rv828 review of #828 (SHOULD 3), left by #828's round 2 (ce0f2a5f).

    Lands after: #828 (fix/761-add-move-back-gitmodules, ce0f2a5f), which edits the same functions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions