GitLab Code Quality always display Code Quality hasn't changed

The version of Gitlab I’m currently using is the community version 15.11, and integrating a custom Code Quality tool following the instructions given in the official manual currently generates reports in the following format.

[
    {
        "description": "global macro 'MAJOR_VERSION' not referenced [MISRA 2012 Rule 2.5, advisory]",
        "fingerprint": "c4288d3b-160e-4c22-b614-5a9a38034e4d",
        "severity": "minor",
        "location": {
            "path": "XXXX/XXXX/XXXX/XXXX.h",
            "lines": {
                "begin": 30
            }
        }
    }
}

And the corresponding .yml is

code_quality.
    stage: test
    script: 
      - codelint.bat
    tags: 
      - windowsserver
    only:
      - api
      - merge_requests  
    artifacts.
      reports: 
        codequality: XXXX/XXXX/XXXX/result/Report.json
      paths:
        - XXXX/XXXX/result/

But it keeps showing up in the UI after the merge request is raised

Code Quality hasn’t changed.

so please tell me what’s going on, this is the first time I’ve used the Code Quality feature in my project!