fix: 4 critical optimizer bugs

- NaN composite score: dropna().mean() on empty series returns NaN,
  nan is truthy so (nan or 0)=nan. Fixed: use None when no MFE data
  so scorer uses 0.5 fallback instead of propagating NaN.

- Analysis stopping: gate WFV was importing from main.execute_run
  (old CLI code that uses broken runner). Fixed: gate.run_walk_forward
  now accepts an executor callable from optimizer_loop.

- Back to Dashboard opened blank tab: Reports button used
  window.open(_blank). Fixed: same-tab navigation + history.back().

- NaN in reports card: downstream of composite_score NaN above.
This commit is contained in:
LEGSTECH Optimizer
2026-04-13 03:05:40 +00:00
parent 2546b4a9c0
commit 26e5f9d0c4
6 changed files with 30 additions and 29 deletions
BIN
View File
Binary file not shown.