feat: generate evidence-based fit assessments

This commit is contained in:
2026-08-20 12:58:53 +02:00
parent 83ccb7f198
commit 5d4535f7b5
12 changed files with 1487 additions and 10 deletions
+66 -1
View File
@@ -9,9 +9,13 @@
"assessment_id",
"assessed_at",
"scope",
"facts",
"decisions",
"release",
"composition",
"deployment_profile",
"scenarios",
"functional_context",
"questionnaire",
"capabilities",
"infrastructure",
@@ -28,7 +32,7 @@
"format": "uri-reference"
},
"schema_version": {
"const": "0.1.0"
"const": "0.2.0"
},
"assessment_id": {
"$ref": "#/$defs/non_empty_string"
@@ -54,6 +58,8 @@
}
}
},
"facts": { "$ref": "#/$defs/string_list" },
"decisions": { "$ref": "#/$defs/string_list" },
"release": {
"type": "object",
"additionalProperties": false,
@@ -95,6 +101,33 @@
}
}
},
"scenarios": {
"type": "array",
"minItems": 2,
"items": { "$ref": "#/$defs/scenario" }
},
"functional_context": {
"type": "object",
"additionalProperties": false,
"required": [
"required_modules",
"optional_modules",
"external_systems",
"missing_contracts",
"policy_decisions",
"manual_workarounds",
"blockers"
],
"properties": {
"required_modules": { "$ref": "#/$defs/string_list" },
"optional_modules": { "$ref": "#/$defs/string_list" },
"external_systems": { "$ref": "#/$defs/string_list" },
"missing_contracts": { "$ref": "#/$defs/string_list" },
"policy_decisions": { "$ref": "#/$defs/string_list" },
"manual_workarounds": { "$ref": "#/$defs/string_list" },
"blockers": { "$ref": "#/$defs/string_list" }
}
},
"questionnaire": {
"type": "object",
"additionalProperties": false,
@@ -239,6 +272,37 @@
}
}
},
"scenario": {
"type": "object",
"additionalProperties": false,
"required": [
"id",
"label",
"status",
"recommendation",
"composition",
"topology",
"conditions"
],
"properties": {
"id": { "$ref": "#/$defs/non_empty_string" },
"label": { "$ref": "#/$defs/non_empty_string" },
"status": { "$ref": "#/$defs/status" },
"recommendation": { "$ref": "#/$defs/non_empty_string" },
"composition": {
"type": "array",
"minItems": 1,
"uniqueItems": true,
"items": { "$ref": "#/$defs/non_empty_string" }
},
"topology": {
"type": "array",
"minItems": 1,
"items": { "$ref": "#/$defs/non_empty_string" }
},
"conditions": { "$ref": "#/$defs/string_list" }
}
},
"assessed_item": {
"type": "object",
"additionalProperties": false,
@@ -259,6 +323,7 @@
"status": { "$ref": "#/$defs/status" },
"evidence": {
"type": "array",
"minItems": 1,
"items": { "$ref": "#/$defs/evidence" }
},
"conditions": { "$ref": "#/$defs/string_list" },