feat: verdict-based ping-pong control with merge_ready finalization

- DONE → merge_ready → owner final turn (commit/push) → completed
- DONE_WITH_CONCERNS → active → owner addresses → ping-pong continues
- BLOCKED/NEEDS_CONTEXT → completed (escalate to user, stop ping-pong)
- Regular feedback → active → ping-pong continues
- Owner detects merge_ready status and finalizes autonomously
This commit is contained in:
Eyejoker
2026-03-29 20:59:08 +09:00
parent 16d20fe627
commit d8cb4b691e
5 changed files with 125 additions and 69 deletions

View File

@@ -106,7 +106,9 @@ export const REVIEWER_AGENT_TYPE: AgentType =
/** Service ID for the reviewer based on agent type. */
export const REVIEWER_SERVICE_ID_FOR_TYPE =
REVIEWER_AGENT_TYPE === 'claude-code' ? CLAUDE_SERVICE_ID : CODEX_REVIEW_SERVICE_ID;
REVIEWER_AGENT_TYPE === 'claude-code'
? CLAUDE_SERVICE_ID
: CODEX_REVIEW_SERVICE_ID;
// Max owner↔reviewer round trips per task. 0 = unlimited.
const rawMaxRoundTrips = getEnv('PAIRED_MAX_ROUND_TRIPS') || '10';