Private
Public Access
0
0
Files
manual_slop/tests
ed 343b855a0f refactor(ai_client): migrate set_tool_preset + set_bias_profile to Result[T] (Phase 11 sites 5+6)
Both functions had:
  try: ToolPresetManager().load_all() ...
  except (OSError, ValueError, AttributeError) as e:
      sys.stderr.write(f'[ERROR] Failed to set {preset_name}: {e}')
      sys.stderr.flush()

sys.stderr.write is logging = NOT a drain = SS violation per MUST-NOT-DO #6.

New helpers:
- _set_tool_preset_result(preset_name: Optional[str]) -> Result[None]
  Empty/None preset short-circuits to Result(data=None).
  On failure: Result(data=None, errors=[ErrorInfo]).
- _set_bias_profile_result(profile_name: Optional[str]) -> Result[None]
  Same pattern.

Legacy wrappers set the global state (or skip on empty preset) and
delegate to the _result helper. Cache invalidation runs regardless.

Audit: ai_client SS 9 -> 7. COMPLIANT 27 -> 29.
2026-06-20 13:59:45 -04:00
..