repo-config/configure.sh looks up the target's registry entry by the bare repository name (name="${repo##*/}"), for the archived exemption, the workflow model, and the declared description. The registry's real identity is each entry's URL. spec/validate.py treats name as a label and enforces its uniqueness, which prevents two entries colliding but not a collision with a repository outside the registry. repo-config/README.md supports running the script against such a repository.
Constructed case: the registry holds an archived entry named Fixture for example-owner/Fixture. Running configure.sh apply other-owner/Fixture matches that entry by name, prints that the repository is archived, and exits 0 without configuring other-owner/Fixture. The same match applies the entry's workflow model and description to the wrong repository.
The in-file comment above the lookup defends name keying on uniqueness within the registry, which is a different question from a match against an unrelated owner. CodeRabbit raised this on the promotion PR #1850 against #1846's archived exemption, and earlier against the model and description lookups. The maintainer chose to track the whole class here rather than patch only the archived check.
Done looks like: every registry lookup in configure.sh matches the requested owner/repo against the entry's URL, a repository outside the registry falls through to the defaults, and the in-file comment states the new rule. spec/audit.py's per-repo entry resolution is worth checking for the same shape.
repo-config/configure.shlooks up the target's registry entry by the bare repository name (name="${repo##*/}"), for the archived exemption, the workflow model, and the declared description. The registry's real identity is each entry's URL.spec/validate.pytreatsnameas a label and enforces its uniqueness, which prevents two entries colliding but not a collision with a repository outside the registry.repo-config/README.mdsupports running the script against such a repository.Constructed case: the registry holds an archived entry named
Fixtureforexample-owner/Fixture. Runningconfigure.sh apply other-owner/Fixturematches that entry by name, prints that the repository is archived, and exits 0 without configuringother-owner/Fixture. The same match applies the entry's workflow model and description to the wrong repository.The in-file comment above the lookup defends name keying on uniqueness within the registry, which is a different question from a match against an unrelated owner. CodeRabbit raised this on the promotion PR #1850 against #1846's archived exemption, and earlier against the model and description lookups. The maintainer chose to track the whole class here rather than patch only the archived check.
Done looks like: every registry lookup in
configure.shmatches the requestedowner/repoagainst the entry's URL, a repository outside the registry falls through to the defaults, and the in-file comment states the new rule.spec/audit.py's per-repo entry resolution is worth checking for the same shape.