observesScreen method

bool observesScreen(
  1. String screen
)

"May a MISSION look?" — only the host's explicit EXCLUSIONS apply: disabledRoutes matching the current route or the detected screen name, or an excluded named popup open on top. Absence from the enabled-route list / platform allowlist does NOT blind a mission (Android SnapshotPump parity: absence from an include list is a default, an exclusion is a decision). Without this, a mission that navigates off the allowlist could not see the screen it just opened and every later step failed.

Implementation

bool observesScreen(String screen) =>
    !routes.isCurrentRouteDisabled &&
    !routes.isRouteDisabled(screen.trim()) &&
    !hasExcludedPopupOpen;