fix(ui): OP3 re-review residuals R1/R2/R3 (coordinator pass)

R1: the gate script no longer promises a timestamp prefix on the Magic
macro lines — acdream renders no chat timestamps yet (the Display
Timestamps consumer is OP4 scope; no chat-log file exists, TS-69). A
bare light-blue transcript line is the CORRECT gate outcome.

R2: IsGrounded yields null (silent) for a NULL controller in player
mode — the prior pattern returned false and fired the mid-air refusal
retail cannot produce in that state; comments now match the code.

R3: the dormant-ActivePageChanged pin now applies the real stimulus —
every authored tab button on a dormant host must carry NO click handler
(RetailTabBinding.SetClick never ran), which is AD-73's actual dormancy
mechanism; SwitchTo deliberately has no guard.

OP3 is CLOSED: dual APPROVE-WITH-FIXES -> fix round 386076af ->
re-review REOPEN(narrow) -> this pass. Connected gate now READY.

Full Release suite: 12,956 passed / 4 skipped / 0 failed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-08-11 03:25:40 +02:00
parent 7b60e71b85
commit cb3346907d
3 changed files with 33 additions and 8 deletions

View file

@ -89,6 +89,22 @@ public class OP2ReworkBlastRadiusConformanceTests
host.ActivePageChanged += (_, _) => raised++;
Assert.False(host.BehaviorActive);
// R3 (OP3 re-review, 2026-08-11): a subscribe-then-assert-zero pin
// passes even with dormancy fully broken. The REAL dormancy
// mechanism is that ActivateTabBehavior (via RetailTabBinding.
// SetClick) was never called, so the authored tab BUTTONS carry no
// click handler — clicking a dormant host's tab can invoke nothing.
// SwitchTo itself deliberately has no dormancy guard (a controller
// may drive it directly), so the button wiring IS the contract.
foreach (UiTabTableEntry tab in host.Tabs)
{
var button = layout.FindElement(tab.ButtonElementId);
Assert.NotNull(button);
Assert.False(button!.HandlesClick,
$"dormant tab button 0x{tab.ButtonElementId:X8} has a click "
+ "handler — import-time activation regressed (AD-73)");
}
Assert.Equal(0, raised);
}