Skip to content

feat(coding-agent): integrate harness evolution - #105

Merged
Pepps233 merged 4 commits into
feat/evolution-writerfrom
feat/evolution-runtime-integration
Aug 23, 2026
Merged

Pepps233 merged 4 commits into
feat/evolution-writerfrom
feat/evolution-runtime-integration

Conversation

@Pepps233

@Pepps233 Pepps233 commented Aug 20, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Integrates the durable evolution pipeline into coding-agent with a navigable /evolve control surface, automatic eligibility checks, explicit recovery, and next-query harness activation.

Reasoning

Evolution state and pipeline control remain package-neutral so the TUI is only a client of durable status and commands.

Trace materialization and automatic eligibility run after trace flush boundaries, while model work yields to foreground interaction and keeps admitted prompts pinned to their original harness snapshot.

Interrupted and stale-lease jobs remain explicit resume actions, and this PR does not add post-activation evaluation or automatic regression rollback behavior.

Changes

  • Adds durable overview, history, detail, progress, resume, cancellation, and compare-and-swap rollback controls.
  • Composes trace evidence, repository snapshots, frozen model execution, the evolution pipeline, and graceful worker shutdown in coding-agent.
  • Adds the /evolve menu with confirmations, nested navigation, disabled actions, proposal evidence and diffs, and editor restoration.
  • Refreshes the selected harness before every fresh prompt and records activation while leaving in-flight prompts and child snapshots pinned.
  • Vendors the private evolution runtime into coding-agent distribution without adding a published dependency.

Testing

  • npm run check
  • ./test.sh
  • node ../../node_modules/vitest/dist/cli.js --run test/control-plane.test.ts test/control-service.test.ts test/worker.test.ts test/evolution-memory-writer.test.ts test/reflector.test.ts test/curator.test.ts from packages/evolution
  • node ../../node_modules/vitest/dist/cli.js --run test/evolution-menu.test.ts test/evolution-runtime.test.ts test/interactive-mode-evolution.test.ts test/slash-commands.test.ts test/suite/agent-session-harness-version.test.ts from packages/coding-agent
  • node ../../node_modules/vitest/dist/cli.js --run test/harness-state.test.ts from packages/harness-state
  • Controlled tmux check of /evolve overview, nested history navigation, Escape behavior, editor restoration, zero-evidence reporting, and exit

- Exposes durable status, resume, cancellation, and progress APIs for non-blocking clients
- Uses explicit recovery and compare-and-swap rollback to prevent duplicate or stale state transitions
- Activates a newly selected harness before constructing the next provider request
- Keeps admitted prompts pinned while sharing one activation path with manual selection
- Wires durable evidence, pipeline execution, automatic checks, recovery, and graceful shutdown
- Adds a responsive /evolve menu for status, proposals, resume, cancellation, and rollback
- Returns zero estimated tokens when no materialized invocations are available
- Keeps the /evolve overview aligned with its settled invocation count
@Pepps233 Pepps233 self-assigned this Aug 20, 2026
@Pepps233

Copy link
Copy Markdown
Contributor Author

Stacked on #104.
The commit sequence keeps package-neutral controls, prompt-boundary cutover, and coding-agent/TUI integration independently reviewable.

@Pepps233
Pepps233 requested a review from Issacboy123 August 20, 2026 07:42
@Pepps233
Pepps233 marked this pull request as ready for review August 23, 2026 16:37
@Pepps233
Pepps233 merged commit 4794170 into main Aug 23, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant