Files
code-crispies/.wave/contracts/gap-analysis.schema.json

38 lines
1.4 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Gap Analysis",
"description": "Ontology vs. code comparison identifying implementation gaps",
"type": "object",
"required": ["ontology_version", "gaps", "coverage"],
"properties": {
"ontology_version": {
"type": "string"
},
"gaps": {
"type": "array",
"items": {
"type": "object",
"required": ["id", "type", "entity", "description", "severity"],
"properties": {
"id": { "type": "string", "pattern": "^GAP-[0-9]+$" },
"type": { "type": "string", "enum": ["missing_entity", "missing_relationship", "missing_invariant", "partial_implementation", "stale_code", "undocumented_behavior"] },
"entity": { "type": "string" },
"description": { "type": "string" },
"severity": { "type": "string", "enum": ["low", "medium", "high", "critical"] },
"code_locations": { "type": "array", "items": { "type": "string" } },
"recommendation": { "type": "string" }
}
}
},
"coverage": {
"type": "object",
"required": ["entities_covered", "entities_total", "percentage"],
"properties": {
"entities_covered": { "type": "integer", "minimum": 0 },
"entities_total": { "type": "integer", "minimum": 0 },
"percentage": { "type": "number", "minimum": 0, "maximum": 100 }
}
}
}
}