BACKGROUND
We currently have four values for suppression.kind: "suppressedInSource", "suppressedExternally", "underReview", and "suppressionRejected". You see that these really fall into two categories: "suppressedInSource" and "suppressedExternally" says how the result was suppressed, and underReview and suppressionRejected track the process of deciding whether the result should be suppressed.
Not only are these different in semantics, but they are different in "number": a result might be suppressed in multiple ways, but it is in only one status at a time.
NOTE: We had a similar situation with result.level, which original included both "severity" values like warning and error, and "status" values like open. So we split result.level into two properties, level and kind.
While we're at it, we tighten up the value names.
SCHEMA CHANGES
In the suppression object:
- In the
kind property, restrict the valid values to "inSource" and "external".
- Add a property
status of type string, optional, with valid values "accepted", "underReview" and "rejected", default: "accepted".
BACKGROUND
We currently have four values for
suppression.kind:"suppressedInSource","suppressedExternally","underReview", and"suppressionRejected". You see that these really fall into two categories:"suppressedInSource"and"suppressedExternally"says how the result was suppressed, andunderReviewandsuppressionRejectedtrack the process of deciding whether the result should be suppressed.Not only are these different in semantics, but they are different in "number": a result might be suppressed in multiple ways, but it is in only one status at a time.
NOTE: We had a similar situation with
result.level, which original included both "severity" values likewarninganderror, and "status" values likeopen. So we splitresult.levelinto two properties,levelandkind.While we're at it, we tighten up the value names.
SCHEMA CHANGES
In the
suppressionobject:kindproperty, restrict the valid values to"inSource"and"external".statusof typestring, optional, with valid values"accepted","underReview"and"rejected", default:"accepted".