Real app runtime evidence. Linux Chromium, 1280x800, light theme. Fresh per-side state, free replay agent. GitHub fixture: https://github.com/juliusmarminge/acme-corp-lib Four windows; native focus on the disabled Git actions group invokes its existing empty-menu refresh handler at 0/500/1000/1200ms after 25s startup settling. This substitutes the equivalent focus path for the triage hover path. No RPC mock and no server changes. BASE ea957b5cab373f584e5f0f960055b0a15eaacdce Four client request offsets (ms): [0, 499, 999, 1199] RPC durations (ms): [1791, 2573, 3209, 4239] RPC completion offsets (ms): [1791, 3072, 4208, 5438] ws.rpc.vcs.refreshStatus: 4 VcsStatusBroadcaster.refreshStatus: 4 invalidateStatus: 4 GitHubSourceControlProvider.resolveRepository: 4 GitHubSourceControlProvider.listByHead: 4 GitHubSourceControlProvider.listChangeRequests: 4 GitHubGraphQlAuth.execute: 4 Full refresh intervals (ms from first request): [(2.8, 1789.1), (500.2, 3070.0), (1002.2, 4206.9), (1200.6, 5437.0)] The observation window also contains one background remote poll; invalidateRemoteStatus / remoteStatus totals are 5 / 5. Waiter disconnect: request at +513ms, window closed at +1314ms. Surviving clients: [{'exit': 'Success', 'dirty': True, 'files': [{'path': 'refresh-proof.txt'}], 'replyAfterCloseMs': 495}, {'exit': 'Success', 'dirty': True, 'files': [{'path': 'refresh-proof.txt'}], 'replyAfterCloseMs': 1590}, {'exit': 'Success', 'dirty': True, 'files': [{'path': 'refresh-proof.txt'}], 'replyAfterCloseMs': 2713}] HEAD 22756233aa40f1f361d8019772d559fdba55fada Four client request offsets (ms): [0, 500, 1000, 1201] RPC durations (ms): [1708, 2416, 1914, 1714] RPC completion offsets (ms): [1708, 2916, 2914, 2915] ws.rpc.vcs.refreshStatus: 4 VcsStatusBroadcaster.refreshStatus: 2 invalidateStatus: 2 GitHubSourceControlProvider.resolveRepository: 2 GitHubSourceControlProvider.listByHead: 2 GitHubSourceControlProvider.listChangeRequests: 2 GitHubGraphQlAuth.execute: 2 Full refresh intervals (ms from first request): [(2.0, 1706.2), (1706.7, 2912.2)] The observation window also contains one background remote poll; invalidateRemoteStatus / remoteStatus totals are 3 / 3. Waiter disconnect: request at +520ms, window closed at +1220ms. Surviving clients: [{'exit': 'Success', 'dirty': True, 'files': [{'path': 'refresh-proof.txt'}], 'replyAfterCloseMs': 1706}, {'exit': 'Success', 'dirty': True, 'files': [{'path': 'refresh-proof.txt'}], 'replyAfterCloseMs': 3360}, {'exit': 'Success', 'dirty': True, 'files': [{'path': 'refresh-proof.txt'}], 'replyAfterCloseMs': 3361}]