"""Meta-Harness scaffold — one module per component.

  population.py        -> MetaHarnessPopulation    (append-only filesystem-D analogue + Pareto frontier)
  selection_policy.py  -> MetaHarnessPolicy        (no selection rule: nominal frontier-top parent + signals)
  prompt_builder.py    -> MetaHarnessPromptBuilder (SKILL.md steering + serialized filesystem view)
  proposer.py          -> MetaHarnessProposer      (one call -> k candidates, FIFO-dispensed; compile gate)
  evaluator.py         -> MetaHarnessEvaluator     (task-supplied)
  memory.py            -> MetaHarnessMemory        (evolution_summary.jsonl + reports analogue)
  scaffold.py          -> MetaHarnessScaffold      (the orchestrator that composes the six)
"""
from .evaluator import MetaHarnessEvaluator
from .memory import MetaHarnessMemory
from .population import MetaHarnessPopulation
from .prompt_builder import MetaHarnessPromptBuilder
from .proposer import MetaHarnessProposer
from .scaffold import MetaHarnessScaffold
from .selection_policy import MetaHarnessPolicy

__all__ = [
    "MetaHarnessScaffold",
    "MetaHarnessPopulation", "MetaHarnessPolicy", "MetaHarnessPromptBuilder",
    "MetaHarnessProposer", "MetaHarnessEvaluator", "MetaHarnessMemory",
]
