Expand multi-exception tuples in _compute_actor_impact() to one
exception type per line, satisfying ruff format's layout rules.
Collapse single-argument @when() decorator to one line where it fits.
ISSUES CLOSED: #8567
Replace `except _defensive_exc:` with literal exception tuples in all three
except clauses of _compute_actor_impact(). Uses multi-line tuple formatting
to satisfy both ruff B030 (no variable in except clause) and E501 (line length).
ISSUES CLOSED: #8567
- Add return type annotation tuple[Any, Any | None] to _get_services()
- Fix _load_config_text() to catch yaml.YAMLError and TypeError instead
of ValueError/AttributeError around yaml.safe_load(), preserving the
user-friendly typer.BadParameter message for malformed YAML input
- Fix _compute_actor_impact() defensive guards to also catch
CleverAgentsError, OperationalError, and ValidationError in addition
to AttributeError/RuntimeError, keeping actor removal resilient when
the database layer is unavailable
- Update CHANGELOG.md with entry under Changed section for issue #8567
- Add features/actor_exception_handling.feature with four Behave scenarios
covering the exception handling contract changes
- Add features/steps/actor_exception_handling_steps.py with step definitions
ISSUES CLOSED: #8567