generated from coulomb/repo-seed
167 lines
5.2 KiB
JSON
167 lines
5.2 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"title": "Guide Board Extension Manifest",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"version",
|
|
"extension_type",
|
|
"lifecycle_status",
|
|
"supported_frameworks",
|
|
"authorities",
|
|
"profile_schemas",
|
|
"check_groups",
|
|
"runner_entrypoints",
|
|
"normalizers",
|
|
"mappings",
|
|
"report_fragments",
|
|
"dependencies",
|
|
"restricted_assets",
|
|
"certification_boundary"
|
|
],
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"version": { "type": "string" },
|
|
"extension_type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"executable_harness",
|
|
"validator",
|
|
"protocol_service",
|
|
"hosted_suite",
|
|
"repository_quality",
|
|
"procedural_evidence",
|
|
"hybrid"
|
|
]
|
|
},
|
|
"lifecycle_status": {
|
|
"type": "string",
|
|
"enum": ["candidate", "incubating", "active", "external", "deprecated"]
|
|
},
|
|
"supported_frameworks": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": ["string", "object"],
|
|
"additionalProperties": false,
|
|
"required": ["id"],
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"version": { "type": ["string", "null"] },
|
|
"source_url": { "type": ["string", "null"] },
|
|
"authority_ref": { "type": ["string", "null"] },
|
|
"description": { "type": ["string", "null"] }
|
|
}
|
|
}
|
|
},
|
|
"authorities": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": ["string", "object"],
|
|
"additionalProperties": false,
|
|
"required": ["id"],
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"name": { "type": ["string", "null"] },
|
|
"version": { "type": ["string", "null"] },
|
|
"source_url": { "type": ["string", "null"] },
|
|
"license": { "type": ["string", "null"] },
|
|
"access": { "type": ["string", "null"] }
|
|
}
|
|
}
|
|
},
|
|
"metadata": { "type": "object" },
|
|
"profile_schemas": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": ["string", "object"],
|
|
"additionalProperties": false,
|
|
"required": ["id", "profile_kind", "path"],
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"profile_kind": { "type": "string", "enum": ["target", "assessment"] },
|
|
"path": { "type": "string" },
|
|
"subject_type": { "type": ["string", "null"] },
|
|
"description": { "type": ["string", "null"] }
|
|
}
|
|
}
|
|
},
|
|
"check_groups": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["id", "name", "check_type", "requirement_refs", "runner_ref"],
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"check_type": { "type": "string" },
|
|
"requirement_refs": { "type": "array", "items": { "type": "string" } },
|
|
"runner_ref": { "type": ["string", "null"] }
|
|
}
|
|
}
|
|
},
|
|
"preflight_runner": { "type": ["string", "null"] },
|
|
"runner_entrypoints": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["id", "kind"],
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"kind": {
|
|
"type": "string",
|
|
"enum": ["python_module", "command", "external"]
|
|
},
|
|
"module_path": { "type": ["string", "null"] },
|
|
"callable": { "type": ["string", "null"] },
|
|
"command": { "type": ["array", "null"], "items": { "type": "string" } },
|
|
"metadata": { "type": "object" },
|
|
"description": { "type": ["string", "null"] }
|
|
}
|
|
}
|
|
},
|
|
"normalizers": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": ["string", "object"],
|
|
"additionalProperties": false,
|
|
"required": ["id", "kind", "module_path", "callable"],
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"kind": { "type": "string", "enum": ["python_module"] },
|
|
"module_path": { "type": "string" },
|
|
"callable": { "type": "string" },
|
|
"runner_ref": { "type": ["string", "null"] },
|
|
"metadata": { "type": "object" },
|
|
"description": { "type": ["string", "null"] }
|
|
}
|
|
}
|
|
},
|
|
"mappings": { "type": "array", "items": { "type": "string" } },
|
|
"report_fragments": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": ["string", "object"],
|
|
"additionalProperties": false,
|
|
"required": ["id", "kind"],
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"kind": { "type": "string", "enum": ["markdown_file", "python_module"] },
|
|
"path": { "type": ["string", "null"] },
|
|
"module_path": { "type": ["string", "null"] },
|
|
"callable": { "type": ["string", "null"] },
|
|
"title": { "type": ["string", "null"] },
|
|
"description": { "type": ["string", "null"] }
|
|
}
|
|
}
|
|
},
|
|
"dependencies": { "type": "array", "items": { "type": "string" } },
|
|
"restricted_assets": { "type": "array", "items": { "type": "string" } },
|
|
"certification_boundary": { "type": "string" }
|
|
}
|
|
}
|