test: drive invader resume from browser boundary

This commit is contained in:
2026-08-12 16:20:44 +00:00
parent 39cf6f4ede
commit 5b829dbb3e
2 changed files with 28 additions and 7 deletions
@@ -48,16 +48,22 @@
"bornyear": 170,
"deadyear": 260,
"belong": 240,
"killturn": 24,
"dex1": 1000,
"dex2": 1000,
"dex3": 1000,
"dex4": 1000,
"dex5": 1000,
"aux": {}
}
},
{ "id": 2, "values": { "name": "재현관직11", "nation": 1, "city": 1, "officer_level": 11, "owner": 0, "npc": 2, "aux": {} } },
{ "id": 3, "values": { "name": "재현관직10", "nation": 1, "city": 1, "officer_level": 10, "owner": 0, "npc": 2, "aux": {} } },
{ "id": 4, "values": { "name": "재현관직9", "nation": 1, "city": 1, "officer_level": 9, "owner": 0, "npc": 2, "aux": {} } },
{ "id": 5, "values": { "name": "재현관직8", "nation": 1, "city": 1, "officer_level": 8, "owner": 0, "npc": 2, "aux": {} } },
{ "id": 6, "values": { "name": "재현관직7", "nation": 1, "city": 1, "officer_level": 7, "owner": 0, "npc": 2, "aux": {} } },
{ "id": 7, "values": { "name": "재현관직6", "nation": 1, "city": 1, "officer_level": 6, "owner": 0, "npc": 2, "aux": {} } },
{ "id": 8, "values": { "name": "재현관직5", "nation": 1, "city": 1, "officer_level": 5, "owner": 0, "npc": 2, "aux": {} } }
{ "id": 2, "values": { "name": "재현관직11", "nation": 1, "city": 1, "officer_level": 11, "owner": 0, "npc": 2, "killturn": 24, "dex1": 1000, "dex2": 1000, "dex3": 1000, "dex4": 1000, "dex5": 1000, "aux": {} } },
{ "id": 3, "values": { "name": "재현관직10", "nation": 1, "city": 1, "officer_level": 10, "owner": 0, "npc": 2, "killturn": 24, "dex1": 1000, "dex2": 1000, "dex3": 1000, "dex4": 1000, "dex5": 1000, "aux": {} } },
{ "id": 4, "values": { "name": "재현관직9", "nation": 1, "city": 1, "officer_level": 9, "owner": 0, "npc": 2, "killturn": 24, "dex1": 1000, "dex2": 1000, "dex3": 1000, "dex4": 1000, "dex5": 1000, "aux": {} } },
{ "id": 5, "values": { "name": "재현관직8", "nation": 1, "city": 1, "officer_level": 8, "owner": 0, "npc": 2, "killturn": 24, "dex1": 1000, "dex2": 1000, "dex3": 1000, "dex4": 1000, "dex5": 1000, "aux": {} } },
{ "id": 6, "values": { "name": "재현관직7", "nation": 1, "city": 1, "officer_level": 7, "owner": 0, "npc": 2, "killturn": 24, "dex1": 1000, "dex2": 1000, "dex3": 1000, "dex4": 1000, "dex5": 1000, "aux": {} } },
{ "id": 7, "values": { "name": "재현관직6", "nation": 1, "city": 1, "officer_level": 6, "owner": 0, "npc": 2, "killturn": 24, "dex1": 1000, "dex2": 1000, "dex3": 1000, "dex4": 1000, "dex5": 1000, "aux": {} } },
{ "id": 8, "values": { "name": "재현관직5", "nation": 1, "city": 1, "officer_level": 5, "owner": 0, "npc": 2, "killturn": 24, "dex1": 1000, "dex2": 1000, "dex3": 1000, "dex4": 1000, "dex5": 1000, "aux": {} } }
],
"nationEnvironment": [
{ "nationId": 1, "key": "nationNotice", "value": { "msg": "재현" } },
+15
View File
@@ -855,6 +855,21 @@ function comparisonUnificationInvaderResumeTrace(array $request, array $environm
'messages' => $invaderMessages,
];
$stopAfterButton = $request['stopAfterButton'] ?? false;
if (!is_bool($stopAfterButton)) {
throw new \InvalidArgumentException('stopAfterButton must be a boolean');
}
if ($stopAfterButton) {
return [
'schemaVersion' => 1,
'engine' => 'ref',
'action' => 'UnificationInvaderResume',
'phase' => 'button',
'before' => $before,
'buttonSnapshot' => $buttonSnapshot,
];
}
// Simulate an autoreset poll that recorded the original unification pause.
// A successful event start must replace this stale operational wall anchor.
$pausedAnchor = '2000-01-01 00:00:00.000000';