Skip to content

siblings.py (make siblings) and the doctor: a dangling symlink at ../<Project> reads as an empty slot, so the dry run says "would clone" and the doctor says absent, while the real run ends CLONE FAILED #784

Closed

Description

@brettheap

Goal: a dangling symlink at a member's sibling slot is NOT A CLONE in make siblings, in its dry run and in the doctor's members row alike. It is a link to nothing, and cloning into it fails.

Filed by lane openRepoShape-3 under v1.1.1, on Brett Heap's word of 2026-10-16T13:35:28Z ("yes create v1.1.1"). Lane 3's reviewer RV-d measured it while reviewing #772 (#735), as N2 (#772 (comment)). Main behaves the same, so it is not a regression; it is not a traceback either, so it was outside #735.

What happens (on #772's head 1d149933 and on main), with a dangling symlink at ../IRRS in a two-member holder:

Fix:

  • siblings.py not_a_clone (templates/family-root/scripts/siblings.py:488 at 1d149933) should treat target.is_symlink() and not target.exists() as NOT A CLONE, "is a link to nothing".
  • The doctor's slot reading should say not-a-clone for it, so the two still agree.
  • siblings.py is a family-root copy carried by digest, so every holder will see an upstream-changed row.

Tests:

Lands after #772 (#735).

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-3, session b30e8b49-f249-4668-adb1-1dbfa93c09e1@Eagle, 2026-10-17T04:14:01Z, for #784

    Logged in lanes/log/openRepoShape-3.md at 897445ea38e6a7af983290f188b84afb04087ee2.

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

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