Skip to content

OSS-readiness: docs & config reference sync, dependency slimming#29

Merged
aktasbatuhan merged 2 commits into
mainfrom
chore/oss-readiness
Jun 11, 2026
Merged

OSS-readiness: docs & config reference sync, dependency slimming#29
aktasbatuhan merged 2 commits into
mainfrom
chore/oss-readiness

Conversation

@eren23

@eren23 eren23 commented Jun 10, 2026

Copy link
Copy Markdown
Collaborator

Minimal, non-invasive pass from the OSS-readiness review — docs, reference config, and packaging only; no behavior changes.

Packaging

  • Drop flask from core deps (unused anywhere) and move sentence-transformers to a new kai-evolve[embeddings] extra — it is lazy-imported and only needed for embedding_backend: "local" (novelty detection / strategy clustering), so a plain pip install no longer pulls PyTorch. pymongo stays (it provides bson.ObjectId used for program ids) with a comment explaining why.
  • Declare scipy explicitly: strategy_clusters.py uses scipy.cluster.vq.kmeans2 at runtime, and scipy was previously only present transitively via sentence-transformers.
  • scripts/requirements.txt: flaskplotly (what the scripts actually import).

Config reference sync

  • configs/default_config.yaml now covers the newer config families it was missing: require_hmrd, literature review, steering_brief_path, research director, strategy clustering, parent-selection shaping, evaluator.re_evaluations, and the novelty section. All values are the code defaults, so copying the file behaves exactly as before.

Docs

  • README: quick-start snippet is now runnable (asyncio.run instead of bare await), a concrete copy-paste first run (circle packing), a note on the no---config fallback defaults, an optional-extras install block, and a new Watching and steering a live run section (per-iteration progress.jsonl feed, human steering brief / kai steer, research director).
  • alphaevolve examples: README claimed per-task configs that don't exist — now points at configs/bench_alphaevolve.yaml (same fix in autocorrelation_C1/README.md).
  • examples/noisy_optimization/: added README + a small config demonstrating re_evaluations: 3.
  • experiments/: marked as inherited upstream OpenEvolve benchmark infra; the two scripts with hardcoded /Users/codelion/... paths now require ALGOTUNE_PATH/EVOLVEBENCH_PATH env vars.
  • CONTRIBUTING fork URL, NOTICE year.

Verified

Fresh Python 3.9 venv with the slimmed deps (pip install -e ".[dev]" — no torch/flask installed): full suite Ran 349 tests — OK (12 skipped); kai / kaievolve-run entry points work; every touched or referenced YAML loads through kaievolve.config.load_config with the expected values.

eren23 added 2 commits June 10, 2026 12:40
- pyproject: drop unused flask; move sentence-transformers to an
  [embeddings] extra (lazy-imported, only needed for local embedding
  backends); keep pymongo with a note (provides bson.ObjectId)
- default_config.yaml: sync with config.py — add require_hmrd,
  literature review, steering brief, research director, strategy
  clustering, parent-selection shaping, re_evaluations, novelty
- README: runnable quick-start snippet (asyncio.run), concrete
  first-run command, no-config defaults note, optional extras, new
  'watching and steering a live run' section; point alphaevolve
  examples at configs/bench_alphaevolve.yaml
- examples: README + config for noisy_optimization (re_evaluations);
  fix autocorrelation_C1 references to a non-existent config.yaml
- experiments: mark as inherited upstream benchmarks; require
  ALGOTUNE_PATH/EVOLVEBENCH_PATH env vars (drop personal defaults)
- CONTRIBUTING fork URL, scripts/requirements.txt (flask -> plotly),
  NOTICE year
scipy was only present transitively via sentence-transformers; moving
that to the [embeddings] extra dropped it, breaking
strategy_clusters._cluster and its tests. Declare it explicitly.
@eren23 eren23 requested a review from aktasbatuhan June 10, 2026 11:07
@aktasbatuhan aktasbatuhan merged commit e01a328 into main Jun 11, 2026
1 check passed
@aktasbatuhan aktasbatuhan deleted the chore/oss-readiness branch June 11, 2026 09:28
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