fix: LLM analysis + new run button + settings page support

- Fixed LLM failing silently (401 auth error on every iteration)
- Reset provider to Ollama (working) from broken OpenRouter config
- Added /api/clear endpoint + 'New Run' button to reset history
- LLM failures now logged visibly with error details
- LLM suggestions persisted to iteration data (survive restarts)
- Settings page support via llm_settings.json (multi-provider)
This commit is contained in:
BizzleBot
2026-03-20 21:51:05 +00:00
parent c17b3b5167
commit aba30f7718
8 changed files with 911 additions and 117 deletions
+15 -2
View File
@@ -461,9 +461,22 @@ def run_optimization_loop(callback=None, config_override=None):
"iteration": iteration,
"reasoning": reasoning,
})
# Also persist LLM suggestion to iteration log
iter_data["llm_reasoning"] = reasoning
iter_data["llm_applied"] = True
config = new_config
except Exception:
import random
except Exception as e:
import random, traceback
err_msg = f"LLM call failed: {type(e).__name__}: {e}"
print(f" WARNING: {err_msg}")
traceback.print_exc()
with _status_lock:
_status["llm_suggestions"].append({
"iteration": iteration,
"reasoning": f"ERROR: {err_msg} — using random perturbation",
})
iter_data["llm_reasoning"] = err_msg
iter_data["llm_applied"] = False
hp = config.get("hyperparameters", {})
hp["learning_rate"] = hp.get("learning_rate", 0.01) * random.uniform(0.8, 1.2)
hp["max_depth"] = max(3, min(10, hp.get("max_depth", 5) + random.choice([-1, 0, 1])))