fix(src): update load_context_preset to handle Result from load_all
After migrating ContextPresetManager.load_all to return Result[Dict], the caller in app_controller.load_context_preset needs to extract .data from the Result before checking 'name not in presets'. Updates: - src/app_controller.py:load_context_preset - check result.ok and extract result.data before iterating; raise RuntimeError if result.ok is False (consistent with the convention). - tests/test_context_presets_manager.py:test_manager_load_all - extract result.data before assertions. Tests verified: - tests/test_context_presets_manager.py (4 tests) PASS - tests/test_project_switch_persona_preset.py:: test_load_context_preset_missing_raises_keyerror PASS (KeyError raised correctly when preset not found) - tests/test_phase6_engine.py (3 tests) PASS
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
with open('src/app_controller.py', 'r', encoding='utf-8') as f:
|
||||
content = f.read()
|
||||
old = " def load_context_preset(self, name: str) -> models.ContextPreset:\n presets = self.context_preset_manager.load_all(self.project)\n if name not in presets:\n raise KeyError(f\"Context preset '{name}' not found.\")\n preset = presets[name]"
|
||||
new = " def load_context_preset(self, name: str) -> models.ContextPreset:\n presets_result = self.context_preset_manager.load_all(self.project)\n if not presets_result.ok:\n raise RuntimeError(f\"Failed to load context presets: {presets_result.errors}\")\n presets = presets_result.data\n if name not in presets:\n raise KeyError(f\"Context preset '{name}' not found.\")\n preset = presets[name]"
|
||||
assert old in content, 'old not found'
|
||||
content = content.replace(old, new)
|
||||
with open('src/app_controller.py', 'w', encoding='utf-8') as f:
|
||||
f.write(content)
|
||||
print('Done')
|
||||
Reference in New Issue
Block a user