104 lines
4.1 KiB
JSON
104 lines
4.1 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://aas.example/schemas/v1/tuning-gold-equivalence-review.schema.json",
|
|
"title": "AAS v1 tuning gold equivalence independent review",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["schemaVersion", "reviewVersion", "auditId", "reviewer", "scope", "skillEvidence", "decisions", "decisionCounts", "reviewedAt"],
|
|
"properties": {
|
|
"schemaVersion": { "const": 1 },
|
|
"reviewVersion": { "const": "1.0.0" },
|
|
"auditId": { "const": "aas-v1-tuning-gold-equivalence-1.0.1" },
|
|
"reviewer": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["identity", "kind", "scorerImplementer"],
|
|
"properties": {
|
|
"identity": { "type": "string", "minLength": 1 },
|
|
"kind": { "type": "string", "minLength": 1 },
|
|
"scorerImplementer": { "const": false }
|
|
}
|
|
},
|
|
"scope": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["repositoryCommit", "packageVersion", "diagnosticSha256", "tuningOnly", "assignedClaimCount", "heldOutContentsRead", "abstentionLabelsRead", "readOnlyReview"],
|
|
"properties": {
|
|
"repositoryCommit": { "pattern": "^[0-9a-f]{40}$", "type": "string" },
|
|
"packageVersion": { "const": "14.6.0" },
|
|
"diagnosticSha256": { "$ref": "#/$defs/sha256" },
|
|
"tuningOnly": { "const": true },
|
|
"assignedClaimCount": { "type": "integer", "minimum": 1, "maximum": 19 },
|
|
"heldOutContentsRead": { "const": false },
|
|
"abstentionLabelsRead": { "const": false },
|
|
"readOnlyReview": { "const": true }
|
|
}
|
|
},
|
|
"skillEvidence": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["skillId", "path", "sha256", "lineRanges"],
|
|
"properties": {
|
|
"skillId": { "type": "string", "minLength": 1 },
|
|
"path": { "pattern": "^skills/[^/]+/SKILL\\.md$", "type": "string" },
|
|
"sha256": { "$ref": "#/$defs/sha256" },
|
|
"lineRanges": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": { "pattern": "^[1-9][0-9]*-[1-9][0-9]*$", "type": "string" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"decisions": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"maxItems": 19,
|
|
"items": { "$ref": "#/$defs/decision" }
|
|
},
|
|
"decisionCounts": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["ADD_TO_ALLOWED_EQUIVALENT", "REJECT_NOT_EQUIVALENT", "AMBIGUOUS_NEEDS_ADJUDICATION"],
|
|
"properties": {
|
|
"ADD_TO_ALLOWED_EQUIVALENT": { "type": "integer", "minimum": 0, "maximum": 19 },
|
|
"REJECT_NOT_EQUIVALENT": { "type": "integer", "minimum": 0, "maximum": 19 },
|
|
"AMBIGUOUS_NEEDS_ADJUDICATION": { "type": "integer", "minimum": 0, "maximum": 19 }
|
|
}
|
|
},
|
|
"reviewedAt": { "format": "date", "type": "string" }
|
|
},
|
|
"$defs": {
|
|
"sha256": { "pattern": "^[0-9a-f]{64}$", "type": "string" },
|
|
"solution": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["solutionId", "allowedSkillIds", "requiredGroups"],
|
|
"properties": {
|
|
"solutionId": { "type": "string", "minLength": 1 },
|
|
"allowedSkillIds": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } },
|
|
"requiredGroups": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": { "type": "array", "minItems": 1, "uniqueItems": true, "items": { "type": "string", "minLength": 1 } }
|
|
}
|
|
}
|
|
},
|
|
"decision": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["caseId", "skillId", "decision", "coherentSolution", "reason"],
|
|
"properties": {
|
|
"caseId": { "pattern": "^tuning\\.", "type": "string" },
|
|
"skillId": { "type": "string", "minLength": 1 },
|
|
"decision": { "enum": ["ADD_TO_ALLOWED_EQUIVALENT", "REJECT_NOT_EQUIVALENT", "AMBIGUOUS_NEEDS_ADJUDICATION"] },
|
|
"coherentSolution": { "oneOf": [{ "$ref": "#/$defs/solution" }, { "type": "null" }] },
|
|
"reason": { "type": "string", "minLength": 1 }
|
|
}
|
|
}
|
|
}
|
|
}
|