CodeImprover Metrics app: Pull Request Report - Explained

1) Pull request status headline

The Commit status headline has two pieces of information.

  • Failed or Success
    The app reports a boolean true or false back to GitHub. Is an acceptable rating achieved or not?
    The default threshold for approval is a rating of 3.5. Every Rating below the threshold is considered failed.
  • Rating
    The actual rating of the code in this pull request.
    Learn more about ratings here

2)  Pull Request Report

Simply stating that this report is regarding a pull request.
(in other words – this is neither a commit report nor a merge commit report)

3) Summary of the Analysis

The most significant information is the SHA of the head commit of your pull request (your new code) and the SHA of the parent git commit (the original code).

Since check reports in GitHub are always owned by a commit – the pull request report is placed on the head commit of the pull request. Meaning that the head commit does not have a CodeImprover commit report.
(This could be considered a design weakness of GitHub, and may change in the future.)

If you push a new commit to the branch of an open pull request – that new commit becomes the head commit, The pull request report is recalculated and placed on the new head commit, and the former head commit is provided with a proper commit report.

When you eventually merge the pull request. The pull request report (on the head commit) is replaced by a standard commit report and the merge commit is provided with a merge commit report. (presently empty, since we are still considering what to report on a merge commit)

4) List of Commits in the pull request

This is a list of the commits in the pull request. 

Each commit is provided with the sum of observations score points – to help you to chose which one to dive into. 

This is the only place you can see the observation score of the head commit (the one at the bottom of the list) since the report on the head commit is presently occupied by this pull request report.

5) Observations

This is a list of the observations made by CodeImprover. 

6) Observation Score column

For each observation, the resulting score of points is listed in this column.
Read about observation score points here

Use this to prioritize the effort to raise the code quality

7) Annotations

This is a very detailed list of what observation was done and where it was done. Use this to find the observations that you want to take action on.