Add strategy evolution and local loop runner - #1
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
loopdrunner with scheduling, atomic leases, dry-run and opt-in command executors, timeouts, and run artifactsloopctl status/runs/pause/resumecontrols and safety validationWhy
This turns Loop-Engineering from a protocol-only project into a measurable self-improving loop contract plus a durable local runtime, while keeping the safety contract immutable.
Validation
npm run smokenpm pack --dry-runloopdend-to-end dry-runSummary by cubic
Adds strategy evolution and a local durable runner. v0.3.0 introduces
loopdfor scheduling and running loops, plus schemas and commands to manage strategies, experiments, and status.New Features
loopd startwith--onceor continuous polling; dry-run and opt‑in command executors.loopctl status,runs,pause,resume, andevolve.runnerandevolutionsections;state.paused;run-log.metrics; newstrategy.schema.jsonandexperiment.schema.json.LOOP_RUN_LOG(runner records the run) and read the activestrategy.jsonwhen evolution is enabled.examples/self-improving-development/loop.yaml. Docs and templates updated. Package exposesloopdbinary; version bumped to0.3.0.Migration
v0.3.0. Runloopctl doctor.runnertoloop.yaml(e.g.,executor: dry-runorcommand,workingDirectory,pollSeconds) and ensureschedulecadence is set. Validate withloopctl validate.evolutionand setpersistence.strategyPathandpersistence.experimentDir; initialize the baseline strategy (re-init from templates or addstrategy.json).LOOP_RUN_LOGpath when present and do not callloopctl recordfrom runner-managed commands.loopdbinary for local scheduling.Written for commit 6bacd33. Summary will update on new commits.