6e37722383
Add a `kind` field to BridgedConfig.Worker — "claude-code" (default) or "opencode" — the discriminator the CompositePeerLauncher will route spawn/reap by so each adapter drives only its own peer kind. Normalised to lower-case; blank/absent ⇒ claude-code, so every existing config and call site is unchanged. argv now defaults to the kind's own binary (claude vs opencode) rather than always `claude`, so an opencode profile never inherits the Claude command. kind is appended at the record tail; a new 14-arg back-compat constructor (git fields, no kind) keeps the CB-302 call sites working, and the existing 12-arg constructor is untouched. Also drop the never-used Primary(String) legacy constructor to keep the file warning-clean. example.yaml documents the key and carries a commented opencode-gemini profile. Tests cover default/normalisation/argv-defaulting. 245 tests green, config files 0 IDE problems.