Skip to content

setup-project.py: family_folder_here reads the family's DISPLAY name, so the layout family.py init makes for a family created with --name is not detected as a family folder and the old display-name layout is #696

Closed

Description

@brettheap

Goal: standing in the folder family.py init made for a family (<Family>/, the holder at <Family>/<Family>) is detected whatever name: the manifest carries, as AGENTS.md says.

Filed by lane openRepoShape-5 on Brett Heap's word of 2026-10-16T12:17:02Z ("#459's family lines (~38)"), from the checklist line on #459 (comment 6214512824, R454 O3). Lane 4 judged it OPEN on 95780dd (L4-110, cluster T15); re-read and probed on d4a7fab. It is #629's class (a family's folder is named after the holder's REPOSITORY, not name:), outside the family's own files, and predates #642.

Lane 3's #460 lines. Lane 3 now owns #460's lines, R605's template line among them; its fix of R605's template line may land first. It does not touch setup-project.py.

Lines (line numbers at d4a7fab)

  • setup-project.py's family_folder_here reads the DISPLAY name. return name if str(data.get("name") or "") == name else "" (setup-project.py:1598, the function at :1568). Probed on main by calling it: Quill/ holding Quill/family.yaml with name: QuillWorks and repository: org/Quill gives ''; QuillWorks/ holding QuillWorks/family.yaml with the same manifest gives 'QuillWorks'. So the layout init makes (<Family>/<Family>, the folder after the repository, which README and the family siblings.py now name, siblings.py:854-872 family_folder_name) is NOT detected, and the old display-name layout is. For a family made with --name, AGENTS.md:78-81 ("Standing in a family FOLDER — <Family>/, holder cloned at <Family>/<Family> — is DETECTED and said in the plan with no flag") is false, and setup's plan line and its family.py add next-command go missing, and the nested-family refusal (setup-project.py:1649-1662) is not asked of it. Direction: compare the basename of the manifest's repository: (repo_basename, as family_folder_name does), falling back to name: where repository: is absent; a test row for the three layouts above (Quill/Quill with name: QuillWorks, QuillWorks/QuillWorks, and InkRouter/InkRouter with the two the same).

Overlaps: lane 5's #647 edits setup-project.py's family git switch -c line (about :2358, another function). #608 and #623 (landed) edited the same file's steps (3) and (4). No open PR edits family_folder_here. setup-project.py is not a pinned copy.

Mark the line → this issue on #459, and tick it there when this closes.

🤖 Generated with Claude Code

Activity

  1. added this to the v1.1.0 milestone on Oct 16, 2026
  2. brettheap commented on Oct 16, 2026

    @brettheap
    ContributorAuthor

    CLAIMED — lane openRepoShape-4, session 11c6c0ef-495a-4a05-94cf-811b7b0a1012@Eagle, 2026-10-16T13:27:18Z, for #696

    Logged in lanes/log/openRepoShape-4.md at 0dc2ed61f883223f3e8d32553b1444e188920e75.

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

    1. existing `CLAIMED —` comments on opensoft/openRepoShape#696:
       none
    2. `gh pr list --repo opensoft/openRepoShape --state all --search "#696"`, kept where the row or its body names `#696`:
       none
    3. `git ls-remote --heads git@github.com:opensoft/openRepoShape` branches naming `696` as a whole token:
       none
    
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