Skip to content

feat(release): share artifact and tag verification - #495

Open
neilime wants to merge 1 commit into
mainfrom
feat/shared-release-verification
Open

neilime wants to merge 1 commit into
mainfrom
feat/shared-release-verification

Conversation

@neilime

@neilime neilime commented Nov 5, 2026 •

Copy link
Copy Markdown
Member

Node.js and Composer releases duplicated checks for artifact ownership, tag identity and already published releases. Add a read-only release/verify action so both use the same checks before publication.

  • Every artifact must be unexpired and belong to the current workflow run and source commit.
  • Existing lightweight and annotated tags must resolve to that commit. Prepared package releases require tags; source releases may create them later.
  • Return published state for each tag, including draft lookup during retries. API errors and inconsistent release state fail verification.

Package formats, version rules, registry publication and release grouping remain in the language repositories. Producer success must still be enforced by the caller's needs; artifact metadata does not prove tests passed.

Validation: ten focused tests pass, covering multiple artifacts/tags, stale and malformed inputs, drafts, annotated tags, conflicts, annotation cycles and API errors. make lint passes. The integration workflow checks real artifact metadata without creating tags or releases; on PR runs it expects the head-artifact/test-merge mismatch to be rejected. Reference documentation was generated with CI Dokumentor. All GitHub Actions checks pass on this PR, including the real artifact integration check.

Adoption is in ci-github-nodejs #563 and ci-github-php #1. They pin this PR's commit for review and should use a stable shared release before merging.

@github-actions github-actions Bot added the type: feature Introduces a new feature label Nov 5, 2026
@github-actions

github-actions Bot commented Nov 5, 2026

Copy link
Copy Markdown
Contributor

Super-linter summary

Language Validation result
BIOME_FORMAT Pass ✅
BIOME_LINT Pass ✅
CHECKOV Pass ✅
GITHUB_ACTIONS Pass ✅
GITHUB_ACTIONS_ZIZMOR Pass ✅
GITLEAKS Pass ✅
GIT_COMMITLINT Pass ✅
GIT_MERGE_CONFLICT_MARKERS Pass ✅
JSCPD Pass ✅
MARKDOWN Pass ✅
MARKDOWN_PRETTIER Pass ✅
NATURAL_LANGUAGE Pass ✅
PRE_COMMIT Pass ✅
SPELL_CODESPELL Pass ✅
TRIVY Pass ✅
YAML Pass ✅
YAML_PRETTIER Pass ✅

All files and directories linted successfully

For more information, see the GitHub Actions workflow run

Powered by Super-linter
Super-linter revision: 2da136927bd4a73596db63044b504547c62cb854
Super-linter version: 9.0.0

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: feature Introduces a new feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant