UNPKG

github-sarif-validator-jest

Version:

A Jest package that allows you to validate a Sarif output is compatible for Github Code scanning

149 lines (148 loc) 5.28 kB
{ "$id": "github-sarif-schema", "title": "SARIF GitHub Extended Schema", "description": "An extension of the SARIF 2.1.0 schema to add GitHub-specific requirements.", "$schema": "http://json-schema.org/draft-07/schema#", "allOf": [ { "$ref": "https://docs.oasis-open.org/sarif/sarif/v2.1.0/errata01/os/schemas/sarif-schema-2.1.0.json" } ], "type": "object", "properties": { "runs": { "type": "array", "items": { "type": "object", "properties": { "results": { "type": "array", "items": { "type": "object", "properties": { "ruleId": { "type": "string", "description": "Unique identifier for the rule." }, "message": { "type": "object", "properties": { "text": { "type": "string", "description": "Message text for the result." } }, "required": ["text"] }, "locations": { "type": "array", "items": { "type": "object", "properties": { "physicalLocation": { "type": "object", "properties": { "artifactLocation": { "type": "object", "properties": { "uri": { "type": "string", "description": "Location in the source code where the issue was detected." } }, "required": ["uri"] } }, "required": ["artifactLocation"] } }, "required": ["physicalLocation"] } }, "partialFingerprints": { "type": "object", "minProperties": 1, "description": "A unique identifier for the result" }, "rule": { "type": "object", "properties": { "index": { "type": "integer", "description": "The index within the tool component rules array of the rule object associated with this result." } }, "required": ["index"] } }, "required": ["ruleId", "message", "locations"] } }, "tool": { "type": "object", "properties": { "driver": { "type": "object", "properties": { "rules": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the rule." }, "shortDescription": { "type": "object", "properties": { "text": { "type": "string", "description": "A short summary of the rule." } }, "required": ["text"] }, "fullDescription": { "type": "object", "properties": { "text": { "type": "string", "description": "A detailed description of the rule." } }, "required": ["text"] }, "helpUri": { "type": "string", "description": "A link to more detailed documentation for the rule." }, "help": { "type": "object", "properties": { "text": { "type": "string", "description": "A markdown description that provides more detailed guidance on the rule." } }, "required": ["text"] } }, "required": [ "id", "shortDescription", "fullDescription", "helpUri", "help" ] } } } } } } } } } } }