Skip to content

Changelogs: add commands for PR/artifact evaluation#2862

Open
cotti wants to merge 13 commits intomainfrom
feature/changelog-evaluate-pr
Open

Changelogs: add commands for PR/artifact evaluation#2862
cotti wants to merge 13 commits intomainfrom
feature/changelog-evaluate-pr

Conversation

@cotti
Copy link
Contributor

@cotti cotti commented Mar 6, 2026

This pull request introduces a new evaluation pipeline for changelog-related GitHub Actions, adding support for artifact-based cross-workflow state transfer and robust PR evaluation. The changes include new services for evaluating PRs and artifacts, new argument and metadata types, enhancements to label-based blocking logic, and updates to documentation and test visibility.

New CI Evaluation Pipeline for Changelog Generation:

New evaluation services and workflow artifacts:

  • Added ChangelogPrEvaluationService, ChangelogPrepareArtifactService, and ChangelogArtifactEvaluationService classes to handle PR evaluation, artifact preparation, and artifact evaluation in CI workflows. These services manage PR eligibility, artifact packaging, and artifact validation, enabling robust cross-workflow state transfer for changelog generation. [1] [2] [3]
  • Introduced supporting argument types (EvaluatePrArguments, PrepareArtifactArguments, EvaluateArtifactArguments) and a metadata record (ChangelogArtifactMetadata) for structured data exchange between workflows. [1] [2] [3] [4]
  • Added PrEvaluationResult enum to standardize PR evaluation outcomes.

Label-based blocking and PR info improvements:

  • Enhanced label-based blocking logic in PrInfoProcessor with new static methods (AreAllProductsBlocked, IsBlockedByRules) to determine if all products are blocked by PR labels, supporting per-product and global rules.
  • Updated GitHubPrInfo to include HeadSha, HeadRef, and IsFork properties to support more accurate PR state tracking.

Documentation and test visibility:

  • Updated CLI documentation to describe the new changelog evaluate-pr, changelog prepare-artifact, and changelog evaluate-artifact commands for CI workflows.
  • Added InternalsVisibleTo for the Elastic.Changelog.Tests assembly to enable internal testing of new logic.
  • Added a dependency on GitHub.Actions.Core for integration with GitHub Actions.

@github-actions
Copy link

github-actions bot commented Mar 6, 2026

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant