"""EvoX Evaluator component — supplied by the TASK.

In Galapagos the Evaluator comes from the task (``task.evaluator``), not the scaffold; EvoX uses
the task's SubprocessEvaluator for solutions. Re-exported so the scaffold directory carries one
module per component. The strategy-side ``Valid(·)`` test is NOT an LLM/task evaluator — it is the
deterministic :func:`~galapagos.scaffolds.evox.strategy.validate_strategy`. The upstream
eval-failure gate (validity 0/-1 / zero-score-with-error children are never added) lives in
:class:`~galapagos.scaffolds.evox.population.EvoXPopulation`.
"""
from __future__ import annotations

from ...components.evaluator import SubprocessEvaluator

EvoXEvaluator = SubprocessEvaluator
