We present a dynamic control-flow analysis and state classifier for graphical user interfaces. Search engines, end-user programming interfaces, and automated testers exploit such information, but are challenged by clientside and serverside scripts obscuring it: our analysis succeeds on popular web applications that contain both. We further motivate such analyses. First, we introduce a new type of browser extension: a natural-language interface to third-party applications. Second, we begin to address the problem of updates to a website changing how a third-party application must use it: by extending our analysis to yield change-impact information, meta-applications can automatically repair their broken interactions.
Just as I thought the storm passed, I found out there's another one Friday =/