Files
awoooi/docs/schemas/package_supply_chain_baseline_v1.schema.json

203 lines
4.6 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://awoooi.wooo.work/schemas/package_supply_chain_baseline_v1.schema.json",
"title": "Package Supply Chain Baseline v1",
"type": "object",
"required": [
"schema_version",
"status",
"mode",
"generated_at",
"git_commit",
"summary",
"package_json_manifests",
"pyproject_manifests",
"requirements_files",
"lockfiles",
"dockerfiles",
"compose_files",
"gaps",
"execution_boundaries"
],
"properties": {
"schema_version": {
"const": "package_supply_chain_baseline_v1"
},
"status": {
"const": "repo_only_inventory_ready_needs_owner_policy"
},
"mode": {
"const": "repo_snapshot_only_no_install_no_network_no_cve_scan"
},
"generated_at": {
"type": "string"
},
"git_commit": {
"type": "string"
},
"package_manager": {
"type": "string"
},
"summary": {
"type": "object",
"required": [
"package_json_count",
"pyproject_count",
"requirements_file_count",
"lockfile_count",
"dockerfile_count",
"compose_file_count",
"gap_count",
"owner_response_received_count",
"owner_response_accepted_count",
"runtime_gate_count",
"action_button_count"
],
"properties": {
"package_json_count": {
"type": "integer",
"minimum": 0
},
"pyproject_count": {
"type": "integer",
"minimum": 0
},
"requirements_file_count": {
"type": "integer",
"minimum": 0
},
"lockfile_count": {
"type": "integer",
"minimum": 0
},
"dockerfile_count": {
"type": "integer",
"minimum": 0
},
"compose_file_count": {
"type": "integer",
"minimum": 0
},
"gap_count": {
"type": "integer",
"minimum": 0
},
"owner_response_received_count": {
"const": 0
},
"owner_response_accepted_count": {
"const": 0
},
"runtime_gate_count": {
"const": 0
},
"action_button_count": {
"const": 0
}
},
"additionalProperties": true
},
"package_json_manifests": {
"type": "array"
},
"pyproject_manifests": {
"type": "array"
},
"requirements_files": {
"type": "array"
},
"lockfiles": {
"type": "array"
},
"dockerfiles": {
"type": "array"
},
"compose_files": {
"type": "array"
},
"gaps": {
"type": "array",
"items": {
"type": "string"
}
},
"next_owner_evidence_fields": {
"type": "array",
"items": {
"type": "string"
}
},
"execution_boundaries": {
"type": "object",
"required": [
"package_install_authorized",
"dependency_upgrade_authorized",
"lockfile_rewrite_authorized",
"cve_scan_authorized",
"docker_build_authorized",
"docker_pull_authorized",
"docker_push_authorized",
"registry_login_authorized",
"secret_value_collection_allowed",
"workflow_modification_authorized",
"production_deploy_authorized",
"runtime_gate_count",
"action_button_count",
"not_authorization"
],
"properties": {
"package_install_authorized": {
"const": false
},
"dependency_upgrade_authorized": {
"const": false
},
"lockfile_rewrite_authorized": {
"const": false
},
"cve_scan_authorized": {
"const": false
},
"docker_build_authorized": {
"const": false
},
"docker_pull_authorized": {
"const": false
},
"docker_push_authorized": {
"const": false
},
"registry_login_authorized": {
"const": false
},
"secret_value_collection_allowed": {
"const": false
},
"workflow_modification_authorized": {
"const": false
},
"production_deploy_authorized": {
"const": false
},
"runtime_gate_count": {
"const": 0
},
"action_button_count": {
"const": 0
},
"not_authorization": {
"const": true
}
},
"additionalProperties": true
},
"operator_interpretation": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": true
}