A shared runtime module, local Docker execution, and a big cleanup
Agent execution moved out of the backend into a standalone `runtime` module that the API server, worker, and CLI all import — the foundation for running evals locally. Local runs gained a Docker sandbox provider and bring-your-own-key credential resolution. A 34k-line removal pass retired dead and demoted surfaces, and CLI 2.0.0 shipped.
- Shared runtime module
- Local execution
- BYO keys
- Surface cleanup
What shipped
Added
- Standalone `runtime` Go module — shared runner contracts, execution harness, and frozen execution-context model imported by backend, worker, and CLI alike.
- Local execution store — SQLite execution/result persistence and filesystem artifact storage, plus a CLI wrapper proving the CLI can drive the runtime without backend internals.
- Docker sandbox provider for local runs, so an eval can execute on your own machine instead of a hosted sandbox.
- Bring-your-own-key credential resolution for local runs — provider keys read from environment, config file, or OS keychain.
Improved
- CLI 2.0.0 released: freemium pricing model, challenge-pack catalog commands, `evaltest` local eval runs, and the eval SDK's pytest and promote-failures adapters.
- Removed eight clusters of dead or demoted product surfaces across backend, runtime, CLI, and web — 34,712 lines deleted, no database tables dropped.
- Workspace navigation dropped the retired Playgrounds and Knowledge Sources sections.
Merged pull requests
9 PRs- #1176chore: remove dead and demoted product surfaces
- #1159feat(runtime): local M1 BYO keys — env/config/keychain credential resolution
- #1158feat(runtime): Docker sandbox provider for local M1 (#1153)
- #1152chore(web): remove Playgrounds and Knowledge Sources from workspace nav
- #1151[codex] Complete runtime M0 foundation
- #1150[codex] Extract shared runtime execution harness
- #1149[codex] Extract shared runtime runner contracts
- #1148[codex] Extract shared AgentClash runtime module
- #1051chore(main): release 2.0.0