[
https://issues.apache.org/jira/browse/IGNITE-29145?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Aleksandr Chesnokov updated IGNITE-29145:
-----------------------------------------
Ignite Flags: (was: Docs Required,Release Notes Required)
> Label and comment on PRs with wire format changes
> -------------------------------------------------
>
> Key: IGNITE-29145
> URL: https://issues.apache.org/jira/browse/IGNITE-29145
> Project: Ignite
> Issue Type: Improvement
> Reporter: Aleksandr Chesnokov
> Assignee: Aleksandr Chesnokov
> Priority: Major
> Labels: IEP-132, ise
>
> Show the JSON comparison result from IGNITE-29261 on the PR so reviewers can
> open the report directly.
> h3. What the bot does
> * When CI finds a diff, the bot adds {{compatibility}} and posts or updates
> one comment linking to Job Summary. A rerun with a diff adds the label again
> if a reviewer removed it.
> * When the diff is empty, the bot removes its comment. It removes the label
> only if it applied the current label. This preserves labels that reviewers
> added by hand.
> h3. When to publish
> * Match the run to the open PR, including PRs from forks. Check the PR head
> and target branch name so an old run cannot update a different PR state. The
> target branch may have gained commits since the run.
> * Require success from {{check-wire}} and from {{Check all wire format
> descriptions are collected}} in {{check-java}} on the PR head. Use these
> results even if an unrelated check fails.
> * If either result fails, is cancelled, is skipped or cannot be verified,
> leave the label and comment as they are. An incomplete check cannot show that
> the format is unchanged.
> h3. How to publish
> Run the publisher on {{workflow_run: completed}} for PR runs of the
> code-check workflow. It uses only code from the default branch. Give write
> access to the publisher and keep the {{pull_request}} workflow read-only so
> PR code cannot write to the repository.
> Read the existing {{check-wire}} steps through the Actions API. After a
> successful comparison, a successful {{wire-diff}} upload means there is a
> diff. A skipped upload means the diff is empty. Treat any other upload
> outcome as unverified. Mark the bot comment so a rerun can find it.
> Replace the {{pull_request_target}} reporter. Use {{check-wire}} in the PR
> checks and retire the separate {{Rolling upgrade compatibility}} check.
> h3. Done when
> * Test a diff, an empty diff and a rerun that updates the same comment. Check
> labels added by hand and reruns after a reviewer removes the bot's label.
> * Test failed or skipped completeness, an unrelated failure, a newer PR head
> and a target branch that gained commits.
> * Test on a fork PR after the publisher is on the default branch.
> Plan in IGNITE-25489. Early hints are tracked in IGNITE-29289 and semantic
> comparison in IGNITE-29230. [ASF
> policy|https://infra.apache.org/github-actions-policy.html].
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)