# Static inventory of exceptions and state-dependent paths This table detects syntax within each public `DobotTcp` method using AST. `raise` identifies explicit raises, `except` identifies local handlers, and helper calls identify potential indirect failure or state dependencies. **A blank cell does not imply exception-free behavior.** Callee internals, properties, transport-library failures, and thread failures are not exhaustively tracked. | API | raise | except | helper calls | | --- | --- | --- | --- | | `connect` | `RuntimeError` | `Exception` | — | | `get_version` | — | — | `_unsupported` | | `disconnect` | — | `Exception` | — | | `halt` | — | — | `_unsupported` | | `task_stop` | — | — | `_unsupported` | | `hand_stop` | — | — | `_unsupported` | | `stop` | — | — | `_unsupported` | | `reset_error` | — | — | `_handle_command_reply` | | `wait_for_complete` | — | — | `Sync`, `_handle_command_reply` | | `get_current_work_no` | — | — | `_state` | | `get_work` | `ValueError` | — | `_state` | | `set_work` | `ValueError` | — | — | | `get_current_tool_no` | — | — | `_state` | | `get_tool_define` | `RuntimeError`, `ValueError` | — | `_state` | | `set_tool_define` | `ValueError` | — | `_handle_command_reply` | | `task` | — | — | `_unsupported` | | `task_state` | — | — | `_unsupported` | | `get_task_status` | — | — | `_unsupported` | | `lock` | — | — | `_unsupported` | | `busy_status` | — | — | `_state` | | `state` | — | — | `_state` | | `servo_on` | — | — | `_state` | | `get_direct_mode` | — | — | `_unsupported` | | `get_current_position` | `RuntimeError` | — | — | | `get_current_angle` | `RuntimeError` | — | — | | `set_speed` | `ValueError` | — | `_handle_command_reply` | | `get_decel` | — | — | `_unsupported` | | `set_extspeed` | `ValueError` | — | `_handle_command_reply` | | `get_extspeed` | — | — | `_state` | | `set_extaccel` | — | — | `_unsupported` | | `get_extaccel` | — | — | `_unsupported` | | `set_extdecel` | — | — | `_unsupported` | | `get_extdecel` | — | — | `_unsupported` | | `p2j` | — | `Exception` | — | | `j2p` | — | `Exception` | — | | `dev` | `ValueError` | `Exception` | — | | `move` | — | `Exception` | `_handle_command_reply`, `_wait_motion_start_or_error` | | `approach` | — | — | `_unsupported` | | `drive` | `ValueError` | `Exception` | — | | `rotate` | — | — | `_unsupported` | | `get_IO` | `ValueError` | — | `_state` | | `get_digital_input` | — | `Exception` | — | | `autocal` | — | — | `_unsupported` | | `get_motion_preparation` | — | — | `_unsupported` | | `run_script` | — | — | `_unsupported` | | `init_hand` | — | — | `_unsupported` | | `open_hand` | — | — | `_unsupported` | | `hand_open` | — | — | `_unsupported` | | `hand` | — | — | `_unsupported` | | `start_log` | — | — | `_unsupported` | | `stop_log` | — | — | `_unsupported` | | `clear_log` | — | — | `_unsupported` | | `start_servo_log` | — | — | `_unsupported` | | `stop_servo_log` | — | — | `_unsupported` | | `clear_servo_log` | — | — | `_unsupported` | | `get_log_count` | — | — | `_unsupported` | | `get_log_record` | — | — | `_unsupported` | AST rows: 57 / public methods: 108 ## Interpretation notes - See the [return/failure quick reference](return_failure_quick_reference.md) for ambiguous normal and transport-failure values. - `get_motion_complete()` does not establish successful target arrival. - Calls to `_unsupported()` lead to backend `NotImplementedError`. - This is **static analysis**, not hardware or HTTP integration testing.