Skip to content

Delete dead runners (bob/codex/opencode) and runner infrastructure cleanup #1345

Description

@osilkin98

Context

Only the Claude runner is supported going forward. Three runner implementations have zero production call sites (confirmed by PR #1302).

What to delete

Implementation files (888 lines)

  • factory/runners/bob.py (316 lines)
  • factory/runners/codex.py (219 lines)
  • factory/runners/opencode.py (353 lines)
  • factory/runners/usage.py (179 lines) — all callers are dead runners

Dead test files (~2,600 lines)

  • tests/test_codex_runner.py (612 lines)
  • tests/test_opencode_runner.py (646 lines)
  • Bob/OpenCode test classes in tests/test_runners.py (~570 lines across 7 classes)
  • Codex test classes in tests/test_plugin_agents.py (~112 lines across 3 classes)
  • Bob tests in tests/test_session_resume.py (~20 lines)

Infrastructure cleanup (modify, don't delete)

  • factory/runners/__init__.py — remove imports, _RUNNERS dict entries, __all__ exports for dead runners
  • factory/cli/_parser_groups.py — remove codex from --runner choices
  • factory/user_config.py — remove bob/codex example profiles and env var mappings
  • factory/ceo_completion.py — remove BobRunner comment
  • tests/conftest.py — remove FACTORY_BOB_DRY_RUN=1 setup
  • factory/agents/plugin.py — remove codex TOML generation functions (~60 lines)
  • factory/cli/admin.py — remove codex import and --runner codex branch (~30 lines)
  • scripts/sync_agents.py — remove codex imports and sync logic (~40 lines)

Dead documentation

  • docs/codex-mcp.md (78 lines)
  • docs/runner-v2-spec.md (202 lines)

Dead environment variables

  • FACTORY_BOB_DRY_RUN, FACTORY_BOB_MAX_INVOCATIONS_PER_CYCLE, BOBSHELL_API_KEY
  • FACTORY_CODEX_DRY_RUN, CODEX_API_KEY
  • FACTORY_OPENCODE_DRY_RUN, FACTORY_OPENCODE_MAX_INVOCATIONS_PER_CYCLE

Verification

All verified to have zero production call sites outside the runner subsystem itself. See PR #1302 Section 2 for full evidence.

Related

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementImproves existing feature/functionality or code quality, does not change behavior of codebase

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions