Skip to content

feat(compat): add an explicit local AlphaEvolve experiment facade - #534

Merged
codelion merged 1 commit into
algorithmicsuperintelligence:mainfrom
Yushu-Li:feat/alphaevolve-local-experiment
Oct 23, 2026
Merged

codelion merged 1 commit into
algorithmicsuperintelligence:mainfrom
Yushu-Li:feat/alphaevolve-local-experiment

Conversation

@Yushu-Li

Copy link
Copy Markdown
Contributor

AlphaEvolve-shaped entrypoints currently have no local experiment lifecycle. Add an opt-in openevolve.compat.alpha_evolve facade that imports the existing supported experiment-config subset and runs a synchronous, single-file evaluator through OpenEvolve's public run_evolution API.

The facade supports experiment creation, seed creation, blocking execution, a best-result-only list_programs envelope, and an async-shaped completion check that never starts a second run. Setup performs validation without executing the evaluator or constructing provider clients. Model endpoints and objectives are explicit; supplied Google connection arguments warn and are ignored. Seed scores are re-evaluated, source bytes are preserved in a private temporary copy, and completed/failed/interrupted instances cannot be restarted.

This deliberately small first SDK slice continues #468; it does not close it. It does not install a top-level alpha_evolve alias, provide SDK model/visualization types, list the entire archive, or emulate remote client/controller methods. Only synchronous evaluation with parallel_evaluation=False is supported. Distinct generation/evaluation budgets are rejected; even equal budgets count OE generation attempts, with seed evaluation and retries additional. An explicit iterations=0 allows seed-only execution. No evaluation statistics or hard cost caps are implied.

Validation:

  • 19 new offline tests cover lifecycle/error handling, input validation, budget boundaries, exact-source transport and cleanup, provider setup without an ambient key, best-result envelopes, and real OE seed-only/one-generation execution.
  • Full offline suite: 836 tests passed.
  • Black/isort checks and Frame scans of all five added Python files passed; Python 3.10 grammar checked.
  • Separately exercised unchanged program.py/evaluate.py from Google's circle-packing, TSP and signal-processing examples at SDK revision 34cd919193945c6dc81053f9af594031b54f41a8. Each ran seed-only and with one scripted proposal through OE's actual controller/worker. The real SDK model validated every returned program envelope; source hashes stayed unchanged and guarded socket/HTTP/credential lookup attempts were zero. This used a local harness, not the original upstream entrypoints, a real model or the managed service.

No default OE contracts or dependencies change. The walkthrough includes a runnable seed-only example and the supported subset's limitations.

@codelion
codelion merged commit efa9c09 into algorithmicsuperintelligence:main Oct 23, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants