Skip to content

Support tag references when listing referrers - #68

Merged
toddysm merged 2 commits into
mainfrom
feature/referrers-by-tag/issue-46-fd2ca782
Oct 30, 2026
Merged

toddysm merged 2 commits into
mainfrom
feature/referrers-by-tag/issue-46-fd2ca782

Conversation

@toddysm

@toddysm toddysm commented Oct 28, 2026 •

Copy link
Copy Markdown
Owner

Summary

Allow regshape referrer list -i registry/repo:tag to resolve the tag with a manifest HEAD request before querying referrers.

  • Reuse the existing manifest library and accept all supported manifest/index media types; references without a suffix resolve latest.
  • Preserve SHA-256/SHA-512 digest passthrough without a manifest lookup, and keep unsupported explicit digest references as usage errors.
  • Report manifest, authentication, transport, and missing/blank digest-header failures with exit code 1 before listing referrers or touching output files.
  • Preserve --all, --artifact-type, --json, and --output behavior.
  • Update command help, the CLI specification, and regression coverage for flag combinations and CLI-to-library wiring.

Current validation

Testing mode: hosted. Tested/pushed/reviewed head: e5d1adad3be0efb4bd1dc32cd17135f4e7634507.

Integrated main 6d2c188b07e6211263b6ba3518eeee97bd2bae20 with a normal merge commit. The baseline repairs and shared test workflow from #71 are now included; history was not rewritten and the feature scope is unchanged.

  • Local full suite: PYTHONDONTWRITEBYTECODE=1 python3 -B -m pytest -q -p no:cacheprovider — 1071 passed on Python 3.12.4.
  • Hosted run 40955354879: 1071 passed on each of Python 3.10, 3.11, and 3.12.
  • CodeQL checks passed.
  • Current-head Copilot and Codex reviews completed with no findings or unresolved review threads.
  • The previous five baseline failures have been fixed through Fix baseline catalog and authentication tests #71; no tests were skipped or disabled.

Tests use mocked registry/network responses, not a live registry. Release automation is unchanged. Merged with owner authorization as 5fdd598a3233d5cb53b4380c22f104e4a91bf439; the signed merge tree exactly matches the tested/reviewed head. Issue #46 is closed. No release or branch/worktree cleanup was performed.

Closes #46

Reuse the manifest HEAD operation, preserve digest passthrough, and report lookup failures before querying referrers or writing output. Cover flag combinations and library wiring, update CLI documentation, and add hosted Python test validation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings October 28, 2026 21:19
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-29T21:11:43.853599Z e5d1ada Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

No active review issues are reported for the changes adding tag support to regshape referrer list.

No open issues 🎉

What changed in this PR

Adds tag support to regshape referrer list, addressing #46 by reusing the existing manifest library to resolve tags before querying referrers.

Changes:

  • Resolves explicit and default (latest) tags while preserving digest passthrough and existing output options.
  • Adds tests for resolution, failure handling, and CLI-to-library integration; updates help and specifications.
  • Adds a Python 3.10–3.12 test workflow and documents local test commands.
File Description
src/​regshape/​tests/​test_referrer_cli.py Tests tag resolution, digest passthrough, errors, and output options.
src/​regshape/​cli/​referrer.py Resolves tags with manifest HEAD requests and handles lookup failures.
specs/​cli/​referrer.md Documents accepted references, resolution behavior, errors, and examples.
CONTRIBUTING.md Documents test setup and execution.
.github/​workflows/​tests.yml Runs pytest on Python 3.10, 3.11, and 3.12.

Review effort: Balanced

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@toddysm
toddysm requested a balanced review from Copilot October 29, 2026 21:10
@toddysm

toddysm commented Oct 29, 2026

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🚀

Reviewed commit: e5d1adad3b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The referrer tag-support change has no active review issues.

No open issues 🎉

Review effort: Balanced

@toddysm
toddysm merged commit 5fdd598 into main Oct 30, 2026
7 checks passed
toddysm added a commit that referenced this pull request Oct 30, 2026
Integrate the reviewed referrer feature before validating and merging tag pagination.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
toddysm added a commit that referenced this pull request Oct 30, 2026
Add list_tags_all and opt-in tag list --all with OCI pagination semantics, safe continuation and authentication redirects, explicit malformed-response errors, and a ten-consecutive-empty-linked-page safety limit. Preserve single-page behavior and avoid partial output.

Includes merged referrer support from #68. The combined tree passed 1300 tests per supported Python version, CodeQL, scoped type checks, and refreshed Copilot/Codex reviews.

Closes #69

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enhancement: Support tag references in referrer list with automatic digest resolution

2 participants