This commit is contained in:
@@ -0,0 +1,237 @@
|
||||
{
|
||||
"$id": "https://chimera-gfx.invalid/schemas/controlled-runtime-profile-v1.json",
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"schema_version",
|
||||
"profile",
|
||||
"decision",
|
||||
"firmware",
|
||||
"payload_manager",
|
||||
"loader",
|
||||
"sdk",
|
||||
"budgets",
|
||||
"effects",
|
||||
"execution_authorized",
|
||||
"expected_volatile_effects",
|
||||
"hard_blockers",
|
||||
"artifact",
|
||||
"execution",
|
||||
"deployment"
|
||||
],
|
||||
"properties": {
|
||||
"schema_version": {"const": 1},
|
||||
"profile": {"const": "controlled-ps5-runtime"},
|
||||
"decision": {
|
||||
"enum": [
|
||||
"READY_FOR_HARDENED_RUNTIME_DEPLOYMENT",
|
||||
"BLOCKED_VERSION_OR_UNBOUNDED_EFFECT"
|
||||
]
|
||||
},
|
||||
"execution_authorized": {"const": false},
|
||||
"artifact": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["id", "built", "filename", "size", "sha256", "source_commit"],
|
||||
"properties": {
|
||||
"id": {"type": "string", "minLength": 1},
|
||||
"built": {"type": "boolean"},
|
||||
"filename": {"type": ["string", "null"]},
|
||||
"size": {"type": ["integer", "null"], "minimum": 1},
|
||||
"sha256": {
|
||||
"oneOf": [
|
||||
{"type": "string", "pattern": "^[0-9a-f]{64}$"},
|
||||
{"type": "null"}
|
||||
]
|
||||
},
|
||||
"source_commit": {
|
||||
"oneOf": [
|
||||
{"type": "string", "pattern": "^[0-9a-f]{40}$"},
|
||||
{"type": "null"}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"budgets": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"persistent_write_budget",
|
||||
"filesystem_write_budget",
|
||||
"payload_network_access",
|
||||
"maximum_runtime_ms",
|
||||
"automatic_retry"
|
||||
],
|
||||
"properties": {
|
||||
"persistent_write_budget": {"const": "controlled_artifact_removable"},
|
||||
"filesystem_write_budget": {"const": "controlled_artifact_directory_only"},
|
||||
"payload_network_access": {"const": "none"},
|
||||
"maximum_runtime_ms": {"type": "integer", "minimum": 1, "maximum": 2000},
|
||||
"automatic_retry": {"const": false}
|
||||
}
|
||||
},
|
||||
"deployment": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["installed", "ready_for_installation", "rollback_prepared"],
|
||||
"properties": {
|
||||
"installed": {"const": false},
|
||||
"ready_for_installation": {"type": "boolean"},
|
||||
"rollback_prepared": {"type": "boolean"}
|
||||
}
|
||||
},
|
||||
"effects": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["id", "classification"],
|
||||
"properties": {
|
||||
"id": {"type": "string", "minLength": 1},
|
||||
"classification": {
|
||||
"enum": [
|
||||
"EXPECTED_VOLATILE_RUNTIME_EFFECT",
|
||||
"RESTORED_BY_LOADER",
|
||||
"PAYLOAD_PROCESS_LOCAL",
|
||||
"FAIL_CLOSED_TERMINATION",
|
||||
"BOUNDED_WATCHDOG",
|
||||
"OS_RECLAIMED_ON_EXIT",
|
||||
"EXPLICIT_PROCESS_EXIT",
|
||||
"HASH_BOUND_SAME_FD",
|
||||
"ALLOWED_APPLICATION_WRITE",
|
||||
"PERSISTENT_WRITE",
|
||||
"UNBOUNDED_OR_UNKNOWN"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"execution": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["execution_eligible", "authorized", "transferred", "executed"],
|
||||
"properties": {
|
||||
"execution_eligible": {"type": "boolean"},
|
||||
"authorized": {"const": false},
|
||||
"transferred": {"const": false},
|
||||
"executed": {"const": false}
|
||||
}
|
||||
},
|
||||
"expected_volatile_effects": {
|
||||
"type": "array",
|
||||
"uniqueItems": true,
|
||||
"items": {"type": "string", "minLength": 1}
|
||||
},
|
||||
"firmware": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["exact", "device_attested", "evidence"],
|
||||
"properties": {
|
||||
"exact": {"const": "9.60"},
|
||||
"device_attested": {"type": "boolean"},
|
||||
"evidence": {"type": "string", "minLength": 1}
|
||||
}
|
||||
},
|
||||
"hard_blockers": {
|
||||
"type": "array",
|
||||
"items": {"type": "string", "minLength": 1}
|
||||
},
|
||||
"loader": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"release",
|
||||
"base_commit",
|
||||
"hardened_commit",
|
||||
"sha256",
|
||||
"size",
|
||||
"installed",
|
||||
"reproducible"
|
||||
],
|
||||
"properties": {
|
||||
"release": {"const": "v0.23-chimera-phase07"},
|
||||
"base_commit": {"const": "699e8bcff03e91e8d6ca6eba281af25c5a58d8c2"},
|
||||
"hardened_commit": {"const": "197623058f509eddde18868dafcb92fdcac66464"},
|
||||
"sha256": {"const": "63e810982471eb40cae3a20aa9df9a0a02892f420e429874fae4e99aa400b561"},
|
||||
"size": {"const": 397000},
|
||||
"installed": {"const": false},
|
||||
"reproducible": {"const": true}
|
||||
}
|
||||
},
|
||||
"payload_manager": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"release",
|
||||
"base_commit",
|
||||
"hardened_commit",
|
||||
"sha256",
|
||||
"size",
|
||||
"installed",
|
||||
"reproducible"
|
||||
],
|
||||
"properties": {
|
||||
"release": {"const": "v0.3.1-chimera-controlled-phase07"},
|
||||
"base_commit": {"const": "cfbc70f30f419b09bf2b52283f7409e2d3117ee1"},
|
||||
"hardened_commit": {"const": "e23d94ff91233aa770e2342800c1467875bdef44"},
|
||||
"sha256": {"const": "8fecf8241a46246eddbd21e8bb4d875f5d76f1f4f4c6a11384df1f131aa5e5b1"},
|
||||
"size": {"const": 99560},
|
||||
"installed": {"const": false},
|
||||
"reproducible": {"const": true}
|
||||
}
|
||||
},
|
||||
"sdk": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["release", "commit"],
|
||||
"properties": {
|
||||
"release": {"const": "v0.41"},
|
||||
"commit": {"const": "d2e2e585740362976a39fdd5ccf390f199a7bc37"}
|
||||
}
|
||||
}
|
||||
},
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"decision": {"const": "READY_FOR_HARDENED_RUNTIME_DEPLOYMENT"}
|
||||
},
|
||||
"required": ["decision"]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"artifact": {
|
||||
"properties": {
|
||||
"built": {"const": true},
|
||||
"filename": {"type": "string", "pattern": "^[^/\\\\]+$"},
|
||||
"size": {"type": "integer", "minimum": 1},
|
||||
"sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"},
|
||||
"source_commit": {"type": "string", "pattern": "^[0-9a-f]{40}$"}
|
||||
}
|
||||
},
|
||||
"deployment": {
|
||||
"properties": {
|
||||
"ready_for_installation": {"const": true},
|
||||
"rollback_prepared": {"const": true}
|
||||
}
|
||||
},
|
||||
"execution": {
|
||||
"properties": {"execution_eligible": {"const": true}}
|
||||
},
|
||||
"hard_blockers": {"maxItems": 0}
|
||||
}
|
||||
},
|
||||
"else": {
|
||||
"properties": {
|
||||
"artifact": {
|
||||
"properties": {"built": {"const": false}}
|
||||
},
|
||||
"execution": {
|
||||
"properties": {"execution_eligible": {"const": false}}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user