Thank you so much for the fine work that you do and the great plugin you contribute to!!
I am currently using Cucumber with TestNG and using the Cucumber JVM Reporting plugin along with the TestNG plugin. The Cucumber JVM Reporting plugin will mark the build as failed/unstable if there are any failures. I have opened this issue (https://github.com/jenkinsci/cucumber-reports-plugin/issues/71) to try and fix that on their end.
But along with that, in the case where the failure count is below the Unstable threshold, I believe the TestNG plugin should Forcefully mark the build as SUCCESS (overruling any previous attempts to mark the build as Unstable/Failed).
It appears that the plugin currently does nothing because it assumes the build is going to be marked Passed unless it marks the build otherwise (Unstable or Failed).
Attached are three screenshots to illustrate my thinking...
unstable.png: the current behavior when a build hits the unstable threshold.
current_behavior_with_cucumber_reports.png: the current behavior when the failure count is below the unstable threshold (when the cucumber-jvm-reporting plugin is used in tandem with the TestNG plugin)
success.png: my proposed behavior when the failure count is below the unstable threshold.