Can PR status checks show more details in the Conversation tab?

I have built an action that checks that every commit in a PR matches a certain format. Unfortunately when it fails the default UI obscures relevant info, and users have to navigate out of the Conversation tab and into the Check tab just to see what went wrong.

Here’s my Action as it is today - you can see the path and name takes up all the UI space, and the message is hidden unless I mouseover it

It seems like it should be possible to display more information here: The Checks API supports things like title, summary, and description, and other services seem to be able to make some use of them - like CI integrations, which will display sections listing what set of tests passed and failed.

I’ve spent about 2 days trying to figure this out, but I’m stumped.

Things I have tried:

  • Creating a new Check Run and updating it’s status. This succeeded in the code but nothing changed in the UI
  • Getting the check run ID of the action run (which is ridiculously obscured IMO) by
    • Passing the run_id as an input from the context
    • Using the run_id to list the workflows for that ID
    • Parsing the check_run_id out from the check_run_url field of the only job that’s in the list
    • Using that check_run_id to make calls to the Checks API. These also succeed without error, but still nothing changes. Even when I set conclusion: "failed" the Action run will succeed unless I also call core.setFailed.

I feel like either this is some kind of limit of Actions that prevents them from taking advantage of the Checks UI, or I’m missing some really fundamental.

Any help would be greatly appreciated!

It’s pretty simple to have your action actually add a comment, would that work for you?

1 Like

Thanks for your feedback.
GitHub takes your suggestions very seriously, and the suggestions are very helpful for improving GitHub.

I recommend that you can directly share a feature request here to improve the UI. For example, a feature that set two lines in the lane of each check, the first line shows the name and status of the check, and the second line shows some message of the check.
That will allow you to directly interact with the appropriate engineering team, and make it more convenient for the engineering team to collect and categorize your suggestions.

Yeah, that might work, but I think the status check UI would still be a better place to display it. That piece of UI is expected to update and change state as the PR changes. It’s also one of the first things you see. If I create a detailed comment when my check fails then I either need to add another one when it passes, or update/remove the existing comment. It might be the only solution, but it feels like work I shouldn’t have to do.

I’m still interested in an explanation for why this doesn’t work, if anyone knows it. Other things (Github Apps, for example) can have detailed statuses, and it seems like the Checks API is how they do it, so it still kind of feels like I’m just doing something wrong.