How to handle 3 statuses (pass, fail, and warning) in Gitlab CI/CD?

I have a C# app, the application implementing build job. after each run the app should return one of the three statuses passed value 0 failed value -1 warning value 137

This application will be run using the YAML file part of the YAML file I'm using:

Build:
    stage: Build
    <<: 
      - *prefix_build_stage_conf
      - script:
          - {MY_RUN_LINE}
      - allow_failure: 
          exit_codes:
            - 137
      - *post_build_stage_conf 

According to the example in the GitLab documentation, when the application's exit code is 137, the job should display a warning symbol (!) indicating a warning. If the exit code is -1, the job should fail and display a cross symbol (X). Finally, if the exit code is 0, the job should pass successfully and this is exactly what I need but it is not working for me.

in case of exit status 0 (pass) HQNgz

in case of exit status -1 (fail) Fpu9S

in case of exit status 137 (warning) XNZ1t