KB: the replicant StopMission authority leak (#156 layer 3) recorded in multiplayer's owner-only discipline + fade_bench registered in the bench suite table

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Joe DiPrima
2026-08-12 01:57:42 -05:00
co-authored by Claude Fable 5
parent d01409a48c
commit f4feaea4c1
2 changed files with 11 additions and 0 deletions
+10
View File
@@ -921,3 +921,13 @@ melee, 26 deaths: 26/26/26/26 with zero duplicate-death swallows and zero `inst=
The same-frame double-credit this closed (direct+splash lethal pair racing the deferred death
transition) is gotcha §25 — the death mode now flips synchronously inside the damage pass,
matching part_012.c:14761.
## Application control is OWNER-ONLY — the replicant player StopMission leak (2026-08-12) [T2]
`Player::ManageApplicationStatus` (the 3.0s mission-end fade countdown → the second StopMission →
`Application::Stop()`) is now gated `GetInstance() != ReplicantInstance` (PLAYER.cpp). Un-gated, a
REPLICANT player copy — whose simulationState mirrors the remote master's MissionEndingState
through its record header, and whose fadeTimeRemaining was never armed (≤0 at first tick) —
dispatched StopMission instantly and killed the mission loop before the fade could render. On an
8-player steam node ANY of the 7 replicant copies cut the end window to ~one record heartbeat:
the FIELD half of #156's "no fade". Same authority discipline as scoring (masters emit, mirrors
display); receipts: `[fade-clk]` single 124-tick countdown + phases 1→5 (`fade_bench.sh`).
+1
View File
@@ -213,6 +213,7 @@ sleep <duration>; kill $relay; bt_kill_ours
| `proj_ttl_bench.sh` | #168 flight clocks: probe fizzles at exactly 5.0s / burn+10s; field phase: authentic ttl stamps, none early, no stale-point hits | BT_PROJ_TEST probe + BT_PROJ_LOG |
| `gen_edge_bench.sh` | #154 warning edge: 4/4 trigger fixups, trip edge FIRED, recovery + respawn silent | BT_GEN_HEAT injection + BT_AUDIO_EDGE |
| `xfire_bench.sh` | #165 destroyed-weapon gate: pre-kill FIRED, post-kill only REFUSED, survivor unaffected | BT_KILL_SUBSYS + named `[emitter] FIRED` |
| `fade_bench.sh` | #156 fade: armed + phases 1-5 both nodes, single 3.0s countdown, end edge on simState=4 | relay-clocked 40s round, BT_FADE_LOG |
| `eject_canary.sh` / `ram_bench.sh` / `relaunch_bench.sh` | eject suicide arithmetic / ram-rattle eligibility set / ordered-exit no-zombies | (night-15 fix wave) |
Multi-node rig notes: extend the egg by CLONING the 1602 pilot page (the kd4/kd8 scripts show