Initial curated chimera source from a8ae5b1db07fb49926c94585e2718e5130330974
This commit is contained in:
commit
c737a37f71
531 files changed
+119270
No files matched your search
@@ -0,0 +1,110 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "https://chimera.local/schemas/ps5-native-package-manifest.schema.json",
|
||||
"title": "Chimera PS5 fPKG package manifest v2",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["schemaVersion", "kind", "createdAt", "title", "packageFormat", "builder", "source", "evidence", "components", "dependencies", "recipe", "launchVerified", "productionRestorable"],
|
||||
"properties": {
|
||||
"schemaVersion": { "const": 2 },
|
||||
"kind": { "const": "chimera.ps5-fpkg-package.v2" },
|
||||
"createdAt": { "type": "number" },
|
||||
"title": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["platform", "titleId", "name"],
|
||||
"properties": {
|
||||
"platform": { "const": "ps5" },
|
||||
"titleId": { "type": "string", "pattern": "^[A-Z]{4}[0-9]{5}$" },
|
||||
"name": { "type": "string", "minLength": 1 }
|
||||
}
|
||||
},
|
||||
"packageFormat": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["family", "extension", "container", "magic", "debug", "licenseFree", "retail"],
|
||||
"properties": {
|
||||
"family": { "const": "ps5-fpkg" },
|
||||
"extension": { "const": ".pkg" },
|
||||
"container": { "const": "FIH" },
|
||||
"magic": { "const": "7f464948" },
|
||||
"debug": { "const": true },
|
||||
"licenseFree": { "const": true },
|
||||
"retail": { "const": false }
|
||||
}
|
||||
},
|
||||
"builder": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["product", "version", "revision", "api", "bridgeAbi", "patched"],
|
||||
"properties": {
|
||||
"product": { "const": "LibProsperoPkg" },
|
||||
"version": { "type": "string", "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$" },
|
||||
"revision": { "type": "string", "pattern": "^[a-f0-9]{40}$" },
|
||||
"api": { "enum": ["ProsperoBackupConverter", "ProsperoPackageBuilder"] },
|
||||
"bridgeAbi": { "const": "chimera-prospero-bridge-v4" },
|
||||
"patched": { "const": false }
|
||||
}
|
||||
},
|
||||
"source": { "$ref": "#/$defs/sourceEvidence" },
|
||||
"evidence": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["backupReadiness", "structuralValidation", "staticLaunchReadiness", "consoleInstall", "consoleLaunch"],
|
||||
"properties": {
|
||||
"backupReadiness": { "type": "object" },
|
||||
"structuralValidation": { "type": "object" },
|
||||
"staticLaunchReadiness": { "type": "object" },
|
||||
"consoleInstall": { "$ref": "#/$defs/unprovenEvidence" },
|
||||
"consoleLaunch": { "$ref": "#/$defs/unprovenEvidence" }
|
||||
}
|
||||
},
|
||||
"components": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"required": ["id", "type", "titleId", "contentId", "size", "sha256", "absolutePath", "adapterHint", "structuralValidation", "source"],
|
||||
"properties": {
|
||||
"id": { "type": "string", "minLength": 1 },
|
||||
"type": { "enum": ["base", "dlc"] },
|
||||
"titleId": { "type": "string", "pattern": "^[A-Z]{4}[0-9]{5}$" },
|
||||
"contentId": { "type": "string", "pattern": "^[A-Z]{2}[0-9]{4}-[A-Z]{4}[0-9]{5}_[0-9]{2}-[A-Z0-9]{16}$" },
|
||||
"size": { "type": "integer", "minimum": 1 },
|
||||
"sha256": { "type": "string", "pattern": "^[a-f0-9]{64}$" },
|
||||
"absolutePath": { "type": "string", "minLength": 1 },
|
||||
"adapterHint": { "const": "ps5-fpkg-finalized-fih" },
|
||||
"structuralValidation": {
|
||||
"type": "object",
|
||||
"required": ["status", "upstream"],
|
||||
"properties": { "status": { "const": "accepted" }, "upstream": { "type": "object", "required": ["accepted"], "properties": { "accepted": { "const": true } } } }
|
||||
},
|
||||
"source": { "$ref": "#/$defs/sourceEvidence" }
|
||||
}
|
||||
}
|
||||
},
|
||||
"dependencies": { "type": "array" },
|
||||
"recipe": { "type": "object", "required": ["installOrder"] },
|
||||
"launchVerified": { "const": false },
|
||||
"productionRestorable": { "const": false }
|
||||
},
|
||||
"$defs": {
|
||||
"sourceEvidence": {
|
||||
"type": "object",
|
||||
"required": ["kind", "treeDigestAlgorithm", "treeSha256", "fileCount", "size"],
|
||||
"properties": {
|
||||
"kind": { "const": "verified-prepared-application-backup" },
|
||||
"treeDigestAlgorithm": { "const": "sha256-tree-v1" },
|
||||
"treeSha256": { "type": "string", "pattern": "^[a-f0-9]{64}$" },
|
||||
"fileCount": { "type": "integer", "minimum": 1 },
|
||||
"size": { "type": "integer", "minimum": 1 }
|
||||
}
|
||||
},
|
||||
"unprovenEvidence": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["status"],
|
||||
"properties": { "status": { "const": "unproven" } }
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user