fix(compaction): preserve switch compatibility fixtures

Keep model-switch callers compatible with result objects created before runtime_capabilities was added, and do not roll back minimal agents that lack optional LM Studio helpers. Preserve rollback for real helper failures.
This commit is contained in:
Stephen Chin
2026-08-26 03:39:58 -07:00
committed by Teknium
parent 5247a6f07f
commit 48a4201f40
4 changed files with 31 additions and 18 deletions
+5 -3
View File
@@ -10306,7 +10306,9 @@ class HermesCLI(CLIAgentSetupMixin, CLICommandsMixin, CLIBillingMixin):
api_key=_reset_result.api_key,
base_url=_reset_result.base_url,
api_mode=_reset_result.api_mode,
capabilities=_reset_result.runtime_capabilities,
capabilities=getattr(
_reset_result, "runtime_capabilities", None
),
)
self.model = _reset_result.new_model
self.provider = _reset_result.target_provider
@@ -11626,7 +11628,7 @@ class HermesCLI(CLIAgentSetupMixin, CLICommandsMixin, CLIBillingMixin):
api_key=result.api_key,
base_url=result.base_url,
api_mode=result.api_mode,
capabilities=result.runtime_capabilities,
capabilities=getattr(result, "runtime_capabilities", None),
)
except Exception as exc:
# The agent rolled itself back to the old working model/client.
@@ -12017,7 +12019,7 @@ class HermesCLI(CLIAgentSetupMixin, CLICommandsMixin, CLIBillingMixin):
api_key=result.api_key,
base_url=result.base_url,
api_mode=result.api_mode,
capabilities=result.runtime_capabilities,
capabilities=getattr(result, "runtime_capabilities", None),
)
except Exception as exc:
# Agent rolled itself back; roll the CLI back too and abort so a