固化 Match-3 生产者、视觉、音频与双 Judge 证据闭包。 将《山海行纪》r1.1 绑定新的不可变 release,并以生产预检现场核验 bundle、Registry/2 和 25 项 Writer 快照。 同步地图1平衡锁值、跨游戏回归修复、验收契约与 SoT 证据。
64 lines
3.7 KiB
JSON
64 lines
3.7 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://wanxiang.ai/contracts/play-loop/match3-action-bundle.schema.json",
|
|
"title": "Match3ActionBundleV1",
|
|
"description": "D-F 跨文件契约验证入口。回读 runner 审计、CollectionProof、SingleRollProof、JudgePackage 与真实帧字节。",
|
|
"type": "object",
|
|
"required": [
|
|
"schemaVersion", "briefRef", "requestRef", "provenanceRef", "bindingRef", "registryRef",
|
|
"actorProtocolBundleRef", "actorViewRef", "selectionRef", "selectionAttemptRef",
|
|
"pairResolutionRef", "swapSetRef", "initialTargetSetRef", "postFirstTargetSetRef",
|
|
"initialProjectionRef", "postFirstProjectionRef", "firstGroupedActionRef",
|
|
"postFirstPerceptionAuditRef", "postFirstPerceptionAuditHash",
|
|
"secondGroupedActionRef", "firstActionRef", "secondActionRef",
|
|
"boardIdentityCheckRef", "actionGroupRef", "eventsRef", "resolutionRef",
|
|
"collectionProofRef", "singleRollProofRef", "judgePackageRef", "rollAuditRef", "rollAuditHash",
|
|
"initialFrameFileRef", "initialFrameHash", "postFirstFrameFileRef", "postFirstFrameHash",
|
|
"secondPostFrameRef", "secondPostFrameFileRef", "secondPostFrameHash",
|
|
"expectedErrorPattern"
|
|
],
|
|
"properties": {
|
|
"schemaVersion": { "const": "Match3ActionBundle/1" },
|
|
"briefRef": { "type": "string", "minLength": 1 },
|
|
"requestRef": { "type": "string", "minLength": 1 },
|
|
"provenanceRef": { "type": "string", "minLength": 1 },
|
|
"bindingRef": { "type": "string", "minLength": 1 },
|
|
"registryRef": { "type": "string", "minLength": 1 },
|
|
"actorProtocolBundleRef": { "type": "string", "minLength": 1 },
|
|
"actorViewRef": { "type": "string", "minLength": 1 },
|
|
"selectionRef": { "type": "string", "minLength": 1 },
|
|
"selectionAttemptRef": { "type": "string", "minLength": 1 },
|
|
"pairResolutionRef": { "type": "string", "minLength": 1 },
|
|
"swapSetRef": { "type": "string", "minLength": 1 },
|
|
"initialTargetSetRef": { "type": "string", "minLength": 1 },
|
|
"postFirstTargetSetRef": { "type": "string", "minLength": 1 },
|
|
"initialProjectionRef": { "type": "string", "minLength": 1 },
|
|
"postFirstProjectionRef": { "type": "string", "minLength": 1 },
|
|
"postFirstPerceptionAuditRef": { "type": "string", "minLength": 1 },
|
|
"postFirstPerceptionAuditHash": { "$ref": "#/$defs/sha256" },
|
|
"firstGroupedActionRef": { "type": "string", "minLength": 1 },
|
|
"secondGroupedActionRef": { "type": "string", "minLength": 1 },
|
|
"firstActionRef": { "type": "string", "minLength": 1 },
|
|
"secondActionRef": { "type": "string", "minLength": 1 },
|
|
"boardIdentityCheckRef": { "type": "string", "minLength": 1 },
|
|
"actionGroupRef": { "type": "string", "minLength": 1 },
|
|
"eventsRef": { "type": "string", "minLength": 1 },
|
|
"resolutionRef": { "type": "string", "minLength": 1 },
|
|
"collectionProofRef": { "type": "string", "minLength": 1 },
|
|
"singleRollProofRef": { "type": "string", "minLength": 1 },
|
|
"judgePackageRef": { "type": "string", "minLength": 1 },
|
|
"rollAuditRef": { "type": "string", "minLength": 1 },
|
|
"rollAuditHash": { "$ref": "#/$defs/sha256" },
|
|
"initialFrameFileRef": { "type": "string", "minLength": 1 },
|
|
"initialFrameHash": { "$ref": "#/$defs/sha256" },
|
|
"postFirstFrameFileRef": { "type": "string", "minLength": 1 },
|
|
"postFirstFrameHash": { "$ref": "#/$defs/sha256" },
|
|
"secondPostFrameRef": { "type": "string", "minLength": 1 },
|
|
"secondPostFrameFileRef": { "type": "string", "minLength": 1 },
|
|
"secondPostFrameHash": { "$ref": "#/$defs/sha256" },
|
|
"expectedErrorPattern": { "anyOf": [{ "type": "string", "minLength": 1 }, { "type": "null" }] }
|
|
},
|
|
"additionalProperties": false,
|
|
"$defs": { "sha256": { "type": "string", "pattern": "^[0-9a-f]{64}$" } }
|
|
}
|