This research explores the possibilities of automation of error-handling for robot assembly tasks. The ability to cope with uncertainties due to errors, failures, or other unplanned situations is critical to the effectiveness of machines and robots. That capability depends on the machines having access to information about tasks, objects, tools, and the work environment. This project centers on the question of what information needs to be available to a machine to detect and handle unexpected situations. This involves issues of characterizing the required information, automating its acquisition, deciding on appropriate representations of the information for real-time use, distinguishing an error condition from normal events, tracing causes of errors, and generating recovery procedures.