preserve inner exception when WaitUntil fails
add optional activity description to UiState() for failure reporting