(options)
| 2310 | if (snapshot !== undefined) { |
| 2311 | if (snapshot.id !== windowId) { |
| 2312 | throw new Error( |
| 2313 | `cached window snapshot id mismatch: ${windowId} != ${snapshot.id}`, |
| 2314 | ); |
| 2315 | } |
| 2316 | debugSSD("runtime-evaluate-cached-update-snapshot", { |
| 2317 | windowId, |
| 2318 | snapshot: snapshotForDebug(snapshot), |
| 2319 | }); |
| 2320 | // Mirror the focus-diff handling of the other snapshot-update paths |
| 2321 | // (evaluate / ensureRuntimeCacheEntry / preconfigure). This is the path |
| 2322 | // runtime-dirty windows take (force_full_cached_reevaluation), which is |
| 2323 | // exactly how activation-request targets get re-evaluated — silently |
| 2324 | // overwriting latestSnapshot here swallowed their focus transition, so |
| 2325 | // onFocus never fired and the config never raised them in the stack. |
| 2326 | const focusChanged = entry.latestSnapshot.isFocused !== snapshot.isFocused; |
| 2327 | entry.latestSnapshot = snapshot; |
no test coverage detected