---
name: "Split agents/pool/lifecycle.rs into submodules"
agent: coder-opus
---

# Refactor 476: Split agents/pool/lifecycle.rs into submodules

## Current State

- TBD

## Desired State

pool/lifecycle.rs is 1812 lines with 4 public functions (start_agent, stop_agent, wait_for_agent, remove_agents_for_story) plus 29 tests. start_agent is by far the largest — it handles agent selection, worktree creation, process spawning, and completion callbacks. Split into submodules: start.rs (agent start + selection logic), stop.rs (stop + cleanup), wait.rs (wait_for_agent), with tests co-located in each module.

## Acceptance Criteria

- [ ] pool/lifecycle.rs split into submodules (e.g. start.rs, stop.rs, wait.rs)
- [ ] Each submodule contains its related tests
- [ ] All 29 existing tests pass unchanged
- [ ] Public API unchanged — re-export from pool/mod.rs if needed
- [ ] No functional changes, purely structural

## Out of Scope

- TBD
