Spec: §5.1 (the agent branch), §5.2 (local-only during the wave), §16.3 branches, §4.2 steps 1–2.
Implements the agent-branch model on top of the git wrapper (#9). One agent branch per wave per repo, code-runner/<wave-slug>, created fresh from the integration branch at wave start, kept current with the integration branch by merge if it advances, and deleted after hand-off (deletion itself happens in #14).
Acceptance criteria
Depends on: #9, #4
Ordering: start after #9 (git wrapper) merges.
Spec: §5.1 (the agent branch), §5.2 (local-only during the wave), §16.3
branches, §4.2 steps 1–2.Implements the agent-branch model on top of the git wrapper (#9). One agent branch per wave per repo,
code-runner/<wave-slug>, created fresh from the integration branch at wave start, kept current with the integration branch by merge if it advances, and deleted after hand-off (deletion itself happens in #14).Acceptance criteria
<wave-slug>(e.g. "P3 – Services & Profiles" →p3-services-profiles); deterministic and stable.branches.agent_patternconfig (defaultcode-runner/<wave-slug>) — no hardcoded names.branches.integration, defaultdev) from origin and creates the agent branch fresh from it.merge(perbranches.sync_strategy, defaultmerge; the spec mandates merge —rebaseis config-allowed but not the default path).branchesblock from the loadedproject.yaml(project.yaml Pydantic schema and fail-fast loader #4).Depends on: #9, #4
Ordering: start after #9 (git wrapper) merges.