固化 Match-3 生产者、视觉、音频与双 Judge 证据闭包。 将《山海行纪》r1.1 绑定新的不可变 release,并以生产预检现场核验 bundle、Registry/2 和 25 项 Writer 快照。 同步地图1平衡锁值、跨游戏回归修复、验收契约与 SoT 证据。
113 lines
3.0 KiB
JSON
113 lines
3.0 KiB
JSON
[
|
|
{
|
|
"eventVersion": "game-event/1",
|
|
"evidenceMode": "native",
|
|
"scope": "game",
|
|
"namespace": "game/puzzle.swap-committed",
|
|
"type": "puzzle.swap-committed",
|
|
"eventRole": "profile-proof",
|
|
"message": "puzzle.swap-committed",
|
|
"payload": {
|
|
"moveId": "move-1",
|
|
"pair": [
|
|
{
|
|
"row": 1,
|
|
"column": 2
|
|
},
|
|
{
|
|
"row": 2,
|
|
"column": 2
|
|
}
|
|
],
|
|
"boardRevisionBefore": 1,
|
|
"boardRevisionAfter": 2
|
|
},
|
|
"payloadCanonical": "{\"boardRevisionAfter\":2,\"boardRevisionBefore\":1,\"moveId\":\"move-1\",\"pair\":[{\"column\":2,\"row\":1},{\"column\":2,\"row\":2}]}",
|
|
"payloadHash": "ace875a31644299d6ac116131894d0c7e719d6abf4848314d51f40b435ddeadf",
|
|
"producer": "match3-fixture",
|
|
"seq": 1,
|
|
"actionId": "action-2",
|
|
"virtualTimeMs": 1200,
|
|
"sourceEventVersion": null,
|
|
"adapterVersion": null,
|
|
"sourceMessageHash": null
|
|
},
|
|
{
|
|
"eventVersion": "game-event/1",
|
|
"evidenceMode": "native",
|
|
"scope": "game",
|
|
"namespace": "game/puzzle.match-formed",
|
|
"type": "puzzle.match-formed",
|
|
"eventRole": "profile-proof",
|
|
"message": "puzzle.match-formed",
|
|
"payload": {
|
|
"moveId": "move-1",
|
|
"runs": [
|
|
{
|
|
"axis": "horizontal",
|
|
"cells": [
|
|
{
|
|
"row": 1,
|
|
"column": 1
|
|
},
|
|
{
|
|
"row": 1,
|
|
"column": 2
|
|
},
|
|
{
|
|
"row": 1,
|
|
"column": 3
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"matchedCells": [
|
|
{
|
|
"row": 1,
|
|
"column": 1
|
|
},
|
|
{
|
|
"row": 1,
|
|
"column": 2
|
|
},
|
|
{
|
|
"row": 1,
|
|
"column": 3
|
|
}
|
|
],
|
|
"matchedCount": 3
|
|
},
|
|
"payloadCanonical": "{\"matchedCells\":[{\"column\":1,\"row\":1},{\"column\":2,\"row\":1},{\"column\":3,\"row\":1}],\"matchedCount\":3,\"moveId\":\"move-1\",\"runs\":[{\"axis\":\"horizontal\",\"cells\":[{\"column\":1,\"row\":1},{\"column\":2,\"row\":1},{\"column\":3,\"row\":1}]}]}",
|
|
"payloadHash": "39b415e6ef1e64eb47d54f6919973cba6a12a6d00eb0210710da9e4c2f1b0782",
|
|
"producer": "match3-fixture",
|
|
"seq": 2,
|
|
"actionId": "action-2",
|
|
"virtualTimeMs": 1200,
|
|
"sourceEventVersion": null,
|
|
"adapterVersion": null,
|
|
"sourceMessageHash": null
|
|
},
|
|
{
|
|
"eventVersion": "game-event/1",
|
|
"evidenceMode": "native",
|
|
"scope": "game",
|
|
"namespace": "game/puzzle.score-updated",
|
|
"type": "puzzle.score-updated",
|
|
"eventRole": "cross-profile-observation",
|
|
"message": "puzzle.score-updated",
|
|
"payload": {
|
|
"scoreBefore": 0,
|
|
"scoreAfter": 30
|
|
},
|
|
"payloadCanonical": "{\"scoreAfter\":30,\"scoreBefore\":0}",
|
|
"payloadHash": "ec387b7191f20f6643f491a5ec178c2a6727a5d155939d1b3d4d2844def97d35",
|
|
"producer": "match3-fixture",
|
|
"seq": 3,
|
|
"actionId": "action-2",
|
|
"virtualTimeMs": 1200,
|
|
"sourceEventVersion": null,
|
|
"adapterVersion": null,
|
|
"sourceMessageHash": null
|
|
}
|
|
]
|