Skip to content

adopt-project.py check: a plan in a name the policy refuses gets no rename-first remedy, and a source that names no repository is never compared with the plan's recorded source.repository #716

Closed

Description

@brettheap

adopt-project.py check should say, for a plan in the source's own refused name, what execute says on the same plan: rename the source first. And a plan whose recorded source: repository: was hand-edited should not check plan ok where the live source names no repository. The comment rider ties the two together.

From lane 4's checklist triage of 2026-10-16 (T6), approved by Brett Heap at 2026-10-16T13:36:07Z ("approve all triage recommendations"). One pull request covers the lines below.

Parent: #457. Milestone: v1.1.1 (a follow-up filed after Brett Heap's v1.1.1 word of 2026-10-16T13:35:28Z).

Authored after the v1.1.0 work; lands after the v1.1.0 tag unless the release owner (lane 3) says otherwise.

Lands after: every open change to adopt-project.py, because the file moves under it. Lane 4 merge-trees at each push, and the one that lands second re-gates:

Effort: S. Platform: all.

Files: adopt-project.py only; not a pinned shape copy, so no re-pin.

Lane openRepoShape-4 claims it at filing; see its CLAIMED comment.

Why this is filed. Both lines are pre-existing and exotic: a hand-edited plan in a name the policy refuses, and a hand-edited source: repository: on a source with no origin. execute refuses both, so nothing is lost; check is the command that tells a person before the legs exist. Line numbers are at c6122e8 (#639) unless a line says another commit; main has moved since (#621 and #627 landed).

Lines

  • L4-38 (P3): adopt-project.py check gives no remediation for a plan in the source's own refused name: it calls _check_names without the source and prints only the detail, so a hand-edited billing-service plan whose origin is acme/billing-service gets naming-unclassified with no rename-first text (execute on the same plan does say it). Pre-existing: check prints no naming remediation at all. Where: adopt-project.py:8337 in cmd_check (:8276) calls _check_names(naming, names, pins) with no source, so no rename-first text (:8338 on 8062810d). (source)
  • L4-40 (P3): when the live source names no repository, the plan's own recorded source: repository: is not consulted: a plan for acme/Atlas hand-edited to Atlsa, then git remote remove origin on the source, checks plan ok and execute reads https://github.com/acme/Atlsa.git. The same with execute --source <a copy with no origin>. Where: adopt-project.py:11477-11479, _not_the_source returns None where the live source names no repository (def _not_the_source is at :11531 on 8062810d); open_source (:4177) opens an existing local_path and never reads source.repository. (source)

Rides along (backlog; tick it here if the same change covers it)

What is expected

  • check prints the rename-first text for a plan in the source's own refused name, as execute does: the source is handed to _check_names at the cmd_check site, and a test pins that check and execute say the same remedy on the same plan.
  • A recorded source: repository: is compared with the source whenever the live source names none, so a hand edit of it is plan-not-the-source, in check and in execute. A test hand-edits a plan to Atlsa and removes origin, as the line measures it.
  • L4-48: the two comments say what check does with an org: that checked_value refuses.

Not a duplicate: lane 2's #658 and #620 are the derived-id label; lane 1's #650 to #655 are other adopt-project.py lines. No issue numbered #650 to #700 cites L4-38, L4-40 or L4-48 (read at 13:17Z). L4-127, which sat with these lines in the first draft, is in #708: it is a regression from #644.

Each line above is a line of #457's checklist comment (issuecomment-6157842287). Tick it there too when this closes.

Lane: openreposhape-4 (openRepoShape-4)

Activity

  1. added this to the v1.1.1 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-16T14:03:49Z, for #716

    Logged in lanes/log/openRepoShape-4.md at 130870dde234bdacae60631a9f1ffaabea602920.

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

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