Skip to content

Comment on every validation outcome #45

Description

@Maximilian-Nesslauer

Right now the validation bot leaves one comment per pull request and edits it in place.
But it stays silent if everything passes, ownership is verified, auto-merge is armed.
A first-time author then sees a green check and nothing else, and what happens next (the merge, the first stamped release, the snapshot) is invisible to them.
I think that a note from a passing check would help explain them whats happening.

current status

decide in tools/decide.py returns a comment on reject, on could-not-evaluate, and on the three paths where a steward has to act.
On the verified auto-merge path it returns Decision("success", "validated, arming auto-merge", auto_merge=True) with no comment.
_messages(verdict) lists the messages of the checks, but only the reject and could-not-evaluate comments include it, so a message on a passing check is written to the job summary by validate.py and nowhere else.

What it should be instead

Today Should be
No comment when validation passes and auto-merge is armed. A short comment: validated, this merges on its own once the checks finish, the watcher stamps the first release within about ten minutes after the merge, and the snapshot follows.
Messages of passing checks are only in the job summary. Every comment lists them under its first sentence, as notes, one line each, on every path.
Reject and could-not-evaluate comments end with the run link. Unchanged, plus one line on what to do next: push a fix and the check runs again.
One comment per pull request, edited in place. Unchanged.

Tests

test_decide.py: the verified auto-merge path produces a comment; a passing check with a message appears in the comment on every path; a run with no messages produces no notes section; still exactly one comment after a second run.

Not in scope

New checks, and the same change in content-index-releases, which is KSAModding/content-index-releases#34.

Depends on

Nothing, but #38 and #42 both change tools/decide.py, so this should land after them.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:infraCI, workflows, automationarea:publishinglisting and release flows

    Type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions